> The extra instruction is generated as a kludge in expand_function_end > to prevent instructions that may trap to be scheduled into function > epilogue. However, the same blockage is generated under exactly the > same conditions earlier in the expand_function_end. The first blockage > should prevent unwanted scheduling into the epilogue, so there is > actually no need for the second one.
But there are instructions emitted after the first blockage, aren't there? Did you check the history of the code? -- Eric Botcazou