Commit 99eeb64c by Oleg Endo

re PR target/81821 ([RX] xchg_mem<mode> uses wrong memory operand size)

gcc/
	PR target/81821
	* config/rx/rx.md (BW): New mode attribute.
	(sync_lock_test_and_setsi): Add mode suffix to insn output.

From-SVN: r256536
parent b0bd3e52
2018-01-11 Oleg Endo <olegendo@gcc.gnu.org>
PR target/81821
* config/rx/rx.md (BW): New mode attribute.
(sync_lock_test_and_setsi): Add mode suffix to insn output.
2018-01-11 Richard Biener <rguenther@suse.de> 2018-01-11 Richard Biener <rguenther@suse.de>
PR tree-optimization/83435 PR tree-optimization/83435
......
...@@ -2169,6 +2169,7 @@ ...@@ -2169,6 +2169,7 @@
[(plus "add") (minus "sub") (ior "ior") (xor "xor") (and "and")]) [(plus "add") (minus "sub") (ior "ior") (xor "xor") (and "and")])
(define_mode_iterator QIHI [QI HI]) (define_mode_iterator QIHI [QI HI])
(define_mode_attr BW [(QI "B") (HI "W")])
(define_insn "sync_lock_test_and_setsi" (define_insn "sync_lock_test_and_setsi"
[(set (match_operand:SI 0 "register_operand" "=r,r") [(set (match_operand:SI 0 "register_operand" "=r,r")
...@@ -2210,7 +2211,7 @@ ...@@ -2210,7 +2211,7 @@
(set (match_dup 1) (set (match_dup 1)
(match_operand:QIHI 2 "register_operand" "0"))] (match_operand:QIHI 2 "register_operand" "0"))]
"" ""
"xchg\t%1, %0" "xchg\t%1.<BW>, %0"
[(set_attr "length" "6") [(set_attr "length" "6")
(set_attr "timings" "22")] (set_attr "timings" "22")]
) )
......
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