Commit graph

712 commits

Author SHA1 Message Date
Ryan Kurtz
12274256c0 Merge remote-tracking branch 'origin/GP-4960_ImpliedCoverFix' into patch
(Closes #6820)
2024-10-01 08:43:19 -04:00
caheckman
4eef52216d GP-4960 Recursively walk implied Varnodes when building a Cover 2024-09-30 22:53:40 +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
caheckman
2e0d6952fb GP-4541 Apply nolocalalias to STORE indirects 2024-04-26 23:48:59 +00:00
caheckman
3c3591f6dc GP-4514 Add check preventing multiple unlabeled switch targets 2024-04-15 19:36:38 +00:00
caheckman
4bbbba3e5a GP-4300 Full extended division in optimized division rules 2024-04-10 19:19:08 +00:00
Ryan Kurtz
42c17a20f8 Merge branch 'GP-0_ryanmkurtz_PR-5262_mehmooda_emulate' (Closes #5262,
Closes #6290, Closes #6292, Closes #5917)
2024-04-01 14:33:20 -04:00
Ryan Kurtz
1c0fc88c45 Merge branch 'GP-0_ryanmkurtz_PR-6276_ekilmer_fix-sleighexample' 2024-04-01 14:26:12 -04:00
Ryan Kurtz
84548843df Merge branch 'GP-0_ryanmkurtz_PR-6372_ekilmer_cpp-open-binary-files' 2024-04-01 14:19:06 -04:00
Ryan Kurtz
affdba0901 Merge branch 'GP-0_ryanmkurtz_PR-5382_ekilmer_fix-asan-initialize-order-fiasco' 2024-04-01 14:11:52 -04:00
Eric Kilmer
e18b424b02
decompiler-cpp: Open sla files as 'binary'
Compressed files need to be opened as binaries when reading. Fixes
opening sla files on Windows.
2024-04-01 12:28:28 -04:00