| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Makes the RS resolve a lot less painful.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
|
|
|
|
| |
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
|
|
|
|
| |
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
|
|
|
|
|
|
|
| |
This moves framebuffer handling almost completely into
MESA and doesn't rely on libetna anymore.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
|
|
|
|
| |
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
|
|
|
|
|
|
| |
While at it reformat a bit.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
|
|
|
|
|
|
|
| |
Compute them dynamically for each level. We will need this
to render to different mipmap levels.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
|
|
|
|
| |
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
|
| |
|
|
|
|
|
|
|
| |
Extremely unclean, but works for me. Don't ever show to
anyone. CLEAN THIS UP PROPERLY!
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
|
|
|
|
| |
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
|
|
|
|
| |
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
|
|
|
|
|
|
|
| |
Otherwise we encounter visual corruption on frequent sampler
updates.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
|
|
|
|
| |
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
|
|
|
|
| |
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
|
|
|
|
| |
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Put CONST, VERTEX and INSTANCE attributes into one vertex buffer if
necessary due to hardware constraints.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Just prior to the release.
|
|
|
|
| |
In preparation for the 10.2.4 release, of course.
|
|
|
|
|
|
|
|
| |
Everything is in place and appears to be working.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
(cherry picked from commit 8cf289c3ef2fcaded5a89f9d7a600f60a5e8356e)
|
|
|
|
|
|
|
|
| |
2x MSAA also uses 8 bits, just like 4x. More bits are unused.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
(cherry picked from commit db184d43b0573c00d911ef9e98fbaab26ebd6466)
|
|
|
|
|
|
|
|
|
|
| |
MCS buffers are never allocated on Broadwell, so this does nothing for
now, but puts the infrastructure in place for when they do exist.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
(cherry picked from commit a248b2a4ebb27832d6c8a40ce2b10134f8735b93)
|
|
|
|
|
|
|
|
|
|
| |
According to the documentation, we don't need this SINT workaround on
Broadwell. (Or at least, it doesn't mention that we need it.)
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
(cherry picked from commit e10311be9f61230de7f06e9fb30834835ba3677d)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Broadwell generalizes the MCS fields to allow for multiple kinds of
auxiliary surfaces. This patch adds the plumbing to set those values,
but doesn't yet hook any up.
v2: (by Jordan Justen) Use mt for qpitch; pitch is tiles - 1.
v3: Don't forget to subtract 1 from aux_mt->pitch.
v4: Drop unnecessary aux_mt->offset (caught by Jordan Justen).
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
(cherry picked from commit fd7718768929ff7fd1460bafc32f7b8be75a3140)
|
|
|
|
|
|
|
| |
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
(cherry picked from commit a46cb6a971b136f41e24739551f6d36ecc1694c0)
|
|
|
|
|
|
|
|
| |
regs_written is in units of virtual GRFs.
Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
(cherry picked from commit dfd117b8570a69a429e660c069997e78b181ab6d)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the only case where a fs_reg in brw_fs_visitor is used during
optimization/code generation, and it meant that optimizations had to be
careful to not move pixel_x/y's register number without updating it.
Additionally, it turns out we had a couple of other UW values that weren't
getting this treatment (like gl_SampleID), so this more general fix is
probably a good idea (though I wasn't able to replicate problems with
either pixel_[xy]'s values or gl_SampleID, even when telling the register
allocator to reuse registers immediately)
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
(cherry picked from commit 66f5c8df067ed014c98ef7cf21591e9ea0b5b6bb)
|
|
|
|
|
|
|
|
|
|
|
| |
This code should execute without regard to the currently executing
channels. Asking for gl_SampleID inside control flow might break in
strange ways. It appears to break even at the top of the program in
SIMD16 mode occasionally as well.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Cc: mesa-stable@lists.freedesktop.org
(cherry picked from commit 6dc9e4e22a19108057162d9d8f8c7d559545f8de)
|
|
|
|
|
|
|
|
|
|
|
|
| |
Using brw_imm_* creates a source with file=HW_REG, and the scheduler
inserts barrier dependencies when it sees HW_REG. None of these are
hardware-registers in the sense that they're special and scheduling
shouldn't touch them. A few of the modified cases already have HW_REGs
for other sources, so it won't allow extra flexibility in some cases.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
(cherry picked from commit c938be8ad272a06bc0e91c4e718b61a0c5de400e)
(This patch was cherry-picked to make the next commit apply cleanly.)
|
|
|
|
|
|
|
|
|
|
|
|
| |
gen8_fs_generator uses these to decide whether to set the execution size
to 8 or 16, so we incorrectly made both of these MOVs the full width in
SIMD16 shaders. (It happened to work out on Gen4-7.)
Setting them should also help inform optimization passes what's really
going on, which could help avoid bugs.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Cc: mesa-stable@lists.freedesktop.org
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Both inst->force_uncompressed and inst->force_sechalf mean that the
generated instruction should be uncompressed and have an execution size
of 8. We don't require the visitor to set both flags - setting
inst->force_sechalf by itself is supposed to be enough.
On Gen4-7, guess_execution_size() demoted instructions to 8-wide based
on the default compression state. On Gen8+, we instead set a default
execution size, which worked great...except that we forgot to check
inst->force_sechalf when deciding whether to use 8 or 16.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Cc: mesa-stable@lists.freedesktop.org
(cherry picked from commit 1c62126612752f6eedb66f705cc3ff1e11beea5d)
|
|
|
|
|
| |
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
(cherry picked from commit 7192207de18a7a7e127a8a5910626af96f001993)
|
|
|
|
|
|
|
|
| |
total instructions in shared programs: 1878133 -> 1876986 (-0.06%)
instructions in affected programs: 153007 -> 151860 (-0.75%)
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
(cherry picked from commit 038eb649b30dfddaf40888ea28b5e88de3af2214)
|
|
|
|
|
| |
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
(cherry picked from commit aca4a951ea2bab855bcc2491a3b8996b54639ebd)
|