comparison src/share/vm/classfile/classFileParser.cpp @ 6848:8e47bac5643a

7054512: Compress class pointers after perm gen removal Summary: support of compress class pointers in the compilers. Reviewed-by: kvn, twisti
author roland
date Tue, 09 Oct 2012 10:11:38 +0200
parents aed758eda82a
children 19eb999cb72c
comparison
equal deleted inserted replaced
6847:65d07d9ee446 6848:8e47bac5643a
1006 static FieldAllocationType _basic_type_to_atype[2 * (T_CONFLICT + 1)] = { 1006 static FieldAllocationType _basic_type_to_atype[2 * (T_CONFLICT + 1)] = {
1007 BAD_ALLOCATION_TYPE, // 0 1007 BAD_ALLOCATION_TYPE, // 0
1008 BAD_ALLOCATION_TYPE, // 1 1008 BAD_ALLOCATION_TYPE, // 1
1009 BAD_ALLOCATION_TYPE, // 2 1009 BAD_ALLOCATION_TYPE, // 2
1010 BAD_ALLOCATION_TYPE, // 3 1010 BAD_ALLOCATION_TYPE, // 3
1011 NONSTATIC_BYTE , // T_BOOLEAN = 4, 1011 NONSTATIC_BYTE , // T_BOOLEAN = 4,
1012 NONSTATIC_SHORT, // T_CHAR = 5, 1012 NONSTATIC_SHORT, // T_CHAR = 5,
1013 NONSTATIC_WORD, // T_FLOAT = 6, 1013 NONSTATIC_WORD, // T_FLOAT = 6,
1014 NONSTATIC_DOUBLE, // T_DOUBLE = 7, 1014 NONSTATIC_DOUBLE, // T_DOUBLE = 7,
1015 NONSTATIC_BYTE, // T_BYTE = 8, 1015 NONSTATIC_BYTE, // T_BYTE = 8,
1016 NONSTATIC_SHORT, // T_SHORT = 9, 1016 NONSTATIC_SHORT, // T_SHORT = 9,
1017 NONSTATIC_WORD, // T_INT = 10, 1017 NONSTATIC_WORD, // T_INT = 10,
1018 NONSTATIC_DOUBLE, // T_LONG = 11, 1018 NONSTATIC_DOUBLE, // T_LONG = 11,
1019 NONSTATIC_OOP, // T_OBJECT = 12, 1019 NONSTATIC_OOP, // T_OBJECT = 12,
1020 NONSTATIC_OOP, // T_ARRAY = 13, 1020 NONSTATIC_OOP, // T_ARRAY = 13,
1021 BAD_ALLOCATION_TYPE, // T_VOID = 14, 1021 BAD_ALLOCATION_TYPE, // T_VOID = 14,
1022 BAD_ALLOCATION_TYPE, // T_ADDRESS = 15, 1022 BAD_ALLOCATION_TYPE, // T_ADDRESS = 15,
1023 BAD_ALLOCATION_TYPE, // T_NARROWOOP= 16, 1023 BAD_ALLOCATION_TYPE, // T_NARROWOOP = 16,
1024 BAD_ALLOCATION_TYPE, // T_METADATA = 17, 1024 BAD_ALLOCATION_TYPE, // T_METADATA = 17,
1025 BAD_ALLOCATION_TYPE, // T_CONFLICT = 18, 1025 BAD_ALLOCATION_TYPE, // T_NARROWKLASS = 18,
1026 BAD_ALLOCATION_TYPE, // T_CONFLICT = 19,
1026 BAD_ALLOCATION_TYPE, // 0 1027 BAD_ALLOCATION_TYPE, // 0
1027 BAD_ALLOCATION_TYPE, // 1 1028 BAD_ALLOCATION_TYPE, // 1
1028 BAD_ALLOCATION_TYPE, // 2 1029 BAD_ALLOCATION_TYPE, // 2
1029 BAD_ALLOCATION_TYPE, // 3 1030 BAD_ALLOCATION_TYPE, // 3
1030 STATIC_BYTE , // T_BOOLEAN = 4, 1031 STATIC_BYTE , // T_BOOLEAN = 4,
1031 STATIC_SHORT, // T_CHAR = 5, 1032 STATIC_SHORT, // T_CHAR = 5,
1032 STATIC_WORD, // T_FLOAT = 6, 1033 STATIC_WORD, // T_FLOAT = 6,
1033 STATIC_DOUBLE, // T_DOUBLE = 7, 1034 STATIC_DOUBLE, // T_DOUBLE = 7,
1034 STATIC_BYTE, // T_BYTE = 8, 1035 STATIC_BYTE, // T_BYTE = 8,
1035 STATIC_SHORT, // T_SHORT = 9, 1036 STATIC_SHORT, // T_SHORT = 9,
1036 STATIC_WORD, // T_INT = 10, 1037 STATIC_WORD, // T_INT = 10,
1037 STATIC_DOUBLE, // T_LONG = 11, 1038 STATIC_DOUBLE, // T_LONG = 11,
1038 STATIC_OOP, // T_OBJECT = 12, 1039 STATIC_OOP, // T_OBJECT = 12,
1039 STATIC_OOP, // T_ARRAY = 13, 1040 STATIC_OOP, // T_ARRAY = 13,
1040 BAD_ALLOCATION_TYPE, // T_VOID = 14, 1041 BAD_ALLOCATION_TYPE, // T_VOID = 14,
1041 BAD_ALLOCATION_TYPE, // T_ADDRESS = 15, 1042 BAD_ALLOCATION_TYPE, // T_ADDRESS = 15,
1042 BAD_ALLOCATION_TYPE, // T_NARROWOOP= 16, 1043 BAD_ALLOCATION_TYPE, // T_NARROWOOP = 16,
1043 BAD_ALLOCATION_TYPE, // T_METADATA = 17, 1044 BAD_ALLOCATION_TYPE, // T_METADATA = 17,
1044 BAD_ALLOCATION_TYPE, // T_CONFLICT = 18, 1045 BAD_ALLOCATION_TYPE, // T_NARROWKLASS = 18,
1046 BAD_ALLOCATION_TYPE, // T_CONFLICT = 19,
1045 }; 1047 };
1046 1048
1047 static FieldAllocationType basic_type_to_atype(bool is_static, BasicType type) { 1049 static FieldAllocationType basic_type_to_atype(bool is_static, BasicType type) {
1048 assert(type >= T_BOOLEAN && type < T_VOID, "only allowable values"); 1050 assert(type >= T_BOOLEAN && type < T_VOID, "only allowable values");
1049 FieldAllocationType result = _basic_type_to_atype[type + (is_static ? (T_CONFLICT + 1) : 0)]; 1051 FieldAllocationType result = _basic_type_to_atype[type + (is_static ? (T_CONFLICT + 1) : 0)];