[Bug c/87400] GCC doesn't produce valid frames for stack traces with Thumb-2 (Cortex-M3+)

rearnsha at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Sep 24 09:52:00 GMT 2018


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87400

--- Comment #3 from Richard Earnshaw <rearnsha at gcc dot gnu.org> ---
(In reply to Alex Kalmuk from comment #2)
> I write about mtpcs-frame for thumb, not mapcs-frame, I know the last one
> for arm instruction set.

The tpcs is also obsolete (the tpcs was replaced by the atpcs more than 20
years ago); the atpcs was superseded by the aapcs about 15 years ago now.

I'm not sure why the tpcs-frame and tpcs-leaf-frame flags weren't removed from
the compiler; they certainly doesn't do anything useful now.

Unfortunately, the aapcs does not define a frame pointer or mandate a frame
layout, which makes backtracing through a frame impossible.  Any frame pointer
used by the compiler can only be used within that frame.


More information about the Gcc-bugs mailing list