lb1sf68.S (Laddsf$nf): Fix sign bit handling in path to Lf$finfty.
2018-05-23 Kalamatee <kalamatee@gmail.com> * config/m68k/lb1sf68.S (Laddsf$nf): Fix sign bit handling in path to Lf$finfty. From-SVN: r260626
This commit is contained in:
parent
622075181d
commit
54fd159056
2 changed files with 7 additions and 2 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2018-05-23 Kalamatee <kalamatee@gmail.com>
|
||||||
|
|
||||||
|
* config/m68k/lb1sf68.S (Laddsf$nf): Fix sign bit handling in
|
||||||
|
path to Lf$finfty.
|
||||||
|
|
||||||
2018-05-18 Kito Cheng <kito.cheng@gmail.com>
|
2018-05-18 Kito Cheng <kito.cheng@gmail.com>
|
||||||
Monk Chiang <sh.chiang04@gmail.com>
|
Monk Chiang <sh.chiang04@gmail.com>
|
||||||
Jim Wilson <jimw@sifive.com>
|
Jim Wilson <jimw@sifive.com>
|
||||||
|
|
|
@ -3111,6 +3111,8 @@ Laddsf$nf:
|
||||||
movel a6@(12),d1 | did some processing already)
|
movel a6@(12),d1 | did some processing already)
|
||||||
movel IMM (INFINITY),d4 | useful constant (INFINITY)
|
movel IMM (INFINITY),d4 | useful constant (INFINITY)
|
||||||
movel d0,d2 | save sign bits
|
movel d0,d2 | save sign bits
|
||||||
|
movel d0,d7 | into d7 as well as we may need the sign
|
||||||
|
| bit before jumping to LfSinfty
|
||||||
movel d1,d3
|
movel d1,d3
|
||||||
bclr IMM (31),d0 | clear sign bits
|
bclr IMM (31),d0 | clear sign bits
|
||||||
bclr IMM (31),d1
|
bclr IMM (31),d1
|
||||||
|
@ -3125,7 +3127,6 @@ Laddsf$nf:
|
||||||
| are adding or subtracting them.
|
| are adding or subtracting them.
|
||||||
eorl d3,d2 | to check sign bits
|
eorl d3,d2 | to check sign bits
|
||||||
bmi 1f
|
bmi 1f
|
||||||
movel d0,d7
|
|
||||||
andl IMM (0x80000000),d7 | get (common) sign bit
|
andl IMM (0x80000000),d7 | get (common) sign bit
|
||||||
bra Lf$infty
|
bra Lf$infty
|
||||||
1:
|
1:
|
||||||
|
@ -3135,7 +3136,6 @@ Laddsf$nf:
|
||||||
cmpl d1,d0 | are both infinite?
|
cmpl d1,d0 | are both infinite?
|
||||||
beq Lf$inop | if so return NaN
|
beq Lf$inop | if so return NaN
|
||||||
|
|
||||||
movel d0,d7
|
|
||||||
andl IMM (0x80000000),d7 | get a's sign bit '
|
andl IMM (0x80000000),d7 | get a's sign bit '
|
||||||
cmpl d4,d0 | test now for infinity
|
cmpl d4,d0 | test now for infinity
|
||||||
beq Lf$infty | if a is INFINITY return with this sign
|
beq Lf$infty | if a is INFINITY return with this sign
|
||||||
|
|
Loading…
Add table
Reference in a new issue