Commit eae48192 by Andreas Krebbel Committed by Andreas Krebbel

S/390: Get rid of Y constraint in tabort.

This removes the Y constraint from the tabort pattern definition.  In
this case it is easier without using substitutions.

gcc/ChangeLog:

2016-03-01  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

	* config/s390/s390.md ("*tabort_1"): Change predicate to
	nonmemory_operand.  Add a second alternative to cover
	register as well as const int operands.
	("*tabort_1_plus"): New pattern definition.

From-SVN: r233846
parent a9fcf821
2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
* config/s390/s390.md ("*tabort_1"): Change predicate to
nonmemory_operand. Add a second alternative to cover
register as well as const int operands.
("*tabort_1_plus"): New pattern definition.
2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
* config/s390/s390.md ("*ashrdi3_cc_31")
("*ashrdi3_cconly_31""*ashrdi3_cc_31_and")
("*ashrdi3_cconly_31_and", "*ashrdi3_31_and", "*ashrdi3_31"):
......
......@@ -10698,7 +10698,7 @@
; Transaction abort
(define_expand "tabort"
[(unspec_volatile [(match_operand:SI 0 "shift_count_or_setmem_operand" "")]
[(unspec_volatile [(match_operand:SI 0 "nonmemory_operand" "")]
UNSPECV_TABORT)]
"TARGET_HTM && operands != NULL"
{
......@@ -10713,12 +10713,21 @@
})
(define_insn "*tabort_1"
[(unspec_volatile [(match_operand:SI 0 "shift_count_or_setmem_operand" "Y")]
[(unspec_volatile [(match_operand:SI 0 "nonmemory_operand" "aJ")]
UNSPECV_TABORT)]
"TARGET_HTM && operands != NULL"
"tabort\t%Y0"
[(set_attr "op_type" "S")])
(define_insn "*tabort_1_plus"
[(unspec_volatile [(plus:SI (match_operand:SI 0 "register_operand" "a")
(match_operand:SI 1 "const_int_operand" "J"))]
UNSPECV_TABORT)]
"TARGET_HTM && operands != NULL
&& CONST_OK_FOR_CONSTRAINT_P (INTVAL (operands[1]), 'J', \"J\")"
"tabort\t%1(%0)"
[(set_attr "op_type" "S")])
; Transaction extract nesting depth
(define_insn "etnd"
......
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