Age | Commit message (Collapse) | Author |
|
In particular, this removes the dependency on prog_instruction, which
unfortunately creates some code duplication, but also opens a path towards
adding some hardware-specific things in there.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
|
|
This really doesn't belong into the compiler itself, since the compiler
should eventually be independent of Mesa's program representation.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
|
|
Also, allow using texture rectangles, NPOT textures or regular POT textures
(preferred in that order).
|
|
|
|
|
|
|
|
|
|
Kernel side doesn't have required register in safe list so can't send it kernel.
|
|
All that state stuff should really be in state atoms :/
|
|
|
|
This looks like it's a small win on blender.
|
|
Passes glean's bufferObject test, and should provide good performance in the
cases applications are expected to use.
|
|
Previously we blocked because I hadn't added the libdrm function. Now it's
there, so update your libdrm.
|
|
Problem was to find the correct place to run prediction. Only place that is
called for every primitive is ALLOC_VERTS so we have to do prediction there
before allocation.
|
|
DRI1 has to set scissors in framebuffer coordinates.
|
|
DRI1 didn't have support for command buffer emit for stripple.
|
|
|
|
Polygon stipple has to go to command buffer because special ioctl is disabled.
Piglit doesn't like HyperZ warning so disable it for kms.
|
|
I forgot about r600 being here.
|
|
this makes gnome-shell work on r300 for me
|
|
Passes glean's bufferObject test for this extension.
|
|
|
|
|
|
The fragment program native limits are actually higher on R4xx
as reported by Alex Deucher, but using those requires some
bit-twiddling changes to program handling.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
|
|
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
|
|
Swtcl calls flush everytime primitive changes so prediction has to made again
after flushing.
|
|
For non-FBOs we need to invert, for FBOs the scissors are non-inverted.
no matter what we need to clamp them to the buffer sizes.
|
|
Increase the number of native program parameters to the same values
exposed by GLSL.
|
|
Several changes are made to program parameter limits. Several of the
non-NATIVE limits are set higher. All of the NATIVE limits are set to
zero in the core Mesa code. Each driver must set the actual value in
its context creation routine. If the NATIVE value remains zero, this
indicates that hardware shaders may not be supported.
Each of the preceeding changes matches the bahavior of Apple's shader
assembler, so it seems safe.
Finally, we limit the value of MaxEnvParams to be no greater than
MaxNativeAttribs. At least one case has been found where an
application does the wrong thing if MaxNativeAttribs < MaxEnvParams.
See also bugzilla #23490.
|
|
|
|
Only use the macro variant of MAD when absolutely necessary.
Apparently it cannot deal with relative addressing.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
|
|
Find used temporaries even if they are only written to in dead code.
This fixes a bug in the NQSSADCE stage.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
|
|
|
|
|
|
|
|
We were check command buffer sizes too alte so allocated dma regions
were freed before relocations so space checking failed.
|
|
|
|
The instructions we're translating already went through the brw_wm_pass_fp()
function which does the sampler->texture unit mapping. We were applying
the sample->unit mapping a second time in the GLSL texture emitters.
Often, this made no difference but other times it could lead to accessing
an invalid texture and could cause a GPU lockup.
|
|
|
|
Check that all the textures needed by the current fragment program
actually exist and are valid.
|
|
We'll use this for debug/sanity checking.
|
|
|
|
|
|
fixes crash in etracer reported by kdekorte on IRC
|
|
|
|
|
|
|
|
|
|
|
|
this is an untested port of the r100 OQ code
|