PSTATE is already 64-bit, but many bits are defined such that ~PSTATE_FOO accidentally clears the high bits.
Except for PSTATE_N, we can just drop the qualifier. Reviewed-by: Philippe Mathieu-Daudé <[email protected]> Signed-off-by: Richard Henderson <[email protected]> --- target/arm/cpu.h | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/target/arm/cpu.h b/target/arm/cpu.h index 8c50e91004d..d36611e04a5 100644 --- a/target/arm/cpu.h +++ b/target/arm/cpu.h @@ -1558,26 +1558,26 @@ void pmu_init(ARMCPU *cpu); * Only these are valid when in AArch64 mode; in * AArch32 mode SPSRs are basically CPSR-format. */ -#define PSTATE_SP (1U) -#define PSTATE_M (0xFU) -#define PSTATE_nRW (1U << 4) -#define PSTATE_F (1U << 6) -#define PSTATE_I (1U << 7) -#define PSTATE_A (1U << 8) -#define PSTATE_D (1U << 9) -#define PSTATE_BTYPE (3U << 10) -#define PSTATE_SSBS (1U << 12) -#define PSTATE_ALLINT (1U << 13) -#define PSTATE_IL (1U << 20) -#define PSTATE_SS (1U << 21) -#define PSTATE_PAN (1U << 22) -#define PSTATE_UAO (1U << 23) -#define PSTATE_DIT (1U << 24) -#define PSTATE_TCO (1U << 25) -#define PSTATE_V (1U << 28) -#define PSTATE_C (1U << 29) -#define PSTATE_Z (1U << 30) -#define PSTATE_N (1U << 31) +#define PSTATE_SP (1) +#define PSTATE_M (0xF) +#define PSTATE_nRW (1 << 4) +#define PSTATE_F (1 << 6) +#define PSTATE_I (1 << 7) +#define PSTATE_A (1 << 8) +#define PSTATE_D (1 << 9) +#define PSTATE_BTYPE (3 << 10) +#define PSTATE_SSBS (1 << 12) +#define PSTATE_ALLINT (1 << 13) +#define PSTATE_IL (1 << 20) +#define PSTATE_SS (1 << 21) +#define PSTATE_PAN (1 << 22) +#define PSTATE_UAO (1 << 23) +#define PSTATE_DIT (1 << 24) +#define PSTATE_TCO (1 << 25) +#define PSTATE_V (1 << 28) +#define PSTATE_C (1 << 29) +#define PSTATE_Z (1 << 30) +#define PSTATE_N (1ULL << 31) #define PSTATE_EXLOCK (1ULL << 34) #define PSTATE_NZCV (PSTATE_N | PSTATE_Z | PSTATE_C | PSTATE_V) #define PSTATE_DAIF (PSTATE_D | PSTATE_A | PSTATE_I | PSTATE_F) -- 2.53.0
