This commit is contained in:
Andrei Pangin 2009-08-30 15:33:14 -07:00
commit 13516fe398
2 changed files with 18 additions and 2 deletions

View file

@ -1526,7 +1526,8 @@ void os::print_os_info(outputStream* st) {
case 5000: st->print(" Windows 2000"); break; case 5000: st->print(" Windows 2000"); break;
case 5001: st->print(" Windows XP"); break; case 5001: st->print(" Windows XP"); break;
case 5002: case 5002:
case 6000: { case 6000:
case 6001: {
// Retrieve SYSTEM_INFO from GetNativeSystemInfo call so that we could // Retrieve SYSTEM_INFO from GetNativeSystemInfo call so that we could
// find out whether we are running on 64 bit processor or not. // find out whether we are running on 64 bit processor or not.
SYSTEM_INFO si; SYSTEM_INFO si;
@ -1549,13 +1550,27 @@ void os::print_os_info(outputStream* st) {
st->print(" Windows XP x64 Edition"); st->print(" Windows XP x64 Edition");
else else
st->print(" Windows Server 2003 family"); st->print(" Windows Server 2003 family");
} else { // os_vers == 6000 } else if (os_vers == 6000) {
if (osvi.wProductType == VER_NT_WORKSTATION) if (osvi.wProductType == VER_NT_WORKSTATION)
st->print(" Windows Vista"); st->print(" Windows Vista");
else else
st->print(" Windows Server 2008"); st->print(" Windows Server 2008");
if (si.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64) if (si.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64)
st->print(" , 64 bit"); st->print(" , 64 bit");
} else if (os_vers == 6001) {
if (osvi.wProductType == VER_NT_WORKSTATION) {
st->print(" Windows 7");
} else {
// Unrecognized windows, print out its major and minor versions
st->print(" Windows NT %d.%d", osvi.dwMajorVersion, osvi.dwMinorVersion);
}
if (si.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64)
st->print(" , 64 bit");
} else { // future os
// Unrecognized windows, print out its major and minor versions
st->print(" Windows NT %d.%d", osvi.dwMajorVersion, osvi.dwMinorVersion);
if (si.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64)
st->print(" , 64 bit");
} }
break; break;
} }

View file

@ -1085,6 +1085,7 @@ void instanceKlass::set_cached_itable_index(size_t idnum, int index) {
if (indices == NULL || (length = (size_t)indices[0]) <= idnum) { if (indices == NULL || (length = (size_t)indices[0]) <= idnum) {
size_t size = MAX2(idnum+1, (size_t)idnum_allocated_count()); size_t size = MAX2(idnum+1, (size_t)idnum_allocated_count());
int* new_indices = NEW_C_HEAP_ARRAY(int, size+1); int* new_indices = NEW_C_HEAP_ARRAY(int, size+1);
new_indices[0] =(int)size; // array size held in the first element
// Copy the existing entries, if any // Copy the existing entries, if any
size_t i; size_t i;
for (i = 0; i < length; i++) { for (i = 0; i < length; i++) {