diff options
author | Richard Henderson <rth@cygnus.com> | 2000-08-21 17:44:09 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2000-08-21 17:44:09 -0700 |
commit | 770a7febdae7861ad605ad8f5e5c004a9c5c5105 (patch) | |
tree | 16fd1e4b157f436495deeb7e171e5c98b2d8c34b /gcc/flow.c | |
parent | 280db205772451c9025357ba24359ff18b56de70 (diff) | |
download | gcc-770a7febdae7861ad605ad8f5e5c004a9c5c5105.zip gcc-770a7febdae7861ad605ad8f5e5c004a9c5c5105.tar.gz gcc-770a7febdae7861ad605ad8f5e5c004a9c5c5105.tar.bz2 |
flow.c (calculate_global_regs_live): Mark frame pointer live everywhere before reload.
* flow.c (calculate_global_regs_live): Mark frame pointer live
everywhere before reload.
From-SVN: r35862
Diffstat (limited to 'gcc/flow.c')
-rw-r--r-- | gcc/flow.c | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -3191,6 +3191,12 @@ calculate_global_regs_live (blocks_in, blocks_out, flags) the case for blocks within infinite loops. */ SET_REGNO_REG_SET (new_live_at_end, STACK_POINTER_REGNUM); + /* Similarly for the frame pointer before reload. Any reference + to any pseudo before reload is a potential reference of the + frame pointer. */ + if (! reload_completed) + SET_REGNO_REG_SET (new_live_at_end, FRAME_POINTER_REGNUM); + /* Regs used in phi nodes are not included in global_live_at_start, since they are live only along a particular edge. Set those regs that are live because of a |