0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-27 09:12:36 +01:00
Commit graph

295 commits

Author SHA1 Message Date
Jason Volk
742c29500f ircd::json: Replace simd::lateral used at inefficient lane types. 2020-09-28 00:27:30 -07:00
Jason Volk
1276717be3 ircd::json: Add branch condition for number value to eliminate calls. 2020-09-27 15:44:53 -07:00
Jason Volk
30e5a0110c ircd::spirit: Add template id to custom_parser; add three specializations per unit for now. 2020-09-27 14:57:07 -07:00
Jason Volk
305aa691e7 ircd::json: Improve return count; add condition for noisy dwarning. 2020-09-18 22:09:56 -07:00
Jason Volk
d229f32a46 ircd::json: Fix double indirect call. 2020-09-18 18:47:15 -07:00
Jason Volk
1668bee2e5 ircd::json: Logical revert of a4766e583; reduces to minor cleanup/simplify. 2020-09-15 16:53:45 -07:00
Jason Volk
a4766e5834 ircd::json: Remove redundant type determination from value constructions. 2020-09-13 10:29:26 -07:00
Jason Volk
84564aee5f ircd::simd: Add a streaming transform boilerplate template for the common pattern.
ircd::simd: Add a streaming consumer boilerplate template for the common pattern.

ircd::json: Simplify w/ stream templates; update counter lane convention.
2020-09-09 04:47:27 -07:00
Jason Volk
023e1341a1 ircd::json: Only call _post_append() under nominal unwind. 2020-09-07 17:01:45 -07:00
Jason Volk
82308ee4b3 ircd::simd: Consolidate sum_ templates into lateral template template. 2020-09-05 14:34:48 -07:00
Jason Volk
dd610a0d6b ircd::json: Add faster backward branch without bitcounting in inner loop. 2020-09-03 21:14:43 -07:00
Jason Volk
68ffcea1fc ircd::json: Additional document comments; minor cleanup. 2020-09-03 21:14:43 -07:00
Jason Volk
f9e1b90b51 ircd::json: Add simd string component. 2020-08-31 16:21:19 -07:00
Jason Volk
1422b68666 ircd::spirit: Fix buffering strategy; fix align directive. 2020-08-28 05:18:57 -07:00
Jason Volk
77f858d27d ircd::simd: Use explicit instantiations w/ optimal conversions for lzcnt/tzcnt generation. 2020-08-23 02:32:54 -07:00
Jason Volk
99acb1bc15 ircd::json: Suppress uninitialized warning from recursive grammar reference. 2020-08-21 06:20:26 -07:00
Jason Volk
4376f4e353 ircd::json: Eliminate explicit load/store intrinsics; cleanup typedefs. 2020-08-07 02:14:27 -07:00
Jason Volk
9f09eb6581 ircd::json::value: Inline trivial indirections. 2020-08-05 17:27:54 -07:00
Jason Volk
ae2bc801f9 ircd::json: Optimize alternative order. 2020-07-24 22:37:30 -07:00
Jason Volk
1cf03d8608 ircd::json: Simplify trailing loop related. 2020-07-22 05:00:36 -07:00
Jason Volk
92324197b3 ircd::json: Remove unnecessary reassignment; restricted reference. 2020-07-22 03:16:14 -07:00
Jason Volk
898f7980f6 ircd::json: Optimize string character grammar. 2020-07-21 00:38:08 -07:00
Jason Volk
479c3f62ef ircd::json: Minor reorg. 2020-07-17 18:59:51 -07:00
Jason Volk
3a70943b94 ircd::simd: Split bit manipulations suites to headers; renames. 2020-07-17 16:46:43 -07:00
Jason Volk
ba5a97821c ircd::json: Reduce string serialized/stringify branch complex and improve layout. 2020-07-15 21:22:54 -07:00
Jason Volk
6ec9b2a783 ircd: Specify explicit noexcept for gcc-10 issue. 2020-07-11 17:57:33 -07:00
Jason Volk
2b930eb4b2 ircd::json: Disable profiling counters by default. 2020-07-11 17:57:33 -07:00
Jason Volk
72a61a7426 ircd::utf: Adjust vector types/syntaxes for GCC.
ircd::json: Adjust vector types for GCC.
2020-07-10 02:41:02 -07:00
Jason Volk
f8e32477f8 ircd::json: Fix incorrect masking from surrogate pair. 2020-07-06 17:31:04 -07:00
Jason Volk
b80b06135b ircd::json: Minor reorg. 2020-07-06 17:31:04 -07:00
Jason Volk
a021b496cd ircd::json: Use condition around __builtin_assume(). 2020-07-05 05:47:23 -07:00
Jason Volk
900f820a8c ircd::json: Use unicode surrogate for null escape stringify. 2020-07-05 03:54:03 -07:00
Jason Volk
687ce6efb2 ircd::json: Fix iteration increments; counting. 2020-07-05 03:54:03 -07:00
Jason Volk
255b23ed7d ircd::json: Eliminate maskmove; use matching temporal store. 2020-07-03 20:11:02 -07:00
Jason Volk
6a93a121f3 ircd::json: Optimize serialized(value) string case. 2020-07-03 18:19:13 -07:00
Jason Volk
0e6a6ea0b1 ircd::json: Replace char generator w/ new vectorized string streaming. (fixes #158) (fixes #159) 2020-07-03 16:35:28 -07:00
Jason Volk
3490eb89e8 ircd::json: Consistent quoted inputs to the printer. (related ea1c0dcae7) 2020-06-24 11:45:15 -07:00
Jason Volk
d456a42cdd ircd::json: Add stats items counting calls and cycles on input and output. 2020-06-24 11:00:11 -07:00
Jason Volk
c99ae124f4 ircd::json: Relax attributes on grammar templates. 2020-06-24 09:27:23 -07:00
Jason Volk
ff1d2c938c ircd::json: Simplify printer invocation template overloading. 2020-06-24 08:57:50 -07:00
Jason Volk
57e70512d0 ircd::json: Minor cleanup; simplify conditionals. 2020-06-23 00:55:16 -07:00
Jason Volk
ea1c0dcae7 ircd::json: Pass all string input through the grammar. 2020-06-23 00:54:48 -07:00
Jason Volk
e26b046940 ircd::json: Optimize character dfa w/ de-aliased output ref. 2020-06-20 05:41:14 -07:00
Jason Volk
63a7554c4a ircd::json: Ensure output is sorted on object::member array stringify; hoist tls buffers. 2020-06-20 05:41:14 -07:00
Jason Volk
59829f1a59 ircd::json: Relax number_frac limit more digits. 2020-06-17 23:22:39 -07:00
Jason Volk
43c6727492 ircd::json: Replace number rule w/ non-casting grammar. 2020-06-17 22:08:20 -07:00
Jason Volk
5ede78afe8 ircd::json: Memoize query for type. 2020-06-11 17:09:56 -07:00
Jason Volk
39e777e88f ircd::json: Add non-parsing number grammar for type derivation for now. 2020-06-11 17:09:55 -07:00
Jason Volk
24cb29d64c ircd::json: Relax expensive type query in serialized() suite. 2020-06-11 09:49:33 -07:00
Jason Volk
b59337eb78 ircd::spirit: Consolidate entry to spirit through wrapper templates.
ircd::spirit: More aggressive inlining of interface templates; symbol visibility
2020-06-11 03:51:49 -07:00