< prev index next >

src/hotspot/cpu/aarch64/vmreg_aarch64.cpp

Print this page

34   int i;
35   for (i = 0; i < ConcreteRegisterImpl::max_gpr ; ) {
36     for (int j = 0 ; j < RegisterImpl::max_slots_per_register ; j++) {
37       regName[i++] = reg->name();
38     }
39     reg = reg->successor();
40   }
41 
42   FloatRegister freg = ::as_FloatRegister(0);
43   for ( ; i < ConcreteRegisterImpl::max_fpr ; ) {
44     for (int j = 0 ; j < FloatRegisterImpl::max_slots_per_register ; j++) {
45       regName[i++] = freg->name();
46     }
47     freg = freg->successor();
48   }
49 
50   for ( ; i < ConcreteRegisterImpl::number_of_registers ; i ++ ) {
51     regName[i] = "NON-GPR-FPR";
52   }
53 }
54 
55 #define INTEGER_TYPE 0
56 #define VECTOR_TYPE 1
57 #define STACK_TYPE 3
58 
59 VMReg VMRegImpl::vmStorageToVMReg(int type, int index) {
60   switch(type) {
61     case INTEGER_TYPE: return ::as_Register(index)->as_VMReg();
62     case VECTOR_TYPE: return ::as_FloatRegister(index)->as_VMReg();
63     case STACK_TYPE: return VMRegImpl::stack2reg(index LP64_ONLY(* 2));
64   }
65   return VMRegImpl::Bad();
66 }

34   int i;
35   for (i = 0; i < ConcreteRegisterImpl::max_gpr ; ) {
36     for (int j = 0 ; j < RegisterImpl::max_slots_per_register ; j++) {
37       regName[i++] = reg->name();
38     }
39     reg = reg->successor();
40   }
41 
42   FloatRegister freg = ::as_FloatRegister(0);
43   for ( ; i < ConcreteRegisterImpl::max_fpr ; ) {
44     for (int j = 0 ; j < FloatRegisterImpl::max_slots_per_register ; j++) {
45       regName[i++] = freg->name();
46     }
47     freg = freg->successor();
48   }
49 
50   for ( ; i < ConcreteRegisterImpl::number_of_registers ; i ++ ) {
51     regName[i] = "NON-GPR-FPR";
52   }
53 }













< prev index next >