diff options
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/m32c/m32c-lib1.S | 9 |
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 29fa23fa3c4..31adfc7401d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2006-08-16 Naveen.H.S <naveenh@kpitcummins.com> + + * config/m32c/m32c_lib1.S (__mulsi3): Use only registers for dest. + 2006-08-16 Joseph S. Myers <joseph@codesourcery.com> PR c/27697 diff --git a/gcc/config/m32c/m32c-lib1.S b/gcc/config/m32c/m32c-lib1.S index d45f1fad550..ee02411126b 100644 --- a/gcc/config/m32c/m32c-lib1.S +++ b/gcc/config/m32c/m32c-lib1.S @@ -152,14 +152,15 @@ __m32c_eh_return: ___mulsi3: enter #0 push.w r2 - mov.w SAL,mem0 - mov.w SAH,mem2 - mulu.w SBL,mem0 /* writes to r2r0 */ + mov.w SAL,r0 + mulu.w SBL,r0 /* writes to r2r0 */ + mov.w r0,mem0 + mov.w r2,mem2 mov.w SAL,r0 mulu.w SBH,r0 /* writes to r2r0 */ add.w r0,mem2 mov.w SAH,r0 - mulu.w SBL,r0 + mulu.w SBL,r0 /* writes to r2r0 */ add.w r0,mem2 pop.w r2 exitd |