comparison src/share/vm/graal/graalVMToCompiler.cpp @ 11561:e1309fc4d17f

ensure Debug.enable() is called before any DebugTimer or DebugMetric objects are requested
author Doug Simon <doug.simon@oracle.com>
date Tue, 10 Sep 2013 14:32:55 +0200
parents 4e6d6122c558
children 516b93ccf7c9
comparison
equal deleted inserted replaced
11560:1aa56a2fb08b 11561:e1309fc4d17f
88 } 88 }
89 return Handle(JNIHandles::resolve_non_null(_vmToCompilerPermObject)); 89 return Handle(JNIHandles::resolve_non_null(_vmToCompilerPermObject));
90 } 90 }
91 91
92 void VMToCompiler::initOptions() { 92 void VMToCompiler::initOptions() {
93 KlassHandle compilerKlass = loadClass(vmSymbols::com_oracle_graal_hotspot_HotSpotOptions()); 93 KlassHandle optionsKlass = loadClass(vmSymbols::com_oracle_graal_hotspot_HotSpotOptions());
94 Thread* THREAD = Thread::current(); 94 Thread* THREAD = Thread::current();
95 compilerKlass->initialize(THREAD); 95 optionsKlass->initialize(THREAD);
96 check_pending_exception("Error while calling initOptions"); 96 check_pending_exception("Error while calling initOptions");
97 } 97 }
98 98
99 jboolean VMToCompiler::setOption(Handle option) { 99 jboolean VMToCompiler::setOption(Handle option) {
100 assert(!option.is_null(), ""); 100 assert(!option.is_null(), "");
101 KlassHandle compilerKlass = loadClass(vmSymbols::com_oracle_graal_hotspot_HotSpotOptions()); 101 KlassHandle optionsKlass = loadClass(vmSymbols::com_oracle_graal_hotspot_HotSpotOptions());
102 102
103 Thread* THREAD = Thread::current(); 103 Thread* THREAD = Thread::current();
104 JavaValue result(T_BOOLEAN); 104 JavaValue result(T_BOOLEAN);
105 JavaCalls::call_static(&result, compilerKlass, vmSymbols::setOption_name(), vmSymbols::setOption_signature(), option, THREAD); 105 JavaCalls::call_static(&result, optionsKlass, vmSymbols::setOption_name(), vmSymbols::setOption_signature(), option, THREAD);
106 check_pending_exception("Error while calling setOption"); 106 check_pending_exception("Error while calling setOption");
107 return result.get_jboolean(); 107 return result.get_jboolean();
108 }
109
110 void VMToCompiler::finalizeOptions() {
111 KlassHandle optionsKlass = loadClass(vmSymbols::com_oracle_graal_hotspot_HotSpotOptions());
112 Thread* THREAD = Thread::current();
113 JavaValue result(T_VOID);
114 JavaCalls::call_static(&result, optionsKlass, vmSymbols::finalizeOptions_name(), vmSymbols::void_method_signature(), THREAD);
115 check_pending_exception("Error while calling finalizeOptions");
108 } 116 }
109 117
110 void VMToCompiler::compileMethod(Method* method, Handle holder, int entry_bci, jboolean blocking) { 118 void VMToCompiler::compileMethod(Method* method, Handle holder, int entry_bci, jboolean blocking) {
111 assert(method != NULL, "just checking"); 119 assert(method != NULL, "just checking");
112 assert(!holder.is_null(), "just checking"); 120 assert(!holder.is_null(), "just checking");