diff options
author | Ben Widawsky <benjamin.widawsky@intel.com> | 2015-06-03 21:35:51 -0700 |
---|---|---|
committer | Ben Widawsky <benjamin.widawsky@intel.com> | 2015-06-22 12:11:41 -0700 |
commit | 90754d2df05eafe1a3ee3cd9bb1611a19099fc49 (patch) | |
tree | 6040e730ccdd9afb7b9d9e2a63fd192d4a1d631d /src/mesa/drivers/dri/i965/brw_vs.c | |
parent | 2b07b8d104a93c26ac92edb3ba72328cdc2dcb52 (diff) | |
download | external_mesa3d-90754d2df05eafe1a3ee3cd9bb1611a19099fc49.zip external_mesa3d-90754d2df05eafe1a3ee3cd9bb1611a19099fc49.tar.gz external_mesa3d-90754d2df05eafe1a3ee3cd9bb1611a19099fc49.tar.bz2 |
i965/gen9: Implement Push Constant Buffer workaround
This implements a workaround (exact excerpt as a comment in the code). The docs
specify [clearly, after you struggle for a while] that the offset isn't relative
to state base. This actually makes sense. This fixes hangs on SKL.
Buffer #0 is meant to be used for normal uniforms.
Buffer #1 is typically used for gather constants when using RS.
Buffer #1-#3 could be used to push a bunch of UBO data which would just be
somewhere in memory, and not relative to the dynamic state.
NOTE: I've moved away from the ternary operator for the new gen9 conditions.
Admittedly it's probably not great to do this, but I really want to fix this all
up in the subsequent patch and doing it here makes that diff a lot nicer. I want
to split out the gen8/9 code to make the function a bit more readable, but to
keep this easily cherry-pickable I am doing this fix first. If we decide not to
merge the cleanup patch then I can revisit this.
Cc: "10.5 10.6" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Tested-by: Valtteri Rantala <Valtteri.rantala@intel.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_vs.c')
0 files changed, 0 insertions, 0 deletions