Чтобы быть конкретным:
- Функция сборки кронштейна записана в отдельном файле, таком как файл .S или файл .asm.
- Мне нужно вызвать эту функцию в main.c
- Сборка ARM выполнена в архитектуре ARMv8.
Я написал тестовый код, но он не работает.
#include <stdio.h>
extern int a_add(int a, int b);
int main(){
int fi=5;
int se=7;
int result=a_add(fi, se);
printf("result is %d", result);
return 0;
}
И следующий код сборки. (A_add.S)
.section .text
.globl a_add
a_add:
add x3,x1,x0
mov x0,x3
br x30
Кто-нибудь знает, как я могу исправить эти два файла, чтобы функция a_add работала?
Я еще не пробовал .asm файл.
Любая помощь приветствуется, и, пожалуйста, прости, если я допустил ошибку в выражении, но я надеюсь, что мой вопрос ясен.