summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-06-30progs/util: make sure function pointers are initializedKeith Whitwell
Call Init() from CompileShaderFile, was previously only called for the Text version of this function.
2009-06-30mesa: Set FLUSH_EXPLICIT_BIT flags when calling FlushMappedBufferRange.José Fonseca
As prescribed by ARB_map_buffer_range.
2009-06-30util: Set PIPE_BUFFER_USAGE_FLUSH_EXPLICIT when calling ↵José Fonseca
buffer_flush_mapped_range.
2009-06-30gallium: New PIPE_BUFFER_USAGE_FLUSH_EXPLICIT flag for ↵José Fonseca
buffer_flush_mapped_range. When a buffer was mapped for write and no explicit flush range was provided the existing semantics were that the whole buffer would be flushed, mostly for backwards compatability with non map-buffer-range aware code. However if the buffer was mapped/unmapped with nothing really written -- something that often happens with the vbo -- we were unnecessarily assuming that the whole buffer was written. The new PIPE_BUFFER_USAGE_FLUSH_EXPLICIT flag (based from ARB_map_buffer_range 's GL_MAP_FLUSH_EXPLICIT_BIT flag) allows to clearly distinguish the legacy usage from the nothing written usage.
2009-06-30st/gl: Add stubs for CompressedTexSubImage[1D|3D]Jakob Bornecrantz
2009-06-30st/gl: Add support for glCompressedTexSubImageJakob Bornecrantz
2009-06-30progs/tests: Add tests for glCompressedTexSubImageJakob Bornecrantz
2009-07-01util: Increase OutputDebugStringA to 4k.José Fonseca
According to http://unixwiz.net/techtips/outputdebugstring.html that's how big the buffer is. The 512bytes limitation is in kernel mode.
2009-07-01mesa: Unbind depth/stencil surface from pipe_framebuffer when none is attached.José Fonseca
2009-07-01st/wgl: dummy implementation of wgl swapinterval extensionKeith Whitwell
Required as some applications retrieve and call these functions regardless of the fact that we don't advertise the extension and further more the results of wglGetProcAddress are NULL.
2009-07-01gallium: fix the front face semanticsZack Rusin
mesa allocates both frontface and pointcoord registers within the fog coordinate register, by using swizzling. to make it cleaner and easier for drivers we want each of them in its own register. so when doing compilation from the mesa IR to tgsi allocate new registers for both and add new semantics to the respective declarations.
2009-07-01wgl: Optimize wglGetProcAddress.José Fonseca
Do linear search only if prefix matches.
2009-06-30i915: Fix assertion failure on remapping a non-BO-backed VBO.Eric Anholt
Failure to set the obj->Pointer back to null tripped up the assertion. Bug #22428. (cherry picked from commit 57a06d3a48c9af1067ec05e3ad96c58f4b9b99be)
2009-06-30xdemos: Fix xdemos which default to using display :0.0 to default to $DISPLAYJon TURNEY
Fix xdemos which default to using display :0.0 to default to $DISPLAY, this is kind of irritating when testing on a display other than :0.0 Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2009-06-30mesa/vbo: fix compile and replay of nodes ending in a FALLBACKKeith Whitwell
Where vbo save nodes are terminated with a call to DO_FALLBACK(), as in the case of a recursive CallList which is itself within a Begin/End pair, there two problems: 1) The display list node's primitive information was incorrect, stating the cut-off prim had zero vertices 2) On replay, we would get confused by a primitive that started in a node, but was terminated by individual opcodes. This change fixes the first problem by correctly terminating the last primitive on fallback, and the second by forcing the display list to use the Loopback path, converting all nodes into immediate-mode rendering. The loopback fix is a performance hit, but avoiding this would require a fairly large rework of this code.
2009-06-30progs/trivial: test case for dlist statechange eliminationKeith Whitwell
Creates a display list with redundant call to glShadeModel. View dlist contents with MESA_VERBOSE=list
2009-06-30mesa/dlist: restore missing SAVE_FLUSH_VERTICES in save_ShadeModelKeith Whitwell
Reorganization of ShadeModel to avoid flushing vertices too often ended up never flushing vertices due to omitted line of code.
2009-06-30mesa/vbo: use _lookup_prim_by_nr for debuggingKeith Whitwell
Switch over to specialized enum lookup for primitives
2009-06-30mesa: add debug printer for primitive nameKeith Whitwell
Add a simple version of _mesa_lookup_enum_by_nr() which expects a primitive enum (GL_POINTS..GL_POLYGON). This avoids some annoying duplicates when looking up primitives, such as the GL_FALSE/GL_POINTS clash.
2009-06-30progs/glsl: link with GLEW libraryBrian Paul
(cherry picked from commit b1f2f92d9b2d190d39fb1b5c919c59c9539a025a)
2009-06-30identity: Create a drm_api wrapperJakob Bornecrantz
2009-06-30drm/st: Return drm_api struct from a functionJakob Bornecrantz
2009-06-30mesa/dlist: shortcircuit some redundant statechanges at compile timeKeith Whitwell
Currently, state-changes in mesa display lists are more or less a verbatim recording of the GL calls made during compilation. This change introduces a minor optimization to recognize and eliminate cases where the application emits redundant state changes, eg: glShadeModel( GL_FLAT ); glBegin( prim ) ... glEnd() glShadeModel( GL_FLAT ); glBegin( prim ) ... glEnd() The big win is when we can eliminate all the statechanges between two primitive blocks and combine them into a single VBO node. This commit implements state-change elimination for Material and ShadeModel only. This is enough to make a start on debugging, etc.
2009-06-29softpipe: use shadow_compare4() to compare texcoord to four texture samplesBrian Paul
2009-06-29softpipe: pass sampler state to shadow_compare()Brian Paul
2009-06-29nouveau: Expect right params to tex_transfer_destroy().Younes Manton
Never crashed on x86, ptx is in the same stack slot in either case. Thanks to Bob Gleitsmann for catching this.
2009-06-29nouveau: Turn off debug cannon.Younes Manton
2009-06-29intel: Enable EXT_gpu_program_parameters.Eric Anholt
There doesn't appear to be any driver impact for enabling this, and tests/prog_parameter passes.
2009-06-29Merge branch 'mesa_7_5_branch'Brian Paul
2009-06-29gallium/draw: sketch out some missing pointcoord codeBrian Paul
The gl_PointCoord attribute is currently expected to be in the fog coord register's z/w components. This was never totally fleshed out though. This is just some placeholder code.
2009-06-29st/mesa: enable GL_ARB_framebuffer_objectBrian Paul
All gallium drivers should be able to support mixed-size color/depth/stencil buffers. If not, we'll need a new PIPE_CAP_ query.
2009-06-29mesa: check for ARB_framebuffer_object for GL_TEXTURE_STENCIL_SIZE_EXT queryBrian Paul
2009-06-29mesa: alphabetize linesBrian Paul
2009-06-29intel: added null ptr checkBrian Paul
This fixes a segfault seen with piglit's fdo20701 test.
2009-06-29Revert "intel: Remove unneded pthread mutex in LOCK_HARDWARE."Eric Anholt
This reverts commit de447afff26706e3bf8bdcd5cfb8b1daf49b4b21 but puts the lock under DRI1-only. From keithw: > It's there because the DRI1 code doesn't actually achieve the mutexing > which it looks as if it should. For multi-threaded applications it was > always possible to get two threads inside locked regions -- I have no > idea how, but it certainly was and presumably still is possible.
2009-06-29intel: Move note_unlock() implementation to the one place it's needed.Eric Anholt
2009-06-29intel: Remove unneded pthread mutex in LOCK_HARDWARE.Eric Anholt
This would cause LOCK_HARDWARE to mutex all contexts in this process on both DRI1 and DRI2. On DRI1, LOCK_HARDWARE already does it for all processes on the system. On DRI2, LOCK_HARDWARE doesn't, but there shouldn't be any state outside the context that needs any additional protection. Notably, the bufmgr is protected by its own mutex and not LOCK_HARDWARE. This code was originally introduced with the i915tex code dump, so it's not clear what it was there for.
2009-06-29intel: Make LOCK_HARDWARE recursive to avoid hand-rolling recursiveness.Eric Anholt
2009-06-29Merge branch 'mesa_7_5_branch'Brian Paul
2009-06-29progs/glsl: link with GLEW libraryBrian Paul
2009-06-29progs/util: make sure function pointers are initializedKeith Whitwell
Call Init() from CompileShaderFile, was previously only called for the Text version of this function.
2009-06-29progs/glsl: compile with scons and glewKeith Whitwell
Get most of these working with scons.
2009-06-29scons: Don't raise an exception when DXSDK is not found.José Fonseca
Unfortunately scons does not check if a tool exists before it invokes its generate function.
2009-06-28scons: Disable optimizations only for gcc-4.2José Fonseca
gcc-4.2's optimizer has a strange bug where it looses code from inner loops in certain situations. For example, if the appearently innocent looking code below is compiled with gcc-4.2 -S -O1, the inner loop's code is missing from the outputed assembly. struct Size { unsigned width; }; struct Command { unsigned length; struct Size sizes[32]; }; extern void emit_command(void *command, unsigned length); void create_surface( struct Size size, unsigned faces, unsigned levels) { struct Command cmd; unsigned face; unsigned level; cmd.length = faces*levels*sizeof(cmd.sizes[0]); for(face = 0; face < faces; ++face) { for(level = 0; level < levels; ++level) { cmd.sizes[face*levels + level] = size; // This should generate a shrl statement, but the whole for body // disappears in gcc-4.2 -O1/-O2/-O3! size.width >>= 1; } } emit(&cmd, sizeof cmd.length + cmd.length); } Note that this is not specific to MinGW's gcc-4.2 crosscompiler (the version typically found in debian/ubuntu's mingw32 packages). gcc-4.2 on Linux also displays the same error. gcc-4.3 and above gets this correctly though. Updated MinGW debian packages with gcc-4.3 are available from http://people.freedesktop.org/~jrfonseca/debian/pool/main/m/
2009-06-28scons: Use -Bsymbolic linker option.José Fonseca
This prevents the error relocation R_X86_64_PC32 against symbol `_gl_DispatchTSD' can not be used when making a shared object; recompile with -fPIC when building on x86_64 architecture.
2009-06-26docs: detect when too many varying vars are usedBrian Paul
2009-06-26glsl: check number of varying variables against the limitBrian Paul
Link fails if too many varying vars. (cherry picked from master, commit cc58fbcf2c5c88f406818db60910f537e03610d6)
2009-06-26docs: fix typos, remove old text from relnotes fileBrian Paul
2009-06-26docs: bring over news updates from 7.4 branchBrian Paul
2009-06-26docs: bring in 7.4.3 and 7.4.4 release notes, newsBrian Paul