summaryrefslogtreecommitdiff
path: root/src/exa_wm.g4i
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2008-04-08 16:21:55 -0500
committerKeith Packard <keithp@keithp.com>2008-04-10 16:58:11 -0500
commit32ef98518394d29cb87405005c660278489396bb (patch)
treedff128b528813b318c55e3796ccdc5c051b26c5d /src/exa_wm.g4i
parentb68d9f4245d0ebe3371c179401ff145f1a4d101b (diff)
Compute pixel values directly into data port
Instead of leaving pixel values in src_sample registers, compute the pixel values directl to the data port to save 8 moves. This cannot work when no computation is done as there is both no way to wait for the sampler to finish and because the sampler returns data in a different order from that required by the data port (sigh).
Diffstat (limited to 'src/exa_wm.g4i')
-rw-r--r--src/exa_wm.g4i8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/exa_wm.g4i b/src/exa_wm.g4i
index ee8e3ad0..a4b464bd 100644
--- a/src/exa_wm.g4i
+++ b/src/exa_wm.g4i
@@ -103,12 +103,20 @@ define(`mask_w_1', `src_w_1')
/* sample src to these registers */
define(`src_sample_base', `g14')
+
+define(`src_sample_r', `g14')
define(`src_sample_r_01', `g14')
define(`src_sample_r_23', `g15')
+
+define(`src_sample_g', `g16')
define(`src_sample_g_01', `g16')
define(`src_sample_g_23', `g17')
+
+define(`src_sample_b', `g18')
define(`src_sample_b_01', `g18')
define(`src_sample_b_23', `g19')
+
+define(`src_sample_a', `g20')
define(`src_sample_a_01', `g20')
define(`src_sample_a_23', `g21')