Skip to content

Commit a44c46a

Browse files
committed
[GR-60565] Move non-critical DynamicHub fields to companion object.
PullRequest: graal/19637
2 parents 9dc75a7 + 0a3b5a1 commit a44c46a

File tree

13 files changed

+397
-469
lines changed

13 files changed

+397
-469
lines changed

substratevm/mx.substratevm/mx_substratevm.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2524,6 +2524,8 @@ def capnp_compile(args):
25242524
*/
25252525
//@formatter:off
25262526
//Checkstyle: stop
2527+
// Generated via:
2528+
// $ mx capnp-compile
25272529
""")
25282530
for line in lines:
25292531
if line.startswith("public final class "):

substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/meta/DynamicHubOffsets.java

Lines changed: 0 additions & 98 deletions
Original file line numberDiff line numberDiff line change
@@ -75,54 +75,20 @@ public class DynamicHubOffsets {
7575

7676
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
7777
private int flagsOffset;
78-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
79-
private int additionalFlagsOffset;
80-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
81-
private int modifiersOffset;
8278

83-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
84-
private int superHubOffset;
8579
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
8680
private int componentTypeOffset;
87-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
88-
private int arrayHubOffset;
89-
90-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
91-
private int declaringClassOffset;
92-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
93-
private int interfacesEncodingOffset;
94-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
95-
private int enumConstantsReferenceOffset;
9681

9782
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
9883
private int referenceMapIndexOffset;
9984
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
10085
private int layerIdOffset;
101-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
102-
private int metaTypeOffset;
103-
104-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
105-
private int sourceFileNameOffset;
106-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
107-
private int classInitializationInfoOffset;
108-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
109-
private int moduleOffset;
11086

111-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
112-
private int nestHostOffset;
113-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
114-
private int simpleBinaryNameOffset;
11587
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
11688
private int companionOffset;
11789

11890
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
11991
private int signatureOffset;
120-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
121-
private int classRedefinedCountOffset;
122-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
123-
private int hubMetadataOffset;
124-
@UnknownPrimitiveField(availability = BuildPhaseProvider.ReadyForCompilation.class) //
125-
private int reflectionMetadataOffset;
12692

12793
@Fold
12894
public static DynamicHubOffsets singleton() {
@@ -205,38 +171,10 @@ public int getFlagsOffset() {
205171
return flagsOffset;
206172
}
207173

208-
public int getAdditionalFlagsOffset() {
209-
return additionalFlagsOffset;
210-
}
211-
212-
public int getModifiersOffset() {
213-
return modifiersOffset;
214-
}
215-
216-
public int getSuperHubOffset() {
217-
return superHubOffset;
218-
}
219-
220174
public int getComponentTypeOffset() {
221175
return componentTypeOffset;
222176
}
223177

224-
public int getArrayHubOffset() {
225-
return arrayHubOffset;
226-
}
227-
228-
public int getDeclaringClassOffset() {
229-
return declaringClassOffset;
230-
}
231-
232-
public int getInterfacesEncodingOffset() {
233-
return interfacesEncodingOffset;
234-
}
235-
236-
public int getEnumConstantsReferenceOffset() {
237-
return enumConstantsReferenceOffset;
238-
}
239-
240178
public int getReferenceMapIndexOffset() {
241179
return referenceMapIndexOffset;
242180
}
@@ -245,30 +183,6 @@ public int getLayerIdOffset() {
245183
return layerIdOffset;
246184
}
247185

248-
public int getMetaTypeOffset() {
249-
return metaTypeOffset;
250-
}
251-
252-
public int getSourceFileNameOffset() {
253-
return sourceFileNameOffset;
254-
}
255-
256-
public int getClassInitializationInfoOffset() {
257-
return classInitializationInfoOffset;
258-
}
259-
260-
public int getModuleOffset() {
261-
return moduleOffset;
262-
}
263-
264-
public int getNestHostOffset() {
265-
return nestHostOffset;
266-
}
267-
268-
public int getSimpleBinaryNameOffset() {
269-
return simpleBinaryNameOffset;
270-
}
271-
272186
public int getCompanionOffset() {
273187
return companionOffset;
274188
}
@@ -277,18 +191,6 @@ public int getSignatureOffset() {
277191
return signatureOffset;
278192
}
279193

280-
public int getClassRedefinedCountOffset() {
281-
return classRedefinedCountOffset;
282-
}
283-
284-
public int getHubMetadataOffset() {
285-
return hubMetadataOffset;
286-
}
287-
288-
public int getReflectionMetadataOffset() {
289-
return reflectionMetadataOffset;
290-
}
291-
292194
public static void writeObject(DynamicHub hub, int offset, Object value) {
293195
if (offset < 0) {
294196
/* field removed by analysis */

substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/SubstrateAllocationSnippets.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,6 @@
3636
import java.util.Arrays;
3737
import java.util.Map;
3838

39-
import com.oracle.svm.core.graal.meta.KnownOffsets;
40-
import jdk.graal.compiler.core.common.NumUtil;
4139
import org.graalvm.nativeimage.ImageSingletons;
4240
import org.graalvm.word.LocationIdentity;
4341
import org.graalvm.word.UnsignedWord;
@@ -48,6 +46,7 @@
4846
import com.oracle.svm.core.allocationprofile.AllocationSite;
4947
import com.oracle.svm.core.config.ConfigurationValues;
5048
import com.oracle.svm.core.configure.ConfigurationFile;
49+
import com.oracle.svm.core.graal.meta.KnownOffsets;
5150
import com.oracle.svm.core.graal.meta.SubstrateForeignCallsProvider;
5251
import com.oracle.svm.core.graal.nodes.NewPodInstanceNode;
5352
import com.oracle.svm.core.graal.nodes.NewStoredContinuationNode;
@@ -75,6 +74,7 @@
7574
import jdk.graal.compiler.api.replacements.Snippet.NonNullParameter;
7675
import jdk.graal.compiler.api.replacements.Snippet.VarargsParameter;
7776
import jdk.graal.compiler.core.common.GraalOptions;
77+
import jdk.graal.compiler.core.common.NumUtil;
7878
import jdk.graal.compiler.core.common.spi.ForeignCallDescriptor;
7979
import jdk.graal.compiler.core.common.spi.MetaAccessExtensionProvider;
8080
import jdk.graal.compiler.core.common.type.StampFactory;
@@ -346,7 +346,7 @@ private static DynamicHub slowPathHubOrUnsafeInstantiationError(DynamicHub hub)
346346
throw new InstantiationException("Cannot allocate objects of special hybrid types: " + DynamicHub.toClass(hub).getTypeName());
347347
} else {
348348
if (hub.canUnsafeInstantiateAsInstanceSlowPath()) {
349-
hub.getCompanion().setUnsafeAllocate();
349+
hub.setCanUnsafeAllocate();
350350
return hub;
351351
} else {
352352
if (MissingRegistrationUtils.throwMissingRegistrationErrors()) {

0 commit comments

Comments
 (0)