157 address OptoRuntime::generate_stub( ciEnv* env, |
157 address OptoRuntime::generate_stub( ciEnv* env, |
158 TypeFunc_generator gen, address C_function, |
158 TypeFunc_generator gen, address C_function, |
159 const char *name, int is_fancy_jump, |
159 const char *name, int is_fancy_jump, |
160 bool pass_tls, |
160 bool pass_tls, |
161 bool save_argument_registers, |
161 bool save_argument_registers, |
162 bool return_pc ) { |
162 bool return_pc) { |
|
163 |
|
164 // Matching the default directive, we currently have no method to match. |
|
165 DirectiveSet* directive = DirectivesStack::getDefaultDirective(CompileBroker::compiler(CompLevel_full_optimization)); |
163 ResourceMark rm; |
166 ResourceMark rm; |
164 Compile C( env, gen, C_function, name, is_fancy_jump, pass_tls, save_argument_registers, return_pc ); |
167 Compile C( env, gen, C_function, name, is_fancy_jump, pass_tls, save_argument_registers, return_pc, directive); |
|
168 DirectivesStack::release(directive); |
165 return C.stub_entry_point(); |
169 return C.stub_entry_point(); |
166 } |
170 } |
167 |
171 |
168 const char* OptoRuntime::stub_name(address entry) { |
172 const char* OptoRuntime::stub_name(address entry) { |
169 #ifndef PRODUCT |
173 #ifndef PRODUCT |