SHADER_CONSTANT is expected here, the other IMMEDIATES however should
have already been handled.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Another classic and utterly stupid mistake. At least I was consistent in
my error.
Reported-by: Clemens Eisserer <linuxhippy@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=42414
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Fixes an off-by-one in the drawing of the rectangles caused by a
too-literal translation of the rectangles into boxes.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This is set in configure and redefining it later inside the C files just
leads to trouble and broken compilation.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Removes a couple of conditionals from the middle of the hotpath and on
Intel we are not realising the benefit of only utilising 16-bit values.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This reverts commit 15266e1b95.
KDE relies upon the ability to render into a sampler and then render
upon itself. Not the first sign of madness...
Will have to find another way of winning back the compwinwin
performance.
As exemplified by KDE (using Kate) on gen3, it would attempt to render a
large set of boxes using OVER and a transparent colour. As gen3 copied
across some of the BLT assumptions, it was incorrectly reducing that to
a CLEAR and thus rendering incorrectly.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
A regression from c2040fb8e6 (sna: Remove
the memset(0) of the fill op) left the flags for the source channel
uninitalised leaving the shader construction undefined and causing
visual glitches.
Reported-by: Paul Neumann <paul104x@yahoo.de>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=42367
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This appeared to introduce a visual gitch into the xfce4 selection box
on gen6 at least.
References: https://bugs.freedesktop.org/show_bug.cgi?id=42367
Reported-by: Paul Neumann <paul104x@yahoo.de>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
A box of height/width 1 and lineWidth 0 can also be drawn with a single
box as the far edge is contiguous with far side of the near edge.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Make sure the line is clipped to the current clip box and discard if the
clip is reduced to nothing.
References: https://bugs.freedesktop.org/show_bug.cgi?id=42361
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Attempt to retire an active buffer into the inactive cache before giving
up and creating a new buffer.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
As we already know the extents and that this is a candidate for
GPU-acceleration, we can skip over those steps and emit the tiled rects.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
It appears the hardware trashes the BLT registers after a 3D context
switch, so we need to reload.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This was meant to be a part of the previous commit.
These are the scratch pixmaps for which we truly do want to allocate
GPU-only.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Contrary to earlier belief, the only usage of
CREATE_PIXMAP_USAGE_SCRATCH in the dix/mi are either along paths unused
by us or more importantly for operations which are detrimental to create
GPU-only buffers. So create CPU pixmaps instead.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>