src/share/vm/oops/constantPoolOop.cpp

Print this page




 945         strncpy(str, (char *) (bytes+2), len);
 946         str[len] = '\0';
 947         printf("Utf8          \"%s\"", str);
 948         ent_size = 2 + len;
 949         break;
 950       }
 951       case JVM_CONSTANT_Integer: {
 952         u4 val = Bytes::get_Java_u4(bytes);
 953         printf("int          %d", *(int *) &val);
 954         ent_size = 4;
 955         break;
 956       }
 957       case JVM_CONSTANT_Float: {
 958         u4 val = Bytes::get_Java_u4(bytes);
 959         printf("float        %5.3ff", *(float *) &val);
 960         ent_size = 4;
 961         break;
 962       }
 963       case JVM_CONSTANT_Long: {
 964         u8 val = Bytes::get_Java_u8(bytes);
 965         printf("long         %lldl", *(jlong *) &val);
 966         ent_size = 8;
 967         idx++; // Long takes two cpool slots
 968         break;
 969       }
 970       case JVM_CONSTANT_Double: {
 971         u8 val = Bytes::get_Java_u8(bytes);
 972         printf("double       %5.3fd", *(jdouble *)&val);
 973         ent_size = 8;
 974         idx++; // Double takes two cpool slots
 975         break;
 976       }
 977       case JVM_CONSTANT_Class: {
 978         idx1 = Bytes::get_Java_u2(bytes);
 979         printf("class        #%03d", idx1);
 980         ent_size = 2;
 981         break;
 982       }
 983       case JVM_CONSTANT_String: {
 984         idx1 = Bytes::get_Java_u2(bytes);
 985         printf("String       #%03d", idx1);




 945         strncpy(str, (char *) (bytes+2), len);
 946         str[len] = '\0';
 947         printf("Utf8          \"%s\"", str);
 948         ent_size = 2 + len;
 949         break;
 950       }
 951       case JVM_CONSTANT_Integer: {
 952         u4 val = Bytes::get_Java_u4(bytes);
 953         printf("int          %d", *(int *) &val);
 954         ent_size = 4;
 955         break;
 956       }
 957       case JVM_CONSTANT_Float: {
 958         u4 val = Bytes::get_Java_u4(bytes);
 959         printf("float        %5.3ff", *(float *) &val);
 960         ent_size = 4;
 961         break;
 962       }
 963       case JVM_CONSTANT_Long: {
 964         u8 val = Bytes::get_Java_u8(bytes);
 965         printf("long         "INT64_FORMAT, *(jlong *) &val);
 966         ent_size = 8;
 967         idx++; // Long takes two cpool slots
 968         break;
 969       }
 970       case JVM_CONSTANT_Double: {
 971         u8 val = Bytes::get_Java_u8(bytes);
 972         printf("double       %5.3fd", *(jdouble *)&val);
 973         ent_size = 8;
 974         idx++; // Double takes two cpool slots
 975         break;
 976       }
 977       case JVM_CONSTANT_Class: {
 978         idx1 = Bytes::get_Java_u2(bytes);
 979         printf("class        #%03d", idx1);
 980         ent_size = 2;
 981         break;
 982       }
 983       case JVM_CONSTANT_String: {
 984         idx1 = Bytes::get_Java_u2(bytes);
 985         printf("String       #%03d", idx1);