Subject: Re: how to avoid re-ordering?
To: None <firstname.lastname@example.org>
From: YAMAMOTO Takashi <email@example.com>
Date: 12/17/2001 11:42:14
From: Luke Mewburn <firstname.lastname@example.org>
> (Note: I am not a gcc guru.)
neither am I. ;-)
> What if ncpl or ocpl (local variables to the appropriate functions)
> are marked volatile as well, because as far as I can tell, it's the
> reordering of access to those variables which is what's causing the
> problem, not the access to the volatile cpl.
making them volatile just causes unnecessary code bloat
(and accidentally can solve the problem), IIRC.
the problem is re-ordering between splraise/lower and
operations protected by them. and protected variables
isn't non-volatile in most places. as far as I know,
there is nothing preventing re-ordering between
volatile one and non-volatile one.
of course, if protected operations are accesses to some variables,
making all of them volatile can solve the problem, I think.
but if we do so, we should check all usage of splxxx in our tree
and I guess unnecessary code bloats will be unacceptable.