diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2022-06-02 19:52:41 +0200 |
---|---|---|
committer | Aldy Hernandez <aldyh@redhat.com> | 2022-06-03 10:31:01 +0200 |
commit | 0fd3c7063db52b8f509a9572ff8078a0f91176da (patch) | |
tree | f9937a174a2a9768856cf73b4a4413a3eb60ce38 /gcc/value-range.h | |
parent | f4fa81ba63299030d068327f3d90920de8c54d1c (diff) | |
download | gcc-0fd3c7063db52b8f509a9572ff8078a0f91176da.zip gcc-0fd3c7063db52b8f509a9572ff8078a0f91176da.tar.gz gcc-0fd3c7063db52b8f509a9572ff8078a0f91176da.tar.bz2 |
Misc range temporary fixes.
This fixes a couples places that were using int_range_max, but needed
a generic temporary. Found while merging the frange work.
Also, copying between range temporaries is actually useful :).
Tested on x86-64 Linux.
gcc/ChangeLog:
* gimple-range-cache.cc (ranger_cache::range_from_dom): Use
Value_Range.
* gimple-range.cc (gimple_ranger::register_inferred_ranges): Same.
* value-range.h (Value_Range::Value_Range): Implement copy
constructor for Value_Range.
Diffstat (limited to 'gcc/value-range.h')
-rw-r--r-- | gcc/value-range.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/gcc/value-range.h b/gcc/value-range.h index 26e41ed..dc6f6b0 100644 --- a/gcc/value-range.h +++ b/gcc/value-range.h @@ -314,6 +314,7 @@ public: Value_Range (); Value_Range (const vrange &r); Value_Range (tree type); + Value_Range (const Value_Range &); void set_type (tree type); vrange& operator= (const vrange &); bool operator== (const Value_Range &r) const; @@ -344,7 +345,6 @@ private: unsupported_range m_unsupported; vrange *m_vrange; int_range_max m_irange; - DISABLE_COPY_AND_ASSIGN (Value_Range); }; inline @@ -370,6 +370,12 @@ Value_Range::Value_Range (tree type) init (type); } +inline +Value_Range::Value_Range (const Value_Range &r) +{ + m_vrange = r.m_vrange; +} + // Initialize object so it is possible to store temporaries of TYPE // into it. |