OSDN Git Service
Tom Stellard [Thu, 10 May 2012 14:21:54 +0000 (10:21 -0400)]
radeon: Support LLVM 3.2
LLVM 3.2 and newer requires that the R600/SI backend be part of the
LLVM tree.
Tom Stellard [Thu, 13 Sep 2012 17:09:03 +0000 (17:09 +0000)]
r600g: Re-enable growing of the compute memory pool
Tom Stellard [Thu, 13 Sep 2012 17:11:32 +0000 (17:11 +0000)]
r600g: Fix bug when adding new items to the compute memory pool
The items are ordered in the item list by their offsets, with the lowest
offset coming first in the list. The old code was assuming that new
items being added to the list would always have a greater offset than
the first item in the list, however this is not always the case.
Tom Stellard [Thu, 13 Sep 2012 17:03:41 +0000 (17:03 +0000)]
r600g: Use a RAT buffer as the backing bo for the compute memory pool
Tom Stellard [Thu, 13 Sep 2012 17:10:09 +0000 (17:10 +0000)]
r600g: Make sure to init the compute memory pool with enough memory
Tom Stellard [Tue, 25 Sep 2012 17:46:18 +0000 (17:46 +0000)]
r600g: Add evergreen_init_color_surface_rat() v2
This can be used to initialize the CB* registers for buffers without a
radeon_surface.
v2:
- Get correct group_bytes value from r600_screen
- Stop setting unnecessary fields
Reviewed-by: Marek Olšák <maraeo@gmail.com>
Tom Stellard [Tue, 25 Sep 2012 17:47:28 +0000 (17:47 +0000)]
r600g: Add register field definitions for 028C70_RESOURCE_TYPE
Reviewed-by: Marek Olšák <maraeo@gmail.com>
Oliver McFadden [Wed, 26 Sep 2012 17:59:50 +0000 (20:59 +0300)]
intel: add support for ANGLE_texture_compression_dxt.
Signed-off-by: Oliver McFadden <oliver.mcfadden@linux.intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Alex Deucher [Fri, 28 Sep 2012 23:04:44 +0000 (19:04 -0400)]
radeonsi: emit PA_SU_PRIM_FILTER_CNTL
has no default value.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <deathsimple@vodafone.de>
Alex Deucher [Fri, 28 Sep 2012 22:19:02 +0000 (18:19 -0400)]
radeonsi: remove some old r600g cruft
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <deathsimple@vodafone.de>
Alex Deucher [Fri, 28 Sep 2012 16:09:16 +0000 (12:09 -0400)]
radeonsi: fix range checking for state regs
end value is exclusive, but in practice we shouldn't
hit this.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Christian König <deathsimple@vodafone.de>
Alex Deucher [Fri, 28 Sep 2012 15:06:48 +0000 (11:06 -0400)]
radeonsi: drop some cayman remnants
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <deathsimple@vodafone.de>
Christian König [Wed, 26 Sep 2012 18:42:23 +0000 (20:42 +0200)]
radeonsi: define SGPR register numbers
Instead of hardcoding them.
Signed-off-by: Christian König <deathsimple@vodafone.de>
Christoph Bumiller [Wed, 11 Jul 2012 18:52:58 +0000 (20:52 +0200)]
nvc0: make sure handles for unbound textures/samplers are uploaded on nve4
Christoph Bumiller [Sun, 30 Sep 2012 20:59:34 +0000 (22:59 +0200)]
nv50,nvc0: fix 3d engine blit for nvc0
Christoph Bumiller [Wed, 26 Sep 2012 21:06:40 +0000 (23:06 +0200)]
nv50,nvc0: implement blit
Marek Olšák [Thu, 13 Sep 2012 17:38:25 +0000 (19:38 +0200)]
gallium: remove resource_resolve
The functionality is provided by the new blit function.
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 23:05:08 +0000 (01:05 +0200)]
st/mesa: implement decompress_with_blit using gallium blit
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 22:57:39 +0000 (00:57 +0200)]
st/mesa: implement BlitFramebuffer using gallium blit
This also fixes a lot tests, especially all the clip-and-scissor-blit MSAA
piglit tests.
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 22:50:54 +0000 (00:50 +0200)]
svga: implement blit
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 22:48:58 +0000 (00:48 +0200)]
softpipe: implement blit
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Thu, 13 Sep 2012 16:48:51 +0000 (18:48 +0200)]
radeonsi: implement blit
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 22:45:05 +0000 (00:45 +0200)]
r600g: implement blit
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 22:38:44 +0000 (00:38 +0200)]
r300g: implement blit
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 22:36:06 +0000 (00:36 +0200)]
nv30: implement blit
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 22:36:37 +0000 (00:36 +0200)]
nv30: use util_format_is_supported
Hardware drivers *must* use it.
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 22:34:56 +0000 (00:34 +0200)]
llvmpipe: implement blit
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 22:34:01 +0000 (00:34 +0200)]
i915g: implement blit
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 22:12:22 +0000 (00:12 +0200)]
gallium: implement blit in driver wrappers
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 20:18:37 +0000 (22:18 +0200)]
gallium: add helpers for dumping pipe_box and pipe_blit_info
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 21:45:49 +0000 (23:45 +0200)]
gallium/u_blitter: add helper for blitting via resource_copy_region
v2: fix off-by-one error in is_box_inside_resource, add comments
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 21:37:17 +0000 (23:37 +0200)]
gallium/u_blitter: add gallium blit implementation
The original blit function is extended and the otAher functions reuse it.
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 21:33:50 +0000 (23:33 +0200)]
gallium/u_blitter: add ability to disable and restore the render condition
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 21:14:57 +0000 (23:14 +0200)]
gallium/u_blitter: facilitate co-existence with the Draw module
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 20:29:23 +0000 (22:29 +0200)]
gallium/u_blitter: check PIPE_CAP_TEXTURE_MULTISAMPLE
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Tue, 11 Sep 2012 23:36:31 +0000 (01:36 +0200)]
gallium: add blit into the interface
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Tue, 11 Sep 2012 20:41:20 +0000 (22:41 +0200)]
gallium: add PIPE_CAP_TEXTURE_MULTISAMPLE
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Wed, 12 Sep 2012 22:46:54 +0000 (00:46 +0200)]
softpipe: fix set_framebuffer_state with uninitialized surfaces past nr_cbufs-1
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Vinson Lee [Sat, 29 Sep 2012 06:41:29 +0000 (23:41 -0700)]
scons: Use full path of texture_builtins.py.
Fixes this build error on Cygwin.
Explicit dependency `src/glsl/builtins/tools/texture_builtins.py' not
found, needed by target
`build/cygwin-x86-debug/glsl/builtin_function.cpp'.
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
Brian Paul [Fri, 28 Sep 2012 03:04:39 +0000 (21:04 -0600)]
mesa: add fall-through comment, just to be clear
Brian Paul [Fri, 28 Sep 2012 03:00:43 +0000 (21:00 -0600)]
mesa: remove useless GLenum casts
Brian Paul [Sat, 29 Sep 2012 14:24:44 +0000 (08:24 -0600)]
mesa: add const qualifier in check_for_ending() to silence warning
Kenneth Graunke [Wed, 19 Sep 2012 20:27:59 +0000 (13:27 -0700)]
i965: Complain about variable index lowering when INTEL_DEBUG=perf.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
Kenneth Graunke [Wed, 19 Sep 2012 20:27:58 +0000 (13:27 -0700)]
i965: Dump linked shaders on MESA_GLSL=dump.
Often, the original shader IR isn't terribly interesting because a lot
of crucial optimizations haven't been done (such as inlining built-ins).
ir_to_mesa used to print this out for us, but since we don't use it, we
have to do it ourselves.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
Kenneth Graunke [Wed, 19 Sep 2012 20:27:57 +0000 (13:27 -0700)]
glsl: Rename variable_entry2 back to variable_entry in struct splitting.
The anonymous namespace should keep these private classes to file scope,
preventing clashes with other symbols of the same name elsewhere.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
Anuj Phogat [Fri, 21 Sep 2012 22:16:38 +0000 (15:16 -0700)]
intel/i965: Disable SampleAlphaToOne if dual source blending enabled
From SandyBridge PRM, volume 2 Part 1, section 12.2.3, BLEND_STATE:
DWord 1, Bit 30 (AlphaToOne Enable):
"If Dual Source Blending is enabled, this bit must be disabled"
Note: This is a candidate for stable branches.
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Vinson Lee [Fri, 28 Sep 2012 06:21:09 +0000 (23:21 -0700)]
scons: Disable build of assembly sources on Cygwin.
The assembly sources currently do not build on Cygwin.
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
Jordan Justen [Sat, 1 Sep 2012 08:38:08 +0000 (01:38 -0700)]
mesa: allow MESA_GL_VERSION_OVERRIDE to override the API type
Change the format to MAJOR.MINOR[FC]
For example: 2.1, 3.0FC, 3.1
The FC suffix indicates a forward compatible context, and
is only valid for versions >= 3.0.
Examples:
2.1: GL Legacy/Compatibility context
3.0: GL Legacy/Compatibility context
3.0FC: GL Core Profile context + Forward Compatible
3.1: GL Core Profile context
3.1FC: GL Core Profile context + Forward Compatible
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Fri, 28 Sep 2012 22:38:26 +0000 (15:38 -0700)]
i965: brwInitVtbl needs to know the chipset generation
Fixes major regressions since
de958de.
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Ian Romanick [Thu, 27 Sep 2012 00:57:01 +0000 (17:57 -0700)]
i915: Don't free the intel_context structure when intelCreateContext fails.
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 <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=53618
Ian Romanick [Fri, 31 Aug 2012 21:55:21 +0000 (14:55 -0700)]
i965: Don't free the intel_context structure when intelCreateContext fails.
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 <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54301
Ian Romanick [Fri, 28 Sep 2012 15:29:12 +0000 (08:29 -0700)]
intel: Don't call intelDestroyContext if there is no context to destroy
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 <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=53618
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54301
Ian Romanick [Wed, 26 Sep 2012 18:08:11 +0000 (11:08 -0700)]
dri_util: Use calloc to allocate __DRIcontext
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 <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-and-tested-by: Kenneth Graunke <kenneth@whitecape.org>
Tested-by: Lu Hua <huax.lu@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=53618
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54301
Jordan Justen [Tue, 4 Sep 2012 22:49:01 +0000 (15:49 -0700)]
main/version: add "(Core Profile) to version string for core profiles
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Eric Anholt [Tue, 25 Sep 2012 17:02:06 +0000 (10:02 -0700)]
glx: Fix compile warnings since
99fee476a102be898a1a093c037e06382f90a5b9
_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 <chad.versace@linux.intel.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Ian Romanick [Thu, 2 Aug 2012 05:19:01 +0000 (22:19 -0700)]
mesa/tests: Sanity check the ES2 dispatch table
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 <ian.d.romanick@intel.com>
Ian Romanick [Thu, 2 Aug 2012 05:18:16 +0000 (22:18 -0700)]
mesa/main: Make no-op dispatch function public
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Ian Romanick [Thu, 2 Aug 2012 05:15:12 +0000 (22:15 -0700)]
mesa/tests: Move stub function to a separate file
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 <ian.d.romanick@intel.com>
Ian Romanick [Wed, 5 Sep 2012 21:15:30 +0000 (14:15 -0700)]
mesa: Don't set uniform dispatch pointers for many things in ES2 or core
NOTE: This is a candidate for the 9.0 branch
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Wed, 5 Sep 2012 21:14:13 +0000 (14:14 -0700)]
mesa: Don't set shaderapi dispatch pointers for many things in ES2 or core
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 <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Wed, 5 Sep 2012 21:11:33 +0000 (14:11 -0700)]
mesa: Don't set vtxfmt dispatch pointers for many things in ES2 or core
NOTE: This is a candidate for the 9.0 branch
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Wed, 5 Sep 2012 21:10:23 +0000 (14:10 -0700)]
mesa: Don't set loopback dispatch pointers for most things in ES2 or core
NOTE: This is a candidate for the 9.0 branch
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Wed, 5 Sep 2012 15:12:18 +0000 (08:12 -0700)]
mesa: Pass GL context to _mesa_create_save_table
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 <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Wed, 5 Sep 2012 21:07:50 +0000 (14:07 -0700)]
mesa: Don't set dispatch pointer for glTexStorage in ES2
NOTE: This is a candidate for the 9.0 branch
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Wed, 5 Sep 2012 21:06:18 +0000 (14:06 -0700)]
mesa: Don't set dispatch pointer for glGetProgramivARB in ES2
This function is not the same as glGetProgramiv.
NOTE: This is a candidate for the 9.0 branch
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Wed, 5 Sep 2012 21:04:13 +0000 (14:04 -0700)]
mesa: Don't set dispatch pointer for glResizeBuffersMESA in ES2
NOTE: This is a candidate for the 9.0 branch
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Wed, 5 Sep 2012 21:01:42 +0000 (14:01 -0700)]
mesa: Don't set dispatch pointers for glPointParameter[if][v] in ES2
NOTE: This is a candidate for the 9.0 branch
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Wed, 5 Sep 2012 21:00:40 +0000 (14:00 -0700)]
mesa: Don't set dispatch pointers for glClearDepth or glDepthRange in ES2
NOTE: This is a candidate for the 9.0 branch
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Wed, 5 Sep 2012 15:48:32 +0000 (08:48 -0700)]
mesa: Don't set dispatch pointer for glGetBufferSubData in ES2
NOTE: This is a candidate for the 9.0 branch
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Wed, 5 Sep 2012 15:21:04 +0000 (08:21 -0700)]
mesa: Don't set dispatch pointer for glGetDoublev in ES2
NOTE: This is a candidate for the 9.0 branch
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Wed, 5 Sep 2012 15:16:23 +0000 (08:16 -0700)]
mesa: Don't set dispatch pointer for glPointSize in ES2
NOTE: This is a candidate for the 9.0 branch
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Wed, 5 Sep 2012 14:49:50 +0000 (07:49 -0700)]
mesa: Set dispatch pointer for glShaderBinary
NOTE: This is a candiate for stable branches
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Ian Romanick [Thu, 2 Aug 2012 05:09:08 +0000 (22:09 -0700)]
gles2: Alias glReadBufferNV with desktop glReadBuffer
NOTE: This is a candidate for the 9.0 branch
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Cc: Kristian Høgsberg <krh@bitplanet.net>
Chad Versace [Thu, 27 Sep 2012 18:05:34 +0000 (11:05 -0700)]
intel: Fix yet-another-bug in intel_texsubimage_tiled_memcpy
The most recent commit that touched this function,
commit
b1d0fe022dc4826dadce014ab8fe062a82f75a16
Author: Chad Versace <chad.versace@linux.intel.com>
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 <eric@anholt.net>
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
Vinson Lee [Fri, 28 Sep 2012 05:32:10 +0000 (22:32 -0700)]
mesa: Fix typo in error message.
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Vincent Lejeune [Sun, 23 Sep 2012 13:53:57 +0000 (15:53 +0200)]
r600g: add some members to radeon_llvm_context
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Vincent Lejeune [Sun, 23 Sep 2012 13:20:34 +0000 (15:20 +0200)]
r600g: tgsi-to-llvm path is taken after declarations have been parsed
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Kenneth Graunke [Sun, 16 Sep 2012 06:18:36 +0000 (23:18 -0700)]
meta: Use float for temporary images, not (un)signed normalized.
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 <kenneth@whitecape.org>
Chad Versace [Thu, 9 Aug 2012 16:06:42 +0000 (09:06 -0700)]
intel: Don't advertise GLX_SWAP_COPY_OML
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 <eric@anholt.net>
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
Eric Anholt [Fri, 21 Sep 2012 06:42:42 +0000 (08:42 +0200)]
i965: Remove stale comment about rebuilding tnl_program.
It gets built in Mesa core before we're called these days.
Reviewed-and-tested-by: Kenneth Graunke <kenneth@whitecape.org>
Eric Anholt [Fri, 21 Sep 2012 05:26:33 +0000 (07:26 +0200)]
i965: Add a comment explaining one of the brw_draw_upload.c loops.
Reviewed-and-tested-by: Kenneth Graunke <kenneth@whitecape.org>
Eric Anholt [Fri, 21 Sep 2012 05:50:05 +0000 (07:50 +0200)]
i965: Remove broken non-interleaved-to-interleaved upload code.
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 <kenneth@whitecape.org>
Eric Anholt [Fri, 21 Sep 2012 08:38:03 +0000 (10:38 +0200)]
intel: Remove dead intel_format_to_rb_datatype.
This was for some of the old spans-related code that is now gone.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Eric Anholt [Fri, 21 Sep 2012 08:36:22 +0000 (10:36 +0200)]
intel: Mark some file-local code as static.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Eric Anholt [Fri, 21 Sep 2012 08:29:10 +0000 (10:29 +0200)]
i965: Mark brw_disasm.c tables as static const.
v2: Make the strings in the tables const, too.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Eric Anholt [Fri, 21 Sep 2012 08:10:54 +0000 (10:10 +0200)]
i965: Use visibility cflags on the driver code.
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 <kenneth@whitecape.org>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Eric Anholt [Thu, 20 Sep 2012 15:12:33 +0000 (17:12 +0200)]
i965/vp: Remove support for non-ARB_vp, non-NV_vp opcodes.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Eric Anholt [Thu, 20 Sep 2012 14:33:22 +0000 (16:33 +0200)]
i965/vp: Remove support for relative addressing of destination registers.
This was added for GLSL support back in the day. It's prohibited by both
ARB_vp and NV_vp.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Eric Anholt [Thu, 20 Sep 2012 14:26:02 +0000 (16:26 +0200)]
i965/vp: Remove support for reading destination registers.
It's prohibited by ARB_vp and NV_vp, and not used by fixed function t&l.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Eric Anholt [Thu, 20 Sep 2012 14:17:22 +0000 (16:17 +0200)]
i965/vp: Remove support for GLSL flow control from the old VS backend.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Matt Turner [Wed, 19 Sep 2012 03:22:37 +0000 (20:22 -0700)]
build: Link libglapi with pthreads
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 <ajax@redhat.com>
Matt Turner [Wed, 19 Sep 2012 03:21:47 +0000 (20:21 -0700)]
build: Use AX_PTHREAD to detect pthreads
NOTE: This is a candidate for the 9.0 branch.
Reviewed-by: Adam Jackson <ajax@redhat.com>
Marek Olšák [Tue, 25 Sep 2012 15:28:13 +0000 (17:28 +0200)]
r600g: fix EXP on Cayman
NOTE: This is a candidate for the stable branches.
Marek Olšák [Tue, 25 Sep 2012 15:20:38 +0000 (17:20 +0200)]
r600g: fix RSQ of negative value on Cayman
NOTE: This is a candidate for the stable branches.
Marek Olšák [Tue, 25 Sep 2012 14:09:24 +0000 (16:09 +0200)]
r600g: fix instance divisor on Cayman
Not sure if this is the best way to fix it.
NOTE: This is a candidate for the stable branches.
Marek Olšák [Tue, 25 Sep 2012 01:11:22 +0000 (03:11 +0200)]
r600g: flush FMASK and CMASK when changing colorbuffers on Evergreen
This fixes rare graphical corruption.
NOTE: This is a candidate for the stable branches.
Marek Olšák [Tue, 14 Aug 2012 18:42:35 +0000 (20:42 +0200)]
r600g: use invalid DB hardware formats to disable depth/stencil
Chad Versace [Wed, 26 Sep 2012 18:05:12 +0000 (11:05 -0700)]
intel: Fix segfault in intel_texsubimage_tiled_memcpy
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 <kenneth@whitecape.org>
Acked-by: Paul Berry <stereotype441@gmail.com>
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
Kenneth Graunke [Fri, 21 Sep 2012 10:13:36 +0000 (03:13 -0700)]
i965: Do texture swizzling in hardware on Haswell.
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 <eric@anholt.net>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Kenneth Graunke [Fri, 7 Sep 2012 20:24:16 +0000 (13:24 -0700)]
i965: Refactor texture swizzle generation into a helper.
It's going to be reused in a second place soon.
Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>