src/hotspot/share/jvmci/jvmci_globals.hpp
Index
Unified diffs
Context diffs
Sdiffs
Frames
Patch
New
Old
Previous File
Next File
*** old/src/hotspot/share/jvmci/jvmci_globals.hpp Thu Mar 28 11:22:57 2019
--- new/src/hotspot/share/jvmci/jvmci_globals.hpp Thu Mar 28 11:22:57 2019
*** 24,33 ****
--- 24,34 ----
#ifndef SHARE_JVMCI_JVMCI_GLOBALS_HPP
#define SHARE_JVMCI_JVMCI_GLOBALS_HPP
#include "runtime/globals.hpp"
+ #include "utilities/ostream.hpp"
//
// Defines all global flags used by the JVMCI compiler. Only flags that need
// to be accessible to the JVMCI C++ code should be defined here.
//
*** 60,74 ****
--- 61,77 ----
\
experimental(bool, PrintBootstrap, true, \
"Print JVMCI bootstrap progress and summary") \
\
experimental(intx, JVMCIThreads, 1, \
! "Force number of JVMCI compiler threads to use") \
! "Force number of JVMCI compiler threads to use. Ignored if " \
+ "UseJVMCICompiler is false.") \
range(1, max_jint) \
\
experimental(intx, JVMCIHostThreads, 1, \
! "Force number of compiler threads for JVMCI host compiler") \
! "Force number of C1 compiler threads. Ignored if " \
+ "UseJVMCICompiler is false.") \
range(1, max_jint) \
\
NOT_COMPILER2(product(intx, MaxVectorSize, 64, \
"Max vector size in bytes, " \
"actual size could be less depending on elements type")) \
*** 95,106 ****
--- 98,122 ----
"Maximum size of a compiled method.") \
\
experimental(intx, MethodProfileWidth, 0, \
"Number of methods to record in call profile") \
\
! develop(bool, TraceUncollectedSpeculations, false, \
! "Print message when a failed speculation was not collected") \
! experimental(ccstr, JVMCILibPath, NULL, \
! "LD path for loading the JVMCI shared library") \
+ \
+ experimental(ccstr, JVMCILibDumpJNIConfig, NULL, \
+ "Dumps to the given file a description of the classes, fields " \
+ "and methods the JVMCI shared library must provide") \
+ \
+ experimental(bool, UseJVMCINativeLibrary, false, \
+ "Execute JVMCI Java code from a shared library " \
+ "instead of loading it from class files and executing it " \
+ "on the HotSpot heap") \
+ \
+ experimental(ccstr, TraceClassLoadingCause, NULL, \
+ "Print Java stack trace when loading a class whose fully" \
+ "qualified name contains this string (\"*\" matches any class).") \
\
NOT_COMPILER2(diagnostic(bool, UseMultiplyToLenIntrinsic, false, \
"Enables intrinsification of BigInteger.multiplyToLen()")) \
\
NOT_COMPILER2(diagnostic(bool, UseSquareToLenIntrinsic, false, \
*** 128,143 ****
--- 144,167 ----
DECLARE_NOTPRODUCT_FLAG, \
IGNORE_RANGE, \
IGNORE_CONSTRAINT, \
IGNORE_WRITEABLE)
+ // The base name for the shared library containing the JVMCI based compiler
+ #define JVMCI_SHARED_LIBRARY_NAME "jvmcicompiler"
+
class JVMCIGlobals {
+ private:
+ static fileStream* _jni_config_file;
public:
// Return true if jvmci flags are consistent. If not consistent,
+
+ // Returns true if jvmci flags are consistent. If not consistent,
// an error message describing the inconsistency is printed before
// returning false.
static bool check_jvmci_flags_are_consistent();
// Check and exit VM with error if selected GC is not supported by JVMCI.
static void check_jvmci_supported_gc();
+
+ static fileStream* get_jni_config_file() { return _jni_config_file; }
};
#endif // SHARE_JVMCI_JVMCI_GLOBALS_HPP
src/hotspot/share/jvmci/jvmci_globals.hpp
Index
Unified diffs
Context diffs
Sdiffs
Frames
Patch
New
Old
Previous File
Next File