< prev index next >

src/hotspot/share/memory/oopFactory.hpp

Print this page
@@ -1,7 +1,7 @@
  /*
-  * Copyright (c) 1997, 2020, Oracle and/or its affiliates. All rights reserved.
+  * Copyright (c) 1997, 2026, Oracle and/or its affiliates. All rights reserved.
   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   *
   * This code is free software; you can redistribute it and/or modify it
   * under the terms of the GNU General Public License version 2 only, as
   * published by the Free Software Foundation.

@@ -24,10 +24,11 @@
  
  #ifndef SHARE_MEMORY_OOPFACTORY_HPP
  #define SHARE_MEMORY_OOPFACTORY_HPP
  
  #include "memory/referenceType.hpp"
+ #include "oops/arrayKlass.hpp"
  #include "oops/oopsHierarchy.hpp"
  #include "runtime/handles.hpp"
  #include "utilities/exceptions.hpp"
  
  // oopFactory is a class used for creating new objects.

@@ -53,10 +54,19 @@
    static typeArrayOop    new_typeArray_nozero(BasicType type, int length, TRAPS);
    static typeArrayOop    new_symbolArray(int length, TRAPS);
  
    // Regular object arrays
    static objArrayOop     new_objArray(Klass* klass, int length, TRAPS);
+   static objArrayOop     new_objArray(Klass* klass, int length, ArrayProperties properties, TRAPS);
+ 
+   // Factories to create a reference arrays
+   static refArrayOop     new_refArray(Klass* klass, int length, TRAPS);
+   static refArrayOop     new_refArray(Klass* klass, int length, ArrayProperties properties, TRAPS);
+ 
+   // Factory to create flat arrays.
+   static flatArrayOop    new_flatArray(FlatArrayKlass* klass, int length, TRAPS);
+   static flatArrayOop    new_flatArray(Klass* klass, int length, ArrayProperties props, LayoutKind lk, TRAPS);
  
    // Helper that returns a Handle
    static objArrayHandle  new_objArray_handle(Klass* klass, int length, TRAPS);
  };
  
< prev index next >