[Mesa-dev] [PATCH 1/5] clover: Have compat::string allocate its own memory.
Tom Stellard
thomas.stellard at amd.com
Wed Jun 25 07:32:09 PDT 2014
From: Francisco Jerez <currojerez at riseup.net>
---
src/gallium/state_trackers/clover/api/kernel.cpp | 4 +++-
src/gallium/state_trackers/clover/util/compat.hpp | 8 ++++----
2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/src/gallium/state_trackers/clover/api/kernel.cpp b/src/gallium/state_trackers/clover/api/kernel.cpp
index 96cf302..05cc392 100644
--- a/src/gallium/state_trackers/clover/api/kernel.cpp
+++ b/src/gallium/state_trackers/clover/api/kernel.cpp
@@ -58,7 +58,9 @@ clCreateKernelsInProgram(cl_program d_prog, cl_uint count,
if (rd_kerns)
copy(map([&](const module::symbol &sym) {
- return desc(new kernel(prog, compat::string(sym.name),
+ return desc(new kernel(prog,
+ std::string(sym.name.begin(),
+ sym.name.end()),
range(sym.args)));
}, syms),
rd_kerns);
diff --git a/src/gallium/state_trackers/clover/util/compat.hpp b/src/gallium/state_trackers/clover/util/compat.hpp
index e68d9df..28601e8 100644
--- a/src/gallium/state_trackers/clover/util/compat.hpp
+++ b/src/gallium/state_trackers/clover/util/compat.hpp
@@ -72,7 +72,7 @@ namespace clover {
vector(const vector &v) : p(alloc(v.n, v.p, v.n)), n(v.n) {
}
- vector(iterator p, size_type n) : p(alloc(n, p, n)), n(n) {
+ vector(const_iterator p, size_type n) : p(alloc(n, p, n)), n(n) {
}
template<typename C>
@@ -263,13 +263,13 @@ namespace clover {
size_t offset;
};
- class string : public vector_ref<const char> {
+ class string : public vector<char> {
public:
- string(const char *p) : vector_ref(p, std::strlen(p)) {
+ string(const char *p) : vector(p, std::strlen(p)) {
}
template<typename C>
- string(const C &v) : vector_ref(v) {
+ string(const C &v) : vector(v) {
}
operator std::string() const {
--
1.8.1.5
More information about the mesa-dev
mailing list