diff options
Diffstat (limited to 'src/gallium/tests/graw/vertex-shader')
31 files changed, 454 insertions, 1 deletions
diff --git a/src/gallium/tests/graw/vertex-shader b/src/gallium/tests/graw/vertex-shader deleted file mode 120000 index 7b216e8ca08..00000000000 --- a/src/gallium/tests/graw/vertex-shader +++ /dev/null @@ -1 +0,0 @@ -../python/tests/regress/vertex-shader
\ No newline at end of file diff --git a/src/gallium/tests/graw/vertex-shader/vert-abs.sh b/src/gallium/tests/graw/vertex-shader/vert-abs.sh new file mode 100644 index 00000000000..062a48b531e --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-abs.sh @@ -0,0 +1,15 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR +DCL TEMP[0] + +IMM FLT32 { 0.2, 0.2, 0.0, 0.0 } + +ADD TEMP[0], IN[0], IMM[0] +ABS OUT[0], TEMP[0] +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-add.sh b/src/gallium/tests/graw/vertex-shader/vert-add.sh new file mode 100644 index 00000000000..188931ebc8d --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-add.sh @@ -0,0 +1,13 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +IMM FLT32 { 0.2, -0.1, 0.0, 0.0 } + +ADD OUT[0], IN[0], IMM[0] +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-arl.sh b/src/gallium/tests/graw/vertex-shader/vert-arl.sh new file mode 100644 index 00000000000..0039597f6f0 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-arl.sh @@ -0,0 +1,23 @@ +VERT + +DCL IN[0] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +DCL TEMP[0] + +DCL ADDR[0] + +IMM FLT32 { 3.0, 1.0, 1.0, 1.0 } +IMM FLT32 { 1.0, 0.0, 0.0, 1.0 } +IMM FLT32 { 0.0, 1.0, 0.0, 1.0 } +IMM FLT32 { 0.0, 0.0, 1.0, 1.0 } +IMM FLT32 { 1.0, 1.0, 0.0, 1.0 } +IMM FLT32 { 0.0, 1.0, 1.0, 1.0 } + +MOV OUT[0], IN[0] +MUL TEMP[0], IN[0], IMM[0] +ARL ADDR[0].x, TEMP[0] +MOV OUT[1], IMM[ADDR[0].x + 3] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-arr.sh b/src/gallium/tests/graw/vertex-shader/vert-arr.sh new file mode 100644 index 00000000000..fdde4f9ad12 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-arr.sh @@ -0,0 +1,23 @@ +VERT + +DCL IN[0] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +DCL TEMP[0] + +DCL ADDR[0] + +IMM FLT32 { 3.0, 1.0, 1.0, 1.0 } +IMM FLT32 { 1.0, 0.0, 0.0, 1.0 } +IMM FLT32 { 0.0, 1.0, 0.0, 1.0 } +IMM FLT32 { 0.0, 0.0, 1.0, 1.0 } +IMM FLT32 { 1.0, 1.0, 0.0, 1.0 } +IMM FLT32 { 0.0, 1.0, 1.0, 1.0 } + +MOV OUT[0], IN[0] +MUL TEMP[0], IN[0], IMM[0] +ARR ADDR[0].x, TEMP[0] +MOV OUT[1], IMM[ADDR[0].x + 3] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-cb-1d.sh b/src/gallium/tests/graw/vertex-shader/vert-cb-1d.sh new file mode 100644 index 00000000000..e227917fd3b --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-cb-1d.sh @@ -0,0 +1,16 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR +DCL CONST[1] +DCL CONST[3] +DCL TEMP[0..1] + +MOV OUT[0], IN[0] +ADD TEMP[0], IN[1], CONST[1] +RCP TEMP[1], CONST[3].xxxx +MUL OUT[1], TEMP[0], TEMP[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-cb-2d.sh b/src/gallium/tests/graw/vertex-shader/vert-cb-2d.sh new file mode 100644 index 00000000000..39768d2dda9 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-cb-2d.sh @@ -0,0 +1,12 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR +DCL CONST[1][1..2] + +MOV OUT[0], IN[0] +MAD OUT[1], IN[1], CONST[1][2], CONST[1][1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-dp3.sh b/src/gallium/tests/graw/vertex-shader/vert-dp3.sh new file mode 100644 index 00000000000..357e224f696 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-dp3.sh @@ -0,0 +1,16 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR +DCL TEMP[0] + +IMM FLT32 { 0.0, 0.0, 1.0, 1.0 } + +DP3 TEMP[0].xy, IN[0], IN[0] +MOV TEMP[0].zw, IMM[0] +MUL OUT[0], IN[0], TEMP[0] +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-dp4.sh b/src/gallium/tests/graw/vertex-shader/vert-dp4.sh new file mode 100644 index 00000000000..14f61066014 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-dp4.sh @@ -0,0 +1,16 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR +DCL TEMP[0] + +IMM FLT32 { 0.0, 0.0, 1.0, 1.0 } + +DP4 TEMP[0].xy, IN[0], IN[0] +MOV TEMP[0].zw, IMM[0] +MUL OUT[0], IN[0], TEMP[0] +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-dst.sh b/src/gallium/tests/graw/vertex-shader/vert-dst.sh new file mode 100644 index 00000000000..2d59bd1a0c3 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-dst.sh @@ -0,0 +1,11 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +MOV OUT[0], IN[0] +DST OUT[1], IN[1], IN[0] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-ex2.sh b/src/gallium/tests/graw/vertex-shader/vert-ex2.sh new file mode 100644 index 00000000000..e2383a6b5bd --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-ex2.sh @@ -0,0 +1,18 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +DCL TEMP[0..1] + +IMM FLT32 { 0.3, 0.3, 0.3, 1.0 } + +EX2 TEMP[0], IN[0] +EX2 TEMP[1], IN[1].yyyy +MUL TEMP[0], TEMP[0], IMM[0] +MOV OUT[0], IN[0] +MUL OUT[1], TEMP[0], TEMP[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-flr.sh b/src/gallium/tests/graw/vertex-shader/vert-flr.sh new file mode 100644 index 00000000000..fa24806663b --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-flr.sh @@ -0,0 +1,23 @@ +VERT + +DCL IN[0] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +DCL TEMP[0] + +DCL ADDR[0] + +IMM FLT32 { 3.0, 1.0, 1.0, 1.0 } +IMM FLT32 { 1.0, 0.0, 0.0, 1.0 } +IMM FLT32 { 0.0, 1.0, 0.0, 1.0 } +IMM FLT32 { 0.0, 0.0, 1.0, 1.0 } +IMM FLT32 { 1.0, 1.0, 0.0, 1.0 } +IMM FLT32 { 0.0, 1.0, 1.0, 1.0 } + +MOV OUT[0], IN[0] +MUL TEMP[0], IN[0], IMM[0] +FLR ADDR[0].x, TEMP[0] +MOV OUT[1], IMM[ADDR[0].x + 3] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-frc.sh b/src/gallium/tests/graw/vertex-shader/vert-frc.sh new file mode 100644 index 00000000000..ff09bfafd0c --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-frc.sh @@ -0,0 +1,15 @@ +VERT + +DCL IN[0] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +DCL TEMP[0] + +IMM FLT32 { 2.7, 3.1, 4.5, 1.0 } + +MUL TEMP[0], IN[0].xyxw, IMM[0] +MOV OUT[0], IN[0] +FRC OUT[1], TEMP[0] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-lg2.sh b/src/gallium/tests/graw/vertex-shader/vert-lg2.sh new file mode 100644 index 00000000000..876b7ab6608 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-lg2.sh @@ -0,0 +1,18 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +DCL TEMP[0] + +IMM FLT32 { 1.0, 0.0, 0.0, 0.0 } +IMM FLT32 { 0.5, 0.0, 0.0, 0.0 } + +ADD TEMP[0], IN[0], IMM[0] +LG2 TEMP[0].x, TEMP[0].xxxx +ADD OUT[0], TEMP[0], IMM[1] +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-lit.sh b/src/gallium/tests/graw/vertex-shader/vert-lit.sh new file mode 100644 index 00000000000..a2235ff6119 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-lit.sh @@ -0,0 +1,11 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +MOV OUT[0], IN[0] +LIT OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-lrp.sh b/src/gallium/tests/graw/vertex-shader/vert-lrp.sh new file mode 100644 index 00000000000..a26ca3b0ec0 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-lrp.sh @@ -0,0 +1,14 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +DCL TEMP[0] + +ABS TEMP[0], IN[0] +MOV OUT[0], IN[0] +LRP OUT[1], TEMP[0], IN[1].xxxx, IN[1].yyyy + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-mad.sh b/src/gallium/tests/graw/vertex-shader/vert-mad.sh new file mode 100644 index 00000000000..caf83a91e48 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-mad.sh @@ -0,0 +1,14 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +IMM FLT32 { 0.5, 1.0, 1.0, 1.0 } +IMM FLT32 { 0.5, 0.0, 0.0, 0.0 } + +MAD OUT[0], IN[0], IMM[0], IMM[1] +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-max.sh b/src/gallium/tests/graw/vertex-shader/vert-max.sh new file mode 100644 index 00000000000..db84a499214 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-max.sh @@ -0,0 +1,13 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +IMM FLT32 { 0.5, 0.5, 0.5, 0.0 } + +MOV OUT[0], IN[0] +MAX OUT[1], IN[1], IMM[0] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-min.sh b/src/gallium/tests/graw/vertex-shader/vert-min.sh new file mode 100644 index 00000000000..63a8c2cf3cd --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-min.sh @@ -0,0 +1,13 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +IMM FLT32 { 0.5, 0.5, 0.5, 0.0 } + +MOV OUT[0], IN[0] +MIN OUT[1], IN[1], IMM[0] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-mov.sh b/src/gallium/tests/graw/vertex-shader/vert-mov.sh new file mode 100644 index 00000000000..4c23e3eaadb --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-mov.sh @@ -0,0 +1,11 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +MOV OUT[0], IN[0] +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-mul.sh b/src/gallium/tests/graw/vertex-shader/vert-mul.sh new file mode 100644 index 00000000000..a409cd4b21e --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-mul.sh @@ -0,0 +1,13 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +IMM FLT32 { 0.6, 0.6, 1.0, 1.0 } + +MUL OUT[0], IN[0], IMM[0] +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-rcp.sh b/src/gallium/tests/graw/vertex-shader/vert-rcp.sh new file mode 100644 index 00000000000..d440e35d9a3 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-rcp.sh @@ -0,0 +1,18 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +DCL TEMP[0] + +IMM FLT32 { 1.0, 0.0, 0.0, 0.0 } +IMM FLT32 { 1.5, 0.0, 0.0, 0.0 } + +ADD TEMP[0], IN[0], IMM[0] +RCP TEMP[0].x, TEMP[0].xxxx +SUB OUT[0], TEMP[0], IMM[1] +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-rsq.sh b/src/gallium/tests/graw/vertex-shader/vert-rsq.sh new file mode 100644 index 00000000000..6fbd53ae0ac --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-rsq.sh @@ -0,0 +1,18 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +DCL TEMP[0] + +IMM FLT32 { 1.0, 0.0, 0.0, 0.0 } +IMM FLT32 { 1.5, 0.0, 0.0, 0.0 } + +ADD TEMP[0], IN[0], IMM[0] +RSQ TEMP[0].x, TEMP[0].xxxx +SUB OUT[0], TEMP[0], IMM[1] +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-sge.sh b/src/gallium/tests/graw/vertex-shader/vert-sge.sh new file mode 100644 index 00000000000..e32a21b6109 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-sge.sh @@ -0,0 +1,16 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +DCL TEMP[0] + +IMM FLT32 { -0.1, -0.1, 1.0, 0.0 } + +SGE TEMP[0], IN[0], IMM[0] +MOV OUT[0], IN[0] +MUL OUT[1], IN[1], TEMP[0] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-slt.sh b/src/gallium/tests/graw/vertex-shader/vert-slt.sh new file mode 100644 index 00000000000..2af61062922 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-slt.sh @@ -0,0 +1,16 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +DCL TEMP[0] + +IMM FLT32 { 0.6, 0.6, 0.0, 0.0 } + +SLT TEMP[0], IN[0], IMM[0] +MOV OUT[0], IN[0] +MUL OUT[1], IN[1], TEMP[0] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-srcmod-abs.sh b/src/gallium/tests/graw/vertex-shader/vert-srcmod-abs.sh new file mode 100644 index 00000000000..e768d95049d --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-srcmod-abs.sh @@ -0,0 +1,15 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR +DCL TEMP[0] + +IMM FLT32 { 0.1, 0.1, 0.0, 0.0 } + +ADD TEMP[0], IN[0], IMM[0] +MOV OUT[0], |TEMP[0]| +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-srcmod-absneg.sh b/src/gallium/tests/graw/vertex-shader/vert-srcmod-absneg.sh new file mode 100644 index 00000000000..40ca5d60def --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-srcmod-absneg.sh @@ -0,0 +1,16 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR +DCL TEMP[0] + +IMM FLT32 { -0.2, -0.2, 0.0, 0.0 } + +ADD TEMP[0], IN[0], IMM[0] +MOV OUT[0].xy, -|TEMP[0]| +MOV OUT[0].zw, IN[0] +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-srcmod-neg.sh b/src/gallium/tests/graw/vertex-shader/vert-srcmod-neg.sh new file mode 100644 index 00000000000..297bc1ee3ed --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-srcmod-neg.sh @@ -0,0 +1,12 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +MOV OUT[0].xy, -IN[0] +MOV OUT[0].zw, IN[0] +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-srcmod-swz.sh b/src/gallium/tests/graw/vertex-shader/vert-srcmod-swz.sh new file mode 100644 index 00000000000..528f164b9ee --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-srcmod-swz.sh @@ -0,0 +1,11 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +MOV OUT[0], IN[0].yxzw +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-sub.sh b/src/gallium/tests/graw/vertex-shader/vert-sub.sh new file mode 100644 index 00000000000..90249abdd38 --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-sub.sh @@ -0,0 +1,13 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +IMM FLT32 { 0.1, 0.1, 0.0, 0.0 } + +SUB OUT[0], IN[0], IMM[0] +MOV OUT[1], IN[1] + +END diff --git a/src/gallium/tests/graw/vertex-shader/vert-xpd.sh b/src/gallium/tests/graw/vertex-shader/vert-xpd.sh new file mode 100644 index 00000000000..72b048676fb --- /dev/null +++ b/src/gallium/tests/graw/vertex-shader/vert-xpd.sh @@ -0,0 +1,11 @@ +VERT + +DCL IN[0] +DCL IN[1] +DCL OUT[0], POSITION +DCL OUT[1], COLOR + +MOV OUT[0], IN[0] +XPD OUT[1], IN[0], IN[1] + +END |