Commit graph

488 commits

Author SHA1 Message Date
Gregory Morse
b915c41764
Update varmap.cc 2019-07-26 10:30:37 +02:00
Gregory Morse
de5be96d8a
Update varmap.hh 2019-07-26 10:28:06 +02:00
Gregory Morse
7d77a1ef49
Update varmap.hh 2019-07-26 00:44:52 +02:00
Gregory Morse
b218cfab9d
VarMap stable_sort throws Invalid Comparator
Can thank Visual Studio 2019 debug build for finding this one.  Only debug build runtime error but this is a legitimate violation of C++ standards.

stable_sort requires a weak strict ordering yet inspection showed duplicates were ending up in the maplist.

The solution is complexity-wise not ideal.  But it certainly works to prevent this bug.
2019-07-26 00:43:52 +02:00
caheckman
29221c10a8 fix for result based sign-bit extraction in optimized division 2019-07-25 09:31:33 -04:00
caheckman
d18f09101c Added PIECE and INT_AND to RuleSLess2Zero. Added RuleRightShiftAnd 2019-07-24 15:52:18 -04:00
caheckman
b0a54473df Debugging RuleSless2Zero 2019-07-24 10:24:56 -04:00
caheckman
6e44b809b9 INT_NEGATE and SUBPIECE in RuleSless2Zero 2019-07-24 09:56:59 -04:00
caheckman
9fc99efc93 Allowing for SUBPIECE normalization 2019-07-23 16:15:36 -04:00
caheckman
c7e3f54212 Added CPUI_INT_NEGATE to RuleEqual2Constant 2019-07-23 15:52:16 -04:00
caheckman
45c0f398d2 tailor conversion of logical to arithmetic sign shift 2019-07-23 14:17:17 -04:00
caheckman
c372c05a20 Sign-bit comparisons through truncation 2019-07-23 12:46:15 -04:00
caheckman
a85f140a53 Rules for sign bit extraction 2019-07-22 13:14:36 -04:00
caheckman
ab13d34876 certification change 2019-07-15 15:26:41 -04:00
caheckman
1e81a90003 Merge branch 'caheckman_moredivopt' 2019-07-15 15:22:02 -04:00
caheckman
12d3da029b Refactor ParamEntry look-up allowing "contained by" discovery 2019-07-15 15:15:37 -04:00
caheckman
1731903056 RuleDoubleArithShift 2019-07-13 14:24:22 -04:00
caheckman
f0a9427e4f Extended decompiler support for optimized integer division forms 2019-07-05 16:30:37 -04:00
caheckman
e8fb8b3a19 Making a couple more analyses STORE-based INDIRECT aware 2019-07-01 10:15:27 -04:00
caheckman
29f207400d Adjust likelytrash action to account for STORE based INDIRECTs 2019-06-28 18:11:01 -04:00
caheckman
feb2e6887b Treat STORE based INDIRECT as artificial 2019-06-28 16:27:21 -04:00
caheckman
a4856b9af0 New indirect_store flag 2019-06-28 13:03:26 -04:00
caheckman
b7608adcf2 Passing alias test 2019-06-27 13:28:40 -04:00
caheckman
171602e1ce New guardStore 2019-06-25 16:53:49 -04:00
caheckman
cb39d39a23 New flag for dynamic STORE test 2019-06-25 14:23:05 -04:00
caheckman
a6c359961d Merge remote-tracking branch 'github/Github-224_caheckman' 2019-06-20 15:25:46 -04:00
caheckman
11a86ca06e minor change to transformPtr 2019-06-20 15:02:05 -04:00
caheckman
39d3a5f810 working fix 2019-06-20 14:43:20 -04:00
caheckman
27b7058d98 bumping decompiler minor version number 2019-06-19 15:45:17 -04:00
caheckman
b9b26275f5 fixes for STORE range analysis 2019-06-18 18:29:00 -04:00
caheckman
ec9bfa86a7 solving stack STOREs 2019-06-18 16:26:30 -04:00
caheckman
2a73bca9ac overflow checks, take into account LOAD size 2019-06-17 23:47:05 -04:00
caheckman
cb5ac78c08 fix for stale LoadGuard segfault 2019-06-17 12:26:55 -04:00
caheckman
e5c7b58305 tests passing 2019-06-16 23:42:48 -04:00
caheckman
f825b1aa57 Refactoring MapRange to RangeHint 2019-06-16 16:47:13 -04:00
caheckman
12c655f41f some name refactoring in varmap 2019-06-16 03:04:23 -04:00
caheckman
fa3737c9d9 documentation for varmap 2019-06-16 01:59:58 -04:00
caheckman
d51d8259b5 fixed constraint finding corner case 2019-06-15 18:22:28 -04:00
caheckman
e506f27b31 Rearrange MULTIEQUAL equation generation 2019-06-15 00:52:51 -04:00
caheckman
3433400d76 adjustments to high index calculations 2019-06-14 17:46:23 -04:00
caheckman
64bdd81eed Reformating varmap 2019-06-14 16:29:23 -04:00
caheckman
6986813538 tighter landmarks 2019-06-14 12:48:26 -04:00
caheckman
49f72d2de7 CircleRange contain and widen adjustments 2019-06-14 11:18:02 -04:00
caheckman
ab9b8dd602 more careful setting of step 2019-06-12 17:40:31 -04:00
caheckman
8cad85e36c rearrange LoadGuard class 2019-06-12 15:07:39 -04:00
caheckman
e1507d05ec Merge remote-tracking branch 'origin/caheckman_pushvalue' into
caheckman_loadguard
2019-06-12 09:29:36 -04:00
caheckman
ae31322a8d minor fix 2019-06-11 16:20:28 -04:00
caheckman
f7a3676dc1 patches from stress testing 2019-06-11 15:17:21 -04:00
caheckman
109dd8a8f1 integration with pushvalue 2019-06-11 10:38:15 -04:00
caheckman
d4ebf6f753 stability in ValueSetRead 2019-06-07 16:13:28 -04:00