diff options
author | Stephen Hines <srhines@google.com> | 2012-08-29 20:00:03 -0700 |
---|---|---|
committer | Stephen Hines <srhines@google.com> | 2012-08-29 20:17:57 -0700 |
commit | 7bb5745b970a760de11e71dc06f18ef77e5f4783 (patch) | |
tree | 8e5ea158d27ed43153d70165e1187e69cc2885e2 /tests | |
parent | f0340d156c9adf974cba36e806049f66e111fab7 (diff) | |
download | frameworks_base-7bb5745b970a760de11e71dc06f18ef77e5f4783.zip frameworks_base-7bb5745b970a760de11e71dc06f18ef77e5f4783.tar.gz frameworks_base-7bb5745b970a760de11e71dc06f18ef77e5f4783.tar.bz2 |
Failing uchar4->int4 test
BUG=7081293
This demonstrates the missing vmovl.u16 for expanding the unsigned char input.
Change-Id: I14f560e0fb1efd1c283d2e0a87f5506ca28cf88d
Diffstat (limited to 'tests')
3 files changed, 70 insertions, 0 deletions
diff --git a/tests/RenderScriptTests/tests/src/com/android/rs/test/RSTestCore.java b/tests/RenderScriptTests/tests/src/com/android/rs/test/RSTestCore.java index a641ce5..4d6fd10 100644 --- a/tests/RenderScriptTests/tests/src/com/android/rs/test/RSTestCore.java +++ b/tests/RenderScriptTests/tests/src/com/android/rs/test/RSTestCore.java @@ -87,6 +87,7 @@ public class RSTestCore { unitTests.add(new UT_math_conformance(this, mRes, mCtx)); unitTests.add(new UT_math_agree(this, mRes, mCtx)); unitTests.add(new UT_min(this, mRes, mCtx)); + unitTests.add(new UT_int4(this, mRes, mCtx)); unitTests.add(new UT_element(this, mRes, mCtx)); unitTests.add(new UT_sampler(this, mRes, mCtx)); unitTests.add(new UT_program_store(this, mRes, mCtx)); diff --git a/tests/RenderScriptTests/tests/src/com/android/rs/test/UT_int4.java b/tests/RenderScriptTests/tests/src/com/android/rs/test/UT_int4.java new file mode 100644 index 0000000..89a2a71 --- /dev/null +++ b/tests/RenderScriptTests/tests/src/com/android/rs/test/UT_int4.java @@ -0,0 +1,40 @@ +/* + * Copyright (C) 2012 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.rs.test; + +import android.content.Context; +import android.content.res.Resources; +import android.renderscript.*; + +public class UT_int4 extends UnitTest { + private Resources mRes; + + protected UT_int4(RSTestCore rstc, Resources res, Context ctx) { + super(rstc, "int4", ctx); + mRes = res; + } + + public void run() { + RenderScript pRS = RenderScript.create(mCtx); + ScriptC_int4 s = new ScriptC_int4(pRS, mRes, R.raw.int4); + pRS.setMessageHandler(mRsMessage); + s.invoke_int4_test(); + pRS.finish(); + waitForMessage(); + pRS.destroy(); + } +} diff --git a/tests/RenderScriptTests/tests/src/com/android/rs/test/int4.rs b/tests/RenderScriptTests/tests/src/com/android/rs/test/int4.rs new file mode 100644 index 0000000..c791cab --- /dev/null +++ b/tests/RenderScriptTests/tests/src/com/android/rs/test/int4.rs @@ -0,0 +1,29 @@ +#include "shared.rsh" +#pragma rs_fp_relaxed + +uchar4 u4 = 4; +int4 gi4 = {2, 2, 2, 2}; + +void int4_test() { + bool failed = false; + int4 i4 = {u4.x, u4.y, u4.z, u4.w}; + i4 *= gi4; + + rsDebug("i4.x", i4.x); + rsDebug("i4.y", i4.y); + rsDebug("i4.z", i4.z); + rsDebug("i4.w", i4.w); + + _RS_ASSERT(i4.x == 8); + _RS_ASSERT(i4.y == 8); + _RS_ASSERT(i4.z == 8); + _RS_ASSERT(i4.w == 8); + + if (failed) { + rsSendToClientBlocking(RS_MSG_TEST_FAILED); + } + else { + rsSendToClientBlocking(RS_MSG_TEST_PASSED); + } +} + |