On Fri, Feb 13, 2004 at 11:50:00PM +0100, Thiemo Seufer wrote: > > My understanding is that with gcc-3.4 that __asm__ __volatile__ does not > > protect against dead code removal. If the code is not dead __volatile__ > > works as documented, but dead code removal still happens. > > The inline version isn't dead code, and gcc isn't allowed to reschedule > code around a __asm__ __volatile__, so the patch should be ok. It's the gcc generated function epilogue which is the problem. There's no reliable way to work around that ... Ralf