| 52 | static const char* regScratchpadAddr = "rsi"; |
| 53 | |
| 54 | void AssemblyGeneratorX86::generateProgram(Program& prog) { |
| 55 | for (unsigned i = 0; i < RegistersCount; ++i) { |
| 56 | registerUsage[i] = -1; |
| 57 | } |
| 58 | asmCode.str(std::string()); //clear |
| 59 | for (unsigned i = 0; i < prog.getSize(); ++i) { |
| 60 | asmCode << "randomx_isn_" << i << ":" << std::endl; |
| 61 | Instruction& instr = prog(i); |
| 62 | instr.src %= RegistersCount; |
| 63 | instr.dst %= RegistersCount; |
| 64 | generateCode(instr, i); |
| 65 | } |
| 66 | } |
| 67 | |
| 68 | void AssemblyGeneratorX86::generateAsm(SuperscalarProgram& prog) { |
| 69 | asmCode.str(std::string()); //clear |