@@ -22,14 +22,16 @@ namespace llvm {
22
22
class AddressRange {
23
23
public:
24
24
AddressRange () {}
25
- AddressRange (uint64_t S, uint64_t E) : Start(S), End(E) {
25
+ AddressRange (const uint64_t S, const uint64_t E) : Start(S), End(E) {
26
26
assert (Start <= End);
27
27
}
28
28
uint64_t start () const { return Start; }
29
29
uint64_t end () const { return End; }
30
30
uint64_t size () const { return End - Start; }
31
31
uint64_t empty () const { return size () == 0 ; }
32
- bool contains (uint64_t Addr) const { return Start <= Addr && Addr < End; }
32
+ bool contains (const uint64_t Addr) const {
33
+ return Start <= Addr && Addr < End;
34
+ }
33
35
bool contains (const AddressRange &R) const {
34
36
return Start <= R.Start && R.End <= End;
35
37
}
@@ -63,16 +65,16 @@ template <typename T> class AddressRangesBase {
63
65
public:
64
66
void clear () { Ranges.clear (); }
65
67
bool empty () const { return Ranges.empty (); }
66
- bool contains (uint64_t Addr) const {
68
+ bool contains (const uint64_t Addr) const {
67
69
return find (Addr, Addr + 1 ) != Ranges.end ();
68
70
}
69
- bool contains (AddressRange Range) const {
71
+ bool contains (const AddressRange Range) const {
70
72
return find (Range.start (), Range.end ()) != Ranges.end ();
71
73
}
72
74
void reserve (size_t Capacity) { Ranges.reserve (Capacity); }
73
75
size_t size () const { return Ranges.size (); }
74
76
75
- std::optional<T> getRangeThatContains (uint64_t Addr) const {
77
+ std::optional<T> getRangeThatContains (const uint64_t Addr) const {
76
78
typename Collection::const_iterator It = find (Addr, Addr + 1 );
77
79
if (It == Ranges.end ())
78
80
return std::nullopt;
@@ -83,17 +85,18 @@ template <typename T> class AddressRangesBase {
83
85
typename Collection::const_iterator begin () const { return Ranges.begin (); }
84
86
typename Collection::const_iterator end () const { return Ranges.end (); }
85
87
86
- const T &operator [](size_t i ) const {
87
- assert (i < Ranges.size ());
88
- return Ranges[i ];
88
+ const T &operator [](size_t I ) const {
89
+ assert (I < Ranges.size ());
90
+ return Ranges[I ];
89
91
}
90
92
91
- bool operator ==(const AddressRangesBase<T> &RHS) const {
93
+ bool operator ==(const AddressRangesBase &RHS) const {
92
94
return Ranges == RHS.Ranges ;
93
95
}
94
96
95
97
protected:
96
- typename Collection::const_iterator find (uint64_t Start, uint64_t End) const {
98
+ typename Collection::const_iterator find (const uint64_t Start,
99
+ const uint64_t End) const {
97
100
if (Start >= End)
98
101
return Ranges.end ();
99
102
@@ -124,8 +127,8 @@ class AddressRanges : public AddressRangesBase<AddressRange> {
124
127
if (Range.empty ())
125
128
return Ranges.end ();
126
129
127
- auto It = llvm:: upper_bound (Ranges, Range);
128
- auto It2 = It;
130
+ auto * It = upper_bound (Ranges, Range);
131
+ auto * It2 = It;
129
132
while (It2 != Ranges.end () && It2->start () <= Range.end ())
130
133
++It2;
131
134
if (It != It2) {
@@ -144,7 +147,7 @@ class AddressRanges : public AddressRangesBase<AddressRange> {
144
147
145
148
class AddressRangeValuePair {
146
149
public:
147
- operator AddressRange () const { return Range; }
150
+ explicit operator AddressRange () const { return Range; }
148
151
149
152
AddressRange Range;
150
153
int64_t Value = 0 ;
@@ -164,15 +167,15 @@ inline bool operator==(const AddressRangeValuePair &LHS,
164
167
// / ranges are not combined during insertion.
165
168
class AddressRangesMap : public AddressRangesBase <AddressRangeValuePair> {
166
169
public:
167
- void insert (AddressRange Range, int64_t Value) {
170
+ void insert (AddressRange Range, const int64_t Value) {
168
171
if (Range.empty ())
169
172
return ;
170
173
171
174
// Search for range which is less than or equal incoming Range.
172
- auto It = std::partition_point (Ranges.begin (), Ranges.end (),
173
- [=](const AddressRangeValuePair &R) {
174
- return R.Range .start () <= Range.start ();
175
- });
175
+ auto * It = std::partition_point (Ranges.begin (), Ranges.end (),
176
+ [=](const AddressRangeValuePair &R) {
177
+ return R.Range .start () <= Range.start ();
178
+ });
176
179
177
180
if (It != Ranges.begin ())
178
181
It--;
0 commit comments