From: bwilson Date: Mon, 30 Apr 2007 17:59:10 +0000 (+0000) Subject: * config/xtensa/lib1funcs.asm (__umodsi3, __modsi3): Rearrange so that X-Git-Tag: upstream/4.9.2~48905 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2751c7d48f654df48925752bdbe179096104ca91;p=platform%2Fupstream%2Flinaro-gcc.git * config/xtensa/lib1funcs.asm (__umodsi3, __modsi3): Rearrange so that DIV0 exception can fall through to a normal return. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@124303 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 906135b..386d898 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2007-04-30 Bob Wilson + + * config/xtensa/lib1funcs.asm (__umodsi3, __modsi3): Rearrange so that + DIV0 exception can fall through to a normal return. + 2007-04-30 Alexandre Oliva PR middle-end/22156 diff --git a/gcc/config/xtensa/lib1funcs.asm b/gcc/config/xtensa/lib1funcs.asm index 6db2a7d..7cb994d 100644 --- a/gcc/config/xtensa/lib1funcs.asm +++ b/gcc/config/xtensa/lib1funcs.asm @@ -654,16 +654,17 @@ __umodsi3: leaf_return .Lle_one: - beqz a3, .Lerror - movi a2, 0 - leaf_return + bnez a3, .Lreturn0 -.Lerror: /* Divide by zero: Use an illegal instruction to force an exception. The subsequent "DIV0" string can be recognized by the exception handler to identify the real cause of the exception. */ ill .ascii "DIV0" + +.Lreturn0: + movi a2, 0 + leaf_return .size __umodsi3,.-__umodsi3 #endif /* L_umodsi3 */ @@ -712,16 +713,17 @@ __modsi3: leaf_return .Lle_one: - beqz a3, .Lerror - movi a2, 0 - leaf_return + bnez a3, .Lreturn0 -.Lerror: /* Divide by zero: Use an illegal instruction to force an exception. The subsequent "DIV0" string can be recognized by the exception handler to identify the real cause of the exception. */ ill .ascii "DIV0" + +.Lreturn0: + movi a2, 0 + leaf_return .size __modsi3,.-__modsi3 #endif /* L_modsi3 */