From 02737e0551793afaf23203103eaee7a6aa4cf471 Mon Sep 17 00:00:00 2001 From: nickc Date: Tue, 19 May 2015 11:42:44 +0000 Subject: [PATCH] PR target/66156 * config/msp430/msp430.md (zero_extendhisi2): Add support for separate source and destination registers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223354 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 8 +++++++- gcc/config/msp430/msp430.md | 8 +++++--- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ed64b470784..2f90beaa2a9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-05-19 Nick Clifton + + PR target/66156 + * config/msp430/msp430.md (zero_extendhisi2): Add support for + separate source and destination registers. + 2015-05-19 Richard Biener PR tree-optimization/66165 @@ -32,7 +38,7 @@ * calls.c: Always define STACK_GROWS_DOWNWARD as 0 or 1. (mem_overlaps_already_clobbered_arg_p): Rewrite ifdef STACK_GROWS_DOWNWARD as normal if. - (expand_call): Likewise. + (expand_call): Likewise. 2015-05-19 Oleg Endo diff --git a/gcc/config/msp430/msp430.md b/gcc/config/msp430/msp430.md index 91742fc38b5..64fdc459b78 100644 --- a/gcc/config/msp430/msp430.md +++ b/gcc/config/msp430/msp430.md @@ -588,10 +588,12 @@ ;; patterns. Doing these manually allows for alternate optimization ;; paths. (define_insn "zero_extendhisi2" - [(set (match_operand:SI 0 "nonimmediate_operand" "=rm") - (zero_extend:SI (match_operand:HI 1 "nonimmediate_operand" "0")))] + [(set (match_operand:SI 0 "nonimmediate_operand" "=rm,r") + (zero_extend:SI (match_operand:HI 1 "nonimmediate_operand" "0,r")))] "msp430x" - "MOV.W\t#0,%H0" + "@ + MOV.W\t#0,%H0 + MOV.W\t%1,%L0 { MOV.W\t#0,%H0" ) (define_insn "zero_extendhisipsi2" -- 2.11.4.GIT