Mercurial > hg > graal-jvmci-8
comparison c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/HotSpotRegisterConfig.java @ 1418:55ac38887415
modifications for linux: argument register layout, makefile
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Fri, 09 Jul 2010 16:33:03 -0700 |
parents | 1b41af477605 |
children | 7bf6a77b9c5a |
comparison
equal
deleted
inserted
replaced
1417:2c41834aa270 | 1418:55ac38887415 |
---|---|
39 @Override | 39 @Override |
40 public CiRegister[] getAllocatableRegisters() { | 40 public CiRegister[] getAllocatableRegisters() { |
41 return new CiRegister[]{ AMD64.rax, AMD64.rbx, AMD64.rcx, AMD64.rdx, AMD64.rsi, AMD64.rdi, AMD64.r10, AMD64.r11} ; | 41 return new CiRegister[]{ AMD64.rax, AMD64.rbx, AMD64.rcx, AMD64.rdx, AMD64.rsi, AMD64.rdi, AMD64.r10, AMD64.r11} ; |
42 } | 42 } |
43 | 43 |
44 private final CiRegister[] generalParameterRegisters; | |
45 private final CiRegister[] xmmParameterRegisters = new CiRegister[]{AMD64.xmm0, AMD64.xmm1, AMD64.xmm2, AMD64.xmm3, AMD64.xmm4, AMD64.xmm5, AMD64.xmm6, AMD64.xmm7}; | |
44 | 46 |
45 private final CiRegister[] generalParameterRegisters = new CiRegister[]{AMD64.rdx, AMD64.r8, AMD64.r9, AMD64.rdi, AMD64.rsi, AMD64.rcx}; | 47 public HotSpotRegisterConfig(boolean windowsRegisterLayout) { |
46 private final CiRegister[] xmmParameterRegisters = new CiRegister[]{AMD64.xmm0, AMD64.xmm1, AMD64.xmm2, AMD64.xmm3, AMD64.xmm4, AMD64.xmm5, AMD64.xmm6, AMD64.xmm7}; | 48 if(windowsRegisterLayout) { |
49 generalParameterRegisters = new CiRegister[]{AMD64.rdx, AMD64.r8, AMD64.r9, AMD64.rdi, AMD64.rsi, AMD64.rcx}; | |
50 } else { | |
51 generalParameterRegisters = new CiRegister[]{AMD64.rsi, AMD64.rdx, AMD64.rcx, AMD64.r8, AMD64.r9, AMD64.rdi}; | |
52 } | |
53 } | |
47 | 54 |
48 @Override | 55 @Override |
49 public int getCalleeSaveRegisterOffset(CiRegister register) { | 56 public int getCalleeSaveRegisterOffset(CiRegister register) { |
50 return 0; | 57 return 0; |
51 } | 58 } |