diff --git a/lang/src/codegen.asm b/lang/src/codegen.asm index efa0d5f..1146f5d 100644 --- a/lang/src/codegen.asm +++ b/lang/src/codegen.asm @@ -441,19 +441,14 @@ codegen_free_operand: mov [rsp + 8], rsi ; operand mov al, byte [rsi] ; Operand.kind - xor rbx, rbx cmp al, OPERAND_REGISTER - sete bl + je .free_reg cmp al, OPERAND_REGISTER_PLACE - sete bl - test bl, bl - jnz .free_reg + je .free_reg cmp al, OPERAND_RBP_VALUE - sete bl + je .free_stack cmp al, OPERAND_RBP_PLACE - sete bl - test bl, bl - jnz .free_stack + je .free_stack jmp .done .free_stack: