| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
This new operand replaces the MachineOperand flags in LLVM, which
will be deprecated soon. Eventually all instructions should have a flag
operand, but for now this operand has only been added to instructions
that need it.
|
|
|
|
|
| |
MachineOperand flags will be removed soon, so it is convienent to
have only one function that modifies them.
|
|
|
|
|
|
|
| |
Preventing piglit's draw-vertices test from hanging the GPU.
Signed-off-by: Christian König <[email protected]>
Reviewed-by: Michel Dänzer <[email protected]>
|
|
|
|
|
|
|
|
| |
We need to enable at least one interpolation mode,
otherwise the GPU will hang.
Signed-off-by: Christian König <[email protected]>
Reviewed-by: Michel Dänzer <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
Disable blending when dual_src_blend is enabled and number of color exports
in the current fragment shader is less than 2.
Fixes lockups with ext_framebuffer_multisample-
alpha-to-coverage-dual-src-blend piglit test.
Signed-off-by: Vadim Girlin <[email protected]>
|
|
|
|
|
| |
Tested-by: Scott Moreau <[email protected]>
Signed-off-by: Jakob Bornecrantz <[email protected]>
|
| |
|
| |
|
|
|
|
|
| |
This pass expends reduction instructions into a MachineInstrBundle that
contains 4 instruction, one for each instruction slot.
|
| |
|
|
|
|
|
|
|
|
| |
Don't dereference NULL pointers, and if all views are NULL, don't generate an
invalid PM4 packet which locks up the GPU.
Signed-off-by: Michel Dänzer <[email protected]>
Reviewed-by: Christian König <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is required to make some of llvm's api calls
thread save. In particular the PassRegistry, which is
implicitly accessed while compiling shader programs.
The PassRegistry uses a mutex that is only active if
the llvm_is_multithreaded() returns true.
Calling llvm_start_multithreading() makes this happen
and by calling this function we try to make sure that
we can savely compile shaders in paralell.
Since there is also a call llvm_stop_multithreading()
in the llvm api, we cannot guarantee that this does
not get switched off while we are relying on this being
set, but for the easier use cases this fixes a race with
the radeon llvm compiler we have as of today.
Signed-off-by: Mathias Froehlich <[email protected]>
Signed-off-by: Tom Stellard <[email protected]>
|
|
|
|
| |
Signed-off-by: Tom Stellard <[email protected]>
|
|
|
|
| |
Solved by Tiziano Bacocco on IRC.
|
|
|
|
| |
Solved by Maxim Levitsky on IRC.
|
| |
|
|
|
|
|
|
|
| |
It's possible for us to have an unused sampler bound when the fragment
shader itself doesn't use any samplers. So the assertion isn't valid.
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=53616
|
|
|
|
| |
To be consistent with other functions.
|
|
|
|
| |
You can add extra library paths to LDFLAGS directly.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
We aligned the dimensions to the blocksize, then divided by it
(in r600_blit.c), then minified, which was wrong.
The minification must be done first, not last.
This fixes piglit/fbo-generatemipmap-formats with S3TC and maybe
a bunch of other tests too. Tested on RV730.
|
|
|
|
| |
This fixes a failing assertion in r600_asm.c.
|
|
|
|
| |
Reviewed-by: Michel Dänzer <[email protected]>
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
This fixes a "kernel rejected pushbuf: Bad file descriptor" error on
wl_drm display destruction.
Reviewed-by: Kristian Høgsberg <[email protected]>
|
| |
|
| |
|
|
|
|
|
|
|
| |
For when we have pipe->set_sampler_states(pipe, shader, start, num, samplers),
etc.
Reviewed-by: Marek Olšák <[email protected]>
|
|
|
|
|
| |
To support geom/compute/etc shaders, samplers, sampler views, etc.
To support pipe->bind_sampler_states() w/ start_slot.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
To support updating a sub-range of sampler states/views in the future.
Note that we always pass start=0 at this time.
|
| |
|
|
|
|
| |
This will simplify things when the pipe_context functions are consolidated.
|
|
|
|
|
|
|
|
|
|
|
|
| |
PIPE_MAX_SAMPLERS, PIPE_MAX_VERTEX_SAMPLERS and PIPE_MAX_GEOMETRY_SAMPLERS
were all defined to the same value (16).
In various places we're creating arrays such as
sampler_views[PIPE_SHADER_TYPES][PIPE_MAX_SAMPLERS] so we were assuming
the same number of max samplers for all shader stages anyway.
Of course, drivers are still free to advertise different numbers of max
samplers for different shaders.
|
|
|
|
| |
So that we can handle GS state and other types of shaders in the future.
|
|
|
|
| |
To better organize things a bit.
|
|
|
|
|
| |
To prepare for geometry shader texture support in the draw module.
Note: we still only handle the vertex shader case.
|
| |
|
|
|
|
|
|
|
|
| |
The previous test for result != NULL was kind of bogus since we dereferenced
the pointer earlier in the code. Now, check for result != NULL first, then
get the result->key info.
Also, remove the useless "offset +=" code at the end.
|
| |
|
|
|
|
| |
and similarly for svga_hw_fs_parameters
|