Commit graph

204 commits

Author SHA1 Message Date
caheckman
4ed9f2f0ee consistent naming of parameters between Ghidra and decompiler 2019-09-18 15:47:23 -04:00
caheckman
b2a422329c Add dynamic symbols to recommend mechanism 2019-09-16 13:36:47 -04:00
Ryan Kurtz
cf0f981c7f Merge remote-tracking branch 'origin/caheckman_bugfixes' into Ghidra_9.1 2019-09-16 12:04:38 -04:00
caheckman
e2a9e9db84 don't create COPY in ActionConstantPtr 2019-09-16 11:32:45 -04:00
Ryan Kurtz
c1ae0d6971 Merge remote-tracking branch 'origin/GT-3125' into Ghidra_9.1 2019-09-12 13:40:58 -04:00
caheckman
66df643877 override check in deindirect 2019-09-10 15:54:04 -04:00
caheckman
4c3289f09f Use InjectPayload for segment ops 2019-08-29 14:17:02 -04:00
caheckman
0d058ec35c dont let subfunction parameter names override unaffected/input names 2019-08-29 14:06:47 -04:00
caheckman
06de0d46a0 Merge branch 'GT-3090_NearPointerResolve' into GT-3090_16bit_analysis 2019-08-27 14:40:16 -04:00
caheckman
d9ad00e9ca Move segmentop tag into the pspec 2019-08-27 14:35:44 -04:00
Ryan Kurtz
b40f4e120a Merge remote-tracking branch 'origin/GT-3085_SleighCollisionWarning' 2019-08-26 08:06:37 -04:00
caheckman
5944383088 Allow far pointer to near pointer truncations to display as cast 2019-08-23 13:03:26 -04:00
caheckman
4edff2b9f0 adjustments to resolveConstant 2019-08-23 13:03:26 -04:00
caheckman
612c0d6f3e name to address space map
shortcut to address space map
more adjustments to shortcuts
allow null AddrSpace pointer in raw baselist
holes in the space indices
almost working
GT-2873 decompiler, other, and overlays
GT-2873 added OTHER space to java sleigh compiler, fixed decompiler
exception
isOtherSpace method
isOtherSpace java, addressing code review comments
GT-2873 added null check in decompiler reset
GT-2873 code review changes
Read and write space_other tag in SLA files
Version number for .sla file
GT-2873 fixups after merge
GT-2873 renamed Sparc registers: OTHER->OTHERWIN, WINWSTATE->WSTATE
GT-2873 added option in AddressInput to control OTHER space visibility
GT-2873 OTHER space now global
GT-2873 fixing comments refering to decompiler code in BasicCompilerSpec
2019-08-22 12:30:18 -04:00
caheckman
576afa4088 print both colliding operands, command line option 2019-08-14 17:05:02 -04:00
caheckman
8cce24b334 basic detection of local collisions 2019-08-14 15:17:22 -04:00
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