8297020: Rename GrowableArray::on_stack

Reviewed-by: stuefe, coleenp
This commit is contained in:
Stefan Karlsson 2022-11-16 11:01:39 +00:00
parent 5f51dff697
commit 196d0210df
3 changed files with 22 additions and 22 deletions
src/hotspot/share/utilities
test/hotspot/gtest/utilities

@ -57,11 +57,11 @@ void GrowableArrayCHeapAllocator::deallocate(void* elements) {
#ifdef ASSERT
GrowableArrayNestingCheck::GrowableArrayNestingCheck(bool on_stack) :
_nesting(on_stack ? Thread::current()->resource_area()->nesting() : 0) {
GrowableArrayNestingCheck::GrowableArrayNestingCheck(bool on_resource_area) :
_nesting(on_resource_area ? Thread::current()->resource_area()->nesting() : 0) {
}
void GrowableArrayNestingCheck::on_stack_alloc() const {
void GrowableArrayNestingCheck::on_resource_area_alloc() const {
// Check for insidious allocation bug: if a GrowableArray overflows, the
// grown array must be allocated under the same ResourceMark as the original.
// Otherwise, the _data array will be deallocated too early.
@ -79,14 +79,14 @@ void GrowableArrayMetadata::init_checks(const GrowableArrayBase* array) const {
// Otherwise there's a strict one-to-one mapping
assert(on_C_heap() == array->allocated_on_C_heap(),
"growable array must be C heap allocated if elements are");
assert(on_stack() == array->allocated_on_res_area(),
assert(on_resource_area() == array->allocated_on_res_area(),
"growable array must be resource allocated if elements are");
assert(on_arena() == array->allocated_on_arena(),
"growable array must be arena allocated if elements are");
}
void GrowableArrayMetadata::on_stack_alloc_check() const {
_nesting_check.on_stack_alloc();
void GrowableArrayMetadata::on_resource_area_alloc_check() const {
_nesting_check.on_resource_area_alloc();
}
#endif // ASSERT

@ -584,9 +584,9 @@ class GrowableArrayNestingCheck {
int _nesting;
public:
GrowableArrayNestingCheck(bool on_stack);
GrowableArrayNestingCheck(bool on_resource_area);
void on_stack_alloc() const;
void on_resource_area_alloc() const;
};
#endif // ASSERT
@ -652,12 +652,12 @@ public:
}
void init_checks(const GrowableArrayBase* array) const;
void on_stack_alloc_check() const;
void on_resource_area_alloc_check() const;
#endif // ASSERT
bool on_C_heap() const { return (_bits & 1) == 1; }
bool on_stack () const { return _bits == 0; }
bool on_arena () const { return (_bits & 1) == 0 && _bits != 0; }
bool on_C_heap() const { return (_bits & 1) == 1; }
bool on_resource_area() const { return _bits == 0; }
bool on_arena() const { return (_bits & 1) == 0 && _bits != 0; }
Arena* arena() const { return (Arena*)_bits; }
MEMFLAGS memflags() const { return MEMFLAGS(_bits >> 1); }
@ -702,13 +702,13 @@ class GrowableArray : public GrowableArrayWithAllocator<E, GrowableArray<E> > {
void init_checks() const { debug_only(_metadata.init_checks(this);) }
// Where are we going to allocate memory?
bool on_C_heap() const { return _metadata.on_C_heap(); }
bool on_stack () const { return _metadata.on_stack(); }
bool on_arena () const { return _metadata.on_arena(); }
bool on_C_heap() const { return _metadata.on_C_heap(); }
bool on_resource_area() const { return _metadata.on_resource_area(); }
bool on_arena() const { return _metadata.on_arena(); }
E* allocate() {
if (on_stack()) {
debug_only(_metadata.on_stack_alloc_check());
if (on_resource_area()) {
debug_only(_metadata.on_resource_area_alloc_check());
return allocate(this->_capacity);
}

@ -50,8 +50,8 @@ protected:
return array->on_C_heap();
}
template <typename E>
static bool elements_on_stack(const GrowableArray<E>* array) {
return array->on_stack();
static bool elements_on_resource_area(const GrowableArray<E>* array) {
return array->on_resource_area();
}
template <typename E>
static bool elements_on_arena(const GrowableArray<E>* array) {
@ -471,7 +471,7 @@ TEST_VM_F(GrowableArrayTest, where) {
ResourceMark rm;
GrowableArray<int>* a = new GrowableArray<int>();
ASSERT_TRUE(a->allocated_on_res_area());
ASSERT_TRUE(elements_on_stack(a));
ASSERT_TRUE(elements_on_resource_area(a));
}
// Resource/CHeap allocated
@ -499,7 +499,7 @@ TEST_VM_F(GrowableArrayTest, where) {
ResourceMark rm;
GrowableArray<int> a(0);
ASSERT_TRUE(a.allocated_on_stack_or_embedded());
ASSERT_TRUE(elements_on_stack(&a));
ASSERT_TRUE(elements_on_resource_area(&a));
}
// Stack/CHeap allocated
@ -522,7 +522,7 @@ TEST_VM_F(GrowableArrayTest, where) {
ResourceMark rm;
WithEmbeddedArray w(0);
ASSERT_TRUE(w._a.allocated_on_stack_or_embedded());
ASSERT_TRUE(elements_on_stack(&w._a));
ASSERT_TRUE(elements_on_resource_area(&w._a));
}
// Embedded/CHeap allocated