F'up of avr-gcc: New Features?
Perhaps a mechanism for marking in-line assembly so that it will not be reordered with respect to volatile accesses.
Perhaps by putting volatile in the clobber list.
memory clobber is a bit of a bludgeon.
For that matter, it might be good to be able to "pass" a pointer into in-line assembly and tell the compiler that only its target might be clobbered.
This feature is already there.
Use "asm volatile" instead of "asm".
Notice that volatile is not a subset of a memory clobber, nor the other way round:
"¢ volatile actions are volatile actions
"¢ memory accesses are memory accesses
If a memory clobber is too intrusive, you may want to read GCC: Assembler Instructions with C Expression Operands that shows an example how to mark only a specific memory area as clobbered.