src/share/vm/utilities/globalDefinitions.cpp

changeset 4159
8e47bac5643a
parent 4051
8a02ca5e5576
child 4889
cc32ccaaf47f
     1.1 --- a/src/share/vm/utilities/globalDefinitions.cpp	Mon Oct 08 17:04:00 2012 -0700
     1.2 +++ b/src/share/vm/utilities/globalDefinitions.cpp	Tue Oct 09 10:11:38 2012 +0200
     1.3 @@ -111,11 +111,12 @@
     1.4        case T_DOUBLE:
     1.5        case T_LONG:
     1.6        case T_OBJECT:
     1.7 -      case T_ADDRESS:   // random raw pointer
     1.8 -      case T_METADATA:  // metadata pointer
     1.9 -      case T_NARROWOOP: // compressed pointer
    1.10 -      case T_CONFLICT:  // might as well support a bottom type
    1.11 -      case T_VOID:      // padding or other unaddressed word
    1.12 +      case T_ADDRESS:     // random raw pointer
    1.13 +      case T_METADATA:    // metadata pointer
    1.14 +      case T_NARROWOOP:   // compressed pointer
    1.15 +      case T_NARROWKLASS: // compressed klass pointer
    1.16 +      case T_CONFLICT:    // might as well support a bottom type
    1.17 +      case T_VOID:        // padding or other unaddressed word
    1.18          // layout type must map to itself
    1.19          assert(vt == ft, "");
    1.20          break;
    1.21 @@ -179,7 +180,7 @@
    1.22  
    1.23  
    1.24  // Map BasicType to signature character
    1.25 -char type2char_tab[T_CONFLICT+1]={ 0, 0, 0, 0, 'Z', 'C', 'F', 'D', 'B', 'S', 'I', 'J', 'L', '[', 'V', 0, 0, 0, 0};
    1.26 +char type2char_tab[T_CONFLICT+1]={ 0, 0, 0, 0, 'Z', 'C', 'F', 'D', 'B', 'S', 'I', 'J', 'L', '[', 'V', 0, 0, 0, 0, 0};
    1.27  
    1.28  // Map BasicType to Java type name
    1.29  const char* type2name_tab[T_CONFLICT+1] = {
    1.30 @@ -198,6 +199,7 @@
    1.31    "*address*",
    1.32    "*narrowoop*",
    1.33    "*metadata*",
    1.34 +  "*narrowklass*",
    1.35    "*conflict*"
    1.36  };
    1.37  
    1.38 @@ -213,7 +215,7 @@
    1.39  
    1.40  
    1.41  // Map BasicType to size in words
    1.42 -int type2size[T_CONFLICT+1]={ -1, 0, 0, 0, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 0, 1, 1, 1, -1};
    1.43 +int type2size[T_CONFLICT+1]={ -1, 0, 0, 0, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 0, 1, 1, 1, 1, -1};
    1.44  
    1.45  BasicType type2field[T_CONFLICT+1] = {
    1.46    (BasicType)0,            // 0,
    1.47 @@ -234,7 +236,8 @@
    1.48    T_ADDRESS,               // T_ADDRESS  = 15,
    1.49    T_NARROWOOP,             // T_NARROWOOP= 16,
    1.50    T_METADATA,              // T_METADATA = 17,
    1.51 -  T_CONFLICT               // T_CONFLICT = 18,
    1.52 +  T_NARROWKLASS,           // T_NARROWKLASS = 18,
    1.53 +  T_CONFLICT               // T_CONFLICT = 19,
    1.54  };
    1.55  
    1.56  
    1.57 @@ -257,30 +260,32 @@
    1.58    T_ADDRESS, // T_ADDRESS  = 15,
    1.59    T_NARROWOOP, // T_NARROWOOP  = 16,
    1.60    T_METADATA,  // T_METADATA   = 17,
    1.61 -  T_CONFLICT // T_CONFLICT = 18,
    1.62 +  T_NARROWKLASS, // T_NARROWKLASS  = 18,
    1.63 +  T_CONFLICT // T_CONFLICT = 19,
    1.64  };
    1.65  
    1.66  
    1.67  int _type2aelembytes[T_CONFLICT+1] = {
    1.68 -  0,                      // 0
    1.69 -  0,                      // 1
    1.70 -  0,                      // 2
    1.71 -  0,                      // 3
    1.72 -  T_BOOLEAN_aelem_bytes,  // T_BOOLEAN  =  4,
    1.73 -  T_CHAR_aelem_bytes,     // T_CHAR     =  5,
    1.74 -  T_FLOAT_aelem_bytes,    // T_FLOAT    =  6,
    1.75 -  T_DOUBLE_aelem_bytes,   // T_DOUBLE   =  7,
    1.76 -  T_BYTE_aelem_bytes,     // T_BYTE     =  8,
    1.77 -  T_SHORT_aelem_bytes,    // T_SHORT    =  9,
    1.78 -  T_INT_aelem_bytes,      // T_INT      = 10,
    1.79 -  T_LONG_aelem_bytes,     // T_LONG     = 11,
    1.80 -  T_OBJECT_aelem_bytes,   // T_OBJECT   = 12,
    1.81 -  T_ARRAY_aelem_bytes,    // T_ARRAY    = 13,
    1.82 -  0,                      // T_VOID     = 14,
    1.83 -  T_OBJECT_aelem_bytes,   // T_ADDRESS  = 15,
    1.84 -  T_NARROWOOP_aelem_bytes,// T_NARROWOOP= 16,
    1.85 -  T_OBJECT_aelem_bytes,   // T_METADATA = 17,
    1.86 -  0                       // T_CONFLICT = 18,
    1.87 +  0,                         // 0
    1.88 +  0,                         // 1
    1.89 +  0,                         // 2
    1.90 +  0,                         // 3
    1.91 +  T_BOOLEAN_aelem_bytes,     // T_BOOLEAN  =  4,
    1.92 +  T_CHAR_aelem_bytes,        // T_CHAR     =  5,
    1.93 +  T_FLOAT_aelem_bytes,       // T_FLOAT    =  6,
    1.94 +  T_DOUBLE_aelem_bytes,      // T_DOUBLE   =  7,
    1.95 +  T_BYTE_aelem_bytes,        // T_BYTE     =  8,
    1.96 +  T_SHORT_aelem_bytes,       // T_SHORT    =  9,
    1.97 +  T_INT_aelem_bytes,         // T_INT      = 10,
    1.98 +  T_LONG_aelem_bytes,        // T_LONG     = 11,
    1.99 +  T_OBJECT_aelem_bytes,      // T_OBJECT   = 12,
   1.100 +  T_ARRAY_aelem_bytes,       // T_ARRAY    = 13,
   1.101 +  0,                         // T_VOID     = 14,
   1.102 +  T_OBJECT_aelem_bytes,      // T_ADDRESS  = 15,
   1.103 +  T_NARROWOOP_aelem_bytes,   // T_NARROWOOP= 16,
   1.104 +  T_OBJECT_aelem_bytes,      // T_METADATA = 17,
   1.105 +  T_NARROWKLASS_aelem_bytes, // T_NARROWKLASS= 18,
   1.106 +  0                          // T_CONFLICT = 19,
   1.107  };
   1.108  
   1.109  #ifdef ASSERT

mercurial