Ios ARM霓虹灯汇编程序+;如何传递和使用指针数组
我有一个C函数,我想从传递给汇编部分的指针数组中加载数据。如何做到这一点Ios ARM霓虹灯汇编程序+;如何传递和使用指针数组,ios,assembly,arm,neon,Ios,Assembly,Arm,Neon,我有一个C函数,我想从传递给汇编部分的指针数组中加载数据。如何做到这一点 float *pointerToBuffer asm volatile ( "vld1.32 {q0},[%[buf]] \n\t" : [buf]"+r"(ponterToBuffer) ); 如果变量是pointerToPointerToBuffer会怎样?如果语法允许,我建议多使用一对括号: asm volatile ( "vld1.32 {q0},[[%[buf]]] \n\t" :
float *pointerToBuffer
asm volatile (
"vld1.32 {q0},[%[buf]] \n\t"
: [buf]"+r"(ponterToBuffer)
);
如果变量是pointerToPointerToBuffer会怎样?如果语法允许,我建议多使用一对括号:
asm volatile (
"vld1.32 {q0},[[%[buf]]] \n\t"
: [buf]"+r"(ponterToBuffer)
);
如果没有:
asm volatile (
"ldr r1,[%[pointerToBuffer]] \n\t"
"vld1.32 {q0},[r1] \n\t"
);
你想干什么?是否?asm(“vld1.32{q0},%0”::“m”(指针缓冲):“内存”)代码>将被删除。如果要传递地址/内存位置,请使用“m”(…)
约束,并保留一级括号。