AnyPS5/core/relinker/codegen/src
Achraf Reyani ce8dbc977f fix(relinker): decode XOP instructions
The x86 decoder had no XOP (AMD 8F escape) support and read 8F E8.. as
POP r/m, losing instruction boundaries. Since #2238 roots code addresses
taken by RIP-relative LEA, code analysis reaches CPU-dispatched XOP
paths, such as the vpperm routines in Stremio Plus (PPSA74126), OpenNOW
(PPSA99082) and PPSA99420, and their Windows conversion failed with
"Code analysis: overlapping instruction boundaries". Decode 8F followed
by a map of 8 or more as a three-byte XOP prefix (8F can only be POP r/m
with ModRM.reg 0) with a ModRM operand, an 8-bit immediate in map 8 and
a 32-bit immediate in map 0Ah, in both the length and operand decoders.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 19:27:24 +13:00
..
x86 fix(relinker): decode XOP instructions 2026-10-10 19:27:24 +13:00
Amd64OnlyConverter.cpp Merge pull request #1401 from xsvm/perf/relinker-in-place-substitutions 2026-10-10 01:21:28 +02:00
InstructionScanner.cpp style: drop the branch's code comments per CONVENTIONS.md 2026-09-29 21:25:29 +03:00