This commit is contained in:
Rickard Bäckman 2016-07-29 09:23:05 +02:00
commit 5ce5d9f4cc
1055 changed files with 15640 additions and 10488 deletions

View file

@ -551,17 +551,6 @@ void CompileBroker::compilation_init(TRAPS) {
} else {
c1_count = JVMCIHostThreads;
}
if (!UseInterpreter || !BackgroundCompilation) {
// Force initialization of JVMCI compiler otherwise JVMCI
// compilations will not block until JVMCI is initialized
ResourceMark rm;
TempNewSymbol getCompiler = SymbolTable::new_symbol("getCompiler", CHECK);
TempNewSymbol sig = SymbolTable::new_symbol("()Ljdk/vm/ci/runtime/JVMCICompiler;", CHECK);
Handle jvmciRuntime = JVMCIRuntime::get_HotSpotJVMCIRuntime(CHECK);
JavaValue result(T_OBJECT);
JavaCalls::call_virtual(&result, jvmciRuntime, HotSpotJVMCIRuntime::klass(), getCompiler, sig, CHECK);
}
}
}
#endif // INCLUDE_JVMCI
@ -1079,6 +1068,12 @@ nmethod* CompileBroker::compile_method(const methodHandle& method, int osr_bci,
return NULL;
}
#if INCLUDE_JVMCI
if (comp->is_jvmci() && !JVMCIRuntime::can_initialize_JVMCI()) {
return NULL;
}
#endif
if (osr_bci == InvocationEntryBci) {
// standard compilation
CompiledMethod* method_code = method->code();

View file

@ -186,8 +186,10 @@ void CompileTask::print_line_on_error(outputStream* st, char* buf, int buflen) {
void CompileTask::print_tty() {
ttyLocker ttyl; // keep the following output all in one block
// print compiler name if requested
if (CIPrintCompilerName) tty->print("%s:", CompileBroker::compiler_name(comp_level()));
print(tty);
if (CIPrintCompilerName) {
tty->print("%s:", CompileBroker::compiler_name(comp_level()));
}
print(tty);
}
// ------------------------------------------------------------------

View file

@ -819,7 +819,6 @@ void CompilerOracle::parse_compile_only(char * line) {
if (className == NULL) {
className = newName;
c_match = MethodMatcher::Prefix;
} else {
methodName = newName;
}
@ -829,26 +828,15 @@ void CompilerOracle::parse_compile_only(char * line) {
if (className == NULL) {
className = "";
c_match = MethodMatcher::Any;
} else {
// foo/bar.blah is an exact match on foo/bar, bar.blah is a suffix match on bar
if (strchr(className, '/') != NULL) {
c_match = MethodMatcher::Exact;
} else {
c_match = MethodMatcher::Suffix;
}
}
} else {
// got foo or foo/bar
if (className == NULL) {
ShouldNotReachHere();
} else {
// got foo or foo/bar
if (strchr(className, '/') != NULL) {
c_match = MethodMatcher::Prefix;
} else if (className[0] == '\0') {
// missing class name handled as "Any" class match
if (className[0] == '\0') {
c_match = MethodMatcher::Any;
} else {
c_match = MethodMatcher::Substring;
}
}
}

View file

@ -273,14 +273,9 @@ class DoNothingClosure: public OopClosure {
static DoNothingClosure do_nothing;
static void add_derived_oop(oop* base, oop* derived) {
#ifndef TIERED
#if !defined(TIERED) && !defined(INCLUDE_JVMCI)
COMPILER1_PRESENT(ShouldNotReachHere();)
#if INCLUDE_JVMCI
if (UseJVMCICompiler) {
ShouldNotReachHere();
}
#endif
#endif // TIERED
#endif // !defined(TIERED) && !defined(INCLUDE_JVMCI)
#if defined(COMPILER2) || INCLUDE_JVMCI
DerivedPointerTable::add(derived, base);
#endif // COMPILER2 || INCLUDE_JVMCI
@ -473,13 +468,8 @@ void OopMapSet::update_register_map(const frame *fr, RegisterMap *reg_map) {
#ifndef PRODUCT
bool ImmutableOopMap::has_derived_pointer() const {
#ifndef TIERED
#if !defined(TIERED) && !defined(INCLUDE_JVMCI)
COMPILER1_PRESENT(return false);
#if INCLUDE_JVMCI
if (UseJVMCICompiler) {
return false;
}
#endif
#endif // !TIERED
#if defined(COMPILER2) || INCLUDE_JVMCI
OopMapStream oms(this,OopMapValue::derived_oop_value);