> Hmm, it seems to be because we do not value-number loads that > satisfy stmt_could_throw_p (for whatever reason ...). Seems to date > back to rev. 131610, the fix for PR34648. Looking at that bug it > seems that we could at least allow stmts that only throw externally > (but generally CSE should still work, so value-number them when > we are doing FRE but not PRE).
OK. The annoying thing is that it's optimized if you have y_1(D)->i2: t$F$i2_9 = y_1(D)->i2; D.1579_3 = y_1(D)->i2; and this is equivalent wrt throwing (in particular TREE_THIS_NOTRAP is not set anywhere). -- Eric Botcazou