Всем приветы!
Ткскзть двое суток без сна, не могу победить простую вещь.
Имеется IAR 4.41, пытаюсь сделать ассемблерную вставку, не выходит:
Код
static inline portDISABLE_INTERRUPTS(void)
{
asm (" STMDB SP!, {R0}");
asm (" MRS R0, CPSR");
asm (" ORR R0,R0,#0x80");
asm (" MSR CPSR,R0");
asm (" LDMIA SP!, {R0}");
}
В ответ получаю
Код
Error[Og006]: Syntax error in inline assembly: "Error[401]: Operand syntax error" c:\PTJoy\new\firmware\ptjoy\FreeRTOS\Source\portable\IAR\SAM7S256\portmacro.h 93
Error[Og006]: Syntax error in inline assembly: "Error[401]: Operand syntax error" c:\PTJoy\new\firmware\ptjoy\FreeRTOS\Source\portable\IAR\SAM7S256\portmacro.h 94
Error[Og006]: Syntax error in inline assembly: "Error[401]: Operand syntax error" c:\PTJoy\new\firmware\ptjoy\FreeRTOS\Source\portable\IAR\SAM7S256\portmacro.h 95
По-хорошему, нужно делать #define'ом, но там то-же самое, только без номеров строк
Ткните пожалуйста, что я делаю не так. Процессор - ARM7.
Спасибо!