summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* mesa: add a prototype to silence warningsBrian Paul2009-02-281-0/+3
|
* mesa: Sparc's IROUND() optimization is invalid.David Miller2009-02-281-9/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can't use the "fstoi" instruction like this. Unlike other floating point instructions, "fstoi" always rounds towards zero no matter what rounding mode the FPU has been set to. This was validated using the following test program: -------------------- static inline int iround(float f) { int r; __asm__ ("fstoi %1, %0" : "=f" (r) : "f" (f)); return r; } #define IROUND(x) iround(x) #define IROUND_REF(f) ((int) (((f) >= 0.0F) ? ((f) + 0.5F) : ((f) - 0.5F))) int main(void) { float f = -2.0; while (f < 3.0f) { int sparc_val = IROUND(f); int ref_val = IROUND_REF(f); if (sparc_val != ref_val) printf("DIFFERENT[%f]: REF==%d SPARC==%d\n", f, ref_val, sparc_val); f += 0.1f; } return 0; } -------------------- which prints out things like: -------------------- DIFFERENT[-1.900000]: REF==-2 SPARC==-1 DIFFERENT[-1.800000]: REF==-2 SPARC==-1 DIFFERENT[-1.700000]: REF==-2 SPARC==-1 DIFFERENT[-1.600000]: REF==-2 SPARC==-1 DIFFERENT[-1.000000]: REF==-1 SPARC==0 DIFFERENT[-0.900000]: REF==-1 SPARC==0 DIFFERENT[-0.800000]: REF==-1 SPARC==0 DIFFERENT[-0.700000]: REF==-1 SPARC==0 DIFFERENT[-0.600000]: REF==-1 SPARC==0 DIFFERENT[0.500000]: REF==1 SPARC==0 DIFFERENT[0.600000]: REF==1 SPARC==0 ... -------------------- So we have to remove Sparc's IROUND() definition, it's wrong. Signed-off-by: David S. Miller <[email protected]>
* mesa: move GLfixed type and related macros to swrast moduleBrian Paul2009-02-283-32/+34
| | | | Fixed point is only used in swrast and sw-based drivers.
* mesa: convert macro to inline functionBrian Paul2009-02-281-9/+12
|
* mesa: replace FEEDBACK_TOKEN macro with _mesa_feedback_token() inline functionBrian Paul2009-02-284-30/+34
|
* mesa: comments, whitespace, reformattingBrian Paul2009-02-282-32/+33
|
* mesa: remove dead codeBrian Paul2009-02-281-12/+0
|
* mesa: move gl_attrib_node struct to attrib.c tooBrian Paul2009-02-282-11/+13
|
* mesa: move gl_enable_attrib struct to attrib.c, the only place it's usedBrian Paul2009-02-282-78/+84
|
* mesa: lots of updated comments, formatting clean-upsBrian Paul2009-02-281-100/+89
|
* r300-gallium: A handful of fixups.Corbin Simpson2009-02-282-7/+24
|
* r300-gallium: Fix C99 error.Corbin Simpson2009-02-281-1/+2
|
* r300-gallium: Fix RS.Corbin Simpson2009-02-282-5/+8
| | | | I should just stop using "git stash" altogether.
* tgsi: More descriptive sanity diagnostic messages.Michal Krol2009-02-281-15/+15
|
* demos: fix renderbuffer leak in progs/tests/fbotexture.cBrian Paul2009-02-271-10/+21
| | | | And re-org some code for testing purposes.
* intel: remove some unneeded buffer unmap callsBrian Paul2009-02-271-14/+2
| | | | Core mesa now unmaps the buffers if needed in these cases.
* mesa: update fragResults array in arb_output_attrib_string()Brian Paul2009-02-271-1/+12
| | | | Plus add some comments.
* r300-gallium: Properly split up RS into r300 and r500 variants.Corbin Simpson2009-02-273-28/+69
|
* radeon: Add DRM stubs.Corbin Simpson2009-02-273-0/+66
| | | | Nothing really of note, unfortunately.
* Include p_compiler.h in drm_api.h for boolean typedef.Corbin Simpson2009-02-271-0/+2
|
* r300-gallium: Turn true and false into TRUE and FALSE.Corbin Simpson2009-02-274-10/+10
| | | | Match the rest of Gallium.
* mesa: set bufObj->Pointer = NULL after unmappingBrian Paul2009-02-271-4/+3
| | | | Also, ctx->Driver.UnmapBuffer can never be null, so remove conditional.
* mesa: if a buffer object is mapped when glDeleteBuffers() is called, unmap itBrian Paul2009-02-271-0/+5
|
* mesa: updated commentsBrian Paul2009-02-271-24/+18
|
* mesa: fix incorrect error handling in glBufferDataARB()Brian Paul2009-02-271-2/+4
| | | | | | If glBufferDataARB() is called while a buffer object is currently mapped we're supposed to unmap the current buffer, then replace it. Don't generate an error.
* i915: Add support for a new G33-like chipset.Shaohua Li2009-02-272-2/+13
| | | | | Signed-off-by: Shaohua Li <[email protected]> Signed-off-by: Eric Anholt <[email protected]>
* tgsi: don't dump interpolation info except for fragment shader inputsKeith Whitwell2009-02-271-2/+6
| | | | | Don't print the meaningless and confusing CONSTANT interpolation attribute after everything else.
* tests: new mapvbo.c testBrian Paul2009-02-272-0/+139
| | | | | Test that glDrawArrays() isn't effected by a glMapBuffer()/modify/glUnmapBuffer() immediately afterward.
* r300-gallium: Add RS block setup.Corbin Simpson2009-02-274-8/+97
| | | | This is still icky, and only compile-tested.
* r300-gallium: Add RS600 chipsets.Corbin Simpson2009-02-273-0/+9
|
* r300-gallium: A handful of tiny vfmt fixups.Corbin Simpson2009-02-272-13/+24
| | | | | Using a tab of inputs should work, but I keep getting bad results. If only Rawhide's GDB wasn't broken...
* i965: texture fixes: bordered textures, fallback renderingRobert Ellison2009-02-271-3/+31
| | | | | | | | | | | | | | | | | | | | i965 doesn't natively support GL_CLAMP; it treats it like GL_CLAMP_TO_EDGE, which fails conformance tests. This fix adds a clause to the check_fallbacks() test to check whether GL_CLAMP is in use on any enabled 2D texture. If so, and if strict conformance is required (via INTEL_STRICT_CONFORMANCE), a software fallback is mandated. In addition, validate textures *before* checking for fallbacks, rather than after; otherwise, the texture state is never validated and can't be trusted. (In particular, if texturing is enabled and the sampler would access any level beyond level 0 of a texture, the sampler will segfault, because texture validation sets the firstLevel and lastLevel fields of a texture object so that the valid levels will be mapped and accessed correctly. If texture validation doesn't occur, only level 0 is accessed correctly, and that only because firstLevel and lastLevel happen to be set to 0.)
* gallium: fix state tracker's stencil buffer testBrian Paul2009-02-271-1/+1
| | | | | | | | Need to check ctx->DrawBuffer->Visual.stencilBits not ctx->Visual.stencilBits because the later only applies to the window system buffers, not user-created FBOs. This, plus the previous commit, fixes progs/tests/fbotexture.c
* gallium: add st_validate_framebuffer() driver functionBrian Paul2009-02-271-0/+20
| | | | | | Gallium only supports combined depth/stencil buffers, not separate ones. If the user tries to create create a FBO with separate depth/stencil renderbuffers mark the FBO as unsupported.
* util: set vbuf.max_index in draw_vertex_buffer()Keith Whitwell2009-02-271-0/+2
| | | | (cherry picked from commit 1350f2efba5eeceebe0e711db6152c29e9889ce7)
* softpipe: add dumping of post-tranfsormed vertices (disabled)Keith Whitwell2009-02-271-0/+33
|
* mesa: Fix and re-enable sparc normal asm.David Miller2009-02-272-17/+11
| | | | | | | | | | Fix a bug reported in 2003 :-) The output vector has 4 entries, not 3. Unconditionally emit .register directives. Signed-off-by: David S. Miller <[email protected]>
* mesa: Fix Sparc cliptest asm code and re-enable.David Miller2009-02-272-22/+11
| | | | | | | | | | | | | | Stop using register %g7 since that is used by the "system" (ie. the pthread implementation makes use of it). Also, the projection vector can be NULL and we shouldn't try to access it at all in _mesa_sparc_cliptest_points4_np(). ioquake3 would crash due to this bug. Finally, unconditionally emit the register directives and re-enable in _mesa_init_all_sparc_transform_asm(). Signed-off-by: David S. Miller <[email protected]>
* intel: Use flink for global buffer idsJakob Bornecrantz2009-02-273-6/+47
| | | | Also fix minor drm api change
* egl: Fix for minor api changeJakob Bornecrantz2009-02-271-1/+1
|
* st/drm: Seperate get handle for global buffer idsJakob Bornecrantz2009-02-271-3/+12
|
* mesa: Fix DEBUG_MATH build on sparc.David S. Miller2009-02-261-2/+2
| | | | | | | | | | Need to use '__asm__' instead of plain 'asm'. math/m_debug_clip.c: In function ‘test_cliptest_function’: math/m_debug_clip.c:253: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘asm’ math/m_debug_clip.c:253: warning: implicit declaration of function ‘asm’ Signed-off-by: David S. Miller <[email protected]>
* docs: add SPARC assembly updatesBrian Paul2009-02-261-0/+1
|
* intel: no-op the intel_finish_render_texture() functionBrian Paul2009-02-261-13/+10
| | | | It doesn't have to do anything. See comments for more details.
* intel: check texture formats in intel_validate_framebuffer()Brian Paul2009-02-261-0/+29
| | | | | | | | | We can't render into any texture format; only certain formats. Check that render-to-texture's format is renderable in the intel_validate_framebuffer() There seems to be a bug somewhere that causes rendering to rgb565 textures to be corrupted so disallow that for now. This will be revisted.
* intel: updated comment, some debug code (disabled)Brian Paul2009-02-261-3/+12
|
* i965: rename draw_regions -> color_regionsroot2009-02-264-20/+20
| | | | Be a little more specific about what these are.
* demos: add a fourth test case to VBO test for position/color in different VBOsBrian Paul2009-02-261-15/+74
|
* mesa: avoid extraneous calls to ctx->Driver.BindFramebuffer()Brian Paul2009-02-261-6/+13
| | | | Only call this driver function when we really need to bind different buffers.
* i965: add missing init for region->widthBrian Paul2009-02-261-1/+2
| | | | | This doesn't seem to really effect anything but seeing width=0 in drawing regions was confusing.