equal
deleted
inserted
replaced
21 * questions. |
21 * questions. |
22 * |
22 * |
23 */ |
23 */ |
24 |
24 |
25 #include "precompiled.hpp" |
25 #include "precompiled.hpp" |
|
26 #include "jvm.h" |
26 #include "ci/ciMethodData.hpp" |
27 #include "ci/ciMethodData.hpp" |
27 #include "ci/ciReplay.hpp" |
28 #include "ci/ciReplay.hpp" |
28 #include "ci/ciSymbol.hpp" |
29 #include "ci/ciSymbol.hpp" |
29 #include "ci/ciKlass.hpp" |
30 #include "ci/ciKlass.hpp" |
30 #include "ci/ciUtilities.hpp" |
31 #include "ci/ciUtilities.hpp" |
31 #include "compiler/compileBroker.hpp" |
32 #include "compiler/compileBroker.hpp" |
32 #include "memory/allocation.inline.hpp" |
33 #include "memory/allocation.inline.hpp" |
33 #include "memory/oopFactory.hpp" |
34 #include "memory/oopFactory.hpp" |
34 #include "memory/resourceArea.hpp" |
35 #include "memory/resourceArea.hpp" |
35 #include "oops/oop.inline.hpp" |
36 #include "oops/oop.inline.hpp" |
36 #include "prims/jvm.h" |
|
37 #include "utilities/copy.hpp" |
37 #include "utilities/copy.hpp" |
38 #include "utilities/macros.hpp" |
38 #include "utilities/macros.hpp" |
39 |
39 |
40 #ifndef PRODUCT |
40 #ifndef PRODUCT |
41 |
41 |
788 } |
788 } |
789 int rank = 0; |
789 int rank = 0; |
790 while (field_signature[rank] == '[') { |
790 while (field_signature[rank] == '[') { |
791 rank++; |
791 rank++; |
792 } |
792 } |
793 int* dims = NEW_RESOURCE_ARRAY(int, rank); |
793 jint* dims = NEW_RESOURCE_ARRAY(jint, rank); |
794 dims[0] = length; |
794 dims[0] = length; |
795 for (int i = 1; i < rank; i++) { |
795 for (int i = 1; i < rank; i++) { |
796 dims[i] = 1; // These aren't relevant to the compiler |
796 dims[i] = 1; // These aren't relevant to the compiler |
797 } |
797 } |
798 value = kelem->multi_allocate(rank, dims, CHECK); |
798 value = kelem->multi_allocate(rank, dims, CHECK); |