From 4f31c9e16b58eeb1e914d58a4e92b8adc6529450 Mon Sep 17 00:00:00 2001 From: Andrew Opalach Date: Mon, 6 Apr 2026 15:27:06 -0400 Subject: Cleanup volume upsample stuff Signed-off-by: Andrew Opalach --- Shaders/volume_upsample2.diff | 185 ++---------------------------------------- 1 file changed, 7 insertions(+), 178 deletions(-) (limited to 'Shaders/volume_upsample2.diff') diff --git a/Shaders/volume_upsample2.diff b/Shaders/volume_upsample2.diff index 0887f10..41928bb 100644 --- a/Shaders/volume_upsample2.diff +++ b/Shaders/volume_upsample2.diff @@ -1,10 +1,9 @@ ---- a/volume_upsample2.asm 2026-03-16 15:19:50.820204181 -0400 -+++ b/volume_upsample2.asm 2026-03-16 15:19:31.707007465 -0400 -@@ -254,103 +182,92 @@ - else +--- a/volume_upsample2.asm 2026-04-06 14:22:43.005055900 -0400 ++++ b/volume_upsample2.asm 2026-04-06 14:10:43.900118100 -0400 +@@ -255,14 +255,9 @@ mov r0.w, l(0) endif --if_nz r0.w + if_nz r0.w - utof r1.xy, r2.xyxx - mul r1.xy, r1.xyxx, cb3[2].zwzz - mul r1.xy, r1.xyxx, cb1[4].zzzz @@ -13,179 +12,9 @@ - min r1.xy, r1.zwzz, r1.xyxx - sample_l_indexable(texture2d)(float,float,float,float) r3.xyz, r1.xyxx, t1.xyzw, s0, l(0.000000) - sample_l_indexable(texture2d)(float,float,float,float) r1.xyz, r1.xyxx, t2.xyzw, s0, l(0.000000) -+if_nz r0.z -+ iadd r0.xy, -r0.xyxx, r2.yxyy -+ mov r4.xy, vThreadID.xyxx -+ mov r4.zw, l(0,0,0,0) -+ ld_indexable(texture2d)(float,float,float,float) r0.z, r4.xyzw, t0.yzxw -+ not r4.xy, r0.xyxx -+ imad r0.y, r4.x, l(-9), r0.y -+ imad r0.w, r4.x, l(-9), -r4.y -+ ishl r0.w, r0.w, l(8) -+ or r0.w, r0.w, r0.y -+ imad r0.x, r0.x, l(9), -r4.y -+ ishl r0.xy, r0.xyxx, l(16, 24, 0, 0) -+ or r0.x, r0.x, r0.w -+ or r0.x, r0.y, r0.x -+ bfi r0.y, l(1), l(1), vThreadIDInGroup.y, l(0) -+ bfi r0.y, l(1), l(0), vThreadIDInGroup.x, r0.y -+ and r0.w, r0.x, l(255) -+ ld_structured r1.w, r0.w, l(0), g0.xxxx -+ add r1.w, r0.z, -r1.w -+ add r1.w, |r1.w|, l(1.192092896E-07) -+ iadd r3.w, -r1.w, l(0x7ef312ac) -+ mad r4.x, -r3.w, r1.w, l(2.000000) -+ mul r3.w, r3.w, r4.x -+ mad r1.w, -r3.w, r1.w, l(2.000000) -+ mul r1.w, r1.w, r3.w -+ mul r3.w, r1.w, icb[r0.y + 0].x -+ ld_structured r4.xyz, r0.w, l(0), g1.xyzx -+ ld_structured r5.xyz, r0.w, l(0), g2.xyzx -+ mad r0.w, r1.w, icb[r0.y + 0].x, l(1.192092896E-07) -+ ubfe r6.xy, l(8, 8, 0, 0), l(8, 16, 0, 0), r0.xxxx -+ ld_structured r1.w, r6.x, l(0), g0.xxxx -+ add r1.w, r0.z, -r1.w -+ add r1.w, |r1.w|, l(1.192092896E-07) -+ iadd r4.w, -r1.w, l(0x7ef312ac) -+ mad r5.w, -r4.w, r1.w, l(2.000000) -+ mul r4.w, r4.w, r5.w -+ mad r1.w, -r4.w, r1.w, l(2.000000) -+ mul r1.w, r1.w, r4.w -+ mul r4.w, r1.w, icb[r0.y + 0].y -+ ld_structured r7.xyz, r6.x, l(0), g1.xyzx -+ mul r7.xyz, r4.wwww, r7.xyzx -+ mad r4.xyz, r4.xyzx, r3.wwww, r7.xyzx -+ ld_structured r6.xzw, r6.x, l(0), g2.xxyz -+ mul r6.xzw, r4.wwww, r6.xxzw -+ mad r5.xyz, r5.xyzx, r3.wwww, r6.xzwx -+ mad r0.w, r1.w, icb[r0.y + 0].y, r0.w -+ ld_structured r1.w, r6.y, l(0), g0.xxxx -+ add r1.w, r0.z, -r1.w -+ add r1.w, |r1.w|, l(1.192092896E-07) -+ iadd r3.w, -r1.w, l(0x7ef312ac) -+ mad r4.w, -r3.w, r1.w, l(2.000000) -+ mul r3.w, r3.w, r4.w -+ mad r1.w, -r3.w, r1.w, l(2.000000) -+ mul r1.w, r1.w, r3.w -+ mul r3.w, r1.w, icb[r0.y + 0].z -+ ld_structured r6.xzw, r6.y, l(0), g1.xxyz -+ mad r4.xyz, r6.xzwx, r3.wwww, r4.xyzx -+ ld_structured r6.xyz, r6.y, l(0), g2.xyzx -+ mad r5.xyz, r6.xyzx, r3.wwww, r5.xyzx -+ mad r0.w, r1.w, icb[r0.y + 0].z, r0.w -+ ushr r0.x, r0.x, l(24) -+ ld_structured r1.w, r0.x, l(0), g0.xxxx -+ add r0.z, r0.z, -r1.w -+ add r0.z, |r0.z|, l(1.192092896E-07) -+ iadd r1.w, -r0.z, l(0x7ef312ac) -+ mad r3.w, -r1.w, r0.z, l(2.000000) -+ mul r1.w, r1.w, r3.w -+ mad r0.z, -r1.w, r0.z, l(2.000000) -+ mul r0.z, r0.z, r1.w -+ mul r1.w, r0.z, icb[r0.y + 0].w -+ ld_structured r6.xyz, r0.x, l(0), g1.xyzx -+ mad r4.xyz, r6.xyzx, r1.wwww, r4.xyzx -+ ld_structured r6.xyz, r0.x, l(0), g2.xyzx -+ mad r5.xyz, r6.xyzx, r1.wwww, r5.xyzx -+ mad r0.x, r0.z, icb[r0.y + 0].w, r0.w -+ iadd r0.y, -r0.x, l(0x7ef312ac) -+ mad r0.z, -r0.y, r0.x, l(2.000000) -+ mul r0.y, r0.z, r0.y -+ mad r0.x, -r0.y, r0.x, l(2.000000) -+ mul r0.x, r0.x, r0.y -+ mul r3.xyz, r0.xxxx, r4.xyzx -+ mul r1.xyz, r0.xxxx, r5.xyzx - else -- if_nz r0.z -- iadd r0.xy, -r0.xyxx, r2.yxyy -- mov r4.xy, vThreadID.xyxx -- mov r4.zw, l(0,0,0,0) -- ld_indexable(texture2d)(float,float,float,float) r0.z, r4.xyzw, t0.yzxw -- not r4.xy, r0.xyxx -- imad r0.y, r4.x, l(-9), r0.y -- imad r0.w, r4.x, l(-9), -r4.y -- ishl r0.w, r0.w, l(8) -- or r0.w, r0.w, r0.y -- imad r0.x, r0.x, l(9), -r4.y -- ishl r0.xy, r0.xyxx, l(16, 24, 0, 0) -- or r0.x, r0.x, r0.w -- or r0.x, r0.y, r0.x -- bfi r0.y, l(1), l(1), vThreadIDInGroup.y, l(0) -- bfi r0.y, l(1), l(0), vThreadIDInGroup.x, r0.y -- and r0.w, r0.x, l(255) -- ld_structured r1.w, r0.w, l(0), g0.xxxx -- add r1.w, r0.z, -r1.w -- add r1.w, |r1.w|, l(1.192092896E-07) -- iadd r3.w, -r1.w, l(0x7ef312ac) -- mad r4.x, -r3.w, r1.w, l(2.000000) -- mul r3.w, r3.w, r4.x -- mad r1.w, -r3.w, r1.w, l(2.000000) -- mul r1.w, r1.w, r3.w -- mul r3.w, r1.w, icb[r0.y + 0].x -- ld_structured r4.xyz, r0.w, l(0), g1.xyzx -- ld_structured r5.xyz, r0.w, l(0), g2.xyzx -- mad r0.w, r1.w, icb[r0.y + 0].x, l(1.192092896E-07) -- ubfe r6.xy, l(8, 8, 0, 0), l(8, 16, 0, 0), r0.xxxx -- ld_structured r1.w, r6.x, l(0), g0.xxxx -- add r1.w, r0.z, -r1.w -- add r1.w, |r1.w|, l(1.192092896E-07) -- iadd r4.w, -r1.w, l(0x7ef312ac) -- mad r5.w, -r4.w, r1.w, l(2.000000) -- mul r4.w, r4.w, r5.w -- mad r1.w, -r4.w, r1.w, l(2.000000) -- mul r1.w, r1.w, r4.w -- mul r4.w, r1.w, icb[r0.y + 0].y -- ld_structured r7.xyz, r6.x, l(0), g1.xyzx -- mul r7.xyz, r4.wwww, r7.xyzx -- mad r4.xyz, r4.xyzx, r3.wwww, r7.xyzx -- ld_structured r6.xzw, r6.x, l(0), g2.xxyz -- mul r6.xzw, r4.wwww, r6.xxzw -- mad r5.xyz, r5.xyzx, r3.wwww, r6.xzwx -- mad r0.w, r1.w, icb[r0.y + 0].y, r0.w -- ld_structured r1.w, r6.y, l(0), g0.xxxx -- add r1.w, r0.z, -r1.w -- add r1.w, |r1.w|, l(1.192092896E-07) -- iadd r3.w, -r1.w, l(0x7ef312ac) -- mad r4.w, -r3.w, r1.w, l(2.000000) -- mul r3.w, r3.w, r4.w -- mad r1.w, -r3.w, r1.w, l(2.000000) -- mul r1.w, r1.w, r3.w -- mul r3.w, r1.w, icb[r0.y + 0].z -- ld_structured r6.xzw, r6.y, l(0), g1.xxyz -- mad r4.xyz, r6.xzwx, r3.wwww, r4.xyzx -- ld_structured r6.xyz, r6.y, l(0), g2.xyzx -- mad r5.xyz, r6.xyzx, r3.wwww, r5.xyzx -- mad r0.w, r1.w, icb[r0.y + 0].z, r0.w -- ushr r0.x, r0.x, l(24) -- ld_structured r1.w, r0.x, l(0), g0.xxxx -- add r0.z, r0.z, -r1.w -- add r0.z, |r0.z|, l(1.192092896E-07) -- iadd r1.w, -r0.z, l(0x7ef312ac) -- mad r3.w, -r1.w, r0.z, l(2.000000) -- mul r1.w, r1.w, r3.w -- mad r0.z, -r1.w, r0.z, l(2.000000) -- mul r0.z, r0.z, r1.w -- mul r1.w, r0.z, icb[r0.y + 0].w -- ld_structured r6.xyz, r0.x, l(0), g1.xyzx -- mad r4.xyz, r6.xyzx, r1.wwww, r4.xyzx -- ld_structured r6.xyz, r0.x, l(0), g2.xyzx -- mad r5.xyz, r6.xyzx, r1.wwww, r5.xyzx -- mad r0.x, r0.z, icb[r0.y + 0].w, r0.w -- iadd r0.y, -r0.x, l(0x7ef312ac) -- mad r0.z, -r0.y, r0.x, l(2.000000) -- mul r0.y, r0.z, r0.y -- mad r0.x, -r0.y, r0.x, l(2.000000) -- mul r0.x, r0.x, r0.y -- mul r3.xyz, r0.xxxx, r4.xyzx -- mul r1.xyz, r0.xxxx, r5.xyzx -- else -- mov r2.zw, l(0,0,0,0) -- ld_indexable(texture2d)(float,float,float,float) r3.xyz, r2.xyww, t1.xyzw -- ld_indexable(texture2d)(float,float,float,float) r1.xyz, r2.xyzw, t2.xyzw -- endif + mov r2.zw, l(0,0,0,0) + ld_indexable(texture2d)(float,float,float,float) r3.xyz, r2.xyww, t1.xyzw + ld_indexable(texture2d)(float,float,float,float) r1.xyz, r2.xyzw, t2.xyzw - endif - store_uav_typed u1.xyzw, vThreadID.xyyy, r1.xyzz - store_uav_typed u0.xyzw, vThreadID.xyyy, r3.xyzz + else + if_nz r0.z + iadd r0.xy, -r0.xyxx, r2.yxyy -- cgit v1.2.3-101-g0448