summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* i965: brwInitVtbl needs to know the chipset generationIan Romanick2012-09-282-0/+6
| | | | | | Fixes major regressions since de958de. Signed-off-by: Ian Romanick <[email protected]>
* i915: Don't free the intel_context structure when intelCreateContext fails.Ian Romanick2012-09-281-3/+0
| | | | | | | | | | intelDestroyContext will eventually be called, and it will clean things up. NOTE: This is a candidate for the 9.0 branch. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=53618
* i965: Don't free the intel_context structure when intelCreateContext fails.Ian Romanick2012-09-281-3/+2
| | | | | | | | | | | | | intelDestroyContext will eventually be called, and it will clean things up. The call to brwInitVtbl is moved earlier so that intelDestroyContext can call the device-specific destructor. This also makes the code look more like the i915 code. NOTE: This is a candidate for the 9.0 branch. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54301
* intel: Don't call intelDestroyContext if there is no context to destroyIan Romanick2012-09-281-1/+3
| | | | | | | | | | | | Some error paths in the device-specific context creation functions can exit before the deintel_context structure is allocated. NOTE: This is a candidate for the 9.0 branch. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=53618 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54301
* dri_util: Use calloc to allocate __DRIcontextIan Romanick2012-09-281-1/+1
| | | | | | | | | | | | | | | The __DRIcontext contains some pointers, and some drivers check for them to be NULL in some failure paths. Instead of sprinkling NULL assignments across the various drivers, just zero out the whole thing. NOTE: This is a candidate for the 9.0 branch. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Reviewed-and-tested-by: Kenneth Graunke <[email protected]> Tested-by: Lu Hua <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=53618 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54301
* main/version: add "(Core Profile) to version string for core profilesJordan Justen2012-09-281-2/+4
| | | | | Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* glx: Fix compile warnings since 99fee476a102be898a1a093c037e06382f90a5b9Eric Anholt2012-09-281-1/+1
| | | | | | | | | _glapi_table is a struct full of named function pointers, while the generated code just wants to treat it as an array of function pointers. Cast to avoid the compiler warning. Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* mesa/tests: Sanity check the ES2 dispatch tableIan Romanick2012-09-283-1/+313
| | | | | | | | | | | | | | | | | | | | | This test is only built when shared-glapi is used. Because of changes elsewhere in the tree that were necessary to make shared-glapi work correct with GLX, it's not feasible to make the test function both ways. The list of expected functions originally came from the functions set by api_exec_es2.c. This file no longer exists in Mesa (but api_exec_es1.c is still generated). It was the generated file that configured the dispatch table for ES2 contexts. This test verifies that all of the functions set by the old api_exec_es2.c (with the recent addition of VAO functions) are set in the dispatch table and everything else is a NOP. When adding ES2 (or ES3) extensions that add new functions, this test will need to be modified to expect dispatch functions for the new extension functions. v2: Expect VAO functions be non-NOP. Signed-off-by: Ian Romanick <[email protected]>
* mesa/main: Make no-op dispatch function publicIan Romanick2012-09-282-3/+5
| | | | Signed-off-by: Ian Romanick <[email protected]>
* mesa/tests: Move stub function to a separate fileIan Romanick2012-09-283-13/+49
| | | | | | | When building with shared-glapi, we can just use Mesa's _mesa_warning without problems. stubs.cpp is only used when shared-glapi is not used. Signed-off-by: Ian Romanick <[email protected]>
* mesa: Don't set uniform dispatch pointers for many things in ES2 or coreIan Romanick2012-09-283-36/+39
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set shaderapi dispatch pointers for many things in ES2 or coreIan Romanick2012-09-284-22/+35
| | | | | | | | | | | | v2: Allow GL_ARB_shader_objects functions in core profile because we still expose the extension string there. Don't allow glBindFragDataLocation in GLES3 because it's not part of that API. Based (mostly) on review comments from Eric Anholt. NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set vtxfmt dispatch pointers for many things in ES2 or coreIan Romanick2012-09-281-53/+73
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set loopback dispatch pointers for most things in ES2 or coreIan Romanick2012-09-284-219/+228
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Pass GL context to _mesa_create_save_tableIan Romanick2012-09-283-3/+3
| | | | | | | | | | | This isn't used by this patch, but it will be necessary for several follow-on patches. Separating this out will make it easier to reorder patches later. NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointer for glTexStorage in ES2Ian Romanick2012-09-281-4/+6
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointer for glGetProgramivARB in ES2Ian Romanick2012-09-281-1/+1
| | | | | | | | | This function is not the same as glGetProgramiv. NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointer for glResizeBuffersMESA in ES2Ian Romanick2012-09-281-1/+3
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointers for glPointParameter[if][v] in ES2Ian Romanick2012-09-281-4/+8
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointers for glClearDepth or glDepthRange in ES2Ian Romanick2012-09-281-2/+8
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointer for glGetBufferSubData in ES2Ian Romanick2012-09-281-1/+3
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointer for glGetDoublev in ES2Ian Romanick2012-09-281-1/+3
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointer for glPointSize in ES2Ian Romanick2012-09-281-3/+1
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Set dispatch pointer for glShaderBinaryIan Romanick2012-09-281-0/+1
| | | | | | | NOTE: This is a candiate for stable branches Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* gles2: Alias glReadBufferNV with desktop glReadBufferIan Romanick2012-09-281-1/+1
| | | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Cc: Kristian Høgsberg <[email protected]>
* intel: Fix yet-another-bug in intel_texsubimage_tiled_memcpyChad Versace2012-09-281-0/+2
| | | | | | | | | | | | | | | | | | | | The most recent commit that touched this function, commit b1d0fe022dc4826dadce014ab8fe062a82f75a16 Author: Chad Versace <[email protected]> Date: Wed Sep 26 11:05:12 2012 -0700 intel: Fix segfault in intel_texsubimage_tiled_memcpy did fix the segfault, but introduced yet another bug. From Anholt: """You need to still test format/type, because that's the incoming format (e.g. GL_RGBA/GL_FLOAT) that you're trying to memcpy.""" This patch re-introduces the checks on the incoming format and type. Note: This is a candidate for the 9.0 branch. Reviewed-by: Eric Anholt <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* mesa: Fix typo in error message.Vinson Lee2012-09-271-1/+1
| | | | Signed-off-by: Vinson Lee <[email protected]>
* r600g: add some members to radeon_llvm_contextVincent Lejeune2012-09-282-0/+11
| | | | Reviewed-by: Tom Stellard <[email protected]>
* r600g: tgsi-to-llvm path is taken after declarations have been parsedVincent Lejeune2012-09-281-26/+32
| | | | Reviewed-by: Tom Stellard <[email protected]>
* meta: Use float for temporary images, not (un)signed normalized.Kenneth Graunke2012-09-271-4/+8
| | | | | | | | | | | | | | | | | | | In commit 091eb15b694, Jordan changed get_temp_image_type() to use _mesa_get_format_datatype() instead of returning GL_FLOAT. That has several possible return values: GL_FLOAT, GL_INT, GL_UNSIGNED_INT, GL_SIGNED_NORMALIZED, and GL_UNSIGNED_NORMALIZED. We do want to use GL_INT/GL_UNSIGNED_INT for integer formats. However, we want to continue using GL_FLOAT for the normalized fixed-point types. There isn't any code in pack.c to handle GL_(UN)SIGNED_NORMALIZED. Fixes oglconform's fboarb advanced.blit.copypix, which was regressed by commit 091eb15b694a396f8453093575ccec2db7f14eb8. NOTE: This is a candidate for the 9.0 branch. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=53573 Signed-off-by: Kenneth Graunke <[email protected]>
* intel: Don't advertise GLX_SWAP_COPY_OMLChad Versace2012-09-271-6/+6
| | | | | | | | This patch removes all gl_config's with swapMethod=GLX_SWAP_COPY_OML. When page flipping, we are unable to comply with swap-copy semantics. Reviewed-by: Eric Anholt <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* i965: Remove stale comment about rebuilding tnl_program.Eric Anholt2012-09-271-7/+0
| | | | | | It gets built in Mesa core before we're called these days. Reviewed-and-tested-by: Kenneth Graunke <[email protected]>
* i965: Add a comment explaining one of the brw_draw_upload.c loops.Eric Anholt2012-09-271-0/+4
| | | | Reviewed-and-tested-by: Kenneth Graunke <[email protected]>
* i965: Remove broken non-interleaved-to-interleaved upload code.Eric Anholt2012-09-271-50/+2
| | | | | | | | | | | This failed when all the uploads to occur were uniform-type vertex data (like glColor4f being active across a DrawArrays), because it would upload 1 element instead of 1 element per vertex. There was no citation for how this code helped any particular application, and it breaks ETQW, so just remove it. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=47170 NOTE: This is a candidate for the 9.0 and 8.0 branches. Reviewed-and-tested-by: Kenneth Graunke <[email protected]>
* intel: Remove dead intel_format_to_rb_datatype.Eric Anholt2012-09-272-52/+0
| | | | | | This was for some of the old spans-related code that is now gone. Reviewed-by: Kenneth Graunke <[email protected]>
* intel: Mark some file-local code as static.Eric Anholt2012-09-279-18/+9
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Mark brw_disasm.c tables as static const.Eric Anholt2012-09-271-56/+44
| | | | | | v2: Make the strings in the tables const, too. Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Use visibility cflags on the driver code.Eric Anholt2012-09-271-0/+1
| | | | | | | | | The only symbols that need to be public (those in intel_screen.c that the loader looks for) are already marked public. Saves 100k of compiled driver size. Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* i965/vp: Remove support for non-ARB_vp, non-NV_vp opcodes.Eric Anholt2012-09-271-86/+0
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* i965/vp: Remove support for relative addressing of destination registers.Eric Anholt2012-09-271-83/+7
| | | | | | | This was added for GLSL support back in the day. It's prohibited by both ARB_vp and NV_vp. Reviewed-by: Kenneth Graunke <[email protected]>
* i965/vp: Remove support for reading destination registers.Eric Anholt2012-09-272-64/+4
| | | | | | It's prohibited by ARB_vp and NV_vp, and not used by fixed function t&l. Reviewed-by: Kenneth Graunke <[email protected]>
* i965/vp: Remove support for GLSL flow control from the old VS backend.Eric Anholt2012-09-271-83/+0
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* build: Link libglapi with pthreadsMatt Turner2012-09-271-0/+2
| | | | | | | | NOTE: This is a candidate for the 9.0 branch. Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=839060 https://bugs.gentoo.org/show_bug.cgi?id=435152 Reviewed-by: Adam Jackson <[email protected]>
* r600g: fix EXP on CaymanMarek Olšák2012-09-271-4/+2
| | | | NOTE: This is a candidate for the stable branches.
* r600g: fix RSQ of negative value on CaymanMarek Olšák2012-09-271-0/+5
| | | | NOTE: This is a candidate for the stable branches.
* r600g: fix instance divisor on CaymanMarek Olšák2012-09-271-19/+35
| | | | | | Not sure if this is the best way to fix it. NOTE: This is a candidate for the stable branches.
* r600g: flush FMASK and CMASK when changing colorbuffers on EvergreenMarek Olšák2012-09-276-1/+18
| | | | | | This fixes rare graphical corruption. NOTE: This is a candidate for the stable branches.
* r600g: use invalid DB hardware formats to disable depth/stencilMarek Olšák2012-09-273-2/+23
|
* intel: Fix segfault in intel_texsubimage_tiled_memcpyChad Versace2012-09-271-2/+1
| | | | | | | | | | | | | | | The function segfaulted when a game called glTexSubImage2D on a texture with internalformat/format/type = GL_SLUMINANCE8/GL_BGRA/GL_UNSIGNED_BYTE. The function only supports MESA_FORMAT_ARGB8888 and returns early if it detects an unsupported format. Clearly, its detection condition was insufficient. This patch fixes it to explicity check for MESA_FORMAT_ARGB8888. Note: This is a candidate for the 9.0 branch (fixes 413c491). Reviewed-and-tested-by: Kenneth Graunke <[email protected]> Acked-by: Paul Berry <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* i965: Do texture swizzling in hardware on Haswell.Kenneth Graunke2012-09-262-5/+52
| | | | | | | | | | | | | | | | | | | Haswell supports EXT_texture_swizzle and legacy DEPTH_TEXTURE_MODE swizzling by setting SURFACE_STATE entries. This means we don't have to bake the swizzle settings into the shader code by emitting MOV instructions, and thus don't have to recompile shaders whenever the swizzles change. Unfortunately, we can't handle GL_ALPHA this way: unlike all the others, which store the comparison result in the .r channel (and possibly others as well), GL_ALPHA puts it in the .a channel. The GLSL 1.30+ style functions which return a float always simply return the .r channel, which would be zero if we handled this as a surface override. In this case, fall back to doing it the old way. DEPTH_TEXTURE_MODE = GL_ALPHA isn't an interesting performance path anyway. Reviewed-by: Eric Anholt <[email protected]> Signed-off-by: Kenneth Graunke <[email protected]>