42,43c42,53
< decoder_output = ""
< exec_output = ""
---
> decoder_output = '''
> uint64_t join32to64(uint32_t r1, uint32_t r0)
> {
> uint64_t r = r1;
> r <<= 32;
> r |= r0;
> return r;
> }
> '''
> exec_output = '''
> uint64_t join32to64(uint32_t r1, uint32_t r0);
> '''
44a55
>
60c71
< PseudoInst::quiesceNs(xc->tcBase(), R0);
---
> PseudoInst::quiesce(xc->tcBase());
73c84
< PseudoInst::quiesceNs(xc->tcBase(), R0);
---
> PseudoInst::quiesceNs(xc->tcBase(), join32to64(R1, R0));
87c98
< PseudoInst::quiesceCycles(xc->tcBase(), R0);
---
> PseudoInst::quiesceCycles(xc->tcBase(), join32to64(R1, R0));
101c112,114
< R0 = PseudoInst::quiesceTime(xc->tcBase());
---
> uint64_t qt_val = PseudoInst::quiesceTime(xc->tcBase());
> R0 = bits(qt_val, 31, 0);
> R1 = bits(qt_val, 63, 32);
112a126,131
> rpnsCode = '''
> uint64_t rpns_val = PseudoInst::rpns(xc->tcBase());
> R0 = bits(rpns_val, 31, 0);
> R1 = bits(rpns_val, 63, 32);
> '''
>
114c133
< { "code": "R0 = PseudoInst::rpns(xc->tcBase());",
---
> { "code": rpnsCode,
120a140,143
> wakeCpuCode = '''
> PseudoInst::wakeCPU(xc->tcBase(), join32to64(R1,R0));
> '''
>
122,124c145,147
< { "code": "PseudoInst::wakeCPU(xc->tcBase(), R0);",
< "predicate_test": predicateTest },
< ["IsNonSpeculative", "IsUnverifiable"])
---
> { "code": wakeCpuCode,
> "predicate_test": predicateTest },
> ["IsNonSpeculative", "IsUnverifiable"])
155a179,181
> m5exit_code = '''
> PseudoInst::m5exit(xc->tcBase(), join32to64(R1, R0));
> '''
157,159c183,185
< { "code": "PseudoInst::m5exit(xc->tcBase(), R0)",
< "predicate_test": predicateTest },
< ["No_OpClass", "IsNonSpeculative"])
---
> { "code": m5exit_code,
> "predicate_test": predicateTest },
> ["No_OpClass", "IsNonSpeculative"])
190a217,220
> resetstats_code = '''
> PseudoInst::resetstats(xc->tcBase(), join32to64(R1, R0), join32to64(R3, R2));
> '''
>
192c222
< { "code": "PseudoInst::resetstats(xc->tcBase(), R0, R1);",
---
> { "code": resetstats_code,
198a229,231
> dumpstats_code = '''
> PseudoInst::dumpstats(xc->tcBase(), join32to64(R1, R0), join32to64(R3, R2));
> '''
200c233
< { "code": "PseudoInst::dumpstats(xc->tcBase(), R0, R1);",
---
> { "code": dumpstats_code,
206a240,242
> dumpresetstats_code = '''
> PseudoInst::dumpresetstats(xc->tcBase(), join32to64(R1, R0), join32to64(R3, R2));
> '''
208c244
< { "code": "PseudoInst::dumpresetstats(xc->tcBase(), R0, R1);",
---
> { "code": dumpresetstats_code,
214a251,253
> m5checkpoint_code = '''
> PseudoInst::m5checkpoint(xc->tcBase(), join32to64(R1, R0), join32to64(R3, R2));
> '''
216c255
< { "code": "PseudoInst::m5checkpoint(xc->tcBase(), R0, R1);",
---
> { "code": m5checkpoint_code,
225c264,266
< R0 = PseudoInst::readfile(xc->tcBase(), R0, R1, R2);
---
> int n = 4;
> uint64_t offset = getArgument(xc->tcBase(), n, sizeof(uint64_t), false);
> R0 = PseudoInst::readfile(xc->tcBase(), R0, join32to64(R3,R2), offset);
254c295
< PseudoInst::addsymbol(xc->tcBase(), R0, R1);
---
> PseudoInst::addsymbol(xc->tcBase(), join32to64(R1, R0), R2);