А есть хоть какой-то шанс, что в gcc завезут __builtin_rbit ?
Простой пример void foo(uint32_t x)
{
GPIOA->IDR = __RBIT(x);
}
foo(0x1234);
IAR и ARM Compiler запишут в регистр константу 0x2c480000, а GCC на рантайме будет rbit делать. При метапрограммировании это мешает.