Commit 4547b7ee by Richard Sandiford Committed by Richard Sandiford

constraints.md (T): Rename to...

gcc/
	* config/mips/constraints.md (T): Rename to...
	(Yf): ...this.
	(U): Rename to...
	(Yd): ...this.
	* config/mips/mips.md (*movdi_64bit, *movdi_64bit_mips16)
	(*mov<mode>_internal, *mov<mode>_mips16): Update accordingly.

From-SVN: r196807
parent a0b67fe2
2013-03-20 Richard Sandiford <rdsandiford@googlemail.com>
* config/mips/constraints.md (T): Rename to...
(Yf): ...this.
(U): Rename to...
(Yd): ...this.
* config/mips/mips.md (*movdi_64bit, *movdi_64bit_mips16)
(*mov<mode>_internal, *mov<mode>_mips16): Update accordingly.
2013-03-19 Ian Bolton <ian.bolton@arm.com> 2013-03-19 Ian Bolton <ian.bolton@arm.com>
* config/aarch64/aarch64.md (*sub<mode>3_carryin): New pattern. * config/aarch64/aarch64.md (*sub<mode>3_carryin): New pattern.
......
...@@ -170,22 +170,6 @@ ...@@ -170,22 +170,6 @@
(and (match_operand 0 "call_insn_operand") (and (match_operand 0 "call_insn_operand")
(match_test "CONSTANT_P (op)"))) (match_test "CONSTANT_P (op)")))
(define_constraint "T"
"@internal
A constant @code{move_operand} that cannot be safely loaded into @code{$25}
using @code{la}."
(and (match_operand 0 "move_operand")
(match_test "CONSTANT_P (op)")
(match_test "mips_dangerous_for_la25_p (op)")))
(define_constraint "U"
"@internal
A constant @code{move_operand} that can be safely loaded into @code{$25}
using @code{la}."
(and (match_operand 0 "move_operand")
(match_test "CONSTANT_P (op)")
(not (match_test "mips_dangerous_for_la25_p (op)"))))
(define_memory_constraint "W" (define_memory_constraint "W"
"@internal "@internal
A memory address based on a member of @code{BASE_REG_CLASS}. This is A memory address based on a member of @code{BASE_REG_CLASS}. This is
...@@ -220,6 +204,22 @@ ...@@ -220,6 +204,22 @@
"@internal" "@internal"
(match_operand 0 "qi_mask_operand")) (match_operand 0 "qi_mask_operand"))
(define_constraint "Yd"
"@internal
A constant @code{move_operand} that can be safely loaded into @code{$25}
using @code{la}."
(and (match_operand 0 "move_operand")
(match_test "CONSTANT_P (op)")
(not (match_test "mips_dangerous_for_la25_p (op)"))))
(define_constraint "Yf"
"@internal
A constant @code{move_operand} that cannot be safely loaded into @code{$25}
using @code{la}."
(and (match_operand 0 "move_operand")
(match_test "CONSTANT_P (op)")
(match_test "mips_dangerous_for_la25_p (op)")))
(define_constraint "Yh" (define_constraint "Yh"
"@internal" "@internal"
(match_operand 0 "hi_mask_operand")) (match_operand 0 "hi_mask_operand"))
......
...@@ -4268,7 +4268,7 @@ ...@@ -4268,7 +4268,7 @@
(define_insn "*movdi_64bit" (define_insn "*movdi_64bit"
[(set (match_operand:DI 0 "nonimmediate_operand" "=d,d,e,d,m,*f,*f,*d,*m,*a,*d,*B*C*D,*B*C*D,*d,*m") [(set (match_operand:DI 0 "nonimmediate_operand" "=d,d,e,d,m,*f,*f,*d,*m,*a,*d,*B*C*D,*B*C*D,*d,*m")
(match_operand:DI 1 "move_operand" "d,U,T,m,dJ,*d*J,*m,*f,*f,*J*d,*a,*d,*m,*B*C*D,*B*C*D"))] (match_operand:DI 1 "move_operand" "d,Yd,Yf,m,dJ,*d*J,*m,*f,*f,*J*d,*a,*d,*m,*B*C*D,*B*C*D"))]
"TARGET_64BIT && !TARGET_MIPS16 "TARGET_64BIT && !TARGET_MIPS16
&& (register_operand (operands[0], DImode) && (register_operand (operands[0], DImode)
|| reg_or_0_operand (operands[1], DImode))" || reg_or_0_operand (operands[1], DImode))"
...@@ -4278,7 +4278,7 @@ ...@@ -4278,7 +4278,7 @@
(define_insn "*movdi_64bit_mips16" (define_insn "*movdi_64bit_mips16"
[(set (match_operand:DI 0 "nonimmediate_operand" "=d,y,d,d,d,d,d,d,m,*d") [(set (match_operand:DI 0 "nonimmediate_operand" "=d,y,d,d,d,d,d,d,m,*d")
(match_operand:DI 1 "move_operand" "d,d,y,K,N,U,kf,m,d,*a"))] (match_operand:DI 1 "move_operand" "d,d,y,K,N,Yd,kf,m,d,*a"))]
"TARGET_64BIT && TARGET_MIPS16 "TARGET_64BIT && TARGET_MIPS16
&& (register_operand (operands[0], DImode) && (register_operand (operands[0], DImode)
|| register_operand (operands[1], DImode))" || register_operand (operands[1], DImode))"
...@@ -4346,7 +4346,7 @@ ...@@ -4346,7 +4346,7 @@
(define_insn "*mov<mode>_internal" (define_insn "*mov<mode>_internal"
[(set (match_operand:IMOVE32 0 "nonimmediate_operand" "=d,d,e,d,m,*f,*f,*d,*m,*d,*z,*a,*d,*B*C*D,*B*C*D,*d,*m") [(set (match_operand:IMOVE32 0 "nonimmediate_operand" "=d,d,e,d,m,*f,*f,*d,*m,*d,*z,*a,*d,*B*C*D,*B*C*D,*d,*m")
(match_operand:IMOVE32 1 "move_operand" "d,U,T,m,dJ,*d*J,*m,*f,*f,*z,*d,*J*d,*a,*d,*m,*B*C*D,*B*C*D"))] (match_operand:IMOVE32 1 "move_operand" "d,Yd,Yf,m,dJ,*d*J,*m,*f,*f,*z,*d,*J*d,*a,*d,*m,*B*C*D,*B*C*D"))]
"!TARGET_MIPS16 "!TARGET_MIPS16
&& (register_operand (operands[0], <MODE>mode) && (register_operand (operands[0], <MODE>mode)
|| reg_or_0_operand (operands[1], <MODE>mode))" || reg_or_0_operand (operands[1], <MODE>mode))"
...@@ -4356,7 +4356,7 @@ ...@@ -4356,7 +4356,7 @@
(define_insn "*mov<mode>_mips16" (define_insn "*mov<mode>_mips16"
[(set (match_operand:IMOVE32 0 "nonimmediate_operand" "=d,y,d,d,d,d,d,d,m,*d") [(set (match_operand:IMOVE32 0 "nonimmediate_operand" "=d,y,d,d,d,d,d,d,m,*d")
(match_operand:IMOVE32 1 "move_operand" "d,d,y,K,N,U,kf,m,d,*a"))] (match_operand:IMOVE32 1 "move_operand" "d,d,y,K,N,Yd,kf,m,d,*a"))]
"TARGET_MIPS16 "TARGET_MIPS16
&& (register_operand (operands[0], <MODE>mode) && (register_operand (operands[0], <MODE>mode)
|| register_operand (operands[1], <MODE>mode))" || register_operand (operands[1], <MODE>mode))"
......
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