diff options
author | Richard Henderson <rth@redhat.com> | 2000-12-07 11:29:24 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2000-12-07 11:29:24 -0800 |
commit | f846e0de9b4d71d063dd1e40e15e1493f449e22a (patch) | |
tree | cc4ec45ec1dee3c48375ac480cc97d74cf044ea9 /gcc/flow.c | |
parent | 83c4781c639708b9b1671c736ffcbb2c58584479 (diff) | |
download | gcc-f846e0de9b4d71d063dd1e40e15e1493f449e22a.zip gcc-f846e0de9b4d71d063dd1e40e15e1493f449e22a.tar.gz gcc-f846e0de9b4d71d063dd1e40e15e1493f449e22a.tar.bz2 |
flow.c (calculate_global_regs_live): Force the stack pointer live after reload as well.
* flow.c (calculate_global_regs_live): Force the stack pointer live
after reload as well.
From-SVN: r38114
Diffstat (limited to 'gcc/flow.c')
-rw-r--r-- | gcc/flow.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -3368,14 +3368,14 @@ calculate_global_regs_live (blocks_in, blocks_out, flags) IOR_REG_SET (new_live_at_end, sb->global_live_at_start); } + /* The all-important stack pointer must always be live. */ + SET_REGNO_REG_SET (new_live_at_end, STACK_POINTER_REGNUM); + /* Before reload, there are a few registers that must be forced live everywhere -- which might not already be the case for blocks within infinite loops. */ if (! reload_completed) { - /* The all-important stack pointer. */ - SET_REGNO_REG_SET (new_live_at_end, STACK_POINTER_REGNUM); - /* Any reference to any pseudo before reload is a potential reference of the frame pointer. */ SET_REGNO_REG_SET (new_live_at_end, FRAME_POINTER_REGNUM); |