[tree-ssa] where to fix this?

Dale Johannesen dalej@apple.com
Fri Dec 19 06:26:00 GMT 2003


I have a case where tree-ssa is calling fold() on this:

<plus_expr 0x9c80a0
     type <integer_type 0x40d42528 int SI
         size <integer_cst 0x8e4780 constant invariant 32>
         unit size <integer_cst 0x8e4798 constant invariant 4>...
     invariant
     arg 0 <integer_cst 0x40d40570 type <boolean_type 0x40d427f8 _Bool> 
constant invariant 1>
     arg 1 <integer_cst 0x97eed0 type <integer_type 0x40d42528 int> 
constant invariant 1>>

which gets into int_const_binop, which thinks the result is _Bool and 
truncates it to 0.
Not what we want.  Would the preference be to fix this in fold(), or 
make tree_ssa
produce trees that incorporate the C promotions?



More information about the Gcc mailing list