Jacek Sieka
5c5e01cef0
fix compile-time hash, port to unittest2 ( #145 )
...
* enable compile-time testing for most of the test suite (some parts
that were skipping things turned out to be bugs)
* port to unittest2 and use its recent compile-time testing support
2024-11-25 14:17:39 +01:00
Jacek Sieka
7c81df9adc
fix modmul 256-bit perf ( #156 )
...
Not sure about other lengths, but this 100x's 256-bit `modmul` on the
given trivial benchmark and fixes abysmally slow EVM performance
```
Modmul (stint): 856300 ms
```
```
Modmul (stint): 8850 ms
```
2024-07-09 15:35:08 +02:00
Jacek Sieka
9a3348bd44
hash limbs instead of bytes ( #155 )
...
avoids silly byte hasher
2024-06-17 15:40:09 +02:00
Eugene Kabanov
9d2b382c5d
Fix GCC-14 [-Wincompatible-pointer-types] issue. ( #153 )
2024-05-23 06:31:45 +02:00
andri lim
379901ad36
Fix pointer deref issue on Macos and Nim >= 2.0 ( #152 )
2024-05-20 23:39:33 +07:00
tersec
3c238df6cd
fix noInit to noinit; use evergreen GitHub Actions image versions ( #151 )
2024-03-13 04:45:06 +00:00
Eugene Kabanov
e639ba700c
Make decimal string parser raise ValueError instead of RangeDefect. ( #148 )
...
* Fix decimal parser helper to raise ValueError instead of RangeDefect.
* Get some fixes in place.
2024-02-27 02:36:02 +02:00
Jacek Sieka
711cda4456
add native nim mode ( #142 )
...
* add native nim mode
* don't try to link wasm-c code
2023-09-25 16:49:04 +02:00
jangko
bfa299f3ae
Fix compilation failure for arch other than amd64/i386
2023-09-12 19:51:30 +07:00
jangko
ea02d7db68
more custom literal tests and overflow check
2023-07-07 17:57:14 +07:00
jangko
e374311f70
add custom literal feature
2023-07-07 13:22:22 +07:00
jangko
3e9d64c896
fix skipPrefixes bug
2023-07-07 12:56:30 +07:00
jangko
8c1e43f001
fix shlAddMod SIGFPE bug
2023-06-22 16:43:31 +07:00
jangko
19e0ac6268
export toBytesBE, toBytesLE
2023-06-21 15:25:29 +07:00
jangko
3ef8d0027a
add fromDecimal to io
2023-06-20 21:39:37 +07:00
jangko
e99bc7ff89
add signed int modular arithmetic and tests
2023-06-20 21:38:02 +07:00
jangko
867739d2ca
more endians2 implementation and tests
2023-06-20 19:45:49 +07:00
jangko
80ccea2643
fix conversion raises, inlining, and min/max test
2023-06-20 18:27:17 +07:00
jangko
6480939dcd
conversion between big integers
2023-06-20 14:59:26 +07:00
jangko
4a3f300bd6
fix stuint truncate on 32bit platform
2023-06-19 18:27:49 +07:00
jangko
140afc31ab
fix stuint truncate
2023-06-19 17:20:54 +07:00
jangko
13a9d31f9a
rename imp to impl
2023-06-15 14:31:59 +07:00
jangko
747978e1e5
fix misleading comments
2023-06-15 14:08:27 +07:00
jangko
6a79fcb25b
remove unused files
2023-06-15 14:07:40 +07:00
jangko
c6422a9439
fix signed integer truncate for 32 bit platform
2023-06-15 13:10:58 +07:00
jangko
41bfed6bb7
io test
2023-06-14 22:26:44 +07:00
jangko
6371b66030
nim devel emit codegen workaround
2023-06-14 18:13:07 +07:00
jangko
21eeee72df
nimvm bug workaround
2023-06-14 17:41:02 +07:00
jangko
ddcb2111e4
fix bugs found by nim-devel
2023-06-14 13:53:42 +07:00
jangko
1ce276db1e
bug 92 workaround
2023-06-14 13:22:52 +07:00
jangko
c748d9afb7
fix style type
2023-06-14 09:52:56 +07:00
jangko
79ad349fb5
cleanup tests
2023-06-14 09:41:01 +07:00
jangko
7b7db2a73a
signed int exp
2023-06-14 08:31:28 +07:00
jangko
1657d841e7
cleanup some code
2023-06-14 08:06:44 +07:00
jangko
8ea95078f4
signed int addsub
2023-06-14 07:38:23 +07:00
jangko
f2959e5135
signed int bitwise
2023-06-13 22:17:43 +07:00
jangko
612ecb3d9b
signed int comparison
2023-06-13 21:53:19 +07:00
jangko
f07f574944
fix comparison
2023-06-13 20:39:22 +07:00
jangko
fb797d225e
signed int initialization
2023-06-13 19:51:49 +07:00
jangko
76b2baad6f
signed int signedness
2023-06-13 19:09:43 +07:00
jangko
8c5a96463c
nimvm workaround for primitives
2023-06-13 08:35:35 +07:00
jangko
7ce536423a
disable dot borrow temporary
2023-06-13 08:15:04 +07:00
jangko
e5c352fde2
fix stuint constructor
2023-06-13 08:13:39 +07:00
jangko
0dc6afe9d4
let the tests compileable and run
2023-06-12 21:07:15 +07:00
jangko
63a32129c8
rebase and try to make it works with clients
2023-06-12 20:26:36 +07:00
Mamy Ratsimbazafy
bff69b3f98
Add randomized testing vs GMP
2023-06-12 17:13:35 +07:00
Mamy Ratsimbazafy
27e9c9e441
Add randomized testing, harden against edge cases
2023-06-12 17:12:43 +07:00
Mamy Ratsimbazafy
4660dfe4a4
Use littleEndian for limb-endianness: bigEndian arch are very rare, untestable in CI, a pain to maintain and an intermediate serialization step instead of casting is cheap
2023-06-12 17:11:14 +07:00
Mamy Ratsimbazafy
7efa2483e4
Division/modulo implemented - pass property-based testing vs ttmath
2023-06-12 17:11:13 +07:00
Mamy Ratsimbazafy
53d2fd14f3
uint division - compile and pass the single limb tests
2023-06-12 17:11:13 +07:00