diff options
author | hp <hp@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-03-19 03:52:58 +0000 |
---|---|---|
committer | hp <hp@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-03-19 03:52:58 +0000 |
commit | c5fe58d7b0816a2ca4a0a08d457c769dbd1df93e (patch) | |
tree | d0667ba12bf974f168b7902596da504e7947fb21 /gcc/config/cris | |
parent | 84456d31451a76a672598e399e8d6eed89bea1c6 (diff) | |
download | gcc-c5fe58d7b0816a2ca4a0a08d457c769dbd1df93e.tar.gz |
PR middle-end/38609
* config/cris/cris.h (FRAME_POINTER_REQUIRED): Force for all
functions with dynamic stack-pointer adjustments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@144951 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/cris')
-rw-r--r-- | gcc/config/cris/cris.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/config/cris/cris.h b/gcc/config/cris/cris.h index eae8b484904..49822598f45 100644 --- a/gcc/config/cris/cris.h +++ b/gcc/config/cris/cris.h @@ -851,8 +851,9 @@ enum reg_class /* Node: Elimination */ /* Really only needed if the stack frame has variable length (alloca - or variable sized local arguments (GNU C extension). */ -#define FRAME_POINTER_REQUIRED 0 + or variable sized local arguments (GNU C extension). See PR39499 and + PR38609 for the reason this isn't just 0. */ +#define FRAME_POINTER_REQUIRED (!current_function_sp_is_unchanging) #define ELIMINABLE_REGS \ {{ARG_POINTER_REGNUM, STACK_POINTER_REGNUM}, \ |