added macros, control flow, structs and comparison operands

This commit is contained in:
IgorCielniak
2025-12-06 18:30:29 +01:00
parent 643a4960c2
commit 3a63347380
4 changed files with 491 additions and 1 deletions

View File

@@ -109,6 +109,72 @@ puts_finish_digits:
}
;
:asm == {
mov rax, [r12]
add r12, 8
mov rbx, [r12]
cmp rbx, rax
mov rbx, 0
sete bl
mov [r12], rbx
}
;
:asm != {
mov rax, [r12]
add r12, 8
mov rbx, [r12]
cmp rbx, rax
mov rbx, 0
setne bl
mov [r12], rbx
}
;
:asm < {
mov rax, [r12]
add r12, 8
mov rbx, [r12]
cmp rbx, rax
mov rbx, 0
setl bl
mov [r12], rbx
}
;
:asm > {
mov rax, [r12]
add r12, 8
mov rbx, [r12]
cmp rbx, rax
mov rbx, 0
setg bl
mov [r12], rbx
}
;
:asm <= {
mov rax, [r12]
add r12, 8
mov rbx, [r12]
cmp rbx, rax
mov rbx, 0
setle bl
mov [r12], rbx
}
;
:asm >= {
mov rax, [r12]
add r12, 8
mov rbx, [r12]
cmp rbx, rax
mov rbx, 0
setge bl
mov [r12], rbx
}
;
:asm @ {
mov rax, [r12]
mov rax, [rax]