1572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams#pragma version(1)
2572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
3572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams#pragma rs java_package_name(com.android.rs.test_v11)
4572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
5572a5031a5d8602db0bec0b253428a034bd4dd59Jason Samstypedef struct TestResult_s {
6572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    rs_allocation name;
7572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    bool pass;
8572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    float score;
9572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    int64_t time;
10572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams} TestResult;
11572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams//TestResult *g_results;
12572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
13572a5031a5d8602db0bec0b253428a034bd4dd59Jason Samsstatic int64_t g_time;
14572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
15de235208fd6bcaa29c95404d990f7b5e212435f9Jean-Luc Brouilletstatic inline void start(void) {
16572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    g_time = rsUptimeMillis();
17572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams}
18572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
19de235208fd6bcaa29c95404d990f7b5e212435f9Jean-Luc Brouilletstatic inline float end(uint32_t idx) {
20572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    int64_t t = rsUptimeMillis() - g_time;
21572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    //g_results[idx].time = t;
22572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    //rsDebug("test time", (int)t);
23572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    return ((float)t) / 1000.f;
24572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams}
25572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
26572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams#define _RS_ASSERT(b) \
27572a5031a5d8602db0bec0b253428a034bd4dd59Jason Samsdo { \
28572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    if (!(b)) { \
29572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        failed = true; \
30572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        rsDebug(#b " FAILED", 0); \
31572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    } \
32572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams\
33572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams} while (0)
34572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
35572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams/* These constants must match those in UnitTest.java */
36572a5031a5d8602db0bec0b253428a034bd4dd59Jason Samsstatic const int RS_MSG_TEST_PASSED = 100;
37572a5031a5d8602db0bec0b253428a034bd4dd59Jason Samsstatic const int RS_MSG_TEST_FAILED = 101;
38