src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm/src/org/graalvm/compiler/asm/Assembler.java
equal
deleted
inserted
replaced
28 import java.util.HashMap; |
28 import java.util.HashMap; |
29 import java.util.List; |
29 import java.util.List; |
30 import java.util.Map; |
30 import java.util.Map; |
31 import java.util.function.Consumer; |
31 import java.util.function.Consumer; |
32 |
32 |
|
33 import org.graalvm.compiler.debug.GraalError; |
|
34 |
33 import jdk.vm.ci.code.Register; |
35 import jdk.vm.ci.code.Register; |
34 import jdk.vm.ci.code.StackSlot; |
36 import jdk.vm.ci.code.StackSlot; |
35 import jdk.vm.ci.code.TargetDescription; |
37 import jdk.vm.ci.code.TargetDescription; |
36 |
38 |
37 /** |
39 /** |
162 |
164 |
163 private void checkAndClearLabelsWithPatches() throws InternalError { |
165 private void checkAndClearLabelsWithPatches() throws InternalError { |
164 Label label = labelsWithPatches; |
166 Label label = labelsWithPatches; |
165 while (label != null) { |
167 while (label != null) { |
166 if (label.patchPositions != null) { |
168 if (label.patchPositions != null) { |
167 throw new InternalError("Label used by instructions at following offsets has not been bound: " + label.patchPositions); |
169 throw new GraalError("Label used by instructions at following offsets has not been bound: %s", label.patchPositions); |
168 } |
170 } |
169 Label next = label.nextWithPatches; |
171 Label next = label.nextWithPatches; |
170 label.nextWithPatches = null; |
172 label.nextWithPatches = null; |
171 label = next; |
173 label = next; |
172 } |
174 } |