348 // The compiler task which has created this env.
349 // May be useful to find out compile_id, comp_level, etc.
350 CompileTask* task() { return _task; }
351 // Handy forwards to the task:
352 int comp_level(); // task()->comp_level()
353 uint compile_id(); // task()->compile_id()
354
355 // Register the result of a compilation.
356 void register_method(ciMethod* target,
357 int entry_bci,
358 CodeOffsets* offsets,
359 int orig_pc_offset,
360 CodeBuffer* code_buffer,
361 int frame_words,
362 OopMapSet* oop_map_set,
363 ExceptionHandlerTable* handler_table,
364 ImplicitExceptionTable* inc_table,
365 AbstractCompiler* compiler,
366 int comp_level,
367 bool has_unsafe_access,
368 bool has_wide_vectors);
369
370
371 // Access to certain well known ciObjects.
372 #define WK_KLASS_FUNC(name, ignore_s, ignore_o) \
373 ciInstanceKlass* name() { \
374 return _##name;\
375 }
376 WK_KLASSES_DO(WK_KLASS_FUNC)
377 #undef WK_KLASS_FUNC
378
379 ciInstance* NullPointerException_instance() {
380 assert(_NullPointerException_instance != NULL, "initialization problem");
381 return _NullPointerException_instance;
382 }
383 ciInstance* ArithmeticException_instance() {
384 assert(_ArithmeticException_instance != NULL, "initialization problem");
385 return _ArithmeticException_instance;
386 }
387
388 // Lazy constructors:
|
348 // The compiler task which has created this env.
349 // May be useful to find out compile_id, comp_level, etc.
350 CompileTask* task() { return _task; }
351 // Handy forwards to the task:
352 int comp_level(); // task()->comp_level()
353 uint compile_id(); // task()->compile_id()
354
355 // Register the result of a compilation.
356 void register_method(ciMethod* target,
357 int entry_bci,
358 CodeOffsets* offsets,
359 int orig_pc_offset,
360 CodeBuffer* code_buffer,
361 int frame_words,
362 OopMapSet* oop_map_set,
363 ExceptionHandlerTable* handler_table,
364 ImplicitExceptionTable* inc_table,
365 AbstractCompiler* compiler,
366 int comp_level,
367 bool has_unsafe_access,
368 bool has_wide_vectors,
369 RTMState rtm_state = NoRTM);
370
371
372 // Access to certain well known ciObjects.
373 #define WK_KLASS_FUNC(name, ignore_s, ignore_o) \
374 ciInstanceKlass* name() { \
375 return _##name;\
376 }
377 WK_KLASSES_DO(WK_KLASS_FUNC)
378 #undef WK_KLASS_FUNC
379
380 ciInstance* NullPointerException_instance() {
381 assert(_NullPointerException_instance != NULL, "initialization problem");
382 return _NullPointerException_instance;
383 }
384 ciInstance* ArithmeticException_instance() {
385 assert(_ArithmeticException_instance != NULL, "initialization problem");
386 return _ArithmeticException_instance;
387 }
388
389 // Lazy constructors:
|