--- a/make/autoconf/toolchain.m4 Thu Aug 30 13:12:38 2018 +0200
+++ b/make/autoconf/toolchain.m4 Fri Aug 31 09:37:03 2018 +0200
@@ -1026,8 +1026,6 @@
HOTSPOT_TOOLCHAIN_TYPE=$TOOLCHAIN_TYPE
if test "x$TOOLCHAIN_TYPE" = xclang; then
HOTSPOT_TOOLCHAIN_TYPE=gcc
- elif test "x$TOOLCHAIN_TYPE" = xsolstudio; then
- HOTSPOT_TOOLCHAIN_TYPE=sparcWorks
elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
HOTSPOT_TOOLCHAIN_TYPE=visCPP
fi
--- a/make/nb_native/nbproject/configurations.xml Thu Aug 30 13:12:38 2018 +0200
+++ b/make/nb_native/nbproject/configurations.xml Fri Aug 31 09:37:03 2018 +0200
@@ -2853,7 +2853,7 @@
<in>globalDefinitions.cpp</in>
<in>globalDefinitions.hpp</in>
<in>globalDefinitions_gcc.hpp</in>
- <in>globalDefinitions_sparcWorks.hpp</in>
+ <in>globalDefinitions_solstudio.hpp</in>
<in>globalDefinitions_visCPP.hpp</in>
<in>globalDefinitions_xlc.hpp</in>
<in>growableArray.cpp</in>
@@ -15217,7 +15217,7 @@
tool="3"
flavor2="0">
</item>
- <item path="../../src/hotspot/share/utilities/globalDefinitions_sparcWorks.hpp"
+ <item path="../../src/hotspot/share/utilities/globalDefinitions_solstudio.hpp"
ex="false"
tool="3"
flavor2="0">
@@ -15869,7 +15869,7 @@
<Elem>SPARC_WORKS</Elem>
<Elem>TARGET_ARCH_MODEL_x86_64</Elem>
<Elem>TARGET_ARCH_x86</Elem>
- <Elem>TARGET_COMPILER_sparcWorks</Elem>
+ <Elem>TARGET_COMPILER_solstudio</Elem>
<Elem>TARGET_OS_ARCH_MODEL_solaris_x86_64</Elem>
<Elem>TARGET_OS_ARCH_solaris_x86</Elem>
<Elem>TARGET_OS_FAMILY_solaris</Elem>
@@ -15922,7 +15922,7 @@
<Elem>SPARC_WORKS</Elem>
<Elem>TARGET_ARCH_MODEL_x86_64</Elem>
<Elem>TARGET_ARCH_x86</Elem>
- <Elem>TARGET_COMPILER_sparcWorks</Elem>
+ <Elem>TARGET_COMPILER_solstudio</Elem>
<Elem>TARGET_OS_ARCH_MODEL_solaris_x86_64</Elem>
<Elem>TARGET_OS_ARCH_solaris_x86</Elem>
<Elem>TARGET_OS_FAMILY_solaris</Elem>
@@ -28989,7 +28989,7 @@
tool="3"
flavor2="0">
</item>
- <item path="../../src/hotspot/share/utilities/globalDefinitions_sparcWorks.hpp"
+ <item path="../../src/hotspot/share/utilities/globalDefinitions_solstudio.hpp"
ex="false"
tool="3"
flavor2="0">
--- a/src/hotspot/share/interpreter/bytecodeHistogram.hpp Thu Aug 30 13:12:38 2018 +0200
+++ b/src/hotspot/share/interpreter/bytecodeHistogram.hpp Fri Aug 31 09:37:03 2018 +0200
@@ -74,7 +74,7 @@
// A bytecode pair is any sequence of two consequtive bytecodes.
class BytecodePairHistogram: AllStatic {
- public: // for SparcWorks
+ public: // for solstudio
enum Constants {
log2_number_of_codes = 8, // use a power of 2 for faster addressing
number_of_codes = 1 << log2_number_of_codes, // must be no less than Bytecodes::number_of_codes
--- a/src/hotspot/share/runtime/vmStructs.hpp Thu Aug 30 13:12:38 2018 +0200
+++ b/src/hotspot/share/runtime/vmStructs.hpp Fri Aug 31 09:37:03 2018 +0200
@@ -72,7 +72,7 @@
int32_t isStatic; // Indicates whether following field is an offset or an address
uint64_t offset; // Offset of field within structure; only used for nonstatic fields
void* address; // Address of field; only used for static fields
- // ("offset" can not be reused because of apparent SparcWorks compiler bug
+ // ("offset" can not be reused because of apparent solstudio compiler bug
// in generation of initializer data)
} VMStructEntry;
--- a/src/hotspot/share/utilities/count_trailing_zeros.hpp Thu Aug 30 13:12:38 2018 +0200
+++ b/src/hotspot/share/utilities/count_trailing_zeros.hpp Fri Aug 31 09:37:03 2018 +0200
@@ -89,7 +89,7 @@
/*****************************************************************************
* Oracle Studio
*****************************************************************************/
-#elif defined(TARGET_COMPILER_sparcWorks)
+#elif defined(TARGET_COMPILER_solstudio)
// No compiler built-in / intrinsic, so use inline assembler.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/share/utilities/globalDefinitions_solstudio.hpp Fri Aug 31 09:37:03 2018 +0200
@@ -0,0 +1,264 @@
+/*
+ * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#ifndef SHARE_VM_UTILITIES_GLOBALDEFINITIONS_SOLSTUDIO_HPP
+#define SHARE_VM_UTILITIES_GLOBALDEFINITIONS_SOLSTUDIO_HPP
+
+#include "jni.h"
+
+// This file holds compiler-dependent includes,
+// globally used constants & types, class (forward)
+// declarations and a few frequently used utility functions.
+
+
+# include <ctype.h>
+# include <string.h>
+# include <strings.h> // for bsd'isms
+# include <stdarg.h>
+# include <stddef.h> // for offsetof
+# include <stdio.h>
+# include <stdlib.h>
+# include <wchar.h>
+# include <stdarg.h>
+#ifdef SOLARIS
+# include <ieeefp.h>
+#endif
+# include <math.h>
+# include <time.h>
+# include <fcntl.h>
+# include <dlfcn.h>
+# include <pthread.h>
+#ifdef SOLARIS
+# include <thread.h>
+#endif
+# include <limits.h>
+# include <errno.h>
+#ifdef SOLARIS
+# include <sys/trap.h>
+# include <sys/regset.h>
+# include <sys/procset.h>
+# include <ucontext.h>
+# include <setjmp.h>
+#endif
+# ifdef SOLARIS_MUTATOR_LIBTHREAD
+# include <sys/procfs.h>
+# endif
+
+#include <inttypes.h>
+
+// Solaris 8 doesn't provide definitions of these
+#ifdef SOLARIS
+#ifndef PRIdPTR
+#if defined(_LP64)
+#define PRIdPTR "ld"
+#define PRIuPTR "lu"
+#define PRIxPTR "lx"
+#else
+#define PRIdPTR "d"
+#define PRIuPTR "u"
+#define PRIxPTR "x"
+#endif
+#endif
+#endif
+
+#ifdef LINUX
+# include <signal.h>
+# include <ucontext.h>
+# include <sys/time.h>
+#endif
+
+
+// 4810578: varargs unsafe on 32-bit integer/64-bit pointer architectures
+// When __cplusplus is defined, NULL is defined as 0 (32-bit constant) in
+// system header files. On 32-bit architectures, there is no problem.
+// On 64-bit architectures, defining NULL as a 32-bit constant can cause
+// problems with varargs functions: C++ integral promotion rules say for
+// varargs, we pass the argument 0 as an int. So, if NULL was passed to a
+// varargs function it will remain 32-bits. Depending on the calling
+// convention of the machine, if the argument is passed on the stack then
+// only 32-bits of the "NULL" pointer may be initialized to zero. The
+// other 32-bits will be garbage. If the varargs function is expecting a
+// pointer when it extracts the argument, then we have a problem.
+//
+// Solution: For 64-bit architectures, redefine NULL as 64-bit constant 0.
+//
+// Note: this fix doesn't work well on Linux because NULL will be overwritten
+// whenever a system header file is included. Linux handles NULL correctly
+// through a special type '__null'.
+#ifdef SOLARIS
+#ifdef _LP64
+#undef NULL
+#define NULL 0L
+#else
+#ifndef NULL
+#define NULL 0
+#endif
+#endif
+#endif
+
+// NULL vs NULL_WORD:
+// On Linux NULL is defined as a special type '__null'. Assigning __null to
+// integer variable will cause gcc warning. Use NULL_WORD in places where a
+// pointer is stored as integer value. On some platforms, sizeof(intptr_t) >
+// sizeof(void*), so here we want something which is integer type, but has the
+// same size as a pointer.
+#ifdef LINUX
+ #ifdef _LP64
+ #define NULL_WORD 0L
+ #else
+ // Cast 0 to intptr_t rather than int32_t since they are not the same type
+ // on some platforms.
+ #define NULL_WORD ((intptr_t)0)
+ #endif
+#else
+ #define NULL_WORD NULL
+#endif
+
+#ifndef LINUX
+// Compiler-specific primitive types
+typedef unsigned short uint16_t;
+#ifndef _UINT32_T
+#define _UINT32_T
+typedef unsigned int uint32_t;
+#endif
+#if !defined(_SYS_INT_TYPES_H)
+#ifndef _UINT64_T
+#define _UINT64_T
+typedef unsigned long long uint64_t;
+#endif
+// %%%% how to access definition of intptr_t portably in 5.5 onward?
+typedef int intptr_t;
+typedef unsigned int uintptr_t;
+// If this gets an error, figure out a symbol XXX that implies the
+// prior definition of intptr_t, and add "&& !defined(XXX)" above.
+#endif
+#endif
+
+// On solaris 8, UINTPTR_MAX is defined as empty.
+// Everywhere else it's an actual value.
+#if UINTPTR_MAX - 1 == -1
+#undef UINTPTR_MAX
+#ifdef _LP64
+#define UINTPTR_MAX UINT64_MAX
+#else
+#define UINTPTR_MAX UINT32_MAX
+#endif /* ifdef _LP64 */
+#endif
+
+// Additional Java basic types
+
+typedef unsigned char jubyte;
+typedef unsigned short jushort;
+typedef unsigned int juint;
+typedef unsigned long long julong;
+
+
+#ifdef SOLARIS
+// ANSI C++ fixes
+// NOTE:In the ANSI committee's continuing attempt to make each version
+// of C++ incompatible with the previous version, you can no longer cast
+// pointers to functions without specifying linkage unless you want to get
+// warnings.
+//
+// This also means that pointers to functions can no longer be "hidden"
+// in opaque types like void * because at the invokation point warnings
+// will be generated. While this makes perfect sense from a type safety
+// point of view it causes a lot of warnings on old code using C header
+// files. Here are some typedefs to make the job of silencing warnings
+// a bit easier.
+//
+// The final kick in the teeth is that you can only have extern "C" linkage
+// specified at file scope. So these typedefs are here rather than in the
+// .hpp for the class (os:Solaris usually) that needs them.
+
+extern "C" {
+ typedef int (*int_fnP_thread_t_iP_uP_stack_tP_gregset_t)(thread_t, int*, unsigned *, stack_t*, gregset_t);
+ typedef int (*int_fnP_thread_t_i_gregset_t)(thread_t, int, gregset_t);
+ typedef int (*int_fnP_thread_t_i)(thread_t, int);
+ typedef int (*int_fnP_thread_t)(thread_t);
+
+ typedef int (*int_fnP_cond_tP_mutex_tP_timestruc_tP)(cond_t *cv, mutex_t *mx, timestruc_t *abst);
+ typedef int (*int_fnP_cond_tP_mutex_tP)(cond_t *cv, mutex_t *mx);
+
+ // typedef for missing API in libc
+ typedef int (*int_fnP_mutex_tP_i_vP)(mutex_t *, int, void *);
+ typedef int (*int_fnP_mutex_tP)(mutex_t *);
+ typedef int (*int_fnP_cond_tP_i_vP)(cond_t *cv, int scope, void *arg);
+ typedef int (*int_fnP_cond_tP)(cond_t *cv);
+};
+#endif
+
+// checking for nanness
+#ifdef SOLARIS
+#ifdef SPARC
+inline int g_isnan(float f) { return isnanf(f); }
+#else
+// isnanf() broken on Intel Solaris use isnand()
+inline int g_isnan(float f) { return isnand(f); }
+#endif
+
+inline int g_isnan(double f) { return isnand(f); }
+#elif LINUX
+inline int g_isnan(float f) { return isnanf(f); }
+inline int g_isnan(double f) { return isnan(f); }
+#else
+#error "missing platform-specific definition here"
+#endif
+
+// Checking for finiteness
+
+inline int g_isfinite(jfloat f) { return finite(f); }
+inline int g_isfinite(jdouble f) { return finite(f); }
+
+
+// Wide characters
+
+inline int wcslen(const jchar* x) { return wcslen((const wchar_t*)x); }
+
+// Portability macros
+#define PRAGMA_INTERFACE
+#define PRAGMA_IMPLEMENTATION
+#define PRAGMA_IMPLEMENTATION_(arg)
+
+// Formatting.
+#ifdef _LP64
+#define FORMAT64_MODIFIER "l"
+#else // !_LP64
+#define FORMAT64_MODIFIER "ll"
+#endif // _LP64
+
+#define offset_of(klass,field) offsetof(klass,field)
+
+#ifndef USE_LIBRARY_BASED_TLS_ONLY
+#define THREAD_LOCAL_DECL __thread
+#endif
+
+// Inlining support
+#define NOINLINE
+#define ALWAYSINLINE inline __attribute__((always_inline))
+
+// Alignment
+#define ATTRIBUTE_ALIGNED(x) __attribute__((aligned(x)))
+
+#endif // SHARE_VM_UTILITIES_GLOBALDEFINITIONS_SOLSTUDIO_HPP
--- a/src/hotspot/share/utilities/globalDefinitions_sparcWorks.hpp Thu Aug 30 13:12:38 2018 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,264 +0,0 @@
-/*
- * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#ifndef SHARE_VM_UTILITIES_GLOBALDEFINITIONS_SPARCWORKS_HPP
-#define SHARE_VM_UTILITIES_GLOBALDEFINITIONS_SPARCWORKS_HPP
-
-#include "jni.h"
-
-// This file holds compiler-dependent includes,
-// globally used constants & types, class (forward)
-// declarations and a few frequently used utility functions.
-
-
-# include <ctype.h>
-# include <string.h>
-# include <strings.h> // for bsd'isms
-# include <stdarg.h>
-# include <stddef.h> // for offsetof
-# include <stdio.h>
-# include <stdlib.h>
-# include <wchar.h>
-# include <stdarg.h>
-#ifdef SOLARIS
-# include <ieeefp.h>
-#endif
-# include <math.h>
-# include <time.h>
-# include <fcntl.h>
-# include <dlfcn.h>
-# include <pthread.h>
-#ifdef SOLARIS
-# include <thread.h>
-#endif
-# include <limits.h>
-# include <errno.h>
-#ifdef SOLARIS
-# include <sys/trap.h>
-# include <sys/regset.h>
-# include <sys/procset.h>
-# include <ucontext.h>
-# include <setjmp.h>
-#endif
-# ifdef SOLARIS_MUTATOR_LIBTHREAD
-# include <sys/procfs.h>
-# endif
-
-#include <inttypes.h>
-
-// Solaris 8 doesn't provide definitions of these
-#ifdef SOLARIS
-#ifndef PRIdPTR
-#if defined(_LP64)
-#define PRIdPTR "ld"
-#define PRIuPTR "lu"
-#define PRIxPTR "lx"
-#else
-#define PRIdPTR "d"
-#define PRIuPTR "u"
-#define PRIxPTR "x"
-#endif
-#endif
-#endif
-
-#ifdef LINUX
-# include <signal.h>
-# include <ucontext.h>
-# include <sys/time.h>
-#endif
-
-
-// 4810578: varargs unsafe on 32-bit integer/64-bit pointer architectures
-// When __cplusplus is defined, NULL is defined as 0 (32-bit constant) in
-// system header files. On 32-bit architectures, there is no problem.
-// On 64-bit architectures, defining NULL as a 32-bit constant can cause
-// problems with varargs functions: C++ integral promotion rules say for
-// varargs, we pass the argument 0 as an int. So, if NULL was passed to a
-// varargs function it will remain 32-bits. Depending on the calling
-// convention of the machine, if the argument is passed on the stack then
-// only 32-bits of the "NULL" pointer may be initialized to zero. The
-// other 32-bits will be garbage. If the varargs function is expecting a
-// pointer when it extracts the argument, then we have a problem.
-//
-// Solution: For 64-bit architectures, redefine NULL as 64-bit constant 0.
-//
-// Note: this fix doesn't work well on Linux because NULL will be overwritten
-// whenever a system header file is included. Linux handles NULL correctly
-// through a special type '__null'.
-#ifdef SOLARIS
-#ifdef _LP64
-#undef NULL
-#define NULL 0L
-#else
-#ifndef NULL
-#define NULL 0
-#endif
-#endif
-#endif
-
-// NULL vs NULL_WORD:
-// On Linux NULL is defined as a special type '__null'. Assigning __null to
-// integer variable will cause gcc warning. Use NULL_WORD in places where a
-// pointer is stored as integer value. On some platforms, sizeof(intptr_t) >
-// sizeof(void*), so here we want something which is integer type, but has the
-// same size as a pointer.
-#ifdef LINUX
- #ifdef _LP64
- #define NULL_WORD 0L
- #else
- // Cast 0 to intptr_t rather than int32_t since they are not the same type
- // on some platforms.
- #define NULL_WORD ((intptr_t)0)
- #endif
-#else
- #define NULL_WORD NULL
-#endif
-
-#ifndef LINUX
-// Compiler-specific primitive types
-typedef unsigned short uint16_t;
-#ifndef _UINT32_T
-#define _UINT32_T
-typedef unsigned int uint32_t;
-#endif
-#if !defined(_SYS_INT_TYPES_H)
-#ifndef _UINT64_T
-#define _UINT64_T
-typedef unsigned long long uint64_t;
-#endif
-// %%%% how to access definition of intptr_t portably in 5.5 onward?
-typedef int intptr_t;
-typedef unsigned int uintptr_t;
-// If this gets an error, figure out a symbol XXX that implies the
-// prior definition of intptr_t, and add "&& !defined(XXX)" above.
-#endif
-#endif
-
-// On solaris 8, UINTPTR_MAX is defined as empty.
-// Everywhere else it's an actual value.
-#if UINTPTR_MAX - 1 == -1
-#undef UINTPTR_MAX
-#ifdef _LP64
-#define UINTPTR_MAX UINT64_MAX
-#else
-#define UINTPTR_MAX UINT32_MAX
-#endif /* ifdef _LP64 */
-#endif
-
-// Additional Java basic types
-
-typedef unsigned char jubyte;
-typedef unsigned short jushort;
-typedef unsigned int juint;
-typedef unsigned long long julong;
-
-
-#ifdef SOLARIS
-// ANSI C++ fixes
-// NOTE:In the ANSI committee's continuing attempt to make each version
-// of C++ incompatible with the previous version, you can no longer cast
-// pointers to functions without specifying linkage unless you want to get
-// warnings.
-//
-// This also means that pointers to functions can no longer be "hidden"
-// in opaque types like void * because at the invokation point warnings
-// will be generated. While this makes perfect sense from a type safety
-// point of view it causes a lot of warnings on old code using C header
-// files. Here are some typedefs to make the job of silencing warnings
-// a bit easier.
-//
-// The final kick in the teeth is that you can only have extern "C" linkage
-// specified at file scope. So these typedefs are here rather than in the
-// .hpp for the class (os:Solaris usually) that needs them.
-
-extern "C" {
- typedef int (*int_fnP_thread_t_iP_uP_stack_tP_gregset_t)(thread_t, int*, unsigned *, stack_t*, gregset_t);
- typedef int (*int_fnP_thread_t_i_gregset_t)(thread_t, int, gregset_t);
- typedef int (*int_fnP_thread_t_i)(thread_t, int);
- typedef int (*int_fnP_thread_t)(thread_t);
-
- typedef int (*int_fnP_cond_tP_mutex_tP_timestruc_tP)(cond_t *cv, mutex_t *mx, timestruc_t *abst);
- typedef int (*int_fnP_cond_tP_mutex_tP)(cond_t *cv, mutex_t *mx);
-
- // typedef for missing API in libc
- typedef int (*int_fnP_mutex_tP_i_vP)(mutex_t *, int, void *);
- typedef int (*int_fnP_mutex_tP)(mutex_t *);
- typedef int (*int_fnP_cond_tP_i_vP)(cond_t *cv, int scope, void *arg);
- typedef int (*int_fnP_cond_tP)(cond_t *cv);
-};
-#endif
-
-// checking for nanness
-#ifdef SOLARIS
-#ifdef SPARC
-inline int g_isnan(float f) { return isnanf(f); }
-#else
-// isnanf() broken on Intel Solaris use isnand()
-inline int g_isnan(float f) { return isnand(f); }
-#endif
-
-inline int g_isnan(double f) { return isnand(f); }
-#elif LINUX
-inline int g_isnan(float f) { return isnanf(f); }
-inline int g_isnan(double f) { return isnan(f); }
-#else
-#error "missing platform-specific definition here"
-#endif
-
-// Checking for finiteness
-
-inline int g_isfinite(jfloat f) { return finite(f); }
-inline int g_isfinite(jdouble f) { return finite(f); }
-
-
-// Wide characters
-
-inline int wcslen(const jchar* x) { return wcslen((const wchar_t*)x); }
-
-// Portability macros
-#define PRAGMA_INTERFACE
-#define PRAGMA_IMPLEMENTATION
-#define PRAGMA_IMPLEMENTATION_(arg)
-
-// Formatting.
-#ifdef _LP64
-#define FORMAT64_MODIFIER "l"
-#else // !_LP64
-#define FORMAT64_MODIFIER "ll"
-#endif // _LP64
-
-#define offset_of(klass,field) offsetof(klass,field)
-
-#ifndef USE_LIBRARY_BASED_TLS_ONLY
-#define THREAD_LOCAL_DECL __thread
-#endif
-
-// Inlining support
-#define NOINLINE
-#define ALWAYSINLINE inline __attribute__((always_inline))
-
-// Alignment
-#define ATTRIBUTE_ALIGNED(x) __attribute__((aligned(x)))
-
-#endif // SHARE_VM_UTILITIES_GLOBALDEFINITIONS_SPARCWORKS_HPP
--- a/src/java.base/solaris/native/libjvm_db/libjvm_db.c Thu Aug 30 13:12:38 2018 +0200
+++ b/src/java.base/solaris/native/libjvm_db/libjvm_db.c Fri Aug 31 09:37:03 2018 +0200
@@ -85,7 +85,7 @@
const char * typeName; /* The type name containing the given field (example: "Klass") */
const char * fieldName; /* The field name within the type (example: "_name") */
uint64_t address; /* Address of field; only used for static fields */
- /* ("offset" can not be reused because of apparent SparcWorks compiler bug */
+ /* ("offset" can not be reused because of apparent solstudio compiler bug */
/* in generation of initializer data) */
} VMStructEntry;
--- a/src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/types/basic/BasicTypeDataBase.java Thu Aug 30 13:12:38 2018 +0200
+++ b/src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/types/basic/BasicTypeDataBase.java Fri Aug 31 09:37:03 2018 +0200
@@ -197,11 +197,11 @@
// pattern of, for example, a double and the vtbl is vanishingly
// small.)
// 1. The first word of the object (should handle MSVC++ as
- // well as the SparcWorks compilers with compatibility set to
+ // well as the solstudio compilers with compatibility set to
// v5.0 or greater)
// 2. and 3. The last two Address-aligned words of the part of
// the object defined by its topmost polymorphic superclass.
- // This should handle the SparcWorks compilers, v4.2 or
+ // This should handle the solstudio compilers, v4.2 or
// earlier, as well as any other compilers which place the vptr
// at the end of the user-defined fields of the first base
// class with virtual functions.