Mercurial > hg > truffle
comparison src/gpu/ptx/vm/ptxKernelArguments.hpp @ 11902:67a1e27a8dbb
PTX initial float and double
author | Morris Meyer <morris.meyer@oracle.com> |
---|---|
date | Sun, 06 Oct 2013 22:07:23 -0400 |
parents | 61767ccd4600 |
children | f020e149c1b6 |
comparison
equal
deleted
inserted
replaced
11901:61767ccd4600 | 11902:67a1e27a8dbb |
---|---|
26 #define KERNEL_ARGUMENTS_PTX_HPP | 26 #define KERNEL_ARGUMENTS_PTX_HPP |
27 | 27 |
28 #include "runtime/gpu.hpp" | 28 #include "runtime/gpu.hpp" |
29 #include "runtime/signature.hpp" | 29 #include "runtime/signature.hpp" |
30 | 30 |
31 #define T_BYTE_SIZE 1 | 31 #define T_BYTE_SIZE 1 |
32 #define T_BOOLEAN_SIZE 4 | 32 #define T_BOOLEAN_SIZE 4 |
33 #define T_INT_BYTE_SIZE 4 | 33 #define T_INT_BYTE_SIZE 4 |
34 #define T_FLOAT_BYTE_SIZE 4 | 34 #define T_FLOAT_BYTE_SIZE 4 |
35 #define T_LONG_BYTE_SIZE 8 | 35 #define T_DOUBLE_BYTE_SIZE 8 |
36 #define T_ARRAY_BYTE_SIZE 8 | 36 #define T_LONG_BYTE_SIZE 8 |
37 #define T_ARRAY_BYTE_SIZE 8 | |
37 | 38 |
38 class PTXKernelArguments : public SignatureIterator { | 39 class PTXKernelArguments : public SignatureIterator { |
39 public: | 40 public: |
40 // Buffer holding CUdeviceptr values that represent the kernel arguments | 41 // Buffer holding CUdeviceptr values that represent the kernel arguments |
41 char _kernelArgBuffer[1024]; | 42 char _kernelArgBuffer[1024]; |
101 | 102 |
102 void do_byte(); | 103 void do_byte(); |
103 void do_bool(); | 104 void do_bool(); |
104 void do_int(); | 105 void do_int(); |
105 void do_float(); | 106 void do_float(); |
107 void do_double(); | |
106 void do_long(); | 108 void do_long(); |
107 void do_array(int begin, int end); | 109 void do_array(int begin, int end); |
108 void do_void(); | 110 void do_void(); |
109 | 111 |
110 inline void do_char() { | 112 inline void do_char() { |
113 } | 115 } |
114 inline void do_short() { | 116 inline void do_short() { |
115 /* TODO : To be implemented */ | 117 /* TODO : To be implemented */ |
116 guarantee(false, "do_short:NYI"); | 118 guarantee(false, "do_short:NYI"); |
117 } | 119 } |
118 inline void do_double() { | |
119 /* TODO : To be implemented */ | |
120 guarantee(false, "do_double:NYI"); | |
121 } | |
122 | |
123 inline void do_object() { | 120 inline void do_object() { |
124 /* TODO : To be implemented */ | 121 /* TODO : To be implemented */ |
125 guarantee(false, "do_object:NYI"); | 122 guarantee(false, "do_object:NYI"); |
126 } | 123 } |
127 | 124 |