summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* glx: fix length of GLXGetFBConfigsSGIXJulien Cristau2011-01-311-1/+1
| | | | | | | | | | The extra length is the size of the request *minus* the size of the VendorPrivate header, not the addition. NOTE: This is a candidate for the 7.9 and 7.10 branches Signed-off-by: Julien Cristau <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* glx: fix GLXChangeDrawableAttributesSGIX requestJulien Cristau2011-01-311-2/+3
| | | | | | | | | | | | xGLXChangeDrawableAttributesSGIXReq follows the GLXVendorPrivate header with a drawable, number of attributes, and list of (type, value) attribute pairs. Don't forget to put the number of attributes in there. I don't think this can ever have worked. NOTE: This is a candidate for the 7.9 and 7.10 branches Signed-off-by: Julien Cristau <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* r600g: fix eg OQ properly.Dave Airlie2011-01-312-5/+3
| | | | the context init is separate for these gpus.
* r600g: fix OQ on evergreenAlex Deucher2011-01-312-4/+7
| | | | | | 6xx/7xx have a max of 4 DBs, evergreen have a max of 8. Signed-off-by: Alex Deucher <[email protected]>
* r600g: fix occlusion query results.Dave Airlie2011-01-312-2/+9
| | | | | | | | | | | | | Like on some r5xx, there are multiple DB backends on the r600, we need to add up the query results from each of these to get the final correct value. So far I'm not 100% sure how to calculate the num_db, value setting it to 4 should be harmless enough until we do. This fixes occulsion_query piglit test on my rv740. Signed-off-by: Dave Airlie <[email protected]>
* r600g: remove some non-existent evergreen reg fieldsAlex Deucher2011-01-301-6/+0
| | | | Signed-off-by: Alex Deucher <[email protected]>
* r600g: fix regression in cubemap tests since ↵Dave Airlie2011-01-312-2/+17
| | | | | | | | | eea1d8199b376f37027c14669e0bdf991a22872d Although CUBE is a reduction inst, it writes to more than just PV.X so we need to keep the dst channel. Signed-off-by: Dave Airlie <[email protected]>
* r600g: handle the write all cbufs property.Dave Airlie2011-01-315-30/+16
| | | | | | | | | | This only works on r600/r700 so far, evergreen doesn't appear to have the multiwrite enable bit in the color control, so we may have to actually do a shader rewrite on EG hardware. remove some duplicate code reg defines also. Signed-off-by: Dave Airlie <[email protected]>
* util: Call tables should be const.Henri Verbeet2011-01-301-1/+1
|
* r600g: Update the flushed depth texture after drawing to the corresponding ↵Henri Verbeet2011-01-305-4/+42
| | | | | | | | texture. I know Jerome will probably rewrite the way depth textures work sometime soon. For the time being this should at least make common depth texture usage for shadowing work properly though.
* st/vega: Disable blending when the paint is opaque.Chia-I Wu2011-01-308-5/+37
| | | | | | | When the paint is opaque (currently, solid color with alpha 1.0f), no blending is needed for VG_BLEND_SRC_OVER. This eliminates the serious performance hit introduced by 859106f196ade77f59f8787b071739901cd1a843 for a common scenario.
* st/vega: Remove an invalid sanity check.Chia-I Wu2011-01-301-6/+0
| | | | | Before create_handle returns, obj->handle is 0. Calling handle_to_object will fail.
* st/vega: s/vg[A-Z]/vega[A-Z]/.Chia-I Wu2011-01-304-42/+42
|
* r600g: Fix void pointer arithmetic.Vinson Lee2011-01-301-1/+1
| | | | Fixes SCons build.
* r600g: fixes a segfault in the piglit fbo-genmipmap-formats test.Dave Airlie2011-01-301-2/+0
| | | | | should be no need to unset this ptr here and if we don't end up using the blitter we've just broken the state.
* r300/compiler: Standardize the number of bits used by swizzle fieldsTom Stellard2011-01-2910-46/+50
| | | | | | | | | | | | | | Swizzles are now defined everywhere as a field with 12 bits that contains 4 channels worth of meaningful information. Any channel that is unused is set to RC_SWIZZLE_UNUSED. This change is necessary because rgb instructions and alpha instructions were initializing channels that would never be used (channel 3 for rgb and channels 1-3 for alpha) with 0 (aka RC_SWIZZLE_X). This made it impossible to use generic helper functions for swizzles, because sometimes a channel value of 0 meant unused and other times it meant RC_SWIZZLE_X. All hacks that tried to guess how many channels were relevant have also been removed.
* r300g: upload translated indices via the uploaderMarek Olšák2011-01-301-20/+45
|
* r300g: rework vertex format fallbackMarek Olšák2011-01-307-78/+86
| | | | | | 1) Only translate the [min_index, max_index] range. 2) Upload translated vertices via the uploader. 3) Rename valid_vertex_buffer[] to real_vertex_buffer[]
* r600g: upload translated indices via the uploaderMarek Olšák2011-01-301-3/+13
|
* r600g: rework vertex format fallbackMarek Olšák2011-01-303-47/+55
| | | | | 1) Only translate the [min_index, max_index] range. 2) Upload translated vertices via the uploader.
* r600g: fix vertex format fallbackMarek Olšák2011-01-305-21/+44
| | | | | | This fixes: - piglit/draw-vertices - piglit/draw-vertices-half-float
* r600g: rework vertex buffer uploadsMarek Olšák2011-01-303-84/+106
| | | | | | | | | | | Only upload the [min_index, max_index] range instead of [0, userbuf_size]. This an important optimization. Framerate in Lightsmark: Before: 22 fps After: 75 fps The same optimization is already in r300g.
* r600g: consolidate set_constant_buffer functionsMarek Olšák2011-01-304-97/+51
|
* r600g: consolidate vertex_buffer_update functionsMarek Olšák2011-01-304-164/+134
|
* r600g: consolidate draw_vbo functions (v2)Marek Olšák2011-01-305-258/+142
| | | | Added a conditional to spi_update per Dave's comment.
* r600g: make r600_drawl inherit pipe_draw_infoMarek Olšák2011-01-305-54/+30
|
* r600g: add back u_upload_mgr integrationMarek Olšák2011-01-3010-214/+73
| | | | | | | | | | | | I can't see a performance difference with this code, which means all the driver-specific code removed in this commit was unnecessary. Now we use u_upload_mgr in a slightly different way than we did before it got dropped. I am not restoring the original code "as is" due to latest u_upload_mgr changes that r300g performance benefits from. This also fixes: - piglit/fp-kil
* nvc0: implement transform feedback stateChristoph Bumiller2011-01-307-59/+163
|
* nvc0: enable PIPE_CAP_ARRAY_TEXTURES and fix themChristoph Bumiller2011-01-294-19/+34
|
* egl_dri2: Export glapi symbols for DRI drivers.Chia-I Wu2011-01-302-10/+27
| | | | | | | | | | | | When an app loads libEGL.so dynamically with RTLD_LOCAL, loading DRI drivers would fail because of missing glapi symbols. This commit makes egl_dri2 load libglapi.so with RTLD_GLOBAL to export glapi symbols for future symbol resolutions. The same trick can be found in GLX. However, egl_dri2 can only do so when --enable-shared-glapi is given. Because, otherwise, both libGL.so and libglapi.so define glapi symbols and egl_dri2 cannot tell which library to load.
* egl: Make the transition to built-in drivers more smooth.Chia-I Wu2011-01-301-5/+24
| | | | | | When the user sets EGL_DRIVER to egl_dri2 (or egl_glx), make sure the built-in driver is used. The user might leave the outdated egl_dri2.so (or egl_glx.so) on the filesystem and we do not want to load it.
* mapi: Workaround a bug in makedepend.Chia-I Wu2011-01-294-7/+30
| | | | | | | | | | | | | makedepend would crash when a source includes a header indirectly, such as #define HEADER "some-header.h" #include HEADER Do not define HEADER (makedepend would detects this as an incomplete include) and add the dependency manually in the Makefile. This should hopefully fix bug #33374.
* u_blitter: use user buffers instead of real buffersMarek Olšák2011-01-291-21/+8
| | | | User buffers may be the fastest way to upload data.
* gallium/docs: add info about transfer boxes and array texturesBrian Paul2011-01-281-0/+16
|
* gallium: added comments to pipe_transferBrian Paul2011-01-281-4/+4
|
* st/mesa: fix texture array dimensionsBrian Paul2011-01-283-18/+122
| | | | | | | | | | | | | For 1D/2D texture arrays use the pipe_resource::array_size field. In OpenGL 1D arrays texture use the height dimension as the array size and 2D array textures use the depth dimension as the array size. Gallium uses a special array_size field instead. When setting up gallium textures or comparing Mesa textures to gallium textures we need to be extra careful that we're comparing the right fields. The new st_gl_texture_dims_to_pipe_dims() function maps OpenGL texture dimensions to gallium texture dimensions and simplifies this quite a bit.
* softpipe: fix array textures to use resource array_sizeBrian Paul2011-01-283-21/+88
| | | | Don't use height for 1D array textures or depth for 2D array textures.
* mesa: fix typo, wrap long lineBrian Paul2011-01-281-2/+3
|
* st/mesa: pass layers param to st_texture_create()Brian Paul2011-01-287-4/+9
|
* Revert "glcpp: Demote "macro redefined" from an error to a warning"Carl Worth2011-01-294-38/+15
| | | | | | | | This reverts commit d3df641f0aba99b0b65ecd4d9b06798bca090a29. The original commit had sat unpushed on my machine for months. By the time I found it again, I had forgotten that we had decided not to use this change after all, (the relevant test was removed long ago).
* util: Fix leak of transfers in upload managerJakob Bornecrantz2011-01-281-0/+1
|
* mesa: Fix available APIs for AMD_conservative_depthChad Versace2011-01-281-1/+1
| | | | | Remove ES2, since AMD_conservative_depth is not listed in the OpenGL ES extension registry.
* r300/compiler: print stats based on the initial number of instructionsMarek Olšák2011-01-282-3/+10
| | | | | The same number of shaders is now printed regardless of optimizations being enabled or not, so that we can compare shader stats side by side easily.
* r300g: fix resource_copy_region for DXT SRGB formatsMarek Olšák2011-01-281-4/+4
|
* glcpp: Demote "macro redefined" from an error to a warningCarl Worth2011-01-284-15/+38
| | | | | | | | | | The GLSL specification is vague here, (just says "as is standard for C++"), though the C specifications seem quite clear that this should be an error. However, an existing piglit test (CorrectPreprocess11.frag) expects this to be a warning, not an error, so we change this, and document in README the deviation from the specification.
* glapi: add @GOTPCREL relocation typeDimitry Andric2011-01-272-2/+4
| | | | | | | | | Fixes http://bugs.freedesktop.org/show_bug.cgi?id=33440 This replaces commit 731ec60da3ccb92f5bfb4d6f1bc3c8e712751376 NOTE: This is a candidate for the 7.9 and 7.10 branches Signed-off-by: Brian Paul <[email protected]>
* r600g: handle PIPE_CAP_ARRAY_TEXTURESMarek Olšák2011-01-281-0/+1
|
* r300g: handle PIPE_CAP_ARRAY_TEXTURESMarek Olšák2011-01-281-0/+1
|
* r300g: 8x8-compressed zbuffer can only be point-sampledMarek Olšák2011-01-281-1/+2
|
* r300g: fix and re-enable 8x8 zbuffer compression modeMarek Olšák2011-01-286-44/+69
| | | | Also cleanup the whole thing.