Subject: Re: Recent serial port lossage
To: None <Charles-Hannum@deshaw.com>
From: Wolfgang Solfrank <ws@tools.de>
List: port-i386
Date: 01/08/1996 15:49:25
> I've tracked this down to what I believe to be a bug in GCC 2.7.2.
> Basically, if you have code of the form:
> 
> volatile int foo;
> 
> ...
> 
> 	foo |= 0x80000000;
> 
> ...
> 
> in many (all?) cases, `gcc -O3' now compiles it as:
> 
> 	movl _foo,%e??
> 	orl $0x80000000,%e??
> 	movl %e??,_foo

Of course this cannot be a bug in gcc. If it was, the above C code couldn't
be compiled at all for any RISC chip. Remember that RISC processors cannot
do arithmetic (or logical functions) to memory at all.
--
ws@TooLs.DE     (Wolfgang Solfrank, TooLs GmbH) 	+49-228-985800