------- Comment #9 from rguenth at gcc dot gnu dot org 2006-03-10 11:10 -------
<L2>:;
pretmp.23_2 = (union U *) &rv;
# NMT.6_4 = PHI <NMT.6_5(2), NMT.6_6(5)>;
ovfl:;
rv.0_1 = pretmp.23_2;
# NMT.6_6 = V_MAY_DEF <NMT.6_4>;
rv.0_1->d = 42;
# VUSE <NMT.6_6>;
D.1529_3 = rv.0_1->L;
if (D.1529_3 != 0) goto <L5>; else goto <L1>;
<L5>:;
goto <bb 3> (ovfl);
we prop pretmp.23_2 to rv.0_1 in rv.0_1->d = 42 -- but we don't have the
NMT associated with pretmp.23_2:
$5 = {pt_anything = 0, value_escapes_p = 0, is_dereferenced = 0,
pt_global_mem = 0, pt_null = 0, pt_vars = 0xb7dec890, name_mem_tag = 0x0,
escape_mask = 0}
As we have in alias after PRE:
Pointed-to sets for pointers in breakme
pretmp.23_2, points-to vars: { rv }
rv.0_1, name memory tag: NMT.6, is dereferenced, points-to vars: { rv }
which looks inconsistent.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26626