Commit graph

73 commits

Author SHA1 Message Date
Can Bölük
5b6d37e129 Const-correct VM interface. 2020-08-24 06:08:18 +02:00
Can Bölük
cd91e00121 Should fix it for libstdc++ (#41). 2020-08-19 03:47:41 +02:00
Can Bölük
ed18caed93 Might as well use the real type now... 2020-08-19 03:13:18 +02:00
Can Bölük
b98b040c8b Swap forward declared type. 2020-08-19 03:11:44 +02:00
Can Bölük
49e07b17f4 match_boolean_expression should use weak references. 2020-08-18 03:52:23 +02:00
Can Bölük
ac50d8e560 Fix sign mismatch warning, improvements to queue. 2020-08-16 07:58:23 +02:00
Can Bölük
10113dfc1f Comment out some logic for now. 2020-08-01 21:33:21 +02:00
Can Bölük
fe1b7fc7e1 Implemented auto-scope ref and exception-less stack cleanup. 2020-08-01 21:21:16 +02:00
Can Bölük
aebcd833ba Improved simplifier search logic. 2020-07-31 03:41:49 +02:00
Can Bölük
ccd1969997 Added CustomHashable concept overload for std::hash. 2020-07-29 06:47:21 +02:00
Can Bölük
cc8ca77f7d Minor configuration changes. 2020-07-27 07:27:23 +02:00
Can Bölük
03b55383f9 Minor changes. 2020-07-27 06:22:21 +02:00
Can Bölük
99e6934f4c Lock count's type does not play well with br pred, changed to int32. 2020-07-27 04:28:02 +02:00
Can Bölük
2e0befba3b Major improvements to detached queue implementation. 2020-07-27 00:34:57 +02:00
Can Bölük
6ce9f471c6 Using new detached queue interface in the simplifier, fixing intrinsics. 2020-07-25 23:27:30 +02:00
Can Bölük
adc1522465 Implemented common detached_queue. 2020-07-25 21:55:13 +02:00
Can Bölük
eecf0f350a Fixed a bug in matcher logic. 2020-07-25 15:24:13 +02:00
Can Bölük
002fa96fb0 Minor improvements, increased confident hash-cmp limit to 384 bits. 2020-07-25 14:28:40 +02:00
Can Bölük
c4da978657 Final configuration of the cache. 2020-07-25 12:36:18 +02:00
Can Bölük
109ad182df Added a depth limit to self-generated pattern matching. 2020-07-25 12:16:04 +02:00
Can Bölük
c6340bd7c4 Implemented a signature based simplifier cache. 2020-07-25 11:41:10 +02:00
Can Bölük
452387bcb3 Reserve space for the map. 2020-07-25 06:54:41 +02:00
Can Bölük
94770f86cc Implemented LRU cache eviction for simplifier cache. 2020-07-25 06:48:15 +02:00
Can Bölük
5b4767acf1 vtil::zip and vtil::numeric_range can now be constructed constexpr. 2020-07-24 08:28:48 +02:00
Can Bölük
2a15400d94 Fixed a bug on SHR resizing, implemented lambda filters. 2020-07-14 07:23:33 +02:00
Can Bölük
2f1c6294f7 Improved local cache. 2020-07-13 00:00:56 +02:00
Can Bölük
51bc14eeeb Simplifier cache now puts different top-node operators into diff buckets 2020-07-12 22:39:54 +02:00
Can Bölük
d9a1d06087 Implement weak_ptr, 75% speedup in sym rewrite. 2020-07-12 22:00:58 +02:00
Can Bölük
22fafcc956 Fixing is_lazy bug. 2020-07-12 20:20:41 +02:00
Can Bölük
fbaa8efe2e Testing... 2020-07-12 18:05:19 +02:00
Can Bölük
715735b5ac Further reference usage, added [[nodiscard]] attributes. 2020-07-12 15:34:30 +02:00
Can Bölük
00d5c2c6cb Further pushing use of expression references. 2020-07-12 14:17:46 +02:00
Can Bölük
cb395a2b66 Symbolic VM now uses references, implemented special unique ptr for dirs 2020-07-12 08:00:52 +02:00
Can Bölük
c260945be4 Abstracted away access to simplifier cache, getting ready to rework it. 2020-07-10 23:35:58 +02:00
Can Bölük
cd3f43673c Default to 64-bit hash instead of 128-bit since we don't benefit much. 2020-07-09 09:00:46 +02:00
Can Bölük
392e02d973 Fixing license headers yet once again. 2020-07-09 02:43:51 +02:00
Can Bölük
614309aa11 Fixing license. 2020-07-06 21:41:04 +02:00
Can Bölük
6509b847ff Merge branch 'enchancement/boolean-directives-split' into experimental 2020-07-01 08:16:01 +02:00
Can Bölük
7ec1b100ed Added missing update invocation. 2020-07-01 06:28:25 +02:00
Can Bölük
8176fc944a Fixed unbalanced simplifications with lazy resizing. 2020-07-01 06:25:50 +02:00
Can Bölük
56225853c2 Fixed an issue where simplifier would return true where it was no-op. 2020-06-30 22:25:46 +02:00
Can Bölük
19ca02e1eb Final MUL simplifier. 2020-06-30 19:13:46 +02:00
Can Bölük
95f8465d6d Fixed simplify_boolean_expression leaking lazy state. 2020-06-30 18:02:14 +02:00
Can Bölük
42d828445a Do not simplify pre-complexity check. 2020-06-30 07:22:01 +02:00
Can Bölük
ef84fbea7d Implemented boolean normalization logic. 2020-06-30 06:58:53 +02:00
L33T
d41e60ee69 Split boolean directives to reduce initialization stack size requirement to meet Windows small stack requirements 2020-06-29 21:12:44 +03:00
Can Bölük
7e3f19facd Revert "I hate MSVC."
This reverts commit 0409394e2f.
2020-06-28 16:39:59 -04:00
Can Bölük
0409394e2f I hate MSVC. 2020-06-28 21:38:50 +02:00
Can Bölük
d77ce575e9 Lazy flag is now "stolen" instead of being carried. 2020-06-26 11:32:28 +02:00
Can Bölük
6a795f964e Prioritized constant check in simplify_expression. 2020-06-26 09:27:02 +02:00