summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* r600g: remove unsupported evergreen CB formatsAlex Deucher2012-01-271-7/+0
| | | | | | | | | | | | | | The evergreen+ CB no longer supports the following formats compared to 6xx/7xx: - COLOR_4_4 - COLOR_3_3_2 - COLOR_6_5_5 - COLOR_8_24_FLOAT - COLOR_24_8_FLOAT - COLOR_11_11_10 - COLOR_11_11_10_FLOAT Signed-off-by: Alex Deucher <[email protected]>
* mesa: Avoid void * arithmetic.José Fonseca2012-01-271-1/+1
| | | | Should fix MSVC build.
* swrast: Fix fixed-function fragment processingChad Versace2012-01-279-44/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On i965, _mesa_ir_link_shader is never called. As a consequence, the current fragment program (ctx->FragmentProgram->_Current) exists but is invalid because it has no instructions. Yet swrast continued to attempt to use the empty program. To avoid using the empty program, this patch 1) defines a new function, _swrast_use_fragment_program, which checks if the current fragment program exists and differs from the fixed function fragment program, and, when appropriate, 2) replaces checks of the form if (ctx->FragmentProgram->_Current == NULL) with if (_swrast_use_fragment_program(ctx)) Fixes the following oglconform regressions on i965/gen6: api-fogcoord(basic.allCases.log) api-mtexcoord(basic.allCases.log) api-seccolor(basic.allCases.log) api-texcoord(basic.allCases.log) blend-separate(basic.allCases) colorsum(basic.allCases.log) The tests were ran with the GLXFBConfig: visual x bf lv rg d st colorbuffer sr ax dp st accumbuffer ms cav id dep cl sp sz l ci b ro r g b a F gb bf th cl r g b a ns b eat ---------------------------------------------------------------------------- 0x021 24 tc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 0 0 None (Note: I originally believed that the hunk in _swrast_update_fragment_program was unnecessary. But it is required to fix blend-separate.) Note: This is a candidate for the 8.0 branch. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=43327 Reveiwed-by: Eric Anholt <[email protected]> Reviewed-by: Ian Romanick <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* mesa: set clamp bit in glGetTexImage for GL_UNSIGNED_NORMALIZEDAnuj Phogat2012-01-271-0/+9
| | | | | | | | | | | | | Color clamping should be enabled in glGetTexImage if texture dataType is GL_UNSIGNED_NORMALIZED and format is GL_LUMINANCE or GL_LUMINANCE_ALPHA Fixes 2 Intel oglconform test cases: pxconv-gettex and pxtrans-gettex https://bugs.freedesktop.org/show_bug.cgi?id=40864 NOTE: This is a candidate for the 8.0 branch Signed-off-by: Anuj Phogat <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Don't round-trip integer texture data through a floating point temp.Eric Anholt2012-01-271-21/+24
| | | | | | | | | | | | | | | This was losing bits of precision. Fixes (with the previous commits): piglit EXT_texture_integer/getteximage-clamping piglit EXT_texture_integer/getteximage-clamping GL_ARB_texture_rg oglc advanced.mipmap.upload Regresses oglc negative.typeFormatMismatch.teximage from fail to abort, because it's been hitting texstore for a format/type combo that shouldn't happen. NOTE: This is a candidate for the 8.0 branch. Reviewed-by: Brian Paul <[email protected]>
* mesa: When unpacking signed integer pixel data, don't clamp to 0.Eric Anholt2012-01-271-33/+12
| | | | | | | | | | | | In the core, we always treat spans of int/uint data as uint, so this extract function was truncating storage of integer pixel data to a n int texture to (0, max_int) instead of (min_int, max_int). There is probably missing code for handling truncation on conversion between pixel formats, still, but this does improve things. NOTE: This is a candidate for the 8.0 branch. Reviewed-by: Brian Paul <[email protected]>
* mesa: Add clamping for packing of integer data.Eric Anholt2012-01-271-4/+4
| | | | | | | | | | Mostly fixes piglit EXT_texture_integer/getteximage-clamping. The remaining failure involves precision loss on storing of int32 texture data (something I knew was an issue, but wasn't trying to test). NOTE: This is a candidate for the 8.0 branch. Reviewed-by: Brian Paul <[email protected]>
* mesa: Add missing format unpack for some integer texture formats.Eric Anholt2012-01-271-0/+321
| | | | | | | | | | | | | This cut and paste is pretty awful. I'm tempted to do a lot of this using preprocessor tricks for customizing the parameter type from a template function, but that's just a different sort of hideous. Fixes 8 Intel oglconform int-textures cases. NOTE: This is a candidate for the 8.0 branch. v2: Add alpha formats, too. Reviewed-by: Brian Paul <[email protected]>
* i965: Don't allow rendering to non-GL_RED/RG/RGBA integer textures.Eric Anholt2012-01-271-0/+11
| | | | Fixes piglit EXT_texture_integer/fbo-blending.
* intel: Pass the gl_renderbuffer to render_target_supported() vtable method.Eric Anholt2012-01-277-10/+17
| | | | | | I'm going to want to go looking at it for an integer texture fix. NOTE: This is a candidate for the 8.0 branch.
* intel: Make a renderbuffer wrapping a texture have the same _BaseFormat.Eric Anholt2012-01-271-1/+1
| | | | | | | | Otherwise, when you asked for the _BaseFormat of an rb wrapping a GL_RGB texture, you got GL_RGBA because that's what we were storing the texture data as. NOTE: This is a candidate for the 8.0 branch.
* intel: Simplify intel_renderbuffer_update_wrapper() by passing in the image.Eric Anholt2012-01-271-20/+9
| | | | NOTE: This is a candidate for the 8.0 branch.
* intel: Drop intel_wrap_miptree().Eric Anholt2012-01-271-53/+3
| | | | | | | | Most of this function was just calling intel_renderbuffer_update_wrapper(), which was called immediately afterwards in the only caller. NOTE: This is a candidate for the 8.0 branch.
* intel: Comment typo fix.Eric Anholt2012-01-271-1/+1
|
* mesa: Fix handling of glCopyBufferSubData() for src == dst.Eric Anholt2012-01-271-6/+19
| | | | | | | | Fixes piglit ARB_copy_buffer-overlap, on swrast, which previously assertion failed. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* intel: Fix accum buffer mapping since the swrast rework.Eric Anholt2012-01-271-5/+7
| | | | | | A pure swrast-allocated buffer gets an irb of NULL, so we segfaulted in the clear-accum test. Just look at the swrast renderbuffer pointer for handling swrast rbs.
* mesa: Fix display list handling for GL_EXT_framebuffer_multisample.Eric Anholt2012-01-271-0/+3
| | | | | | | | | | | | | | | From the extension spec: Added to section 5.4, as part of the discussion of which commands are not compiled into display lists: "Certain commands, when called while compiling a display list, are not compiled into the display list but are executed immediately. These are: ..., RenderbufferStorageMultisampleEXT..." Fixes piglit EXT_framebuffer_multisample/dlist. Reviewed-by: Brian Paul <[email protected]>
* mesa: Fix display list handling for EXT_framebuffer_object.Eric Anholt2012-01-271-0/+18
| | | | | | | | | | | | | | | | | | | | Noticed when handling a similar problem in EXT_framebuffer_multisample. From the EXT_framebuffer_object spec: Added to section 5.4, as part of the discussion of which commands are not compiled into display lists: "Certain commands, when called while compiling a display list, are not compiled into the display list but are executed immediately. These are: ..., GenFramebuffersEXT, BindFramebufferEXT, DeleteFramebuffersEXT, CheckFramebufferStatusEXT, GenRenderbuffersEXT, BindRenderbufferEXT, DeleteRenderbuffersEXT, RenderbufferStorageEXT, FramebufferTexture1DEXT, FramebufferTexture2DEXT, FramebufferTexture3DEXT, FramebufferRenderbufferEXT, GenerateMipmapEXT..." Reviewed-by: Brian Paul <[email protected]>
* gallivm: Swizzle constants into the right AoS ordering.Brian Paul2012-01-271-1/+1
| | | | | | | | Constants array is always assumed to be RGBA, which means we need to swizzle the constant elements into place to match the AoS ordering (e.g., BGRA) that was passed to lp_build_tgsi_aos(). Signed-off-by: José Fonseca <[email protected]>
* draw: Ensure that prepare is always run after LLVM garbagge collection.José Fonseca2012-01-271-0/+5
| | | | | | | | | | Should avoid dangling pointer derreference with glean --run results --overwrite --quick --tests texSwizzle NOTE: This is a candidate for the 8.0 branch. Reviewed-by: Brian Paul <[email protected]>
* configure.ac: Don't use $CLANG since it will collide with the static analyzer.Jeremy Huddleston2012-01-271-3/+3
| | | | | | | | We just prefix the $CLANG environment variable in configure.ac with acv_mesa_ Found by: tinderbox Signed-off-by: Jeremy Huddleston <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* Revert "r600g: use S_028B20_BUFFER_0_EN macro for streamout buffer enable"Marek Olšák2012-01-271-1/+1
| | | | | | This reverts commit d6cd514edbeca0de38561f66189748078d0dc602. It broke multiple streamout buffers, because it only enabled the first one.
* i965/automake: use $top_srcdir instead of relative linksMatt Turner2012-01-271-3/+3
| | | | Fixes out-of-tree builds.
* dri common: add .gitignoreMatt Turner2012-01-271-1/+3
|
* configure.ac: remove shared/static optionsMatt Turner2012-01-261-31/+1
| | | | now that libtool provides them.
* dri: make sure to build libdricommon.laMatt Turner2012-01-262-1/+2
|
* i965: Drop the missing symbols link test.Eric Anholt2012-01-261-9/+0
| | | | | | | | | | | | | | This was horribly broken and has cost everyone more time than we were ever going to save using it. It might have been fixable, but the problem it was originally trying to solve can be better solved with -Werror=missing-prototypes and -Werror=implicit-function-declaration. Also, it was always producing a big scary warning about how the link test was non-portable. Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44928
* nouveau: Fix missing dri common symbols after automake conversion.Eric Anholt2012-01-261-1/+2
|
* radeon: Fix missing dri common symbols after automake conversion.Eric Anholt2012-01-262-2/+4
| | | | Reviewed-by: Matt Turner <[email protected]>
* dri: Move the compile of the common files to a convenience library.Eric Anholt2012-01-263-20/+43
| | | | Reviewed-by: Matt Turner <[email protected]>
* i915: Fix driver after automakeification.Eric Anholt2012-01-261-1/+9
|
* i965/vs: Use the sampler for VS pull constant loading on Ivybridge.Kenneth Graunke2012-01-261-0/+17
| | | | | | | | | | | | | | | | | | Substantially increases performance in GLBenchmark PRO: - 320x240 => 3.28x - 1920x1080 => 1.47x - 2560x1440 => 1.27x The LD message ignores the sampler unit index and SAMPLER_STATE pointer, instead relying on hard-wired default state. Thus, there's no need to worry about running out of sampler units or providing SAMPLER_STATE; this small patch should be all that's required. NOTE: This is a candidate for release branches. (It requires the preceding commit to compile.) Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965: Expose brw_set_sampler_message for use outside brw_eu_emit.c.Kenneth Graunke2012-01-262-10/+22
| | | | | | | | brw_SAMPLE is full of complex workarounds for original Broadwater hardware, and I'd rather avoid all that for my next Ivybridge patch. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* svga: reset vertex buffer offset in svga_release_user_upl_buffers()Brian Paul2012-01-261-0/+11
| | | | | | | | | | | | | | This function releases the buffer that contains user-space vertex data. The buffer_offset field points into that buffer. So reset the buffer_offset to zero when we release the buffer so that subsequent draws don't inadvertantly get a bad offset. Fixes error messages / failed assertions (in the draw module's bounds/size checking code) when running piglit's polygon-mode test. NOTE: This is a candidate for the 8.0 branch. Reviewed-by: José Fonseca <[email protected]>
* mapi: Make initMagic unsigned.José Fonseca2012-01-261-5/+5
| | | | | To avoid signed/unsigned comparison warnings against INIT_MAGIC 0xff8adc98, which doesn't fit on signed integers.
* scons: Remove references to u_thread.cJosé Fonseca2012-01-263-4/+8
| | | | For future reference: always run "git grep" on refactorings.
* Fix visibility of u_thread functions by inlining themMatt Turner2012-01-263-223/+138
| | | | | | | | | -fvisibility=hidden was preventing them from being exported, which combined with shared-glapi was causing undefined symbol errors at runtime. We don't want to make these functions part of the ABI, and given how simple they are, we simply inline them.
* nouveau: include s_context.h to silence missing prototype warningsBrian Paul2012-01-261-0/+1
|
* swrast: silence uninitialized var warningsBrian Paul2012-01-261-2/+2
|
* nvfx: fix nv3x fallout from state validation changesLucas Stach2012-01-261-1/+5
| | | | | | | | | | | From c998f732d42da5e962fe5da294493132c3e8dc5f Mon Sep 17 00:00:00 2001 From: Lucas Stach <[email protected]> Date: Tue, 24 Jan 2012 09:46:32 +0100 Subject: [PATCH] nvfx: fix nv3x fallout from state validation changes Apparently nv3x needs some curde hacks to work properly. This is clearly not the right fix, but it's the behaviour of the old code and fixes regressions seen by users.
* gbm: Add back link flags for udev, dl and glapiBenjamin Franzke2012-01-261-1/+3
| | | | They were left out when migrating to automake.
* configure: Use WAYLAND_SCANNER_RULES only if availableBenjamin Franzke2012-01-261-1/+2
| | | | | | | | This has the drawback that when creating configure for distribution, wayland needs to be available for the packager. Also the the macros has the wayland prefix hardcoded, so we cant copy it in mesa right now.
* draw: Only run prepare when state, prim and opt changesJakob Bornecrantz2012-01-265-10/+66
| | | | | | | | | | | | | In bad applications like ipers which does a lot of draw calls with no state changes this helps to greatly reduce time spent in prepare. In ipers around 7% of CPU was spent in various prepare functions, after this commit no prepare function show on the profile. This commit also has the added benefit of now grouping all pipelined drawing into a single draw call if the driver uses vbuf_render. Reviewed-by: Stéphane Marchesin <[email protected]> Tested-by: Stéphane Marchesin <[email protected]>
* draw: Don't revalidate pipeline on backend flushesJakob Bornecrantz2012-01-261-1/+2
| | | | | Reviewed-by: Stéphane Marchesin <[email protected]> Tested-by: Stéphane Marchesin <[email protected]>
* draw: Remove reduced_primJakob Bornecrantz2012-01-263-12/+0
| | | | | | | | | Conflicts: src/gallium/auxiliary/draw/draw_context.c Reviewed-by: Stéphane Marchesin <[email protected]> Tested-by: Stéphane Marchesin <[email protected]>
* automake: src/egl/waylandBenjamin Franzke2012-01-2614-190/+47
| | | | | | | So we can use the wayland scanner makro, which is way better than our previous runtime-pkgconfig hack. Reviewed-by: Matt Turner <[email protected]>
* i965/gen6/GT1: Increase max_vs_entries to 256.Paul Berry2012-01-251-1/+1
| | | | | | | | | | Previously, max_vs_entries was set to 128 for GT1, and 256 for GT2, based on the PRM (see Vol2, part1, p28). However, Bspec section 1.6.5 indicates that the maximum number of VS entries is 256 for GT1. No piglit regressions on GT1. Reviewed-by: Kenneth Graunke <[email protected]>
* i965/gen6: Fix segfault in transform feedback to DYNAMIC_DRAW buffers.Paul Berry2012-01-251-1/+4
| | | | | | | | | | | | | | | | | | When storing data in a buffer of type DYNAMIC_DRAW, we don't create a drm_intel_bo for it; instead we store the data in system memory and defer allocation of the GPU buffer until it is needed. Therefore, in brw_update_sol_surface(), we can't just consult the "buffer" field of the intel_buffer_object structure; we need to call intel_bufferobj_buffer() to ensure that the deferred allocation occurs. This parallels a similar fix for gen7 (see commit ba6f4c9). Fixes piglit test EXT_transform_feedback/buffer-usage on gen6. This is a candidate for the 8.0 release branch. Reviewed-by: Eric Anholt <[email protected]>
* gbm: fix copy & paste error in gbm_bo_get_handle documentationAnder Conselvan de Oliveira2012-01-251-1/+1
|
* mesa/st: Assign inputsRead at right (previous) location.José Fonseca2012-01-251-2/+4
| | | | | | | | Fixes the src/mesa/state_tracker/st_glsl_to_tgsi.cpp:4032:src_register: Assertion `t->inputMapping[index] < (sizeof(t->inputs)/sizeof(*(t->inputs)))' failed. assertion failure introduced in 697b9945fb0f55428b06821f98fd8621372f81ad