summaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-address.c
diff options
context:
space:
mode:
authorKugan Vivekanandarajah <kuganv@linaro.org>2019-06-19 01:42:21 +0000
committerKugan Vivekanandarajah <kugan@gcc.gnu.org>2019-06-19 01:42:21 +0000
commit89649081c8037954d9e2dcfa0be88a7345cd14b4 (patch)
treee36fbf6e0be74db2bc0856144daf8db4b447b948 /gcc/tree-ssa-address.c
parent8666a0dc3acf2d2774f8982886c406de0744c283 (diff)
tree-ssa-address.c (preferred_mem_scale_factor): Handle when mem_mode is BLKmode.
gcc/ChangeLog: 2019-06-19 Kugan Vivekanandarajah <kugan.vivekanandarajah@linaro.org> * tree-ssa-address.c (preferred_mem_scale_factor): Handle when mem_mode is BLKmode. From-SVN: r272465
Diffstat (limited to 'gcc/tree-ssa-address.c')
-rw-r--r--gcc/tree-ssa-address.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/tree-ssa-address.c b/gcc/tree-ssa-address.c
index cdd432a6e1a..e83e1b9296f 100644
--- a/gcc/tree-ssa-address.c
+++ b/gcc/tree-ssa-address.c
@@ -1134,6 +1134,10 @@ unsigned int
preferred_mem_scale_factor (tree base, machine_mode mem_mode,
bool speed)
{
+ /* For BLKmode, we can't do anything so return 1. */
+ if (mem_mode == BLKmode)
+ return 1;
+
struct mem_address parts = {};
addr_space_t as = TYPE_ADDR_SPACE (TREE_TYPE (base));
unsigned int fact = GET_MODE_UNIT_SIZE (mem_mode);