diff options
Diffstat (limited to 'gcc/reload.c')
-rw-r--r-- | gcc/reload.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/reload.c b/gcc/reload.c index c86f69b78c0..5f48ae7277b 100644 --- a/gcc/reload.c +++ b/gcc/reload.c @@ -6139,9 +6139,9 @@ find_reloads_subreg_address (rtx x, int force_replace, int opnum, PUT_MODE (tem, GET_MODE (x)); if (MEM_OFFSET (tem)) set_mem_offset (tem, plus_constant (MEM_OFFSET (tem), offset)); - if (MEM_SIZE (tem) - && INTVAL (MEM_SIZE (tem)) != (HOST_WIDE_INT) outer_size) - set_mem_size (tem, GEN_INT (outer_size)); + if (MEM_SIZE_KNOWN_P (tem) + && MEM_SIZE (tem) != (HOST_WIDE_INT) outer_size) + set_mem_size (tem, outer_size); /* If this was a paradoxical subreg that we replaced, the resulting memory must be sufficiently aligned to allow |