Commit graph

770 commits

Author SHA1 Message Date
caheckman
784540f1c0 GP-4979 Better support for partial array optimizations 2024-10-28 19:34:30 +00:00
hippietrail
d28b139933 correct decendant/decendent/descendent in identifiers, errors, and comments 2024-10-28 23:48:28 +07:00
caheckman
e80f52c22e GP-4976 Only send back <typeref> 2024-10-08 20:21:52 +00:00
caheckman
5e75fb19e7 GP-4985 Check for overlapping structure fields and issue warnings 2024-10-07 19:22:54 +00:00
Ryan Kurtz
7c3868c00e Merge remote-tracking branch 'origin/GP-4715_RemoveRevisitedFix' into
patch (Closes #6488)
2024-10-01 08:48:25 -04:00
Ryan Kurtz
1c0396d590 Merge remote-tracking branch 'origin/GP-4899_DoNothingSwitchTarget' into
patch (Closes #6819)
2024-10-01 08:45:07 -04:00
Ryan Kurtz
12274256c0 Merge remote-tracking branch 'origin/GP-4960_ImpliedCoverFix' into patch
(Closes #6820)
2024-10-01 08:43:19 -04:00
caheckman
580226cfa0 GP-4899 Full check for switch target in isDoNothing 2024-09-30 23:02:15 +00:00
caheckman
4eef52216d GP-4960 Recursively walk implied Varnodes when building a Cover 2024-09-30 22:53:40 +00:00
caheckman
23d43b8167 GP-4715 SSA revisit MemRange 2024-09-30 22:36:53 +00:00
caheckman
b8656612cd GP-4972 Multiplier of 0 indicates no INT_MULT or PTRADD is present 2024-09-30 17:52:45 +00:00
caheckman
691137abc1 GP-4907 Multistage jumptable adjustment 2024-09-25 14:07:07 -04:00
Ryan Kurtz
fb6445277a Merge branch 'GP-4929_ryanmkurtz_PR-6890_wbierman_resolve_sleigh_uaf'
into Ghidra_11.2 (Closes #6890)
2024-09-13 11:54:07 -04:00
Ryan Kurtz
fe70b400b6 GP-4929: Certify 2024-09-13 11:51:28 -04:00
Bill Bierman
f56473e604 Use emplace instead of copy constructor 2024-09-12 07:07:24 -10:00
Bill Bierman
37838c180a Corrected use after free vulnerability in Sleigh decompiler backend 2024-09-06 08:49:10 -10:00
caheckman
8ab71bb73c GP-4890 Add support for mixed size extensions in cancelExtensions 2024-09-06 15:22:40 +00:00
Ryan Kurtz
e0bf7b4c53 Merge remote-tracking branch 'origin/GP-4887_NearestArrayBug' 2024-09-03 06:39:39 -04:00
caheckman
f703538ce1 GP-4887 Adjustments to nearestArrayedComponent 2024-08-30 23:30:27 +00:00
caheckman
e5969a613c GP-4871 Don't ignore signed to unsigned integer casts for
FLOAT_INT2FLOAT
2024-08-30 18:47:34 +00:00
Ryan Kurtz
62d0682d04 Merge remote-tracking branch 'origin/GP-4849_RegisterVolatile'
(Closes #6755)
2024-08-28 07:43:58 -04:00
caheckman
e1cc67a3d2 GP-4849 Volatile attribute in <register> tag. 2024-08-27 21:03:10 +00:00
Ryan Kurtz
05c1e55647 Merge remote-tracking branch 'origin/GP-4859_RuleOrCompare'
(Closes #6578)
2024-08-26 14:34:56 -04:00
Ryan Kurtz
aac3e5ad1c Merge remote-tracking branch 'origin/GP-4782_PtrsubUndo' 2024-08-26 12:35:12 -04:00
caheckman
a31c4033a8 GP-4859 RuleOrCompare 2024-08-26 16:34:18 +00:00
Ryan Kurtz
bc1f6b38be Merge remote-tracking branch 'origin/GP-4790_CopyForceForm' 2024-08-26 12:31:44 -04:00
caheckman
2ef83410be Merge branch
'GP-0_caheckman_PR-6578_LukeSerne_decomp-rule-int-or-zero-compare' into
GP-4859_RuleOrCompare
2024-08-20 15:45:19 +00:00
caheckman
614f20cfa3 GP-4790 Collapse double precision COPY to address forced storage 2024-08-16 16:26:52 +00:00
caheckman
34adcff830 GP-4782 Refactor RulePtrsubUndo 2024-08-16 15:56:39 +00:00
caheckman
520dc99b11 GP-2559 Calculate maximum precision reaching floating-point operations 2024-08-14 17:19:05 +00:00
emteere
bceb82f733 GP-4742 Added addr='next' to pspec labels. Constrained address spaces for heuristic references 2024-07-29 17:46:50 -04:00
caheckman
9a416877e8 GP-4733 Heap strings 2024-07-22 16:11:58 +00:00
Ryan Kurtz
71fbe5c376 Merge remote-tracking branch 'origin/patch' 2024-07-10 10:12:28 -04:00
caheckman
7198cad876 Clear fake inputs prior to restructureVarnode 2024-06-18 18:41:12 +00:00
Ryan Kurtz
22bd5e2d3c Merge remote-tracking branch 'origin/GP-3307_StackStrings'
(Closes #1380, Closes #2285, Closes #6592, Closes #6431)
2024-06-17 06:47:08 -04:00
caheckman
b650848848 GP-4688 Tighter checks on NaN expression truncation 2024-06-14 00:56:47 +00:00
Ryan Kurtz
4816e3945f Merge remote-tracking branch 'origin/GP-4684_caheckman_PR-6540_LukeSerne_decomp-fix-subflow-float-less-input-order' 2024-06-12 11:17:21 -04:00
Ryan Kurtz
9e7a5d8b0c Merge remote-tracking branch 'origin/patch' 2024-06-12 11:16:47 -04:00
Ryan Kurtz
001a65357c Merge remote-tracking branch 'origin/GP-4666_DeindirectOutput' into patch 2024-06-12 11:13:52 -04:00
Ryan Kurtz
6ede2b498f Merge remote-tracking branch 'origin/GP-4582_SwitchGotoLoop' into patch
(Closes #6282)
2024-06-12 11:12:16 -04:00
caheckman
464e33cf08 GP-4582 Make sure newBlockMultiGoto preserves any self edge 2024-06-11 19:09:46 +00:00
caheckman
a67e80c286 GP-4672 Set correct INDIRECT flags during SplitFlow 2024-06-11 18:51:46 +00:00
caheckman
ad3210bd1c GP-4666 Fix for deindirect with multiple output pieces 2024-06-11 18:09:47 +00:00
caheckman
5604178194 GP-3307 Stack strings 2024-06-11 17:41:06 +00:00
Luke Serné
c79c9606bc Decompiler: Simplify comparisons between INT_OR and zero.
At -O1, gcc combines several values that all need to be compared against zero by
combining them using `INT_OR` and only comparing the combined result against
zero. With this rule, the decompiler is able to break these `INT_OR` chains
apart and simplify the individual links.
2024-05-25 14:10:05 +02:00
ghidra1
75a86e51c9 Merge remote-tracking branch 'origin/GP-0_SeparatorFix' 2024-05-20 15:12:14 -04:00
Luke Serné
318e4af955 Decompiler: Fix float comparison inputs swap in rule subflow_convert
The decompiler rule `subflow_convert` would sometimes swap the inputs
to the P-Code ops `FLOAT_LESS` and `FLOAT_LESSEQUAL` if the float that
was traced happened to be the second input of the operation, because
the transformed operation had its inputs hardcoded: the traced float
would always be the first input. While this also affected `FLOAT_EQUAL`
and `FLOAT_NOTEQUAL`, it does not matter in those cases, because
swapping the inputs for those operations is still logically equivalent.

Fixes #6528.
2024-05-19 23:03:42 +02:00
ghidra1
5aafab9ce7 Merge remote-tracking branch 'origin/GP-4566_SwitchIndirectSplit' 2024-05-02 20:05:43 -04:00
caheckman
05818c5c3a GP-4370 Internal Storage 2024-05-02 15:13:32 +00:00
caheckman
d7613fc7b6 GP-4566 Adjustment to protectSwitchPath 2024-04-29 23:53:51 +00:00