--- old/src/hotspot/share/oops/klass.hpp 2018-05-07 15:52:05.276401217 +0200 +++ new/src/hotspot/share/oops/klass.hpp 2018-05-07 15:52:04.948395659 +0200 @@ -162,7 +162,10 @@ // Constructor Klass(); - void* operator new(size_t size, ClassLoaderData* loader_data, size_t word_size, TRAPS) throw(); + void* operator new(size_t size, ClassLoaderData* loader_data, size_t word_size, bool is_value, TRAPS) throw(); + void* operator new(size_t size, ClassLoaderData* loader_data, size_t word_size, TRAPS) throw() { + return operator new (size, loader_data, word_size, false, THREAD); + } public: enum DefaultsLookupMode { find_defaults, skip_defaults }; @@ -689,6 +692,9 @@ static Klass* decode_klass_not_null(narrowKlass v); static Klass* decode_klass(narrowKlass v); + + static bool decode_ptr_is_value_type(narrowKlass v); + static bool ptr_is_value_type(Klass* v); }; // Helper to convert the oop iterate macro suffixes into bool values that can be used by template functions.