Avoid undefined behaviour shifting left into the sign bit. Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> --- hw/intc/xilinx_intc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/hw/intc/xilinx_intc.c b/hw/intc/xilinx_intc.c index 4a10398..1b228ff 100644 --- a/hw/intc/xilinx_intc.c +++ b/hw/intc/xilinx_intc.c @@ -71,8 +71,9 @@ static void update_irq(struct xlx_pic *p) /* Update the vector register. */ for (i = 0; i < 32; i++) { - if (p->regs[R_IPR] & (1 << i)) + if (p->regs[R_IPR] & (1U << i)) { break; + } } if (i == 32) i = ~0; -- 1.9.0