diff options
author | Richard Stallman <rms@gnu.org> | 1992-06-07 21:08:20 +0000 |
---|---|---|
committer | Richard Stallman <rms@gnu.org> | 1992-06-07 21:08:20 +0000 |
commit | 64af12fd4e845b6ba1efc84f6b68c5af8f287d6c (patch) | |
tree | 6cf200b78386423b5855cb52cd2d4449c2ce5dc3 | |
parent | c43f8fbd9700b9b5ba5b5d6ae0a63d55d3a0c4df (diff) | |
download | gcc-64af12fd4e845b6ba1efc84f6b68c5af8f287d6c.zip gcc-64af12fd4e845b6ba1efc84f6b68c5af8f287d6c.tar.gz gcc-64af12fd4e845b6ba1efc84f6b68c5af8f287d6c.tar.bz2 |
*** empty log message ***
From-SVN: r1181
-rw-r--r-- | gcc/reorg.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/gcc/reorg.c b/gcc/reorg.c index 080e7f7..6af7a91 100644 --- a/gcc/reorg.c +++ b/gcc/reorg.c @@ -3510,8 +3510,8 @@ dbr_schedule (first, file) function. The condition code never is and memory always is. If the frame pointer is needed, it is and so is the stack pointer unless EXIT_IGNORE_STACK is non-zero. If the frame pointer is not needed, the - stack pointer is. In addition, registers used to return the function - value are needed. */ + stack pointer is. Registers used to return the function value are + needed. Registers holding global variables are needed. */ end_of_function_needs.cc = 0; end_of_function_needs.memory = 1; @@ -3533,6 +3533,10 @@ dbr_schedule (first, file) mark_referenced_resources (current_function_return_rtx, &end_of_function_needs, 0); + for (i = 0; i < FIRST_PSEUDO_REGISTER; i++) + if (global_regs[i]) + SET_HARD_REG_BIT (end_of_function_needs.regs, i); + /* Show we haven't computed an end-of-function label yet. */ end_of_function_label = 0; |