i386.md (*call_value_1_rex64_ms_sysv): Use register names instead of numerical constants.
* config/i386/i386.md (*call_value_1_rex64_ms_sysv): Use register names instead of numerical constants. (sse_prologue_save): Ditto. (*sse_prologue_save_insn): Ditto. From-SVN: r153840
This commit is contained in:
parent
55a19d494b
commit
9d1a984546
@ -1,3 +1,10 @@
|
||||
2009-11-03 Uros Bizjak <ubizjak@gmail.com>
|
||||
|
||||
* config/i386/i386.md (*call_value_1_rex64_ms_sysv): Use register
|
||||
names instead of numerical constants.
|
||||
(sse_prologue_save): Ditto.
|
||||
(*sse_prologue_save_insn): Ditto.
|
||||
|
||||
2009-11-03 Uros Bizjak <ubizjak@gmail.com>
|
||||
|
||||
PR target/41900
|
||||
@ -5,10 +12,10 @@
|
||||
(TARGET_CALL_ESP): New define.
|
||||
* config/i386/i386.c (initial_ix86_tune_features): Initialize
|
||||
X86_ARCH_CALL_ESP.
|
||||
* config/i386/i386.md
|
||||
(*call_pop_1_esp, *call_1_esp, *call_value_pop_1_esp,
|
||||
*call_value_1_esp): Rename from *call_pop_1, *call_1,
|
||||
*call_value_pop_1 and *call_value_1. Depend on TARGET_CALL_ESP.
|
||||
* config/i386/i386.md (*call_pop_1_esp, *call_1_esp,
|
||||
*call_value_pop_1_esp, *call_value_1_esp): Rename from *call_pop_1,
|
||||
*call_1, *call_value_pop_1 and *call_value_1. Depend on
|
||||
TARGET_CALL_ESP.
|
||||
(*call_pop_1, *call_1, *call_value_pop_1, *call_value_1):
|
||||
New patterns, use "lsm" as operand 1 constraint.
|
||||
* config/i386/predicates.md (call_insn_operand): Depend on
|
||||
|
@ -21252,19 +21252,19 @@
|
||||
(call (mem:QI (match_operand:DI 1 "call_insn_operand" "rsm"))
|
||||
(match_operand:DI 2 "" "")))
|
||||
(unspec [(const_int 0)] UNSPEC_MS_TO_SYSV_CALL)
|
||||
(clobber (reg:TI 27))
|
||||
(clobber (reg:TI 28))
|
||||
(clobber (reg:TI 45))
|
||||
(clobber (reg:TI 46))
|
||||
(clobber (reg:TI 47))
|
||||
(clobber (reg:TI 48))
|
||||
(clobber (reg:TI 49))
|
||||
(clobber (reg:TI 50))
|
||||
(clobber (reg:TI 51))
|
||||
(clobber (reg:TI 52))
|
||||
(clobber (reg:TI XMM6_REG))
|
||||
(clobber (reg:TI XMM7_REG))
|
||||
(clobber (reg:TI XMM8_REG))
|
||||
(clobber (reg:TI XMM9_REG))
|
||||
(clobber (reg:TI XMM10_REG))
|
||||
(clobber (reg:TI XMM11_REG))
|
||||
(clobber (reg:TI XMM12_REG))
|
||||
(clobber (reg:TI XMM13_REG))
|
||||
(clobber (reg:TI XMM14_REG))
|
||||
(clobber (reg:TI XMM15_REG))
|
||||
(clobber (reg:DI SI_REG))
|
||||
(clobber (reg:DI DI_REG))]
|
||||
"!SIBLING_CALL_P (insn) && TARGET_64BIT"
|
||||
"TARGET_64BIT && !SIBLING_CALL_P (insn)"
|
||||
{
|
||||
if (constant_call_address_operand (operands[1], Pmode))
|
||||
return "call\t%P1";
|
||||
@ -21303,14 +21303,14 @@
|
||||
|
||||
(define_expand "sse_prologue_save"
|
||||
[(parallel [(set (match_operand:BLK 0 "" "")
|
||||
(unspec:BLK [(reg:DI 21)
|
||||
(reg:DI 22)
|
||||
(reg:DI 23)
|
||||
(reg:DI 24)
|
||||
(reg:DI 25)
|
||||
(reg:DI 26)
|
||||
(reg:DI 27)
|
||||
(reg:DI 28)] UNSPEC_SSE_PROLOGUE_SAVE))
|
||||
(unspec:BLK [(reg:DI XMM0_REG)
|
||||
(reg:DI XMM1_REG)
|
||||
(reg:DI XMM2_REG)
|
||||
(reg:DI XMM3_REG)
|
||||
(reg:DI XMM4_REG)
|
||||
(reg:DI XMM5_REG)
|
||||
(reg:DI XMM6_REG)
|
||||
(reg:DI XMM7_REG)] UNSPEC_SSE_PROLOGUE_SAVE))
|
||||
(use (match_operand:DI 1 "register_operand" ""))
|
||||
(use (match_operand:DI 2 "immediate_operand" ""))
|
||||
(use (label_ref:DI (match_operand 3 "" "")))])]
|
||||
@ -21320,14 +21320,14 @@
|
||||
(define_insn "*sse_prologue_save_insn"
|
||||
[(set (mem:BLK (plus:DI (match_operand:DI 0 "register_operand" "R")
|
||||
(match_operand:DI 4 "const_int_operand" "n")))
|
||||
(unspec:BLK [(reg:DI 21)
|
||||
(reg:DI 22)
|
||||
(reg:DI 23)
|
||||
(reg:DI 24)
|
||||
(reg:DI 25)
|
||||
(reg:DI 26)
|
||||
(reg:DI 27)
|
||||
(reg:DI 28)] UNSPEC_SSE_PROLOGUE_SAVE))
|
||||
(unspec:BLK [(reg:DI XMM0_REG)
|
||||
(reg:DI XMM1_REG)
|
||||
(reg:DI XMM2_REG)
|
||||
(reg:DI XMM3_REG)
|
||||
(reg:DI XMM4_REG)
|
||||
(reg:DI XMM5_REG)
|
||||
(reg:DI XMM6_REG)
|
||||
(reg:DI XMM7_REG)] UNSPEC_SSE_PROLOGUE_SAVE))
|
||||
(use (match_operand:DI 1 "register_operand" "r"))
|
||||
(use (match_operand:DI 2 "const_int_operand" "i"))
|
||||
(use (label_ref:DI (match_operand 3 "" "X")))]
|
||||
|
Loading…
Reference in New Issue
Block a user