From: Richard Henderson Date: Tue, 15 Oct 2019 18:10:27 +0000 (-0700) Subject: exec: Promote TARGET_PAGE_MASK to target_long X-Git-Tag: v4.2.0-rc0~29^2~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f048b8a7cefcabb0e55210a76775f9be57c4d3f4;p=thirdparty%2Fqemu.git exec: Promote TARGET_PAGE_MASK to target_long There are some uint64_t uses that expect TARGET_PAGE_MASK to extend for a 32-bit, so this must continue to be a signed type. Define based on TARGET_PAGE_BITS not TARGET_PAGE_SIZE; this will make a following patch more clear. This should not have a functional effect so far. Reviewed-by: Alex Bennée Reviewed-by: Paolo Bonzini Signed-off-by: Richard Henderson --- diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h index 525059970ca..0543359d0fa 100644 --- a/include/exec/cpu-all.h +++ b/include/exec/cpu-all.h @@ -229,7 +229,7 @@ extern TargetPageBits target_page; #endif #define TARGET_PAGE_SIZE (1 << TARGET_PAGE_BITS) -#define TARGET_PAGE_MASK ~(TARGET_PAGE_SIZE - 1) +#define TARGET_PAGE_MASK ((target_long)-1 << TARGET_PAGE_BITS) #define TARGET_PAGE_ALIGN(addr) ROUND_UP((addr), TARGET_PAGE_SIZE) /* Using intptr_t ensures that qemu_*_page_mask is sign-extended even