0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-12 04:51:08 +01:00
Commit graph

5013 commits

Author SHA1 Message Date
Jason Volk
08753dc254 ircd:Ⓜ️ Add dbs::opts passed to room::purge and event::purge interfaces. 2023-02-10 23:15:47 -08:00
Jason Volk
8d634fb901 ircd:Ⓜ️:dbs: Rename write_opts to opts and split into header. 2023-02-10 23:15:47 -08:00
Jason Volk
0fdeda3743 ircd:Ⓜ️:room: Add consolidated room::purge interface w/ options. 2023-02-10 12:27:52 -08:00
Jason Volk
ae5af6a7ed ircd:Ⓜ️:room::events: Add optional bool to convey validity on nothrow overload; minor inline. 2023-02-10 11:40:05 -08:00
Jason Volk
1910d8e85e ircd:Ⓜ️:event: Add interface to purge event; consolidate; cleanup. 2023-02-09 20:24:36 -08:00
Jason Volk
f930f480c7 ircd::util: Add missing popcount specializations. (regression fe0f398e14) (-Wundefined-inline) 2023-02-09 19:17:45 -08:00
Jason Volk
1c6d216daf ircd::util: Generalize util::boolean into returns template. 2023-02-09 19:17:45 -08:00
Jason Volk
762703698c Replace various #ifdef RB_DEBUG with if constexpr for regression visibility. 2023-02-09 12:11:32 -08:00
Jason Volk
44acfb5deb ircd::util::timer: Add constexpr conditional construction. 2023-02-09 12:11:32 -08:00
Jason Volk
90f1dc77fb ircd::client: Remove redundant local endpoint state. (related 1da91f41b3) 2023-02-09 11:41:11 -08:00
Jason Volk
aa8ce19c7c ircd: Internalize various loghead utils; remove legacy ostream operators. 2023-02-09 11:41:11 -08:00
Jason Volk
39b5a334a6 ircd: Attribute nodebug on assert frames, artificial ineffective for clang. 2023-02-09 11:11:01 -08:00
Jason Volk
3f82d32619 ircd: Mitigate __builtin_assume w/ side-effects diagnosed (arguably incorrect) and ignored. 2023-02-09 11:11:01 -08:00
Jason Volk
8e983880f2 ircd::db::prefetcher: Fix loss of notify on db shutdown w/ separate ctx::dock. 2023-02-08 14:28:09 -08:00
Jason Volk
0036111ef1 ircd::server: Optimize peers map w/ allocator::node. 2023-02-08 13:55:53 -08:00
Jason Volk
1da91f41b3 ircd::net: Elide repeated getsockname()/getpeername() w/ cached sockaddrs. 2023-02-08 10:52:02 -08:00
Jason Volk
8387459369 ircd::util: Fix clamp for negative stream::tellp() to view empty. 2023-02-07 20:04:26 -08:00
Jason Volk
fe0f398e14 ircd::util: Add popcount wrapping; consolidate callsites. 2023-02-07 20:04:26 -08:00
Jason Volk
855648de15 ircd: Add __has_feature / __has_cpp_attribute portable macros. 2023-02-07 20:04:26 -08:00
Jason Volk
0b9bb185de ircd::util: Add environment iteration convenience tools. 2023-02-07 20:04:26 -08:00
Jason Volk
bd960a206b ircd::util::instance_map: Fix ill-formed emplace_hint decomposition in template. 2023-02-06 18:15:52 -08:00
Jason Volk
10de5ea52d ircd::resource::response::chunked::json: Use template for top object or array type. 2023-02-05 19:57:08 -08:00
Jason Volk
981006d831 ircd::resource::response::chunked: Additional overload for buffer w/o headers; fix comment. 2023-02-05 18:59:00 -08:00
Jason Volk
f54b31358a ircd:Ⓜ️:homeserver: Replace use of instance_multimap w/ instance_map. 2023-02-05 18:47:31 -08:00
Jason Volk
49bd43e685 ircd::util: Optimize instance_map w/ allocator::node. 2023-02-05 18:46:20 -08:00
Jason Volk
9ecf389007 ircd:Ⓜ️:vm: Add vm::notify interface w/ yielding wait for event_id. 2023-02-05 18:45:08 -08:00
Jason Volk
dc873d8c8f ircd:Ⓜ️:event: Add exists_count() convenience; simplify various popcounts. 2023-02-05 18:45:08 -08:00
Jason Volk
df67d08897 ircd::util: Optimize instance_multimap w/ allocator::node. 2023-02-05 18:45:08 -08:00
Jason Volk
b7bd92097a ircd::allocator::node: Add scope usage convenience. 2023-02-05 18:45:08 -08:00
Jason Volk
a0d565b2a4 ircd::allocator: Split header into directory. 2023-02-05 12:06:42 -08:00
Jason Volk
c3bcb03b31 ircd:Ⓜ️:sync::item: Use string_view of item name for ctor. 2023-02-04 20:16:20 -08:00
Jason Volk
c784d12318 ircd::ctx: Fix erroneous comment. [ci skip] 2023-02-04 13:20:44 -08:00
Jason Volk
ea40dcc56b Fix undef var templates for explicit instantiations across units (-Wundefined-var-template). 2023-02-04 13:20:44 -08:00
Jason Volk
cd53f1b5a4 ircd::ios: Increase width for latency in profile::logging debug fmt. 2023-01-28 17:11:14 -08:00
Jason Volk
dfb4e19848 ircd::fs: Replace reuses of net::eof w/ specific fs::eof. 2023-01-26 14:14:52 -08:00
Jason Volk
4cece76e1c ircd:Ⓜ️:room::aliases: Add has_server() optimized count(server)>0 to interface. 2023-01-24 22:44:03 -08:00
Jason Volk
ede3d5a651 ircd:Ⓜ️:rooms: Add requesting user_id/node_id to query opts for access ctrl. 2023-01-24 22:44:03 -08:00
Jason Volk
600563d272 ircd::conf: Add template lex_cast convenience; limited to bool specialization. 2023-01-19 19:58:23 -08:00
Jason Volk
829e641a48 ircd::conf: Add nothrow overloads to get() suite. 2023-01-19 19:58:23 -08:00
Jason Volk
57dbd72c82 ircd::json::value: Add single-arg template ctors for value and member array. 2023-01-19 19:58:22 -08:00
Jason Volk
bb3576eaaa ircd::ctx: Update stack allocator for official support. (boost-1.80) 2023-01-19 19:58:22 -08:00
Jason Volk
c0a6ce7ee2 ircd::asio: Remove BOOST_COROUTINES_NO_DEPRECATION_WARNING; undeprecated after boost-1.70. 2023-01-18 08:11:02 -08:00
Jason Volk
6bbde81b44 Ensure EXTRA_*FLAGS is properly appended after other build flags. 2023-01-18 08:11:02 -08:00
Jason Volk
a2b7c172c7 ircd::util::bitset: Add bounds-check appeasing stringop-overflow (gcc-12). 2023-01-15 22:32:00 -08:00
Jason Volk
f8d21c8c37 ircd: Fix stringop-overread complaint for memchr on empty str (gcc-12). 2023-01-15 22:32:00 -08:00
Jason Volk
bb6cacb94b ircd::asio: Suppress warnings out of boost headers. 2023-01-15 22:32:00 -08:00
Jason Volk
f8538d3c5b ircd::buffer: Suppress errant array/stringop-overflow in debug+assert mode. 2023-01-15 22:32:00 -08:00
Jason Volk
dbf9407442 ircd: Remove gratuitous alignment attributes. 2023-01-15 22:32:00 -08:00
Jason Volk
d0cbf6c14c ircd::simt: Add hardware ident access register (AMDDNA) 2023-01-02 20:25:58 +00:00
Jason Volk
a158c214a9 ircd::simt: Add hardware ident access register (AMDGCN). 2023-01-02 19:42:21 +00:00
Jason Volk
2b5f5f7a95 ircd::simt: Add preliminary memory characteristics tool. 2023-01-02 19:42:21 +00:00
Jason Volk
38c4959f6c ircd::simt: Add macro to differentiate RDNA over GCN. 2023-01-02 19:42:21 +00:00
Jason Volk
d377674748 ircd::simt: Split vector reduce_add to hadd. 2023-01-01 19:16:06 -08:00
Jason Volk
1f87668a28 ircd::simt: Add cycles_rtc() intrinsic for s_memrealtime on (AMDGCN). 2023-01-01 21:28:54 +00:00
Jason Volk
a53963fc51 ircd::math: Add difference template convenience. 2023-01-01 21:28:54 +00:00
Jason Volk
47e54547f9 ircd::simt: Add optimizations from cl_khr_subgroups support. 2023-01-01 21:28:54 +00:00
Jason Volk
0fb7577066 ircd::simt: Split is_pow() util to math header for now. 2023-01-01 21:28:54 +00:00
Jason Volk
521a04730c ircd:🆑 Conf items for device queueing and queue size defaults. 2023-01-01 21:28:54 +00:00
Jason Volk
b068b7d959 ircd::simt: Add portables for static_assert macro. 2022-11-07 01:51:19 +00:00
Jason Volk
1148532894 ircd: Add shorthand to unpredictable branch attribute. 2022-11-07 01:51:19 +00:00
Jason Volk
110d4e7b17 ircd::gpt: Remove hostside backprop branch for now; simplify sample tokenizer. 2022-11-03 18:28:53 +00:00
Jason Volk
db549a64ca ircd::gpt: Add values for custom timestamp range to ctrl prof block. 2022-11-03 18:28:53 +00:00
Jason Volk
601a7a3a6a ircd:🆑:code: Add construction from files and directories. 2022-11-03 18:28:53 +00:00
Jason Volk
5aeadc2d52 ircd:🆑:code: Split createProgram related out of ctors; static iov_max. 2022-11-03 18:28:53 +00:00
Jason Volk
d95718ed6f ircd::fs: Additional convenience tools for path suite. 2022-11-03 18:28:53 +00:00
Jason Volk
561be9973a ircd::simt::norm: Barrier for overlapping input and output buffers. (gfx1011) 2022-11-03 18:28:53 +00:00
Jason Volk
7c8163fcab ircd::simt: Alias asm to OpenCL __asm__. 2022-11-03 18:28:53 +00:00
Jason Volk
ac163274f1 ircd::simt: Simplify keywording; tease out OpenCL version by target. 2022-10-30 18:44:50 +00:00
Jason Volk
a50f9fbd1b ircd::simt: Improve assert related; fix 83114172 argument name. 2022-10-18 22:01:35 +00:00
Jason Volk
2609c21913 ircd::gpt::pipe: Enable mutable model; fixes for backpropagation; range stub. 2022-10-18 22:01:35 +00:00
Jason Volk
1ac69df8cd ircd::gpt::pipe::range: Use opts for construction. 2022-10-16 01:34:03 +00:00
Jason Volk
6a05fcefeb ircd::simt: Consolidate timestamp counter sampling into inline. 2022-10-12 18:53:53 -07:00
Jason Volk
54e3b8f5b4 ircd::simt: Consolidate portables and macros from units into headers. 2022-10-11 02:13:46 +00:00
Jason Volk
1f57c224c6 ircd: Fix missing __has_builtin; minor cleanup. 2022-10-09 00:40:47 +00:00
Jason Volk
6fb9cd7bf1 ircd::tokens: Relax noexcept on token result closures. 2022-10-08 15:37:14 -07:00
Jason Volk
4c44125d37 ircd::gpt::samp: Split dispatch branch into memfun. 2022-10-06 22:28:23 +00:00
Jason Volk
2afaa4fa4f ircd::gpt::pipe: Remove cruft. 2022-10-06 22:05:52 +00:00
Jason Volk
442dad869d ircd::gpt: Resolve cycle count sampling; add debug log; fix count. 2022-10-06 22:01:41 +00:00
Jason Volk
c0f0398b45 ircd::simt: Add inline to clear the mean state to zero. 2022-10-05 13:53:52 -07:00
Jason Volk
a9709568b4 ircd::gpt::pipe: Move the frame mapping command to the cycle. 2022-10-05 20:10:31 +00:00
Jason Volk
6827994a62 ircd::util: Add alignment gauge to suite. 2022-10-01 22:06:45 +00:00
Jason Volk
baef0e3bc7 ircd:Ⓜ️:trace: Add interface for the trace. 2022-09-28 15:05:43 -07:00
Jason Volk
b4f869a616 ircd:Ⓜ️:room::messages: Add option toggling redacted query. 2022-09-28 15:05:42 -07:00
Jason Volk
00829d2118 ircd:Ⓜ️:room::messages: Move m.replace related out of class; fix errors. 2022-09-28 13:30:56 -07:00
Jason Volk
5f758aaa3b ircd:Ⓜ️:events::annotates: Interface to scan the key of the m.annotation rel_type. 2022-09-28 09:55:51 -07:00
Jason Volk
e2d70f249f ircd:Ⓜ️:events::relates: Interface to scan the rel_type of the M_RELATES ref type. 2022-09-28 09:54:10 -07:00
Jason Volk
9564d8fcdd ircd:Ⓜ️:relates: Fix property order for any canonical serialization. 2022-09-27 18:35:04 -07:00
Jason Volk
da614e33a5 ircd:🆑 Replace niceness value with intensity by range partition. 2022-09-27 14:18:25 -07:00
Jason Volk
e85ed0e0dd ircd::gpt: Remove various cruft. 2022-09-24 16:40:39 -07:00
Jason Volk
4a8302038a ircd::gpt::vocab: Add tokenization and detokenization count() convenience. 2022-09-21 16:42:07 -07:00
Jason Volk
6092fabe42 ircd:Ⓜ️:room::message: Fix reply fallback accepting non-mxid careted names. 2022-09-21 16:39:05 -07:00
Jason Volk
c8bb2c8f37 ircd::ctx::queue: Inline linkage for template defs. 2022-09-11 12:43:46 -07:00
Jason Volk
ae9f2c1199 ircd::fs: Add asio glue for io_uring read/write. (closes #37) 2022-09-10 12:00:54 -07:00
Jason Volk
da55b185da Enable io_uring on supporting platforms. (#37)
docker: Add liburing to base packages. (#37)
2022-09-10 12:00:48 -07:00
Jason Volk
83799b555c ircd::fs: Add optional init for aio. 2022-09-10 11:40:33 -07:00
Jason Volk
dcbeb3fd4a ircd::fs: Remove fs::iou. 2022-09-10 11:40:33 -07:00
Jason Volk
ffac5de052 ircd::server: Fix introduced macro conflict. (gcc-9) 2022-09-10 11:40:33 -07:00
Jason Volk
a3226b3b38 ircd::info: Proper prctl check for cpuid availability. 2022-08-27 01:52:05 -07:00
Jason Volk
cf8e4092c9 ircd:Ⓜ️:user::rooms: Simplify interface w/ util::closure_bool. 2022-08-19 20:57:35 -07:00
Jason Volk
04559a28f6 ircd:Ⓜ️:user::rooms: Add prefetch loop. 2022-08-19 20:57:35 -07:00
Jason Volk
df6d463623 ircd:Ⓜ️ Add membership prefetch suite. 2022-08-19 20:57:35 -07:00
Jason Volk
7a90776056 ircd:Ⓜ️ Additional pretty_msgline() opts for time ago / body delim. 2022-08-19 11:13:57 -07:00
Jason Volk
f931912f3e ircd:Ⓜ️:event::fetch: Improve codegen w/ dtor linkage. 2022-08-18 15:01:38 -07:00
Jason Volk
c010920f7c ircd:Ⓜ️:relates: Add reverse iteration; consolidate abi, inline interface. 2022-08-17 18:15:30 -07:00
Jason Volk
e2017efcce ircd:Ⓜ️:event::refs: Add reverse iteration; inline interface. 2022-08-17 18:15:30 -07:00
Jason Volk
727749e9de ircd:Ⓜ️:room: Add interface to room messages. 2022-08-17 13:05:39 -07:00
Jason Volk
2bf10c1234 ircd:Ⓜ️:relates: Add sender checking; move option bits to class member. 2022-08-17 11:09:05 -07:00
Jason Volk
47c6ae1c31 ircd:Ⓜ️ Add parallel binary operated comparison suite to query interface. 2022-08-17 11:09:05 -07:00
Jason Volk
6885bafc49 ircd:Ⓜ️ Add parallel get() suite to interface. 2022-08-17 11:09:05 -07:00
Jason Volk
47ce9ff839 ircd::db::column: Add parallel fetch closure for zero-copy closure. 2022-08-16 22:21:52 -07:00
Jason Volk
206afc25b0 ircd:Ⓜ️:room::message: Add interface for edit contents. 2022-08-16 13:43:00 -07:00
Jason Volk
fedf1e976a ircd:Ⓜ️:relates: Add interface around the rel_type for the relation ref type. 2022-08-16 13:43:00 -07:00
Jason Volk
31c1e834bd ircd::net::dns::resolver: Question must match or this is the mist of a packet spray. 2022-08-15 12:38:21 -07:00
Jason Volk
8461fbcbd5 ircd:Ⓜ️:room::message: Add url to tuple; minor reorg. 2022-08-14 17:27:32 -07:00
Jason Volk
ed50a9f360 ircd:Ⓜ️:media: Optimize file room writes w/ journal bypass. 2022-08-11 13:28:12 -07:00
Jason Volk
479d22466e ircd:Ⓜ️:vm: Add starting timestamp to eval state w/ specific event eval timestamp.
modules/console: Add eval timestamps to output of vm cmd table.
2022-08-10 18:20:52 -07:00
Jason Volk
94d9444988 ircd:Ⓜ️ Add granular options for pretty_msgline(). 2022-08-10 18:20:52 -07:00
Jason Volk
f6b17e5fed ircd:Ⓜ️ Move pretty.h out of event/ dir. 2022-08-10 18:20:52 -07:00
Jason Volk
c32928981b ircd:Ⓜ️:dbs::init: Split unit; preliminary schema update vector; ctor exceptions. 2022-08-06 22:47:59 -07:00
Jason Volk
49615517cc ircd:Ⓜ️:room::content: Move prefetch buffer to class member. 2022-08-05 18:38:32 -07:00
Jason Volk
e45dc31797 ircd:Ⓜ️:vm::eval: Use closure_bool for_each(); reduce direct instance_list iteration. 2022-08-05 17:57:19 -07:00
Jason Volk
14eb419045 ircd:Ⓜ️ Add m.in_reply_to to m::relates tuple and reuse in m::room::message. 2022-08-04 18:25:49 -07:00
Jason Volk
b75f0ea1ef ircd:Ⓜ️ Move multi-key fetch from vm:: to keys::; minor reorg. 2022-08-03 20:26:33 -07:00
Jason Volk
35199dffb3 ircd:Ⓜ️:room::message: Add interface to extract rich reply fallbacks. 2022-08-02 20:49:21 -07:00
Jason Volk
504e0a1883 ircd:Ⓜ️:room::message: Name m.relates_to in the tuple. 2022-08-02 15:56:04 -07:00
Jason Volk
cd4b1714d9 ircd::rfc3986: Fix grammar throwing out of url::decode_unsafe(). 2022-08-02 13:18:58 -07:00
Jason Volk
1f947f982c ircd::gpt: Cache pipe::code instance in shared_ptr for task reuse. 2022-07-31 02:46:05 -07:00
Jason Volk
0ba3c5629f ircd:Ⓜ️:room::events::missing: Dedup inner loop; optimize w/ parallel query. 2022-07-30 20:58:59 -07:00
Jason Volk
33094ece07 ircd::gpt: Fix doc comment on count vs. tokens. [ci skip] 2022-07-30 19:25:32 -07:00
Jason Volk
03262e09a9 ircd:Ⓜ️:dbs: Add conf items for less aggressive compact trig on large columns. 2022-07-29 23:56:52 -07:00
Jason Volk
e38825030f ircd::db: Add descriptor field for level0 compaction trigger. 2022-07-29 22:30:09 -07:00
Jason Volk
a945137eff ircd::log: Cold section log::critical constructions. 2022-07-26 15:46:09 -07:00
Jason Volk
f0569247f4 Makefiles: Fix bashisms. (#88) 2022-07-25 14:08:26 -07:00
Jason Volk
581300ef9d ircd::spirit: Replace deprecated phoenix header. 2022-07-25 12:31:18 -07:00
Jason Volk
a44e180ff7 ircd::gpt: Fix stale comment. [ci skip]. 2022-07-22 19:11:51 -07:00
Jason Volk
5600e28ebc modules/client/search: Add case key command; case-insensitive by default. 2022-07-21 18:28:57 -07:00
Jason Volk
49a13b6eec ircd::asio: Fix undefined-var-template error; enable -fpch-instantiate-templates. 2022-07-20 18:32:38 -07:00
Jason Volk
3068466175 ircd::versions: Declare list specialization; noexcept ctors; minor cleanup. 2022-07-20 18:32:38 -07:00
Jason Volk
2d68d69b36 ircd::string_view: Attribute noreturn on insert() stub under proper conditions. 2022-07-20 18:32:38 -07:00
Jason Volk
b271007fd2 ircd::util: Fix unsafe instance_list emplace; assert for allocator state. 2022-07-20 18:32:38 -07:00
Jason Volk
5d71d848a7 ircd::util: Fix undefined-var-template linkage related warning. 2022-07-20 12:31:49 -07:00
Jason Volk
741c211848 configure: Add conditional flags for forced pch w/ clang. 2022-07-20 09:56:22 -07:00
Jason Volk
27f1ecd6cd configure: Hoist some flags out of include/ircd/Makefile. 2022-07-20 09:56:22 -07:00
Jason Volk
3a5f7e0aac ircd::resource: Implement more complex path routing. 2022-07-20 09:56:22 -07:00
Jason Volk
432f38cd06 ircd: Add tokens_split() tool w/ skip feature. 2022-07-19 14:26:23 -07:00
Jason Volk
ca66882b6e ircd::util: Additional pubsetbuf() convenience; inline linkages. 2022-07-19 14:26:23 -07:00
Jason Volk
b2d451b74d ircd: Add branchless optimistic assertion instrument --with-assert=opt 2022-07-18 16:58:02 -07:00
Jason Volk
e4d517415b ircd:Ⓜ️:acquire: Add conf items to default some opts; rename and raise submit max. 2022-07-18 16:58:02 -07:00
Jason Volk
4e29b2429c ircd::string_view: Add noexcept substr(); optimize codegen for split()/rsplit(). 2022-07-18 16:58:02 -07:00
Jason Volk
93a7575352 ircd:Ⓜ️:resource: Abstract request::version to ircd::request::agent. 2022-07-18 16:58:02 -07:00