]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - gcc/ira.c
poly_int: GET_MODE_SIZE
[thirdparty/gcc.git] / gcc / ira.c
index b9c1f4aa4897009758e0fb37ba98a6c9cb2f69a1..b70e2c60b745e875188a2bd2cf8a3f4701ff63a5 100644 (file)
--- a/gcc/ira.c
+++ b/gcc/ira.c
@@ -4046,9 +4046,9 @@ get_subreg_tracking_sizes (rtx x, HOST_WIDE_INT *outer_size,
                           HOST_WIDE_INT *inner_size, HOST_WIDE_INT *start)
 {
   rtx reg = regno_reg_rtx[REGNO (SUBREG_REG (x))];
-  *outer_size = GET_MODE_SIZE (GET_MODE (x));
-  *inner_size = GET_MODE_SIZE (GET_MODE (reg));
-  return SUBREG_BYTE (x).is_constant (start);
+  return (GET_MODE_SIZE (GET_MODE (x)).is_constant (outer_size)
+         && GET_MODE_SIZE (GET_MODE (reg)).is_constant (inner_size)
+         && SUBREG_BYTE (x).is_constant (start));
 }
 
 /* Init LIVE_SUBREGS[ALLOCNUM] and LIVE_SUBREGS_USED[ALLOCNUM] for