ARM64基础2:在C语言调用ARM64汇编函数

575次阅读
没有评论

如题,通过C语言代码调用汇编实现的函数

1.创建两个文件:compare.S和main.c

compare.S

.section .text
.globl compare_data
compare_data:
        cmp x0, x1
        csel x0, x0, x1, hi //若x0>1则返回x0, 否则返回x1
        ret

main.c文件

#include <stdio.h>

extern int compare_data(int a, int b); //extern导入compare_data函数声明

int main()
{
        int val;

        val = compare_data(5, 6); //调用汇编函数

        printf("big data: %d\n", val);
}

2.编译

aarch64-linux-gnu-gcc -o main main.c compare.S --static -g

3.运行

# ./main
big data: 6

正文完
 0
admin
版权声明:本站原创文章,由 admin 于2021-11-02发表,共计377字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)
粤ICP备2021172357号-1