diff options
author | Andrea Corallo <andrea.corallo@arm.com> | 2020-05-27 17:43:48 +0100 |
---|---|---|
committer | Andrea Corallo <andrea.corallo@arm.com> | 2020-05-28 11:29:25 +0200 |
commit | dd019ef07358602a444f3e63f848aaece5c280f4 (patch) | |
tree | 4c470f2f7b133abda6375203034e2b67e13de497 | |
parent | a634157de1e83536123412b02aae184a9d590751 (diff) | |
download | gcc-dd019ef07358602a444f3e63f848aaece5c280f4.zip gcc-dd019ef07358602a444f3e63f848aaece5c280f4.tar.gz gcc-dd019ef07358602a444f3e63f848aaece5c280f4.tar.bz2 |
arm: Fix unwanted fall-throughs in arm.c
gcc/ChangeLog
2020-05-28 Andrea Corallo <andrea.corallo@arm.com>
* config/arm/arm.c (mve_vector_mem_operand): Fix unwanted
fall-throughs.
-rw-r--r-- | gcc/config/arm/arm.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index c396b5b..6b7ca82 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -13327,32 +13327,38 @@ mve_vector_mem_operand (machine_mode mode, rtx op, bool strict) if (abs (val) <= 127) 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 (val) <= 127) 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: if (val % 4 == 0 && val >= 0 && val <= 1020) return ((reg_no < LAST_ARM_REGNUM && reg_no != SP_REGNUM) || (!strict && reg_no >= FIRST_PSEUDO_REGISTER)); + return FALSE; default: return FALSE; } |