aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorMichael Hayes <m.hayes@gcc.gnu.org>1999-01-15 15:29:38 +0000
committerMichael Hayes <m.hayes@gcc.gnu.org>1999-01-15 15:29:38 +0000
commitcce88d8642ab0293eb36de9594c46666241440fd (patch)
treee366a58d6c462cf79e5ce9c014b1f1d888a32544 /gcc
parent98dcbc07f5136e439c5fb254fe94ed32e959c23c (diff)
downloadgcc-cce88d8642ab0293eb36de9594c46666241440fd.zip
gcc-cce88d8642ab0293eb36de9594c46666241440fd.tar.gz
gcc-cce88d8642ab0293eb36de9594c46666241440fd.tar.bz2
libgcc.S (___divhi3, ___modhi3): Fix long long divide and modulo sign problem.
* config/c4x/libgcc.S (___divhi3, ___modhi3): Fix long long divide and modulo sign problem. From-SVN: r24681
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/c4x/libgcc.S8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/config/c4x/libgcc.S b/gcc/config/c4x/libgcc.S
index fb79cf80..b8e9fba 100644
--- a/gcc/config/c4x/libgcc.S
+++ b/gcc/config/c4x/libgcc.S
@@ -958,7 +958,7 @@ ___divhi3:
ldi *-ar2(4),r0
ldi *-ar2(3),r1
bge div1
- negi ir0
+ not ir0
negi r0
negb r1
div1:
@@ -967,7 +967,7 @@ div1:
ldi *-ar2(2),r0
ldi *-ar2(1),r1
bge div2
- negi ir0
+ not ir0
negi r0
negb r1
div2:
@@ -995,7 +995,7 @@ ___modhi3:
ldi *-ar2(4),r0
ldi *-ar2(3),r1
bge mod1
- negi ir0
+ not ir0
negi r0
negb r1
mod1:
@@ -1004,7 +1004,7 @@ mod1:
ldi *-ar2(2),r0
ldi *-ar2(1),r1
bge mod2
- negi ir0
+ not ir0
negi r0
negb r1
mod2: