Commit a23132e1 by Uros Bizjak Committed by Uros Bizjak

* config/i386/i386.md (cmpdi_ccno_1_rex64, *cmpsi_ccno_1,

	*cmphi_ccno_1, *cmpqi_ccno_1, *movsi_xor, *movstricthi_xor,
	*movstrictqi_xor, *movdi_xor_rex64, *ashldi3_1_rex64,
	*ashldi3_cmp_rex64, *ashldi3_cconly_rex64, ashlsi3, *ashlsi3_1_zext,
	*ashlsi3_cmp, *ashlsi3_cconly, *ashlsi3_cmp_zext, *ashlhi3_1_lea,
	*ashlhi3_1, *ashlhi3_cmp, *ashlhi3_cconly, *ashlqi3_1_lea,
	*ashlqi3_1, *ashlqi3_cmp, *ashlqi3_cconly): Remove equivalent
	assembler dialect choice from asm templates.

From-SVN: r121883
parent c3a86da9
2007-02-13 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (cmpdi_ccno_1_rex64, *cmpsi_ccno_1,
*cmphi_ccno_1, *cmpqi_ccno_1, *movsi_xor, *movstricthi_xor,
*movstrictqi_xor, *movdi_xor_rex64, *ashldi3_1_rex64,
*ashldi3_cmp_rex64, *ashldi3_cconly_rex64, ashlsi3, *ashlsi3_1_zext,
*ashlsi3_cmp, *ashlsi3_cconly, *ashlsi3_cmp_zext, *ashlhi3_1_lea,
*ashlhi3_1, *ashlhi3_cmp, *ashlhi3_cconly, *ashlqi3_1_lea,
*ashlqi3_1, *ashlqi3_cmp, *ashlqi3_cconly): Remove equivalent
assembler dialect choice from asm templates.
2007-02-12 Richard Henderson <rth@redhat.com> 2007-02-12 Richard Henderson <rth@redhat.com>
* config/i386/i386.md (fixuns_trunc<SSEMODEF>si_1): New insn. * config/i386/i386.md (fixuns_trunc<SSEMODEF>si_1): New insn.
......
...@@ -584,7 +584,7 @@ ...@@ -584,7 +584,7 @@
(match_operand:DI 1 "const0_operand" "n,n")))] (match_operand:DI 1 "const0_operand" "n,n")))]
"TARGET_64BIT && ix86_match_ccmode (insn, CCNOmode)" "TARGET_64BIT && ix86_match_ccmode (insn, CCNOmode)"
"@ "@
test{q}\t{%0, %0|%0, %0} test{q}\t%0, %0
cmp{q}\t{%1, %0|%0, %1}" cmp{q}\t{%1, %0|%0, %1}"
[(set_attr "type" "test,icmp") [(set_attr "type" "test,icmp")
(set_attr "length_immediate" "0,1") (set_attr "length_immediate" "0,1")
...@@ -623,7 +623,7 @@ ...@@ -623,7 +623,7 @@
(match_operand:SI 1 "const0_operand" "n,n")))] (match_operand:SI 1 "const0_operand" "n,n")))]
"ix86_match_ccmode (insn, CCNOmode)" "ix86_match_ccmode (insn, CCNOmode)"
"@ "@
test{l}\t{%0, %0|%0, %0} test{l}\t%0, %0
cmp{l}\t{%1, %0|%0, %1}" cmp{l}\t{%1, %0|%0, %1}"
[(set_attr "type" "test,icmp") [(set_attr "type" "test,icmp")
(set_attr "length_immediate" "0,1") (set_attr "length_immediate" "0,1")
...@@ -662,7 +662,7 @@ ...@@ -662,7 +662,7 @@
(match_operand:HI 1 "const0_operand" "n,n")))] (match_operand:HI 1 "const0_operand" "n,n")))]
"ix86_match_ccmode (insn, CCNOmode)" "ix86_match_ccmode (insn, CCNOmode)"
"@ "@
test{w}\t{%0, %0|%0, %0} test{w}\t%0, %0
cmp{w}\t{%1, %0|%0, %1}" cmp{w}\t{%1, %0|%0, %1}"
[(set_attr "type" "test,icmp") [(set_attr "type" "test,icmp")
(set_attr "length_immediate" "0,1") (set_attr "length_immediate" "0,1")
...@@ -694,7 +694,7 @@ ...@@ -694,7 +694,7 @@
(match_operand:QI 1 "const0_operand" "n,n")))] (match_operand:QI 1 "const0_operand" "n,n")))]
"ix86_match_ccmode (insn, CCNOmode)" "ix86_match_ccmode (insn, CCNOmode)"
"@ "@
test{b}\t{%0, %0|%0, %0} test{b}\t%0, %0
cmp{b}\t{$0, %0|%0, 0}" cmp{b}\t{$0, %0|%0, 0}"
[(set_attr "type" "test,icmp") [(set_attr "type" "test,icmp")
(set_attr "length_immediate" "0,1") (set_attr "length_immediate" "0,1")
...@@ -1168,7 +1168,7 @@ ...@@ -1168,7 +1168,7 @@
(match_operand:SI 1 "const0_operand" "i")) (match_operand:SI 1 "const0_operand" "i"))
(clobber (reg:CC FLAGS_REG))] (clobber (reg:CC FLAGS_REG))]
"reload_completed && (!TARGET_USE_MOV0 || optimize_size)" "reload_completed && (!TARGET_USE_MOV0 || optimize_size)"
"xor{l}\t{%0, %0|%0, %0}" "xor{l}\t%0, %0"
[(set_attr "type" "alu1") [(set_attr "type" "alu1")
(set_attr "mode" "SI") (set_attr "mode" "SI")
(set_attr "length_immediate" "0")]) (set_attr "length_immediate" "0")])
...@@ -1460,7 +1460,7 @@ ...@@ -1460,7 +1460,7 @@
(clobber (reg:CC FLAGS_REG))] (clobber (reg:CC FLAGS_REG))]
"reload_completed "reload_completed
&& ((!TARGET_USE_MOV0 && !TARGET_PARTIAL_REG_STALL) || optimize_size)" && ((!TARGET_USE_MOV0 && !TARGET_PARTIAL_REG_STALL) || optimize_size)"
"xor{w}\t{%0, %0|%0, %0}" "xor{w}\t%0, %0"
[(set_attr "type" "alu1") [(set_attr "type" "alu1")
(set_attr "mode" "HI") (set_attr "mode" "HI")
(set_attr "length_immediate" "0")]) (set_attr "length_immediate" "0")])
...@@ -1635,7 +1635,7 @@ ...@@ -1635,7 +1635,7 @@
(match_operand:QI 1 "const0_operand" "i")) (match_operand:QI 1 "const0_operand" "i"))
(clobber (reg:CC FLAGS_REG))] (clobber (reg:CC FLAGS_REG))]
"reload_completed && (!TARGET_USE_MOV0 || optimize_size)" "reload_completed && (!TARGET_USE_MOV0 || optimize_size)"
"xor{b}\t{%0, %0|%0, %0}" "xor{b}\t%0, %0"
[(set_attr "type" "alu1") [(set_attr "type" "alu1")
(set_attr "mode" "QI") (set_attr "mode" "QI")
(set_attr "length_immediate" "0")]) (set_attr "length_immediate" "0")])
...@@ -1962,7 +1962,7 @@ ...@@ -1962,7 +1962,7 @@
(clobber (reg:CC FLAGS_REG))] (clobber (reg:CC FLAGS_REG))]
"TARGET_64BIT && (!TARGET_USE_MOV0 || optimize_size) "TARGET_64BIT && (!TARGET_USE_MOV0 || optimize_size)
&& reload_completed" && reload_completed"
"xor{l}\t{%k0, %k0|%k0, %k0}" "xor{l}\t%k0, %k0";
[(set_attr "type" "alu1") [(set_attr "type" "alu1")
(set_attr "mode" "SI") (set_attr "mode" "SI")
(set_attr "length_immediate" "0")]) (set_attr "length_immediate" "0")])
...@@ -10716,7 +10716,7 @@ ...@@ -10716,7 +10716,7 @@
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
gcc_assert (rtx_equal_p (operands[0], operands[1])); gcc_assert (rtx_equal_p (operands[0], operands[1]));
return "add{q}\t{%0, %0|%0, %0}"; return "add{q}\t%0, %0";
case TYPE_LEA: case TYPE_LEA:
gcc_assert (CONST_INT_P (operands[2])); gcc_assert (CONST_INT_P (operands[2]));
...@@ -10783,7 +10783,7 @@ ...@@ -10783,7 +10783,7 @@
{ {
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
return "add{q}\t{%0, %0|%0, %0}"; return "add{q}\t%0, %0";
default: default:
if (REG_P (operands[2])) if (REG_P (operands[2]))
...@@ -10824,7 +10824,7 @@ ...@@ -10824,7 +10824,7 @@
{ {
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
return "add{q}\t{%0, %0|%0, %0}"; return "add{q}\t%0, %0";
default: default:
if (REG_P (operands[2])) if (REG_P (operands[2]))
...@@ -10961,7 +10961,7 @@ ...@@ -10961,7 +10961,7 @@
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
gcc_assert (rtx_equal_p (operands[0], operands[1])); gcc_assert (rtx_equal_p (operands[0], operands[1]));
return "add{l}\t{%0, %0|%0, %0}"; return "add{l}\t%0, %0";
case TYPE_LEA: case TYPE_LEA:
return "#"; return "#";
...@@ -11046,7 +11046,7 @@ ...@@ -11046,7 +11046,7 @@
{ {
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
return "add{l}\t{%k0, %k0|%k0, %k0}"; return "add{l}\t%k0, %k0";
case TYPE_LEA: case TYPE_LEA:
return "#"; return "#";
...@@ -11111,7 +11111,7 @@ ...@@ -11111,7 +11111,7 @@
{ {
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
return "add{l}\t{%0, %0|%0, %0}"; return "add{l}\t%0, %0";
default: default:
if (REG_P (operands[2])) if (REG_P (operands[2]))
...@@ -11152,7 +11152,7 @@ ...@@ -11152,7 +11152,7 @@
{ {
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
return "add{l}\t{%0, %0|%0, %0}"; return "add{l}\t%0, %0";
default: default:
if (REG_P (operands[2])) if (REG_P (operands[2]))
...@@ -11194,7 +11194,7 @@ ...@@ -11194,7 +11194,7 @@
{ {
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
return "add{l}\t{%k0, %k0|%k0, %k0}"; return "add{l}\t%k0, %k0";
default: default:
if (REG_P (operands[2])) if (REG_P (operands[2]))
...@@ -11237,7 +11237,7 @@ ...@@ -11237,7 +11237,7 @@
return "#"; return "#";
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
return "add{w}\t{%0, %0|%0, %0}"; return "add{w}\t%0, %0";
default: default:
if (REG_P (operands[2])) if (REG_P (operands[2]))
...@@ -11273,7 +11273,7 @@ ...@@ -11273,7 +11273,7 @@
{ {
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
return "add{w}\t{%0, %0|%0, %0}"; return "add{w}\t%0, %0";
default: default:
if (REG_P (operands[2])) if (REG_P (operands[2]))
...@@ -11318,7 +11318,7 @@ ...@@ -11318,7 +11318,7 @@
{ {
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
return "add{w}\t{%0, %0|%0, %0}"; return "add{w}\t%0, %0";
default: default:
if (REG_P (operands[2])) if (REG_P (operands[2]))
...@@ -11359,7 +11359,7 @@ ...@@ -11359,7 +11359,7 @@
{ {
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
return "add{w}\t{%0, %0|%0, %0}"; return "add{w}\t%0, %0";
default: default:
if (REG_P (operands[2])) if (REG_P (operands[2]))
...@@ -11406,9 +11406,9 @@ ...@@ -11406,9 +11406,9 @@
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
if (REG_P (operands[1]) && !ANY_QI_REG_P (operands[1])) if (REG_P (operands[1]) && !ANY_QI_REG_P (operands[1]))
return "add{l}\t{%k0, %k0|%k0, %k0}"; return "add{l}\t%k0, %k0";
else else
return "add{b}\t{%0, %0|%0, %0}"; return "add{b}\t%0, %0";
default: default:
if (REG_P (operands[2])) if (REG_P (operands[2]))
...@@ -11460,9 +11460,9 @@ ...@@ -11460,9 +11460,9 @@
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
if (REG_P (operands[1]) && !ANY_QI_REG_P (operands[1])) if (REG_P (operands[1]) && !ANY_QI_REG_P (operands[1]))
return "add{l}\t{%k0, %k0|%k0, %k0}"; return "add{l}\t%k0, %k0";
else else
return "add{b}\t{%0, %0|%0, %0}"; return "add{b}\t%0, %0";
default: default:
if (REG_P (operands[2])) if (REG_P (operands[2]))
...@@ -11522,7 +11522,7 @@ ...@@ -11522,7 +11522,7 @@
{ {
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
return "add{b}\t{%0, %0|%0, %0}"; return "add{b}\t%0, %0";
default: default:
if (REG_P (operands[2])) if (REG_P (operands[2]))
...@@ -11563,7 +11563,7 @@ ...@@ -11563,7 +11563,7 @@
{ {
case TYPE_ALU: case TYPE_ALU:
gcc_assert (operands[2] == const1_rtx); gcc_assert (operands[2] == const1_rtx);
return "add{b}\t{%0, %0|%0, %0}"; return "add{b}\t%0, %0";
default: default:
if (REG_P (operands[2])) if (REG_P (operands[2]))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment