Mercurial > hg > truffle
diff src/share/vm/runtime/thread.hpp @ 16242:e9998e2be7f5
use oops_do to modify saved hsail state
Contributed-by: Tom Deneau <tom.deneau@amd.com>
author | Gilles Duboscq <duboscq@ssw.jku.at> |
---|---|
date | Thu, 26 Jun 2014 18:25:35 +0200 |
parents | 774349ad0b03 |
children | 4481cf549cfc |
line wrap: on
line diff
--- a/src/share/vm/runtime/thread.hpp Thu Jun 26 13:42:29 2014 +0200 +++ b/src/share/vm/runtime/thread.hpp Thu Jun 26 18:25:35 2014 +0200 @@ -944,15 +944,24 @@ volatile address _exception_handler_pc; // PC for handler of exception volatile int _is_method_handle_return; // true (== 1) if the current exception PC is a MethodHandle call site. +#ifdef GRAAL // Record the method and bci from a gpu kernel exception so // it can be added into the exception stack trace jint _gpu_exception_bci; Method* _gpu_exception_method; + // Record the hsailDeoptimization info so gc oops_do processing can find it + void* _gpu_hsail_deopt_info; +#endif + public: +#ifdef GRAAL void set_gpu_exception_bci(jint bci) { _gpu_exception_bci = bci; } jint get_gpu_exception_bci() { return _gpu_exception_bci; } void set_gpu_exception_method(Method* method) { _gpu_exception_method = method; } Method* get_gpu_exception_method() { return _gpu_exception_method; } + void set_gpu_hsail_deopt_info(void * deoptInfo) { _gpu_hsail_deopt_info = deoptInfo; } + void* get_gpu_hsail_deopt_info() { return _gpu_hsail_deopt_info; } +#endif private: // support for JNI critical regions