http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55171
--- Comment #8 from Kai Tietz <ktietz at gcc dot gnu.org> 2012-11-24 12:54:40 UTC --- The pattern is movl 4(%esp), %eax movl (%eax), %eax addl -16(%eax), %eax As here the saved this-pointer in %eax gets clobbered.