arm 汇编调用C

arm64 汇编调用C函数

main.s

c 复制代码
.section .text
.globl main
main:
        stp     x29, x30, [sp, -16]!  //store fp x29 lr x30

        mov x0, #0
        mov x1, #1
        bl add
		mov x1, x0   // x0 return 
        ldp  x29, x30, [sp], 16  //restore fp lr
        ret

add.c

c 复制代码
#include <stdio.h>
int add(int a, int b)
{
    printf("a=%d,b=%d\n",a,b);
    return a+b;
}

编译

c 复制代码
gcc -g main.s add.c

调试

c 复制代码
gdb a.out
b main
相关推荐
caimouse1 小时前
ReactOS 图形系统分析(53):系统库存对象 — stockobj.c
c语言·开发语言·spring
j7~2 小时前
【C语言】《C语言函数递归完全指南:思想、限制、经典例题(阶乘/斐波那契/青蛙跳台阶/汉诺塔)与迭代优化》
c语言·函数递归·汉诺塔问题·青蛙跳台阶问题·递归与迭代·n的阶乘
YSL0701244 小时前
动态内存管理
c语言
BreezeJuvenile4 小时前
基于C语言的SPSC环形缓冲区程序实现
c语言·环形缓冲区
zbyyd4 小时前
Linux 基础与 Shell 命令
linux·运维·arm开发
SuperByteMaster4 小时前
recursive mutex的使用场景和场景代码
c语言
caimouse5 小时前
ReactOS 窗口系统分析(2):窗口类 — class.c
c语言·开发语言
caimouse6 小时前
ReactOS 窗口系统架构分析
服务器·c语言
caimouse6 小时前
ReactOS 图形系统分析(46):DC 工具 — dcutil.c
c语言·开发语言
BreezeJuvenile6 小时前
嵌入式C语言常见考察点(2)
c语言·嵌入式