diff options
author | H. Peter Anvin <hpa@zytor.com> | 2007-10-22 16:53:48 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2007-10-22 16:53:48 -0700 |
commit | bea0bbb62c9947421bc0fddcd2b58a40435e2181 (patch) | |
tree | 21623213cc08b04a9eb771b2a46bb1e057a1948c /test/floatx.asm | |
parent | 3b2ad1bc370653e90d6b2fa9cfc587a7aea405f3 (diff) | |
download | nasm-bea0bbb62c9947421bc0fddcd2b58a40435e2181.tar.gz |
More consistent handling of radix letters
Allow any radix letter from the set [bydtoqhx] to be used either
"Intel-style" (0...x) or "C-style" (0x...). In Intel style, the
leading 0 remains optional as long as the first digit is in the range
0-9.
As a consequence, allow the prefix "0h" for hexadecimal floating
point.
Diffstat (limited to 'test/floatx.asm')
-rw-r--r-- | test/floatx.asm | 171 |
1 files changed, 171 insertions, 0 deletions
diff --git a/test/floatx.asm b/test/floatx.asm index 22841e6b..127f3535 100644 --- a/test/floatx.asm +++ b/test/floatx.asm @@ -179,6 +179,177 @@ ; 16-bit dw 1.0 + dw 0h1.0 + dw 2.0 + dw 0h2.0 + dw 0h1.0p+1 + dw 0h1.0p-1 + dw 0h0.0 + dw 0h1.23456789 + dw 0h0.123456789 + dw 0h0.0000123456789 + dw 0h1.23456789p10 + dw 0h1.23456789p+10 + dw 0h1.23456789p-10 + dw 0h0.123456789p10 + dw 0h0.123456789p+10 + dw 0h0.123456789abcdef0123456789abcdef012345p-10 + dw 0h0.0000123456789 + dw 0h0.0000123456789p+10 + dw 0h0.0000123456789p-10 + dw 0h1.0p-25 ; Underflow + dw 0h1.0p-24 ; Smallest denorm + dw 0h1.ffffffffffffffffffffffffffffp-16 ; Rounds to denorm + dw 0h1.0p-15 ; Denorm + dw 0h1.ffffffffffffffffffffffffffffp-15 ; Rounds to normal + dw 0h1.0p-14 ; Smallest non-denorm + dw 0h1.0p+15 ; Biggest possible exponent + dw 0h1.ffffffffffffffffffffffffffffp+15 ; Rounds to infinity + dw Inf ; Infinity + dw NaN + +; 32-bit + dd 1.0 + dd 0h1.0 + dd 2.0 + dd 0h2.0 + dd 0h1.0p+1 + dd 0h1.0p-1 + dd 0h0.0 + dd 0h1.23456789 + dd 0h0.123456789 + dd 0h0.0000123456789 + dd 0h1.23456789p10 + dd 0h1.23456789p+10 + dd 0h1.23456789p-10 + dd 0h0.123456789p10 + dd 0h0.123456789p+10 + dd 0h0.123456789abcdef0123456789abcdef012345p-10 + dd 0h0.0000123456789 + dd 0h0.0000123456789p+10 + dd 0h0.0000123456789p-10 + dd 0h123456789.0 + dd 0h0000123456789.0 + dd 0h123456789.0p+0 + dd 0h123456789.0p+64 + dd 0h1.0p-150 ; Underflow + dd 0h1.0p-149 ; Smallest denorm + dd 0h1.ffffffffffffffffffffffffffffp-128 ; Rounds to denorm + dd 0h1.0p-127 ; Denorm + dd 0h1.ffffffffffffffffffffffffffffp-127 ; Rounds to normal + dd 0h1.0p-126 ; Smallest non-denorm + dd 0h1.0p+127 ; Biggest possible exponent + dd 0h1.ffffffffffffffffffffffffffffp+127 ; Rounds to infinity + dd Inf ; Infinity + dd NaN + +; 64-bit + dq 1.0 + dq 0h1.0 + dq 2.0 + dq 0h2.0 + dq 0h1.0p+1 + dq 0h1.0p-1 + dq 0h0.0 + dq 0h1.23456789 + dq 0h0.123456789 + dq 0h0.0000123456789 + dq 0h1.23456789p10 + dq 0h1.23456789p+10 + dq 0h1.23456789p-10 + dq 0h0.123456789p10 + dq 0h0.123456789p+10 + dq 0h0.123456789abcdef0123456789abcdef012345p-10 + dq 0h0.0000123456789 + dq 0h0.0000123456789p+10 + dq 0h0.0000123456789p-10 + dq 0h123456789.0 + dq 0h0000123456789.0 + dq 0h123456789.0p+0 + dq 0h123456789.0p+300 + dq 0h1.0p-1075 ; Underflow + dq 0h1.0p-1074 ; Smallest denorm + dq 0h1.ffffffffffffffffffffffffffffp-1024 ; Rounds to denorm + dq 0h1.0p-1023 ; Denorm + dq 0h1.ffffffffffffffffffffffffffffp-1023 ; Rounds to normal + dq 0h1.0p-1022 ; Smallest non-denorm + dq 0h1.0p+1023 ; Biggest possible exponent + dq 0h1.ffffffffffffffffffffffffffffp+1023 ; Rounds to infinity + dq Inf ; Infinity + dq NaN + +; 80-bit + dt 1.0 + dt 0h1.0 + dt 2.0 + dt 0h2.0 + dt 0h1.0p+1 + dt 0h1.0p-1 + dt 0h0.0 + dt 0h1.23456789 + dt 0h0.123456789 + dt 0h0.0000123456789 + dt 0h1.23456789p10 + dt 0h1.23456789p+10 + dt 0h1.23456789p-10 + dt 0h0.123456789p10 + dt 0h0.123456789p+10 + dt 0h0.123456789abcdef0123456789abcdef012345p-10 + dt 0h0.0000123456789 + dt 0h0.0000123456789p+10 + dt 0h0.0000123456789p-10 + dt 0h123456789.0 + dt 0h0000123456789.0 + dt 0h123456789.0p+0 + dt 0h123456789.0p+1024 + dt 0h1.0p-16446 ; Underflow + dt 0h1.0p-16445 ; Smallest denorm + dt 0h1.ffffffffffffffffffffffffffffp-16384 ; Rounds to denorm + dt 0h1.0p-16383 ; Denorm + dt 0h1.ffffffffffffffffffffffffffffp-16383 ; Rounds to normal + dt 0h1.0p-16382 ; Smallest non-denorm + dt 0h1.0p+16383 ; Biggest possible exponent + dt 0h1.ffffffffffffffffffffffffffffp+16383 ; Rounds to infinity + dt Inf ; Infinity + dt NaN + +; 128-bit + do 1.0 + do 0h1.0 + do 2.0 + do 0h2.0 + do 0h1.0p+1 + do 0h1.0p-1 + do 0h0.0 + do 0h1.23456789 + do 0h0.123456789 + do 0h0.0000123456789 + do 0h1.23456789p10 + do 0h1.23456789p+10 + do 0h1.23456789p-10 + do 0h0.123456789p10 + do 0h0.123456789p+10 + do 0h0.123456789abcdef0123456789abcdef012345p-10 + do 0h0.0000123456789 + do 0h0.0000123456789p+10 + do 0h0.0000123456789p-10 + do 0h123456789.0 + do 0h0000123456789.0 + do 0h123456789.0p+0 + do 0h123456789.0p+1024 + do 0h1.0p-16495 ; Underflow + do 0h1.0p-16494 ; Smallest denorm + do 0h1.ffffffffffffffffffffffffffffffffp-16384 ; Rounds to denorm + do 0h1.0p-16383 ; Denorm + do 0h1.ffffffffffffffffffffffffffffffffp-16383 ; Rounds to normal + do 0h1.0p-16382 ; Smallest non-denorm + do 0h1.0p+16383 ; Biggest possible exponent + do 0h1.ffffffffffffffffffffffffffffffffp+16383 ; Rounds to infinity + do Inf ; Infinity + do NaN + +; 16-bit + dw 1.0 dw $1.0 dw 2.0 dw $2.0 |