PR179 reopened (was it ever fixed?)
Diego Novillo
dnovillo@google.com
Thu Aug 16 15:30:00 GMT 2007
On 8/16/07 6:18 AM, Manuel López-Ibáñez wrote:
> Am I wrong? Why can be the reason for this? How can I
> investigate further?
That's right. In this case variable 'i' is an addressable local, so it
is not put in normal SSA form. It's in virtual SSA form (use the -vops
option when dumping the IL). We don't warn on memory symbols, only
registers.
One way to address this could be to consider 'i.0' uninitialized because
its initial value is coming from a local memory symbol with no know
initialization. Notice that the initial assignment to i.0 has a VUSE
for i's default definition. You could probably use that to warn that
'i' is being used uninitialized.
BTW, your -B2 code still has the call to foo() what did you change
between the two? Seems like you just s/foo(&i)/foo(i)/
More information about the Gcc
mailing list