comparison jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedJavaFieldImpl.java @ 22758:a130b51efb07

removed @Option mechanism from JVMCI (GRAAL-1371)
author Doug Simon <doug.simon@oracle.com>
date Mon, 21 Dec 2015 15:53:56 +0100
parents 1bbd4a7c274b
children 4b58c92e939b
comparison
equal deleted inserted replaced
22757:f4c4cc22a31c 22758:a130b51efb07
33 import jdk.vm.ci.meta.LocationIdentity; 33 import jdk.vm.ci.meta.LocationIdentity;
34 import jdk.vm.ci.meta.MetaAccessProvider; 34 import jdk.vm.ci.meta.MetaAccessProvider;
35 import jdk.vm.ci.meta.ModifiersProvider; 35 import jdk.vm.ci.meta.ModifiersProvider;
36 import jdk.vm.ci.meta.ResolvedJavaField; 36 import jdk.vm.ci.meta.ResolvedJavaField;
37 import jdk.vm.ci.meta.ResolvedJavaType; 37 import jdk.vm.ci.meta.ResolvedJavaType;
38 import jdk.vm.ci.options.Option;
39 import jdk.vm.ci.options.OptionType;
40 import jdk.vm.ci.options.OptionValue;
41 38
42 /** 39 /**
43 * Represents a field in a HotSpot type. 40 * Represents a field in a HotSpot type.
44 */ 41 */
45 class HotSpotResolvedJavaFieldImpl implements HotSpotResolvedJavaField, HotSpotProxified { 42 class HotSpotResolvedJavaFieldImpl implements HotSpotResolvedJavaField, HotSpotProxified {
46 43
47 static class Options { 44 /**
48 //@formatter:off 45 * Mark well-known stable fields as such.
49 @Option(help = "Mark well-known stable fields as such.", type = OptionType.Debug) 46 */
50 public static final OptionValue<Boolean> ImplicitStableValues = new OptionValue<>(true); 47 private static final boolean ImplicitStableValues = HotSpotJVMCIRuntime.getBooleanOption("jvmci.ImplicitStableValues", true);
51 //@formatter:on
52 }
53 48
54 private final HotSpotResolvedObjectTypeImpl holder; 49 private final HotSpotResolvedObjectTypeImpl holder;
55 private final String name; 50 private final String name;
56 private JavaType type; 51 private JavaType type;
57 private final int offset; 52 private final int offset;
201 public boolean isStable() { 196 public boolean isStable() {
202 if ((config().jvmAccFieldStable & modifiers) != 0) { 197 if ((config().jvmAccFieldStable & modifiers) != 0) {
203 return true; 198 return true;
204 } 199 }
205 assert getAnnotation(Stable.class) == null; 200 assert getAnnotation(Stable.class) == null;
206 if (Options.ImplicitStableValues.getValue() && isImplicitStableField()) { 201 if (ImplicitStableValues && isImplicitStableField()) {
207 return true; 202 return true;
208 } 203 }
209 return false; 204 return false;
210 } 205 }
211 206