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