Jason Volk
818241db86
ircd::simd: Add vpgather achieving template.
2020-09-20 06:41:38 -07:00
Jason Volk
4a59ea5b4a
ircd::simd: Add template typedef for lane type.
2020-09-20 05:15:50 -07:00
Jason Volk
5294a8e78b
ircd::portable: Remove todo (would prevent macro-op fusion).
2020-09-19 07:47:21 -07:00
Jason Volk
a738cc8444
ircd::spirit: Split boost includes for separate pragma clang system_header.
2020-09-18 23:40:34 -07:00
Jason Volk
3fef6b154d
ircd::http: Fix buffer alignment.
2020-09-18 18:47:15 -07:00
Jason Volk
8bda8cbdc6
ircd: Ⓜ️ :event::prev: Add constant value for spec max.
2020-09-17 10:49:41 -07:00
Jason Volk
9165975953
ircd: Ⓜ️ :dbs: Supersede index query tool with parallel impl.
2020-09-17 10:49:41 -07:00
Jason Volk
099b6d8301
ircd: Ⓜ️ Add parallel event::idx query to interface.
2020-09-17 10:49:41 -07:00
Jason Volk
70860ecaa2
ircd::db: Add parallel read suite to interface.
2020-09-17 10:49:41 -07:00
Jason Volk
66368d1cdc
ircd::db: Add typedefs for parallel query argument templates.
2020-09-17 10:49:41 -07:00
Jason Volk
a9c37908ec
ircd: Add template option to skip runtime conditional in byte_view conversion.
2020-09-17 10:49:41 -07:00
Jason Volk
0675a621f1
ircd: Ⓜ️ :homeserver: Add specific option to toggle initial backfill jobs after startup.
2020-09-16 23:00:58 -07:00
Jason Volk
4ecb2d0d5f
ircd: Add distinct maintenance mode; chain write-avoid/read-only and net listen modes.
2020-09-15 22:16:11 -07:00
Jason Volk
772022a74e
ircd::ed25519: Add create option to ctor; remove reference to global.
2020-09-15 18:46:28 -07:00
Jason Volk
8bdedb569c
ircd::db: Add preliminary custom rate limiter drop-in.
2020-09-15 04:33:28 -07:00
Jason Volk
c325c0338e
ircd::buffer: Export align related suite to ircd::.
2020-09-15 04:33:28 -07:00
Jason Volk
488ba864ef
include/ircd/Makefile: Additional PCH options for various clangs; minor cleanup.
2020-09-15 04:33:28 -07:00
Jason Volk
fb1f36ce72
ircd: Ⓜ️ :vm: Remove call operators; inline trivial getter.
2020-09-13 16:10:40 -07:00
Jason Volk
bf8dd39144
ircd: Ⓜ️ :vm: Move vector eval related to execute unit.
2020-09-13 16:10:40 -07:00
Jason Volk
a297976cd4
ircd::buffer: Apply saturating advance semantic to all consume() callpaths.
2020-09-13 08:42:34 -07:00
Jason Volk
13d267cefb
ircd::simd: Ensure return counts are bound to max values.
2020-09-13 08:42:34 -07:00
Jason Volk
e39182be25
ircd::fs: Add prefetch convenience to interface.
2020-09-13 08:42:34 -07:00
Jason Volk
afe0b96249
ircd::db: Support universal compaction by default; various write tweaks.
2020-09-12 07:03:21 -07:00
Jason Volk
1a7447837e
ircd: Ⓜ️ :vm: Remove legacy options; fix appendix masking.
2020-09-12 07:03:21 -07:00
Jason Volk
cbeedf2cf7
ircd::ed25519: Add non-throwing failure state for instances; bool operators.
2020-09-10 23:50:47 -07:00
Jason Volk
ac56198e14
ircd: Add three-way comparison for string_view.
2020-09-10 23:50:47 -07:00
Jason Volk
8ecb2d9653
ircd::simd: Fix comment. [ci skip]
2020-09-10 23:50:47 -07:00
Jason Volk
12bed2d87b
ircd: Ⓜ️ :room: Add json::tuple for m.room.message schema; property names.
2020-09-10 23:50:47 -07:00
Jason Volk
407202f85f
ircd::util: Improvements to timer tool; fix accumulator semantics; comments.
2020-09-10 23:50:47 -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
c9156b0f99
ircd::simd: Add typedef for corresponding type in the unaligned wrapper.
2020-09-09 02:12:37 -07:00
Jason Volk
b738d95330
ircd::simd: Remove precocious 512-shift intrinsic templates.
2020-09-08 22:27:06 -07:00
Jason Volk
a68702249d
ircd::db: Add interface to count cache entries.
...
modules/console: Add count column to db cache cmd.
2020-09-08 22:27:06 -07:00
Jason Volk
5c7007ebef
ircd: Ⓜ️ :vm::eval: Add coarse limit to options for array evals.
2020-09-07 17:01:45 -07:00
Jason Volk
7eaf60c308
ircd::fs: Add interface to madvise on mapped file.
2020-09-07 17:01:45 -07:00
Jason Volk
cc123836ef
ircd: Ⓜ️ :events: Start a content scanning interface.
2020-09-07 17:01:44 -07:00
Jason Volk
99314a1c16
ircd::spirit: Hoist ad155e169d
for full namespace.
2020-09-07 17:01:44 -07:00
Jason Volk
97248b2f44
ircd::simd: Refactor typedefs to not require external header.
2020-09-06 00:11:17 -07:00
Jason Volk
ad155e169d
ircd::spirit: Replace boost::function with std::function for indirect call optimizations.
2020-09-05 23:23:55 -07:00
Jason Volk
feb2d41571
configure: Add configure-time libmagick indication.
2020-09-05 15:55:24 -07:00
Jason Volk
82308ee4b3
ircd::simd: Consolidate sum_ templates into lateral template template.
2020-09-05 14:34:48 -07:00
Jason Volk
0d586d6d0c
ircd::simd: Add lower()/upper() templates for splitting.
2020-09-04 00:16:18 -07:00
Jason Volk
7557040542
ircd::simd: Add sum_add() template suite.
2020-09-03 21:53:59 -07:00
Jason Volk
afdc3ef794
ircd::simd: Fix inclusion define conflict.
2020-09-03 21:14:43 -07:00
Jason Volk
4a5d6066fe
ircd::utf: Simplify interfaces with weak specializations for vector widths; template inline.
2020-09-03 21:14:43 -07:00
Jason Volk
43afc1a9a7
ircd::spirit: Add comments documenting generator_state; assertions; minor cleanup.
2020-09-03 21:14:43 -07:00
Jason Volk
3955c80b34
ircd::simd: Improve vectorization characteristics of reduce suite.
2020-09-01 21:41:02 -07:00
Jason Volk
b0a53ffd33
ircd: Ⓜ️ :vm: Add option to skip any sorting/reordering for array eval.
2020-08-31 17:18:48 -07:00
Jason Volk
c87e444cda
ircd::simd: Add reduce util suite.
2020-08-31 12:10:41 -07:00
Jason Volk
d64d038911
ircd::spirit: Adjust generator_state linkage for clang/gcc.
2020-08-31 12:09:31 -07:00
Jason Volk
8505635716
ircd::spirit: Use per-unit thread-local internal generator_state ptr.
2020-08-30 05:43:12 -07:00
Jason Volk
a6277ac2d0
ircd::spirit: Fix down-copy destination size cases.
2020-08-30 05:43:12 -07:00
Jason Volk
5104e284cb
ircd::spirit: Split into headers; move into directory; reorg definitions.
2020-08-29 17:38:54 -07:00
Jason Volk
26f99b8ccc
ircd::spirit: Aggressive feature usage assumptions and branch pruning.
2020-08-29 17:38:54 -07:00
Jason Volk
da97013ab6
ircd::spirit: Assert buffer depth; fix constness; simplify condition; optimize types.
2020-08-29 17:38:54 -07:00
Jason Volk
55c3c54aef
ircd::buffer: Minor cleanup; operator stack reuse.
2020-08-29 17:38:54 -07:00
Jason Volk
8e7002a4b6
ircd::spirit: Eliminate buffer construction frequent allocation.
2020-08-28 05:18:57 -07:00
Jason Volk
1422b68666
ircd::spirit: Fix buffering strategy; fix align directive.
2020-08-28 05:18:57 -07:00
Jason Volk
a276009516
ircd::buffer: Export move to ircd::.
2020-08-28 05:18:57 -07:00
Jason Volk
a7b6001d49
ircd: Ⓜ️ :db: Additional debug for txn contents.
2020-08-28 05:18:57 -07:00
Jason Volk
f6475a2906
ircd::fs: Add interface to mmap fd.
2020-08-28 05:18:57 -07:00
Jason Volk
c863e09f08
ircd::buffer: Additional alignment related tools.
2020-08-28 05:18:57 -07:00
Jason Volk
a0f219a91b
ircd: Ⓜ️ :homeserver: Split bootstrap related into unit.
2020-08-28 05:18:57 -07:00
Jason Volk
f5dd9debb6
ircd: Move magick support to core lib. ( #109 )
2020-08-24 03:04:05 -07:00
Jason Volk
f16eb0b558
ircd::db: Use caller provided string buffer for debug.
2020-08-23 03:49:20 -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
d2a2b7aed1
ircd::simd: Improve x-platform generation of lzcnt/tzcnt.
2020-08-23 02:32:54 -07:00
Jason Volk
146a08dabd
ircd::simd: Fix static emission of traits and related templates.
2020-08-23 02:32:54 -07:00
Jason Volk
669c8d0d0f
ircd::ctx: Remove leaf attribute; use hot section attribute in unit.
2020-08-23 02:32:54 -07:00
Jason Volk
8e7c1c3eb2
ircd: Ⓜ️ Rename breadcrumb_rooms to breadcrumbs; related.
2020-08-23 02:32:54 -07:00
Jason Volk
af0fa4b2e8
ircd::prof::arm: Port rdtsc for aarch64. #132
2020-08-23 01:56:37 -07:00
Jason Volk
07830f1413
ircd::ctx: Integrate slice cycle counters with ios.
2020-08-21 10:43:04 -07:00
Jason Volk
385ade0154
ircd::b64: Fixes for size computing constexprs.
2020-08-21 06:21:49 -07:00
Jason Volk
eb43826d99
ircd::rfc3986: Consolidate visibility attributions; additional comments.
2020-08-21 06:20:26 -07:00
Jason Volk
6c7467f07d
ircd::vector_view: Apply noexcept specifier.
2020-08-21 06:20:26 -07:00
Jason Volk
c8deea2e8b
ircd::b64: Use standard alignas().
2020-08-12 02:55:35 -07:00
Jason Volk
b5ced28b88
ircd: Fix encoding dictionary template parameter for gcc.
2020-08-12 02:31:01 -07:00
Jason Volk
6bca16c277
ircd::b64: Add decoding error condition logic.
2020-08-11 19:38:16 -07:00
Jason Volk
0a542e6424
ircd::b64: Improve loop control and range constraints.
2020-08-11 16:15:53 -07:00
Jason Volk
c941e13ed0
ircd::b64: Adjust for types most amenable to vectorizing lookup phase.
2020-08-11 15:50:52 -07:00
Jason Volk
3cf8b949bf
ircd::b64: Use typedef for static dictionaries.
2020-08-11 15:50:52 -07:00
Jason Volk
f3f441ac19
ircd::b64: Add parallel SIMD base64 decoder.
2020-08-11 15:50:52 -07:00
Jason Volk
44bd60ea08
ircd::b64: Add encoding diction parameter; remove converters; reorg interface.
2020-08-10 06:19:48 -07:00
Jason Volk
486d9c1133
ircd: Replace inefficient std::replace().
2020-08-10 04:56:28 -07:00
Jason Volk
985d21ad7c
ircd: Add assertion in replace() stringop; minor cleanup.
2020-08-10 04:56:28 -07:00
Jason Volk
7ff89fbd17
ircd: Split base64 and base58 into separate namespaces.
2020-08-10 04:56:28 -07:00
Jason Volk
61287cdbe2
ircd::simd: Split unaligned type related to separate header.
2020-08-10 03:41:06 -07:00
Jason Volk
8443dcf3bb
ircd::simd: Macro and diagnostic adjustments for GCC.
2020-08-09 07:44:56 -07:00
Jason Volk
f89f15eebd
ircd::simd: Minor typedef cleanup. [ci skip]
2020-08-09 07:03:19 -07:00
Jason Volk
abc41ca666
ircd::base: Indicate noexcept on apropos out-of-line declarations.
2020-08-09 04:36:47 -07:00
Jason Volk
1baa590d9c
ircd::fpe: Add scope_round tool.
...
ircd::fpe: Inline exception flag setter.
ircd::fpe: Add fesetround() wrapper.
2020-08-09 02:39:31 -07:00
Jason Volk
4a2adc4123
ircd::base: Remove allocated string convenience overloads; simplify interface.
2020-08-09 02:39:31 -07:00
Jason Volk
52bc00673e
ircd::simd: Redress unaligned typedefs for proper instruction generation.
2020-08-07 02:14:27 -07:00
Jason Volk
97deec5c68
ircd::simd: Additional vector sizes and scaling template for shift suite.
2020-08-06 23:34:37 -07:00
Jason Volk
65296be413
ircd::db::database::sst: Add checksum data to info collection.
2020-08-05 22:33:33 -07:00
Jason Volk
5f96613c27
ircd: Tweak exception stack linkages for optimal code generation.
2020-08-05 19:52:48 -07:00
Jason Volk
1023d0eab2
ircd: Delete unspecialized template for lex_castable.
2020-08-05 19:16:04 -07:00
Jason Volk
32baa1a6bc
ircd: Indicate noexcept for lex_castable template suite.
2020-08-05 19:12:22 -07:00
Jason Volk
1482972e87
ircd: Ⓜ️ :error: Use inline linkage for main constructor template.
2020-08-05 18:48:32 -07:00
Jason Volk
1604ecd038
ircd::json::tuple: Use inline linkage for key() suite related.
2020-08-05 18:42:24 -07:00