This is the mail archive of the
mailing list for the GCC project.
PING^1 [PATCH] DWARF: Relax SUPPORTS_STACK_ALIGNMENT with !crtl->stack_realign_tried
- From: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>, Jason Merrill <jason at redhat dot com>, Cary Coutant <ccoutant at gmail dot com>
- Date: Wed, 29 Aug 2018 05:47:02 -0700
- Subject: PING^1 [PATCH] DWARF: Relax SUPPORTS_STACK_ALIGNMENT with !crtl->stack_realign_tried
On Wed, Aug 8, 2018 at 6:32 AM, H.J. Lu <firstname.lastname@example.org> wrote:
> Assert for SUPPORTS_STACK_ALIGNMENT was added for dynamic stack
> alignment. At the time, arg_pointer_rtx would only be eliminated
> by either hard_frame_pointer_rtx or stack_pointer_rtx only when
> dynamic stack alignment is supported. With
> 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
> this can happen when there is no dynamic stack alignment. This patch
> relaxes SUPPORTS_STACK_ALIGNMENT with !crtl->stack_realign_tried to
> allow arg_pointer_rtx to be eliminated by either hard_frame_pointer_rtx
> or stack_pointer_rtx when there is no dynamic stack alignment at all.
> PR debug/86593
> * dwarf2out.c (based_loc_descr): Replace SUPPORTS_STACK_ALIGNMENT
> with (SUPPORTS_STACK_ALIGNMENT || !crtl->stack_realign_tried).
> (compute_frame_pointer_to_fb_displacement): Likewise.
> PR debug/86593
> * g++.dg/pr86593.C: New test.