Files
lifting-bits-sleigh/tests
auto-updater[bot] eeee4453c8 Update Ghidra HEAD to commit 94164bd6e (#421)
* Bump Ghidra HEAD commit 94164bd6e

Changed files:

```
M	Ghidra/Features/Decompiler/src/decompile/cpp/architecture.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/bfd_arch.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/block.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/block.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/blockaction.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/blockaction.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/consolemain.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/coreaction.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/coreaction.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/cpool.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/cpool.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/database.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/error.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/flow.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/funcdata.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/funcdata.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/funcdata_block.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/funcdata_op.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/funcdata_varnode.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/ghidra_arch.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/ghidra_arch.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/ghidra_process.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/ifacedecomp.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/ifaceterm.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/interface.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/jumptable.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/loadimage.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/marshal.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/marshal.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/modelrules.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/multiprecision.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/op.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/op.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/override.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/pcoderaw.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/raw_arch.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/ruleaction.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/semantics.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/semantics.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/sleigh.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/slgh_compile.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/slgh_compile.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/slghparse.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/slghparse.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/slghparse.y
M	Ghidra/Features/Decompiler/src/decompile/cpp/slghpatexpress.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/slghpattern.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/slghscan.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/slghsymbol.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/slghsymbol.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/translate.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/type.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/type.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/userop.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/variable.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/variable.hh
M	Ghidra/Features/Decompiler/src/decompile/cpp/varnode.cc
M	Ghidra/Features/Decompiler/src/decompile/cpp/varnode.hh
A	Ghidra/Features/Decompiler/src/decompile/unittests/testmultiprec.cc
M	Ghidra/Processors/8051/certification.manifest
M	Ghidra/Processors/8051/data/languages/8051.ldefs
A	Ghidra/Processors/8051/data/languages/cip-51.pspec
M	Ghidra/Processors/8051/data/languages/keil-cx51.cspec
M	Ghidra/Processors/AARCH64/certification.manifest
M	Ghidra/Processors/AARCH64/data/languages/AARCH64.ldefs
M	Ghidra/Processors/AARCH64/data/languages/AARCH64.opinion
D	Ghidra/Processors/AARCH64/data/languages/AARCH64_swift.cspec
M	Ghidra/Processors/AARCH64/data/languages/AppleSilicon.ldefs
M	Ghidra/Processors/MIPS/certification.manifest
M	Ghidra/Processors/MIPS/data/languages/mips.ldefs
M	Ghidra/Processors/MIPS/data/languages/mips.sinc
A	Ghidra/Processors/MIPS/data/languages/mips32_16e.pspec
A	Ghidra/Processors/MIPS/data/languages/mips64_16e.pspec
M	Ghidra/Processors/MIPS/data/languages/mips_dsp.sinc
M	Ghidra/Processors/TI_MSP430/data/languages/TI_MSP430.cspec
M	Ghidra/Processors/x86/certification.manifest
M	Ghidra/Processors/x86/data/languages/avx.sinc
M	Ghidra/Processors/x86/data/languages/avx512.sinc
M	Ghidra/Processors/x86/data/languages/cet.sinc
M	Ghidra/Processors/x86/data/languages/fma.sinc
M	Ghidra/Processors/x86/data/languages/ia.sinc
D	Ghidra/Processors/x86/data/languages/x86-64-swift.cspec
M	Ghidra/Processors/x86/data/languages/x86.ldefs
M	Ghidra/Processors/x86/data/languages/x86.opinion
```

Commit details:

```
[Commit 1/14]
Hash: 6fe164d65107354f22314fd0db8b894b8b1c2fdf
Date: 2026-05-19 14:14:19 +0000
Message: GP-6847 fix musl issue with _exit function for Decompiler

Files changed:
  M	Ghidra/Features/Decompiler/src/decompile/cpp/ghidra_process.cc

[Commit 2/14]
Hash: 47b4d28cb0fdffdceea659a1e8d465c74fdb9e98
Date: 2026-05-18 13:45:39 -0400
Message: GP-6697: Fixed MIPS signed immediates

Files changed:
  M	Ghidra/Processors/MIPS/data/languages/mips.sinc
  M	Ghidra/Processors/MIPS/data/languages/mips_dsp.sinc

[Commit 3/14]
Hash: 3a479c9f7ebee2f8dd91e01b1dca9b04cae1b992
Date: 2026-05-17 19:48:41 -0400
Message: GP-6347: SourceLanguage modules and new extension points

Files changed:
  M	Ghidra/Processors/AARCH64/certification.manifest
  M	Ghidra/Processors/AARCH64/data/languages/AARCH64.ldefs
  M	Ghidra/Processors/AARCH64/data/languages/AARCH64.opinion
  D	Ghidra/Processors/AARCH64/data/languages/AARCH64_swift.cspec
  M	Ghidra/Processors/AARCH64/data/languages/AppleSilicon.ldefs
  M	Ghidra/Processors/x86/certification.manifest
  D	Ghidra/Processors/x86/data/languages/x86-64-swift.cspec
  M	Ghidra/Processors/x86/data/languages/x86.ldefs
  M	Ghidra/Processors/x86/data/languages/x86.opinion

[Commit 4/14]
Hash: 4661fc0bed1a46096a462a1d39f07674fb931c32
Date: 2026-05-04 21:48:44 +0000
Message: GP-6788 Keep track of immediate COPY propagation

Files changed:
  M	Ghidra/Features/Decompiler/src/decompile/cpp/block.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/block.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/blockaction.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/blockaction.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/coreaction.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/coreaction.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/funcdata.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/funcdata.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/funcdata_block.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/funcdata_op.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/op.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/op.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/ruleaction.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/variable.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/variable.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/varnode.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/varnode.hh

[Commit 5/14]
Hash: 4e6ba952eacbf27143edb324a343172de9bc1533
Date: 2026-04-24 20:54:00 +0000
Message: GP-6757 Additional memory fixes

Files changed:
  M	Ghidra/Features/Decompiler/src/decompile/cpp/architecture.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/cpool.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/cpool.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/database.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/ghidra_arch.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/ghidra_arch.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/ghidra_process.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/marshal.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/multiprecision.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/pcoderaw.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slgh_compile.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slgh_compile.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slghparse.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slghparse.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slghparse.y
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slghpattern.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slghscan.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slghsymbol.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slghsymbol.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/translate.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/userop.cc
  A	Ghidra/Features/Decompiler/src/decompile/unittests/testmultiprec.cc

[Commit 6/14]
Hash: 10029bf53d01b0d8af61c6e0c270cc0281650b31
Date: 2026-04-28 16:34:16 +0000
Message: GP-6675: Fixed up some instruction definitions

Files changed:
  M	Ghidra/Processors/x86/data/languages/ia.sinc
  M	Ghidra/Processors/x86/data/languages/x86.ldefs

[Commit 7/14]
Hash: cfaee5f04f142e54f5d6d772a1c07019beaab0b0
Date: 2025-09-02 12:06:29 -0700
Message: Sleigh engine memory fixes

Files changed:
  M	Ghidra/Features/Decompiler/src/decompile/cpp/marshal.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/marshal.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/semantics.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slghpatexpress.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slghsymbol.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slghsymbol.hh

[Commit 8/14]
Hash: dc38904b1627b83b2ed9064ec44ed8c11d956c1f
Date: 2026-04-20 21:52:06 +0000
Message: GP-6757 unique_ptr protections

Files changed:
  M	Ghidra/Features/Decompiler/src/decompile/cpp/architecture.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/bfd_arch.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/block.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/consolemain.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/database.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/error.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/flow.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/funcdata.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/ifacedecomp.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/ifaceterm.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/interface.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/jumptable.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/loadimage.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/modelrules.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/override.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/raw_arch.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/semantics.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/sleigh.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slghpatexpress.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slghpattern.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/slghsymbol.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/translate.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/userop.cc

[Commit 9/14]
Hash: 67e0516f62f33bfa833bdc883bb8ea63d64c79e9
Date: 2026-05-07 17:16:49 +0000
Message: GP-6655: Create ldefs for 16e mode, so it appears in Dynamic Listing - Disassemble As

Files changed:
  M	Ghidra/Processors/MIPS/certification.manifest
  M	Ghidra/Processors/MIPS/data/languages/mips.ldefs
  A	Ghidra/Processors/MIPS/data/languages/mips32_16e.pspec
  A	Ghidra/Processors/MIPS/data/languages/mips64_16e.pspec

[Commit 10/14]
Hash: 8a09a052583f60432b68bcadcdc5adfb5fbf16e5
Date: 2026-05-07 16:37:12 +0000
Message: GP-6798: Corrected CIP-51 language definition

Files changed:
  M	Ghidra/Processors/8051/certification.manifest
  M	Ghidra/Processors/8051/data/languages/8051.ldefs
  A	Ghidra/Processors/8051/data/languages/cip-51.pspec
  M	Ghidra/Processors/8051/data/languages/keil-cx51.cspec

[Commit 11/14]
Hash: 4fac3553a866ade6c280cd33c9cfc58497a27be6
Date: 2026-05-05 15:37:34 -0400
Message: GP-6776 additional fixes

Files changed:
  M	Ghidra/Processors/TI_MSP430/data/languages/TI_MSP430.cspec

[Commit 12/14]
Hash: 9e547d2b51a04dad3a4f102d416ceab1fb79e3f9
Date: 2026-04-28 22:47:16 +0000
Message: GP-5525 More targeted data-type warnings

Files changed:
  M	Ghidra/Features/Decompiler/src/decompile/cpp/funcdata.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/funcdata.hh
  M	Ghidra/Features/Decompiler/src/decompile/cpp/funcdata_varnode.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/type.cc
  M	Ghidra/Features/Decompiler/src/decompile/cpp/type.hh

[Commit 13/14]
Hash: 329d7bae86061e106c64044dce3637fd6ba0646f
Date: 2026-04-06 17:17:48 -0700
Message: address PR feedback
Details:
Fixes issues raised by @GhidorahRex. Adds new bug fx for MASKMOVQ.

Files changed:
  M	Ghidra/Processors/x86/data/languages/ia.sinc

[Commit 14/14]
Hash: b16f1556d26163d6fdc28bfe9dbac3c010b68ba9
Date: 2026-04-01 10:47:29 -0700
Message: fix various bugs in the x86 processor spec
Details:
Specifically:

 * ARPL uses CF instead of ZF for conditional RPL adjustment
 * DAA/DAS incorrect CF computation and missing result flags
 * SHR by-1 OF flag unconditionally set to 0
 * RDTSCP incorrectly restricted to 64-bit mode only
 * SYSEXIT uses wrong register mapping
 * FCMOVNBE condition logic error
 * FYL2X/FYL2XP1 missing log2 computation
 * CVTPD2DQ uses trunc() instead of round()
 * SUBB MMX missing byte lane [8,8]
 * PSLLD/PSLLQ XMM use per-element shift count
 * PCMPxSTRx missing implicit EAX/EDX inputs and EFLAGS outputs
 * CET WRSSQ/WRUSSQ duplicate 0x0F byte in encoding
 * FMA VEX_W0 missing on PS YMM 231-form constructors
 * VTESTPS YMM sign bit offset errors
 * AVX-512 VANDPS YMM dead variable
 * AVX-512 VMOVHLPS copies src2 to both halves
 * AVX-512 VMOVHPD load form dead variable
 * VPSUBSW ZMM form multiple errors
 * CVTPD2PI uses trunc() instead of round()
 * PSRAD XMM uses full 128-bit shift count
 * VMULPS YMM missing 8th element
 * FPREM/FPREM1 broken remainder computation
 * FDECSTP clears wrong condition code bit
 * VMCLEAR incorrectly restricted to 64-bit mode
 * SYSCALL does not model RCX and R11 clobber
 * VRANGESS missing imm8 operand
 * VFPCLASSSD/VFPCLASSSS missing imm8 operand
 * AVX-512 VUCOMISD/VUCOMISS missing EFLAGS computation
 * MASKMOVDQU incorrectly assigns to XmmReg1
 * DAS has same CF computation and missing flags issues as DAA
 * XGETBV/XSETBV ignore ECX selector

Files changed:
  M	Ghidra/Processors/x86/data/languages/avx.sinc
  M	Ghidra/Processors/x86/data/languages/avx512.sinc
  M	Ghidra/Processors/x86/data/languages/cet.sinc
  M	Ghidra/Processors/x86/data/languages/fma.sinc
  M	Ghidra/Processors/x86/data/languages/ia.sinc
```

* Add new unittest file

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Eric Kilmer <eric.kilmer@trailofbits.com>
2026-05-25 17:14:03 -04:00
..
2022-08-22 15:41:53 +10:00