------- Comment #15 from rguenth at gcc dot gnu dot org 2006-03-06 14:39 ------- The problem for the original testcase is that we don't even try to build SFTs required for structure aliasing analysis for incoming pointers:
foo0 (f) { int D.1529; <bb 2>: # SMT.4_4 = V_MAY_DEF <SMT.4_3>; f_1->s = 1; # SMT.4_5 = V_MAY_DEF <SMT.4_4>; f_1->s2 = 2; which is required to turn these into V_MUST_DEFs. Of course we still can do propagation of the values in ccp or copyprop if we walk the virtual use-def chains there and disabmiguate the offsets. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13761