[gcc(refs/vendors/ARM/heads/arm-struct-reorg-wip)] arm: Fix unintentional fall throughs in arm.c
Tamar Christina
tnfchris@gcc.gnu.org
Fri Jul 17 15:15:03 GMT 2020
https://gcc.gnu.org/g:1aabb312fa0ad07793a974ee5cf92a1e65b659fe
commit 1aabb312fa0ad07793a974ee5cf92a1e65b659fe
Author: Srinath Parvathaneni <srinath.parvathaneni@arm.com>
Date: Tue Jun 16 12:52:29 2020 +0100
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 <andrea.corallo@arm.com>
gcc/
* config/arm/arm.c (mve_vector_mem_operand): Fix unwanted
fall-throughs.
Diff:
---
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 01bc1b8ae9b..a7b7c55a763 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:
More information about the Gcc-cvs
mailing list