WinAVR 20081205, AVRStudio 4.15.623, Optimization level -Os
from avr/iocanxx.h:
/* RegDef: CAN MOb Status Register*/
#define CANSTMOB _SFR_MEM8(0xEE)
The optimizer fails on all of these in ISR(CANIT_vect):
if ((CANSTMOB & ((1 << BERR) | (1 << SERR) | (1 << CERR) | (1 << FERR) | (1 << AERR))) != 0) { if (CANSTMOB & ((1 << BERR) | (1 << SERR) | (1 << CERR) | (1 << FERR) | (1 << AERR))) { if (CANSTMOB & (0x1F)) { if (CANSTMOB & 0x1F) { ca2: 80 91 ee 00 lds r24, 0x00EE ca6: 90 e0 ldi r25, 0x00 ; 0 ca8: 8f 71 andi r24, 0x1F ; 31 caa: 90 70 andi r25, 0x00 ; 0 cac: 89 2b or r24, r25 cae: a1 f1 breq .+104 ; 0xd18 <__vector_18+0xe0>