diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/expr.c | 7 |
2 files changed, 11 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7a495fa..f1dbb9e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2003-06-11 J"orn Rennecke <joern.rennecke@superh.com> + + * expr.c (convert_move): Handle moves between two CONCATs. + 2003-06-11 Kazu Hirata <kazu@cs.umass.edu> * config/h8300/h8300.h (RETURN_IN_MEMORY): Accept DImode if @@ -606,6 +606,13 @@ convert_move (to, from, unsignedp) return; } + if (GET_CODE (to) == CONCAT && GET_CODE (from) == CONCAT) + { + convert_move (XEXP (to, 0), XEXP (from, 0), unsignedp); + convert_move (XEXP (to, 1), XEXP (from, 1), unsignedp); + return; + } + if (to_real != from_real) abort (); |