不可能的限制因素

时间:2013-08-04 14:38:02

标签: c assembly arm embedded-linux

我读了很多东西,包括在这个网站上关于不可能的约束asm,但无法想出代码有什么问题`

  __asm__ volatile (
"movw r2, #:lower16:_Per_CPU_Information\n"
"movt r2, #:upper16:_Per_CPU_Information\n"
"ldr r3, [r0, %[isrctxoff]]\n"
"ldr sp, [r0, %[spctxoff]]\n"
"ldm r0, {r4-r11, lr}\n"
"str r3, [r2, %[isrpcpuoff]]\n"
"bx lr\n"
:
: [spctxoff] "J" (offsetof(Context_Control, register_sp)),
  [isrctxoff] "J" (offsetof(Context_Control, isr_nest_level)),
  [isrpcpuoff] "J" (offsetof(Per_CPU_Control, isr_nest_level))
);

作为工具集我使用-gcc-4.8.0 for ARM。   谁有个好主意可以做什么?

0 个答案:

没有答案