I've been using registers for global variable for many projects.
Instead of using :
volatile uint8_t timer;
register uint8_t timer asm("r3");
That has the benefits of much much faster and smaller code.
But does someone knows how to define 16 or 32 bits variables that way ?
Syntax like :
register uint16_t counter asm("r4");
generate a compile error: conflicting types for 'counter'
Any idea ?