Matt Borland
|
140e8d5f44
|
Fix normalizing the significand
|
2023-07-05 15:04:40 +02:00 |
|
Matt Borland
|
5a3a9b3999
|
Increase precision of masking operations
[ci skip]
|
2023-06-30 17:40:12 +02:00 |
|
Matt Borland
|
dc6ce63e01
|
Fix 256-bit high bit calculation
|
2023-06-30 17:27:52 +02:00 |
|
Matt Borland
|
5808c27206
|
Add operator&
|
2023-06-30 17:23:57 +02:00 |
|
Matt Borland
|
fd61faaa51
|
Add conversion operators
|
2023-06-30 17:15:43 +02:00 |
|
Matt Borland
|
0f1970706d
|
Add numeric_limits specialization
|
2023-06-30 17:03:58 +02:00 |
|
Matt Borland
|
cfc9382469
|
Add 64-bit comparisons
|
2023-06-30 16:58:39 +02:00 |
|
Matt Borland
|
bfaf185ac3
|
Add 64-bit compatible operators/ and %
|
2023-06-30 16:20:27 +02:00 |
|
Matt Borland
|
7d18408c0c
|
Fix precision during calculation of z
|
2023-06-30 16:15:19 +02:00 |
|
Matt Borland
|
8243c2d387
|
Add sub operator
|
2023-06-30 16:08:42 +02:00 |
|
Matt Borland
|
112d3ece6b
|
Add operator|
|
2023-06-30 16:00:25 +02:00 |
|
Matt Borland
|
3d26f26c9b
|
Add operators >>= and <<=
|
2023-06-30 15:45:10 +02:00 |
|
Matt Borland
|
7ed86677ab
|
Add 256 bit comp operators
|
2023-06-30 15:03:01 +02:00 |
|
Matt Borland
|
1c9573344c
|
Improve final calculation
|
2023-06-30 14:42:40 +02:00 |
|
Matt Borland
|
38752a1e10
|
Fix calculation of u and p
|
2023-06-30 13:40:58 +02:00 |
|
Matt Borland
|
e0adbd0855
|
Add portable shifting for significant bit
[ci skip]
|
2023-06-29 15:05:32 +02:00 |
|
Matt Borland
|
b26cd77e9c
|
Improve portability of masking operation
|
2023-06-29 14:25:27 +02:00 |
|
Matt Borland
|
b1cbcab893
|
Fix calculation in step 5
|
2023-06-29 13:50:30 +02:00 |
|
Matt Borland
|
3331f04f7b
|
Change max and min powers
|
2023-06-29 13:49:33 +02:00 |
|
Matt Borland
|
a4a3c64f5a
|
Improve handling of out of range values
|
2023-06-29 13:37:12 +02:00 |
|
Matt Borland
|
487b70c554
|
Rework algorithm
|
2023-06-29 11:42:26 +02:00 |
|
Matt Borland
|
fe0726d5c5
|
Add left shift for u256
|
2023-06-28 18:59:58 +02:00 |
|
Matt Borland
|
f1c9a7d866
|
Add diagnostic for use of BOOST_UNLIKELY fallback routine
|
2023-06-27 16:24:46 +02:00 |
|
Matt Borland
|
7522d6306e
|
Add random value test
|
2023-06-26 16:51:55 +02:00 |
|
Matt Borland
|
c68e1ab080
|
Use runtime calculation for fallback path
|
2023-06-26 14:51:09 +02:00 |
|
Matt Borland
|
d2d6bd59d4
|
Add runtime computation of power of 5
|
2023-06-26 14:37:55 +02:00 |
|
Matt Borland
|
29873873ab
|
Add 512 bit multiplication
|
2023-06-26 14:16:08 +02:00 |
|
Matt Borland
|
6bb0df05db
|
Add 256bit operator+
|
2023-06-26 14:15:32 +02:00 |
|
Matt Borland
|
ccedcd6ef5
|
Remove unneeded fallback path
|
2023-06-23 14:25:22 +02:00 |
|
Matt Borland
|
8420f2aed0
|
Add unary operators
|
2023-06-23 13:36:24 +02:00 |
|
Matt Borland
|
95de15ee94
|
Add emulated128 from_chars detail overload
|
2023-06-23 13:29:31 +02:00 |
|
Matt Borland
|
a8542b3ba4
|
Adjust max and minimum powers to compensate for w
|
2023-06-23 11:28:39 +02:00 |
|
Matt Borland
|
9e3e945bd8
|
Use new algo in from_chars
|
2023-06-23 10:41:48 +02:00 |
|
Matt Borland
|
baa8f2071b
|
Rework parser for 128-bit significands
|
2023-06-23 10:36:05 +02:00 |
|
Matt Borland
|
ba5312dcba
|
Change success type to std::errc
|
2023-06-23 10:33:59 +02:00 |
|
Matt Borland
|
66b729a151
|
Rename table to avoid collision
|
2023-06-23 10:33:45 +02:00 |
|
Matt Borland
|
a3f9329d81
|
Fix conversion rank errors
|
2023-06-23 09:47:03 +02:00 |
|
Matt Borland
|
d4ee583a95
|
Fix ambiguous conversion to boost::uint128_type
|
2023-06-22 16:55:47 +02:00 |
|
Matt Borland
|
a2f801ee6b
|
Specialize umul256
|
2023-06-22 16:51:36 +02:00 |
|
Matt Borland
|
3b57902418
|
Add testing of clinger's fast path
|
2023-06-22 16:51:36 +02:00 |
|
Matt Borland
|
459c87b27d
|
First full cut
|
2023-06-22 16:51:36 +02:00 |
|
Matt Borland
|
614d2b6d85
|
Add XOR operator
|
2023-06-22 16:51:36 +02:00 |
|
Matt Borland
|
a9c6f87500
|
Split table into high 128bits and low 128bits
|
2023-06-22 12:00:47 +02:00 |
|
Matt Borland
|
a88770fe60
|
Change minimum exact range
|
2023-06-22 11:48:48 +02:00 |
|
Matt Borland
|
5374cec6fb
|
Handle unrepresentative numbers for __float128
|
2023-06-22 11:18:09 +02:00 |
|
Matt Borland
|
b3d628cc42
|
Rework to allow 1 impl for both 80 and 128 bit types
|
2023-06-22 10:35:10 +02:00 |
|
Matt Borland
|
5d5760e5c7
|
Add u256 struct
|
2023-06-22 10:35:10 +02:00 |
|
Matt Borland
|
5cbd3411f5
|
Calculate powers of 10 with 256-bit significands
|
2023-06-22 10:35:10 +02:00 |
|
Matt Borland
|
6dd9511380
|
Add clz for unsigned 128-bit ints
|
2023-06-22 10:35:10 +02:00 |
|
Matt Borland
|
19b79fc326
|
Add 80-bit fast-path
|
2023-06-22 10:35:10 +02:00 |
|