Age | Commit message (Collapse) | Author |
|
|
|
|
|
Also cleanup the whole thing.
|
|
|
|
|
|
|
|
So that 'foo' can be found in: OPTION=prefixfoosuffix,foo
Also allow that debug options can be separated by a non-alphanumeric characters
instead of just commas.
|
|
This drops the memblock manager for ZMASK. Instead, only one zbuffer can be
compressed at a time. Note that this does not necessarily have to be slower.
When there is a large number of zbuffers, compression might be used more often
than it was before. It's also easier to debug.
How it works:
1) 'clear' turns the compression on.
2) If some other zbuffer is set or the currently-bound zbuffer is used
for texturing, the driver decompresses it and then turns the compression off.
Notes:
- The ZMASK clear has been refactored, so that only one packet3 is used to clear
ZMASK.
- The 8x8 compression mode is disabled. I couldn't make it work without issues.
- Also removed driver-specific stuff from u_blitter.
Driver status:
- RV530 and R580 appear to just work (finally).
- RV570 should work, but there may be an issue that we don't correctly
calculate the number of dwords to clear, resulting in a partially
uninitialized zbuffer.
- RS690 misrenders as if no ZMASK clear happened. No idea what's going on.
- RV350 may even hardlock. This issue was already present and this patch doesn't
fix it.
I think we are still missing some hardware info we need to make the zbuffer
compression work fully.
Note that there is also an issue with HiZ, resulting in a sort of blocky
zigzagged corruption around some objects.
|
|
|
|
|
|
|
|
|
|
|
|
this isn't c++ please don't mix declerations with code
|
|
For previous commit.
|
|
I found this parenthetical usage of parentheses to be extraneously
extraneous:
(yyextra->ARB_fragment_coord_conventions_enable)
|
|
If an extension is prefixed with '+', attempt to enable it. This
introduces symmetry with the prefix '-', which is already allowed.
|
|
* Reduce max indentation level from 7 to 3.
* Eliminate counter variables.
* Remove function append().
|
|
All the necessary compiler infrastructure for AMD_conservative_depth is in
place, so it's safe to enable it in the parser.
|
|
|
|
From the AMD_conservative_depth spec:
If gl_FragDepth is redeclared in any fragment shader in a program, it
must be redeclared in all fragment shaders in that program that have
static assignments to gl_FragDepth. All redeclarations of gl_FragDepth in
all fragment shaders in a single program must have the same set of
qualifiers.
|
|
|
|
|
|
For commits titled:
glcpp: Conditionally define macro GL_AMD_conservative_depth
glsl: Add support for AMD_conservative_depth to parser
|
|
When AMD_conservative_depth is enabled:
* Let 'layout' be a token.
* Extend the production rule of layout_qualifier_id to process the tokens:
depth_any
depth_greater
depth_less
depth_unchanged
|
|
|
|
Define macro GL_AMD_conservative_depth to 1 when its extension is
enabled.
|
|
The extension is off by default.
First in a patchset that implements support for AMD_conservative_depth in
the compiler.
|
|
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=33555
|
|
|
|
We try to load a DRI driver if this fails so don't confuse users.
|
|
Spotted by Bernd Buschinski.
|
|
Let's assume there are two options with names such that one is a substring
of another. Previously, if we only specified the longer one as a debug option,
the shorter one would be considered specified as well (because of strstr).
This commit fixes it by checking that each option is surrounded by commas.
(a regexp would be nicer, but this is not a performance critical code)
|
|
as specified in the arb_occlusion_query2. just the interface.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
In case the driver enables GL_MESA_texture_array but not the EXT version.
|
|
Update the max_array_access of a global as functions that use that
global are pulled into the linked shader.
Fixes piglit test glsl-fs-implicit-array-size-01 and bugzilla #33219.
NOTE: This is a candidate for the 7.9 and 7.10 branches.
|
|
Previously only global arrays with implicit sizes would be patched.
This causes all arrays that are actually accessed to be sized.
Fixes piglit test glsl-fs-implicit-array-size-02.
NOTE: This is a candidate for the 7.9 and 7.10 branches.
|
|
Both of these assertions are triggered by the test case in bugzilla
size of 0.
|
|
And generate an error if the texture pattern is not matched.
|
|
|
|
|
|
|
|
|