This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Should -Wjump-misses-init be in -Wall?


2009/6/23 Ian Lance Taylor <iant@google.com>:
> Paolo Bonzini <bonzini@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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]