Commit 0a21c1d2 by Bob Wilson Committed by Bob Wilson

lib1funcs.asm (__umodsi3, __modsi3): Rearrange so that DIV0 exception can fall…

lib1funcs.asm (__umodsi3, __modsi3): Rearrange so that DIV0 exception can fall through to a normal return.

	* config/xtensa/lib1funcs.asm (__umodsi3, __modsi3): Rearrange so that
	DIV0 exception can fall through to a normal return.

From-SVN: r124303
parent 143569a8
2007-04-30 Bob Wilson <bob.wilson@acm.org>
* config/xtensa/lib1funcs.asm (__umodsi3, __modsi3): Rearrange so that
DIV0 exception can fall through to a normal return.
2007-04-30 Alexandre Oliva <aoliva@redhat.com> 2007-04-30 Alexandre Oliva <aoliva@redhat.com>
PR middle-end/22156 PR middle-end/22156
......
...@@ -654,16 +654,17 @@ __umodsi3: ...@@ -654,16 +654,17 @@ __umodsi3:
leaf_return leaf_return
.Lle_one: .Lle_one:
beqz a3, .Lerror bnez a3, .Lreturn0
movi a2, 0
leaf_return
.Lerror:
/* Divide by zero: Use an illegal instruction to force an exception. /* Divide by zero: Use an illegal instruction to force an exception.
The subsequent "DIV0" string can be recognized by the exception The subsequent "DIV0" string can be recognized by the exception
handler to identify the real cause of the exception. */ handler to identify the real cause of the exception. */
ill ill
.ascii "DIV0" .ascii "DIV0"
.Lreturn0:
movi a2, 0
leaf_return
.size __umodsi3,.-__umodsi3 .size __umodsi3,.-__umodsi3
#endif /* L_umodsi3 */ #endif /* L_umodsi3 */
...@@ -712,16 +713,17 @@ __modsi3: ...@@ -712,16 +713,17 @@ __modsi3:
leaf_return leaf_return
.Lle_one: .Lle_one:
beqz a3, .Lerror bnez a3, .Lreturn0
movi a2, 0
leaf_return
.Lerror:
/* Divide by zero: Use an illegal instruction to force an exception. /* Divide by zero: Use an illegal instruction to force an exception.
The subsequent "DIV0" string can be recognized by the exception The subsequent "DIV0" string can be recognized by the exception
handler to identify the real cause of the exception. */ handler to identify the real cause of the exception. */
ill ill
.ascii "DIV0" .ascii "DIV0"
.Lreturn0:
movi a2, 0
leaf_return
.size __modsi3,.-__modsi3 .size __modsi3,.-__modsi3
#endif /* L_modsi3 */ #endif /* L_modsi3 */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment