diff options
author | Andrew MacLeod <amacleod@redhat.com> | 2021-10-04 15:30:44 -0400 |
---|---|---|
committer | Andrew MacLeod <amacleod@redhat.com> | 2021-10-06 09:19:06 -0400 |
commit | ad451b020a24fe7111e668f8c41a3ba648104569 (patch) | |
tree | db39edc76cfbe976d513ef738e65096d0f255775 /gcc/value-range.h | |
parent | 3ca950c3525527846f13e8c547368ef432547a23 (diff) | |
download | gcc-ad451b020a24fe7111e668f8c41a3ba648104569.zip gcc-ad451b020a24fe7111e668f8c41a3ba648104569.tar.gz gcc-ad451b020a24fe7111e668f8c41a3ba648104569.tar.bz2 |
Add range intersect with 2 wide-ints.
Add a more efficent intersect using a lower/upper bound single pair of
wide_ints.
* gimple-range-cache.cc (non_null_ref::adjust_range): Call new
intersect routine.
* gimple-range-fold.cc (adjust_pointer_diff_expr): Ditto.
(adjust_imagpart_expr): Ditto.
* value-range.cc (irange::irange_intersect): Call new routine if
RHS is a single pair.
(irange::intersect): New wide_int version.
* value-range.h (class irange): New prototype.
Diffstat (limited to 'gcc/value-range.h')
-rw-r--r-- | gcc/value-range.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/value-range.h b/gcc/value-range.h index 39e8f3b..ff6c0a6 100644 --- a/gcc/value-range.h +++ b/gcc/value-range.h @@ -73,6 +73,7 @@ public: // In-place operators. void union_ (const irange &); void intersect (const irange &); + void intersect (const wide_int& lb, const wide_int& ub); void invert (); // Operator overloads. |