Mercurial > hg > graal-jvmci-8
comparison src/share/vm/jvmci/jvmciRuntime.cpp @ 21605:7a7cf422160b
replaced OptionsParsed with DebugInitializationPropertyProvider
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Fri, 29 May 2015 17:23:14 +0200 |
parents | 59c3f921e454 |
children | 71b338926f2e |
comparison
equal
deleted
inserted
replaced
21604:93f282187d90 | 21605:7a7cf422160b |
---|---|
1043 SetOptionClosure closure(THREAD); | 1043 SetOptionClosure closure(THREAD); |
1044 options->for_each(&closure); | 1044 options->for_each(&closure); |
1045 if (closure.is_aborted()) { | 1045 if (closure.is_aborted()) { |
1046 vm_abort(false); | 1046 vm_abort(false); |
1047 } | 1047 } |
1048 | |
1049 notify_options_set(THREAD); | |
1050 } | 1048 } |
1051 OptionValue* printFlags = options->get(PRINT_FLAGS_ARG); | 1049 OptionValue* printFlags = options->get(PRINT_FLAGS_ARG); |
1052 if (printFlags != NULL && printFlags->boolean_value) { | 1050 if (printFlags != NULL && printFlags->boolean_value) { |
1053 print_flags_helper(CHECK_ABORT); | 1051 print_flags_helper(CHECK_ABORT); |
1054 } | |
1055 } | |
1056 | |
1057 void JVMCIRuntime::notify_options_set(TRAPS) { | |
1058 HandleMark hm(THREAD); | |
1059 TempNewSymbol optionsParsedName = SymbolTable::new_symbol("com/oracle/jvmci/runtime/OptionsParsed", CHECK_ABORT); | |
1060 KlassHandle optionsParsedClass = load_required_class(optionsParsedName); | |
1061 objArrayHandle impls = get_service_impls(optionsParsedClass, THREAD); | |
1062 int implsLen = impls->length(); | |
1063 if (implsLen != 0) { | |
1064 for (int i = 0; i < implsLen; i++) { | |
1065 JavaValue result(T_VOID); | |
1066 JavaCallArguments args; | |
1067 args.push_oop(impls->obj_at(i)); | |
1068 JavaCalls::call_interface(&result, optionsParsedClass, vmSymbols::run_method_name(), vmSymbols::void_method_signature(), &args, CHECK_ABORT); | |
1069 } | |
1070 } | 1052 } |
1071 } | 1053 } |
1072 | 1054 |
1073 void JVMCIRuntime::print_flags_helper(TRAPS) { | 1055 void JVMCIRuntime::print_flags_helper(TRAPS) { |
1074 // TODO(gd) write this in C++? | 1056 // TODO(gd) write this in C++? |