Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This avoids the duplication in tpf.h and tpf_text.cpp
|
|
|
|
Some pathological triangles cause a theoritically impossible number of
clipped vertices.
The clipper will still assert, but at least release builds will not
crash, while this problem is further investigated.
|
|
If a triangle was completely culled by clipping, we would still try to
fix up its provoking vertex.
|
|
Otherwise softpipe and llvmpipe assert.
|
|
|
|
looks like mesa st didn't get updated.
|
|
|
|
use the blitter + custom stage to avoid doing a whole lot of state
setup by hand. This makes life a lot easier for doing this on evergreen
it also keeps all the state setup in one place.
We setup a custom context state at the start with a flag to denote
its for the flush, when it gets generated we generate the correct state
for the flush and no longer have to do it all by hand.
this should also make adding texture *to* depth easier.
|
|
reimplement the flush stage added for r300 to allow a custom DSA stage
to be used in the pipeline, this allows for r600 hw DB->CB flushes.
|
|
|
|
We will typically have a current context when we need to lookup the image,
but the lookup implementation don't need it so drop it.
|
|
|
|
pointed out by glisse on irc.
|
|
at least zreaddraw works for me here now on my rv610
|
|
once I go past 0x3f80000, I can't translate hex to float in-brain anymore.
|
|
|
|
Fixes:
glsl1-precision exp2
glsl1-precision log2
|
|
The new checks for sanity in ir_assignment creation got angry about
this write_mask == 0. Fixes:
glsl-fs-dot-vec2.
glsl-fs-atan-2
glsl-fs-dot-vec2
|
|
If the server doesn't send invalidate events, we may miss a
resize before the rendering starts. Invalidate the buffers now
so the driver will recheck before rendering starts.
https://bugs.freedesktop.org/show_bug.cgi?id=29984
https://bugs.freedesktop.org/show_bug.cgi?id=30155
|
|
+113 piglits.
|
|
As introduced with commit d21301675c249602e19310d5b62fad424f2f2ac2
NOTE: This is a candidate for the 7.9 branch.
|
|
Fixes: glsl-mat-from-int-ctor-03
|
|
It considered .xyyy a noop for vec4 instead of .xyzw, and similar for vec3.
|
|
It turns out that most people new to this IR are surprised when an
assignment to (say) 3 components on the LHS takes 4 components on the
RHS. It also makes for quite strange IR output:
(assign (constant bool (1)) (x) (var_ref color) (swiz x (var_ref v) ))
(assign (constant bool (1)) (y) (var_ref color) (swiz yy (var_ref v) ))
(assign (constant bool (1)) (z) (var_ref color) (swiz zzz (var_ref v) ))
But even worse, even we get it wrong, as shown by this line of our
current step(float, vec4):
(assign (constant bool (1)) (w)
(var_ref t)
(expression float b2f (expression bool >=
(swiz w (var_ref x))(var_ref edge))))
where we try to assign a float to the writemasked-out x channel and
don't supply anything for the actual w channel we're writing. Drivers
right now just get lucky since ir_to_mesa spams the float value across
all the source channels of a vec4.
Instead, the RHS will now have a number of components equal to the
number of components actually being written. Hopefully this confuses
everyone less, and it also makes codegen for a scalar target simpler.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
|
|
|
|
|
|
|
|
This one should be powerful enough to hook up Wine.
|
|
|
|
|
|
We can't expect to have a context when this is called, and we don't need one
so just require a __DRIscreen instead.
Reported by Yu Dai <yu.dai@intel.com>
|
|
When calling query begin using same query id we need to discard
previous query results.
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
|
|
Shader rebuild should be more clever, we should store along each
shader all the value that change shader program rather than using
flags in context (ie change sequence like : change vs buffer, draw,
change vs buffer, switch shader will trigger useless shader rebuild).
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
|
|
Normally the Mesa state tracker uses TXP instructions for texturing.
But if a fragment shader uses texture2D() that's a TEX instruction.
In that case we were incorrectly computing the texcoord coefficients
in the point sprite setup code. Some new comments in the code explain
things.
|
|
|
|
Fix commit e7087175f8a04f777403366fb34b58edd00f4d60. Move the reference to
GL_VERSION_2_1_functions to intel_extensions.c where it's available,
don't try to enable a non-existing extension and advertise 1.20 for all
intel chipsets, not just GEN4 and up.
|
|
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
|
|
Makes AoS blending easier, and state more canonical.
|
|
One multiplication instead of two.
Also fix floating point random number generation and verification.
TODO: Do the same for AoS blending.
|
|
Unfortunately this can cause segfault with LLVM 2.6, if x is a constant.
|
|
|