----- Original Message ----

> From: Jamie Prescott <jpre...@yahoo.com>
> To: gcc@gcc.gnu.org
> Sent: Monday, May 11, 2009 11:59:23 PM
> Subject: Code generation problem with optimizations enabled

> If I disable the optimizations, everything is fine and the 'fcmp' is there.
> Even with optimizations enabled, the RTL dump shows the missing 'cmpdf' 
> present
> and correctly recognized. It being:

What I noticed is that if I CC_STATUS_INIT (in xxx_notice_update_cc()) even for 
insn that
do not require it (that are almost all of them - being only cmp/fcmp/test that 
modify cc0),
cmpdf gets emitted regularly.
Normally all the insn but cmp/fcmp/test set "none" in their cc attribute, and
xxx_notice_update_cc() does nothing in that case.
While cmp and fcmp (that set the cc attribute to "compare") do CC_STATUS_INIT 
and
records DEST and SRC operands.
Am I doing it wrong?


- Jamie


      

Reply via email to