cpu/drcbearm64.cpp: Fixed ADRP usage. (#13239)

ADRP output must always be an X register.
This commit is contained in:
987123879113 2025-01-17 19:45:37 +09:00 committed by GitHub
parent 8430afa2bc
commit 4b221bbfce
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -499,7 +499,7 @@ void drcbe_arm64::get_imm_relative(a64::Assembler &a, const a64::Gp &reg, const
const uint64_t targetpage = (uint64_t)ptr & ~make_bitmask<uint64_t>(12);
const uint64_t pageoffs = (uint64_t)ptr & util::make_bitmask<uint64_t>(12);
a.adrp(reg, targetpage);
a.adrp(reg.x(), targetpage);
if (pageoffs != 0)
a.add(reg, reg, pageoffs);