On 16/08/07, Diego Novillo <[EMAIL PROTECTED]> wrote: > 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.
I will investigate. Thanks for the analysis. > 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)/ Yes, you are right. I sent a follow-up after the original message. It may have gotten stuck in one of internet tubes. ;-) Cheers, Manuel.