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, [г0,% 0] \ п": "J"(offsetof (X, Y)):: "r6", "г0");' хотя это, вероятно, лучше дать компилятору присвоить значение «r0» и «r6», аннотируя их. Я хочу сказать, что для этого является спецификатором J. –