Fix issues with compute unit tests.
Bug: 10427951
This fixes 2 small problems:
1) Typecheck was using the wrong pathname for reflection.
2) Cppbasic was doing an illegal 1D copy over a 2D data structure. This was
masked by using an input size that is a multiple of our required stride.
Change-Id: I1138d646ff6369cf25a2bd9bc52e20a67a124e95
diff --git a/tests/cppbasic/compute.cpp b/tests/cppbasic/compute.cpp
index bc80c7e..21ffe2b 100644
--- a/tests/cppbasic/compute.cpp
+++ b/tests/cppbasic/compute.cpp
@@ -64,19 +64,21 @@
// Verify a simple kernel.
{
+ static const uint32_t xDim = 7;
+ static const uint32_t yDim = 7;
sp<const Element> e = Element::I32(rs);
Type::Builder tb(rs, e);
- tb.setX(8);
- tb.setY(8);
+ tb.setX(xDim);
+ tb.setY(yDim);
sp<const Type> t = tb.create();
sp<Allocation> kern1_in = Allocation::createTyped(rs, t);
sp<Allocation> kern1_out = Allocation::createTyped(rs, t);
int *buf = new int[t->getCount()];
for (uint32_t ct=0; ct < t->getCount(); ct++) {
- buf[ct] = 0;
+ buf[ct] = 5;
}
- kern1_in->copy1DFrom(buf);
+ kern1_in->copy2DRangeFrom(0, 0, xDim, yDim, buf);
delete [] buf;
sc->forEach_kern1(kern1_in, kern1_out);
diff --git a/tests/cppbasic/mono.rs b/tests/cppbasic/mono.rs
index f134b36..eab0336 100644
--- a/tests/cppbasic/mono.rs
+++ b/tests/cppbasic/mono.rs
@@ -70,7 +70,7 @@
}
void __attribute__((kernel)) verify_kern1(int i, uint32_t x, uint32_t y) {
- _RS_ASSERT(i == (10 * x + 100 * y));
+ _RS_ASSERT(i == (5 + 10 * x + 100 * y));
rsDebug("i ", i);
}