Mercurial > hg > graal-jvmci-8
diff src/gpu/ptx/vm/ptxKernelArguments.hpp @ 11821:d8659ad83fcc
PTX single-threaded array store, Warp annotation
author | Morris Meyer <morris.meyer@oracle.com> |
---|---|
date | Sat, 28 Sep 2013 21:06:12 -0400 |
parents | 91e5f927af63 |
children | c7abc8411011 |
line wrap: on
line diff
--- a/src/gpu/ptx/vm/ptxKernelArguments.hpp Fri Sep 27 19:51:01 2013 +0200 +++ b/src/gpu/ptx/vm/ptxKernelArguments.hpp Sat Sep 28 21:06:12 2013 -0400 @@ -31,6 +31,7 @@ #define T_BYTE_SIZE 1 #define T_INT_BYTE_SIZE 4 #define T_LONG_BYTE_SIZE 8 +#define T_ARRAY_BYTE_SIZE 8 class PTXKernelArguments : public SignatureIterator { public: @@ -46,6 +47,8 @@ int _index; // Flag to indicate successful creation of kernel argument buffer bool _success; + + bool _afterInvoocation; // Get next java argument oop next_arg(BasicType expectedType); @@ -74,6 +77,17 @@ return _bufferOffset; } + void reiterate() { + _afterInvoocation = true; + _bufferOffset = 0; + _index = 0; + iterate(); + } + + inline bool is_after_invocation() { + return _afterInvoocation; + } + // Get the return oop value oop get_return_oop(); @@ -86,44 +100,40 @@ void do_byte(); void do_int(); void do_long(); + void do_array(int begin, int end); + void do_void(); inline void do_bool() { /* TODO : To be implemented */ - guarantee(false, "NYI"); + guarantee(false, "do_bool:NYI"); } inline void do_char() { /* TODO : To be implemented */ - guarantee(false, "NYI"); + guarantee(false, "do_char:NYI"); } inline void do_short() { /* TODO : To be implemented */ - guarantee(false, "NYI"); + guarantee(false, "do_short:NYI"); } inline void do_float() { /* TODO : To be implemented */ - guarantee(false, "NYI"); + guarantee(false, "do_float:NYI"); } inline void do_double() { /* TODO : To be implemented */ - guarantee(false, "NYI"); + guarantee(false, "do_double:NYI"); } inline void do_object() { /* TODO : To be implemented */ - guarantee(false, "NYI"); + guarantee(false, "do_object:NYI"); } + inline void do_object(int begin, int end) { /* TODO : To be implemented */ - guarantee(false, "NYI"); + guarantee(false, "do_object(II):NYI"); } - inline void do_array(int begin, int end) { - /* TODO : To be implemented */ - guarantee(false, "NYI"); - } - inline void do_void() { - /* TODO : To be implemented */ - guarantee(false, "NYI"); - } + }; #endif // KERNEL_ARGUMENTS_HPP