Commit graph

51 commits

Author SHA1 Message Date
Can Bölük
18271c817e Moving transform_parallel to utility. 2020-08-24 04:28:40 +02:00
Can Bölük
0b316c6cfd Implemented basic std::fs support, reworked time/iterator helpers. 2020-08-24 04:00:44 +02:00
Can Bölük
3c3687636e Fixing typo in the fix. 2020-08-23 10:49:49 +02:00
Can Bölük
222b6d4390 Fixing out-of-constraint access in is_used. 2020-08-23 10:31:41 +02:00
Can Bölük
0a1d015eba Minimal pass re-ordering. 2020-08-23 06:54:36 +02:00
Can Bölük
0bbc82b8f8 Implemented optimizer::execution_order. 2020-08-23 05:44:11 +02:00
Can Bölük
c0e26276ab Moved is_semantic_nop and remove_nops to auxiliaries. 2020-08-23 02:07:16 +02:00
Can Bölük
086233747c Revert a whoopsie. 2020-08-21 07:53:57 +02:00
Can Bölük
7d106c56e8 Making use of function_view. 2020-08-21 00:55:43 +02:00
Can Bölük
ff009c96a7 Worker threads preserve symcache per block. 2020-08-01 21:19:56 +02:00
Can Bölük
1ed9aa410d Fixed a race condition caused by off by one restriction. 2020-07-29 20:33:29 +02:00
Can Bölük
8a79ca03ba Fixed everything else to work with the changes. 2020-07-29 02:36:10 +02:00
Can Bölük
d82966849c Fixed an issue where compiler would generate atomic<void>. 2020-07-28 21:42:06 +02:00
Can Bölük
14a55c4a2c transform_parallel now accepts functors with any atomic type / void. 2020-07-27 23:19:09 +02:00
Can Bölük
091973723a Removing redundant code. 2020-07-27 20:28:05 +02:00
Can Bölük
cc8ca77f7d Minor configuration changes. 2020-07-27 07:27:23 +02:00
Can Bölük
34d857c1bf Removing unnecessary (post self-sig change) cache purging. 2020-07-25 12:29:11 +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
bc6dc89429 Prefer slow stack propagation for now, will be reworked soon. 2020-07-13 00:52:03 +02:00
Can Bölük
02e2271822 Fixed a concurrency issue with stack_propagation. 2020-07-13 00:42:21 +02:00
Can Bölük
e8078d25d2 Improve resizing logic and pass ordering. 2020-07-13 00:06:04 +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
6bc8fe6f85 Apply symex rewrite once more after propagation, ignore dup in apply_each. 2020-07-11 13:07:00 +02:00
Can Bölük
1ab6c7283c Fixed is_used for registers. 2020-07-11 12:51:47 +02:00
Can Bölük
7fc4860272 Reworked aux::is_used using routine::enumerate. 2020-07-11 12:25:03 +02:00
Can Bölük
e09faf5f9c Enabling thread pooling by default. 2020-07-11 11:19:07 +02:00
Can Bölük
d5ae499ee0 Implement VTIL_OPT_USE_THREAD_POOLING and USE_PARALLEL... switches. 2020-07-11 11:10:38 +02:00
Can Bölük
d2dab1124f Implemented recursive_view::first_g() 2020-07-11 06:53:36 +02:00
Can Bölük
86d4d672b6 Slightly reordered optimization passes. 2020-07-11 02:09:56 +02:00
Can Bölük
47f5c14521 Skip collective propagation before rewrite. 2020-07-09 08:35:58 +02:00
Can Bölük
0081496346 Fixed optimizer for improperly terminated routines. 2020-07-09 08:34:14 +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
4b8944cfcf aux::analyze_branch now takes flags in a structured way. 2020-07-04 07:20:32 +02:00
Can Bölük
25f931e90d Commenting out fast passes for now. 2020-07-03 22:54:36 +02:00
Can Bölük
516d61974e Fixed branch correction, added additional if packer. 2020-07-03 22:44:03 +02:00
DefCon42
1f7f187a95 Fix fast propagation/fast DCE.
TODO: reimplement memory propagation.
2020-06-30 18:53:41 -04:00
DefCon42
d2824f1079 add fast passes to apply_all 2020-06-30 11:58:12 -04:00
Can Bölük
05151efaf6 Fixing branch correction/analysis, few other minor fixes. 2020-06-26 08:36:44 +02:00
Can Bölük
3212197bc3 Fixing some tracer bugs and branch correction pass. 2020-06-26 04:21:31 +02:00
Can Bölük
a48e609449 Fixed one-off issue in DCE. 2020-06-26 00:38:24 +02:00
Can Bölük
02adad1ea7 Switching to inline const instruction definitions. 2020-06-26 00:24:11 +02:00
Can Bölük
2dd757fd55 Implemented apply_all_profiled. 2020-06-24 06:21:53 +02:00
Can Bölük
04fa8c34ce Implemented cached tracer copy/move, better profiler. 2020-06-24 06:06:30 +02:00
Can Bölük
7f7ef434c2 Fixed branch correction pass failing due to enforced cc size. 2020-06-22 07:04:17 +02:00
Can Bölük
523d35d53c Implemented a way to fix unknown access when rtracing is allowed. 2020-06-21 01:30:21 +02:00
Can Bölük
0393fed85f Minor fix to branch logic, added a todo item for branch correction pass. 2020-06-20 22:18:52 +02:00
Can Bölük
8f30bcb35a Further fixes for pointer based branching. 2020-06-20 22:01:45 +02:00
Can Bölük
eb6e1222a5 Handling pointer based branching. 2020-06-20 21:34:35 +02:00
Can Bölük
c268107f4a Renamed some leftover files. 2020-06-20 10:56:42 +02:00