diff options
author | ams <ams@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-08-20 11:14:38 +0000 |
---|---|---|
committer | ams <ams@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-08-20 11:14:38 +0000 |
commit | 260e669e8b6e2b6c3b9c422a617e0e8e1f873cc0 (patch) | |
tree | 2d9f05dc440f7a83a7c9010772e45442652c54fa /gcc/df-scan.c | |
parent | d2e2a8963b73d654ef7f219472c47791f8d42136 (diff) | |
download | gcc-260e669e8b6e2b6c3b9c422a617e0e8e1f873cc0.tar.gz |
2010-08-20 Joseph Myers <joseph@codesourcery.com>
gcc/
* doc/tm.texi.in (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Document to
be zero or nonzero.
* doc/tm.texi: Regenerate.
* defaults.h (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Define.
* df-scan.c (df_get_exit_block_use_set), reginfo.c
(init_reg_sets_1), rtlanal.c (rtx_unstable_p, rtx_varies_p):
Handle new PIC_OFFSET_TABLE_REG_CALL_CLOBBERED semantics.
* config/ia64/ia64.h (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Define
to 1.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163399 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/df-scan.c')
-rw-r--r-- | gcc/df-scan.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/gcc/df-scan.c b/gcc/df-scan.c index b4633abfb10..8b17ae29488 100644 --- a/gcc/df-scan.c +++ b/gcc/df-scan.c @@ -4032,14 +4032,13 @@ df_get_exit_block_use_set (bitmap exit_block_uses) #endif } -#ifndef PIC_OFFSET_TABLE_REG_CALL_CLOBBERED /* Many architectures have a GP register even without flag_pic. Assume the pic register is not in use, or will be handled by other means, if it is not fixed. */ - if ((unsigned) PIC_OFFSET_TABLE_REGNUM != INVALID_REGNUM + if (!PIC_OFFSET_TABLE_REG_CALL_CLOBBERED + && (unsigned) PIC_OFFSET_TABLE_REGNUM != INVALID_REGNUM && fixed_regs[PIC_OFFSET_TABLE_REGNUM]) bitmap_set_bit (exit_block_uses, PIC_OFFSET_TABLE_REGNUM); -#endif /* Mark all global registers, and all registers used by the epilogue as being live at the end of the function since they |