Files
rea/tests/conformance/ghidra/mips16-shared.S
T
Ysopwnable e9fe6437a7 feat(ghidra): admit verified MIPS16 shared ELF images
Admit the verified ELF32 o32 MIPS32r2 MIPS16 shared-image profile after complete source load and relocation inspection. Preserve caller-selected bytes, pin the endian-matched language, and report per-address decoder context. Refuse unverified relocation shapes with explicit reasons.

Verified on Linux x64 with Ghidra 12.1.4: eight source-owned public CLI/MCP controls, original-artifact instruction/pseudocode/export replay, snapshot restore and owned cleanup. 152 integrated focused tests, static checks and documentation checks passed.

Fixes #1851

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: Kaoru0822 <208281322+kaoru0822-kitauji@users.noreply.github.com>
2026-10-12 07:50:31 +08:00

42 lines
850 B
ArmAsm

/* Source-owned mixed-instruction shared-image control. */
.abicalls
.module fp=xx
.module nooddspreg
.text
.set noreorder
.set nomicromips
.set mips16
.globl rea_mips16_probe
.type rea_mips16_probe, @function
.ent rea_mips16_probe
rea_mips16_probe:
li $2, 90
xor $2, $4
addiu $2, 7
jrc $31
.end rea_mips16_probe
.size rea_mips16_probe, . - rea_mips16_probe
.ifndef REA_MIPS_SYMBOL_RELATIVE
.hidden rea_mips16_probe
.endif
.set nomips16
.globl rea_mips32_probe
.type rea_mips32_probe, @function
.ent rea_mips32_probe
rea_mips32_probe:
addiu $2, $4, 3
jr $31
nop
.end rea_mips32_probe
.size rea_mips32_probe, . - rea_mips32_probe
.data
.balign 4
.globl rea_mips16_pointer
.type rea_mips16_pointer, @object
.size rea_mips16_pointer, 4
rea_mips16_pointer:
.word rea_mips16_probe
.section .note.GNU-stack, "", @progbits