Commit Graph

1094 Commits

Author SHA1 Message Date
Boyan-MILANOV
897bf0736c Add rexprefix=0 to NOP constructor 2022-06-13 19:10:26 +02:00
Boyan-MILANOV
bccba706a2 Use simm32 instead of imm32 for addr64 2022-06-13 19:08:41 +02:00
Alessandro Gatti
b44355f367 Use pcodeops for bitrev and byterev. 2022-06-08 20:36:33 +02:00
Ryan Kurtz
18bc6afb95 Merge remote-tracking branch 'origin/GP-1817_ghidorahrex_PR-3222_aeflores_add-vfma-to-arm' 2022-06-08 01:42:30 -04:00
Ryan Kurtz
9030a84fc0 Merge remote-tracking branch 'origin/GP-2012_James_Java_Analyzer_error'
(Closes #4089)
2022-06-08 01:21:08 -04:00
ghidorahrex
6581ff6230 GP-2112: Fix issue with MSP430 RPT using correct operands 2022-06-07 18:21:20 +00:00
ghidorahrex
f1be7a7e4e Modified coldfire TPF instructions to jumps 2022-06-07 13:37:26 +00:00
Antonio Flores Montoya
808143cd60 correct vfnma vfnms semantics
and rewrite vfms expression to match manual more closely.
2022-05-27 10:33:32 -04:00
James
1f2f11053e GP-2061 added mmxreg2_m64 table to ia.sinc 2022-05-24 13:23:43 +00:00
Alessandro Gatti
4ebeee777f Implement ColdFire's BITREV, BYTEREV and FF1. 2022-05-22 06:33:29 +02:00
Ryan Kurtz
2491c4298b Merge branch 'GP-2046_ryanmkurtz_PR-4003_fnoelscher_risc-v-pattern'
(Closes #4002, Closes #4003)
2022-05-18 13:13:33 -04:00
Ryan Kurtz
076e99e803 GP-2046: Certifying 2022-05-18 13:01:29 -04:00
ghidra1
01067debde GP-1797 removed unused DataTypeConflictException 2022-05-16 12:33:16 -04:00
Alessandro Gatti
7ee81b3e76 Fix 6502 PLP opcode. 2022-05-16 07:26:41 +02:00
James
9e580c18e0 GP-1954 added pointermax 2022-05-12 12:12:01 -04:00
caheckman
b7955f2a79 GP-1954 Refactor characterizeAsParam, AncestorRealistic adjustments 2022-05-12 12:12:00 -04:00
James
91eb96f109 GP-1954 added register groups to inputs in win x64 cspec 2022-05-12 12:11:59 -04:00
James
7d8b222183 GP-2012_James_java_attribute_improvements 2022-05-10 18:22:43 +00:00
LemonHaze
069d0dda76 SuperH4: fsca: Added changes which accurately use DRN_0 2022-05-09 02:32:25 +01:00
Ryan Kurtz
a1b9cbcc15 Merge remote-tracking branch
'origin/GP-1503_ghidorahrex_PR-3418_asaven-gt_ArmVcvtSemantics'
(Closes #3418)
2022-05-06 14:34:20 -04:00
LemonHaze
d5fd9a059b SuperH4: fsca: Minor performance optimization by using precomputed pi*2 constant and casted values to float before returning (for better decompilation) 2022-05-05 01:42:45 +01:00
Alessandro Gatti
43698e4a3a Correct operands order.
As per discussion on #4189, Tx[bw] and Ty[bw] need to be swapped.
2022-05-04 07:53:47 +02:00
Alessandro Gatti
63e615e793 Implement 68000 PACK and UNPK opcodes. 2022-05-03 04:19:03 +02:00
Alessandro Gatti
1c6b0140bc Update ASL/ASR/LSL/LSR/ROL/ROR/ROXL/ROXR behavior. 2022-05-02 04:12:49 +02:00
LemonHaze
5dbdb3f7bb SuperH4: fsca: Fixed bug with FPSCR_PR being tested incorrectly and removed extraneous offset local variable 2022-05-01 22:55:56 +01:00
LemonHaze
3dd7f93857 Used int2float when converting to radian instead of a local var 2022-04-30 06:22:40 +01:00
LemonHaze
674e917829 SuperH4: Ensure we divide with f/ when converting to radian 2022-04-30 06:16:07 +01:00
LemonHaze
3632514072 SuperH4: Added FRN_1 and FRN_2 and cleaned up instruction definitions 2022-04-30 05:28:57 +01:00
LemonHaze420
5050741e0d SuperH4: Add missing fsrra, fsca and movua.l instructions
Add `fsca`

Fixed `frsrra` decompilation output

Added `movua.l`

Implemented `fsca` instruction

Fixed compilation issue with `fsca`

Fixed indentation on comments
2022-04-30 02:00:28 +01:00
Ryan Kurtz
6185df1bde Merge remote-tracking branch
'origin/GP-1946_ghidorahrex_PR-4131_jrmuizel_m68k_fmod_fopmode_fix'
(Closes #4131)
2022-04-28 01:21:03 -04:00
Ryan Kurtz
0974ddca3f Merge remote-tracking branch 'origin/GP-1837_ghidorahrex_arm_register_list_fix' 2022-04-28 01:10:08 -04:00
ghidra1
06c8cfc24a Merge remote-tracking branch 'origin/GP-1871_OverlappingPentry' 2022-04-25 14:47:15 -04:00
ghidra1
47f76c78d6 Merge remote-tracking branch 'origin/patch' 2022-04-20 12:53:14 -04:00
ghidorahrex
a7e2162d2b GP-1879 corrected MIPS rdhwr instruction registers 2022-04-20 12:48:09 -04:00
ghidra1
d7f9cdfe5c Merge branch 'GP-1936_ghidra1_Elf_PN_XNUM' 2022-04-19 16:10:50 -04:00
ghidorahrex
f58abb5eec GP-1837: fixed issue with ARM register lists having inconsistent format 2022-04-19 15:07:01 -04:00
Ryan Kurtz
6c32040603 Merge remote-tracking branch 'origin/GP-527_ThreadEnvironmentBlock' 2022-04-19 11:02:29 -04:00
ghidra1
b16404d87b GP-1936 Support extended sizes for ELF program and section header counts 2022-04-18 20:57:33 -04:00
caheckman
1647b4b577 Thread Environment Block analyzer 2022-04-15 13:55:38 -04:00
ghidra1
2bced1cd43 GP-1036 EXTERNAL Block Offset-Reference refactor 2022-04-15 13:19:40 -04:00
ghidra1
ca410b1274 GP-1403 Added support for pointer-typedef settings, including support
for Archive use.  Corrected settings stacking behavior.
Unified two settings adapters into one shared implementation (upgrade
and archive schema version still needed). Added ability to edit default
settings for components from within the structure/union editor.
Improved use of immutable settings.  Improved array settings.  Added
PointerTypeDefBuilder and PointerTypeDefInspector.  Added versioning
support to DataTypeManagerDB to facilitate upgrades and compatibility
detection.  Initial improvements added for locking of datatype settings.
Added support for auto-named pointer-typedefs.
2022-04-15 13:11:43 -04:00
ghidra1
577328f230 GP-1907: Updated ELF related loader to eliminate use of
ContinuesInterceptor
2022-04-15 01:53:30 -04:00
Ryan Kurtz
4f888cf98a Merge remote-tracking branch 'origin/GP-1746_ghidorahrex_PR-2326_esaulenka_tricore_stt_fix' 2022-04-11 13:53:17 -04:00
Ryan Kurtz
881bdc6901 Merge remote-tracking branch
'origin/GP-1736_ghidorahrex_PR-3978_CmP-lt_vraddhn_fix' (Closes #3978)
2022-04-11 13:51:14 -04:00
Antonio Flores Montoya
128118b51b add 16bits versions of VFMA/VFMS/VFNMA/VFNMS 2022-04-08 15:03:10 -04:00
Jeff Muizelaar
f736bdc43f m68k: Fix fopmode for fmod
See fc7a6fc602/m68kdasm.c (L1772)
and 2e185fb65e/target/m68k/translate.c (L5255)
2022-04-05 11:28:20 -04:00
caheckman
716dfb1690 GP-1871 Overlapping pentry tags 2022-03-30 12:42:46 -04:00
Ryan Kurtz
4f59e90b39 Merge remote-tracking branch 'origin/GP-1426_Dan_asmWoW64--SQUASHED' 2022-03-29 01:27:33 -04:00
Dan
760a9ca462 GP-1426: Refactor assembler. Fix issue where Sleigh passes context to the right. 2022-03-28 14:59:46 -04:00
ghidra1
42d8de2757 GP-1815 Corrected ia.sinc n1 to present and export scalar 1 instead of
string
2022-03-28 10:23:59 -04:00
Ryan Kurtz
2aa54959f9 Merge remote-tracking branch 'origin/GP-1819_James_sleigh_conditional_assignment--SQUASHED' 2022-03-24 14:03:10 -04:00
James
ac984f3c7a GP-1819 addressing code review comments
GP-1819 added conditional assignment macro to x86 processor module
2022-03-24 09:13:00 -04:00
Ryan Kurtz
17a9c07972 Merge remote-tracking branch
'origin/GP-1774_James_JVM_switch_improvements--SQUASHED' (Closes #3980,
Closes #3981)
2022-03-23 13:01:02 -04:00
James
98a768e336 GP-1774 addressing code review comments
GP-1774_James_JVM_switch_fixes
2022-03-23 12:47:48 -04:00
Ryan Kurtz
473115a73c Merge remote-tracking branch 'origin/patch' 2022-03-21 11:41:21 -04:00
emteere
656148eec5 GP-1834_emteere fixing mips type 5,6 relocation calculation by sign
extending LO16 REL addend. Minor MultiInstruction reference creation
issue on instructions using same register for input and output
2022-03-18 22:09:05 +00:00
Ryan Kurtz
a16aeda138 Merge remote-tracking branch 'origin/GP-1780_James_implement_x86_64_popcnt' 2022-03-14 09:22:43 -04:00
Ryan Kurtz
41f4362c8b Merge remote-tracking branch
'origin/GP-1815_ghidra1_CorrectX86ScalarOpObject' (Closes #4064)
2022-03-14 09:18:56 -04:00
Ryan Kurtz
d3b189d8b2 Merge remote-tracking branch 'origin/GP-1763_ghidorahrex_PR-4011_astrelsky_arm_bfi' 2022-03-11 17:56:17 -05:00
Ryan Kurtz
deccbbc9b1 Merge remote-tracking branch 'origin/GP-1165_ghidorahrex_avr32_integer_abs' 2022-03-11 17:52:32 -05:00
ghidra1
23492c4204 Corrected ia.sinc n1 to present and export scalar 1 instead of string 2022-03-10 14:24:48 -05:00
Ryan Kurtz
ee268dea09 Merge remote-tracking branch 'origin/patch' 2022-03-04 01:50:50 -05:00
Ryan Kurtz
35e9c3328d GP-0: Fixing MC6800 Eclipse project name 2022-03-04 01:42:47 -05:00
Ryan Kurtz
88424e1a38 Merge remote-tracking branch 'origin/patch' 2022-03-04 00:47:31 -05:00
Ryan Kurtz
59bf94d92e Merge remote-tracking branch 'origin/GP-1695_emteere_6xxx_refactor' into
patch (Closes #3673)
2022-03-04 00:42:04 -05:00
Ryan Kurtz
fd4e033a1a Merge remote-tracking branch 'origin/patch' 2022-03-03 16:01:50 -05:00
Ryan Kurtz
373c7d0ed2 Merge remote-tracking branch 'origin/GP-1752_emteere_ARMCondPICBranch' into patch 2022-03-03 15:52:57 -05:00
Ryan Kurtz
2ebbd4b716 Merge remote-tracking branch 'origin/GP-1739_emteere_AARCH64_16byte_returns' into patch 2022-03-03 15:50:58 -05:00
James
6d8e2c737d GP-1780 implemented popcnt instruction 2022-03-02 18:21:15 +00:00
Andrew Strelsky
7122480c5c
Corrected ARM bfi 2022-03-01 10:01:55 -05:00
Rubens Brandão
2de7447761
Fix tricore sleigh file
Similar to #4016, I found this macro `ifdef` to not be properly closed.
2022-02-23 09:41:57 -03:00
emteere
0d242f52ad GP-1752_emteere Detecting PIC conditional branch to next instruction as
a goto vice a call
2022-02-22 15:56:14 +00:00
ghidorahrex
7e62b796a9 GP-1165: Corrected minor issue with integer ABS functions using
floating-point abs pcode.
2022-02-17 11:39:27 -05:00
Henrik Ferdinand Noelscher
820c1a567d fix #4002 - fix a typo in RISC-V pattern constraints filename 2022-02-15 18:42:53 +01:00
ghidra1
1a1d06b749 Merge remote-tracking branch 'origin/patch' 2022-02-11 18:27:46 -05:00
ghidra1
026fad27ab GP-1742 corrected ELF ARM-32 relocation adjustment for R_ARM_THM_JUMP11
and R_ARM_THM_JUMP8
2022-02-11 18:22:22 -05:00
Ryan Kurtz
052c17e274 Merge remote-tracking branch
'origin/GP-1722_ghidorahrex_PR-3883_astrelsky_ffreep' (Closes #3883)
2022-02-11 17:49:44 -05:00
ghidra1
9ededaf571 Merge remote-tracking branch 'origin/patch' 2022-02-11 14:30:36 -05:00
ghidra1
ff638aa85b GP-1742 added support for additional ELF ARM-32 relocations (#2794) 2022-02-11 14:26:36 -05:00
emteere
16c7c29d54 GP-1739 Add up to 16 byte return values for AARCH64 2022-02-10 17:35:42 +00:00
CmP-lt
a3de4f73de
Fix detection of ARM vraddhn instruction 2022-02-09 06:43:32 +02:00
Ryan Kurtz
c0b644b8b9 Merge remote-tracking branch
'origin/GP-1694_ghidorahrex_PR-3895_mr-mysk_fstFix' (Closes #3894,
Closes #3895)
2022-02-08 09:58:58 -05:00
Ryan Kurtz
1e4f0003f3 Merge remote-tracking branch
'origin/GP-1638_ghidorahrex_PR-3552_gregjhogan_tricore-jl' (Closes
#3552)
2022-02-08 09:55:57 -05:00
Ryan Kurtz
716285f170 Merge remote-tracking branch
'origin/GP-1701_ghidorahrex_v850_missing_reg' (Closes #3865)
2022-02-08 09:40:41 -05:00
Ryan Kurtz
c2510e5ab0 Merge remote-tracking branch
'origin/GP-1712_ghidorahrex_PR-3944_CmP-lt_vsub_fix' (Closes #3943,
Closes #3944)
2022-02-02 01:49:09 -05:00
Ryan Kurtz
5bccf5b2d9 Merge remote-tracking branch 'origin/GP-1653_PrototypeModelAlias' 2022-02-01 00:43:28 -05:00
caheckman
78540a76a4 GP-1653 __cdecl alias in x86-64 2022-01-31 13:42:39 -05:00
CmP-lt
b77b99a8a9
Fix disassembly of ARM vsub instruction 2022-01-30 05:59:03 +02:00
Greg Hogan
6a6db0faed fix tricore jla 2022-01-27 10:47:39 -08:00
Greg Hogan
de73507e60 fix tricore jl 2022-01-27 10:44:56 -08:00
ghidra1
72a8bac6d2 Merge remote-tracking branch 'origin/patch' 2022-01-26 15:03:02 -05:00
ghidorahrex
edae6abde8 GP-1701: added eplp register definition to V850 2022-01-25 09:07:39 -05:00
emteere
ca9f57af47 GP-1965_emteere Moving 6805 to MC6800 and refactoring to better allow
extensions.  Also adding H6309 processor
2022-01-24 19:26:43 +00:00
emteere
39834fba71 GP-1690 fixes goto/call directly to a varnode, should be indirect [] 2022-01-24 17:12:39 +00:00
ghidra1
073c726885 Merge remote-tracking branch 'origin/patch' 2022-01-21 19:49:10 -05:00
ghidra1
2ff7128188 Merge remote-tracking branch 'origin/GP-1656_ghidorahrex_pa-risc_float_fmt_fix--SQUASHED' 2022-01-21 19:47:50 -05:00
Greg Hogan
c91d117187 fix efscmp* and efstst* instructions 2022-01-21 19:31:57 -05:00
Dan Glastonbury
53d19b29ad 6809: Fix immediates equal to 0
Exporting imm8/imm16 directly results in the immediate being treats as 0. Assign
to a local tmp and export that instead. (Same as 6502.slaspec)

Fixes #2116
2022-01-21 19:15:56 -05:00
mr-mysk
2638617432
fix FST instruction
source and destination were swapped
2022-01-21 22:22:02 +01:00
ghidorahrex
b39aaaedc0 GP-1656: Simplified semantics of several PA-RISC float instructions 2022-01-21 14:03:05 -05:00
Andrew Strelsky
d409368190
added missing x86 ffreep instruction 2022-01-19 18:06:14 -05:00
caheckman
4bfade4cd8 GP-1647 equivalence check 2022-01-18 11:13:03 -05:00
ghidra1
a6f7392736 Merge remote-tracking branch
'origin/GP-1644_ghidorahrex_m68000_addx_fix--SQUASHED' (Closes #3818)
2022-01-10 21:07:33 -05:00
ghidorahrex
51d84f8bc0 GP-1644: fixed semantics of 68000 addx flags 2022-01-07 12:54:24 -05:00
ghidra1
9076b2429c GP-1571 ELF: create fake relocation table entry for non-relocation memory modifications (needed for ELF export) 2021-12-13 14:52:24 -05:00
ghidra1
b5927ce849 Merge remote-tracking branch 'origin/GP-1564_10.1_rdrand_fixes' into Ghidra_10.1 2021-12-02 08:59:31 -05:00
ghidra1
f8f95c9aef Merge remote-tracking branch 'origin/GP-1520_emteere_AppleSiliconAMX--SQUASHED' into Ghidra_10.1 2021-12-01 20:18:09 -05:00
James
3280653d8d GP-1564_10.1_rdrand_fixes 2021-12-01 20:20:29 +00:00
emteere
89f73857e6 GP-1520_emteere Initial implementation of AppleSilicon AMX instructions 2021-12-01 14:50:23 -05:00
ghidra1
5b24b188d8 GP-1565 corrected PIC swap semantics 2021-12-01 10:01:42 -05:00
ghidra1
0f0b63f6ad Merge remote-tracking branch
'origin/GP-1540_Dan_emulateHarvard--SQUASHED' into
Ghidra_10.1
2021-11-30 19:50:26 -05:00
ghidra1
c391e54284 Merge remote-tracking branch 'origin/GP-1250_ghidorahrex_powerpc_sleigh_fixes--SQUASHED' into Ghidra_10.1 2021-11-30 19:12:53 -05:00
Dan
e2b28ddb31 GP-1540: Various emulator fixes: Harvard architectures, memory-mapped registers, word-level addressing. 2021-11-30 15:04:03 -05:00
ghidra1
ab05672653 Merge remote-tracking branch 'origin/GP-1115_ghidorahrex_PR-3095_agatti_6502-bit-instruction-fix' into Ghidra_10.1 2021-11-30 08:13:51 -05:00
ghidra1
7a952bfe75 Merge remote-tracking branch
'origin/GP-1504_ghidorahrex_PR-3600_VGKintsugi_superh_trap' into
Ghidra_10.1 (Closes #3600)
2021-11-30 08:09:45 -05:00
ghidorahrex
905ec75e32 GP-1250: Several PPC instruction fixes 2021-11-30 07:53:13 -05:00
ghidra1
6cc2eae322 Merge remote-tracking branch 'origin/GP-1487_Dan_emuUnimpl--SQUASHED'
into Ghidra_10.1

Conflicts:
	Ghidra/Debug/Framework-TraceModeling/src/test/java/ghidra/pcode/exec/trace/TracePcodeEmulatorTest.java
2021-11-29 11:12:12 -05:00
Dan
97f9887f92 GP-1487: Adding better explanation for pcode UNIMPLEMENTED. 2021-11-26 10:51:29 -05:00
ghidra1
3f60701d23 Merge remote-tracking branch
'origin/GP-1478_ghidorahrex_PR-3616_agatti_68k_chk_chk2_cmp2' into
Ghidra_10.1 (Closes #2856)
2021-11-23 21:55:03 -05:00
Alessandro Gatti
b6942c875c Implement CHK, CHK2, and CMP2 for 68k. 2021-11-09 22:25:23 +01:00
VGKintsugi
81ef5ee065
SuperH: Fix trapa to use call instead of goto
Fix by waterfuell
2021-11-06 23:43:54 -04:00
Ryan Kurtz
7a6a9bb1aa Merge remote-tracking branch 'origin/GP-1409_James_RISCV_improvements--SQUASHED' 2021-11-05 10:43:54 -04:00
James
ef78846212 GP-1409 implemented code review suggestion
GP-1409 minor improvements to RISCV spec
2021-11-05 09:36:43 -04:00
Ryan Kurtz
0139720224 Merge remote-tracking branch 'origin/GP-1247_GhidraKnight_Android12--SQUASHED' 2021-11-01 10:19:40 -04:00
GhidraKnight
87d4858cf2 GP-1247: Changes to support Android 12 2021-11-01 10:19:04 -04:00
Ryan Kurtz
ee00c7aa50 Merge remote-tracking branch
'origin/GP-1402_ghidorahrex_ARM_thumb_AL_not_allowed' (Closes #3499)
2021-10-25 13:24:10 -04:00
Ryan Kurtz
821826a233 Merge remote-tracking branch 'origin/GP-1412_ghidorahrex_ARM_ldrsb_fix'
(Closes #3522)
2021-10-25 13:20:17 -04:00
Ryan Kurtz
175e8d934c Merge remote-tracking branch
'origin/GP-1357_ghidorahrex_x86_call_stack_fix--SQUASHED' (Closes #3455)
2021-10-25 13:17:26 -04:00
Ryan Kurtz
0608396591 GP-1332: Merge remote-tracking branch
'origin/GP-1322_ghidorahrex_ARM_remove_cond_15--SQUASHED'
2021-10-25 12:34:00 -04:00
ghidorahrex
3ff9af0635 Fix for decoding some ARM instructions with cond=15
Removed deprecated ARM condition code 15
2021-10-25 11:15:35 -04:00
ghidorahrex
6d0e6f42c6 Fixed x86 CALL references where reference is based on stack pointer. 2021-10-25 11:14:29 -04:00
Ryan Kurtz
569cbc61fc Merge remote-tracking branch 'origin/patch' 2021-10-20 12:02:29 -04:00
ghidorahrex
a69e92948c removed extraneous additional "SB" from the ldrsb instruction. 2021-10-19 09:39:18 -04:00
ghidorahrex
5ff2fa62b1 Correctly implemented missing arm thumb AL conditional 2021-10-19 09:34:12 -04:00
James
b2d9b3c95a GP-0_sparc_fix_retry 2021-10-14 18:31:12 +00:00
Ryan Kurtz
20e65bb958 Merge remote-tracking branch 'origin/GP-1378_James_improve_add_sub_sleigh_macros' 2021-10-14 13:19:17 -04:00
Ryan Kurtz
07f9770037 Merge remote-tracking branch 'origin/GP-1322_ghidorahrex_arm_neon_vmrs'
(Closes #3446)
2021-10-14 13:08:11 -04:00
Ryan Kurtz
b06383ab57 Merge remote-tracking branch 'origin/GP-1292_ghidorahrex_pa-risc_shiftcond--SQUASHED' 2021-10-14 08:54:29 -04:00
Ryan Kurtz
33aee0ff63 Merge remote-tracking branch
'origin/GP-1290_ghidorahrex_PR-3405_kotcrab_fix-mips-ins' (Closes #3405)
2021-10-14 08:34:33 -04:00
Ryan Kurtz
2fb53dd669 Merge remote-tracking branch
'origin/GP-1331_ghidorahrex_PR-3449_zt-chen_superh-fix-bld-movmu'
(Closes #3449)
2021-10-14 08:10:24 -04:00
ghidorahrex
9ed2d37b31 Code review comments
Corrected semantics of pa-risc shiftcond and extrcond subconstructors.
2021-10-13 14:12:05 -04:00
emteere
eab2477076 GP-0_emteere fix export of address for 32-bit, was breaking tests and
messing with markup
2021-10-12 23:38:53 +00:00
James
02d827b859 GP-1378 make add with carry/subtract with borrow macros
decompiler-friendly
2021-10-09 18:42:44 +00:00
Ryan Kurtz
22769f2234 GP-1255: Bumping x86 version number. 2021-10-07 12:10:17 -04:00
Dan
25801da834 GP-1255: Allowing 32-bit x86 disassembly in x86-64 (WoW64). 2021-10-07 09:12:58 -04:00
ghidorahrex
6037ba86d3 Corrected MIPS tlbr pcodeop 2021-10-04 10:29:24 -04:00
ghidra1
8bcc80afda GP-1352 Correct various issues with ELF Android relocation markup. Add
missing support for ELF Arm32 RELR relocations.
2021-09-30 19:46:34 -04:00
Ryan Kurtz
0c430dcdcf Merge remote-tracking branch
'origin/GP-1347_ryanmkurtz_PR-1889_heinrich5991_pr_chkstk_ms' (Closes
#1888, Closes #1889)
2021-09-29 15:47:15 -04:00
ghidra1
86f3769236 GP-0 Updated Dalvik with deprecated langauge ID entry 2021-09-29 13:15:49 -04:00
ghidra1
3a23b73886 Merge remote-tracking branch 'origin/patch' 2021-09-28 11:50:05 -04:00
Ryan Kurtz
37215afdd9 Merge remote-tracking branch 'origin/GP-1291_ghidorahrex_mips_dins_fix--SQUASHED' 2021-09-27 11:07:13 -04:00
ghidorahrex
37f858aafd Fixed issue with MIPS64 DINS and related instructions. 2021-09-27 09:37:43 -04:00
chenzitai
78adda3598 Fix problem in superh movmu 2021-09-25 17:55:50 +01:00
chenzitai
b05bb76bf9 Fix problem in superh bld 2021-09-25 17:51:37 +01:00
ghidra1
cfdec26da4 GP-943 Added support for zero-length arrays and
zero-length components.  NOTE: We still never return 0 for
DataType.getLength().  Added DataType.isZeroLength().
2021-09-24 16:29:29 -04:00
kotcrab
3ad11a8a36 Fix decompilation of MIPS ins instruction
Simplify ext instruction
2021-09-24 19:06:11 +02:00
ghidorahrex
d3158e8d9f Corrected disassembly of ARM neon vmrs instruction. 2021-09-24 12:19:30 -04:00
GhidraKnight
ac5d2cfada GP-804: Added support for Android formats (ART, OAT, ODEX, DEX, CDEX,
VDEX) and Dalvik VM SLEIGH modules for each major Android release up to
11.x (R)
2021-09-23 11:16:26 -04:00
Ryan Kurtz
402ffd0df3 Merge remote-tracking branch 'origin/GP-1294_AlternateREP' (Closes #731) 2021-09-22 12:55:03 -04:00
ghidorahrex
7321e2a09a Fixed MIPS bitpattern endian mixup 2021-09-17 12:03:14 -04:00
Ryan Kurtz
fdbb69e712 Merge remote-tracking branch 'origin/patch' 2021-09-17 07:18:16 -04:00
caheckman
74df84bed8 Move segmentop tags into pspec 2021-09-16 14:40:04 -04:00
Ryan Kurtz
b0a223e17b Merge remote-tracking branch 'origin/GP-1234_ghidorahrex_update_processor_manuals--SQUASHED' 2021-09-16 07:54:32 -04:00
Avi Saven
7c853965ec Fix semantics for certain encodings of ARM vcvt 2021-09-15 15:25:38 -04:00
ghidorahrex
3cbe4ee78d Updated aarch64 and x86 amd processor manual index files. 2021-09-15 13:26:51 -04:00
caheckman
031c079b60 Allow F2 as an alternate REP prefix 2021-09-13 16:14:24 -04:00
ghidra1
b5b4f94eed Merge remote-tracking branch 'origin/patch'
Conflicts:
	Ghidra/Features/Decompiler/certification.manifest
2021-09-08 23:22:35 -04:00
Philip Pemberton
84492a89d6 GP-1109 Fix 6502 SBC carry handling (Closes #3190, Closes #3189) 2021-09-08 11:51:08 -04:00
ghidra1
793ad1faae Merge remote-tracking branch 'origin/patch' 2021-09-07 21:56:38 -04:00
emteere
f90e3a4627 GP-1258 code review changes 2021-09-07 12:19:41 +00:00
Ryan Kurtz
8da56f71ae Merge remote-tracking branch
'origin/GP-1112_ghidorahrex_PR-3170_agatti_65c02' (Closes #1261, Closes
#3170)
2021-09-03 13:38:01 -04:00
Ryan Kurtz
54b3979211 Merge remote-tracking branch 'origin/patch' 2021-09-03 13:36:13 -04:00
emteere
4d44bea5a0 GP-1258 SH4 and general reference analysis improvements 2021-09-03 15:02:09 +00:00
ghidorahrex
9c363c35c2 Fixed 65C02 ldefs 2021-09-03 10:43:05 -04:00
ghidra1
eab50936fd GP-1278 added support for additional ELF AARCH64 relocations 2021-09-03 09:35:49 -04:00
Ryan Kurtz
c51183f1a2 Merge remote-tracking branch 'origin/patch' 2021-09-01 10:14:35 -04:00
ghidorahrex
56a9efee76 GP-1228: Improved modeling of FXSAVE and FXRSTOR instructions 2021-09-01 10:03:29 -04:00
Ryan Kurtz
0d6c0e3f5d Merge remote-tracking branch 'origin/GP-1212_James_SH4_fixes--SQUASHED' 2021-09-01 09:02:44 -04:00
James
92ac6a332b GP-1212 adjustments to cspec files from code review
GP-1212 SH4 fixes
2021-09-01 08:41:00 -04:00
Ryan Kurtz
977fa00607 Merge remote-tracking branch
'origin/GP-1263_ghidorahrex_PR-3379_zt-chen_superh-movl-fix' (Closes
#3379)
2021-08-31 12:53:49 -04:00
chenzitai
4d2aa982fb Fix bug in movml.l instruction of superh.sinc
When rn_imm_08_11 is 15, it should load the value pointed by r15 to pr
instead of read the value in pr to r15 pointer.
2021-08-28 01:29:07 +01:00
James
73d36477fa GP-1185 addressing code review comments
GP-1185 added semantics for PSLLDQ
GP-1185 added semantics for several missing x64 vector ops
2021-08-27 15:37:31 -04:00
Ryan Kurtz
9593f16585 Merge remote-tracking branch
'origin/GP-1075_ghidorahrex_PR-1672_mumbel_ppcregwrite' (Closes #1672)
2021-08-27 09:41:33 -04:00
Ryan Kurtz
69e4e0656d Merge remote-tracking branch 'origin/patch' 2021-08-24 08:45:57 -04:00
Dan
c0739bbede GP-1221: Working out ARM-specific opinion that uses ldefs. 2021-08-24 08:27:22 -04:00
Ryan Kurtz
366d458407 Merge remote-tracking branch 'origin/GP-1043_ghidorahrex_ARM_adcs_sbcs_flag_fix--SQUASHED' 2021-08-17 14:47:40 -04:00
Ryan Kurtz
4645e3ce1e Merge remote-tracking branch
'origin/GP-1220_ghidorahrex_PR-2926_nneonneo_tricore_idx' (Closes #2926)
2021-08-17 14:45:32 -04:00
Ryan Kurtz
38887cfb65 Merge remote-tracking branch
'origin/GP-1219_ghidorahrex_PR-2923_nneonneo_vmx_idx' (Closes #2923)
2021-08-17 14:43:16 -04:00
Ryan Kurtz
cf3b859015 Merge remote-tracking branch
'origin/GP-1129_ghidorahrex_PR-3212_niooss-ledger_fix-mips32el-double-constant'
(Closes #3212)
2021-08-17 14:05:10 -04:00
Ryan Kurtz
8e0c298bd3 Merge remote-tracking branch
'origin/GP-1218_ghidorahrex_PR-2927_nneonneo_powerisa_idx' (Closes
#2927)
2021-08-17 14:02:06 -04:00
Ryan Kurtz
54c426f117 Merge remote-tracking branch 'origin/GP-1185_x64_vector_ops--SQUASHED' 2021-08-17 13:57:19 -04:00
ghidorahrex
7130901ed5 Corrected ARM/Thumb adcs/sbcs flag update macros. 2021-08-17 10:47:43 -04:00
James
7b9e9c8ec1 GP-1185 addressing code review comments
GP-1185 added semantics for PSLLDQ
GP-1185 added semantics for several missing x64 vector ops
2021-08-17 09:43:04 -04:00
Ryan Kurtz
bd4a5eeb97 GP-0: Fixing typo in pic18.slaspec comment (Closes #782) 2021-08-13 12:22:09 -04:00
Ryan Kurtz
751da99419 Merge remote-tracking branch 'origin/GP-1135_James_sparc_fixes--SQUASHED' 2021-08-13 12:12:24 -04:00
James
ea7de5e5af GP-1135 addressing code review, replaces major version change with minor version change
GP-1135 added explanatory comment
GP-1135 fixes to SPARC - updated major version of language
2021-08-13 09:41:38 -04:00
ghidra1
f5615aa240 Merge remote-tracking branch 'origin/patch' 2021-08-04 19:38:26 -04:00
ghidra1
0e81327c46 Merge remote-tracking branch 'origin/GP-1163_RealModeReferences' into patch 2021-08-04 11:05:35 -04:00
ghidra1
6b04eb793f Merge remote-tracking branch 'origin/patch' 2021-08-03 19:26:00 -04:00
ghidorahrex
86a85afd1b GP-1152 Fixed issue with superh fmov/fmov.s decrement/read ordering 2021-08-03 19:21:29 -04:00
ghidra1
40abafd9c8 Merge remote-tracking branch 'origin/patch' 2021-08-02 18:01:17 -04:00
ghidra1
9ee192dbe9 Merge remote-tracking branch 'origin/GP-1167_emteere_VLDST1_fix--SQUASHED' into patch 2021-08-02 18:00:13 -04:00
emteere
3be5defc15 GP-1167 Arm VLD/ST1 instruction semantics fix 2021-08-02 17:59:22 -04:00
ghidra1
ecf196fbea Merge remote-tracking branch 'origin/patch' 2021-08-02 17:37:15 -04:00
ghidra1
0a24532bf7 GP-1110 Refactor ElfDefaultGotPltMarkup.processDynamicPLTGOT implementation, Correct duplicate ELF relocation table processing, and other minor ELF cleanup 2021-08-02 15:58:37 -04:00
Ryan Kurtz
f357936a16 Merge remote-tracking branch
'origin/GP-1054_ghidorahrex_PR-3096_agatti_6502-instruction-flags-fix'
(Closes #3096)
2021-07-29 09:51:43 -04:00
caheckman
05f292a5e7 Let segmentop scripts follow natural parameter order 2021-07-27 14:31:12 -04:00
Antonio Flores Montoya
f555d0dcb7 fix vfnma 32 bits and make all part of vfpv4 2021-07-15 14:15:03 -04:00
Antonio Flores Montoya
9230473b22 add vfma vfms vfnma and vfnms to ARM processor 2021-07-15 10:44:26 -04:00
ghidorahrex
b3002b78fa Corrected MIPSLE processor tests to run correct suite. 2021-07-13 11:12:56 -04:00
Nicolas Iooss
8194ee34ec fix(mips32el): fix positions of float registers in Little-Endian MIPS32 CPU
When loading double constants using two lwc1 instructions ("Load Word in
Coprocessor 1"), the words are swapped on Little-Endian MIPS machines.

More precisely, when compiling the following function with
mipsel-linux-gnu-gcc -O3 -mfp32 -march=mips1

    double add_0x100000000(double num) {
        return num + 4294967296.0;
    }

The produced assembly (seen with objdump) is:

    00000000 <add_0x100000000>:
       0:    3c1c0000     lui   gp,0x0
       4:    279c0000     addiu gp,gp,0
       8:    0399e021     addu  gp,gp,t9
       c:    8f820000     lw    v0,0(gp)
      10:    00000000     nop
      14:    c4400000     lwc1  $f0,0(v0)     ; load the first 32-bit word
      18:    00000000     nop
      1c:    c4410004     lwc1  $f1,4(v0)     ; load the second 32-bit word
      20:    03e00008     jr    ra
      24:    46206000     add.d $f0,$f12,$f0  ; perform the addition

(the rodata section contains "00000000 0000f041" to encode the constant).

When opening the produced file with Ghidra 10.0, the assembly code is
fine but the decompiler outputs:

    double add_0x100000000(double param_1)
    {
      return param_1 + 5.465589744795806e-315;
    }

5.465589744795806e-315 comes from the decoding of "0000f041 00000000"
instead of "00000000 0000f041": the words were swapped.

Fix this by swapping f0 and f1, f2 and f3... when using a Little-Endian
MIPS machine with 32-bit floating-point registers.
2021-07-12 21:06:44 +02:00
ghidorahrex
0b88063785 Added 65c02 processor variant to 6502 module. 2021-07-12 13:28:30 -04:00
Alessandro Gatti
5fe32eb887 Address review issues. 2021-07-09 23:20:59 +02:00
ghidra1
cad6b3c9d9 Merge remote-tracking branch 'origin/patch' 2021-07-07 15:04:15 -04:00
ghidra1
a1bee163d1 GP-1090 added support for a few more SuperH ELF Relocation types 2021-07-07 15:03:34 -04:00
Alessandro Gatti
49ebf156d1 Fix SBC definition as per #3190. 2021-07-07 10:54:59 +02:00
ghidra1
06e3a568bc Merge remote-tracking branch 'origin/patch' 2021-07-06 17:17:55 -04:00
ghidra1
c2652d36d1 GP-1090 Added SuperH/SuperH4 ELF relocation handler and improved performance of ELF filler segment pruning to avoid uneccessary block creation 2021-07-06 17:12:18 -04:00
ghidra1
99d0e98256 Merge remote-tracking branch
'origin/GP-1078_ghidorahrex_ARMEmulation_no_thumb'

Conflicts:
	Ghidra/Processors/ARM/src/main/java/ghidra/program/emulation/ARMEmulateInstructionStateModifier.java
2021-07-06 16:36:01 -04:00
Alessandro Gatti
2802425d68 Add Rockwell 65C02 opcodes. 2021-07-04 16:30:04 +02:00
ghidra1
68b7628303 Merge remote-tracking branch 'origin/patch' 2021-07-02 09:21:54 -04:00
ghidra1
879a249fb1 GP-1063 corrected ARMv5 emulation issue 2021-07-02 09:14:56 -04:00
ghidorahrex
c3dc05c7bf Corrected issue with ARM emulation for older versions with no thumbmode. 2021-06-30 10:00:57 -04:00
Alessandro Gatti
b91b43100d Add support for 65C02 opcodes.
Fixes #1261.
2021-06-29 01:52:12 +02:00
mumbel
d61be26b38 [PowerPC] Various SLEIGH fixes
- Ensure registers do not overlap for source and destination registers
- preserve register values when needed
- signed issue comparing unsigned to negative
- unued argument in divZero macro
- stwcx. and stdcx. should set cr bits to continue
- out of order flag setting vs value assignment
- some fixes in setting wrong cr bit
2021-06-25 10:54:45 -05:00
ghidra1
10fa9bcca4 Merge remote-tracking branch 'origin/GP-938_ghidorahrex_PR-3022_veritas501_fix_jic' 2021-06-23 17:54:11 -04:00
ghidra1
00ba983a42 Merge remote-tracking branch 'origin/GP-1029_ghidra1_ElfExternalRelocations--SQUASHED' into Ghidra_10.0 2021-06-09 18:26:43 -04:00
ghidra1
e89a8dcde3 GP-1029 Detect and mark unsupported EXTERNAL data relocation and correct MIPS compound relocation processing bug. 2021-06-09 18:26:05 -04:00
ghidra1
5321fe7dd8 Merge remote-tracking branch
'origin/GP-753_ghidorahrex_PR-2864_VGKintsugi_VGKintsugi-div1' into
Ghidra_10.0 (Closes #2864, Closes #2863)
2021-06-09 17:14:53 -04:00
ghidra1
9fd4af2d7c Merge remote-tracking branch
'origin/GP-954_ghidorahrex_x86_64_stack_push--SQUASHED' into Ghidra_10.0
(Closes #2976)
2021-06-09 11:02:41 -04:00
ghidorahrex
a2929e0568 Implemented all combinations of 66/67/REX.W prefixes for CALLF instruction in 64-bit.
Additional CALLF changes
More aggressive changes for x86-64 CALL/RET instructions
Fixed x86-64 call/ret instructions with prefix 67 overrides
2021-06-09 10:22:08 -04:00
VGKintsugi
89f6e9bb7d SuperH: Additional delay slot bug fixes
Review of all delay slot instructions.
2021-06-03 11:39:01 -04:00
ghidra1
f2fc55554a Merge remote-tracking branch
'origin/GP-982_ghidorahrex_x86_rdmsr--SQUASHED' into Ghidra_10.0 (Closes
#3046)
2021-06-03 10:54:29 -04:00
Alessandro Gatti
843a5c2261 Update 6502 flags handling. 2021-06-02 16:34:00 +02:00
Alessandro Gatti
d588033a56 Fix BIT instruction description.
Flag handling for the BIT instruction did not follow the datasheet.

This fixes #2558.
2021-06-02 15:56:32 +02:00
ghidra1
0a8db1e0ad Merge remote-tracking branch 'origin/GP-647_ghidorahrex_pic24_return_instructions' into Ghidra_10.0 2021-06-01 10:02:10 -04:00
ghidorahrex
f7e6f77032 Corrected RDMSR instruction p-code for 64-bit. 2021-05-28 08:47:50 -04:00
ghidorahrex
c9634dd808 Fixed correct SRL byte to grab from tmp 2021-05-21 10:44:29 -04:00
ghidorahrex
38a38056e8 removed @if NEVER blocks from PIC24.sinc 2021-05-21 10:40:38 -04:00
ghidra1
568b264bbb Merge remote-tracking branch
'origin/GP-220_James_addrsize_bit64--SQUASHED' (Closes #2297, Closes
#2286)
2021-05-19 22:28:05 -04:00
James
6661f9ab1f GP-220 Fixed various issues pertaining to x86 instruction prefixes. 2021-05-19 22:25:20 -04:00
ghidra1
39a609e24b Merge remote-tracking branch
'origin/GP-937_ghidorahrex_PR-3008_bobataylor_hcs12_fix_idx1' (Closes
#3008)
2021-05-19 15:32:49 -04:00
ghidra1
fe0b081973 Merge remote-tracking branch
'origin/GP-939_ghidorahrex_PR-2970_bobataylor_v850_fix_mul_simm' (Closes
#2970)
2021-05-19 15:18:04 -04:00
ghidra1
e21149816c Merge remote-tracking branch
'origin/GP-753_ghidorahrex_PR-2864_VGKintsugi_superh_div1_fix--SQUASHED'
(Closes #2864)
2021-05-18 09:53:31 -04:00
ghidra1
d44c91e906 Merge remote-tracking branch 'origin/GP-920_ghidorahrex_HCS12_PPAGE'
(Closes #1099)
2021-05-18 08:57:32 -04:00
VGKintsugi
fc91a10673 SuperH: Additional delay slot bug fixes
Review of all delay slot instructions.
SuperH: Delay slot fix for bf/s and and bt/s
Code now caches the value of the $(T_FLAG) before executing the delay slot. Previously the instruction executed in delay slot could potentially change the value of $(T_FLAG) and thereby resulting in incorrect behavior. Credit to Slinga and Waterfuell from SegaXtreme for reporting the issue.
2021-05-17 15:49:53 -04:00
Ryan Kurtz
3a0ae8ee39 GP-849: Gradle 7 support 2021-05-12 13:45:16 -04:00
ghidra1
65e4c704ec Merge remote-tracking branch 'origin/GP-932_ghidra1_isDynamicallySized' 2021-05-12 11:02:02 -04:00
ghidra1
44d8733f8c GP-928 corrected missing operand for SPARC WR instruction 2021-05-12 09:09:15 -04:00
ghidra1
b5160b253c GP-932 renamed and corrected improper implementation and use of the
Datatype.isDynamicallySized method
2021-05-12 08:22:00 -04:00