<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Sep 19, 2014 at 5:34 PM, Matt Turner <span dir="ltr"><<a href="mailto:mattst88@gmail.com" target="_blank">mattst88@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Fri, Sep 19, 2014 at 1:10 PM, Jason Ekstrand <<a href="mailto:jason@jlekstrand.net">jason@jlekstrand.net</a>> wrote:<br>
> We have this wonderful offset() function for advancing registers, but we're<br>
> not using it.  Using offset() allows us to do some sanity checking and<br>
> avoid manually touching fs_reg::reg_offset.  In a few commits, we will make<br>
> offset do even more nifty things for us.<br>
><br>
> Signed-off-by: Jason Ekstrand <<a href="mailto:jason.ekstrand@intel.com">jason.ekstrand@intel.com</a>><br>
> ---<br>
>  src/mesa/drivers/dri/i965/brw_fs.cpp              |  18 +--<br>
>  src/mesa/drivers/dri/i965/brw_fs_cse.cpp          |  12 +-<br>
>  src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp |   4 +-<br>
>  src/mesa/drivers/dri/i965/brw_fs_visitor.cpp      | 137 ++++++++++------------<br>
>  4 files changed, 78 insertions(+), 93 deletions(-)<br>
><br>
> diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp<br>
> index af8c087..ea91705 100644<br>
> --- a/src/mesa/drivers/dri/i965/brw_fs.cpp<br>
> +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp<br>
> @@ -310,8 +310,8 @@ fs_visitor::VARYING_PULL_CONSTANT_LOAD(const fs_reg &dst,<br>
>           inst->mlen = 1 + dispatch_width / 8;<br>
>     }<br>
><br>
> -   vec4_result.reg_offset += (const_offset & 3) * scale;<br>
> -   instructions.push_tail(MOV(dst, vec4_result));<br>
> +   fs_reg result = offset(vec4_result, (const_offset & 3) * scale);<br>
> +   instructions.push_tail(MOV(dst, result));<br>
<br>
</span>Isn't this going to cause us to copy an fs_reg twice, rather than just<br>
setting .reg_offset?<br>
<br>
I'd like to check the generated code.<br>
</blockquote></div><br></div><div class="gmail_extra">What's your concern there?  Just that we're useing more CPU?<br></div><div class="gmail_extra">--Jason<br></div></div>