aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.h
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@linaro.org>2017-12-21 06:57:18 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2017-12-21 06:57:18 +0000
commit39bb8924559d0487fb7cb6d4dc33d6b1e9c41004 (patch)
tree9887f91a47e5c46de73b822b210ba630c6b62cf2 /gcc/expr.h
parenta97d8b982793ba5bf1e54a41d9bb110182b8baf8 (diff)
downloadgcc-39bb8924559d0487fb7cb6d4dc33d6b1e9c41004.zip
gcc-39bb8924559d0487fb7cb6d4dc33d6b1e9c41004.tar.gz
gcc-39bb8924559d0487fb7cb6d4dc33d6b1e9c41004.tar.bz2
poly_int: get_bit_range
This patch makes get_bit_range return the range and position as poly_ints. 2017-12-21 Richard Sandiford <richard.sandiford@linaro.org> Alan Hayward <alan.hayward@arm.com> David Sherwood <david.sherwood@arm.com> gcc/ * expr.h (get_bit_range): Return the bitstart and bitend as poly_uint64s rather than unsigned HOST_WIDE_INTs. Return the bitpos as a poly_int64 rather than a HOST_WIDE_INT. * expr.c (get_bit_range): Likewise. (expand_assignment): Update call accordingly. * fold-const.c (optimize_bit_field_compare): Likewise. Co-Authored-By: Alan Hayward <alan.hayward@arm.com> Co-Authored-By: David Sherwood <david.sherwood@arm.com> From-SVN: r255912
Diffstat (limited to 'gcc/expr.h')
-rw-r--r--gcc/expr.h13
1 files changed, 2 insertions, 11 deletions
diff --git a/gcc/expr.h b/gcc/expr.h
index 9b09271..a260192 100644
--- a/gcc/expr.h
+++ b/gcc/expr.h
@@ -240,17 +240,8 @@ extern bool emit_push_insn (rtx, machine_mode, tree, rtx, unsigned int,
int, rtx, int, rtx, rtx, int, rtx, bool);
/* Extract the accessible bit-range from a COMPONENT_REF. */
-extern void get_bit_range (unsigned HOST_WIDE_INT *, unsigned HOST_WIDE_INT *,
- tree, HOST_WIDE_INT *, tree *);
-
-/* Temporary. */
-inline void
-get_bit_range (poly_uint64_pod *bitstart, poly_uint64_pod *bitend, tree exp,
- poly_int64_pod *bitpos, tree *offset)
-{
- get_bit_range (&bitstart->coeffs[0], &bitend->coeffs[0], exp,
- &bitpos->coeffs[0], offset);
-}
+extern void get_bit_range (poly_uint64_pod *, poly_uint64_pod *, tree,
+ poly_int64_pod *, tree *);
/* Expand an assignment that stores the value of FROM into TO. */
extern void expand_assignment (tree, tree, bool);