src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64MoveFactoryBase.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.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64MoveFactoryBase.java
src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64MoveFactoryBase.java
Print this page
*** 24,42 ****
package org.graalvm.compiler.core.amd64;
import static org.graalvm.compiler.asm.amd64.AMD64Assembler.OperandSize.QWORD;
import static org.graalvm.compiler.asm.amd64.AMD64Assembler.OperandSize.WORD;
- import java.util.HashMap;
- import java.util.Map;
-
import org.graalvm.compiler.core.common.LIRKind;
import org.graalvm.compiler.lir.VirtualStackSlot;
import org.graalvm.compiler.lir.amd64.AMD64LIRInstruction;
import org.graalvm.compiler.lir.amd64.AMD64Move.AMD64PushPopStackMove;
import org.graalvm.compiler.lir.framemap.FrameMapBuilder;
import org.graalvm.compiler.lir.gen.LIRGeneratorTool.MoveFactory;
import jdk.vm.ci.amd64.AMD64Kind;
import jdk.vm.ci.code.Architecture;
import jdk.vm.ci.code.Register;
import jdk.vm.ci.code.RegisterArray;
--- 24,41 ----
package org.graalvm.compiler.core.amd64;
import static org.graalvm.compiler.asm.amd64.AMD64Assembler.OperandSize.QWORD;
import static org.graalvm.compiler.asm.amd64.AMD64Assembler.OperandSize.WORD;
import org.graalvm.compiler.core.common.LIRKind;
import org.graalvm.compiler.lir.VirtualStackSlot;
import org.graalvm.compiler.lir.amd64.AMD64LIRInstruction;
import org.graalvm.compiler.lir.amd64.AMD64Move.AMD64PushPopStackMove;
import org.graalvm.compiler.lir.framemap.FrameMapBuilder;
import org.graalvm.compiler.lir.gen.LIRGeneratorTool.MoveFactory;
+ import org.graalvm.util.Equivalence;
+ import org.graalvm.util.EconomicMap;
import jdk.vm.ci.amd64.AMD64Kind;
import jdk.vm.ci.code.Architecture;
import jdk.vm.ci.code.Register;
import jdk.vm.ci.code.RegisterArray;
*** 59,78 ****
}
public static final class BackupSlotProvider {
private final FrameMapBuilder frameMapBuilder;
! private Map<PlatformKind.Key, RegisterBackupPair> categorized;
public BackupSlotProvider(FrameMapBuilder frameMapBuilder) {
this.frameMapBuilder = frameMapBuilder;
}
protected RegisterBackupPair getScratchRegister(PlatformKind kind) {
PlatformKind.Key key = kind.getKey();
if (categorized == null) {
! categorized = new HashMap<>();
} else if (categorized.containsKey(key)) {
return categorized.get(key);
}
RegisterConfig registerConfig = frameMapBuilder.getRegisterConfig();
--- 58,77 ----
}
public static final class BackupSlotProvider {
private final FrameMapBuilder frameMapBuilder;
! private EconomicMap<PlatformKind.Key, RegisterBackupPair> categorized;
public BackupSlotProvider(FrameMapBuilder frameMapBuilder) {
this.frameMapBuilder = frameMapBuilder;
}
protected RegisterBackupPair getScratchRegister(PlatformKind kind) {
PlatformKind.Key key = kind.getKey();
if (categorized == null) {
! categorized = EconomicMap.create(Equivalence.DEFAULT);
} else if (categorized.containsKey(key)) {
return categorized.get(key);
}
RegisterConfig registerConfig = frameMapBuilder.getRegisterConfig();
src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64MoveFactoryBase.java
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File