aboutsummaryrefslogtreecommitdiff
path: root/tests/shaders/generic
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2011-07-07 17:02:23 -0700
committerEric Anholt <eric@anholt.net>2011-07-10 19:42:13 -0700
commitfeca802329fef360ae32acd560bd2fb65a88a162 (patch)
treeadb1b069e048486488958f06748a03af3dd166ea /tests/shaders/generic
parent58499fc48b52faf90b55c5e9913218f9aae3598e (diff)
fp-dst-aliasing-*: Tests for DST with a src = dst
The 965 driver was failing while breaking it down into channel-wise operations and overwriting the operands. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Diffstat (limited to 'tests/shaders/generic')
-rw-r--r--tests/shaders/generic/fp-dst-aliasing-1.vpfp16
-rw-r--r--tests/shaders/generic/fp-dst-aliasing-2.vpfp16
2 files changed, 32 insertions, 0 deletions
diff --git a/tests/shaders/generic/fp-dst-aliasing-1.vpfp b/tests/shaders/generic/fp-dst-aliasing-1.vpfp
new file mode 100644
index 00000000..38a901ad
--- /dev/null
+++ b/tests/shaders/generic/fp-dst-aliasing-1.vpfp
@@ -0,0 +1,16 @@
+!!ARBvp1.0
+OPTION ARB_position_invariant;
+END
+
+!!ARBfp1.0
+TEMP temp;
+MOV temp, program.local[0];
+DST temp, temp.xyyw, program.local[1];
+MOV result.color, temp;
+END
+
+!!test
+fragment.local[0] 0.1 0.2 0.3 0.4
+fragment.local[1] 0.5 0.5 0.5 0.5
+expected 1.0 0.1 0.2 0.5
+
diff --git a/tests/shaders/generic/fp-dst-aliasing-2.vpfp b/tests/shaders/generic/fp-dst-aliasing-2.vpfp
new file mode 100644
index 00000000..e757cd6c
--- /dev/null
+++ b/tests/shaders/generic/fp-dst-aliasing-2.vpfp
@@ -0,0 +1,16 @@
+!!ARBvp1.0
+OPTION ARB_position_invariant;
+END
+
+!!ARBfp1.0
+TEMP temp;
+MOV temp, program.local[1];
+DST temp, program.local[0], temp.xyzy;
+MOV result.color, temp;
+END
+
+!!test
+fragment.local[0] 0.1 0.2 0.3 0.4
+fragment.local[1] 0.5 0.5 0.5 0.5
+expected 1.0 0.1 0.3 0.5
+