Mercurial > hg > graal-compiler
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 |