src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/LoadHubNode.java
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
hotspot Cdiff src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/LoadHubNode.java
src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/LoadHubNode.java
Print this page
*** 88,98 ****
tool.getLowerer().lower(this, tool);
}
@Override
public ValueNode canonical(CanonicalizerTool tool) {
! if (!GeneratePIC.getValue()) {
MetaAccessProvider metaAccess = tool.getMetaAccess();
ValueNode curValue = getValue();
ValueNode newNode = findSynonym(curValue, stamp(), metaAccess, tool.getConstantReflection());
if (newNode != null) {
return newNode;
--- 88,98 ----
tool.getLowerer().lower(this, tool);
}
@Override
public ValueNode canonical(CanonicalizerTool tool) {
! if (!GeneratePIC.getValue(tool.getOptions())) {
MetaAccessProvider metaAccess = tool.getMetaAccess();
ValueNode curValue = getValue();
ValueNode newNode = findSynonym(curValue, stamp(), metaAccess, tool.getConstantReflection());
if (newNode != null) {
return newNode;
*** 100,121 ****
}
return this;
}
public static ValueNode findSynonym(ValueNode curValue, Stamp stamp, MetaAccessProvider metaAccess, ConstantReflectionProvider constantReflection) {
! if (!GeneratePIC.getValue()) {
TypeReference type = StampTool.typeReferenceOrNull(curValue);
if (type != null && type.isExact()) {
return ConstantNode.forConstant(stamp, constantReflection.asObjectHub(type.getType()), metaAccess);
}
}
return null;
}
@Override
public void virtualize(VirtualizerTool tool) {
! if (!GeneratePIC.getValue()) {
ValueNode alias = tool.getAlias(getValue());
TypeReference type = StampTool.typeReferenceOrNull(alias);
if (type != null && type.isExact()) {
tool.replaceWithValue(ConstantNode.forConstant(stamp(), tool.getConstantReflectionProvider().asObjectHub(type.getType()), tool.getMetaAccessProvider(), graph()));
}
--- 100,121 ----
}
return this;
}
public static ValueNode findSynonym(ValueNode curValue, Stamp stamp, MetaAccessProvider metaAccess, ConstantReflectionProvider constantReflection) {
! if (!GeneratePIC.getValue(curValue.getOptions())) {
TypeReference type = StampTool.typeReferenceOrNull(curValue);
if (type != null && type.isExact()) {
return ConstantNode.forConstant(stamp, constantReflection.asObjectHub(type.getType()), metaAccess);
}
}
return null;
}
@Override
public void virtualize(VirtualizerTool tool) {
! if (!GeneratePIC.getValue(tool.getOptions())) {
ValueNode alias = tool.getAlias(getValue());
TypeReference type = StampTool.typeReferenceOrNull(alias);
if (type != null && type.isExact()) {
tool.replaceWithValue(ConstantNode.forConstant(stamp(), tool.getConstantReflectionProvider().asObjectHub(type.getType()), tool.getMetaAccessProvider(), graph()));
}
src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/LoadHubNode.java
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File