summaryrefslogtreecommitdiff
path: root/gcc/config/ia64/ia64.h
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-08-19 03:04:19 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-08-19 03:04:19 +0000
commit34a64f802f12f6d4df7e7dddfdda1a80d7601d92 (patch)
treef05313d8fdbcc9289591f51b7bf29335cf3310d0 /gcc/config/ia64/ia64.h
parentec10232181a9e553fe74cfbb760717dc6155e628 (diff)
downloadgcc-34a64f802f12f6d4df7e7dddfdda1a80d7601d92.tar.gz
* flow.c (mark_regs_live_at_end): Use regs_invalidated_by_call.
* regclass.c (init_reg_sets_1): Fix typo. * config/ia64/ia64.c (ar_pfs_reg_operand): New. (ia64_expand_call): Pass ar.pfs to sibcall expanders. (ia64_compute_frame_size): Make ar.unat live when in use. (ia64_epilogue_uses): Reformat; do not check current_function_is_leaf for ar.pfs; remove ar.unat handling. * config/ia64/ia64.h (CALL_REALLY_USED_REGISTERS): ar.unat is call-saved. (PREDICATE_CODES): Add ar_pfs_reg_operand. * config/ia64/ia64-protos.h: Update decls. * config/ia64/ia64.md (sibcall_nopic): Use ar.pfs. (sibcall_pic): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45021 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/ia64/ia64.h')
-rw-r--r--gcc/config/ia64/ia64.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/gcc/config/ia64/ia64.h b/gcc/config/ia64/ia64.h
index d1a1feded61..97e609fd21e 100644
--- a/gcc/config/ia64/ia64.h
+++ b/gcc/config/ia64/ia64.h
@@ -635,11 +635,11 @@ while (0)
/* Like `CALL_USED_REGISTERS' but used to overcome a historical
problem which makes CALL_USED_REGISTERS *always* include
- all the FIXED_REGISTERS. Until this problem has been
+ all the FIXED_REGISTERS. Until this problem has been
resolved this macro can be used to overcome this situation.
In particular, block_propagate() requires this list
be acurate, or we can remove registers which should be live.
- This macro is used in regs_invalidated_by_call ()*/
+ This macro is used in regs_invalidated_by_call. */
#define CALL_REALLY_USED_REGISTERS \
{ /* General registers. */ \
@@ -668,7 +668,7 @@ while (0)
/* Branch registers. */ \
1, 0, 0, 0, 0, 0, 1, 1, \
/*FP RA CCV UNAT PFS LC EC */ \
- 0, 0, 1, 1, 1, 0, 0 \
+ 0, 0, 1, 0, 1, 0, 0 \
}
@@ -2667,6 +2667,7 @@ do { \
{ "condop_operator", {PLUS, MINUS, IOR, XOR, AND}}, \
{ "ar_lc_reg_operand", {REG}}, \
{ "ar_ccv_reg_operand", {REG}}, \
+{ "ar_pfs_reg_operand", {REG}}, \
{ "general_tfmode_operand", {SUBREG, REG, CONST_DOUBLE, MEM}}, \
{ "destination_tfmode_operand", {SUBREG, REG, MEM}}, \
{ "tfreg_or_fp01_operand", {REG, CONST_DOUBLE}},