On 19/1/23 10:22, Pavel Dovgalyuk wrote:
Bit vector for features has 64 bits. This patch fixes bit shifts in
avr_feature and set_avr_feature functions to be 64-bit too.
Signed-off-by: Pavel Dovgalyuk <pavel.dovgal...@ispras.ru>
Reviewed-by: Michael Rolnik <mrol...@gmail.com>
---
  target/avr/cpu.h |    4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/target/avr/cpu.h b/target/avr/cpu.h
index 7c3895b65e..280edc495b 100644
--- a/target/avr/cpu.h
+++ b/target/avr/cpu.h
@@ -166,12 +166,12 @@ vaddr avr_cpu_gdb_adjust_breakpoint(CPUState *cpu, vaddr 
addr);
static inline int avr_feature(CPUAVRState *env, AVRFeature feature)
  {
-    return (env->features & (1U << feature)) != 0;
+    return (env->features & (1ULL << feature)) != 0;
  }
static inline void set_avr_feature(CPUAVRState *env, int feature)
  {
-    env->features |= (1U << feature);
+    env->features |= (1ULL << feature);
  }
Consider using extract64() or BIT_ULL(). Regardless:

Reviewed-by: Philippe Mathieu-Daudé <phi...@linaro.org>


Reply via email to