diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2010-05-15 00:47:55 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2010-05-15 00:48:19 +0100 |
commit | 213816c30b5ca6146e26ded85b2aa31ca16ca9bf (patch) | |
tree | 7568fc14c0ddcf84816484708981845c79502e43 /src | |
parent | 737de9a779d05fe6fb1efe1904fda2cc452ff137 (diff) |
i915: Load texture into directly into OC when possible.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src')
-rw-r--r-- | src/i915_render.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/i915_render.c b/src/i915_render.c index baaa58d9..59d92481 100644 --- a/src/i915_render.c +++ b/src/i915_render.c @@ -627,12 +627,14 @@ static void i915_emit_composite_setup(ScrnInfoPtr scrn) if (dst_format == COLR_BUF_8BIT) src_reg = FS_R0; else - src_reg = FS_R0; + src_reg = FS_OC; + if (is_affine_src) i915_fs_texld(src_reg, FS_S0, FS_T0); else i915_fs_texldp(src_reg, FS_S0, FS_T0); } + if (src_reg != FS_OC) { if (dst_format == COLR_BUF_8BIT) i915_fs_mov(FS_OC, i915_fs_operand(src_reg, W, W, W, W)); @@ -647,6 +649,7 @@ static void i915_emit_composite_setup(ScrnInfoPtr scrn) i915_fs_dcl(FS_T0 + t); i915_fs_dcl(FS_S0 + t); } + if (! is_solid_src) { /* Load the source_picture texel */ if (is_affine_src) { |