# HG changeset patch # User Josef Eisl # Date 1433233399 -7200 # Node ID e49a0ebb26595cb10320c19cf906a979cb68d327 # Parent 31f4a825987928e4c9f910164403869717cfc6c5 AMD64HotSpotRegisterAllocationConfig: adhere to the register order specified by -G:RegisterPressure. diff -r 31f4a8259879 -r e49a0ebb2659 graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRegisterAllocationConfig.java --- 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