summaryrefslogtreecommitdiff
path: root/src/exa_wm.g4i
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2008-03-31 23:50:20 -0700
committerKeith Packard <keithp@keithp.com>2008-03-31 23:50:20 -0700
commita6492661ae07310128eb73c3ef037c42ce7ab184 (patch)
tree0d72faeb2195da4618bf0d1f8fce460e80c99a74 /src/exa_wm.g4i
parentf8081178eb6fda0e405967cbacad532561619262 (diff)
Fix composite with mask using new compositing thread code
Clean up register allocation to never overlap Always write 4 values for each texture vertex.
Diffstat (limited to 'src/exa_wm.g4i')
-rw-r--r--src/exa_wm.g4i65
1 files changed, 35 insertions, 30 deletions
diff --git a/src/exa_wm.g4i b/src/exa_wm.g4i
index 1be40e70..724ef2b5 100644
--- a/src/exa_wm.g4i
+++ b/src/exa_wm.g4i
@@ -71,47 +71,52 @@ define(`dst_y_0', `dst_y')
define(`dst_y_1', `g11')
/* When computing x * dn/dx, use this */
-define(`temp_x', `g12')
+define(`temp_x', `g34')
define(`temp_x_0', `temp_x')
-define(`temp_x_1', `g13')
+define(`temp_x_1', `g35')
/* When computing y * dn/dy, use this */
-define(`temp_y', `g14')
+define(`temp_y', `g32')
define(`temp_y_0', temp_y)
-define(`temp_y_1', `g15')
+define(`temp_y_1', `g33')
/* when loading x/y, use these to hold them in UW format */
define(`temp_x_uw', temp_x)
define(`temp_y_uw', temp_y)
/* compute source and mask u/v to this pair to send to sampler */
-define(`src_u', `m1')
-define(`src_v', `m3')
-define(`mask_u', src_u)
-define(`mask_v', src_v)
-define(`src_w', `g16')
-define(`src_w_0', src_w)
-define(`src_w_1', `g17')
-define(`mask_w', src_w)
-define(`mask_w_0', src_w_0)
-define(`mask_w_1', src_w_1)
+define(`src_msg', `m1')
+define(`src_msg_ind',`1')
+define(`src_u', `m2')
+define(`src_v', `m4')
+define(`src_w', `g12')
+define(`src_w_0', `g12')
+define(`src_w_1', `g13')
+
+define(`mask_msg', `m7')
+define(`mask_msg_ind',`7')
+define(`mask_u', `m8')
+define(`mask_v', `m10')
+define(`mask_w', `g14')
+define(`mask_w_0', `g14')
+define(`mask_w_1', `g15')
/* sample src to these registers */
-define(`src_sample0', `g18')
-define(`src_sample1', `g19')
-define(`src_sample2', `g20')
-define(`src_sample3', `g21')
-define(`src_sample4', `g22')
-define(`src_sample5', `g23')
-define(`src_sample6', `g24')
-define(`src_sample7', `g25')
+define(`src_sample0', `g16')
+define(`src_sample1', `g17')
+define(`src_sample2', `g18')
+define(`src_sample3', `g19')
+define(`src_sample4', `g20')
+define(`src_sample5', `g21')
+define(`src_sample6', `g22')
+define(`src_sample7', `g23')
/* sample mask to these registers */
-define(`mask_sample0', `g26')
-define(`mask_sample1', `g27')
-define(`mask_sample2', `g28')
-define(`mask_sample3', `g29')
-define(`mask_sample4', `g30')
-define(`mask_sample5', `g31')
-define(`mask_sample6', `g32')
-define(`mask_sample7', `g33')
+define(`mask_sample0', `g24')
+define(`mask_sample1', `g25')
+define(`mask_sample2', `g26')
+define(`mask_sample3', `g27')
+define(`mask_sample4', `g28')
+define(`mask_sample5', `g29')
+define(`mask_sample6', `g30')
+define(`mask_sample7', `g31')