I am doing porting work and writing a backend using GCC 8.2.0. Despite the following #defines, the frame pointer is not getting eliminated; any idea why GCC would still generate a frame pointer ? #undef TARGET_FRAME_POINTER_REQUIRED #define TARGET_FRAME_POINTER_REQUIRED hook_bool_void_false #define ELIMINABLE_REGS \ {{ARG_POINTER_REGNUM, STACK_POINTER_REGNUM}, \ {ARG_POINTER_REGNUM, FRAME_POINTER_REGNUM}, \ {FRAME_POINTER_REGNUM, STACK_POINTER_REGNUM}} #define INITIAL_ELIMINATION_OFFSET(FROM,TO,OFFSET) \ (OFFSET) = pu32_initial_elimination_offset(FROM, TO)