Commit graph

7487 commits

Author SHA1 Message Date
dev747368
36c6c8ef77 GP-2432 golang api snapshot, generics, closures, gcwritebarrier
Apply golang runtime function signatures from info stored in json api
snapshot files.

The api snapshot files are created by a custom go helper program that
uses the go compiler parser to parse the go toolchain source tree and
writes the discovered function and type info into a json file.

The go-api-parser helper program is based off of work contributed by
github user monoidic via issue #6367.

Updates generic functions to take a generic dictionary RTTI
parameter (mostly to allow correct assignment of other parameters).

Updates closure functions to take a closure context parameter.  Closure
contexts are passed via a register that is not involved in normal
parameter passing.

Tweaks the signature of gcWriteBarrier functions so that they don't mess
up decompilation of functions that use them.
2025-03-07 16:44:48 +00:00
Ryan Kurtz
99eaf163ca Merge remote-tracking branch
'origin/GP-5414-dragonmacher-decompiler-hl-fix--SQUASHED' (Closes #7527)
2025-03-05 10:32:29 -05:00
Ryan Kurtz
7bbbc20cdf Merge remote-tracking branch 'origin/GP-4393_ghidragon_add_hover_to_show_symbol_source--SQUASHED' 2025-03-05 10:25:28 -05:00
Ryan Kurtz
6a8724a984 Merge remote-tracking branch 'origin/patch' 2025-03-05 10:24:32 -05:00
Ryan Kurtz
22f733c19e Merge remote-tracking branch
'origin/GP-5451_ghidra007_removedOldGccRTTIAnalysisScript'
(Closes #7871)
2025-03-05 10:02:42 -05:00
Ryan Kurtz
825b6754f1 GP-0: Improving Mach-O loader progress messages (#7863) 2025-03-05 09:48:19 -05:00
dragonmacher
99659967e2 GP-5414 - Decompiler - Updated highlighting to ignore syntax tokens 2025-03-04 17:26:33 -05:00
ghidragon
2a1a158578 GP-4393 add hover to show symbol source type 2025-03-04 16:17:03 -05:00
ghidra007
2e26a0db35 GP-5451 removed old GCCRTTIAnalysisScript because
RecoverClassesFromRTTIScript has the latest Gcc class recovery
mechanisms in it.
2025-03-04 19:26:26 +00:00
Ryan Kurtz
802586c6fb Merge remote-tracking branch 'origin/GP-5408_ghizard_Rework_hierarchical_class_layout_and_vxt_understanding--SQUASHED' 2025-03-04 14:01:01 -05:00
ghizard
380a0dbe69 GP-5408 - C++ and PDB - rework hierarchical class layout and VxTable understanding 2025-03-04 13:50:28 -05:00
Ryan Kurtz
6d4f6e0854 Merge branch 'GP-0_ryanmkurtz_PR-7877_bmacphee_dyld-addend-mask-fix' 2025-03-04 13:15:51 -05:00
Ryan Kurtz
6d7f8a0b5e GP-0: Certify 2025-03-04 13:14:36 -05:00
Brad MacPhee
fdc3dd080a
DyldChainedImport: fix offset mask bug
fix name_offset extraction to support values stored in the high 32 bits that are larger than 2G (highest bit set)

this bug may not occur in practice, but is easy to prevent by using a long literal for the masking, rather than integer
2025-03-04 13:39:37 -04:00
Ryan Kurtz
4cf5d25bc8 Merge remote-tracking branch 'origin/GP-4555_GhidraKraken_DialogNames' 2025-03-04 12:21:45 -05:00
Ryan Kurtz
87a7caa90c Merge remote-tracking branch 'origin/GP-5430_ghidra007_ImageRuntimeFunctionEntryChange--SQUASHED' 2025-03-04 12:20:09 -05:00
Ryan Kurtz
1e18516eb5 Merge remote-tracking branch
'origin/GP-5440_ghidragon_fixing_nav_history_when_repeating_mem_search'
(Closes #7445)
2025-03-04 12:18:34 -05:00
ghidra007
a19d6ab459 GP-5430 Updated the PE ImageRuntimeFunctionEntry structures to make EndAddress a Dword since it is really the address after the end of the given function and was causing bad references and code to be created. 2025-03-04 16:49:31 +00:00
Ryan Kurtz
66ac37b368 Merge branch 'GP-0_ryanmkurtz_PR-7875_XeR_memory-map' 2025-03-04 10:33:46 -05:00
Ryan Kurtz
9515da9b19 Merge remote-tracking branch 'origin/GP-5441_ryanmkurtz_dyld-archs'
(#7863)
2025-03-04 10:03:33 -05:00
XeR
c7336e8d19 Memory Map: ensure columns exist on initialization
The Memory Map plugin configures the maximum and minimum size of some of
the columns.

This initialization does not take into account that a user is able to
hide columns, which results in a null pointer exception.

This commit checks that these objects are not null before configuring
them.

Fixes: f4b89fd26c ("GP-4984 - Fixed row selection while using the filter; updated columns to be resizable")
2025-03-04 12:40:05 -01:00
Ryan Kurtz
17910774cd GP-5429: Support for Mach-O LC_REEXPORT_DYLIB 2025-03-04 06:25:58 -05:00
emteere
208f6f3ed1 GP-5411 Added plt thunk patterns, pre-fill of edit thunk GUI, loosened
thunk address calculation for more complicated thunks
2025-03-03 22:37:45 +00:00
GhidraKraken
6121818cd3 GP-4555 set accessible names for components 2025-03-03 15:24:58 -05:00
Ryan Kurtz
9890a88911 GP-5441: Don't try to load libraries from dyld_shared_cache files of
wrong architecture...waste of memory
2025-03-03 13:55:58 -05:00
ghidragon
bc2f0c135e GP-5440 fixed action Repeat Memory Search (F3) to update navigation
history
2025-03-03 13:34:20 -05:00
Ryan Kurtz
136a944796 Merge remote-tracking branch 'origin/GP-2148_ghidragon_change_byteviewer_to_center_when_goto_is_offscreen' 2025-03-03 13:10:29 -05:00
Ryan Kurtz
e08184f5db Merge remote-tracking branch 'origin/patch' 2025-03-03 13:07:03 -05:00
Ryan Kurtz
32a287aab8 Merge remote-tracking branch 'origin/GP-5416_Dan_terminalScrollingOnSelect' into patch 2025-03-03 13:01:35 -05:00
ghidragon
49d9afdbfb GP-2148 changed Byteviewer to center cursor on screen when jumping to
offscreen location to be consistent with listing
2025-03-03 11:57:42 -05:00
Ryan Kurtz
3d7089d391 Merge remote-tracking branch
'origin/GP-5310_ghidragon_search_and_replace--SQUASHED'
2025-03-03 06:23:24 -05:00
Ryan Kurtz
7475ff424c Merge remote-tracking branch
'origin/GP-5428_ghidragon_scripts_menu--SQUASHED' (#7521)
2025-03-03 06:18:56 -05:00
ghidragon
9a973787dc GP-5428 - Scripts without menu paths are put into default menu when added to tool 2025-02-28 20:09:57 -05:00
ghidragon
6fb115358a GP-5310 Created global search and replace feature 2025-02-28 20:08:40 -05:00
Ryan Kurtz
f1dcb64e22 Merge remote-tracking branch 'origin/patch' 2025-02-28 16:38:51 -05:00
Ryan Kurtz
3ed75673dd Merge remote-tracking branch 'origin/GP-5422_ghidra007_RTTIUtil_fixReplaceTickIssue' into patch 2025-02-28 16:35:59 -05:00
Dan
183b862e14 GP-5416: Fix annoying Terminal scrolling when selecting. 2025-02-28 19:45:14 +00:00
Ryan Kurtz
507d5cfbea Merge remote-tracking branch 'origin/patch' 2025-02-28 11:05:29 -05:00
ghidra1
be2381e5cb Corrected BitFieldEditorPanel NPE when getActionContext invoked with
null event.
2025-02-28 08:55:15 -05:00
ghidra007
9bc59fa383 GP-5422 fix RTTIAnalyzer replace tick after just removed issue 2025-02-26 18:48:10 +00:00
Ryan Kurtz
56867a2696 Merge remote-tracking branch 'origin/GP-5388_James_bsim_feature_visualizer_option_improvement--SQUASHED' 2025-02-26 12:45:51 -05:00
dragonmacher
b04ff770b3 Test fixes 2025-02-26 12:42:09 -05:00
James
3d09c029cd GP-5388 use drop-down in bsim feature visualizer options 2025-02-25 12:46:51 -05:00
Ryan Kurtz
cc1228bdaa Merge remote-tracking branch 'origin/GP-1-dragonmacher-project-open-tree-fix--SQUASHED' 2025-02-25 11:57:44 -05:00
Ryan Kurtz
22a4de14ea GP-0: OMF-51 improvements 2025-02-25 09:35:32 -05:00
dragonmacher
1d5da6dae1 Fixed open program dialog to not repeatedly load the root node 2025-02-25 09:14:56 -05:00
Ryan Kurtz
a60ef336ea Merge remote-tracking branch 'origin/patch' 2025-02-25 07:06:13 -05:00
ghidra1
0fc1805695 GP-5412 Corrected structure editor transaction error 2025-02-24 17:13:00 -05:00
Ryan Kurtz
93c19e3cc6 GP-5396: Fixing a recent regression in DyldChainedFixups.java 2025-02-24 05:49:10 -05:00
James
aa68aec59d GP-5255 source file transform file chooser 2025-02-21 09:38:20 -05:00