Daniel Lemire
6788b12d65
It is not beneficial to try to get clever with trailing zeroes. (Lead to major performance
...
regression under haswell+ for stage 1).
2019-08-01 14:44:04 -04:00
Daniel Lemire
66ffc1b2d6
Adding a remark.
2019-08-01 11:33:51 -04:00
John Keiser
bf59ba76f5
Fix most warnings on VS2019 ( #241 )
2019-07-31 17:43:45 -04:00
Daniel Lemire
76da659977
Fixing amalgamate under ARM
2019-07-30 22:10:48 +00:00
ioioioio
c2eea8abba
Style uniformization ( #238 )
...
* massive clang-format -style=LLVM
* naming harmonization
* adding commentary about sysinfoapi.h
2019-07-30 17:18:10 -04:00
ioioioio
5f20d3eb34
Merging No duplicate tail (PR#223) ( #232 )
...
* Use __forceinline on Windows for really_inline
https://docs.microsoft.com/en-us/cpp/cpp/inline-functions-cpp?view=vs-2019#inline-__inline-and-__forceinline
* Don't duplicate find_structural_bits for final chunk
* writing coherent macro definitions
2019-07-29 14:11:42 -04:00
Daniel Lemire
3c0f5a3fe4
Improving the documentation.
2019-07-29 14:10:49 -04:00
Daniel Lemire
771e9cd68a
Trying again... ( #235 )
2019-07-29 13:55:13 -04:00
Daniel Lemire
c328afee57
This should fix master.
2019-07-29 13:44:25 -04:00
Daniel Lemire
3dae86223d
Changing intrinsic name.
2019-07-29 13:39:54 -04:00
Daniel Lemire
85e31a5479
This fixes the "big exp" bug, although we need to assess the performance and maybe do some tuning. ( #233 )
2019-07-29 13:28:16 -04:00
Daniel Lemire
a53d95099c
Intrinsic-based flatten ( #234 )
...
* Providing a flatten function with intrinsics (for Visual Studio).
2019-07-29 13:28:02 -04:00
Daniel Lemire
eba02dc1b9
Runtime dispatch
...
* Attempt 1 - fn targeting
GCC won't work with templates with different targets, need to specialize all the way up the call stack.
* Compiles properly with cmake. Does not with the Makefile.
* Compilation works with Makefile
* instruction_set changes to architecture
* some aesthetic changes
* fix amalgation and tests + aesthetic changes
* This now compiles and passes tests under CLANG
* Minor correction.
* Trying to make it work on ARM
* Adding missing namespace
* Missing bracket
* Fixing minor compilation issues.
* Getting parse to use runtime dispatch
* Fixing amalgamation script.
* Making sure that NEON is supported.
* Fixing typo
* Merging https://github.com/lemire/simdjson/pull/229
* Manual merge of
https://github.com/lemire/simdjson/pull/229
by @jkeiser (second part)
* Trying another way.
* Removing the paral.
* Fixing the make file
* Let us make the practice run long enough.
* Resolved the awful slowness.
* Cleaning the README.md
* With runtime dispatching, we should not need flags anymore.
* Changing isa detection file's name + fixing typos.
2019-07-28 22:46:33 -04:00
ioioioio
bcabdfc1ae
Json pointer ( #220 )
...
* json pointer support
* Addition of tests for the json pointer
* Adding a new tool for the JSON Pointer support, and some documentation.
2019-07-26 18:38:10 -04:00
Daniel Lemire
a3beac8d13
This simplifies back the number parsing code... The extra work introduced recently is seemingly unnecessary. ( #218 )
2019-07-18 11:50:26 -04:00
Daniel Lemire
e926b4b3c9
More accurate number parsing ( #217 )
...
* This drastically improves the accuracy (down to to a ULP of 1)
* More comments and documentation.
2019-07-15 22:17:49 -04:00
Daniel Lemire
6c168f046d
Optimizing stage1 ( #216 )
...
* Optimizing stage 1-- avx edition
* Optimizing sse.
* Saving 0.5% in instruction count (NEON).
2019-07-11 20:59:21 -04:00
Daniel Lemire
4b7e87ec7f
Removing garbage. ( #213 )
2019-07-09 21:51:16 -04:00
Daniel Lemire
98b387aac3
Fixing a messed up interleaved #ifdef/namespace. ( #211 )
2019-07-09 19:48:20 -04:00
Daniel Lemire
be956654b2
Minor cleaning = annotating simdjson namespaces and making sure that we don't have headers all over.
2019-07-09 19:24:08 -04:00
Daniel Lemire
977f57fd37
We need to guard the simdutf8check files.
2019-07-09 16:53:28 -04:00
ioioioio
7369339c88
Neon utf8validation ( #207 )
...
* utf8 validation on neon works
2019-07-09 15:14:34 -04:00
Daniel Lemire
3f79385160
Removing some fprintf. ( #209 )
2019-07-09 13:04:44 -04:00
ioioioio
b0d9c074e1
check_utf8_helper has a more meaningful name
2019-07-05 11:09:28 -04:00
Daniel Lemire
fba27ef4b9
I missed a few. Building up VS support.
2019-07-04 17:45:45 -04:00
Daniel Lemire
19cdc09928
Improving support for VS
2019-07-04 17:36:26 -04:00
Daniel Lemire
2b2d93b05f
Various minor tweaks.
2019-07-04 17:19:05 -04:00
ioioioio
f7ea2629e4
Fixing warnings and Microsoft intinsics.
2019-07-04 10:13:40 -04:00
ioioioio
861a6a17e4
SSE implementation integrated
2019-07-03 17:15:21 -04:00
ioioioio
0df6d83f08
deleting useless comments and namespace indications
2019-07-03 10:47:45 -04:00
ioioioio
036f9d5a45
Merge branch 'master' of https://github.com/lemire/simdjson into Multiple_implementation_refactoring_stage2
2019-07-03 10:34:58 -04:00
ioioioio
3f24879157
Stage2 refactored to simplify multiple implementations
2019-07-02 17:12:00 -04:00
ioioioio
9230588ce8
conflicts are solved
2019-07-02 15:21:00 -04:00
Daniel Lemire
aa78b70d69
Introducing a "native" instruction set so that you do not need to do #ifdef to select the right SIMD set all the time.
...
Fixing indentation.
Removing some obsolete WARN_UNUSED.
Fixing a weird warning with optind variable.
2019-07-01 14:18:30 -04:00
Daniel Lemire
1b81e7c928
Correcting ugly indentation.
2019-07-01 11:55:39 -04:00
ioioioio
de08df6a7e
Correction of identation.
2019-06-28 15:33:30 -04:00
ioioioio
6723221a42
Refactoring stage1 to facilitate multiple implementations.
2019-06-28 15:14:42 -04:00
Daniel Lemire
d7f7f1b200
Fixing issue. ( #193 )
2019-06-20 18:49:47 -04:00
Daniel Lemire
3db8c5a0eb
Fixing the issue ( #191 )
2019-06-12 16:32:46 -04:00
Daniel Lemire
b0e6bfa84c
Simpler iteration code ( #190 )
...
* Adding convenience method to simplify code.
* Simplifying the iteration code.
2019-06-12 16:29:24 -04:00
Daniel Lemire
b1e8990654
Moving iterator functions in the header file ( #189 )
...
We want the compiler to inline hot functions in the iterators. Let us leave them in the header file. Please.
2019-06-11 21:09:58 -04:00
Daniel Lemire
14016743be
fixing typo in comment.
2019-06-05 21:29:46 -04:00
Daniel Lemire
59194dcf4d
Issue182: fixed ( #183 )
...
* Verifying issue 182.
* Fixing the corresponding bug.
2019-06-05 18:51:29 -04:00
Daniel Lemire
642132920f
Fixing performance regression caused by helpful code contributions
...
that moved inlineable functions into the source file combined with
helpful compilers which aren't smart enough to do the inlinining in
any case.
2019-05-31 18:16:12 -04:00
Daniel Lemire
f00be30318
Being clearer as to what TAPE_ERROR means.
2019-05-28 19:32:56 -04:00
Daniel Lemire
8526387acb
Improving error codes. ( #176 )
...
* This commit adds new error codes.
2019-05-24 17:28:56 -04:00
Daniel Lemire
bf82288ab1
Preventing implicit conversions for C strings to C++ strings (with evil results). ( #172 )
2019-05-21 13:32:23 -04:00
alexey-milovidov
576914ed54
Remove MMX code ( #170 )
...
#169
2019-05-20 14:41:58 -04:00
Daniel Lemire
dcd0cb8080
Fix for https://github.com/lemire/simdjson/issues/58 ( #168 )
2019-05-19 12:25:27 -04:00
Daniel Lemire
47beaff152
Adding white-listing for memory sanitizer.
2019-05-19 11:18:54 -04:00