MCPcopy Create free account
hub / github.com/AliveToolkit/alive2 / sym_exec

Function sym_exec

util/symexec.cpp:63–84  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

61}
62
63void sym_exec(State &s) {
64 sym_exec_init(s);
65
66 Function &f = const_cast<Function&>(s.getFn());
67
68 for (auto &bb : f.getBBs()) {
69 if (bb->getName() == "#init" || !s.startBB(*bb))
70 continue;
71
72 for (auto &i : bb->instrs()) {
73 sym_exec_instr(s, i);
74 }
75 }
76
77 if (config::symexec_print_each_value) {
78 auto ret = s.returnVal();
79 dbg() << "domain = " << ret.domain
80 << "\nreturn domain = " << ret.return_domain
81 << "\nreturn = " << ret.val
82 << s.returnMemory() << "\n\n";
83 }
84}
85
86}

Callers 1

execMethod · 0.85

Calls 5

sym_exec_initFunction · 0.85
sym_exec_instrFunction · 0.85
startBBMethod · 0.80
returnValMethod · 0.80
instrsMethod · 0.45

Tested by

no test coverage detected