Commit 7ef00402 by Richard Sandiford Committed by Richard Sandiford

[riscv] Fix ambiguous .md attribute uses

This patch is part of a series that fixes ambiguous attribute
uses in .md files, i.e. cases in which attributes didn't use
<ITER:ATTR> to specify an iterator, and in which <ATTR> could
have different values depending on the iterator chosen.

No behavioural change -- produces the same code as before.

2019-07-08  Richard Sandiford  <richard.sandiford@arm.com>

gcc/
	* config/riscv/pic.md (*local_pic_load_s<mode>)
	(*local_pic_load_u<mode>): Explicitly specify the mode iterator
	referenced by <mode>, giving...
	(*local_pic_load_s<SUBX:mode>, *local_pic_load_u<SUBX:mode>): ...these.
	* config/riscv/riscv.md (*sge<u>_<X:mode><GPR:mode>)
	(*slt<u>_<X:mode><GPR:mode>, *sle<u>_<X:mode><GPR:mode>): Explicitly
	use <X:MODE> for the mode attribute.

From-SVN: r273191
parent 0b194960
2019-07-08 Richard Sandiford <richard.sandiford@arm.com>
* config/riscv/pic.md (*local_pic_load_s<mode>)
(*local_pic_load_u<mode>): Explicitly specify the mode iterator
referenced by <mode>, giving...
(*local_pic_load_s<SUBX:mode>, *local_pic_load_u<SUBX:mode>): ...these.
* config/riscv/riscv.md (*sge<u>_<X:mode><GPR:mode>)
(*slt<u>_<X:mode><GPR:mode>, *sle<u>_<X:mode><GPR:mode>): Explicitly
use <X:MODE> for the mode attribute.
2019-07-07 Jeff Law <law@redhat.com>
PR tree-optimization/91090
......
......@@ -29,14 +29,14 @@
"<default_load>\t%0,%1"
[(set (attr "length") (const_int 8))])
(define_insn "*local_pic_load_s<mode>"
(define_insn "*local_pic_load_s<SUBX:mode>"
[(set (match_operand:SUPERQI 0 "register_operand" "=r")
(sign_extend:SUPERQI (mem:SUBX (match_operand 1 "absolute_symbolic_operand" ""))))]
"USE_LOAD_ADDRESS_MACRO (operands[1])"
"<SUBX:load>\t%0,%1"
[(set (attr "length") (const_int 8))])
(define_insn "*local_pic_load_u<mode>"
(define_insn "*local_pic_load_u<SUBX:mode>"
[(set (match_operand:SUPERQI 0 "register_operand" "=r")
(zero_extend:SUPERQI (mem:SUBX (match_operand 1 "absolute_symbolic_operand" ""))))]
"USE_LOAD_ADDRESS_MACRO (operands[1])"
......
......@@ -2054,7 +2054,7 @@
""
"slt%i2<u>\t%0,zero,%1"
[(set_attr "type" "slt")
(set_attr "mode" "<MODE>")])
(set_attr "mode" "<X:MODE>")])
(define_insn "*slt<u>_<X:mode><GPR:mode>"
[(set (match_operand:GPR 0 "register_operand" "= r")
......@@ -2063,7 +2063,7 @@
""
"slt%i2<u>\t%0,%1,%2"
[(set_attr "type" "slt")
(set_attr "mode" "<MODE>")])
(set_attr "mode" "<X:MODE>")])
(define_insn "*sle<u>_<X:mode><GPR:mode>"
[(set (match_operand:GPR 0 "register_operand" "=r")
......@@ -2075,7 +2075,7 @@
return "slt%i2<u>\t%0,%1,%2";
}
[(set_attr "type" "slt")
(set_attr "mode" "<MODE>")])
(set_attr "mode" "<X: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