Just to update the list: I had an in-person meeting with Eric, Ian, and Ken today to discuss the design of the patch series and decide what to do about it. We agreed to go ahead and push the patches to master as is, and to make further improvements as time goes on.<br>
<br>Specific improvements that were discussed:<br><br>- I seem to be the only person who thinks it makes sense for the brw_blorp_params class to contain an exec() function. In the interest of avoiding a rebasing nightmare, I will go ahead with the patches as they are, and submitt a follow up patch which replaces brw_blorp_params::exec() with a global function brw_blorp_exec(const brw_blorp_params *).<br>
- Gen7 has some new instructions to facilitate bit twiddling (bfe, bfi1, and bfi2), and it seems like many of the messier blorp operations could be streamlined using them. We agreed that this work shouldn't block the patch series. I'll make a note to revisit this as a performance optimization after MSAA functionality is complete.<br>
- It would be nice to unit test some of this code. I'm in support of this, and I will start working on unit tests as a future patch series.<br><br>Also, I was admonished for not splitting up the patch "i965: Parameterize HiZ code to prepare for adding blitting." into two patches, one to do the refactoring and one to rename things, since that would have made it easier to review the code. I apologize about this. We also decided, however, that since the only real benefit of splitting up the patch would have been to make review easier, there's not much point in going to extra trouble to split this patch now that review has occurred.<br>
<br>It's now about 2pm PDT. Unless new issues are raised, I plan to push this patch series around 2pm PDT tomorrow.<br><br>Paul<br>