------- Comment #4 from rguenth at gcc dot gnu dot org 2008-11-25 21:23 ------- Testcase from comment #1 has wrong points-to sets on the trunk as well (-O).
end = &NONLOCAL temp_4 = end end_7 = end_1 temp_8 = temp_2 end_1 = end end_1 = end_7 temp_2 = temp_4 temp_2 = temp_8 ... end_7 is a non-pointer variable, eliminating edges. end_7 is a non-pointer variable, eliminating edges. end_7 is a non-pointer variable,ignoring constraint:end_7 = end_1 end_1 is a non-pointer variable,ignoring constraint:end_1 = end end_1 is a non-pointer variable,ignoring constraint:end_1 = end_7 ... end_7 = { } end_1 = { } ... <bb 2>: temp_4 = end_3(D) + -4; goto <bb 4>; <bb 3>: D.1238_6 = *temp_2; *end_1 = D.1238_6; end_7 = end_1 + -4; temp_8 = temp_2 + -4; <bb 4>: # end_1 = PHI <end_3(D)(2), end_7(3)> # temp_2 = PHI <temp_4(2), temp_8(3)> if (end_1 > start_5(D)) goto <bb 3>; else goto <bb 5>; -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37869