Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | |||
en:manual:contrib:developer_collection [2024/03/02 01:26] throgh [Assembler instructions] |
en:manual:contrib:developer_collection [2024/03/02 01:31] (current) throgh [Assembler instructions] |
||
---|---|---|---|
Line 121: | Line 121: | ||
! cmp $r12, %r11;\\ je label; | ! cmp $r12, %r11;\\ je label; | ||
|- | |- | ||
- | ! idiv | + | ! jg |
- | ! int acc = 4;\\ acc /= val; | + | ! if (val > res)\\ goto label; |
- | ! movl $4, %rax;\\ idivl %r11; | + | ! cmpl $r11, %r12;\\ jg label; |
- | ! mov rax, 4;\\ idiv r11; | + | ! cmp $r12, %r11;\\ jg label; |
|- | |- | ||
- | ! mul | + | ! jge |
- | ! uint acc = 4;\\ acc *= val; | + | ! if (val >= res)\\ goto label; |
- | ! movl $4, %rax;\\ mull %r11; | + | ! cmpl $r11, %r12;\\ jge label; |
- | ! mov rax, 4;\\ mul r11; | + | ! cmp $r12, %r11;\\ jge label; |
|- | |- | ||
- | ! imul | + | ! jl |
- | ! int acc = 4;\\ acc *= val; | + | ! if (val < res)\\ goto label; |
- | ! movl $4, %rax;\\ imull %r11; | + | ! cmpl $r11, %r12;\\ jl label; |
- | ! mov rax, 4;\\ imul r11; | + | ! cmp $r12, %r11;\\ jl label; |
+ | |- | ||
+ | ! jle | ||
+ | ! if (val <= res)\\ goto label; | ||
+ | ! cmpl $r11, %r12;\\ jle label; | ||
+ | ! cmp $r12, %r11;\\ jle label; | ||
+ | |- | ||
+ | ! jne | ||
+ | ! if (val != res)\\ goto label; | ||
+ | ! cmpl $r11, %r12;\\ jne label; | ||
+ | ! cmpl $r12, %r11;\\ jne label; | ||
+ | |- | ||
+ | ! jz | ||
+ | ! if (val == res)\\ goto label; | ||
+ | ! cmpl $r11, %r12;\\ jz label; | ||
+ | ! cmpl $r12, %r11;\\ jz label; | ||
|- | |- | ||
|} | |} | ||