msp430.md (split): Don't allow subregs when splitting SImode adds.
* config/msp430/msp430.md (split): Don't allow subregs when splitting SImode adds. (andneghi): Fix subtraction logic. * config/msp430/predicates.md (msp430_nonsubreg_or_imm_operand): New. From-SVN: r210655
This commit is contained in:
parent
cf288ed3b8
commit
9c5f620306
|
@ -1,3 +1,10 @@
|
|||
2014-05-20 DJ Delorie <dj@redhat.com>
|
||||
|
||||
* config/msp430/msp430.md (split): Don't allow subregs when
|
||||
splitting SImode adds.
|
||||
(andneghi): Fix subtraction logic.
|
||||
* config/msp430/predicates.md (msp430_nonsubreg_or_imm_operand): New.
|
||||
|
||||
2014-05-20 Jan Hubicka <hubicka@ucw.cz>
|
||||
|
||||
* tree.h (DECL_ONE_ONLY): Return true only for externally visible
|
||||
|
|
|
@ -371,8 +371,8 @@
|
|||
; halves.
|
||||
(define_split
|
||||
[(set (match_operand:SI 0 "msp430_nonsubreg_operand")
|
||||
(plus:SI (match_operand:SI 1 "nonimmediate_operand")
|
||||
(match_operand:SI 2 "general_operand")))
|
||||
(plus:SI (match_operand:SI 1 "msp430_nonsubreg_operand")
|
||||
(match_operand:SI 2 "msp430_nonsubreg_or_imm_operand")))
|
||||
]
|
||||
""
|
||||
[(parallel [(set (match_operand:HI 3 "nonimmediate_operand" "=&rm")
|
||||
|
@ -1326,9 +1326,9 @@
|
|||
""
|
||||
"*
|
||||
if (REGNO (operands[0]) != REGNO (operands[1]))
|
||||
return \"MOV.W\t%1, %0 { SUB.W\t#0, %0 { AND.W\t%2, %0\";
|
||||
return \"MOV.W\t%1, %0 { INV.W\t%0 { INC.W\t%0 { AND.W\t%2, %0\";
|
||||
else
|
||||
return \"SUB.W\t#0, %0 { AND.W\t%2, %0\";
|
||||
return \"INV.W\t%0 { INC.W\t%0 { AND.W\t%2, %0\";
|
||||
"
|
||||
)
|
||||
|
||||
|
|
|
@ -73,6 +73,10 @@
|
|||
(define_predicate "msp430_nonsubreg_operand"
|
||||
(match_code "reg,mem"))
|
||||
|
||||
(define_predicate "msp430_nonsubreg_or_imm_operand"
|
||||
(ior (match_operand 0 "msp430_nonsubreg_operand")
|
||||
(match_operand 0 "immediate_operand")))
|
||||
|
||||
; TRUE for constants which are bit positions for zero_extract
|
||||
(define_predicate "msp430_bitpos"
|
||||
(and (match_code "const_int")
|
||||
|
|
Loading…
Reference in New Issue