38 lines
422 B
Plaintext
38 lines
422 B
Plaintext
.pos 0
|
|
irmovq stack, %rsp
|
|
call main
|
|
halt
|
|
|
|
# Sample linked list
|
|
.align 8
|
|
ele1:
|
|
.quad 0x00a
|
|
.quad ele2
|
|
ele2:
|
|
.quad 0x0b0
|
|
.quad ele3
|
|
ele3:
|
|
.quad 0xc00
|
|
.quad 0
|
|
|
|
main:
|
|
irmovq ele1, %rdi
|
|
call rsum_list
|
|
ret
|
|
|
|
rsum_list:
|
|
xorq %rax, %rax
|
|
andq %rdi, %rdi
|
|
je end
|
|
pushq %rdi
|
|
mrmovq 8(%rdi), %rdi
|
|
call rsum_list
|
|
popq %rdi
|
|
mrmovq (%rdi), %rsi
|
|
addq %rsi, %rax
|
|
end:
|
|
ret
|
|
|
|
.pos 0x200
|
|
stack:
|