re PR target/37466 ([AVR] avr-gcc generating incorrect assembly for expression with the long constant operands)

PR target/37466
	* config/avr/avr.md (movsi_lreg_const peephole2): Add match_dup for
	scratch register after 'set' pattern.

From-SVN: r140321
This commit is contained in:
Anatoly Sokolov 2008-09-12 20:45:34 +04:00 committed by Anatoly Sokolov
parent 0a317111c8
commit 6ff5d1e447
2 changed files with 9 additions and 2 deletions

View file

@ -1,3 +1,9 @@
2008-09-12 Anatoly Sokolov <aesok@post.ru>
PR target/37466
* config/avr/avr.md (movsi_lreg_const peephole2): Add match_dup for
scratch register after 'set' pattern.
2008-09-12 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
* emit-rtl.c (set_reg_attrs_from_value): Fix invalid alignment

View file

@ -391,10 +391,11 @@
(define_peephole2
(define_peephole2 ; movsi_lreg_const
[(match_scratch:QI 2 "d")
(set (match_operand:SI 0 "l_register_operand" "")
(match_operand:SI 1 "immediate_operand" ""))]
(match_operand:SI 1 "immediate_operand" ""))
(match_dup 2)]
"(operands[1] != const0_rtx
&& operands[1] != constm1_rtx)"
[(parallel [(set (match_dup 0) (match_dup 1))