@@ -227,6 +227,7 @@ void goto_analyzer_parse_optionst::get_command_line_options(optionst &options)
227
227
options.set_option (" text" , false );
228
228
options.set_option (" json" , false );
229
229
options.set_option (" xml" , false );
230
+ options.set_option (" dot" , false );
230
231
options.set_option (" outfile" , " -" );
231
232
232
233
if (cmdline.isset (" text" ))
@@ -244,6 +245,11 @@ void goto_analyzer_parse_optionst::get_command_line_options(optionst &options)
244
245
options.set_option (" xml" , true );
245
246
options.set_option (" outfile" , cmdline.get_value (" xml" ));
246
247
}
248
+ else if (cmdline.isset (" dot" ))
249
+ {
250
+ options.set_option (" dot" , true );
251
+ options.set_option (" outfile" , cmdline.get_value (" dot" ));
252
+ }
247
253
else
248
254
{
249
255
options.set_option (" text" , true );
@@ -298,6 +304,7 @@ void goto_analyzer_parse_optionst::get_command_line_options(optionst &options)
298
304
options.set_option (" constants" , false );
299
305
options.set_option (" intervals" , false );
300
306
options.set_option (" non-null" , false );
307
+ options.set_option (" dependence-graph" , false );
301
308
302
309
if (cmdline.isset (" intervals" ) ||
303
310
cmdline.isset (" show-intervals" ))
@@ -307,10 +314,13 @@ void goto_analyzer_parse_optionst::get_command_line_options(optionst &options)
307
314
options.set_option (" non-null" , true );
308
315
else if (cmdline.isset (" constants" ))
309
316
options.set_option (" constants" , true );
317
+ else if (cmdline.isset (" dependence-graph" ))
318
+ options.set_option (" dependence-graph" , true );
310
319
311
320
if (!(options.get_bool_option (" constants" ) ||
312
321
options.get_bool_option (" intervals" ) ||
313
- options.get_bool_option (" non-null" )))
322
+ options.get_bool_option (" non-null" ) ||
323
+ options.get_bool_option (" dependence-graph" )))
314
324
{
315
325
status () << " Domain defaults to --constants" << eom;
316
326
options.set_option (" constants" , true );
@@ -661,11 +671,13 @@ void goto_analyzer_parse_optionst::help()
661
671
" --constants constant abstraction\n "
662
672
" --intervals interval abstraction\n "
663
673
" --non-null non-null abstraction\n "
674
+ " --dependence-graph dependency relation between instructions\n "
664
675
" \n "
665
676
" Output options:\n "
666
677
" --text file_name output results in plain text to given file\n "
667
678
" --json file_name output results in JSON format to given file\n "
668
679
" --xml file_name output results in XML format to given file\n "
680
+ " --dot file_name output results in DOT format to given file\n "
669
681
" \n "
670
682
" Other analyses:\n "
671
683
" --taint file_name perform taint analysis using rules in given file\n "
0 commit comments