Readd queue runaway optimization in intToStr

This commit is contained in:
0x4261756D 2023-01-03 20:44:07 +01:00
parent 84442e5eb9
commit a754602bde
1 changed files with 2 additions and 0 deletions

View File

@ -452,6 +452,7 @@ fn generate_assembly_linux_x64_block(operations: &Vec<Operation>, functions: &Ve
{
data.code += "\tmov qword rdi, [queue+8*r12]\n";
data.code += "\tinc r12\n";
data.code += ASSEMBLY_LINUX_X64_TRY_RESET_QUEUE;
data.code += "\tcall intToStr\n";
data.code += "\tmov [queue+8*r13], rax\n";
data.code += "\tinc r13\n";
@ -582,6 +583,7 @@ fn generate_assembly_linux_x64_block(operations: &Vec<Operation>, functions: &Ve
}
Operation::Interrupt(line, col) =>
{
data.code += format!("\t;;interrupt {}:{}\n", line, col).as_str();
data.code += "lea r8, [queue]\n";
data.code += format!("mov r9, {}\n", 1000*line + col).as_str();
data.code += "int3\n";