src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/LIR.java
changeset 54084 84f10bbf993f
parent 52910 583fd71c47d6
child 55509 d58442b8abc1
child 58678 9cf78a70fa4f
--- a/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/LIR.java	Tue Mar 12 12:12:01 2019 -0700
+++ b/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/LIR.java	Tue Mar 12 19:17:42 2019 +0100
@@ -28,12 +28,14 @@
 import java.util.Arrays;
 import java.util.List;
 
+import org.graalvm.compiler.asm.Label;
 import org.graalvm.compiler.core.common.cfg.AbstractBlockBase;
 import org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph;
 import org.graalvm.compiler.core.common.cfg.BlockMap;
 import org.graalvm.compiler.debug.DebugContext;
 import org.graalvm.compiler.lir.StandardOp.BlockEndOp;
 import org.graalvm.compiler.lir.StandardOp.LabelOp;
+import org.graalvm.compiler.lir.StandardOp.LabelHoldingOp;
 import org.graalvm.compiler.lir.gen.LIRGenerator;
 import org.graalvm.compiler.options.OptionValues;
 
@@ -233,8 +235,11 @@
                 continue;
             }
             for (LIRInstruction inst : lirInstructions.get(block)) {
-                if (inst instanceof LabelOp) {
-                    ((LabelOp) inst).getLabel().reset();
+                if (inst instanceof LabelHoldingOp) {
+                    Label label = ((LabelHoldingOp) inst).getLabel();
+                    if (label != null) {
+                        label.reset();
+                    }
                 }
             }
         }