--- old/src/hotspot/share/memory/oopFactory.hpp 2019-03-27 16:10:34.535106110 +0100 +++ new/src/hotspot/share/memory/oopFactory.hpp 2019-03-27 16:10:34.235101146 +0100 @@ -67,12 +67,15 @@ // Regular object arrays static objArrayOop new_objArray(Klass* klass, int length, TRAPS); - // Value arrays + // Value arrays... + // LWorld: + // - Q-type signature allocation should use this path. + // - L-type signature allocation should use new_objArray (even with value type elements) + // + // Method specifically creates ArrayStorageProperties::null_free and possibly flattened if possible + // i.e. valueArrayOop of flattening can be done, else objArrayOop with "null free" storage properties static arrayOop new_valueArray(Klass* klass, int length, TRAPS); - // Object/Value array for klass - static arrayOop new_array(Klass* klass, int length, TRAPS); - // Helpers that return handles static objArrayHandle new_objArray_handle(Klass* klass, int length, TRAPS); static typeArrayHandle new_byteArray_handle(int length, TRAPS);