deoptimization.hpp revision 2772
1472N/A * or visit www.oracle.com if you need additional information or have any
1879N/A#include "memory/allocation.hpp"
1879N/A#include "runtime/frame.inline.hpp"
0N/Aclass ProfileData;
0N/Aclass vframeArray;
0N/Aclass MonitorValue;
0N/Aclass ObjectValue;
0N/A enum DeoptReason {
0N/A enum DeoptAction {
0N/A _action_shift = 0,
0N/A enum UnpackType {
0N/A static int deoptimize_dependents();
0N/A static bool realloc_objects(JavaThread* thread, frame* fr, GrowableArray<ScopeValue*>* objects, TRAPS);
0N/A static void reassign_type_array_elements(frame* fr, RegisterMap* reg_map, ObjectValue* sv, typeArrayOop obj, BasicType type);
0N/A static void reassign_object_array_elements(frame* fr, RegisterMap* reg_map, ObjectValue* sv, objArrayOop obj);
0N/A static void reassign_fields(frame* fr, RegisterMap* reg_map, GrowableArray<ScopeValue*>* objects);
0N/A static vframeArray* create_vframeArray(JavaThread* thread, frame fr, RegisterMap *reg_map, GrowableArray<compiledVFrame*>* chunk);
0N/A int caller_adjustment,
0N/A int number_of_frames,
0N/A ~UnrollBlock();
0N/A int size_of_frames() const;
0N/A static int size_of_deoptimized_frame_offset_in_bytes() { return offset_of(UnrollBlock, _size_of_deoptimized_frame); }
0N/A static int caller_adjustment_offset_in_bytes() { return offset_of(UnrollBlock, _caller_adjustment); }
0N/A static int number_of_frames_offset_in_bytes() { return offset_of(UnrollBlock, _number_of_frames); }
0N/A static int total_frame_sizes_offset_in_bytes() { return offset_of(UnrollBlock, _total_frame_sizes); }
0N/A static int register_block_offset_in_bytes() { return offset_of(UnrollBlock, _register_block); }
0N/A static int sender_sp_temp_offset_in_bytes() { return offset_of(UnrollBlock, _sender_sp_temp); }
0N/A static void print_statistics();
0N/A if (trap_request < 0)
0N/A return (DeoptReason)
0N/A return Reason_unloaded;
0N/A if (trap_request < 0)
0N/A return (DeoptAction)
0N/A return _unloaded_action;
0N/A if (trap_request < 0)
0N/A return trap_request;
0N/A int trap_request;
0N/A return trap_request;
0N/A int trap_state);
0N/A return Reason_none;
0N/A int trap_request);
0N/A static void popframe_preserve_args(JavaThread* thread, int bytes_to_save, void* start_address);
0N/A static methodDataOop get_method_data(JavaThread* thread, methodHandle m, bool create_if_missing);
0N/A bool& ret_maybe_prior_trap,
0N/A bool& ret_maybe_prior_recompile);
0N/A static void update_method_data_from_interpreter(methodDataHandle trap_mdo, int trap_bci, int reason);
0N/A static bool _is_active;