changeset 18456:c7fd88183eef

FrameMappingToolImpl: store mapping internally.
author Josef Eisl <josef.eisl@jku.at>
date Mon, 17 Nov 2014 19:54:33 +0100
parents ceacdac8b8b9
children 6c7efa29b626
files graal/com.oracle.graal.lir/src/com/oracle/graal/lir/framemap/DelayedFrameMapBuilder.java graal/com.oracle.graal.lir/src/com/oracle/graal/lir/framemap/FrameMappingToolImpl.java
diffstat 2 files changed, 5 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/framemap/DelayedFrameMapBuilder.java	Mon Nov 17 19:36:52 2014 +0100
+++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/framemap/DelayedFrameMapBuilder.java	Mon Nov 17 19:54:33 2014 +0100
@@ -87,9 +87,7 @@
     }
 
     public FrameMap buildFrameMap(LIRGenerationResult res) {
-        HashMap<VirtualStackSlot, StackSlot> mapping = new HashMap<>();
-        // fill
-        FrameMappingToolImpl tool = new FrameMappingToolImpl(mapping, this);
+        FrameMappingToolImpl tool = new FrameMappingToolImpl(this);
         tool.mapStackSlots();
         for (CallingConvention cc : calls) {
             frameMap.callsMethod(cc);
--- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/framemap/FrameMappingToolImpl.java	Mon Nov 17 19:36:52 2014 +0100
+++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/framemap/FrameMappingToolImpl.java	Mon Nov 17 19:54:33 2014 +0100
@@ -29,11 +29,11 @@
 
 public class FrameMappingToolImpl implements FrameMappingTool {
 
-    private final Map<VirtualStackSlot, StackSlot> mapping;
+    private final HashMap<VirtualStackSlot, StackSlot> mapping;
     private final DelayedFrameMapBuilder builder;
 
-    public FrameMappingToolImpl(Map<VirtualStackSlot, StackSlot> mapping, DelayedFrameMapBuilder builder) {
-        this.mapping = mapping;
+    public FrameMappingToolImpl(DelayedFrameMapBuilder builder) {
+        this.mapping = new HashMap<>();
         this.builder = builder;
     }
 
@@ -41,7 +41,7 @@
         return mapping.get(slot);
     }
 
-    public void mapStackSlots() {
+    void mapStackSlots() {
         for (VirtualStackSlot virtualSlot : builder.getStackSlots()) {
             final StackSlot slot;
             if (virtualSlot instanceof SimpleVirtualStackSlot) {