71
71
import jdk .graal .compiler .nodeinfo .NodeSize ;
72
72
import jdk .graal .compiler .nodeinfo .Verbosity ;
73
73
import jdk .internal .misc .Unsafe ;
74
+ import org .graalvm .nativeimage .Platform ;
75
+ import org .graalvm .nativeimage .Platforms ;
74
76
75
77
/**
76
78
* Metadata for every {@link Node} type. The metadata includes:
@@ -109,6 +111,7 @@ private static <T extends Annotation> T getAnnotationTimed(AnnotatedElement e, C
109
111
/**
110
112
* Gets the {@link NodeClass} associated with a given {@link Class}.
111
113
*/
114
+ @ Platforms (Platform .HOSTED_ONLY .class )
112
115
public static <T > NodeClass <T > create (Class <T > c ) {
113
116
assert getUnchecked (c ) == null ;
114
117
Class <? super T > superclass = c .getSuperclass ();
@@ -120,6 +123,7 @@ public static <T> NodeClass<T> create(Class<T> c) {
120
123
}
121
124
122
125
@ SuppressWarnings ("unchecked" )
126
+ @ Platforms (Platform .HOSTED_ONLY .class )
123
127
private static <T > NodeClass <T > getUnchecked (Class <T > clazz ) {
124
128
try {
125
129
Field field = clazz .getDeclaredField ("TYPE" );
@@ -130,6 +134,7 @@ private static <T> NodeClass<T> getUnchecked(Class<T> clazz) {
130
134
}
131
135
}
132
136
137
+ @ Platforms (Platform .HOSTED_ONLY .class )
133
138
public static <T > NodeClass <T > get (Class <T > clazz ) {
134
139
NodeClass <T > result = getUnchecked (clazz );
135
140
if (result == null && clazz != NODE_CLASS ) {
@@ -169,12 +174,14 @@ public static <T> NodeClass<T> get(Class<T> clazz) {
169
174
170
175
private final int leafId ;
171
176
177
+ @ Platforms (Platform .HOSTED_ONLY .class )
172
178
public NodeClass (Class <T > clazz , NodeClass <? super T > superNodeClass ) {
173
179
this (clazz , superNodeClass , new FieldsScanner .DefaultCalcOffset (), null , 0 );
174
180
}
175
181
176
182
@ SuppressWarnings ("try" )
177
- public NodeClass (Class <T > clazz , NodeClass <? super T > superNodeClass , FieldsScanner .CalcOffset calcOffset , int [] presetIterableIds , int presetIterableId ) {
183
+ @ Platforms (Platform .HOSTED_ONLY .class )
184
+ private NodeClass (Class <T > clazz , NodeClass <? super T > superNodeClass , FieldsScanner .CalcOffset calcOffset , int [] presetIterableIds , int presetIterableId ) {
178
185
super (clazz );
179
186
DebugContext debug = DebugContext .forCurrentThread ();
180
187
this .superNodeClass = superNodeClass ;
0 commit comments