diff options
author | Chris Lattner <sabre@nondot.org> | 2011-03-10 22:11:46 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2011-03-10 22:11:46 +0000 |
commit | ee841f4a4aea0739d9a2e19e42593504ed873a78 (patch) | |
tree | b5b7d3989f50b7704adf4ddf76bd295e318db454 /lib | |
parent | b1aee72ea035253883718d2f895dda17e4052f08 (diff) | |
download | compiler-rt-ee841f4a4aea0739d9a2e19e42593504ed873a78.tar.gz |
don't compile modsi3 into an infinite loop, patch by Matt Johnson!
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@127429 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/modsi3.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/modsi3.c b/lib/modsi3.c index 388418a2a..70d38a6b5 100644 --- a/lib/modsi3.c +++ b/lib/modsi3.c @@ -14,10 +14,12 @@ #include "int_lib.h" +su_int __divsi3(si_int a, si_int b); + /* Returns: a % b */ si_int __modsi3(si_int a, si_int b) { - return a - (a / b) * b; + return a - __divsi3(a, b) * b; } |