Squash commits for public release
This commit is contained in:
39
libs/libc/setjmp/arm64/setjmp.S
Normal file
39
libs/libc/setjmp/arm64/setjmp.S
Normal file
@@ -0,0 +1,39 @@
|
||||
.global setjmp
|
||||
setjmp:
|
||||
stp x19, x20, [x0,#0x0]
|
||||
stp x21, x22, [x0,#0x10]
|
||||
stp x23, x24, [x0,#0x20]
|
||||
stp x25, x26, [x0,#0x30]
|
||||
stp x27, x28, [x0,#0x40]
|
||||
stp x29, x4, [x0,#0x50]
|
||||
mov x2, lr
|
||||
mov x3, sp
|
||||
stp x2, x3, [x0,#0x60]
|
||||
stp d8, d9, [x0,#0x70]
|
||||
stp d10, d11, [x0,#0x80]
|
||||
stp d12, d13, [x0,#0x90]
|
||||
stp d14, d15, [x0,#0xa0]
|
||||
mov x0, #0
|
||||
ret
|
||||
|
||||
.global longjmp
|
||||
longjmp:
|
||||
ldp x19, x20, [x0,#0x0]
|
||||
ldp x21, x22, [x0,#0x10]
|
||||
ldp x23, x24, [x0,#0x20]
|
||||
ldp x25, x26, [x0,#0x30]
|
||||
ldp x27, x28, [x0,#0x40]
|
||||
ldp x29, x4, [x0,#0x50]
|
||||
ldp x2, x3, [x0,#0x60]
|
||||
ldp d8, d9, [x0,#0x70]
|
||||
ldp d10, d11, [x0,#0x80]
|
||||
ldp d12, d13, [x0,#0x90]
|
||||
ldp d14, d15, [x0,#0xa0]
|
||||
mov lr, x2
|
||||
mov sp, x3
|
||||
mov x0, x1
|
||||
cmp x0, #0
|
||||
bne 1f
|
||||
mov x0, #1
|
||||
1:
|
||||
ret
|
||||
Reference in New Issue
Block a user