提交 8af1cbc5 编写于 作者: D dhy308

在syscall_cp中添加CFI指令,支持回栈功能

Signed-off-by: Ndhy308 <tony.gan@huawei.com>

	new file:   porting/linux/user/src/thread/arm/syscall_cp.s
上级 b1c8592c
.syntax unified
.global __cp_begin
.hidden __cp_begin
.global __cp_end
.hidden __cp_end
.global __cp_cancel
.hidden __cp_cancel
.hidden __cancel
.global __syscall_cp_asm
.type __syscall_cp_asm,%function
.cfi_startproc
__syscall_cp_asm:
mov ip,sp
stmfd sp!,{r4,r5,r6,r7}
.cfi_def_cfa_offset 16
.cfi_rel_offset r4, 0
.cfi_rel_offset r5, 4
.cfi_rel_offset r6, 8
.cfi_rel_offset r7, 12
__cp_begin:
ldr r0,[r0]
cmp r0,#0
bne __cp_cancel
mov r7,r1
mov r0,r2
mov r1,r3
ldmfd ip,{r2,r3,r4,r5,r6}
svc 0
__cp_end:
ldmfd sp!,{r4,r5,r6,r7}
.cfi_def_cfa_offset 0
bx lr
__cp_cancel:
ldmfd sp!,{r4,r5,r6,r7}
.cfi_def_cfa_offset 0
b __cancel
.cfi_endproc
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册