mirror of
https://github.com/tobast/libunwind-eh_elf.git
synced 2025-01-25 17:50:29 +01:00
ea8a74ba29
(Logical change 1.55)
38 lines
653 B
ArmAsm
38 lines
653 B
ArmAsm
.globl func_add1, func_add1_end
|
|
.proc func_add1
|
|
func_add1:
|
|
{.mib add r8 = 1, r32
|
|
nop.i 0
|
|
br.ret.sptk.many rp
|
|
}
|
|
func_add1_end:
|
|
.endp func_add1
|
|
|
|
.globl func_add3, func_add3_end
|
|
.proc func_add3
|
|
func_add3:
|
|
{.mmi alloc loc1 = ar.pfs, 2, 2, 2, 0
|
|
ld8 r8 = [in1], 8 // load the function pointer
|
|
mov loc0 = rp
|
|
} ;;
|
|
{.mmi
|
|
ld8 r9 = [r8], 8 // load the entry-point
|
|
mov out0 = in0
|
|
mov out1 = in1
|
|
} ;;
|
|
{.mib ld8 gp = [r8] // load the gp
|
|
mov b6 = r9
|
|
br.call.sptk rp = b6
|
|
}
|
|
{.mii
|
|
add r8 = 2, r8
|
|
mov ar.pfs = loc1
|
|
mov rp = loc0
|
|
}
|
|
{.mib
|
|
mov loc0 = 1 // trash loc0
|
|
mov loc1 = 3 // trash loc1
|
|
br.ret.sptk.many rp
|
|
}
|
|
func_add3_end:
|
|
.endp func_add3
|