ghidorahrex
ccc1d78fc1
GP-3556: Fixed ordering of 6x09 push operations
2023-07-27 09:19:09 -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
ghidorahrex
7fa8853897
GP-3655: Fixed lidt/sidt/sgdt instruction disassembly
2023-07-20 13:46:10 +00:00
Ryan Kurtz
edc6c52094
Merge remote-tracking branch 'origin/patch'
2023-07-18 07:14:39 -04:00
ghidorahrex
f0f65b9ab1
GP-3642: Regression fix for 6x09 compare macro
2023-07-17 13:34:28 +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
f8ec071906
Merge remote-tracking branch 'origin/patch'
2023-07-10 19:54:55 -04:00
ghidra1
c3cc2630f2
Merge remote-tracking branch
...
'origin/GP-3606_ghidorahrex_6x09_flags_and_stack_fixes' into patch
(Closes #5508 )
2023-07-10 19:43:40 -04:00
ghidra1
9b5f8599dc
Merge remote-tracking branch
...
'origin/GP-3621_ghidorahrex_6x09_leftshift_flag_fix' into patch (Closes
#5523 )
2023-07-10 19:37:52 -04:00
ghidorahrex
8cd3a31afa
GP-3621: Fixed 6x09 left-shift instruction flags
2023-07-10 14:29:37 +00:00
Ryan Kurtz
d932173a25
Merge remote-tracking branch
...
'origin/GP-3219_ghidorahrex_m68k_multiple_read_fix--SQUASHED'
(Closes #2492 )
2023-07-06 12:11:23 -04:00
Ryan Kurtz
5b9dfc92dd
Merge remote-tracking branch 'origin/patch'
2023-07-06 11:16:27 -04:00
Ryan Kurtz
9bc71eace0
Merge remote-tracking branch
...
'origin/GP-3599_emteere_OneByteFunctionsAndPPC' into patch
(Closes #5441 )
2023-07-06 11:01:10 -04:00
Ryan Kurtz
1c786c0849
Merge remote-tracking branch 'origin/GP-3582_emteere_ARM_AddtlBranchRetWaffleFix--SQUASHED' into patch
2023-07-06 10:58:24 -04:00
ghidra1
75fb5bf79b
Merge remote-tracking branch 'origin/GP-0_ghidra1_x86compat32fix' into patch
2023-07-06 09:09:01 -04:00
emteere
5b393764c6
GP-3582 Fix arm Branch/Return waffle if correct function boundaries not created and LR is detected as a constant
2023-07-05 14:18:55 -04:00
Ryan Kurtz
22e5c1a48b
Merge remote-tracking branch 'origin/patch'
2023-07-05 13:58:34 -04:00
ghidra1
784208dad8
GP-3610 Corrected NPE and GOT allocation issue which could prevent
...
import of object modules GOT PCREL relocations
2023-07-05 13:35:31 -04:00
ghidra1
ccad2abbd8
GP-0 revised x86-64 ldef entry for compat32 variant and change opinion
...
entries to give preference to default variant
2023-07-05 10:58:20 -04:00
ghidorahrex
61d14e722b
GP-3219: Refactored several 68k instructions to remove dup mem accesses.
2023-07-03 14:16:03 -04:00
ghidorahrex
17c571a393
GP-3606: Fixed 6x09 sub/cmp flags and 2-byte stack push/pop ordering
2023-07-03 18:14:45 +00:00
Ryan Kurtz
9194036c52
Merge remote-tracking branch 'origin/patch'
2023-07-03 11:05:14 -04:00
Dan
aa67e04592
GP-0: Fix x86 importers / tests.
2023-07-03 10:39:25 -04:00
emteere
b7ede746d0
GP-3599 Fix for function bodies including one byte of non-disassembled
...
data. PowerPC disassembly from computed branch.
2023-06-30 22:42:47 +00:00
Ryan Kurtz
f49bb0b025
Merge remote-tracking branch 'origin/patch'
2023-06-29 07:12:05 -04:00
Ryan Kurtz
5759352c43
Merge remote-tracking branch 'origin/GP-3583_Dan_fixWoW64--SQUASHED' into patch
2023-06-29 06:31:32 -04:00
Dan
0c39626b73
GP-3583: Fix race in module arch detection. Set longMode bit. Add compat32 ldef.
2023-06-28 13:56:09 -04:00
Ryan Kurtz
c3fef96e7b
Merge remote-tracking branch 'origin/patch'
2023-06-28 07:35:39 -04:00
Ryan Kurtz
d481a845fb
Merge remote-tracking branch
...
'origin/GP-3525_ghidorahrex_6x09_leaxy_fix--SQUASHED' into patch
(Closes #5414 )
2023-06-28 07:31:13 -04:00
ghidorahrex
52d4aaf285
GP-3525: Fixed 6x09 leax/leay instructions updating zero flag
2023-06-27 14:03:14 -04:00
Ryan Kurtz
450c3a4091
Merge remote-tracking branch 'origin/patch'
2023-06-21 13:02:17 -04:00
Ryan Kurtz
d5559a477c
Merge remote-tracking branch
...
'origin/GP-3524_ghidorahrex_arm_thumb_vdup_fix' into patch
(Closes #5420 )
2023-06-21 12:52:06 -04:00
Ryan Kurtz
9d7809902d
Merge remote-tracking branch 'origin/GP-2425_dev747368_golang_duffzero_duffcopy'
2023-06-16 13:24:50 -04:00
Ryan Kurtz
10588a7a3b
Merge remote-tracking branch 'origin/GP-3537_pic24_le'
2023-06-16 09:46:44 -04:00
Ryan Kurtz
da9a9ecb4e
Merge remote-tracking branch
...
'origin/GP-3449_ghizard_32-bit_Win_8-byte_type_alignment'
Conflicts:
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/DataOrganizationImpl.java
2023-06-15 16:31:26 -04:00
dev747368
b5422faefb
GP-2425 more better duffzero / duffcopy function info
2023-06-14 16:30:44 +00:00
Ryan Kurtz
e2f4565e5e
Merge remote-tracking branch 'origin/patch'
2023-06-14 07:46:41 -04:00
emteere
3736ae076c
GP-3532 Minor 68000 function start pattern
2023-06-13 23:06:18 +00:00
ghidra1
855a607699
Merge remote-tracking branch 'origin/patch'
2023-06-12 20:31:15 -04:00
ghidra1
5970699db1
Merge remote-tracking branch
...
'origin/GP-2955_ghidorahrex_PR-4795_Phlosioneer_m68k-pea-fix' into patch
(Closes #4795 )
2023-06-12 20:19:58 -04:00
ghidra1
d5db5b643a
Merge remote-tracking branch
...
'origin/GP-2779_ghidorahrex_PR-4808_Phlosioneer_m68k-movem-pc-fix' into
patch (Closes #4807 , Closes #4808 )
2023-06-12 20:17:06 -04:00
ghidra1
de6ff8440d
Merge remote-tracking branch 'origin/GP-3478_ghidorahrex_aarch64_neon_mla_fix' into patch
2023-06-12 20:11:31 -04:00
ghidra1
6269f69c76
Merge remote-tracking branch
...
'origin/GP-2963_Ghidorahrex_PR-4838_c64cryptoboy_fix-6502-tsx' into
patch (Closes #4838 )
2023-06-12 20:05:39 -04:00
ghidra1
de1071846a
Merge remote-tracking branch
...
'origin/GP-3009_ghidorahrex_PR-4825_fenugrec_8048_allfixes' into patch
(Closes #2423 , Closes #4825 )
2023-06-12 19:59:41 -04:00
emteere
164ed51304
GP-3532 Reverted 68000 register calling convention change, added new
...
68000_register cspec. Added function start patterns
2023-06-12 20:58:20 +00:00
James
35e46d773b
GP-3537 improve le in PIC24.sinc
2023-06-09 21:13:42 +00:00
emteere
ca697fcaaf
GP-3009 Setting of context for correct disassembly in either bank. Set
...
Ports to volatile so they aren't simplified away in the decompiler.
2023-06-08 18:50:04 +00:00
ghidorahrex
7a145a75e4
GP-3524: Fixed ARM Thumb vdup instruction to use correct registers
2023-06-07 19:07:48 +00:00
Ryan Kurtz
b82cbebc45
Merge remote-tracking branch 'origin/GP-3504_dev747368_golang_1_19_1_20'
2023-06-01 06:20:06 -04:00
Ryan Kurtz
d91a60f201
Merge remote-tracking branch 'origin/patch'
2023-06-01 06:17:13 -04:00
Ryan Kurtz
bf3e3923e8
Merge remote-tracking branch 'origin/GP-3480_PPCSmallDataAreaPointer' into patch
2023-06-01 06:12:52 -04:00
dev747368
11c434f3a0
GP-3504 add support for Golang 1.19, 1.20 binaries
2023-05-31 17:19:58 +00:00
Ryan Kurtz
2a507c0308
Merge remote-tracking branch 'origin/GP-3327_isabella3412_Adding_Manual_Indices_for_Coldfire_Instructions--SQUASHED'
2023-05-31 11:35:26 -04:00
Ryan Kurtz
f6bf4f670e
Merge remote-tracking branch 'origin/GP-3296_isabella3412_PowerPC_Index_Fix'
2023-05-31 11:30:43 -04:00
Ryan Kurtz
08911bb149
Merge remote-tracking branch 'origin/patch'
2023-05-31 11:30:04 -04:00
Ryan Kurtz
e3429a57db
Merge remote-tracking branch
...
'origin/GP-3102_ghidorahrex_x86-64_popf_pushf--SQUASHED' into patch
(Closes #4980 )
2023-05-31 11:20:14 -04:00
isabella3412
5968d77869
GP-3327 Adding manual indices for Coldfire instructions
2023-05-31 14:58:28 +00:00
Phlosioneer
058fa90387
Issue 4807 Fix movem PC instruction bug on 68000
...
The `movem` instruction's `(d16, PC)` addressing mode has an instruction
word, a mask word, and then an extension word. The addressing mode
uses the value of PC incremented to the extension word, in this case
`instr_start + 4`. The sleigh code incorrectly uses `instr_start + 2`.
The issue is present for both `movem.w` and `movem.l` variants. This
PR fixes the `PC` offset to `+4`.
See 68000 reference manual page 2-13 for PC indirect addressing mode,
and 4-128 for MOVEM documentation.
Partially addresses #4807 .
2023-05-31 14:31:37 +00:00
ghidorahrex
af40b28931
GP-3102: Fixed disasm of default 64-bit addrsize instructions
2023-05-31 10:13:41 -04:00
ghidorahrex
70a50dfcc2
GP-3478: Fixed registers in aarch64 neon mla instruction
2023-05-31 14:08:47 +00:00
David Youd
2d497a0d5c
fix to TSX instruction
2023-05-31 13:14:48 +00:00
fenugrec
2b05e1f5f2
8048 : improve display of JBx opcode
...
instead of e.g. "JB0x5", they will render as "JB5".
2023-05-31 12:34:24 +00:00
fenugrec
bb08f67417
8048: fix JMPP @A extra dereference
...
JMPP was doing two indirections : one in PData and then one again in
AddrInd, where there should only be one.
MCS-48 docs :
> The contents of the Program Memory location addressed by the
Accumulator
is used as the new page offset of the Program Counter.
i.e.
(PC 0 – 7) <- ((A))
Previous implementation caused disasm / decompiler errors such as
"Low-level Error: Could not find op at target address"
refs:
https://github.com/NationalSecurityAgency/ghidra/discussions/4818
2023-05-31 12:34:23 +00:00
fenugrec
97b0984426
8048: support > 4kB address space
...
MCS-48 just barely supports 12 bits of program counter space (4kB), but
many real-world applications use software banking to expand this,
e.g. via IO pins driving extra address lines to the external ROM.
This patch allows up to 16-bit addresses. To use this feature, simply
select the special instruction (typically ORL Pp or ANL Pp) and set a
manual Fallthrough address to the correct bank.
2023-05-31 12:34:22 +00:00
fenugrec
3fbf16b056
8048: make DBF a context register
...
See GH #2423
The SEL MB0/MB1 opcodes set a DBF register but this had no effect, therefore JMP and CALL
destinations didn't take into account DBF.
This is essentially @esaulenka 's patch from
3756e1bcee
but separated from the DFB->DBF typo change, and sets the width of the new
context register to be 1 bit (doesn't need to be 2 bits)
This greatly improves analysis. The only downside is that to manually
override DBF on a single instruction, it needs to be cleared first, then
disassembled again after setting the desired DBF.
2023-05-31 12:34:21 +00:00
fenugrec
7c2b8ca27d
8048: typo in "DFB" register name , should be DBF
...
MCS-48 Assembly language manual #9800255D :
'
DBF designate memory bank flip-flop
'
2023-05-31 12:34:20 +00:00
fenugrec
5ea567f65b
8048: fix movp, movp3, jmpp
...
the correct syntax for [x,y] bitranges has y= # number of bits. These
three instructions affect the lower 8 bits of PC, not 7.
From MCS-48 docs:
'
MOVP A,@A
(PC: 0-7)<-(A)
(A)<-((PC))
Move data in program memory location addressed by A into A. Program
counter is restored.
'
There is similar wording for MOVP3 and JMPP.
Fixes #4810 on GH
2023-05-31 12:34:19 +00:00
Phlosioneer
b1c54e36e1
Fix pea SP instruction bug on 68000 processor
...
The `pea` instruction adjusts `SP`, but the address may be `SP`-based.
Ghidra was evaluating the effective address after adjusting `SP`, but
the address should be evaluated before `SP` is changed. For example,
`pea (SP)` should result in a pointer to the previous stack entry,
rather than a pointer to itself.
2023-05-30 16:49:29 +00:00
isabella3412
d7d80b134e
GP-3296 Updated PowerISA Instruction Index with new manual
2023-05-25 18:18:55 +00:00
caheckman
ce520cc940
GP-3480 Mark PPC r13 as unaffected
2023-05-24 14:35:59 -04:00
Ryan Kurtz
359f56131b
Merge remote-tracking branch 'origin/patch'
2023-05-24 08:43:20 -04:00
ghidra1
584260ca81
GP-3472 Added __stdcall convention alias for 64-bit Windows cspecs
2023-05-23 15:34:35 -04:00
ghizard
9cb6a7a12e
GP-3449 - Fix Win32 8-byte type alignment and update test utils
2023-05-23 15:16:52 -04:00
Ryan Kurtz
a87044c521
Merge remote-tracking branch 'origin/patch'
2023-05-18 11:06:01 -04:00
Ryan Kurtz
0cae3ab0f5
Merge remote-tracking branch
...
'origin/GP-3325_ghidorahrex_PR-4886_Ninja3047_fix-ppc-stmvsprw' into
patch (Closes #4886 )
2023-05-18 11:02:54 -04:00
Ryan Kurtz
f8ebb729ef
Merge remote-tracking branch
...
'origin/GP-3432_ghidorahrex_PR-4887_Ninja3047_ppc_vle_eieio' into patch
(Closes #4887 )
2023-05-18 10:58:25 -04:00
Ryan Kurtz
033d2a2ec6
Merge remote-tracking branch
...
'origin/GP-3434_ghidorahrex_ppc_vle_e_sthu_fix' (Closes #5247 )
2023-05-15 08:40:12 -04:00
Ryan Kurtz
ce5f6b4417
Merge remote-tracking branch
...
'origin/GP-3435_ghidra1_PR-5292_dukesilverrr_R_AARCH64_MOVW_UABS_G_Relocs'
(Closes #3545 , Closes #3546 , Closes #5292 )
2023-05-15 06:04:08 -04:00
ghidorahrex
9dc6e6e29d
GP-3434: Fixed PPC VLE e_sthu mnemonic display
2023-05-12 17:51:08 +00:00
William Tan
4dd7d296a5
fix call_frame_cfa value for ppc
2023-05-09 11:16:46 -04:00
ghidra1
4b7188c3e4
Merge remote-tracking branch
...
'origin/GP-3398_ghidorahrex_PR-1723_saruman9_fix_call_with_segment_reg'
into Ghidra_10.3 (Closes #1715 , Closes #1723 )
2023-05-08 14:54:47 -04:00
ghidra1
d8d5817d7e
Merge remote-tracking branch
...
'origin/GP-3326_ghidorahrex_PR-5194_edmcman_coldfire_halt_decode' into
Ghidra_10.3 (Closes #5194 )
2023-05-08 14:19:12 -04:00
ghidra1
ff8f0d7782
Merge remote-tracking branch
...
'origin/GP-3341_ghidorahrex_ppc_branch_link_fix' into Ghidra_10.3
(Closes #5218 )
2023-05-08 14:16:50 -04:00
William Tan
9c694ebfd1
move around mbar/eieio
2023-05-05 11:13:03 -04:00
William Tan
eebdca2668
move mbar from a2 to ppc_embedded, remove duplicate eieio
2023-05-05 11:13:03 -04:00
William Tan
8277a6312b
fix: also decode eieio (mbar 0) for VLE
2023-05-05 11:13:02 -04:00
saruman9
1402d0dc61
[x86] Align stack while Far Call
...
Push CS register onto the stack according to operand and address sizes.
Fix #1715 .
2023-05-05 12:58:48 +00:00
ryan
90d486493e
Add support for R_AARCH64_MOVW_UABS_G* relocations
2023-05-04 19:36:11 +00:00
ghidorahrex
1df6c993b9
GP-3372: Reverted x86 66 90 bytes back to nop
2023-05-01 16:01:42 +00:00
Ryan Kurtz
07fc63f99f
GP-2257: Fixing Processor BPF ldef issue
2023-05-01 08:07:32 -04:00
Ryan Kurtz
7fa3389119
GP-2974: Fixing warnings
2023-05-01 07:23:48 -04:00
Ryan Kurtz
70405b07b0
GP-2257: Fixing compilation error
2023-05-01 06:54:27 -04:00
Ryan Kurtz
7511825043
Merge remote-tracking branch
...
'origin/GP-2257_ghidorahrex_PR-4378_Nalen98_eBPF-proc-support'
(Closes #4378 )
2023-05-01 06:30:25 -04:00
Ryan Kurtz
6984c87da8
Merge remote-tracking branch
...
'origin/GP-2257_ghidorahrex_PR-4258_Heurs_bpf_processor' (Closes #4258 )
2023-05-01 06:28:22 -04:00
Ryan Kurtz
5b6a902c8c
Merge remote-tracking branch 'origin/GP-3077_emteere_CrossedConstants--SQUASHED'
2023-05-01 06:25:01 -04:00
dev747368
87c16f9cd0
GP-2114 golang import / analyzer
2023-05-01 02:02:53 -04:00
emteere
02248d2251
GP-3077 Added constant tracking through stack for stack parameters, fixed issues with values getting crossed moving in and out of memory, added prototype param type creation, added setting for restricting parameters to know pointers to handle harvard architectures and pointertypedefs
2023-05-01 01:57:56 -04:00