summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* radeon/llvm: ExpandSpecialInstrs - Add support for cube instructionsTom Stellard2012-08-214-63/+100
|
* radeon/llvm: ExpandSpecialInstrs - Add support for vector instructionsTom Stellard2012-08-212-15/+30
|
* radeon/llvm: Add R600ExpandSpecialInstrs passTom Stellard2012-08-216-14/+112
| | | | | This pass expends reduction instructions into a MachineInstrBundle that contains 4 instruction, one for each instruction slot.
* radeon/llvm: Add helper function for getting sub reg indicesTom Stellard2012-08-213-6/+19
|
* radeonsi: Handle NULL sampler views getting passed in by the state tracker.Michel Dänzer2012-08-212-5/+14
| | | | | | | | 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]>
* APIspec: Remove cruft about AMD_compressed_???_textureIan Romanick2012-08-201-15/+0
| | | | | | | | | Mesa doesn't support these extensions, and it seems unlikely that it ever will Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant glFramebufferTexture3D textarget validationIan Romanick2012-08-201-4/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant glGetShaderiv pname validationIan Romanick2012-08-201-8/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant glCompressedTexImage border validationIan Romanick2012-08-201-4/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant glPointSizePointer type validationIan Romanick2012-08-201-5/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant glGetBufferPointer pname validationIan Romanick2012-08-201-4/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant glGetVertexAttribPointer pname validationIan Romanick2012-08-201-4/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant element type validationIan Romanick2012-08-201-12/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant glGetShaderPrecisionFormat shader type validationIan Romanick2012-08-201-14/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant depth func validationIan Romanick2012-08-201-11/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant stencil op fail/zfail/zpass validationIan Romanick2012-08-201-72/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant shade model mode validationIan Romanick2012-08-201-5/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant light pname and light validationIan Romanick2012-08-202-108/+2
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant hint mode validationIan Romanick2012-08-201-6/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant separate stencil face validationIan Romanick2012-08-201-12/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant stencil function validationIan Romanick2012-08-201-22/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant logic op operand validationIan Romanick2012-08-201-19/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant alpha function validationIan Romanick2012-08-202-26/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant separate stencil mask face validationIan Romanick2012-08-201-6/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant front-face mode validationIan Romanick2012-08-201-5/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant face culling mode validationIan Romanick2012-08-201-6/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant blend equation mode validationIan Romanick2012-08-201-36/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant texture target validationIan Romanick2012-08-202-63/+0
| | | | | | | | | | | Mesa doesn't check the parameter passed to glMultiTexCoord*. It does, however, mask the texture value to prevent out-of-bounds writes. This patch will promote this non-conformant behavior to OpenGL ES 1. I don't think anyone will care, and the gets some silly code out of a hot path. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Rearrange placement of GL_TEXTURE_MAX_ANISOTROPY_EXT in APIspecIan Romanick2012-08-201-5/+1
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Remove redundant min/mag filter validationIan Romanick2012-08-202-46/+4
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* radeon-llvm: Start multithreaded before using llvm.Mathias Fröhlich2012-08-201-0/+15
| | | | | | | | | | | | | | | | | | | 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]>
* r600g: Move common compute/3D register init to its own functionarchibald2012-08-203-170/+219
| | | | Signed-off-by: Tom Stellard <[email protected]>
* nv50/ir/tgsi: handle DP2 in tgsi Instruction srcMaskChristoph Bumiller2012-08-181-0/+2
| | | | Solved by Tiziano Bacocco on IRC.
* nv50/ir/emit: don't forget saturation bit on f32 add immediateChristoph Bumiller2012-08-181-0/+2
| | | | Solved by Maxim Levitsky on IRC.
* mesa: use #if over #ifdef in the FEATURE_ES1 check to fix a build failure.Tilman Sauerbeck2012-08-181-1/+1
| | | | | | | | mfeatures.h will define FEATURE_ES1 to 0 if it's not defined yet. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=53664 Signed-off-by: Brian Paul <[email protected]>
* st/mesa: fix sampler view countingBrian Paul2012-08-181-2/+9
| | | | | | | | | | | | | | | | | In the past, when we called pipe::set_sampler_views(n) the drivers set samplers [n..MAX] to NULL. We no longer do that. The state tracker code was already trying to set unused sampler views to NULL to cover that case, but the logic was broken and unnoticed until now. This patch fixes it. Strictly speaking, this patch shouldn't be necessary. Drivers should simply ignore unused samplers and sampler views. But some drivers like llvmpipe (and others?) count those things and they figure into state validation. That could be fixed in the future. Fixes http://bugs.freedesktop.org/show_bug.cgi?id=53617 Reviewed-by: Marek Olšák <[email protected]>
* util: update and fix u_upload_mgr.h commentsBrian Paul2012-08-181-4/+3
|
* st/mesa: use Elements() instead of hard-coded numberBrian Paul2012-08-181-1/+4
| | | | And add a comment about the velems_util_draw[] array.
* mesa: remove unused params, add const qualifiersBrian Paul2012-08-181-5/+4
| | | | | Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: querying GL_TEXTURE_COMPRESSED_IMAGE_SIZE for a buffer obj is illegalBrian Paul2012-08-181-7/+3
| | | | | | | | | GL_INVALID_OPERATION is to be raised when querying a non-compressed image/buffer. Since a buffer object can't have a compressed format this query always generates an error. Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa/es: Don't generate ES1 type conversion wrappersIan Romanick2012-08-175-2/+1675
| | | | | | | | | | These are gradually going to get whittled away and eventually folded into the source files with the native type functions. v2: Add (speculative) SConscript changes. These may be broken. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* i965: Fix bug in the old FS backend's projtex() calculation.Eric Anholt2012-08-171-3/+1
| | | | | | | | | | | | In the old backend, we looked at any FS attribute's proj_attrib_mask bits, not just texcoords. Now that we have _mesa_vert_result_to_frag_attrib(), we can fill in the other FS inputs with correct proj_attrib_mask info. NOTE: This is a candidate for stable branches. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=46644 Signed-off-by: Eric Anholt <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Support GL_TEXTURE_BUFFER in GetTexLevelParameter[if]v in GL 3.1+.Kenneth Graunke2012-08-172-1/+130
| | | | | | | | | | | | | | | | | | | | | The OpenGL 3.1 specification explicitly allows this. Oddly, the ARB_texture_buffer_object spec's issues section claims this isn't allowed, but proceeds to explain that the extension simply doesn't edit the underlying spec to allow it, and thus it didn't appear in the list of legal texture targets. Thus, this patch legalizes it only in 3.1+ contexts, but still returns INVALID_ENUM in earlier contexts that expose ARB_texture_buffer_object. Unfortunately, the behavior of the call is horrendously undefined. Fixes oglconform's tbo/negative.textureParams test. v2: Require desktop OpenGL. Signed-off-by: Kenneth Graunke <[email protected]> Signed-off-by: Eric Anholt <[email protected]> Signed-off-by: Ian Romanick <[email protected]>
* mesa: Split out part of glGetTexLevelParameter into a helper function.Kenneth Graunke2012-08-171-42/+52
| | | | | | | | | | Move the _mesa_GetTexLevelParameter[iv] functions below the helper function so the prototype is available. This will be useful in the next commit. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* mesa: Add GL_TEXTURE_CUBE_MAP to _mesa_max_texture_levels(). [v2]Kenneth Graunke2012-08-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For cube maps, _mesa_generate_mipmap() calls this with GL_TEXTURE_CUBE_MAP (the gl_texture_object's Target) rather than one of the faces. This caused _mesa_max_texture_levels() to return 0, which resulted in maxLevels == -1 and the next line's assertion to fail. This function is called from seven places: - fbobject.c: framebuffer_texture() - mipmap.c: _mesa_generate_mipmap() - texgetimage.c: - getteximage_error_check() - getcompressedteximage_error_check() - texparam.c: _mesa_GetTexLevelParameteriv() - texstorage.c: tex_storage_error_check() All of these (or their callers) now explicitly check for invalid targets already, so this shouldn't cause invalid targets to slip through. (Technically _mesa_generate_mipmap() doesn't check for invalid targets, but the API-facing _mesa_GenerateMipmapEXT() function does.) +2 oglconforms (float-texture/mipmap.automatic and mipmap.manual) In addition to fixing the mipmap bug, it should also cause glTexStorage to accept GL_TEXTURE_CUBE_MAP, which is explicitly allowed by the spec. v2: Drop alterations to callers; this is now in a patch series that adds explicit checking to API functions. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* mesa: Add explicit target checking to GetTexLevelParameter[if]v().Kenneth Graunke2012-08-171-3/+38
| | | | | | | | | | | | | | Previously, it relied on _mesa_max_texture_levels() for texture target error checking. This was somewhat dodgy, as _mesa_max_texture_levels() is called in seven diferent places, not all of which necessarily accept the same list of targets. I copied the list of legal targets from _mesa_max_texture_levels(), so this patch should not introduce any change in behavior. Future patches will cause the two to diverge. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* mesa: Add explicit target checking to Get[Compressed]TexImage().Kenneth Graunke2012-08-171-10/+35
| | | | | | | | | | | | | | | | Previously, they relied on _mesa_max_texture_levels() for texture target error checking. This was somewhat dodgy, as _mesa_max_texture_levels() is called in seven diferent places, not all of which necessarily accept the same list of targets. I copied the list of legal targets from _mesa_max_texture_levels() but removed the proxy targets, as both functions explicitly rejected those targets. This changes the order in which we check errors, which could change whether we return INVALID_VALUE or INVALID_ENUM. However, it shouldn't change the list of accepted targets. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* llvmpipe: remove polygon stipple assertionBrian Paul2012-08-171-2/+0
| | | | | | | 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
* svga: minor code reformattingBrian Paul2012-08-161-2/+3
| | | | To be consistent with other functions.
* build: Remove -shared from OSMesa's LDFLAGSMatt Turner2012-08-161-1/+1
| | | | Would break the static build.