2009/6/23 Ian Lance Taylor <i...@google.com>:
> Paolo Bonzini <bonz...@gnu.org> writes:
>
>> I don't think this warning can report anything that -Wuninitialized
>> cannot report, so it should go in -Wc++-compat only.
>
> For the record, it can, as in when compiling this case without
> optimization.  This is not a strong example by any means.

This is a part of SSA that I don't understand completely. We create a
var_decl for i in the following assignment:

D.1606_1 = i;

because i is loaded from memory. But then, because there is no alias
info, there are no vuse/vdef operators for this statement. So we
actually do not know if this vuse is the default definition of i. Is
there no way to know this without alias info? In the dump, it looks
like this could be known:

f1 ()
{
  intD.0 iD.1605;
  intD.0 D.1606;

  # BLOCK 2
  # PRED: ENTRY (fallthru)
  # SUCC: 3 (fallthru)

  # BLOCK 3, starting at line 10
  # PRED: 2 (fallthru)
lab1L.0:
  [test.c : 10:4] D.1606_1 = iD.1605;
  return D.1606_1;
  # SUCC: EXIT

}

BTW, why the dump and the output of debug_gimple_stmt are so different?

Cheers,

Manuel.

Reply via email to