This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] where to fix this?
- From: law at redhat dot com
- To: Dale Johannesen <dalej at apple dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Fri, 19 Dec 2003 09:17:54 -0700
- Subject: Re: [tree-ssa] where to fix this?
- Reply-to: law at redhat dot com
In message <978715DA-31C9-11D8-B11A-000A95D7CD40@apple.com>, Dale Johannesen wr
ites:
>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?
We'd need more context to know what's happening. testcases help a lot :-)
jeff