Commit Graph

69 Commits

Author SHA1 Message Date
Matt Borland
13dd7d1026 Workaround for GCC11 2023-02-06 08:54:48 -08:00
Matt Borland
7934db5eb1 Ignore GCC10+ memcpy overflow warning 2023-02-03 10:56:49 -08:00
Matt Borland
a27c11a3d4 Fix sign comparison 2023-02-02 12:09:17 -08:00
Matt Borland
aa13c62ce6 Fix 8 and 16 bit overflows 2023-02-02 11:52:02 -08:00
Matt Borland
373954a4a8 Revert decompose32 mask change 2023-02-02 08:54:49 -08:00
Matt Borland
fb69333f62 Sign is accounted for by shifting first 2023-02-01 16:09:48 -08:00
Matt Borland
a8c8cb73f1 Simplify is_constant_evaluated_macro 2023-02-01 12:18:00 -08:00
Matt Borland
7970a99197 Remove no-op macro 2023-02-01 12:15:47 -08:00
Matt Borland
f5f0af78e6 Add more comparisons against STL 2023-01-31 11:21:42 -08:00
Matt Borland
12147b861f Replace 57-bit mask with 32-bit mask
Co-authored-by: Junekey Jeon <jk_jeon@kaist.ac.kr>
2023-01-31 10:53:22 -08:00
Matt Borland
af3b943333 Fix location of returned pointer 2023-01-31 09:56:28 -08:00
Matt Borland
ff1ce048a3 Changes for constexpr context 2023-01-31 09:20:31 -08:00
Matt Borland
70472c73d5 Add test for generic impl 2023-01-31 08:15:16 -08:00
Matt Borland
60d819d5b9 Add casting to our memcpy 2023-01-27 11:18:48 -08:00
Matt Borland
f1fac0a7ae Replace std::memcpy with our memcpy 2023-01-27 10:52:53 -08:00
Matt Borland
fb87dfff38 Fix MSVC C4146 2023-01-27 10:10:25 -08:00
Matt Borland
1b37d1cb3d Add default initializer to buffer 2023-01-27 10:06:22 -08:00
Matt Borland
2e202cecdb FIx missing header for CHAR_BIT 2023-01-27 09:52:48 -08:00
Matt Borland
cce04082b9 Add consteval memcpy 2023-01-27 09:51:26 -08:00
Matt Borland
9bc76d8034 Fix buffer offset and get rid of memcmp 2023-01-27 09:21:08 -08:00
Matt Borland
3784c1b81b Put back memcpy in base10 2023-01-27 09:12:43 -08:00
Matt Borland
e00712a6a3 Fix handling of all other bases 2023-01-27 09:07:52 -08:00
Matt Borland
0ac231b27a Fix base10 overflow handling 2023-01-27 08:52:59 -08:00
Matt Borland
c06ae72fb9 Use c-style array instead of std::array
[ci skip]
2023-01-26 12:03:47 -08:00
Matt Borland
b1e5a06caf Fix type
[ci skip]
2023-01-26 11:46:50 -08:00
Matt Borland
d7d278bcd5 Impl for all other bases
[ci skip]
2023-01-26 11:46:32 -08:00
Matt Borland
157729dad4 Add character lookup table 2023-01-26 09:32:19 -08:00
Matt Borland
c7b2177145 Add framework for is_constant_evaluated 2023-01-26 09:21:33 -08:00
Matt Borland
4f46f6a31d Avoid overflow by only using 9 digits per uint32_t 2023-01-25 13:00:54 -08:00
Matt Borland
d372d6ab0a Remove unused variables 2023-01-20 12:02:13 -08:00
Matt Borland
4765f06652 Fixes to 64 bit testing 2023-01-20 11:23:10 -08:00
Matt Borland
52feaddc9d 64bit impl framework 2023-01-20 10:41:15 -08:00
Matt Borland
fe0260c407 Add functions to pack and unpack 64 and 128 bit integers 2023-01-20 09:07:52 -08:00
Matt Borland
302e9f5f09 Workaround for warning C4146 2023-01-20 08:48:35 -08:00
Matt Borland
6b41bb6e69 Add support for negative numbers 2023-01-19 13:33:00 -08:00
Matt Borland
37e301d310 Fix for warning C4244 2023-01-19 12:17:07 -08:00
Matt Borland
69d09f5d6b Refactor training 2023-01-19 11:50:30 -08:00
Matt Borland
9664ba5172 Disable warning C4127 2023-01-19 10:47:44 -08:00
Matt Borland
e55057214a Move buffer and add float stub to keep MSVC happy 2023-01-19 10:24:10 -08:00
Matt Borland
9b350bcdcb Simplify 32-bit impl and improve logic 2023-01-18 13:34:33 -08:00
Matt Borland
0e5fa4c26b Replace std::array::operator[] since it is not constexpr in C++11 2023-01-18 12:04:59 -08:00
Matt Borland
e8db8b0bf4 Fix init of power_of_10 array 2023-01-18 11:47:07 -08:00
Matt Borland
dea69677eb Add binary search trees for 32, 64 and 128 bit types 2023-01-18 11:36:04 -08:00
Matt Borland
807c3ea028 Add framework to decompose larger values 2023-01-18 10:08:18 -08:00
Matt Borland
88d522553f More efficiently get rid of leading zeros 2023-01-18 07:41:43 -08:00
Matt Borland
f5258519d6 Replace memcpy and fix warning 2023-01-17 12:58:03 -08:00
Matt Borland
fa957d7fe8 Add 32-bit base10 decomposition 2023-01-17 12:48:50 -08:00
Matt Borland
e0df5fb202 Add missing header
[ci skip]
2023-01-17 09:17:19 -08:00
Matt Borland
e699167d48 to_chars integer parser 2023-01-17 09:13:43 -08:00
Matt Borland
231840d36d Replace cassert with boost.assert 2023-01-16 08:45:03 -08:00