Re: emit_conditional_move w/o compare insn (was: Full comparison in 'cbranchsi4' leads to error in gcc 4.0)

2005-05-11 Thread Richard Earnshaw
On Tue, 2005-05-10 at 17:32, Sami Khawam wrote: > Hi Gary, > > Thanks a lot for the tip. > > After debugging, the problem seem to be coming from 'emit_conditional_move' > which is called by 'expand_sdiv_pow2' when converting division-by-constants > into > shifting. > The problem is that the arc

Re: emit_conditional_move w/o compare insn (was: Full comparison in 'cbranchsi4' leads to error in gcc 4.0)

2005-05-10 Thread Sami Khawam
Hi Gary, Thanks a lot for the tip. After debugging, the problem seem to be coming from 'emit_conditional_move' which is called by 'expand_sdiv_pow2' when converting division-by-constants into shifting. The problem is that the architecture I have does not support compare operations: It either has

RE: Full comparison in 'cbranchsi4' leads to error in gcc 4.0

2005-05-10 Thread Gary Funck
> > This works fine on gcc 3.4, however on gcc 4.0 it creates an error during > optimization. According to my investigation, the error occurs when there is a > division by a constant power of 2 which needs to be transformed into > shifting. > The error generated is: > > internal compiler err

Full comparison in 'cbranchsi4' leads to error in gcc 4.0

2005-05-09 Thread Sami Khawam
Hi, I am porting gcc (version 4.0) to a CPU supporting conditional jumps, which does not have a CC register. I have combined the comparision and jump operation in the definition of "cbranchsi4" as show at the end of this message. This works fine on gcc 3.4, however on gcc 4.0 it creates an error