rea/tests/composition
Ariel Fikru Avicenna c86b09a109
feat(ghidra): admit 32-bit big-endian PowerPC ELF (#1747)
* feat(ghidra): admit 32-bit big-endian PowerPC ELF

Recognize EM_PPC as a provider-neutral `powerpc` family that keeps its ELF
class, byte order, type and flags, and admit ELF32 big-endian ET_EXEC through
a bounded Ghidra lane. ELF64, little-endian, relocatable/shared objects and
EF_PPC_EMB are refused with a specific reason; Hopper and IDA do not gain
PowerPC support, and Windows Ghidra P0 is unchanged.

Ghidra's ELF loader selects PowerPC:BE:32:e500:default for a plain EM_PPC
header, which misreads 750-family code. The lane binds
PowerPC:BE:32:default/default in the profile (language_selection
"admitted-lane-v1"), imports with it and checks the reported language. A
language set through REA_GHIDRA_LANGUAGE_ID still replaces the lane default.

Add a source-owned fixture, fixed-encoding probe, GNU readelf cross-check and
the optional `verify:ghidra:ppc` real-provider lane, plus docs/ghidra-ppc.md.

Refs #1741

* style(ghidra): format shared PowerPC profile integration

* fix(ghidra): preserve caller-selected PowerPC languages

---------

Co-authored-by: morluto <76467478+morluto@users.noreply.github.com>
2026-10-14 06:35:55 +08:00
..
analysis-sessions feat(ghidra): admit 32-bit big-endian PowerPC ELF (#1747) 2026-10-14 06:35:55 +08:00
callPathParserOperation.test.ts fix(reverse): reconcile cleanup ownership and mutation diagnostics (#2799) 2026-10-14 04:47:34 +08:00
directAnalysisCleanup.test.ts fix(io): consolidate managed snapshots and retain cleanup ownership 2026-10-12 14:46:37 +08:00
directAnalysisFactories.test.ts refactor: remove forwarding exports and redundant aliases 2026-10-09 22:46:09 +08:00
directAnalysisXrefs.test.ts refactor: remove forwarding exports and redundant aliases 2026-10-09 22:46:09 +08:00
evmModuleContract.test.ts test(evm): verify static descriptor bindings before use (#2427) 2026-10-13 09:07:40 +08:00
idaProvider.test.ts fix(application): accept alternative document selection in binary_ove… (#2680) 2026-10-14 03:11:02 +08:00
resolveWindowsProviderExecutable.test.ts fix(reverse): reconcile cleanup ownership and mutation diagnostics (#2799) 2026-10-14 04:47:34 +08:00
reverseEngineering.test.ts fix(reverse): reconcile cleanup ownership and mutation diagnostics (#2799) 2026-10-14 04:47:34 +08:00
reverseEngineeringAdmission.test.ts fix(reverse): reconcile cleanup ownership and mutation diagnostics (#2799) 2026-10-14 04:47:34 +08:00
reverseEngineeringCancellation.test.ts fix(reverse): reconcile cleanup ownership and mutation diagnostics (#2799) 2026-10-14 04:47:34 +08:00
reverseEngineeringCommandPort.test.ts fix(reverse): reconcile cleanup ownership and mutation diagnostics (#2799) 2026-10-14 04:47:34 +08:00
reverseEngineeringEdgeCases.test.ts fix(reverse): reconcile cleanup ownership and mutation diagnostics (#2799) 2026-10-14 04:47:34 +08:00
reverseEngineeringLocalInspectionEdgeCases.test.ts fix(reverse): reconcile cleanup ownership and mutation diagnostics (#2799) 2026-10-14 04:47:34 +08:00