warning: listing the stack pointer register 'esp' in a clobber list is deprecated
Segher Boessenkool
segher@kernel.crashing.org
Mon May 27 17:51:00 GMT 2019
On Mon, May 27, 2019 at 07:22:35PM +0200, J.W. Jagersma wrote:
> On 2019-05-27 19:02, Segher Boessenkool wrote:
> > The simple and reliable way of forcing a frame pointer is to write
> >
> > if (__builtin_frame_address(0)) {
> > /* Force a frame pointer for this function. */
> > }
> >
> Thanks, this appears to work perfectly. But I don't see how it can
> guarantee that "m" operands are never accessed through esp? I guess
> ideally there would be a specific constraint for this seemingly common
> scenario.
GCC uses the frame pointer for all stack accesses, if it uses a frame
pointer at all.
Segher
More information about the Gcc-help
mailing list