Commit graph

1680 commits

Author SHA1 Message Date
Ryan Kurtz
388a4d7c2b Merge remote-tracking branch 'origin/GP-4499_ghidorahrex_aarcht64_ldst_wback_fix' into patch 2024-04-12 13:43:52 -04:00
emteere
9c2b3670fa GP-4513 Added callfixup for __chkstk routine in windows AARCH64 binaries 2024-04-11 15:46:16 -04:00
Ryan Kurtz
2237d2ac9e Merge remote-tracking branch 'origin/patch' 2024-04-10 10:35:11 -04:00
emteere
154ccaae96 GP-4507 added Tricore p0/p8 to .cspec prefersplit list 2024-04-10 10:16:57 -04:00
ghidorahrex
3169948bc8 GP-3723: Added PIC16F MOVLB variant instruction 2024-04-09 13:00:58 +00:00
ghidorahrex
4b00b140d7 GP-4499: Fixed AARCH64 ldst_wback subconstructor 2024-04-08 15:54:57 +00:00
Ryan Kurtz
3e35b4d4a7 Merge remote-tracking branch 'origin/patch' 2024-04-03 14:36:07 -04:00
ghidra1
6705f25da2 GP-0 Additional ELF relocation handler change 2024-04-01 17:10:27 -04:00
ghidra1
01087ba0a8 GP-0 Minor revision to ELF relocation handlers 2024-04-01 17:09:44 -04:00
emteere
4af7788201 GP-4479 fix decompiling of V850 binaries not using GP and TP registers
as constants when when computing memory references
2024-04-01 16:23:06 -04:00
Ryan Kurtz
f5d956d5e6 Merge remote-tracking branch 'origin/GP-4031_X86SystemVABI' 2024-04-01 11:22:00 -04:00
Ryan Kurtz
6b4f9b71b5 Merge remote-tracking branch 'origin/patch' 2024-04-01 11:18:56 -04:00
Ryan Kurtz
f0aaf4ebbb Merge remote-tracking branch 'origin/GP-3917_emteere_AddBTIcToFunctionStarts' into patch 2024-04-01 11:08:25 -04:00
emteere
bb5f35216e GP-4468 tricore calling convention extension="inttype" fix 2024-03-29 12:18:09 -04:00
dev747368
d566cde70e GP-0 fix dwarf sparc register mappings 2024-03-28 16:26:47 +00:00
Ryan Kurtz
c131adc670 Merge remote-tracking branch
'origin/GP-4464_dev747368_PR-6301_Ninja3047_fix-sparc-dwarf'
(Closes #6301)
2024-03-27 13:26:26 -04:00
Ryan Kurtz
0f3351ab6a Merge branch 'GP-0_ryanmkurtz_PR-6345_RoboSchmied_endianness-typo' 2024-03-27 07:27:47 -04:00
dev747368
03cf1b7cd8 GP-4464 PR-6301 certify file 2024-03-26 19:26:07 +00:00
Ryan Kurtz
a56712d4ab Merge remote-tracking branch
'origin/GP-4401_ghidracadabra_PR-4120_flk0_master' (Closes #4120)
2024-03-25 10:14:37 -04:00
James
697718ff35 GP-4401 code review changes 2024-03-25 14:04:37 +00:00
RoboSchmied
d7cc532fe3 Fix: 132 typos
Signed-off-by: RoboSchmied <github@roboschmie.de>
2024-03-22 02:25:30 +01:00
emteere
797d1b8103 GP-3917 Adding BTIc function start pattern for AARCH64 2024-03-20 16:24:06 -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
Vesa-Pekka Palmu
387c283e89 Github issue #5767 - 6x09.sinc: Fix COM instruction
The complement macro was erroneously always complementing A register
instead of the macro parameter op. This caused errors with the COMB
and COM OP1 instructions.

Closes #5767.
2024-03-20 17:56:14 +02: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
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
Ryan Kurtz
86b7d45ba8 Merge remote-tracking branch 'origin/patch' 2024-03-14 12:53:10 -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
caheckman
c674e1f2ec GP-4031 x86 System V ABI 2024-03-13 16:55:44 +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
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
ghidorahrex
18b1d5b6a1 GP-4419: Fixed pcode for ppc lwax instruction 2024-03-11 15:50:45 +00: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
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
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
ghidorahrex
f35073e033 GP-1791: Added ARM Custom Datapath Extension 2024-03-07 13:59:33 -05:00
emteere
902bcb69a2 GP-3110 fixing minor compilation issues and certification 2024-03-07 11:16:42 -05:00
Ryan Kurtz
c3c34ebf10 Merge remote-tracking branch 'origin/GP-4125_ghidra1_ArtificialBlockAttribute--SQUASHED' 2024-03-07 08:50:41 -05:00
ghidra1
ae475f743b GP-4125 Added memory block artificial attribute flag 2024-03-06 16:53:12 -05:00
ghidra1
ce9418d831 GP-4398 minor formatting 2024-03-06 10:58:27 -05:00
mumbel
59d8eefad1 update constant to type 2024-03-05 22:45:29 -06:00
mumbel
e024e6536d tricore analysis 2024-03-05 22:25:15 -06:00