Skip to content

Commit a7e28cd

Browse files
authored
Merge pull request #877 from diffblue/use-output-filet
ebmc: --smt-netlist and --dot-netlist now honor --outfile
2 parents 7c7e7e2 + a6d7be0 commit a7e28cd

File tree

2 files changed

+17
-8
lines changed

2 files changed

+17
-8
lines changed

CHANGELOG

+1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
* SystemVerilog: streaming concatenation {<<{...}} and {>>{...}}
99
* SystemVerilog: set membership operator
1010
* SystemVerilog: named sequences
11+
* ebmc: --smt-netlist and --dot-netlist now honor --outfile
1112

1213
# EBMC 5.3
1314

src/ebmc/ebmc_parse_options.cpp

+16-8
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ Author: Daniel Kroening, [email protected]
2020
#include "ic3_engine.h"
2121
#include "liveness_to_safety.h"
2222
#include "neural_liveness.h"
23+
#include "output_file.h"
2324
#include "property_checker.h"
2425
#include "random_traces.h"
2526
#include "ranking_function.h"
@@ -274,9 +275,12 @@ int ebmc_parse_optionst::doit()
274275
netlistt netlist;
275276
if(ebmc_base.make_netlist(netlist))
276277
return 1;
277-
std::cout << "digraph netlist {\n";
278-
netlist.output_dot(std::cout);
279-
std::cout << "}\n";
278+
auto filename =
279+
cmdline.isset("outfile") ? cmdline.get_value("outfile") : "-";
280+
output_filet outfile{filename};
281+
outfile.stream() << "digraph netlist {\n";
282+
netlist.output_dot(outfile.stream());
283+
outfile.stream() << "}\n";
280284
return 0;
281285
}
282286

@@ -285,11 +289,15 @@ int ebmc_parse_optionst::doit()
285289
netlistt netlist;
286290
if(ebmc_base.make_netlist(netlist))
287291
return 1;
288-
std::cout << "-- Generated by EBMC " << EBMC_VERSION << '\n';
289-
std::cout << "-- Generated from "
290-
<< ebmc_base.transition_system.main_symbol->name << '\n';
291-
std::cout << '\n';
292-
netlist.output_smv(std::cout);
292+
auto filename =
293+
cmdline.isset("outfile") ? cmdline.get_value("outfile") : "-";
294+
output_filet outfile{filename};
295+
outfile.stream() << "-- Generated by EBMC " << EBMC_VERSION << '\n';
296+
outfile.stream() << "-- Generated from "
297+
<< ebmc_base.transition_system.main_symbol->name
298+
<< '\n';
299+
outfile.stream() << '\n';
300+
netlist.output_smv(outfile.stream());
293301
return 0;
294302
}
295303

0 commit comments

Comments
 (0)