(get_inner_reference): Use EXACT_DIV_EXPR to compute byte offset from
authorRichard Kenner <kenner@gcc.gnu.org>
Thu, 15 Dec 1994 00:01:13 +0000 (19:01 -0500)
committerRichard Kenner <kenner@gcc.gnu.org>
Thu, 15 Dec 1994 00:01:13 +0000 (19:01 -0500)
bit offset.

From-SVN: r8654

gcc/expr.c

index fc6223e9a73393004e47b13a7f76d080f8f3f1f1..dbdbaab789711fe3d9f7d07068c004fe6581d0b0 100644 (file)
@@ -3547,7 +3547,7 @@ get_inner_reference (exp, pbitsize, pbitpos, poffset, pmode,
 
              *pbitpos += TREE_INT_CST_LOW (constant);
              offset = size_binop (PLUS_EXPR, offset,
-                                  size_binop (FLOOR_DIV_EXPR, var,
+                                  size_binop (EXACT_DIV_EXPR, var,
                                               size_int (BITS_PER_UNIT)));
            }
          else if (TREE_CODE (pos) == INTEGER_CST)
@@ -3557,7 +3557,7 @@ get_inner_reference (exp, pbitsize, pbitpos, poffset, pmode,
              /* Assume here that the offset is a multiple of a unit.
                 If not, there should be an explicitly added constant.  */
              offset = size_binop (PLUS_EXPR, offset,
-                                  size_binop (FLOOR_DIV_EXPR, pos,
+                                  size_binop (EXACT_DIV_EXPR, pos,
                                               size_int (BITS_PER_UNIT)));
            }
        }