diff options
author | Rob Clark <robdclark@gmail.com> | 2015-01-04 09:05:50 -0500 |
---|---|---|
committer | Rob Clark <robdclark@gmail.com> | 2015-01-05 16:04:41 -0500 |
commit | a6799180ce0c1fdf4d2ab02e3d8cfc9a1a52aafd (patch) | |
tree | e859dc635eae16fde5e226ed18204354a236747e /reference | |
parent | 345d693f24a5eb240b76cb1da4ed8f4880470028 (diff) |
test updates
Drop duplicate chrome shader, add a handful of shaders extracted from
piglit tests.
Diffstat (limited to 'reference')
-rw-r--r-- | reference/chrome-bad.asm | 121 | ||||
-rw-r--r-- | reference/cp-fail-vert.asm | 38 | ||||
-rw-r--r-- | reference/piglit-arb_framebuffer_srgb-blit-frag1.asm | 31 | ||||
-rw-r--r-- | reference/piglit-arb_framebuffer_srgb-blit-frag2.asm | 20 | ||||
-rw-r--r-- | reference/piglit-fs-varying-array-mat4-index-col-row-rd.asm | 184 | ||||
-rw-r--r-- | reference/piglit-glsl-fs-varying-array.asm | 77 | ||||
-rw-r--r-- | reference/piglit-tex-miplevel-selection-1d-shadow.asm | 40 | ||||
-rw-r--r-- | reference/piglit-vs-temp-array-mat3-index-col-rd.asm | 202 | ||||
-rw-r--r-- | reference/piglit-vs-varying-array-mat2-index-rd.asm | 213 | ||||
-rw-r--r-- | reference/piglit-vs-varying-array-mat4-index-rd.asm | 325 |
10 files changed, 1130 insertions, 121 deletions
diff --git a/reference/chrome-bad.asm b/reference/chrome-bad.asm deleted file mode 100644 index 386d1c8..0000000 --- a/reference/chrome-bad.asm +++ /dev/null @@ -1,121 +0,0 @@ -; options: -; VERT: new compiler -@in(r0.x) in0 -@in(r0.y) in1 -@in(r0.z) in2 -@in(r0.w) in3 -@in(r1.x) in4 -@in(r1.y) in5 -@in(r1.z) in8 -@out(r0.x) out0 -@out(r0.y) out1 -@out(r0.z) out2 -@out(r0.w) out3 -@out(r1.x) out4 -@out(r1.y) out5 -@out(r1.z) out6 -@out(r1.w) out7 -(sy)(ss)mul.f r1.z, r1.z, c40.x -(rpt2)nop -trunc.f r1.z, r1.z -(rpt2)nop -mov.f32f32 r1.z, r1.z -(rpt2)nop -max.f r1.w, r1.z, c40.y -max.f r2.x, r1.z, c40.y -max.f r2.y, r1.z, c40.y -max.f r2.z, r1.z, c40.y -min.f r1.w, r1.w, c40.z -mov.f32f32 r2.x, r2.x -min.f r2.y, r2.y, c40.z -min.f r2.z, r2.z, c40.z -mov.f32f32 r1.w, r1.w -min.f r2.x, r2.x, c40.z -mov.f32f32 r2.y, r2.y -mov.f32f32 r2.z, r2.z -trunc.f r1.w, r1.w -mov.f32f32 r2.x, r2.x -trunc.f r2.y, r2.y -trunc.f r2.z, r2.z -mov.f32f32 r1.w, r1.w -trunc.f r2.x, r2.x -mov.f32f32 r2.y, r2.y -mov.f32f32 r2.z, r2.z -mul.f r1.w, r1.w, c40.w -mov.f32f32 r2.x, r2.x -mul.f r2.y, r2.y, c40.w -mul.f r2.z, r2.z, c40.w -mov.f32f32 r1.w, r1.w -cov.f32s16 hr0.x, r2.x -mov.f32f32 r2.x, r2.y -mov.f32f32 r2.y, r2.z -cov.f32s16 hr0.y, r1.w -shl.b hr0.x, hr0.x, 2 -cov.f32s16 hr0.z, r2.x -cov.f32s16 hr0.w, r2.y -shl.b hr0.y, hr0.y, 2 -mova a0.x, hr0.x -shl.b hr0.x, hr0.z, 2 -shl.b hr0.z, hr0.w, 2 -max.f r2.x, r1.z, c40.y -(rpt2)nop -mov.f32f32 r1.z, c<a0.x + 129> -mov.f32f32 r1.w, c<a0.x + 131> -mov.f32f32 r2.y, c<a0.x + 128> -(ul)mov.f32f32 r2.z, c<a0.x + 130> -mova a0.x, hr0.y -mad.f32 r1.y, r1.y, r1.w, r1.z -mov.f32f32 r1.w, r1.w -mov.f32f32 r1.z, r2.z -mad.f32 r1.x, r1.x, r2.z, r2.y -min.f r2.x, r2.x, c40.z -nop -mul.f r2.y, c<a0.x>, r0.x -mul.f r2.z, c<a0.x>, r0.x -mul.f r2.w, c<a0.x>, r0.x -(ul)mul.f r0.x, c<a0.x>, r0.x -mova a0.x, hr0.x -mov.f32f32 r1.y, r1.y -mov.f32f32 r1.x, r1.x -mov.f32f32 r2.x, r2.x -(rpt2)nop -mad.f32 r2.y, c<a0.x + 4>, r0.y, r2.y -mad.f32 r2.z, c<a0.x + 4>, r0.y, r2.z -mad.f32 r2.w, c<a0.x + 4>, r0.y, r2.w -(ul)mad.f32 r0.x, c<a0.x + 4>, r0.y, r0.x -mova a0.x, hr0.z -mov.f32f32 r1.y, r1.y -mov.f32f32 r1.x, r1.x -trunc.f r0.y, r2.x -(rpt2)nop -mad.f32 r2.x, c<a0.x + 8>, r0.z, r2.y -mov.f32f32 r0.y, r0.y -mad.f32 r2.y, c<a0.x + 8>, r0.z, r2.z -mad.f32 r2.z, c<a0.x + 8>, r0.z, r2.w -(ul)mad.f32 r0.x, c<a0.x + 8>, r0.z, r0.x -mul.f r0.y, r0.y, c40.w -(rpt2)nop -mov.f32f32 r0.y, r0.y -(rpt2)nop -cov.f32s16 hr0.x, r0.y -(rpt2)nop -shl.b hr0.x, hr0.x, 2 -(rpt2)nop -mova a0.x, hr0.x -(rpt5)nop -mad.f32 r0.y, c<a0.x + 12>, r0.w, r2.x -mad.f32 r0.z, c<a0.x + 12>, r0.w, r2.y -mad.f32 r2.x, c<a0.x + 12>, r0.w, r2.z -(ul)mad.f32 r0.x, c<a0.x + 12>, r0.w, r0.x -mov.f32f32 r0.w, r0.y -mov.f32f32 r0.z, r0.z -mov.f32f32 r0.y, r2.x -mov.f32f32 r0.x, r0.x -end -nop -nop -nop -; VERT: outputs: r0.x (0:0) r1.x (5:20) -; VERT: inputs: r0.x (0:0,cm=f,il=8,b=0) r1.x (0:0,cm=3,il=12,b=0) r1.z (0:0,cm=1,il=16,b=0) -; VERT: 122 instructions, 1 half, 3 full - diff --git a/reference/cp-fail-vert.asm b/reference/cp-fail-vert.asm new file mode 100644 index 0000000..72f55b9 --- /dev/null +++ b/reference/cp-fail-vert.asm @@ -0,0 +1,38 @@ +; options: +; VERT: new compiler +@in(r1.x) in0 +@in(r1.y) in1 +@in(r1.z) in2 +@in(r1.w) in3 +@out(r0.x) out0 +@out(r0.y) out1 +@out(r0.z) out2 +@out(r0.w) out3 +@out(r1.x) out4 +@out(r1.y) out5 +@out(r1.z) out6 +@out(r1.w) out7 +(sy)(ss)mul.f r0.x, c0.w, r1.x +mul.f r0.y, c0.z, r1.x +mad.f32 r0.x, c1.w, r1.y, r0.x +mad.f32 r0.y, c1.z, r1.y, r0.y +mad.f32 r0.x, c2.w, r1.z, r0.x +mad.f32 r0.y, c2.z, r1.z, r0.y +mad.f32 r0.w, c3.w, r1.w, r0.x +mad.f32 r0.z, c3.z, r1.w, r0.y +mul.f r0.x, c0.y, r1.x +mul.f r0.y, c0.x, r1.x +mad.f32 r0.x, c1.y, r1.y, r0.x +mad.f32 r0.y, c1.x, r1.y, r0.y +mad.f32 r0.x, c2.y, r1.z, r0.x +mad.f32 r1.z, c2.x, r1.z, r0.y +mad.f32 r0.y, c3.y, r1.w, r0.x +mad.f32 r0.x, c3.x, r1.w, r1.z +mov.f32f32 r1.w, (0.000000) +mov.f32f32 r1.z, (0.000000) +end +nop +; VERT: outputs: r0.x (0:0) r1.x (5:9) +; VERT: inputs: r1.x (0:0,cm=f,il=8,b=0) +; VERT: 19 instructions, 0 half, 2 full + diff --git a/reference/piglit-arb_framebuffer_srgb-blit-frag1.asm b/reference/piglit-arb_framebuffer_srgb-blit-frag1.asm new file mode 100644 index 0000000..8c430d0 --- /dev/null +++ b/reference/piglit-arb_framebuffer_srgb-blit-frag1.asm @@ -0,0 +1,31 @@ +; options: +; FRAG: new compiler +@in(r0.x) in0 +@out(r2.x) out0 +@out(r2.y) out1 +@out(r2.z) out2 +@out(r2.w) out3 +(sy)(ss)add.s r0.x, r0.x, -8 +(rpt2)nop +shr.b r0.x, r0.x, 4 +(rpt2)nop +cov.u32f32 r0.x, r0.x +(rpt2)nop +add.f r0.x, r0.x, c1.x +(rpt2)nop +add.f r0.x, r0.x, c1.z +(rpt2)nop +mul.f r2.x, r0.x, c1.w +(rpt2)nop +mov.f32f32 r2.y, r2.x +(rpt2)nop +mov.f32f32 r2.w, r2.y +mov.f32f32 r2.z, r2.y +end +nop +nop +nop +; FRAG: outputs: r2.x (1:0) +; FRAG: inputs: r0.x (0:0,cm=f,il=8,b=0) +; FRAG: 31 instructions, 0 half, 3 full + diff --git a/reference/piglit-arb_framebuffer_srgb-blit-frag2.asm b/reference/piglit-arb_framebuffer_srgb-blit-frag2.asm new file mode 100644 index 0000000..46a2696 --- /dev/null +++ b/reference/piglit-arb_framebuffer_srgb-blit-frag2.asm @@ -0,0 +1,20 @@ +; options: +; FRAG: new compiler +@in(r0.x) in0 +@in(r0.y) in1 +@out(r1.x) out0 +@out(r1.y) out1 +@out(r1.z) out2 +@out(r1.w) out3 +(sy)(ss)bary.f r0.z, 0, r0.x +bary.f (ei)r0.w, 1, r0.x +(rpt5)nop +sam (f32)(xyzw)r1.x, r0.z, s#0, t#0 +end +nop +nop +nop +; FRAG: outputs: r1.x (1:0) +; FRAG: inputs: r0.x (5:0,cm=f,il=8,b=1) +; FRAG: 10 instructions, 0 half, 2 full + diff --git a/reference/piglit-fs-varying-array-mat4-index-col-row-rd.asm b/reference/piglit-fs-varying-array-mat4-index-col-row-rd.asm new file mode 100644 index 0000000..e15b70f --- /dev/null +++ b/reference/piglit-fs-varying-array-mat4-index-col-row-rd.asm @@ -0,0 +1,184 @@ +; options: +; FRAG: old compiler +@in(r0.x) in0 +@in(r0.y) in1 +@out(r13.x) out0 +@out(r13.y) out1 +@out(r13.z) out2 +@out(r13.w) out3 +(sy)(ss)bary.f r1.x, 0, r0.x +bary.f r1.y, 1, r0.x +bary.f r1.z, 2, r0.x +bary.f r1.w, 3, r0.x +bary.f r2.x, 4, r0.x +bary.f r2.y, 5, r0.x +bary.f r2.z, 6, r0.x +bary.f r2.w, 7, r0.x +bary.f r3.x, 8, r0.x +bary.f r3.y, 9, r0.x +bary.f r3.z, 10, r0.x +bary.f r3.w, 11, r0.x +bary.f r4.x, 12, r0.x +bary.f r4.y, 13, r0.x +bary.f r4.z, 14, r0.x +bary.f r4.w, 15, r0.x +bary.f r5.x, 16, r0.x +bary.f r5.y, 17, r0.x +bary.f r5.z, 18, r0.x +bary.f r5.w, 19, r0.x +bary.f r6.x, 20, r0.x +bary.f r6.y, 21, r0.x +bary.f r6.z, 22, r0.x +bary.f r6.w, 23, r0.x +bary.f r7.x, 24, r0.x +bary.f r7.y, 25, r0.x +bary.f r7.z, 26, r0.x +bary.f r7.w, 27, r0.x +bary.f r8.x, 28, r0.x +bary.f r8.y, 29, r0.x +bary.f r8.z, 30, r0.x +bary.f r8.w, 31, r0.x +bary.f r9.x, 32, r0.x +bary.f r9.y, 33, r0.x +bary.f r9.z, 34, r0.x +bary.f r9.w, 35, r0.x +bary.f r10.x, 36, r0.x +bary.f r10.y, 37, r0.x +bary.f r10.z, 38, r0.x +bary.f r10.w, 39, r0.x +bary.f r11.x, 40, r0.x +bary.f r11.y, 41, r0.x +bary.f r11.z, 42, r0.x +bary.f r11.w, 43, r0.x +bary.f r12.x, 44, r0.x +bary.f r12.y, 45, r0.x +bary.f r12.z, 46, r0.x +bary.f (ei)r12.w, 47, r0.x +nop +nop +nop +nop +nop +nop +mov.f32f32 r17.x, c0.x +mov.f32f32 r17.y, c0.x +mov.f32f32 r17.z, c0.x +mov.f32f32 r17.w, c0.x +mul.f r14.x, r17.x, c4.x +nop +nop +nop +add.f r17.x, c1.x, r14.x +nop +nop +nop +mov.f32f32 r14.x, r17.x +nop +nop +nop +cov.f32s16 hr14.x, r14.x +nop +nop +nop +shl.b hr14.x, hr14.x, 2 +nop +nop +nop +mova a0.x, hr14.x +nop +nop +nop +nop +nop +nop +mov.f32f32 r14.x, r<a0.x + 4> +mov.f32f32 r14.y, r<a0.x + 5> +mov.f32f32 r14.z, r<a0.x + 6> +(ul)mov.f32f32 r14.w, r<a0.x + 7> +mov.f32f32 r18.x, c5.x +mov.f32f32 r18.y, c5.y +mov.f32f32 r18.z, c5.z +mov.f32f32 r18.w, c5.w +cmps.f.eq r17.x, r18.x, c2.x +cmps.f.eq r17.y, r18.y, c2.x +cmps.f.eq r17.z, r18.z, c2.x +cmps.f.eq r17.w, r18.w, c2.x +cov.u32f32 r15.y, r17.y +cov.u32f32 r15.z, r17.z +cov.u32f32 r15.w, r17.w +nop +cmps.f.ge r17.x, (neg)r15.y, c4.y +cmps.f.ge r17.y, (neg)r15.y, c4.y +cmps.f.ge r17.z, (neg)r15.y, c4.y +cmps.f.ge r17.w, (neg)r15.y, c4.y +add.s r17.x, r17.x, -1 +add.s r17.y, r17.y, -1 +add.s r17.z, r17.z, -1 +add.s r17.w, r17.w, -1 +sel.f32 r16.x, r14.x, r17.x, r14.y +nop +nop +nop +cmps.f.ge r18.x, (neg)r15.z, c4.y +cmps.f.ge r18.y, (neg)r15.z, c4.y +cmps.f.ge r18.z, (neg)r15.z, c4.y +cmps.f.ge r18.w, (neg)r15.z, c4.y +add.s r18.x, r18.x, -1 +add.s r18.y, r18.y, -1 +add.s r18.z, r18.z, -1 +add.s r18.w, r18.w, -1 +sel.f32 r17.x, r16.x, r18.x, r14.z +nop +nop +nop +mov.f32f32 r16.x, r17.x +nop +nop +nop +cmps.f.ge r18.x, (neg)r15.w, c4.y +cmps.f.ge r18.y, (neg)r15.w, c4.y +cmps.f.ge r18.z, (neg)r15.w, c4.y +cmps.f.ge r18.w, (neg)r15.w, c4.y +add.s r18.x, r18.x, -1 +add.s r18.y, r18.y, -1 +add.s r18.z, r18.z, -1 +add.s r18.w, r18.w, -1 +sel.f32 r17.x, r16.x, r18.x, r14.w +nop +nop +nop +mov.f32f32 r16.x, r17.x +nop +nop +nop +cmps.f.eq r17.x, c3.x, r16.x +cmps.f.eq r17.y, c3.x, r16.x +cmps.f.eq r17.z, c3.x, r16.x +cmps.f.eq r17.w, c3.x, r16.x +cov.u32f32 r14.x, r17.x +nop +nop +nop +cmps.f.eq p0.x, r14.x, c4.y +br p0.x, #6 +mov.f32f32 r14.x, c4.y +mov.f32f32 r14.y, c4.z +mov.f32f32 r14.z, c4.y +mov.f32f32 r14.w, c4.z +jump #6 +(jp)nop +mov.f32f32 r14.x, c4.z +mov.f32f32 r14.y, c4.y +mov.f32f32 r14.z, c4.y +mov.f32f32 r14.w, c4.z +(jp)nop +mov.f32f32 r13.x, r14.x +mov.f32f32 r13.y, r14.y +mov.f32f32 r13.z, r14.z +mov.f32f32 r13.w, r14.w +end +nop +; FRAG: outputs: r13.x (1:0) +; FRAG: inputs: r1.x (5:9,cm=f,il=8,b=1) r2.x (5:10,cm=f,il=12,b=1) r3.x (5:11,cm=f,il=16,b=1) r4.x (5:12,cm=f,il=20,b=1) r5.x (5:13,cm=f,il=24,b=1) r6.x (5:14,cm=f,il=28,b=1) r7.x (5:15,cm=f,il=32,b=1) r8.x (5:16,cm=f,il=36,b=1) r9.x (5:17,cm=f,il=40,b=1) r10.x (5:18,cm=f,il=44,b=1) r11.x (5:19,cm=f,il=48,b=1) r12.x (5:20,cm=f,il=52,b=1) +; FRAG: 171 instructions, 15 half, 19 full + diff --git a/reference/piglit-glsl-fs-varying-array.asm b/reference/piglit-glsl-fs-varying-array.asm new file mode 100644 index 0000000..a9862ea --- /dev/null +++ b/reference/piglit-glsl-fs-varying-array.asm @@ -0,0 +1,77 @@ +; options: +ir3/ir3_cmdline.c:168:reset_variant: error: new compiler failed, trying without copy propagation! +ir3/ir3_cmdline.c:168:reset_variant: error: new compiler failed, trying fallback! + +; FRAG: old compiler +@in(r1.x) in0 +@in(r1.y) in0 +@in(r1.z) in0 +@in(r1.w) in0 +@in(r2.x) in1 +@in(r2.y) in1 +@in(r2.z) in1 +@in(r2.w) in1 +@in(r3.x) in2 +@in(r3.y) in2 +@in(r3.z) in2 +@in(r3.w) in2 +@in(r4.x) in3 +@in(r4.y) in3 +@in(r4.z) in3 +@in(r4.w) in3 +@out(r5.x) out0 +@out(r5.y) out0 +@out(r5.z) out0 +@out(r5.w) out0 +(sy)(ss)bary.f r1.x, 0, r0.x +bary.f r1.y, 1, r0.x +bary.f r1.z, 2, r0.x +bary.f r1.w, 3, r0.x +bary.f r2.x, 4, r0.x +bary.f r2.y, 5, r0.x +bary.f r2.z, 6, r0.x +bary.f r2.w, 7, r0.x +bary.f r3.x, 8, r0.x +bary.f r3.y, 9, r0.x +bary.f r3.z, 10, r0.x +bary.f r3.w, 11, r0.x +bary.f r4.x, 12, r0.x +bary.f r4.y, 13, r0.x +bary.f r4.z, 14, r0.x +bary.f (ei)r4.w, 15, r0.x +nop +nop +nop +nop +nop +nop +cov.f32s16 hr6.x, c0.x +nop +nop +nop +shl.b hr6.x, hr6.x, 2 +nop +nop +nop +mova a0.x, hr6.x +nop +nop +nop +nop +nop +nop +mov.f32f32 r6.x, r<a0.x + 4> +mov.f32f32 r6.y, r<a0.x + 5> +mov.f32f32 r6.z, r<a0.x + 6> +(ul)mov.f32f32 r6.w, r<a0.x + 7> +mov.f32f32 r5.x, r6.x +mov.f32f32 r5.y, r6.y +mov.f32f32 r5.z, r6.z +mov.f32f32 r5.w, r6.w +end +nop +nop +; FRAG: outputs: r5.x (1:0) +; FRAG: inputs: r1.x (5:9,cm=f,il=8,b=1) r2.x (5:10,cm=f,il=12,b=1) r3.x (5:11,cm=f,il=16,b=1) r4.x (5:12,cm=f,il=20,b=1) +; FRAG: 46 instructions, 7 half, 7 full + diff --git a/reference/piglit-tex-miplevel-selection-1d-shadow.asm b/reference/piglit-tex-miplevel-selection-1d-shadow.asm new file mode 100644 index 0000000..73d2804 --- /dev/null +++ b/reference/piglit-tex-miplevel-selection-1d-shadow.asm @@ -0,0 +1,40 @@ +; options: +; FRAG: new compiler +@in(r0.x) in0 +@in(r0.y) in1 +@out(r1.x) out0 +@out(r1.y) out1 +@out(r1.z) out2 +@out(r1.w) out3 +(sy)(ss)bary.f r0.z, 0, r0.x +bary.f (ei)r0.x, 2, r0.x +mov.f32f32 r2.z, (0.000000) +mov.f32f32 r2.y, c3.x +add.f r2.w, r0.z, c4.x +add.f r3.y, r0.x, c4.y +mov.f32f32 r3.x, (0.500000) +mov.f32f32 r3.z, (0.000000) +mov.f32f32 r3.w, c2.x +mov.f32f32 r4.x, (0.000000) +mov.f32f32 r4.y, c3.x +mov.f32f32 r4.z, (0.000000) +add.f r0.w, r0.z, c4.z +add.f r1.y, r0.x, c4.w +mov.f32f32 r1.x, (0.500000) +mov.f32f32 r1.z, (0.000000) +mov.f32f32 r1.w, c2.x +mov.f32f32 r2.x, (0.000000) +samgq.s (f32)(xyzw)r2.w, r2.w, s#0, t#0 +(rpt5)nop +samgq.s (f32)(xyzw)r0.x, r0.w, s#1, t#1 +(sy)(ss)mul.f r1.w, r3.z, r0.w +mul.f r1.z, r3.y, r0.z +mul.f r1.y, r3.x, r0.y +mul.f r1.x, r2.w, r0.x +end +nop +nop +; FRAG: outputs: r1.x (1:0) +; FRAG: inputs: r0.x (5:0,cm=f,il=8,b=1) +; FRAG: 31 instructions, 0 half, 5 full + diff --git a/reference/piglit-vs-temp-array-mat3-index-col-rd.asm b/reference/piglit-vs-temp-array-mat3-index-col-rd.asm new file mode 100644 index 0000000..213c70d --- /dev/null +++ b/reference/piglit-vs-temp-array-mat3-index-col-rd.asm @@ -0,0 +1,202 @@ +; options: +; VERT: old compiler +@in(r0.x) in0 +@in(r0.y) in1 +@in(r0.z) in2 +@in(r0.w) in3 +@out(r1.x) out0 +@out(r1.y) out1 +@out(r1.z) out2 +@out(r1.w) out3 +@out(r2.x) out4 +@out(r2.y) out5 +@out(r2.z) out6 +@out(r2.w) out7 +(sy)(ss)mul.f r3.x, c3.x, r0.x +mul.f r3.y, c3.y, r0.x +mul.f r3.z, c3.z, r0.x +mul.f r3.w, c3.w, r0.x +mad.f32 r3.x, c4.x, r0.y, r3.x +mad.f32 r3.y, c4.y, r0.y, r3.y +mad.f32 r3.z, c4.z, r0.y, r3.z +mad.f32 r3.w, c4.w, r0.y, r3.w +mad.f32 r3.x, c5.x, r0.z, r3.x +mad.f32 r3.y, c5.y, r0.z, r3.y +mad.f32 r3.z, c5.z, r0.z, r3.z +mad.f32 r3.w, c5.w, r0.z, r3.w +mad.f32 r3.x, c6.x, r0.w, r3.x +mad.f32 r3.y, c6.y, r0.w, r3.y +mad.f32 r3.z, c6.z, r0.w, r3.z +mad.f32 r3.w, c6.w, r0.w, r3.w +mov.f32f32 r4.x, c7.x +mov.f32f32 r4.y, c7.y +mov.f32f32 r4.z, c7.z +mov.f32f32 r4.w, c7.x +mov.f32f32 r5.x, c8.x +mov.f32f32 r5.y, c8.y +mov.f32f32 r5.z, c8.z +mov.f32f32 r5.w, c8.x +mov.f32f32 r6.x, c9.x +mov.f32f32 r6.y, c9.y +mov.f32f32 r6.z, c9.z +mov.f32f32 r6.w, c9.x +mov.f32f32 r7.x, r4.x +mov.f32f32 r7.y, r4.y +mov.f32f32 r7.z, r4.z +mov.f32f32 r7.w, r4.z +mov.f32f32 r8.x, r5.x +mov.f32f32 r8.y, r5.y +mov.f32f32 r8.z, r5.z +mov.f32f32 r8.w, r5.z +mov.f32f32 r9.x, r6.x +mov.f32f32 r9.y, r6.y +mov.f32f32 r9.z, r6.z +mov.f32f32 r9.w, r6.z +mov.f32f32 r16.x, c10.x +mov.f32f32 r16.y, c10.y +mov.f32f32 r16.z, c10.z +mov.f32f32 r16.w, c10.x +mov.f32f32 r17.x, c11.x +mov.f32f32 r17.y, c11.y +mov.f32f32 r17.z, c11.z +mov.f32f32 r17.w, c11.x +mov.f32f32 r18.x, c12.x +mov.f32f32 r18.y, c12.y +mov.f32f32 r18.z, c12.z +mov.f32f32 r18.w, c12.x +mov.f32f32 r10.x, r16.x +mov.f32f32 r10.y, r16.y +mov.f32f32 r10.z, r16.z +mov.f32f32 r10.w, r16.z +mov.f32f32 r11.x, r17.x +mov.f32f32 r11.y, r17.y +mov.f32f32 r11.z, r17.z +mov.f32f32 r11.w, r17.z +mov.f32f32 r12.x, r18.x +mov.f32f32 r12.y, r18.y +mov.f32f32 r12.z, r18.z +mov.f32f32 r12.w, r18.z +mov.f32f32 r19.x, c13.x +mov.f32f32 r19.y, c13.y +mov.f32f32 r19.z, c13.z +mov.f32f32 r19.w, c13.x +mov.f32f32 r20.x, c14.x +mov.f32f32 r20.y, c14.y +mov.f32f32 r20.z, c14.z +mov.f32f32 r20.w, c14.x +mov.f32f32 r21.x, c15.x +mov.f32f32 r21.y, c15.y +mov.f32f32 r21.z, c15.z +mov.f32f32 r21.w, c15.x +mov.f32f32 r13.x, r19.x +mov.f32f32 r13.y, r19.y +mov.f32f32 r13.z, r19.z +mov.f32f32 r13.w, r19.z +mov.f32f32 r14.x, r20.x +mov.f32f32 r14.y, r20.y +mov.f32f32 r14.z, r20.z +mov.f32f32 r14.w, r20.z +mov.f32f32 r15.x, r21.x +mov.f32f32 r15.y, r21.y +mov.f32f32 r15.z, r21.z +mov.f32f32 r15.w, r21.z +mov.f32f32 r25.x, c0.x +mov.f32f32 r25.y, c0.x +mov.f32f32 r25.z, c0.x +mov.f32f32 r25.w, c0.x +mul.f r22.x, r25.x, c7.z +nop +nop +nop +add.f r25.x, c1.x, r22.x +nop +nop +nop +mov.f32f32 r22.x, r25.x +nop +nop +nop +cov.f32s16 hr3.x, r22.x +nop +nop +nop +shl.b hr3.x, hr3.x, 2 +nop +nop +nop +mova a0.x, hr3.x +nop +nop +nop +nop +nop +nop +cmps.f.eq r25.x, c2.x, r<a0.x + 28> +cmps.f.eq r25.y, c2.y, r<a0.x + 29> +cmps.f.eq r25.z, c2.z, r<a0.x + 30> +(ul)cmps.f.eq r25.w, c2.z, r<a0.x + 30> +add.s r25.x, r25.x, -1 +add.s r25.y, r25.y, -1 +add.s r25.z, r25.z, -1 +add.s r25.w, r25.w, -1 +sel.f32 r23.x, c7.w, r25.x, c7.x +sel.f32 r23.y, c7.w, r25.y, c7.x +sel.f32 r23.z, c7.w, r25.z, c7.x +sel.f32 r23.w, c7.w, r25.w, c7.x +mul.f r24.x, r23.x, r23.x +nop +nop +nop +mad.f32 r25.x, r23.y, r23.y, r24.x +nop +nop +nop +mov.f32f32 r24.x, r25.x +nop +nop +nop +mad.f32 r22.x, r23.z, r23.z, r24.x +nop +nop +nop +cmps.f.ge r26.x, (neg)r22.x, c7.w +cmps.f.ge r26.y, (neg)r22.x, c7.w +cmps.f.ge r26.z, (neg)r22.x, c7.w +cmps.f.ge r26.w, (neg)r22.x, c7.w +cov.u32f32 r25.x, r26.x +nop +nop +nop +mov.f32f32 r22.x, r25.x +nop +nop +nop +cmps.f.eq p0.x, r22.x, c7.w +br p0.x, #6 +mov.f32f32 r22.x, c7.w +mov.f32f32 r22.y, c7.x +mov.f32f32 r22.z, c7.w +mov.f32f32 r22.w, c7.x +jump #6 +(jp)nop +mov.f32f32 r22.x, c7.x +mov.f32f32 r22.y, c7.w +mov.f32f32 r22.z, c7.w +mov.f32f32 r22.w, c7.x +(jp)nop +mov.f32f32 r2.x, r22.x +mov.f32f32 r2.y, r22.y +mov.f32f32 r2.z, r22.z +mov.f32f32 r2.w, r22.w +mov.f32f32 r1.x, r3.x +mov.f32f32 r1.y, r3.y +mov.f32f32 r1.z, r3.z +mov.f32f32 r1.w, r3.w +end +nop +nop +nop +; VERT: outputs: r1.x (0:0) r2.x (5:9) +; VERT: inputs: r0.x (0:0,cm=f,il=8,b=1) +; VERT: 181 instructions, 4 half, 27 full + diff --git a/reference/piglit-vs-varying-array-mat2-index-rd.asm b/reference/piglit-vs-varying-array-mat2-index-rd.asm new file mode 100644 index 0000000..46ff3a2 --- /dev/null +++ b/reference/piglit-vs-varying-array-mat2-index-rd.asm @@ -0,0 +1,213 @@ +; options: +ir3/ir3_cmdline.c:168:reset_variant: error: new compiler failed, trying without copy propagation! +ir3/ir3_cmdline.c:168:reset_variant: error: new compiler failed, trying fallback! + +; VERT: old compiler +@in(r0.x) in0 +@in(r0.y) in0 +@in(r0.z) in0 +@in(r0.w) in0 +@out(r1.x) out0 +@out(r1.y) out0 +@out(r1.z) out0 +@out(r1.w) out0 +@out(r2.x) out1 +@out(r2.y) out1 +@out(r2.z) out1 +@out(r2.w) out1 +@out(r3.x) out2 +@out(r3.y) out2 +@out(r3.z) out2 +@out(r3.w) out2 +@out(r4.x) out3 +@out(r4.y) out3 +@out(r4.z) out3 +@out(r4.w) out3 +@out(r5.x) out4 +@out(r5.y) out4 +@out(r5.z) out4 +@out(r5.w) out4 +(sy)(ss)mul.f r6.x, c2.x, r0.x +mul.f r6.y, c2.y, r0.x +mul.f r6.z, c2.z, r0.x +mul.f r6.w, c2.w, r0.x +mad.f32 r6.x, c3.x, r0.y, r6.x +mad.f32 r6.y, c3.y, r0.y, r6.y +mad.f32 r6.z, c3.z, r0.y, r6.z +mad.f32 r6.w, c3.w, r0.y, r6.w +mad.f32 r6.x, c4.x, r0.z, r6.x +mad.f32 r6.y, c4.y, r0.z, r6.y +mad.f32 r6.z, c4.z, r0.z, r6.z +mad.f32 r6.w, c4.w, r0.z, r6.w +mad.f32 r6.x, c5.x, r0.w, r6.x +mad.f32 r6.y, c5.y, r0.w, r6.y +mad.f32 r6.z, c5.z, r0.w, r6.z +mad.f32 r6.w, c5.w, r0.w, r6.w +mov.f32f32 r7.x, c6.x +mov.f32f32 r7.y, c6.y +mov.f32f32 r7.z, c6.x +mov.f32f32 r7.w, c6.x +mov.f32f32 r8.x, c6.z +mov.f32f32 r8.y, c6.w +mov.f32f32 r8.z, c6.z +mov.f32f32 r8.w, c6.z +mov.f32f32 r9.x, r7.x +mov.f32f32 r9.y, r7.y +mov.f32f32 r9.z, r7.y +mov.f32f32 r9.w, r7.y +mov.f32f32 r10.x, r8.x +mov.f32f32 r10.y, r8.y +mov.f32f32 r10.z, r8.y +mov.f32f32 r10.w, r8.y +mov.f32f32 r15.x, c7.x +mov.f32f32 r15.y, c7.y +mov.f32f32 r15.z, c7.x +mov.f32f32 r15.w, c7.x +mov.f32f32 r16.x, c7.z +mov.f32f32 r16.y, c7.w +mov.f32f32 r16.z, c7.z +mov.f32f32 r16.w, c7.z +mov.f32f32 r11.x, r15.x +mov.f32f32 r11.y, r15.y +mov.f32f32 r11.z, r15.y +mov.f32f32 r11.w, r15.y +mov.f32f32 r12.x, r16.x +mov.f32f32 r12.y, r16.y +mov.f32f32 r12.z, r16.y +mov.f32f32 r12.w, r16.y +mov.f32f32 r17.x, c8.x +mov.f32f32 r17.y, c8.y +mov.f32f32 r17.z, c8.x +mov.f32f32 r17.w, c8.x +mov.f32f32 r18.x, c8.z +mov.f32f32 r18.y, c8.w +mov.f32f32 r18.z, c8.z +mov.f32f32 r18.w, c8.z +mov.f32f32 r13.x, r17.x +mov.f32f32 r13.y, r17.y +mov.f32f32 r13.z, r17.y +mov.f32f32 r13.w, r17.y +mov.f32f32 r14.x, r18.x +mov.f32f32 r14.y, r18.y +mov.f32f32 r14.z, r18.y +mov.f32f32 r14.w, r18.y +mov.f32f32 r24.x, c0.x +mov.f32f32 r24.y, c0.x +mov.f32f32 r24.z, c0.x +mov.f32f32 r24.w, c0.x +mul.f r19.x, r24.x, c6.y +nop +nop +nop +cov.f32s16 hr6.x, r19.x +nop +nop +nop +shl.b hr6.x, hr6.x, 2 +nop +nop +nop +mova a0.x, hr6.x +nop +nop +nop +nop +nop +nop +cmps.f.eq r24.x, c1.x, r<a0.x + 40> +cmps.f.eq r24.y, c1.y, r<a0.x + 41> +cmps.f.eq r24.z, c1.y, r<a0.x + 41> +(ul)cmps.f.eq r24.w, c1.y, r<a0.x + 41> +add.s r24.x, r24.x, -1 +add.s r24.y, r24.y, -1 +add.s r24.z, r24.z, -1 +add.s r24.w, r24.w, -1 +sel.f32 r20.x, c9.x, r24.x, c6.x +sel.f32 r20.y, c9.x, r24.y, c6.x +sel.f32 r20.z, c9.x, r24.z, c6.x +sel.f32 r20.w, c9.x, r24.w, c6.x +mul.f r23.x, r20.x, r20.x +nop +nop +nop +mad.f32 r19.x, r20.y, r20.y, r23.x +nop +nop +nop +cmps.f.ge r25.x, (neg)r19.x, c9.x +cmps.f.ge r25.y, (neg)r19.x, c9.x +cmps.f.ge r25.z, (neg)r19.x, c9.x +cmps.f.ge r25.w, (neg)r19.x, c9.x +cov.u32f32 r24.x, r25.x +nop +nop +nop +mov.f32f32 r19.x, r24.x +nop +nop +nop +cmps.f.eq p0.x, r19.x, c9.x +br p0.x, #6 +mov.f32f32 r19.x, c9.x +mov.f32f32 r19.y, c9.y +mov.f32f32 r19.z, c9.x +mov.f32f32 r19.w, c9.y +jump #6 +(jp)nop +mov.f32f32 r19.x, c9.y +mov.f32f32 r19.y, c9.x +mov.f32f32 r19.z, c9.x +mov.f32f32 r19.w, c9.y +(jp)nop +mov.f32f32 r20.x, r9.x +mov.f32f32 r20.y, r9.y +nop +nop +nop +nop +mov.f32f32 r20.z, r10.x +mov.f32f32 r20.w, r10.y +mov.f32f32 r21.x, r11.x +mov.f32f32 r21.y, r11.y +nop +nop +nop +nop +mov.f32f32 r21.z, r12.x +mov.f32f32 r21.w, r12.y +mov.f32f32 r22.x, r13.x +mov.f32f32 r22.y, r13.y +nop +nop +nop +nop +mov.f32f32 r22.z, r14.x +mov.f32f32 r22.w, r14.y +mov.f32f32 r4.x, r21.x +mov.f32f32 r4.y, r21.y +mov.f32f32 r4.z, r21.z +mov.f32f32 r4.w, r21.w +mov.f32f32 r5.x, r22.x +mov.f32f32 r5.y, r22.y +mov.f32f32 r5.z, r22.z +mov.f32f32 r5.w, r22.w +mov.f32f32 r2.x, r19.x +mov.f32f32 r2.y, r19.y +mov.f32f32 r2.z, r19.z +mov.f32f32 r2.w, r19.w +mov.f32f32 r1.x, r6.x +mov.f32f32 r1.y, r6.y +mov.f32f32 r1.z, r6.z +mov.f32f32 r1.w, r6.w +mov.f32f32 r3.x, r20.x +mov.f32f32 r3.y, r20.y +mov.f32f32 r3.z, r20.z +mov.f32f32 r3.w, r20.w +end +nop +nop +nop +; VERT: outputs: r1.x (0:0) r2.x (5:9) r3.x (5:10) r4.x (5:11) r5.x (5:12) +; VERT: inputs: r0.x (0:0,cm=f,il=8,b=1) +; VERT: 177 instructions, 7 half, 26 full + diff --git a/reference/piglit-vs-varying-array-mat4-index-rd.asm b/reference/piglit-vs-varying-array-mat4-index-rd.asm new file mode 100644 index 0000000..0242f7f --- /dev/null +++ b/reference/piglit-vs-varying-array-mat4-index-rd.asm @@ -0,0 +1,325 @@ +; options: +ir3/ir3_cmdline.c:168:reset_variant: error: new compiler failed, trying without copy propagation! +ir3/ir3_cmdline.c:168:reset_variant: error: new compiler failed, trying fallback! + +; VERT: old compiler +@in(r0.x) in0 +@in(r0.y) in0 +@in(r0.z) in0 +@in(r0.w) in0 +@out(r1.x) out0 +@out(r1.y) out0 +@out(r1.z) out0 +@out(r1.w) out0 +@out(r2.x) out1 +@out(r2.y) out1 +@out(r2.z) out1 +@out(r2.w) out1 +@out(r3.x) out2 +@out(r3.y) out2 +@out(r3.z) out2 +@out(r3.w) out2 +@out(r4.x) out3 +@out(r4.y) out3 +@out(r4.z) out3 +@out(r4.w) out3 +@out(r5.x) out4 +@out(r5.y) out4 +@out(r5.z) out4 +@out(r5.w) out4 +@out(r6.x) out5 +@out(r6.y) out5 +@out(r6.z) out5 +@out(r6.w) out5 +@out(r7.x) out6 +@out(r7.y) out6 +@out(r7.z) out6 +@out(r7.w) out6 +@out(r8.x) out7 +@out(r8.y) out7 +@out(r8.z) out7 +@out(r8.w) out7 +@out(r9.x) out8 +@out(r9.y) out8 +@out(r9.z) out8 +@out(r9.w) out8 +@out(r10.x) out9 +@out(r10.y) out9 +@out(r10.z) out9 +@out(r10.w) out9 +@out(r11.x) out10 +@out(r11.y) out10 +@out(r11.z) out10 +@out(r11.w) out10 +@out(r12.x) out11 +@out(r12.y) out11 +@out(r12.z) out11 +@out(r12.w) out11 +@out(r13.x) out12 +@out(r13.y) out12 +@out(r13.z) out12 +@out(r13.w) out12 +@out(r14.x) out13 +@out(r14.y) out13 +@out(r14.z) out13 +@out(r14.w) out13 +(sy)(ss)mul.f r15.x, c2.x, r0.x +mul.f r15.y, c2.y, r0.x +mul.f r15.z, c2.z, r0.x +mul.f r15.w, c2.w, r0.x +mad.f32 r15.x, c3.x, r0.y, r15.x +mad.f32 r15.y, c3.y, r0.y, r15.y +mad.f32 r15.z, c3.z, r0.y, r15.z +mad.f32 r15.w, c3.w, r0.y, r15.w +mad.f32 r15.x, c4.x, r0.z, r15.x +mad.f32 r15.y, c4.y, r0.z, r15.y +mad.f32 r15.z, c4.z, r0.z, r15.z +mad.f32 r15.w, c4.w, r0.z, r15.w +mad.f32 r15.x, c5.x, r0.w, r15.x +mad.f32 r15.y, c5.y, r0.w, r15.y +mad.f32 r15.z, c5.z, r0.w, r15.z +mad.f32 r15.w, c5.w, r0.w, r15.w +mov.f32f32 r16.x, c6.x +mov.f32f32 r16.y, c6.y +mov.f32f32 r16.z, c6.z +mov.f32f32 r16.w, c6.w +mov.f32f32 r17.x, c7.x +mov.f32f32 r17.y, c7.y +mov.f32f32 r17.z, c7.z +mov.f32f32 r17.w, c7.w +mov.f32f32 r18.x, c8.x +mov.f32f32 r18.y, c8.y +mov.f32f32 r18.z, c8.z +mov.f32f32 r18.w, c8.w +mov.f32f32 r19.x, c9.x +mov.f32f32 r19.y, c9.y +mov.f32f32 r19.z, c9.z +mov.f32f32 r19.w, c9.w +mov.f32f32 r20.x, r16.x +mov.f32f32 r20.y, r16.y +mov.f32f32 r20.z, r16.z +mov.f32f32 r20.w, r16.w +mov.f32f32 r21.x, r17.x +mov.f32f32 r21.y, r17.y +mov.f32f32 r21.z, r17.z +mov.f32f32 r21.w, r17.w +mov.f32f32 r22.x, r18.x +mov.f32f32 r22.y, r18.y +mov.f32f32 r22.z, r18.z +mov.f32f32 r22.w, r18.w +mov.f32f32 r23.x, r19.x +mov.f32f32 r23.y, r19.y +mov.f32f32 r23.z, r19.z +mov.f32f32 r23.w, r19.w +mov.f32f32 r32.x, c10.x +mov.f32f32 r32.y, c10.y +mov.f32f32 r32.z, c10.z +mov.f32f32 r32.w, c10.w +mov.f32f32 r33.x, c11.x +mov.f32f32 r33.y, c11.y +mov.f32f32 r33.z, c11.z +mov.f32f32 r33.w, c11.w +mov.f32f32 r34.x, c12.x +mov.f32f32 r34.y, c12.y +mov.f32f32 r34.z, c12.z +mov.f32f32 r34.w, c12.w +mov.f32f32 r35.x, c13.x +mov.f32f32 r35.y, c13.y +mov.f32f32 r35.z, c13.z +mov.f32f32 r35.w, c13.w +mov.f32f32 r24.x, r32.x +mov.f32f32 r24.y, r32.y +mov.f32f32 r24.z, r32.z +mov.f32f32 r24.w, r32.w +mov.f32f32 r25.x, r33.x +mov.f32f32 r25.y, r33.y +mov.f32f32 r25.z, r33.z +mov.f32f32 r25.w, r33.w +mov.f32f32 r26.x, r34.x +mov.f32f32 r26.y, r34.y +mov.f32f32 r26.z, r34.z +mov.f32f32 r26.w, r34.w +mov.f32f32 r27.x, r35.x +mov.f32f32 r27.y, r35.y +mov.f32f32 r27.z, r35.z +mov.f32f32 r27.w, r35.w +mov.f32f32 r36.x, c14.x +mov.f32f32 r36.y, c14.y +mov.f32f32 r36.z, c14.z +mov.f32f32 r36.w, c14.w +mov.f32f32 r37.x, c15.x +mov.f32f32 r37.y, c15.y +mov.f32f32 r37.z, c15.z +mov.f32f32 r37.w, c15.w +mov.f32f32 r38.x, c16.x +mov.f32f32 r38.y, c16.y +mov.f32f32 r38.z, c16.z +mov.f32f32 r38.w, c16.w +mov.f32f32 r39.x, c17.x +mov.f32f32 r39.y, c17.y +mov.f32f32 r39.z, c17.z +mov.f32f32 r39.w, c17.w +mov.f32f32 r28.x, r36.x +mov.f32f32 r28.y, r36.y +mov.f32f32 r28.z, r36.z +mov.f32f32 r28.w, r36.w +mov.f32f32 r29.x, r37.x +mov.f32f32 r29.y, r37.y +mov.f32f32 r29.z, r37.z +mov.f32f32 r29.w, r37.w +mov.f32f32 r30.x, r38.x +mov.f32f32 r30.y, r38.y +mov.f32f32 r30.z, r38.z +mov.f32f32 r30.w, r38.w +mov.f32f32 r31.x, r39.x +mov.f32f32 r31.y, r39.y +mov.f32f32 r31.z, r39.z +mov.f32f32 r31.w, r39.w +mov.f32f32 r43.x, c0.x +mov.f32f32 r43.y, c0.x +mov.f32f32 r43.z, c0.x +mov.f32f32 r43.w, c0.x +mul.f r40.x, r43.x, c6.w +nop +nop +nop +cov.f32s16 hr15.x, r40.x +nop +nop +nop +shl.b hr15.x, hr15.x, 2 +nop +nop +nop +mova a0.x, hr15.x +nop +nop +nop +nop +nop +nop +cmps.f.eq r43.x, c1.x, r<a0.x + 84> +cmps.f.eq r43.y, c1.y, r<a0.x + 85> +cmps.f.eq r43.z, c1.z, r<a0.x + 86> +(ul)cmps.f.eq r43.w, c1.w, r<a0.x + 87> +add.s r43.x, r43.x, -1 +add.s r43.y, r43.y, -1 +add.s r43.z, r43.z, -1 +add.s r43.w, r43.w, -1 +sel.f32 r41.x, c18.x, r43.x, c6.x +sel.f32 r41.y, c18.x, r43.y, c6.x +sel.f32 r41.z, c18.x, r43.z, c6.x +sel.f32 r41.w, c18.x, r43.w, c6.x +mul.f r42.x, r41.x, r41.x +nop +nop +nop +mad.f32 r43.x, r41.y, r41.y, r42.x +nop +nop +nop +mov.f32f32 r42.x, r43.x +nop +nop +nop +mad.f32 r43.x, r41.z, r41.z, r42.x +nop +nop +nop +mov.f32f32 r42.x, r43.x +nop +nop +nop +mad.f32 r40.x, r41.w, r41.w, r42.x +nop +nop +nop +cmps.f.ge r44.x, (neg)r40.x, c18.x +cmps.f.ge r44.y, (neg)r40.x, c18.x +cmps.f.ge r44.z, (neg)r40.x, c18.x +cmps.f.ge r44.w, (neg)r40.x, c18.x +cov.u32f32 r43.x, r44.x +nop +nop +nop +mov.f32f32 r40.x, r43.x +nop +nop +nop +cmps.f.eq p0.x, r40.x, c18.x +br p0.x, #6 +mov.f32f32 r40.x, c18.x +mov.f32f32 r40.y, c18.y +mov.f32f32 r40.z, c18.x +mov.f32f32 r40.w, c18.y +jump #6 +(jp)nop +mov.f32f32 r40.x, c18.y +mov.f32f32 r40.y, c18.x +mov.f32f32 r40.z, c18.x +mov.f32f32 r40.w, c18.y +(jp)nop +mov.f32f32 r3.x, r20.x +mov.f32f32 r3.y, r20.y +mov.f32f32 r3.z, r20.z +mov.f32f32 r3.w, r20.w +mov.f32f32 r4.x, r21.x +mov.f32f32 r4.y, r21.y +mov.f32f32 r4.z, r21.z +mov.f32f32 r4.w, r21.w +mov.f32f32 r5.x, r22.x +mov.f32f32 r5.y, r22.y +mov.f32f32 r5.z, r22.z +mov.f32f32 r5.w, r22.w +mov.f32f32 r6.x, r23.x +mov.f32f32 r6.y, r23.y +mov.f32f32 r6.z, r23.z +mov.f32f32 r6.w, r23.w +mov.f32f32 r7.x, r24.x +mov.f32f32 r7.y, r24.y +mov.f32f32 r7.z, r24.z +mov.f32f32 r7.w, r24.w +mov.f32f32 r8.x, r25.x +mov.f32f32 r8.y, r25.y +mov.f32f32 r8.z, r25.z +mov.f32f32 r8.w, r25.w +mov.f32f32 r9.x, r26.x +mov.f32f32 r9.y, r26.y +mov.f32f32 r9.z, r26.z +mov.f32f32 r9.w, r26.w +mov.f32f32 r10.x, r27.x +mov.f32f32 r10.y, r27.y +mov.f32f32 r10.z, r27.z +mov.f32f32 r10.w, r27.w +mov.f32f32 r11.x, r28.x +mov.f32f32 r11.y, r28.y +mov.f32f32 r11.z, r28.z +mov.f32f32 r11.w, r28.w +mov.f32f32 r12.x, r29.x +mov.f32f32 r12.y, r29.y +mov.f32f32 r12.z, r29.z +mov.f32f32 r12.w, r29.w +mov.f32f32 r13.x, r30.x +mov.f32f32 r13.y, r30.y +mov.f32f32 r13.z, r30.z +mov.f32f32 r13.w, r30.w +mov.f32f32 r14.x, r31.x +mov.f32f32 r14.y, r31.y +mov.f32f32 r14.z, r31.z +mov.f32f32 r14.w, r31.w +mov.f32f32 r2.x, r40.x +mov.f32f32 r2.y, r40.y +mov.f32f32 r2.z, r40.z +mov.f32f32 r2.w, r40.w +mov.f32f32 r1.x, r15.x +mov.f32f32 r1.y, r15.y +mov.f32f32 r1.z, r15.z +mov.f32f32 r1.w, r15.w +end +nop +nop +nop +; VERT: outputs: r1.x (0:0) r2.x (5:9) r3.x (5:10) r4.x (5:11) r5.x (5:12) r6.x (5:13) r7.x (5:14) r8.x (5:15) r9.x (5:16) r10.x (5:17) r11.x (5:18) r12.x (5:19) r13.x (5:20) r14.x (5:21) +; VERT: inputs: r0.x (0:0,cm=f,il=8,b=1) +; VERT: 253 instructions, 16 half, 45 full + |