summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/tgsi
diff options
context:
space:
mode:
authorMichal Krol <michal@vmware.com>2009-03-09 08:37:34 +0100
committerMichal Krol <michal@vmware.com>2009-03-09 08:51:39 +0100
commit0d727fa0f06cead61fe4ef753f5be34e1e6944eb (patch)
tree22be45912c373388b9da455f2155d4cdd8e17815 /src/gallium/auxiliary/tgsi
parent40ca02a0450af6ba281f28901d65225409080313 (diff)
tgsi: Document ATI_fragment_shader instruction set operations.
Diffstat (limited to 'src/gallium/auxiliary/tgsi')
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi-instruction-set.txt54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/gallium/auxiliary/tgsi/tgsi-instruction-set.txt b/src/gallium/auxiliary/tgsi/tgsi-instruction-set.txt
index d9eeb2676b..97b74eb11d 100644
--- a/src/gallium/auxiliary/tgsi/tgsi-instruction-set.txt
+++ b/src/gallium/auxiliary/tgsi/tgsi-instruction-set.txt
@@ -143,3 +143,57 @@ TGSI Instruction Specification
dst.z = src0.z * src1.z + src2.z
dst.w = src0.w * src1.w + src2.w
+
+1.2 GL_ATI_fragment_shader
+---------------------------
+
+
+1.2.1 SUB - Subtract
+
+ dst.x = src0.x - src1.x
+ dst.y = src0.y - src1.y
+ dst.z = src0.z - src1.z
+ dst.w = src0.w - src1.w
+
+
+1.2.2 DOT3 - 3-component Dot Product
+
+ Alias for DP3.
+
+
+1.2.3 DOT4 - 4-component Dot Product
+
+ Alias for DP4.
+
+
+1.2.4 LERP - Linear Interpolate
+
+ dst.x = src0.x * (src1.x - src2.x) + src2.x
+ dst.y = src0.y * (src1.y - src2.y) + src2.y
+ dst.z = src0.z * (src1.z - src2.z) + src2.z
+ dst.w = src0.w * (src1.w - src2.w) + src2.w
+
+
+1.2.5 CND - Condition
+
+ dst.x = (src2.x > 0.5) ? src0.x : src1.x
+ dst.y = (src2.y > 0.5) ? src0.y : src1.y
+ dst.z = (src2.z > 0.5) ? src0.z : src1.z
+ dst.w = (src2.w > 0.5) ? src0.w : src1.w
+
+
+1.2.6 CND0 - Condition Zero
+
+ dst.x = (src2.x >= 0.0) ? src0.x : src1.x
+ dst.y = (src2.y >= 0.0) ? src0.y : src1.y
+ dst.z = (src2.z >= 0.0) ? src0.z : src1.z
+ dst.w = (src2.w >= 0.0) ? src0.w : src1.w
+
+
+1.2.7 DOT2ADD - 2-component Dot Product And Add
+
+ dst.x = src0.x * src1.x + src0.y * src1.y + src2.x
+ dst.y = src0.x * src1.x + src0.y * src1.y + src2.x
+ dst.z = src0.x * src1.x + src0.y * src1.y + src2.x
+ dst.w = src0.x * src1.x + src0.y * src1.y + src2.x
+