Commit Graph

10584 Commits

Author SHA1 Message Date
Ryan Kurtz
4b29da57dc Merge remote-tracking branch 'origin/GP-4337_ryanmkurtz_demangler-null-monitor' 2024-03-21 08:42:45 -04:00
Ryan Kurtz
9736569422 Merge remote-tracking branch 'origin/GP-4341_ghidra1_VersioningRestrictions--SQUASHED' 2024-03-21 08:05:55 -04:00
Ryan Kurtz
bb933e2e0f GP-4337: Fixing "null" demangler name in monitor 2024-03-21 08:04:51 -04:00
ghidra1
4348e80f71 GP-4449 corrected manner in which BSim sets log4j config 2024-03-20 18:48:14 -04:00
ghidra1
2dff876f0f GP-4341 Force retained checkout if file is in-use during checkin or add-to-version-control. Deprecated upgrade concept during checkin. Revised manner in which file open for update is updated following a version control operation (perform DBHandle update). 2024-03-20 17:43:49 -04:00
ghidra1
07389e697b GP-4434 corrected issues related to return/param commit action within decompiler 2024-03-20 17:41:22 -04:00
ghidra1
41712078e2 GP-4403 Use OpenMode enum instead of DBConstants integer value. Disallow transactions when using immutable DomainObject (implemented for ProgramDB and Datatype Archives). 2024-03-20 17:37:14 -04:00
d-millar
918d38c468 GP-4441: new option for target remote
GP-4441: post-review edits
GP-4441: first pass
GP-4441: working remote gdb/lldbGP-4441: updated via 4437GP-4441: embedded updatesGP-4441: set arch conditionally
2024-03-20 15:24:04 -04:00
Ryan Kurtz
568ebd45ef Merge remote-tracking branch 'origin/GP-4391_ryanmkurtz_lzfse--SQUASHED' 2024-03-20 13:41:21 -04:00
ghidra1
093ff78316 GP-4449 Removed log4j-jcl jar dependency. Updated postgresql JDBC
driver to 42.6.2.
2024-03-20 13:40:12 -04:00
Ryan Kurtz
0d2ed82809 GP-4391: Adding LZFSE GFileSystem 2024-03-20 13:39:37 -04:00
Ryan Kurtz
211e15bef5 Merge remote-tracking branch 'origin/patch' 2024-03-20 13:16:06 -04:00
mumbel
83b45b995c MIPS patterns
sync possible function start with function start
correct bit pattern for all bits in instr_index
2024-03-20 13:11:20 -04:00
Ryan Kurtz
f034eca003 GP-0: Fixing build 2024-03-20 08:21:23 -04:00
Ryan Kurtz
75694f303e Merge remote-tracking branch 'origin/GP-4437_d-millar_remote_gdb--SQUASHED' 2024-03-19 12:22:14 -04:00
Ryan Kurtz
433451d4ad Merge remote-tracking branch 'origin/GP-4389_Dan_fixLldbTraceRmi--SQUASHED' 2024-03-19 12:17:59 -04:00
Tiago Gasiba
e7aabddb34 Add support for FreeBSD ARM 64bit (no debugger support) 2024-03-19 14:32:47 +01:00
d-millar
7d1c708b62 GP-4437: per-review fixes
GP-4437:  minor edit
GP-4437: added launcher
2024-03-18 18:57:46 -04:00
James
000085a82f add/subtract with carry tweaks 2024-03-18 21:53:05 +00:00
James
68270ac6d9 minor tweaks 2024-03-18 17:14:15 +00:00
Ryan Kurtz
434c3f315d Merge remote-tracking branch 'origin/GP-4428_ghizard_add_method_to_DataTypeNamingUtil_to_get_String_rep_of_mangled_name_without_renaming--SQUASHED' 2024-03-18 07:25:43 -04:00
Ryan Kurtz
8bfc5fd375 Merge remote-tracking branch 'origin/GP-4350_d-millar_backport_gdb_traceRMI--SQUASHED' 2024-03-18 07:23:54 -04:00
d-millar
f2319e61be GP-4350: more review-related changes
GP-4350: attempted fix for expression-based bpts
GP-4350: working for at least 8+
GP-4350: fix for f.level (working for 10+)
GP-4350: good for 11+
GP-4350: good for 11+
2024-03-15 19:16:25 -04:00
flk0
3c11e8f59f Correct errors in the MSP430 SLEIGH specification
This patch modifies the SLEIGH specification of MSP430 (but not the MSP430X extension) to produce pcode that more accurately reflects the actual behaviour of the instruction set. These changes were derived by testing the Ghidra emulation of MSP430 instructions against the behaviour of an MSP430FR5994 dev board.

The changes include:
    Unaligned (odd) word memory accesses and writes now properly round down rather than accessing unaligned memory. This affects instructions that depend on the stack pointer, which can be misaligned.

    The PC register can now never become misaligned (it's low bit is effectively zero).

    Accesses of the PC register now properly reflect the address of the next instruction.

    Instructions that use the status register (SR) as a general source register have been modified to prevent changes to the status codes (embedded in SR) to clobber the value of SR prior to its use in the operation. There is more work to be done to correct the behaviour of instructions where SR is used as the destination register.

    Instructions of the form MNEM @reg+ X(reg) where the source and dest use the same register now accurately reflect the source increment in the calculation of the dest value. [These instruction behaves as: fetch source, increment source, fetch dest]

    The implementation of the V flag for ADDC, SUBC, and related emulated instructions now reflects comparing the src and dest signs (without the carry) with the result sign (which includes the carry). [The original implementation adds the carry to either the source or dest prior to scarry]

    Added an implementation of the decimal add instructions that may be clunky, but accurately performs the operations.

    The RRC instruction now clears the V flag.

    A new table has been added for single operand instructions, as tbl_bzero was incorrectly applied (single operand instructions use the as (not ad) token for the dest).

    The carry flag was inverted for DEC and DECD.

    Corrections for corner case instructions: PUSH/POP SP, PUSH/CALL X(SP), BR @reg+.
2024-03-15 20:00:10 +00:00
ghizard
36bdf99c4f GP-4428 - Add method to get mangledFunctionName without renaming a function 2024-03-15 14:08:30 -04:00
ghidra1
74a5b6f0e1 GP-0 Corrected VersionTracking related test failures 2024-03-14 16:21:03 -04:00
Ryan Kurtz
f14702e761 Merge remote-tracking branch 'origin/GP-1-dragonmacher-toolbar-action-fix' 2024-03-14 12:56:17 -04:00
Ryan Kurtz
86b7d45ba8 Merge remote-tracking branch 'origin/patch' 2024-03-14 12:53:10 -04:00
Ryan Kurtz
26d3a2bc79 Merge remote-tracking branch 'origin/GP-0-dragonmacher-test-fixes-3-14-24' into patch 2024-03-14 12:49:43 -04:00
Ryan Kurtz
786efaf0a0 Merge remote-tracking branch 'origin/GP-4419_ghidorahrex_ppc_lwax_fix' into patch 2024-03-14 12:48:00 -04:00
dragonmacher
59e103ec2c Test fixes 2024-03-14 12:42:09 -04:00
Ryan Kurtz
85732bd6e0 Merge remote-tracking branch 'origin/GP-0-dragonmacher-screenshot-fix' 2024-03-14 12:33:53 -04:00
dragonmacher
8447a61821 Fixed screenshot stack trace 2024-03-14 12:27:41 -04:00
Ryan Kurtz
1d52fdbdc6 GP-3770: Adding files __BRANCH_STUBS and __BRANCH_GOTS to
MachoFileSetFileSystem
2024-03-14 10:55:32 -04:00
Ryan Kurtz
43c6f6897a Merge remote-tracking branch
'origin/GP-0_dev747368_fix_dwarf5_unitheader_npe_and_implicit_value'
(Closes #6312)
2024-03-14 06:14:33 -04:00
dragonmacher
6eca948b8d Fixed bug related to focus when a combo box being the first component in
a component provider
2024-03-13 20:35:57 -04:00
ghidra007
a5a4da216e GP-4085 Improved AutoVersionTrackingScript script to accomodate new
versioned session capability.  Added script to enable adding of vt
session to version control. Added help for shared project use of
VTSession.
2024-03-13 15:40:27 -04:00
ghidra1
c3386b72a2 GP-4085 Added ability to add VTSession to a shared repository 2024-03-13 15:40:23 -04:00
dev747368
10c4a59550 GP-0 fix DWARF NPE when .debug_info is 0-padded, DW_FORM_implicit
Fix NPE when null unitHeader (indicating trailing 0-padding was
encountered), and fixed DW_FORM_implicit / DW_FORM_indirect typo in
DWARFAttributeDef read().
2024-03-13 18:24:14 +00:00
Ryan Kurtz
b8f004c792 Merge remote-tracking branch 'origin/GP-0_ghidragon_text_fixes' 2024-03-13 13:01:40 -04:00
ghidragon
2b7821d956 GP-0 fixing test failures related to GP-4275 2024-03-13 12:59:48 -04:00
caheckman
fee5d0e13c Always use local zlib.h 2024-03-13 16:11:26 +00:00
Ryan Kurtz
362f571b19 Merge remote-tracking branch 'origin/patch' 2024-03-13 09:41:45 -04:00
Ryan Kurtz
9a990e536c Merge remote-tracking branch 'origin/GP-4418_ghidorahrex_PR-5756_esaulenka_fix_Tricore_DEXTR' into patch 2024-03-13 09:34:16 -04:00
Ryan Kurtz
647bc541e5 Merge remote-tracking branch 'origin/patch'
Conflicts:
	Ghidra/Features/VersionTracking/src/main/java/ghidra/feature/vt/gui/provider/matchtable/VTMatchTableProvider.java
2024-03-13 09:27:48 -04:00
Ryan Kurtz
f31f7efccf GP-4309: Fixing deprecated version number 2024-03-13 09:14:40 -04:00
Ryan Kurtz
1d0142af10 Merge remote-tracking branch 'origin/GP-4309-dragonmacher-headless-property-editors--SQUASHED' into patch 2024-03-13 09:11:32 -04:00
Ryan Kurtz
f5ed1128aa Merge remote-tracking branch 'origin/GP-4245_ghizard_Split_PDB_Universal_Analyzer_into_multiple_phases' 2024-03-13 09:07:28 -04:00
ghidra1
193e7221fd Merge remote-tracking branch 'origin/patch' 2024-03-13 09:04:01 -04:00
Ryan Kurtz
524dd901c5 Merge remote-tracking branch 'origin/GP-4397_ghidra1_ElfPPC_ADDR16_LO_HA' into patch 2024-03-13 08:32:20 -04:00
Ryan Kurtz
f13025d426 Merge remote-tracking branch
'origin/GP-3770_ryanmkurtz_fileset-fs--SQUASHED' (Closes #4827)
2024-03-13 07:33:33 -04:00
Ryan Kurtz
d73e871360 GP-3770: New GFileSystem for Mach-O LC_FILESET_ENTRY 2024-03-13 07:30:31 -04:00
Ryan Kurtz
e07abfee21 Merge remote-tracking branch 'origin/GP-0_d-millar_fix_for_SARIF_stack_trace' 2024-03-13 06:58:25 -04:00
ghidra1
f1bcb3151f GP-0 fix COFF relocation error handler 2024-03-12 17:58:49 -04:00
d-millar
4fa8c5070f GP-0_d-millar: fix for stack trace when testing 2024-03-12 21:19:40 +00:00
dragonmacher
21a25f5192 GP-4426 - Fixed exception in the Structure Editor when searching while some columns have been removed 2024-03-12 16:07:10 -04:00
dragonmacher
cabeaf3c1b GP-4309 - Updated Options API to defer Swing PropertyEditor construction 2024-03-12 15:19:15 -04:00
ghizard
76994b47a1 GP-4245 - Split PDB Universal Analyzer into multiple phases with
analyzer state
2024-03-12 15:10:10 -04:00
ghidra1
ab6d50cab0 GP-4425 added missing COFF machine ID 2024-03-12 15:02:13 -04:00
Ryan Kurtz
8746542a86 Merge remote-tracking branch 'origin/GP-4321-dragonmacher-table-copy-fix--SQUASHED' 2024-03-12 13:41:36 -04:00
Ryan Kurtz
18b7b8ba42 Merge remote-tracking branch 'origin/GP-4383_ghizard_PDB_general_cleanup_and_alignment--SQUASHED' 2024-03-12 13:40:09 -04:00
Ryan Kurtz
c8c4c43794 Merge remote-tracking branch 'origin/GP-4275_naming_components_for_accessibility--SQUASHED' 2024-03-12 13:36:43 -04:00
Ryan Kurtz
fdf82166af Merge remote-tracking branch 'origin/GP-0_dev747368_tweak_golang_analyzer_name' 2024-03-12 13:34:37 -04:00
ghidragon
5bca2c75c7 GP-4275 Set accessible names of focusable components in component providers 2024-03-12 12:27:12 -04:00
dragonmacher
4fb8950285 GP-4321 - Fixed 'Copy Columns...' action in tables 2024-03-12 12:16:59 -04:00
dev747368
97ecf95aa2 GP-0 tweak golang analyzer name / description 2024-03-12 15:42:42 +00:00
ghizard
0d68aab0a8 GP-4383 - PDB - Changes to MultiphaseResolver and IOException propagation; extract ClassFieldAttributes from CppCompositeType 2024-03-12 11:27:13 -04:00
Dan
eaf802819c GP-0: Fix inverted range 2024-03-12 08:56:23 -04:00
dev747368
f17ebb78ab GP-2798 initial DWARF5 support
Adds support for simple DWARF5 debug info.  Split .dwo not supported.

Uses bookmarks to tag problematic issues instead of log messages during import.
2024-03-11 16:26:06 +00:00
ghidorahrex
18b1d5b6a1 GP-4419: Fixed pcode for ppc lwax instruction 2024-03-11 15:50:45 +00:00
Dan
973b9a8d4c GP-4389: Fixes for Trace RMI lldb on macOS
Create local-lldh.sh launch script
Upgrade to JNA-5.14
Fix pty IOCTL numbers for macOS
Fix compile-spec mapping
Improv error report / clean-up after launch failure.
Write ERROR state on memory read failures
Convert Python exceptions to LLDB command errors
2024-03-11 10:14:40 -04:00
Ryan Kurtz
204081db01 Merge branch 'GP-4417_ryanmkurtz_PR-6302_iflan_fix-macho-import'
(Closes #6302)
2024-03-11 08:27:34 -04:00
Ryan Kurtz
f86b75bf68 GP-4417: Additional fix for Mach-O .dSYM/DWARF files 2024-03-11 08:21:29 -04:00
ghidra1
445494ba25 GP-4390 Collapse DomainObject Undoable interfaces and refactor Command processing. 2024-03-08 13:05:36 -05:00
Ryan Kurtz
136b933af2 Merge remote-tracking branch 'origin/GP-1625_Dan_memoryBytesBorders--SQUASHED' 2024-03-08 12:59:59 -05:00
Ian Flanigan
2eb58ae839
Fix Mach-O import when no segment contains the header
Certain Mach-O files don't have a segment that contains the header.
In this case, `MachoProgramBuilder.setupHeaderAddr` is supposed to
create an area in the "OTHER" address space for the header.
`setupHeaderAddr` keeps track of the lowest file offset for each
segment that it looks at to find the one with the lowest start
address.  It then adds the "HEADER" memory block as 0 to the lowest
start address.

Before, if there were any segments that were
empty (`segment.getFileOffset() == 0 && segment.getFileSize() == 0`),
then `setupHeaderAddr` would mistakenly set the lowest start address
to 0 instead of ignoring the segment.  This would cause
`MemoryMapDB.checkFileBytesRange` to throw an
`IllegalArgumentException`.

With this change, `setupHeaderAddr` ignores empty segments.

This change passes all of the unit and integration tests.  There are
no explicit tests for `MachoProgramBuilder`.
2024-03-08 18:54:31 +01:00
Dan
8e3f97056b GP-1625: Improve consistency of DebuggerMemoryBytesProvider 2024-03-08 12:36:17 -05:00
William Tan
2428fc5b04
add dwarf register mapping for sparc 2024-03-08 10:45:06 -05:00
Ryan Kurtz
812d47c6ac Merge remote-tracking branch
'origin/GP-3110_emteere_PR-1449_mumbel_tricoreanalyzer' (Closes #1449)
2024-03-08 09:05:51 -05:00
Ryan Kurtz
e1054e0bc9 Merge remote-tracking branch
'origin/GP-4381_ghidorahrex_PR-6266_AltimorTASDK_x86_FDIVP_fix'
(Closes #6266)
2024-03-08 09:03:08 -05:00
Ryan Kurtz
cba4f432c7 Merge remote-tracking branch 'origin/GP-4402_ghidra1_InvalidAddressRanges' 2024-03-08 08:57:56 -05:00
Ryan Kurtz
4e8a0c301c Merge remote-tracking branch
'origin/GP-4072_Dan_moduleMapProposals--SQUASHED' (Closes #5994)
2024-03-08 08:56:12 -05:00
Ryan Kurtz
1cc9abad50 Merge remote-tracking branch 'origin/patch' 2024-03-08 08:54:02 -05:00
Ryan Kurtz
07578fe327 Merge remote-tracking branch 'origin/GP-1791_ghidorahrex_ARM_custom_datapath_extension--SQUASHED' into patch 2024-03-08 08:49:04 -05:00
Ryan Kurtz
e16618583f Merge remote-tracking branch 'origin/GP-4369_SwitchPath' into patch 2024-03-08 08:29:22 -05:00
emteere
a8ed3df3a9 GP-3110 missed breaks 2024-03-07 19:09:00 -05:00
emteere
03d4545336 GP-3110 Code review changes 2024-03-07 18:50:44 -05:00
Dan
9f5bfd4c53 GP-4072: Ignore artificial blocks when mapping modules. 2024-03-07 14:22:58 -05:00
ghidorahrex
f35073e033 GP-1791: Added ARM Custom Datapath Extension 2024-03-07 13:59:33 -05:00
Ryan Kurtz
9a7ab128df Merge remote-tracking branch 'origin/GP-4364_emteere_SwitchCallotherOptimization--SQUASHED' 2024-03-07 13:06:43 -05:00
emteere
e9578d74c3 GP-4364 Removing calls to decompiler to recover switches that are unrecoverable due to callother psuedo-ops 2024-03-07 12:42:15 -05:00
emteere
902bcb69a2 GP-3110 fixing minor compilation issues and certification 2024-03-07 11:16:42 -05:00
Ryan Kurtz
14177c5374 Merge remote-tracking branch 'origin/patch' 2024-03-07 09:27:31 -05:00
Ryan Kurtz
50df70ba0f Merge remote-tracking branch 'origin/GP-4392_Dan_gdbConPtyAnsiParsing'
into patch (Closes #6107)
2024-03-07 09:25:11 -05:00
Ryan Kurtz
a8a5f48d2d Merge remote-tracking branch
'origin/GP-4386_ghidra1_ProjectArchiveNullFileID--SQUASHED' into patch
(Closes #6254, Closes #6206)
2024-03-07 09:22:08 -05:00
Ryan Kurtz
5ecf3a1436 Merge remote-tracking branch 'origin/GP-4376_EmitMarkupDebug'
(Closes #5860)
2024-03-07 09:17:47 -05:00
Ryan Kurtz
df29f50fa3 Merge remote-tracking branch 'origin/GP-3891_gdbWineLauncher--SQUASHED' 2024-03-07 09:15:44 -05:00
Ryan Kurtz
c3c34ebf10 Merge remote-tracking branch 'origin/GP-4125_ghidra1_ArtificialBlockAttribute--SQUASHED' 2024-03-07 08:50:41 -05:00
Dan
113657e8b9 GP-3891: Add specific support for wine in ghidragdb; add wine-gdb.sh
Also some documentation fixes for static mappings.
2024-03-07 08:04:36 -05:00
caheckman
49af7f2db5 GP-4376 Add setPackedOutput to Emit 2024-03-06 22:32:06 +00:00