changeset 18448:645aa30b23a7

FrameMapBuilder: DelayedFrameMapBuilder use FrameMap.allocateStackSlots().
author Josef Eisl <josef.eisl@jku.at>
date Mon, 17 Nov 2014 18:56:46 +0100
parents f933c2d7521b
children cdff1577017c
files graal/com.oracle.graal.lir/src/com/oracle/graal/lir/framemap/DelayedFrameMapBuilder.java
diffstat 1 files changed, 1 insertions(+), 25 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/framemap/DelayedFrameMapBuilder.java	Mon Nov 17 18:28:51 2014 +0100
+++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/framemap/DelayedFrameMapBuilder.java	Mon Nov 17 18:56:46 2014 +0100
@@ -107,31 +107,7 @@
 
         @Override
         public StackSlot transform() {
-            frameMap.spillSize += (slots * frameMap.getTarget().wordSize);
-
-            if (!objects.isEmpty()) {
-                assert objects.length() <= slots;
-                StackSlot result = null;
-                for (int slotIndex = 0; slotIndex < slots; slotIndex++) {
-                    StackSlot objectSlot = null;
-                    if (objects.get(slotIndex)) {
-                        objectSlot = frameMap.allocateNewSpillSlot(LIRKind.reference(Kind.Object), slotIndex * frameMap.getTarget().wordSize);
-                        frameMap.addObjectStackSlot(objectSlot);
-                    }
-                    if (slotIndex == 0) {
-                        if (objectSlot != null) {
-                            result = objectSlot;
-                        } else {
-                            result = frameMap.allocateNewSpillSlot(LIRKind.value(frameMap.getTarget().wordKind), 0);
-                        }
-                    }
-                }
-                assert result != null;
-                return result;
-
-            } else {
-                return frameMap.allocateNewSpillSlot(LIRKind.value(frameMap.getTarget().wordKind), 0);
-            }
+            return frameMap.allocateStackSlots(slots, objects);
         }
 
     }