Daniel Lemire
f667d4965d
This is a bug fix: our prev function was buggy. ( #291 )
2019-08-23 18:59:43 -04:00
John Keiser
585f84a734
Move architecture-specific headers to src/ ( #287 )
...
* Use namespaces instead of templates for stage1 impls
* Move stage1 implementation into the src/ directory
* Move architecture-specific code to src/
2019-08-21 07:59:49 -04:00
Daniel Lemire
a1bff85263
Documenting the limits of move_to_key with respect to Unicode Equivalence.
2019-08-20 17:10:30 -04:00
John Keiser
94673bcdf2
Use methods for utf8 checker
2019-08-16 14:15:37 -07:00
John Keiser
aa15917c9d
Use methods instead of functions for simd_input
2019-08-16 14:07:30 -07:00
Vitaly Baranov
6a2728e730
No allocation in the iterator's constructor ( #276 )
...
* Get rid of dynamic allocation in ParsedJson::Iterator.
* Implement copy assignment operator for ParsedJson::Iterator.
* ParsedJson::Iterator is now a template class.
2019-08-15 19:42:15 -04:00
John Keiser
0042d9b406
Move UTF8 checking functions into their own file
2019-08-14 10:34:11 -07:00
John Keiser
237b8865f5
Correct header #define
2019-08-13 17:44:26 -07:00
John Keiser
8f01cece3a
Move simd_input and associated functions to their own header
2019-08-13 17:44:06 -07:00
Daniel Lemire
2ca574d9e6
Removing windows.h ( #273 )
2019-08-12 19:40:21 -04:00
Daniel Lemire
3fb82502f7
This gets rid of the silly ALLOW_SAME_PAGE_BUFFER_OVERRUN ( #268 )
2019-08-09 17:36:32 -04:00
Vitaly Baranov
9dfab9d9a4
Disable UBSan error in trailing_zeroes(). ( #266 )
...
https://github.com/lemire/simdjson/issues/265
2019-08-09 14:37:22 -04:00
John Keiser
f3c3afd4cd
Use direct call to templated flatten_bits instead of if ( #262 )
...
* Use direct call to templated flatten_bits instead of if
* Put really_inline back on find_structural_bits_64
2019-08-08 15:09:17 -04:00
John Keiser
b1beacd1f3
Make headers show up in Header Files in VS2019 ( #257 )
2019-08-05 16:36:52 -04:00
John Keiser
d9a0e2b8f4
Fix Intellisense errors opening .h files on VS2019 ( #253 )
2019-08-04 19:57:55 -04:00
ioioioio
2a24567370
Replace macros by include files ( #236 ) ( #248 )
...
* stage1 compiles without macros
* cleaning
* amalgation is weird but works
* macros are removed from stringparsing
* amalgation fixed
* Huge macros are removed.
* clang-format
2019-08-04 15:58:35 -04:00
Daniel Lemire
bd9628df93
Producing a new release
2019-08-04 15:43:47 -04:00
Daniel Lemire
99a153d9e8
Hiding the pointer away... ( #252 )
...
* Hiding the runtime dispatch pointer in a source file so it is not an exported symbol
* Disabling hard failure on style check.
* Fixes https://github.com/lemire/simdjson/issues/250
2019-08-04 15:41:00 -04:00
Daniel Lemire
2a240e3fe2
Fixing style violation.
2019-08-01 16:38:51 -04:00
Daniel Lemire
ee66fb1c60
Version 0.2.0.
2019-08-01 16:23:30 -04:00
Daniel Lemire
038b18edf1
Adding style scripts. ( #243 )
...
* Adding style scripts.
2019-08-01 16:09:26 -04:00
ioioioio
968117c940
preventing clang-format to move sysinfoapi.h ( #244 )
2019-08-01 15:06:50 -04:00
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