Hi, On Sat, 1 Sep 2018, Segher Boessenkool wrote:
> > With -fno-omit-frame-pointer, arg pointer is eliminated with hard frame > > pointer. But > > > > commit cd557ff63f388ad27c376d0a225e74d3594a6f9d > > Author: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4> > > Date: Thu Aug 10 15:29:05 2017 +0000 > > > > i386: Don't use frame pointer without stack access > > > > When there is no stack access, there is no need to use frame pointer > > even if -fno-omit-frame-pointer is used and caller's frame pointer is > > unchanged. > > > > changed it in the last minute. It is too late to go back. When it is done, > > hard frame pointer must be replaced by stack pointer - UNITS_PER_WORD > > if it is ever used. > > So after that patch something uses the hard frame pointer, while it also > claims nothing uses the hard frame pointer? Sounds to me you should fix > the uses, and all will be fine. I and others objected to the above patch (cd557ff63) for a reason as ignoring users wishes (see https://gcc.gnu.org/ml/gcc-patches/2017-08/msg00466.html and thread). Alas, instead of fixing the problems with keeping a useless frame pointer setup it was used as a reason to make -fno-omit-frame-pointer even more useless :-/ Ciao, Michael.