asm("ldr r6, [r0, #__cpp(offsetof(X, y))]\t\n");
我无法使用以下命令以编译上述联汇编行:`__cpp`和gcc内嵌ARM汇编
arm-linux-gnueabi-gcc -c -lm -pg -O1 -g -pipe -fno-common \
-fno-builtin -Wall -march=armv7-a -mfpu=neon -mfloat-abi=softfp \
-mthumb-interwork -mtune=cortex-a9
错误日志是:
{standard input}: Assembler messages:
{standard input}:74: Error: ']' expected -- \
`ldr r6,[r0,#__cpp(offsetof(VP8BitReader,buf_))]'
显然__cpp
无法识别。有什么建议么?
'的asm( “LDR R6,[R0,%0] \ n上”: “J”(offsetof(X,Y)): “R6”, “R0”);'虽然它可能是最好让编译器通过注释来赋予它们'r0'和'r6'的值。我的观点是'J'是这个说明符。 –