diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 12c61b79200..6466bad462c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2006-11-17 Bob Wilson + + * config/xtensa/lib1funcs.asm (__umulsidi3): Restore a0 on exit. + 2006-11-17 Zdenek Dvorak * tree-vrp.c (execute_vrp): Do not update current_loops. diff --git a/gcc/config/xtensa/lib1funcs.asm b/gcc/config/xtensa/lib1funcs.asm index 69d51a7551c..9b9efa87be7 100644 --- a/gcc/config/xtensa/lib1funcs.asm +++ b/gcc/config/xtensa/lib1funcs.asm @@ -323,6 +323,10 @@ __umulsidi3: #endif /* !MUL32_HIGH */ +#if !XCHAL_HAVE_MUL16 && !XCHAL_HAVE_MUL32 && !XCHAL_HAVE_MAC16 + /* Restore the original return address. */ + l32i a0, sp, 0 +#endif leaf_return #if !XCHAL_HAVE_MUL16 && !XCHAL_HAVE_MUL32 && !XCHAL_HAVE_MAC16