Hier noch eine Zeile kürzer:
Code:
void inline bitswp2_4_new(uint8_t b) {
    asm volatile ( 
       "mov __tmp_reg__, %0"   "\n\t"
       "bst %0,2"   "\n\t"
       "bld %0,4"   "\n\t"
       "bst __tmp_reg__,4" "\n\t"
       "bld %0,2"  "\n\t"
       : 
       : "d" (b) 
    ); 
}