summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2010-07-20glsl2: Fix handling of out values in function inlining.Eric Anholt
The parameters[i] is our inlined variables representing the parameters, so they are always ir_var_auto. Walk the signature params in handling "out" values like we do for "in" values to find the mode. Fixes (with the previous 2 commits): glsl1-function call with in, out params glsl1-function call with inout params
2010-07-20glsl2: Don't mark a variable as constant if it was used as an out param.Eric Anholt
2010-07-20glsl2: Always insert function calls into the instruction stream.Eric Anholt
If they have a return value, this means putting it into a temporary and making a deref of the temp be the rvalue, since we don't know if the rvalue will be used or not.
2010-07-20radeon: Remove unnecessary header.Vinson Lee
2010-07-20glsl2: Add definitions of the builtin constants present in GLSL 1.10.Eric Anholt
Fixes: glsl1-built-in constants
2010-07-20glsl2: Fix asin() implementation.Eric Anholt
I'd flipped around the order of two operations in paren-balancing adventures, and left out the multiply by sign(x) required for negative x. Fixes: glsl1-acos(vec4) function glsl1-asin(vec4) function glsl1-atan(vec4) function
2010-07-20r600g: split trans unit computationJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-07-20glsl2: notEqual() produces a boolean value, not the base type of the args.Eric Anholt
Fixes: glsl1-vector relational (bvec2 ==,!=) glsl1-vector relational (vec4 !=)
2010-07-20glsl2: Constant-fold assignment conditions.Eric Anholt
2010-07-20glsl2: Don't validate IR if there were compilation errorsIan Romanick
2010-07-20ir_to_mesa: Fix swizzled writemasks with swapped component ordering.Eric Anholt
I hadn't noticed you could do this, but glsl1 tests caught it. Fixes: glsl1-Swizzled writemask glsl1-Swizzled writemask (2) glsl1-Swizzled writemask (rgba) glsl1-Swizzled writemask (stpq)
2010-07-20st/mesa: implement and advertise GL_ARB_draw_elements_base_vertexMarek Olšák
Signed-off-by: Brian Paul <brianp@vmware.com>
2010-07-20draw: correctly handle max_index=0xffffffff case in vcache codeBrian Paul
If max_index=0xffffffff and elt_bias > 0 the test for elt_bias + max_index >= DRAW_PIPE_MAX_VERTICES was wrong. Check earlier if max_index=0xffffffff and do the "fail" case. This fixes the piglit draw-elements-base-vertex test (and probably some other things).
2010-07-20st/mesa: implement depth texture modesMarek Olšák
2010-07-20mesa: call ctx->Driver.ChooseTextureFormat() only when necessary.Brian Paul
When defining mipmap level 'L' and level L-1 exists and the new level's internalFormat matches level L-1's internalFormat, then use the same hw format. Otherwise, do the regular ctx->Driver.ChooseTextureFormat() call. This avoids a problem where we end up choosing different hw formats for different mipmap levels depending on how the levels are defined (glTexImage vs. glCopyTexImage vs. glGenerateMipmap, etc). The root problem is the ChooseTextureFormat() implementation in some drivers uses the user's glTexImage format/type parameters in the choosing heuristic. Later mipmap levels might be generated with different calls (ex: glCopyTexImage()) so we don't always have format/type info and the driver may choose a different format. For more background info see the July 2010 mesa-dev thread "Bug in _mesa_meta_GenerateMipmap"
2010-07-20graw/tests: pass -e option to test draw_elements_instanced()Brian Paul
2010-07-20softpipe: Support non-depth-stencil formats in sp_tile_cache_flush_clear().Michal Krol
2010-07-20glx: #ifdef DRI specific prototypeKristian Høgsberg
https://bugs.freedesktop.org/show_bug.cgi?id=29162
2010-07-20glx/dri2: Fix dri2CopySubBuffer() again.Michel Dänzer
Only refresh the fake front buffer if there is one, and only destroy the region once. Fixes X11 protocol errors reported by 'mcgreg' on IRC.
2010-07-20util: mempool: initialize last block's magic number in a pageMarek Olšák
2010-07-20st/egl: Fixes for recent GLX cleanup.Chia-I Wu
Mainly, the type of __GLXdisplayPrivateRec::screenConfigs has changed from "__GLXscreenConfigs *" to "__GLXscreenConfigs **".
2010-07-20st/dri: Remove driFrameTrackingExtension.Chia-I Wu
The extension has been removed in 22266c391fbe17603b15a83d4ccf5fa9455ccf8d.
2010-07-19glx: Move DRI CopySubBuffer extension to DRI1 codeKristian Høgsberg
We do this in the X server for DRI2.
2010-07-19glx: Move driver_configs to DRI screen privatesKristian Høgsberg
2010-07-19glx: Move drawHash to display privateKristian Høgsberg
The XIDs are display wide so the natural location of the hash is here. This way we don't have to lookup in each of the screen hashes.
2010-07-19glx: Don't use __glXInitialize() when we might be holding __glXLock()Kristian Høgsberg
2010-07-19glx: Workaround mismatch in signedness between extensions and protocolKristian Høgsberg
The DRI2 protocol for ust, msc and sbc are unsigned but the extensions talk about int64_t. Do a little dance to make the compiler shut up.
2010-07-19glx: Move __DRIdrawable pointers to DRI drawable privatesKristian Høgsberg
2010-07-19glx: Remove support for MESA_swap_frame_usageKristian Høgsberg
The extension never worked, the implementation returns GLX_BAD_CONTEXT when enabling the frame tracking.
2010-07-19glx: Move __driScreen into the dri screen privatesKristian Høgsberg
2010-07-19glx: Move DRI1 specific extensions and code to DRI1 screen privateKristian Høgsberg
2010-07-19glx: Move DRI2 extensions to DRI2 screen privateKristian Høgsberg
2010-07-19glx: Drop support for GLX_MESA_allocate_memoryKristian Høgsberg
Only r200 implemented it.
2010-07-19glx: Add screen privates for dri drivers and moved some fields thereKristian Høgsberg
GLXscreenConfigs is badly named and a dumping ground for a lot of stuff. This patch creates private screen structs for the dri drivers and moves some of their fields over there.
2010-07-19glx: Rename various DRI structs away from obnoxious __GLXfooRec conventionKristian Høgsberg
Enough is enough.
2010-07-19glx: Factor out common code from dri2WaitGL() and dri2WaitX()Kristian Høgsberg
2010-07-19glx: Dont use dri2WaitX() to update fake frontKristian Høgsberg
This saves a superfluous flush and a create/destryo region.
2010-07-19i965: Mostly fix glsl-max-varyings.Eric Anholt
There was confusion on both the size of message we can send, and on what the URB destination offset means. The remaining problems appear to be due to spilling of regs in the fragment shader being broken.
2010-07-19i965: Clean up message register setup in emit_vertex_write().Eric Anholt
2010-07-19i965: Reduce repeated calculation of the attribute-offset-in-VUE.Eric Anholt
This cleans up some chipset dependency sprinkled around, and fixes a potential overflow of the attribute offset array for many vertex results.
2010-07-19i965: Clarify the nr_regs calculation in brw_clip.cEric Anholt
2010-07-19i965: Don't set up VUE space for the disabled user clip distances on gen6.Eric Anholt
2010-07-19draw: fix incorrect instancing divisor in LLVM codeBrian Paul
2010-07-19linker: Remove the FINISHME comment for intrastage linkingIan Romanick
2010-07-19linker: Remove redundant check for 'main' in shadersIan Romanick
This is now handled in link_intrastage_shaders.
2010-07-19linker: Track and validate GLSL versions used in shadersIan Romanick
2010-07-19glsl2: Use Elements macroIan Romanick
2010-07-19linker: Recursively resolve function calls in imported functionsIan Romanick
2010-07-19linker: look up function signatures during linking instead of using calleeIan Romanick
Instead of using ir_call::callee, search for the signature in the linked shader. This will allow resolving calls from functions imported from other shaders. The ir_call::callee pointer in the imported function will still reference a signature in the original shader.
2010-07-19linker: Pull find_matching_signature out of call_link_visitorIan Romanick
The list of shaders to search needs to be provided as an explicit parameter to support coming changes. At that point there is no reason for it to be in the class. Also, fix some of the 'const' decorators.