This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/79793] Incorrect stack alignment for interrupt handler in 64-bit
- From: "hjl.tools at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 27 Jul 2017 01:20:08 +0000
- Subject: [Bug target/79793] Incorrect stack alignment for interrupt handler in 64-bit
- Auto-submitted: auto-generated
- References: <bug-79793-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79793
--- Comment #17 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to H.J. Lu from comment #16)
> The problem is in create_cie_data:
>
> /* On entry, the Canonical Frame Address is at SP. */
> memset (&loc, 0, sizeof (loc));
> loc.reg = dw_stack_pointer_regnum;
> loc.offset = INCOMING_FRAME_SP_OFFSET;
> def_cfa_1 (&loc);
>
> We lost the function type info with LTO.
We didn't lose the info. The problem is that create_pseudo_cfg assumes
INCOMING_FRAME_SP_OFFSET is a constant.