From e427abbf2731fe52aebf1a1e2ca3bffb4f5dbe20 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Fri, 13 Aug 2004 19:59:18 -0700 Subject: [PATCH] i386.md (call_1, [...]): Use Pmode for constant_call_address_operand. * config/i386/i386.md (call_1, sibcall_1, call_1_rex64): Use Pmode for constant_call_address_operand. (call_value_pop_1, call_value_1): Likewise. (sibcall_value_1, call_value_1_rex64): Likewise. From-SVN: r85981 --- gcc/ChangeLog | 7 +++++++ gcc/config/i386/i386.md | 14 +++++++------- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7a94d93ef80..415c0fc6ddd 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2004-08-13 Richard Henderson + + * config/i386/i386.md (call_1, sibcall_1, call_1_rex64): Use Pmode + for constant_call_address_operand. + (call_value_pop_1, call_value_1): Likewise. + (sibcall_value_1, call_value_1_rex64): Likewise. + 2004-08-13 James E Wilson * config/mips/sb1.md (ir_sb1_divdf_2pipes, ir_sb1_divdf_1pipe): diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index 54ee11e9d4a..a32063d647e 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -13668,7 +13668,7 @@ (match_operand 1 "" ""))] "!SIBLING_CALL_P (insn) && !TARGET_64BIT" { - if (constant_call_address_operand (operands[0], QImode)) + if (constant_call_address_operand (operands[0], Pmode)) return "call\t%P0"; return "call\t%A0"; } @@ -13679,7 +13679,7 @@ (match_operand 1 "" ""))] "SIBLING_CALL_P (insn) && !TARGET_64BIT" { - if (constant_call_address_operand (operands[0], QImode)) + if (constant_call_address_operand (operands[0], Pmode)) return "jmp\t%P0"; return "jmp\t%A0"; } @@ -13690,7 +13690,7 @@ (match_operand 1 "" ""))] "!SIBLING_CALL_P (insn) && TARGET_64BIT" { - if (constant_call_address_operand (operands[0], QImode)) + if (constant_call_address_operand (operands[0], Pmode)) return "call\t%P0"; return "call\t%A0"; } @@ -19518,7 +19518,7 @@ (match_operand:SI 3 "immediate_operand" "i")))] "!TARGET_64BIT" { - if (constant_call_address_operand (operands[1], QImode)) + if (constant_call_address_operand (operands[1], Pmode)) { if (SIBLING_CALL_P (insn)) return "jmp\t%P1"; @@ -19564,7 +19564,7 @@ (match_operand:SI 2 "" "")))] "!SIBLING_CALL_P (insn) && !TARGET_64BIT" { - if (constant_call_address_operand (operands[1], QImode)) + if (constant_call_address_operand (operands[1], Pmode)) return "call\t%P1"; return "call\t%*%1"; } @@ -19576,7 +19576,7 @@ (match_operand:SI 2 "" "")))] "SIBLING_CALL_P (insn) && !TARGET_64BIT" { - if (constant_call_address_operand (operands[1], QImode)) + if (constant_call_address_operand (operands[1], Pmode)) return "jmp\t%P1"; return "jmp\t%*%1"; } @@ -19588,7 +19588,7 @@ (match_operand:DI 2 "" "")))] "!SIBLING_CALL_P (insn) && TARGET_64BIT" { - if (constant_call_address_operand (operands[1], QImode)) + if (constant_call_address_operand (operands[1], Pmode)) return "call\t%P1"; return "call\t%A1"; } -- 2.30.2