diff options
Diffstat (limited to 'target/loongarch/cpu_helper.c')
-rw-r--r-- | target/loongarch/cpu_helper.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/target/loongarch/cpu_helper.c b/target/loongarch/cpu_helper.c index e172b11..b5f732f 100644 --- a/target/loongarch/cpu_helper.c +++ b/target/loongarch/cpu_helper.c @@ -196,8 +196,8 @@ int get_physical_address(CPULoongArchState *env, hwaddr *physical, } /* Check valid extension */ - addr_high = sextract64(address, TARGET_VIRT_ADDR_SPACE_BITS, 16); - if (!(addr_high == 0 || addr_high == -1)) { + addr_high = (int64_t)address >> (TARGET_VIRT_ADDR_SPACE_BITS - 1); + if (!(addr_high == 0 || addr_high == -1ULL)) { return TLBRET_BADADDR; } |