< prev index next >

src/hotspot/share/jvmci/jvmci_globals.cpp

Print this page

 84         // If a JVMCI native library is present,
 85         // we enable UseJVMCINativeLibrary by default.
 86         FLAG_SET_DEFAULT(UseJVMCINativeLibrary, true);
 87       }
 88     }
 89     if (!FLAG_IS_DEFAULT(EnableJVMCI) && !EnableJVMCI) {
 90       jio_fprintf(defaultStream::error_stream(),
 91           "Improperly specified VM option UseJVMCICompiler: EnableJVMCI cannot be disabled\n");
 92       return false;
 93     }
 94     FLAG_SET_DEFAULT(EnableJVMCI, true);
 95     if (BootstrapJVMCI && UseJVMCINativeLibrary) {
 96       jio_fprintf(defaultStream::error_stream(), "-XX:+BootstrapJVMCI is not compatible with -XX:+UseJVMCINativeLibrary\n");
 97       return false;
 98     }
 99     if (BootstrapJVMCI && (TieredStopAtLevel < CompLevel_full_optimization)) {
100       jio_fprintf(defaultStream::error_stream(),
101           "-XX:+BootstrapJVMCI is not compatible with -XX:TieredStopAtLevel=%d\n", TieredStopAtLevel);
102       return false;
103     }




104   }
105 
106   if (!EnableJVMCI) {
107     // Switch off eager JVMCI initialization if JVMCI is disabled.
108     // Don't throw error if EagerJVMCI is set to allow testing.
109     if (EagerJVMCI) {
110       FLAG_SET_DEFAULT(EagerJVMCI, false);
111     }
112   }
113   JVMCI_FLAG_CHECKED(EagerJVMCI)
114 
115   CHECK_NOT_SET(JVMCIEventLogLevel,           EnableJVMCI)
116   CHECK_NOT_SET(JVMCITraceLevel,              EnableJVMCI)
117   CHECK_NOT_SET(JVMCICounterSize,             EnableJVMCI)
118   CHECK_NOT_SET(JVMCICountersExcludeCompiler, EnableJVMCI)
119   CHECK_NOT_SET(JVMCIUseFastLocking,          EnableJVMCI)
120   CHECK_NOT_SET(JVMCINMethodSizeLimit,        EnableJVMCI)
121   CHECK_NOT_SET(JVMCIPrintProperties,         EnableJVMCI)
122   CHECK_NOT_SET(UseJVMCINativeLibrary,        EnableJVMCI)
123   CHECK_NOT_SET(JVMCILibPath,                 EnableJVMCI)
124   CHECK_NOT_SET(JVMCILibDumpJNIConfig,        EnableJVMCI)
125 
126 #ifndef COMPILER2
127   JVMCI_FLAG_CHECKED(MaxVectorSize)
128   JVMCI_FLAG_CHECKED(ReduceInitialCardMarks)
129   JVMCI_FLAG_CHECKED(UseMultiplyToLenIntrinsic)
130   JVMCI_FLAG_CHECKED(UseSquareToLenIntrinsic)
131   JVMCI_FLAG_CHECKED(UseMulAddIntrinsic)
132   JVMCI_FLAG_CHECKED(UseMontgomeryMultiplyIntrinsic)
133   JVMCI_FLAG_CHECKED(UseMontgomerySquareIntrinsic)
134 #endif // !COMPILER2
135 
136 #ifndef PRODUCT
137 #define JVMCI_CHECK4(type, name, value, ...) assert(name##checked, #name " flag not checked");
138 #define JVMCI_CHECK3(type, name, ...)        assert(name##checked, #name " flag not checked");
139   // Ensures that all JVMCI flags are checked by this method.

 84         // If a JVMCI native library is present,
 85         // we enable UseJVMCINativeLibrary by default.
 86         FLAG_SET_DEFAULT(UseJVMCINativeLibrary, true);
 87       }
 88     }
 89     if (!FLAG_IS_DEFAULT(EnableJVMCI) && !EnableJVMCI) {
 90       jio_fprintf(defaultStream::error_stream(),
 91           "Improperly specified VM option UseJVMCICompiler: EnableJVMCI cannot be disabled\n");
 92       return false;
 93     }
 94     FLAG_SET_DEFAULT(EnableJVMCI, true);
 95     if (BootstrapJVMCI && UseJVMCINativeLibrary) {
 96       jio_fprintf(defaultStream::error_stream(), "-XX:+BootstrapJVMCI is not compatible with -XX:+UseJVMCINativeLibrary\n");
 97       return false;
 98     }
 99     if (BootstrapJVMCI && (TieredStopAtLevel < CompLevel_full_optimization)) {
100       jio_fprintf(defaultStream::error_stream(),
101           "-XX:+BootstrapJVMCI is not compatible with -XX:TieredStopAtLevel=%d\n", TieredStopAtLevel);
102       return false;
103     }
104     if (UseCompactObjectHeaders) {
105       log_warning(jvmci)("-XX:+UseCompactObjectHeaders not supported by JVMCI, disabling UseCompactObjectHeaders");
106       FLAG_SET_DEFAULT(UseCompactObjectHeaders, false);
107     }
108   }
109 
110   if (!EnableJVMCI) {
111     // Switch off eager JVMCI initialization if JVMCI is disabled.
112     // Don't throw error if EagerJVMCI is set to allow testing.
113     if (EagerJVMCI) {
114       FLAG_SET_DEFAULT(EagerJVMCI, false);
115     }
116   }
117   JVMCI_FLAG_CHECKED(EagerJVMCI)
118 
119   CHECK_NOT_SET(JVMCIEventLogLevel,           EnableJVMCI)
120   CHECK_NOT_SET(JVMCITraceLevel,              EnableJVMCI)
121   CHECK_NOT_SET(JVMCICounterSize,             EnableJVMCI)
122   CHECK_NOT_SET(JVMCICountersExcludeCompiler, EnableJVMCI)

123   CHECK_NOT_SET(JVMCINMethodSizeLimit,        EnableJVMCI)
124   CHECK_NOT_SET(JVMCIPrintProperties,         EnableJVMCI)
125   CHECK_NOT_SET(UseJVMCINativeLibrary,        EnableJVMCI)
126   CHECK_NOT_SET(JVMCILibPath,                 EnableJVMCI)
127   CHECK_NOT_SET(JVMCILibDumpJNIConfig,        EnableJVMCI)
128 
129 #ifndef COMPILER2
130   JVMCI_FLAG_CHECKED(MaxVectorSize)
131   JVMCI_FLAG_CHECKED(ReduceInitialCardMarks)
132   JVMCI_FLAG_CHECKED(UseMultiplyToLenIntrinsic)
133   JVMCI_FLAG_CHECKED(UseSquareToLenIntrinsic)
134   JVMCI_FLAG_CHECKED(UseMulAddIntrinsic)
135   JVMCI_FLAG_CHECKED(UseMontgomeryMultiplyIntrinsic)
136   JVMCI_FLAG_CHECKED(UseMontgomerySquareIntrinsic)
137 #endif // !COMPILER2
138 
139 #ifndef PRODUCT
140 #define JVMCI_CHECK4(type, name, value, ...) assert(name##checked, #name " flag not checked");
141 #define JVMCI_CHECK3(type, name, ...)        assert(name##checked, #name " flag not checked");
142   // Ensures that all JVMCI flags are checked by this method.
< prev index next >