changeset 21656:e49a0ebb2659

AMD64HotSpotRegisterAllocationConfig: adhere to the register order specified by -G:RegisterPressure.
author Josef Eisl <josef.eisl@jku.at>
date Tue, 02 Jun 2015 10:23:19 +0200
parents 31f4a8259879
children 137068704691
files graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRegisterAllocationConfig.java
diffstat 1 files changed, 3 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRegisterAllocationConfig.java	Tue Jun 02 11:55:30 2015 +0200
+++ b/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRegisterAllocationConfig.java	Tue Jun 02 10:23:19 2015 +0200
@@ -55,12 +55,11 @@
     @Override
     protected Register[] initAllocatable(Register[] registers) {
         BitSet regMap = new BitSet(registerConfig.getAllocatableRegisters().length);
-        Register[] regs = super.initAllocatable(registers);
-        for (Register reg : regs) {
+        for (Register reg : registers) {
             regMap.set(reg.number);
         }
 
-        Register[] allocatableRegisters = new Register[regs.length];
+        Register[] allocatableRegisters = new Register[registers.length];
         int i = 0;
         for (Register reg : registerAllocationOrder) {
             if (regMap.get(reg.number)) {
@@ -69,7 +68,7 @@
         }
 
         assert i == allocatableRegisters.length;
-        return allocatableRegisters;
+        return super.initAllocatable(allocatableRegisters);
     }
 
     @Override