Age | Commit message (Collapse) | Author |
|
Elements(mach->Inputs) is wrong now that mach->Inputs is dynamically
allocated.
|
|
|
|
|
|
SNORM needs a bit of work in the state tracker in order for mipmap
generation to work I believe.
I'm also not sure that having unorm fetches for an snorm format is
sane.
|
|
The other draw stages like aaline and pstipple were already doing this.
If the driver used the aapoint stage but not the others it would crash
because of a null pipe->draw pointer.
|
|
|
|
|
|
valgrind gives me a warning with llvmpipe with profile builds but
not debug builds, this seems to fix the issue at least.
|
|
Fixes regression from a08e612fd8e7ca2ac2fef8961e56e5b094033717
|
|
|
|
There is an issue with gcc 4.6.0 that leads to segfault/assert with mesa
due to ureg_src size, reshuffling the structure member to better better
alignment work around the issue.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47893
7.9 + 7.10 candidate
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
|
|
so far only hw mipmap generation is testing on softpipe,
passes test added to piglit.
this requires another patch to mesa to let array textures mipmaps
even start to happen.
|
|
Check if element was translated per element instead of per buffer.
|
|
|
|
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
|
|
This fixes r300g errors:
r300: Cannot get a relocation in radeon_drm_cs_write_reloc.
|
|
|
|
|
|
- Support symbol name resolution on MinGW.
- Use dbghelp.dll (which should allow 64bit support), but untested yet.
- Cleanup.
|
|
To silence missing initializers warning.
|
|
And use assert(0) instead of abort() to be consistent with rest
of Gallium.
|
|
0, 0, 0)"
This reverts commit 6e7d782da506da233b2ac695b022ac393e1c719e.
Oops, I just had this locally for testing and forgot to remove it before pushing.
|
|
This is a workaround for a bug in libtxc_dxtn.
Fixes:
- piglit/GL_EXT_texture_compression_s3tc/fbo-generatemipmap-formats
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
And set a reasonable buffer usage flag everywhere instead of
just PIPE_USAGE_DEFAULT.
|
|
This is cleaner and implementing the hook is optional.
|
|
Also implement the redefine_user_buffer hook in the drivers.
|
|
This is redundant to pipe_draw_info::max_index and doesn't really fit
in the optimizations I plan.
|
|
|
|
Some hardware needs to make a seperate copy of all levels to obey
max_lod, so simply do not define the last two levels instead of
clamping.
|
|
|
|
max_index could have been less than min_index, which later caused integer
underflow followed by a segfault in memcpy.
|
|
AA lines drawn as textured quads look a little better with this change.
Conformance/piglit tests still pass.
|
|
Spotted by Jakob Bornecrantz.
|
|
|
|
This can avoid DMAing the whole buffer when just a fraction was changed.
|
|
|
|
|
|
|
|
|
|
This code has originally matured in r300g and was ported to r600g several
times. It was obvious it's a code duplication.
See also comments in the header file.
|
|
The type of u_get_transfer_vtbl of the usage argument in u_transfer.h is
unsigned and not enum pipe_transfer_usage. This patch changes the type
of usage to unsigned to match the prototype in the header file.
|
|
Before, the set_sampler_views() and restore_sampler_views() functions
used MAX2(old,new) to tell the driver how many samplers or sampler
views to set. This could result in cases such as:
pipe->set_fragment_sampler_views(pipe, 4, views={foo, bar, NULL, NULL})
Many/most gallium drivers would take this as-is and set
ctx->num_sampler_views=4 and ctx->sampler_views={foo, bar, NULL, NULL, ...}.
Later, loops over ctx->num_sampler_views would have to check for null
pointers. Worse, the number of sampler views and number of sampler CSOs
could get out of sync:
ctx->num_samplers = 2
ctx->samplers = {foo, bar, ...}
ctx->num_sampler_views = 4
ctx->sampler_views={Foo, Bar, NULL, NULL, ...}
So loops over the num_samplers could run into null sampler_views pointers
or vice versa.
This fixes a failed assertion in the SVGA driver when running the Mesa
engine demo in AA line mode (and possibly other cases).
It looks like all gallium drivers are careful to unreference views
and null-out sampler CSO pointers for the units beyond what's set
with the pipe::bind_x_sampler_states() and pipe::set_x_sampler_views()
functions.
I'll update the gallium docs to explain this as well.
|
|
|
|
This consolidates the code duplicated between the fragment sampler
and vertex sampler functions. Plus, it'll make adding support for
geometry shader samplers trivial.
|
|
To better distinguish from vertex sampler fields.
|
|
Before we were looping to nr_samplers, which is the number of fragment
samplers, not vertex samplers.
NOTE: This is a candidate for the 7.9 and 7.10 branches.
|
|
|
|
User buffers may be the fastest way to upload data.
|
|
|
|
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.
|