Commit 1f82f124 by Georg-Johann Lay Committed by Georg-Johann Lay

re PR target/66956 ([avr] Using 32*32=64 multiplicatiion (umulsidi3) for 32=32*32 without MUL.)

	PR target/66956
	* config/avr/avr-dimode.md (<extend_u>mulsidi3_insn)
	(<extend_u>mulsidi3): Don't use if !AVR_HAVE_MUL.

From-SVN: r226046
parent 82f04ea0
2015-07-21 Georg-Johann Lay <avr@gjlay.de>
PR target/66956
* config/avr/avr-dimode.md (<extend_u>mulsidi3_insn)
(<extend_u>mulsidi3): Don't use if !AVR_HAVE_MUL.
2015-07-21 Richard Biener <rguenther@suse.de>
PR tree-optimization/66948
......
......@@ -461,7 +461,8 @@
(match_operand:SI 2 "general_operand" "")
;; Just to mention the iterator
(clobber (any_extend:SI (match_dup 1)))])]
"avr_have_dimode"
"avr_have_dimode
&& AVR_HAVE_MUL"
{
avr_fix_inputs (operands, 1 << 2, regmask (SImode, 22));
emit_move_insn (gen_rtx_REG (SImode, 22), operands[1]);
......@@ -480,7 +481,8 @@
(any_extend:DI (reg:SI 22))))
(clobber (reg:HI REG_X))
(clobber (reg:HI REG_Z))]
"avr_have_dimode"
"avr_have_dimode
&& AVR_HAVE_MUL"
"%~call __<extend_u>mulsidi3"
[(set_attr "adjust_len" "call")
(set_attr "cc" "clobber")])
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