i686 (PentiumPro) Optimizer Bug

Kurt Garloff garloff@hft.e-technik.uni-dortmund.de
Tue Nov 17 10:15:00 GMT 1998


On Mon, Nov 16, 1998 at 10:15:43AM -0600, Robert Lipe wrote:
> I was unable to duplicate this problem with either 1.0.2 (as shipped
> with redhad 5.1) or with a Linux snapshot of egcs-2.92.21.
> 
> Interestingly, on 1.1.1, this example emits an opcode the OpenServer
> assembler cannot grok.  It seems to choke on:
> 
> 	/usr/tmp/cc2QneXL.s:35:unknown instruction: fcmove
> 	/usr/tmp/cc2QneXL.s:58:unknown instruction: fcmove

fcmove is a PPro/PII specific instruction: Float conditional move. (There's
also a non-float variant.)
It saves a conditional branch and is therefore used by the optimizer when
compiling w/ march=pentiumpro. Obviously, something's wrong with it ...

-- 
+--------------------------------------------------------------+
|  cand.phys. Kurt Garloff        C1-O4-101 (Chemiegeb"aude)   |
|Lehrstuhl Hochfrequenztechnik  (Fakult"at f"ur Elektrotechnik)|
|   Universit"at Dortmund             D - 44221 Dortmund       |
|   Tel.: (0231) 755-3947            Fax: (0231) 755-4631      |
|            garloff@hft.e-technik.uni-dortmund.de             |
|                 Public PGP key available !                   | 
+--------------------------------------------------------------+



More information about the Gcc-bugs mailing list