Я тестирую встроенный код в хост-среде (vectorcast).
Код разрабатывается с использованием компилятора arm-eabi на целевом оборудовании.Мы тестируем его на настольном компьютере без какого-либо симулятора или аппаратного интерфейса.
Я использую компилятор mingw - 4.5 gcc.Часто в заголовочных файлах много кода ассемблера, например:
__attribute__( ( always_inline ) ) __STATIC_INLINE uint32_t __RBIT(uint32_t value)
{ uint32_t result;
__ASM volatile ("rbit %0, %1" : "=r" (result) : "r" (value) );
return(result);}
Во время тестирования моего исходного модуля, скажем, x1.c, он вызывает функцию, подобную определенной выше, во включенном заголовочном файле.Когда я пытаюсь скомпилировать это, я получаю следующую ошибку:
Ошибка: нет такой инструкции: `rbit% ebx,% eax '
Есть ли переключатель gcc, который при использовании для опций игнорируетсякод с префиксом __asm?
Любое другое решение также приветствуется.