Commit Graph

205 Commits

Author SHA1 Message Date
5613303d52 Add automata to recognize utf8 in strings 2025-06-21 15:56:15 -04:00
d1523acf94 Improve scan codegen 2025-06-20 15:11:29 -04:00
2be21c5453 Avoid pushing N_NUMBER on the stack if possible 2025-06-20 14:33:37 -04:00
4f24a44cb2 Improve scan 2025-06-20 10:02:37 -04:00
976f64b7d3 Try out dfa for numbers 2025-06-19 16:13:46 -04:00
e1ba8e9fa8 Fix non-x86 build 2025-06-05 17:42:34 -04:00
0c2af46a79 Start bench at a stride of 128 2025-06-05 15:45:44 -04:00
35c3e14586 Remove -mavx 2025-06-05 15:38:24 -04:00
d60777002f Function multiversioning for n_string2 2025-06-05 15:36:12 -04:00
f7871915e9 Update simd.h 2025-06-05 15:34:10 -04:00
b050361823 Sort Parser3 members by size and add consts 2025-06-05 10:48:34 -04:00
2017784c97 Try to keep buf and bufEnd in registers 2025-06-05 10:43:38 -04:00
57bdc79ee7 Run tests from source dir to find test.json 2025-06-05 10:37:03 -04:00
d6d5e210e4 Update simd.h 2025-06-04 16:49:26 -04:00
b28251c8b1 Add to corpus 2025-06-04 14:19:53 -04:00
3e2f830d0b Use new simd library for scanning string literals 2025-06-04 13:49:19 -04:00
b5f41768a7 Scan for non-decimal in n_digits2 2025-06-02 12:47:34 -04:00
67634bb977 Remove unused constant 2025-05-30 17:10:42 -04:00
b0dd034be8 Try loading dylib's too 2025-05-27 11:51:55 -04:00
7a3eb61868 Annotate all useTmp paths as unlikely 2025-05-27 10:37:09 -04:00
0027c9ff79 data -> userdata 2025-05-27 10:33:46 -04:00
f6cd807da3 Remove on_{begin,end}_{string,number}
And add `done` arg to data callback
2025-05-25 21:01:37 -04:00
f92b33eec3 Fix gcc, add -fno-jump-tables back
It's even faster for some reason
2025-05-25 16:59:43 -04:00
30129277e7 Fix some warnings 2025-05-25 16:29:22 -04:00
5971ad2ef0 Fix segfault issue
I think we need to keep a reference to the ctypes voidp object that we
pass as userdata alive
2025-05-24 18:20:36 -04:00
f2fdcfdf24 Add linker.map 2025-05-24 18:20:36 -04:00
d687a2671a Add valgrind headers 2025-05-24 18:20:36 -04:00
aa2494c478 Add seemingly working python bindings 2025-05-24 18:20:36 -04:00
4240894318 Bring in a bunch of cmake settings from conflict-set 2025-05-24 18:20:36 -04:00
1217ded8a7 Convert everything to c api 2025-05-24 18:20:36 -04:00
f7ad84a79a Start building library 2025-05-24 18:20:36 -04:00
f519d3ce29 Add to corpus 2025-05-24 18:20:35 -04:00
b2735330f9 Add PRESERVE_NONE to continuations 2025-05-24 18:20:35 -04:00
ab23eda489 Fix gcc arm build 2025-05-24 16:04:22 -04:00
bf3fbd638c arm64 implementation for scanning for non-normal chars in strings 2025-05-24 13:34:59 -04:00
493e6aec31 Benchmark different strides 2025-05-22 19:24:14 -04:00
41c8fcc30c Fix gcc build 2025-05-22 16:32:45 -04:00
18748483b2 Add to corpus 2025-05-22 15:51:51 -04:00
ef19dae3f6 Simd string2 2025-05-22 15:36:46 -04:00
ad17336997 Remove alignas(16) from tables
I don't think it makes a difference
2025-05-22 14:54:32 -04:00
23929289cb Annotate all reject code paths as unlikely 2025-05-22 14:51:55 -04:00
3682bea38a Add to corpus 2025-05-22 13:17:38 -04:00
d68c9a8ccc Pass test if one parser says overflow and the other says reject
Maybe in the future we could rerun with a bigger stack?
2025-05-22 12:57:12 -04:00
c939bc3baa Remove most usages of T_END_NUMBER 2025-05-22 12:37:08 -04:00
76e03e635b Skip past false,true,null directly if buffered 2025-05-22 12:23:09 -04:00
af07cdc8be Skip past N_INTEGER 2025-05-22 12:15:50 -04:00
3afa3b6e9a Skip N_OBJECT and N_ARRAY 2025-05-22 11:55:27 -04:00
3635f5cf18 Skip over n_string when you know it matches 2025-05-22 11:45:57 -04:00
56f6ab6566 Fuse whitespace into string 2025-05-22 11:42:05 -04:00
297d6b48f7 Fuse whitespace into object2, object3, array2, array3, colon 2025-05-22 11:38:42 -04:00