From 1aabb312fa0ad07793a974ee5cf92a1e65b659fe Mon Sep 17 00:00:00 2001 From: Srinath Parvathaneni Date: Tue, 16 Jun 2020 12:52:29 +0100 Subject: [PATCH] arm: Fix unintentional fall throughs in arm.c This small patch fix some unintentional fall-throughs in `mve_vector_mem_operand'. Backported from mainline 2020-05-28 Andrea Corallo gcc/ * config/arm/arm.c (mve_vector_mem_operand): Fix unwanted fall-throughs. --- gcc/config/arm/arm.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 01bc1b8ae9b7..a7b7c55a763c 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -13302,26 +13302,31 @@ mve_vector_mem_operand (machine_mode mode, rtx op, bool strict) if (abs_hwi (val)) return ((reg_no < LAST_ARM_REGNUM && reg_no != SP_REGNUM) || (!strict && reg_no >= FIRST_PSEUDO_REGISTER)); + return FALSE; case E_V8HImode: case E_V8HFmode: if (abs (val) <= 255) return ((reg_no < LAST_ARM_REGNUM && reg_no != SP_REGNUM) || (!strict && reg_no >= FIRST_PSEUDO_REGISTER)); + return FALSE; case E_V8QImode: case E_V4QImode: if (abs_hwi (val)) return (reg_no <= LAST_LO_REGNUM || (!strict && reg_no >= FIRST_PSEUDO_REGISTER)); + return FALSE; case E_V4HImode: case E_V4HFmode: if (val % 2 == 0 && abs (val) <= 254) return (reg_no <= LAST_LO_REGNUM || (!strict && reg_no >= FIRST_PSEUDO_REGISTER)); + return FALSE; case E_V4SImode: case E_V4SFmode: if (val % 4 == 0 && abs (val) <= 508) return ((reg_no < LAST_ARM_REGNUM && reg_no != SP_REGNUM) || (!strict && reg_no >= FIRST_PSEUDO_REGISTER)); + return FALSE; case E_V2DImode: case E_V2DFmode: case E_TImode: -- 2.47.2