http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54570
Richard Guenther <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org Target Milestone|--- |4.8.0 --- Comment #1 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-09-13 15:15:31 UTC --- We talked about disabling SCCVNs offset-based field VN here: case COMPONENT_REF: /* The field decl is enough to unambiguously specify the field, a matching type is not necessary and a mismatching type is always a spurious difference. */ temp.type = NULL_TREE; temp.op0 = TREE_OPERAND (ref, 1); temp.op1 = TREE_OPERAND (ref, 2); { tree this_offset = component_ref_field_offset (ref); if (this_offset ... thus keep temp.off == -1 or adjust the equality function. --- Comment #2 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-09-13 15:17:10 UTC --- And introducing a global flag whether any __builtin_object_size calls where in the code and not pessimize opts if not.