diff options
-rw-r--r-- | modules/codec/c++/data.hpp | 24 | ||||
-rw-r--r-- | modules/remote-hip/c++/transfer.hpp | 2 | ||||
-rw-r--r-- | modules/remote-hip/examples/hip_transfer_data.cpp | 6 |
3 files changed, 16 insertions, 16 deletions
diff --git a/modules/codec/c++/data.hpp b/modules/codec/c++/data.hpp index f55d870..b14d785 100644 --- a/modules/codec/c++/data.hpp +++ b/modules/codec/c++/data.hpp @@ -135,50 +135,50 @@ public: data(typename native_data_type<Schema>::type value__): value_{std::move(value__)}{} - void set(typename native_data_type<Schema>::type val){ + constexpr void set(typename native_data_type<Schema>::type val){ value_ = val; } - typename native_data_type<Schema>::type get() const {return value_;} + constexpr typename native_data_type<Schema>::type get() const {return value_;} - data<Schema, encode::Native> operator*(const data<Schema, encode::Native>& rhs)const{ + constexpr data<Schema, encode::Native> operator*(const data<Schema, encode::Native>& rhs)const{ return {get() * rhs.get()}; } - data<Schema, encode::Native> operator/(const data<Schema, encode::Native>& rhs)const{ + constexpr data<Schema, encode::Native> operator/(const data<Schema, encode::Native>& rhs)const{ return {get() / rhs.get()}; } - data<Schema, encode::Native> operator+(const data<Schema, encode::Native>& rhs)const{ + constexpr data<Schema, encode::Native> operator+(const data<Schema, encode::Native>& rhs)const{ return {get() + rhs.get()}; } - data<Schema, encode::Native>& operator+=(const data<Schema, encode::Native>& rhs){ + constexpr data<Schema, encode::Native>& operator+=(const data<Schema, encode::Native>& rhs){ value_ += rhs.get(); return *this; } - data<Schema, encode::Native>& operator-=(const data<Schema, encode::Native>& rhs){ + constexpr data<Schema, encode::Native>& operator-=(const data<Schema, encode::Native>& rhs){ value_ -= rhs.get(); return *this; } - data<Schema, encode::Native> operator-(const data<Schema, encode::Native>& rhs)const{ + constexpr data<Schema, encode::Native> operator-(const data<Schema, encode::Native>& rhs)const{ return {get() - rhs.get()}; } - data<Schema, encode::Native>& operator++() { + constexpr data<Schema, encode::Native>& operator++() { set(get() + static_cast<typename native_data_type<Schema>::type>(1)); return *this; } template<typename Enc> - bool operator==(const data<Schema, Enc>& rhs)const{ + constexpr bool operator==(const data<Schema, Enc>& rhs)const{ return get() == rhs.get(); } template<typename Enc> - bool operator<(const data<Schema, Enc>& rhs) const { + constexpr bool operator<(const data<Schema, Enc>& rhs) const { return get() < rhs.get(); } @@ -186,7 +186,7 @@ public: * Casts */ template<typename Target> - data<Target, encode::Native> cast_to() const { + constexpr data<Target, encode::Native> cast_to() const { auto raw_to = static_cast<typename saw::native_data_type<Target>::type>(value_); return {raw_to}; } diff --git a/modules/remote-hip/c++/transfer.hpp b/modules/remote-hip/c++/transfer.hpp index d0ece27..a4c4c30 100644 --- a/modules/remote-hip/c++/transfer.hpp +++ b/modules/remote-hip/c++/transfer.hpp @@ -65,7 +65,7 @@ public: return make_error<err::not_found>(); } - return {(find_res.second)}; + return {(find_res->second)}; } }; diff --git a/modules/remote-hip/examples/hip_transfer_data.cpp b/modules/remote-hip/examples/hip_transfer_data.cpp index a7c1b8c..9fbf674 100644 --- a/modules/remote-hip/examples/hip_transfer_data.cpp +++ b/modules/remote-hip/examples/hip_transfer_data.cpp @@ -3,7 +3,7 @@ #include <iostream> -__global__ void print_value(saw::data<saw::schema::UInt16,saw::encode::Native>* val){ +__global__ void print_value(saw::data<saw::schema::Int16,saw::encode::Native>* val){ int v = val->get(); printf("Hello world: %d", v); } @@ -42,9 +42,9 @@ saw::error_or<void> real_main(){ } auto dfind = eo_dfind.get_value(); - auto& val = dfind(); + auto& v = dfind(); - print_value<<<dim3(2),dim3(2),0,hipStreamDefault>>>(&val); + print_value<<<dim3(2),dim3(2),0,hipStreamDefault>>>(*(v.get_device_data())); return make_void(); } |