Mantis Bugtracker
  

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0003564 [Squeak] Kernel minor always 05-06-06 21:58 07-22-06 21:38
Reporter nicolas cellier View Status public  
Assigned To MarcusDenker
Priority normal Resolution fixed  
Status closed   Product Version
Summary 0003564: LargeInteger>>asFloat does not honour IEEE rounding mode
Description
self assert: 16r1FFFFFFFFFFFF0801 asFloat ~= 16r1FFFFFFFFFFFF0800 asFloat.

first number should be rounded up to 16r1FFFFFFFFFFFF1000.0
second number should be rounded down to 16r1FFFFFFFFFFFF0000.0

Current implementation use only first 64 bits, but even with more bits, it would do several partial rounding operations which is not equivalent to a single global rounding.
Additional Information ArbitraryPrecisionAsFloat (in SqueakMap and squeaksource) implement correct IEEE rounding.
I took the patch from it.
Attached Files  Kernel-Number-Integer-asFloat-Patch.1.cs [^] (2,253 bytes) 05-06-06 21:59
 Kernel-Number-Integer-asFloat-Test.1.cs [^] (647 bytes) 05-06-06 22:08
 Kernel-Number-Integer-asFloat-Patch.2.cs [^] (1,849 bytes) 07-08-06 01:10

- Relationships

- Notes
(0005608 - 75 - 75 - 75 - 75 - 75 - 75)
nicolas cellier
07-08-06 01:12

Patch.2.cs is better: it will avoid creation of second method asFloatSimply
 
(0006130 - 15 - 15 - 15 - 15 - 15 - 15)
MarcusDenker
07-21-06 09:10

already in 7045
 

- Issue History
Date Modified Username Field Change
05-06-06 21:58 nicolas cellier New Issue
05-06-06 21:59 nicolas cellier File Added: Kernel-Number-Integer-asFloat-Patch.1.cs
05-06-06 22:08 nicolas cellier File Added: Kernel-Number-Integer-asFloat-Test.1.cs
07-04-06 15:40 lewis Issue Monitored: lewis
07-08-06 01:10 nicolas cellier File Added: Kernel-Number-Integer-asFloat-Patch.2.cs
07-08-06 01:12 nicolas cellier Note Added: 0005608
07-21-06 09:10 MarcusDenker Status new => closed
07-21-06 09:10 MarcusDenker Note Added: 0006130
07-21-06 09:10 MarcusDenker Resolution open => fixed
07-21-06 09:10 MarcusDenker Fixed in Version  => 3.9
07-22-06 12:30 MarcusDenker Status closed => resolved
07-22-06 12:30 MarcusDenker Assigned To  => MarcusDenker
07-22-06 21:38 MarcusDenker Status resolved => closed


Mantis 1.0.8[^]
Copyright © 2000 - 2007 Mantis Group
51 total queries executed.
34 unique queries executed.
Powered by Mantis Bugtracker