comparison src/gpu/hsail/vm/vmStructs_hsail.hpp @ 15482:a250a512434d

HSAIL: support for object values in stack slots at deoptimization points Contributed-by: Tom Deneau <tom.deneau@amd.com>
author Doug Simon <doug.simon@oracle.com>
date Fri, 02 May 2014 21:58:28 +0200
parents 66e3af78ea96
children 9d456ffc6120
comparison
equal deleted inserted replaced
15481:09d721bcffe2 15482:a250a512434d
30 30
31 // These are the CPU-specific fields, types and integer 31 // These are the CPU-specific fields, types and integer
32 // constants required by the Serviceability Agent. This file is 32 // constants required by the Serviceability Agent. This file is
33 // referenced by vmStructs.cpp. 33 // referenced by vmStructs.cpp.
34 34
35 #define VM_STRUCTS_GPU_HSAIL(nonstatic_field) \ 35 #define VM_STRUCTS_GPU_HSAIL(nonstatic_field) \
36 nonstatic_field(HSAILFrame, _pc_offset, jint) \ 36 nonstatic_field(HSAILFrame, _pc_offset, jint) \
37 nonstatic_field(HSAILFrame, _num_s_regs, jbyte) \ 37 nonstatic_field(HSAILFrame, _num_s_regs, jbyte) \
38 nonstatic_field(HSAILFrame, _save_area[0], jlong) \ 38 nonstatic_field(HSAILFrame, _num_d_regs, jbyte) \
39 nonstatic_field(HSAILFrame, _num_stack_slots, jshort) \
39 \ 40 \
40 nonstatic_field(Hsail::HSAILKernelDeoptimization, _workitemid, jint) \ 41 nonstatic_field(Hsail::HSAILKernelDeoptimization, _workitemid, jint) \
41 nonstatic_field(Hsail::HSAILKernelDeoptimization, _actionAndReason, jint) \ 42 nonstatic_field(Hsail::HSAILKernelDeoptimization, _actionAndReason, jint) \
42 nonstatic_field(Hsail::HSAILKernelDeoptimization, _first_frame, HSAILFrame) \ 43 nonstatic_field(Hsail::HSAILKernelDeoptimization, _first_frame, HSAILFrame) \
43 \ 44 \
45 nonstatic_field(Hsail::HSAILDeoptimizationInfo, _deopt_occurred, jint) \ 46 nonstatic_field(Hsail::HSAILDeoptimizationInfo, _deopt_occurred, jint) \
46 nonstatic_field(Hsail::HSAILDeoptimizationInfo, _deopt_next_index, jint) \ 47 nonstatic_field(Hsail::HSAILDeoptimizationInfo, _deopt_next_index, jint) \
47 nonstatic_field(Hsail::HSAILDeoptimizationInfo, _donor_threads, JavaThread**) \ 48 nonstatic_field(Hsail::HSAILDeoptimizationInfo, _donor_threads, JavaThread**) \
48 nonstatic_field(Hsail::HSAILDeoptimizationInfo, _never_ran_array, jboolean *) \ 49 nonstatic_field(Hsail::HSAILDeoptimizationInfo, _never_ran_array, jboolean *) \
49 nonstatic_field(Hsail::HSAILDeoptimizationInfo, _deopt_save_states[0], Hsail::HSAILKernelDeoptimization) \ 50 nonstatic_field(Hsail::HSAILDeoptimizationInfo, _deopt_save_states[0], Hsail::HSAILKernelDeoptimization) \
50 nonstatic_field(Hsail::HSAILDeoptimizationInfo, _deopt_save_states[1], Hsail::HSAILKernelDeoptimization)
51 51
52 #define VM_TYPES_GPU_HSAIL(declare_type, declare_toplevel_type) \ 52 #define VM_TYPES_GPU_HSAIL(declare_type, declare_toplevel_type) \
53 declare_toplevel_type(HSAILFrame) \ 53 declare_toplevel_type(HSAILFrame) \
54 declare_toplevel_type(HSAILFrame*) \ 54 declare_toplevel_type(HSAILFrame*) \
55 declare_toplevel_type(Hsail::HSAILKernelDeoptimization) \ 55 declare_toplevel_type(Hsail::HSAILKernelDeoptimization) \
56 declare_toplevel_type(Hsail::HSAILDeoptimizationInfo) 56 declare_toplevel_type(Hsail::HSAILDeoptimizationInfo)
57 57
58 #define VM_INT_CONSTANTS_GPU_HSAIL(declare_constant) \
59 declare_constant(sizeof(HSAILFrame)) \
60 declare_constant(sizeof(Hsail::HSAILKernelDeoptimization)) \
61
58 #endif // GPU_HSAIL_VM_VMSTRUCTS_HSAIL_HPP 62 #endif // GPU_HSAIL_VM_VMSTRUCTS_HSAIL_HPP