Commit graph

120 commits

Author SHA1 Message Date
Ryan Kurtz
87b1dbb8dc Merge remote-tracking branch 'origin/patch' 2025-05-02 15:17:36 -04:00
ghidorahrex
a917cc0345 GP-5587: Corrected parsing of AARCH64 dsb instruction 2025-04-11 14:56:38 +00:00
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
d0fa5865c0 Merge remote-tracking branch 'origin/patch' 2025-03-04 13:06:23 -05:00
James
1bcc69aece GP-5402 aarch64 floating point comparisons and NAN 2025-03-04 09:20:45 -05:00
Ryan Kurtz
b7548c55cd Merge remote-tracking branch
'origin/GP-5286_ghidorahrex_PR-6470_Sleigh-InSPECtor_aa64_ldnr_regs'
(Closes #6470)
2025-02-13 14:06:10 -05:00
dev747368
2860c29383 GP-4870 add support for golang 1.23
Also fix namespace issue for interface, slices, ptrs, arrays, etc.Remove GoFuncID enum as it mutates between versionsFix stack storage logic for DWARF variables.
2024-12-26 18:26:48 -05:00
Ryan Kurtz
e1e54a4d89 GP-5182: The builtin int type in Swift binaries has been changed from 8
bytes to 4 bytes. The Swift Demangler now demangles the Swift.Int type
to __int64 (or __int32) to avoid conflicts with non-Swift structures and
functions that may be found in the program.
2024-12-09 16:58:19 -05:00
Ryan Kurtz
8cfb6dd9c7 Merge remote-tracking branch
'origin/GP-5051_Dan_qemuSysVsQemuUser--SQUASHED' (Closes #7095)
2024-12-04 10:59:49 -05:00
Dan
7dd417b6be GP-5051: Distinct qemu-system launcher. 2024-12-04 08:43:26 -05:00
James
cf16db25b4 GP-5154 added arm and aarch64 coff relocations 2024-12-03 08:49:07 -05:00
Ryan Kurtz
c00d6e0034 Merge remote-tracking branch 'origin/patch' 2024-11-22 10:33:17 -05:00
Ryan Kurtz
e7e8d533be GP-5153: The MS Common Object File Format (COFF) loader now recognizes
AARCH64 binaries
2024-11-22 10:29:25 -05:00
Ryan Kurtz
faf55a8de6 GP-5078: Improvements to Ghidra Module directory layout 2024-10-31 10:34:26 -04:00
Ryan Kurtz
8f03dc8145 Merge remote-tracking branch 'origin/patch' 2024-07-08 10:38:49 -04:00
ghizard
fdd8ff2391 GP-4752 - Change AARCH64 Windows cspec stack alignment from 4 to 8 2024-07-06 10:55:34 +00:00
ghidra1
1c7232d5a6 Merge remote-tracking branch
'origin/GP-4737_ghidra1_ElfArmHandleUnresolvedRelocSymbol'
(Closes #6673)
2024-07-01 13:40:19 -04:00
ghidra1
036ef9d0db GP-4737 - Improve ELF relocation handling of unresolved symbol 2024-07-01 13:06:54 -04:00
dev747368
560d5691a7 GP-4482 Golang 1.16 + 1.15 2024-05-29 19:04:27 +00:00
dev747368
31f4e55845 GP-0 fix DWARF and Golang register mapping info for AARCH64 2024-05-07 16:16:29 +00:00
dev747368
0054de4936 GP-4579 Add golang 1.22 2024-05-03 19:08:00 +00:00
Sleigh-InSPECtor
8473b248a1 AA64: fix ld<n>r registers 2024-04-30 15:43:55 +09:30
dev747368
63512f3759 GP-4465 get Golang analysis working on AARCH64, AppleSilicon + MachO
Inspired by PR #6157 (by seekbytes), adds support for Apple MachO AARCH64 binaries to existing golang analyzer.
2024-04-24 11:04:54 -04:00
Ryan Kurtz
894d55ccb4 Merge remote-tracking branch 'origin/GP-4513_emteere_WinAARCH64_chkstk' 2024-04-16 12:12:11 -04:00
emteere
aa035fa7be GP-4513 Simplified callfixup 2024-04-15 16:25:55 -04:00
Ryan Kurtz
bc035ba9c8 Merge remote-tracking branch 'origin/patch' 2024-04-12 13:46:17 -04:00
emteere
9c2b3670fa GP-4513 Added callfixup for __chkstk routine in windows AARCH64 binaries 2024-04-11 15:46:16 -04:00
ghidorahrex
4b00b140d7 GP-4499: Fixed AARCH64 ldst_wback subconstructor 2024-04-08 15:54:57 +00:00
ghidra1
01087ba0a8 GP-0 Minor revision to ELF relocation handlers 2024-04-01 17:09:44 -04:00
Ryan Kurtz
6b4f9b71b5 Merge remote-tracking branch 'origin/patch' 2024-04-01 11:18:56 -04:00
emteere
797d1b8103 GP-3917 Adding BTIc function start pattern for AARCH64 2024-03-20 16:24:06 -04:00
mumbel
9a22180efa Add issing ELF reloc 2024-03-05 22:19:27 -06:00
Dan
289c5c90fa GP-3838: Add qemu+gdb launcher. 2024-03-01 12:36:13 -05:00
Ryan Kurtz
f6fea70d7f Merge remote-tracking branch 'origin/GP-3535_ryanmkurtz_swift--SQUASHED' 2024-02-26 11:32:49 -05:00
Ryan Kurtz
32a0cf750b GP-3535: Improved Swift support 2024-02-26 11:31:24 -05:00
Ryan Kurtz
0820d96ec4 Merge remote-tracking branch 'origin/patch' 2024-02-15 11:45:24 -05:00
Ryan Kurtz
de2a5e03db Merge remote-tracking branch
'origin/GP-3851_ghidorahrex_AARCH64_pair_overwrite_fix--SQUASHED' into
patch (Closes #5791)
2024-02-15 11:37:26 -05:00
ghidorahrex
d812c6a43d GP-3851: Fixed aarch64 pair instructions to prevent overwrite 2024-02-14 17:06:32 -05:00
ghidra1
3ead54f0ac GP-4239 Transitioned to new AbstractElfRelocationHandler implementation which uses ElfRelocationType enums specific to each handler. 2024-02-12 10:52:25 -05:00
caheckman
191371675a GP-3938 PrototypeModel rules 2023-11-08 19:50:55 +00:00
ghidorahrex
3d1b865543 GP-3879: Implemented lzcount in several instructions 2023-11-03 12:30:51 -04:00
James
034a0b28ad change global ranges in cspecs
GP-3863 adjust AARCH64 volatile reg range
2023-09-22 09:24:14 -04:00
Ryan Kurtz
e142f2c522 Merge remote-tracking branch 'origin/patch' 2023-08-08 07:55:14 -04:00
ghidorahrex
2e650401d3 GP-3652: Added comments 2023-07-25 13:23:03 +00:00
Rubens Brandao
fb9ed7cc48 AARCH64 fcadd and fcmla export contants 2023-07-20 14:01:58 +00:00
Rubens Brandao
e0bd90eb7d Fix AARCH64 fcmla_rotate export len 2023-07-20 14:01:28 +00:00
Rubens Brandao
64551b3cca Fix AARCH64 fcadd_rotate export len 2023-07-20 14:00:45 +00:00
Ryan Kurtz
1e9fcddaa3 GP-3630: Adding support for Mach-O/DyldCache ARM64_32 processor.
Also, made other usability improvements to the DyldCacheLoader (options,
entry point, program tree)
2023-07-14 15:49:30 -04:00
ghidra1
855a607699 Merge remote-tracking branch 'origin/patch' 2023-06-12 20:31:15 -04:00
ghidorahrex
70a50dfcc2 GP-3478: Fixed registers in aarch64 neon mla instruction 2023-05-31 14:08:47 +00:00