I cannot build StdLib because of the issue raised in "[edk2] StdLib: the
long standing build error"
This compiler issue blocks us to do any StdLib validation...
From: Mcdaniel, Daryl [mailto:[email protected]]
Sent: 06 August 2014 01:55
To: [email protected]
Subject: [edk2] [PATCH] Fix StdLib floating point format regression
Jaben, Erik, or Lee: could you please review this?
Could someone else validate this on Linux and/or ARM?
Thanks.
StdLib: The formatting for double float values, within the gdtoa library, is
improper.
When running Enquire.efi, several errors similar to the following are
produced:
Maximum exponent = 128
Maximum number = 3.40282347e+38
*** WARNING: Possibly bad output from printf above
expected value around 3.40282347e38, bit pattern:
11111111 11111111 01111111 01111111
sscanf gave -inf, bit pattern:
00000000 00000000 10000000 11111111
difference= inf
Overflow doesn't seem to generate a trap
The memory allocation tests will also fail, sometimes leaving all available
memory consumed.
The correct output in the above example is:
Maximum exponent = 128
Maximum number = 3.40282347e+38
Overflow doesn't seem to generate a trap
The root cause is that all operations on values of Long or ULong type,
within the gdtoa library, must be 32-bit operations. A previous change
replaced the Long and ULong definitions with INTN and UINTN, respectively.
While this is correct for a lot of Linux and NetBSD code, it was not correct
for this library.
This fix reverts the definitions of ULong and Long back to 32-bit types.
A descriptive comment has also been added to the U union.
Additional white-space has been added to tidy up the definitions of the
word0 and word1 macros.
Verified with Enquire.efi and the ISO/IEC C Library compliance Validation
Suite.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Daryl McDaniel <[email protected]>
Daryl McDaniel
"Patriotism is supporting your country all the time, and your government
when it deserves it."
-- Mark Twain
------------------------------------------------------------------------------
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls.
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel