8219229: Make ConstantPool::tag_at and release_tag_at_put inlineable

Reviewed-by: dholmes, coleenp
This commit is contained in:
Claes Redestad 2019-02-20 09:53:28 +01:00
parent d9463e629e
commit dbdfbb518f
17 changed files with 19 additions and 46 deletions

View file

@ -27,6 +27,7 @@
#include "memory/allocation.hpp"
#include "memory/metaspace.hpp"
#include "runtime/orderAccess.hpp"
#include "utilities/align.hpp"
// Array for metadata allocation
@ -121,8 +122,8 @@ protected:
T* adr_at(const int i) { assert(i >= 0 && i< _length, "oob: 0 <= %d < %d", i, _length); return &_data[i]; }
int find(const T& x) { return index_of(x); }
T at_acquire(const int which);
void release_at_put(int which, T contents);
T at_acquire(const int i) { return OrderAccess::load_acquire(adr_at(i)); }
void release_at_put(int i, T x) { OrderAccess::release_store(adr_at(i), x); }
static int size(int length) {
size_t bytes = align_up(byte_sizeof(length), BytesPerWord);