As David Brown wrote: > Eric suggested making "some_temp_variable" volatile, which is the > traditional way to enforce ordering in C programming. Strictly > speaking, you don't have to make it volatile - it's enough to make > sure it is in memory if cli() and sei() have memory blocks.
Yes, but again: forcing the variable into memory is a pessimization. It's not required for the job, but something like that is currently the only way to force the compiler into doing what the programmer intended. (suggested language extension) > I'm not sure there is any way to give a solid definition of the > semantics of "volatile" here. And I suspect that you'll have > /slightly/ more difficulty getting this into mainline gcc than for > other extensions such as 0b binary constants... Yeah, sure. No, this won't be me to implement it... -- cheers, J"org .-.-. --... ...-- -.. . DL8DTL http://www.sax.de/~joerg/ NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-) _______________________________________________ AVR-libc-dev mailing list AVR-libc-dev@nongnu.org http://lists.nongnu.org/mailman/listinfo/avr-libc-dev