diff options
author | wilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4> | 1994-11-19 23:56:33 +0000 |
---|---|---|
committer | wilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4> | 1994-11-19 23:56:33 +0000 |
commit | 15608d72fae947322fe2f9011c848ed5eccdd552 (patch) | |
tree | 128b09625a0daa533bcd02552e32911ee1b893a4 | |
parent | e0ccde53f4595e5aeddcc033e11bc63324d0120c (diff) | |
download | ppe42-gcc-15608d72fae947322fe2f9011c848ed5eccdd552.tar.gz ppe42-gcc-15608d72fae947322fe2f9011c848ed5eccdd552.zip |
(addsf3): After using swap for 16 bit rotate,
branch back only if count still greater than 0.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@8529 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/config/m68k/lb1sf68.asm | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/config/m68k/lb1sf68.asm b/gcc/config/m68k/lb1sf68.asm index 6e9124d165e..5e53b064536 100644 --- a/gcc/config/m68k/lb1sf68.asm +++ b/gcc/config/m68k/lb1sf68.asm @@ -2089,7 +2089,8 @@ Laddsf$2: movew d3,d2 swap d2 subw #16,d7 - bra 2b + bne 2b | if still more bits, go back to normal case + bra Laddsf$3 5: exg d6,d7 | exchange the exponents subl d6,d7 | keep the largest exponent @@ -2112,7 +2113,8 @@ Laddsf$2: movew d1,d0 swap d0 subw #16,d7 - bra 6b + bne 6b | if still more bits, go back to normal case + | otherwise we fall through | Now we have a in d0-d1, b in d2-d3, and the largest exponent in d6 (the | signs are stored in a0 and a1). |