mesa.git
12 years agodraw: Fix regression in draw_set_sampler(_views).
José Fonseca [Fri, 24 Aug 2012 10:27:22 +0000 (11:27 +0100)]
draw: Fix regression in draw_set_sampler(_views).

draw->samplers(_views) now has PIPE_SHADER_TYPES elements, instead of
PIPE_MAX_SAMPLERS as before.

Also, shader_stage must be less than PIPE_SHADER_TYPES to prevent buffer
overflow.

Trivial.

12 years agobuild: don't leave git_sha1.h.tmp after build/install
Vadim Girlin [Fri, 24 Aug 2012 07:16:14 +0000 (11:16 +0400)]
build: don't leave git_sha1.h.tmp after build/install

Fixes "`main/git_sha1.h.tmp': Permission denied" build error.
See https://bugs.freedesktop.org/show_bug.cgi?id=52064

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
12 years agoradeon/llvm: Set End of Program bit on RAT instructions
Tom Stellard [Thu, 23 Aug 2012 21:51:48 +0000 (21:51 +0000)]
radeon/llvm: Set End of Program bit on RAT instructions

This code was accidently dropped during the MCCodeEmitter conversion.

12 years agoradeon/llvm: Use correct instruction for moving immediates
Tom Stellard [Thu, 23 Aug 2012 21:22:48 +0000 (21:22 +0000)]
radeon/llvm: Use correct instruction for moving immediates

This should fix an assertion failure that was happening in some compute
shaders.

12 years agoradeon/llvm: Fix some coding style issues
Tom Stellard [Thu, 23 Aug 2012 21:00:13 +0000 (21:00 +0000)]
radeon/llvm: Fix some coding style issues

12 years agoradeon/llvm: Pull changes from external version of the backend
Tom Stellard [Thu, 23 Aug 2012 19:28:50 +0000 (19:28 +0000)]
radeon/llvm: Pull changes from external version of the backend

12 years agoradeon/llvm: Simplify the convert to ISA pass
Tom Stellard [Thu, 23 Aug 2012 19:27:48 +0000 (19:27 +0000)]
radeon/llvm: Simplify the convert to ISA pass

12 years agoradeon/llvm: Make sure to use the Text section in the AsmPrinter
Tom Stellard [Thu, 23 Aug 2012 19:15:39 +0000 (19:15 +0000)]
radeon/llvm: Make sure to use the Text section in the AsmPrinter

12 years agobuild: Fix installation of GLES2 headers
Matt Turner [Thu, 23 Aug 2012 20:29:48 +0000 (13:29 -0700)]
build: Fix installation of GLES2 headers

Reported-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
Tested-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
12 years agobuild: Fix GLES linkage with libglapi
Matt Turner [Thu, 23 Aug 2012 20:48:36 +0000 (13:48 -0700)]
build: Fix GLES linkage with libglapi

Reported-by: Ian Romanick <idr@freedesktop.org>
12 years agoi965/msaa: Add sample-alpha-to-coverage support for multiple render targets
Anuj Phogat [Wed, 1 Aug 2012 23:32:06 +0000 (16:32 -0700)]
i965/msaa: Add sample-alpha-to-coverage support for multiple render targets

Render Target Write message should include source zero alpha value when
sample-alpha-to-coverage is enabled for an FBO with  multiple render targets.
Source zero alpha value is used as fragment coverage for all the render
targets.

This patch makes piglit tests draw-buffers-alpha-to-coverage and
alpha-to-coverage-no-draw-buffer-zero to pass on Sandybridge. No
regressions are observed with piglit all.tests.

V2: Revert all the changes made in emit_color_write() function to
include src0 alpha for targets > 0. Now handling this case in a if
block.

V3: Correctly calculate the instruction length for buffer zero.
Properly handle the case of dual_src_blend when alpha-to-coverage
is enabled.

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Paul Berry <stereotype441@gmail.com>
12 years agoglsl/linker: Avoid buffer over-run in parcel_out_uniform_storage::visit_field
Stéphane Marchesin [Wed, 15 Aug 2012 00:15:54 +0000 (17:15 -0700)]
glsl/linker: Avoid buffer over-run in parcel_out_uniform_storage::visit_field

When too may uniforms are used, the error will be caught in
check_resources (src/glsl/linker.cpp).

NOTE: This is a candidate for the 8.0 branch.

Signed-off-by: Stéphane Marchesin <marcheu@chromium.org>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Tested-by: Benoit Jacob <bjacob@mozilla.com>
12 years agomesa/es: Validate glCompressedTexSubImage internalFormat in Mesa code rather than...
Ian Romanick [Fri, 27 Jul 2012 14:13:03 +0000 (07:13 -0700)]
mesa/es: Validate glCompressedTexSubImage internalFormat in Mesa code rather than the ES wrapper

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa/es: Validate glCompressedTexImage internalFormat in Mesa code rather than the...
Ian Romanick [Fri, 27 Jul 2012 14:09:30 +0000 (07:09 -0700)]
mesa/es: Validate glCompressedTexImage internalFormat in Mesa code rather than the ES wrapper

v2: Add proper core-profile filtering.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa/es: Validate glCopyTexImage internalFormat in Mesa code rather than the ES wrapper
Ian Romanick [Fri, 27 Jul 2012 13:45:54 +0000 (06:45 -0700)]
mesa/es: Validate glCopyTexImage internalFormat in Mesa code rather than the ES wrapper

v2: Add GLES3 filtering.  I'm not 100% sure this is correct.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa/es: Validate glTexSubImage format and type in Mesa code rather than the ES wrapper
Ian Romanick [Fri, 27 Jul 2012 13:40:26 +0000 (06:40 -0700)]
mesa/es: Validate glTexSubImage format and type in Mesa code rather than the ES wrapper

v2: Add proper GLES3 filtering.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa/es: Validate glTexImage format, type, and internalFormat in Mesa code rather...
Ian Romanick [Fri, 27 Jul 2012 02:18:58 +0000 (19:18 -0700)]
mesa/es: Validate glTexImage format, type, and internalFormat in Mesa code rather than the ES wrapper

v2: Add proper GLES3 filtering.

v3: Collapse ALPHA, LUMINANCE, and LUMINANCE_ALPHA cases per review
comment from Ken.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa/es: Validate glTexImage border in Mesa code rather than the ES wrapper
Ian Romanick [Fri, 27 Jul 2012 01:46:23 +0000 (18:46 -0700)]
mesa/es: Validate glTexImage border in Mesa code rather than the ES wrapper

Also validate glCopyTexImage border.  This fixes a bug in the APIspec.
Previously glTexImage3DOES could be passed a non-zero border without error.

NOTE: This is a candidate for stable release branches.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa: Generate an error when glCopyTexImage border is invalid
Ian Romanick [Fri, 27 Jul 2012 01:43:26 +0000 (18:43 -0700)]
mesa: Generate an error when glCopyTexImage border is invalid

NOTE: This is a candidate for stable release branches.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa/es: Add support for GL_APPLE_texture_max_level
Ian Romanick [Wed, 15 Aug 2012 16:57:50 +0000 (09:57 -0700)]
mesa/es: Add support for GL_APPLE_texture_max_level

This is desktop OpenGL functionality that has always existed.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa/es: Validate glGetTexParameter pnames in Mesa code rather than the ES wrapper
Ian Romanick [Fri, 27 Jul 2012 01:15:40 +0000 (18:15 -0700)]
mesa/es: Validate glGetTexParameter pnames in Mesa code rather than the ES wrapper

This also adds a missing extension (and API) check around
GL_TEXTURE_CROP_RECT_OES.

v2: Add proper core-profile and GLES3 filtering.  GL_TEXTURE_MAX_LEVEL
is (incorrectly) accepted in ES contexts.  A future patch will add
GL_APPLE_texture_max_level, and meta really needs this.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa/es: Validate glTexParameter pnames in Mesa code rather than the ES wrapper
Ian Romanick [Fri, 27 Jul 2012 01:04:50 +0000 (18:04 -0700)]
mesa/es: Validate glTexParameter pnames in Mesa code rather than the ES wrapper

This also adds a missing extension (and API) check around
GL_TEXTURE_CROP_RECT_OES.

v2: Add proper core-profile, GLES1, and GLES3 filtering.  GL_TEXTURE_MAX_LEVEL
is (incorrectly) accepted in ES contexts.  A future patch will add
GL_APPLE_texture_max_level, and meta really needs this.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa/es: Remove redundant glBindTexture target validation
Ian Romanick [Fri, 27 Jul 2012 00:49:55 +0000 (17:49 -0700)]
mesa/es: Remove redundant glBindTexture target validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa: Filter glBindTexture targets based on supported features.
Ian Romanick [Fri, 27 Jul 2012 00:41:43 +0000 (17:41 -0700)]
mesa: Filter glBindTexture targets based on supported features.

Fixed the piglit test arb_texture_buffer_object-negative-unsupported.

NOTE: This is a candidate for stable release branches.

v2: Add proper core-profile and GLES3 filtering.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa/es: Validate tex image targets in Mesa code rather than the ES wrapper
Ian Romanick [Thu, 26 Jul 2012 17:39:45 +0000 (10:39 -0700)]
mesa/es: Validate tex image targets in Mesa code rather than the ES wrapper

This should take care of all the TexImage, TexSubImage, CopyTexImage,
CompressedTexImage3DOES, and CopyTexSubImage type paths.

v2: Add proper core-profile and GLES3 filtering.

v3: Squash the CompressedTexImage3DOES patch per review comment from
Ken.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa/es: Validate EGLImageTargetTexture2DOES target in Mesa code rather than the...
Ian Romanick [Wed, 25 Jul 2012 23:13:33 +0000 (16:13 -0700)]
mesa/es: Validate EGLImageTargetTexture2DOES target in Mesa code rather than the ES wrapper

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa/es: Validate glTexParameter targets in Mesa code rather than the ES wrapper
Ian Romanick [Wed, 25 Jul 2012 23:03:44 +0000 (16:03 -0700)]
mesa/es: Validate glTexParameter targets in Mesa code rather than the ES wrapper

Ditto for glGetTexParameter targets.

v2: Add proper core-profile and GLES3 filtering.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa/es: Validate GL_TEXTURE_WRAP param in Mesa code rather than the ES wrapper
Ian Romanick [Mon, 3 Oct 2011 20:03:47 +0000 (13:03 -0700)]
mesa/es: Validate GL_TEXTURE_WRAP param in Mesa code rather than the ES wrapper

v2: Add proper core-profile filtering.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agomesa: Refactor validate_texture_wrap_mode to use a switch-statement
Ian Romanick [Mon, 3 Oct 2011 19:46:23 +0000 (12:46 -0700)]
mesa: Refactor validate_texture_wrap_mode to use a switch-statement

This makes the next couple changes a little easier.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
12 years agometa: Don't modify GL_GENERATE_MIPMAP state when it doesn't exist
Ian Romanick [Thu, 23 Aug 2012 01:53:42 +0000 (18:53 -0700)]
meta: Don't modify GL_GENERATE_MIPMAP state when it doesn't exist

This is a bit of a hack.  _mesa_meta_GenerateMipmap shouldn't even be
used in contexts where GL_GENERATE_MIPMAP doesn't exist (i.e., core
profile and ES2) because it uses fixed-function, and fixed-function
doesn't exist there either!

A GLSL-based _mesa_meta_GenerateMipmap should be available soon.  When
that is available, this patch will be irrelevant and should be reverted.

v2: Change (ctx->API != API_OPENGLES2 && ctx->API != API_OPENGL_CORE) to
(ctx->API == API_OPENGL || ctx->API == API_OPENGLES) based on review
comment from Brian Paul.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
12 years agobuild/glsl: fix android build v2
Tapani Pälli [Fri, 17 Aug 2012 07:32:53 +0000 (10:32 +0300)]
build/glsl: fix android build v2

Commit 77a3efc6b907943903190b385fdf107c4acfcdca broke android build that
sets its own value for GLSL_SRCDIR before including Makefile.sources.
Patch moves overriding the value after include, this works as GLSL_SRCDIR
variable gets expanded only later.

Reviewed-by: Matt Turner <mattst88@gmail.com>
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
12 years agoautomake: convert es1api
Matt Turner [Tue, 21 Aug 2012 21:36:44 +0000 (14:36 -0700)]
automake: convert es1api

12 years agoautomake: convert es2api
Matt Turner [Tue, 21 Aug 2012 21:52:59 +0000 (14:52 -0700)]
automake: convert es2api

12 years agost/dri: pass config options to the state tracker
Vadim Girlin [Thu, 12 Apr 2012 00:30:57 +0000 (04:30 +0400)]
st/dri: pass config options to the state tracker

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
12 years agost/mesa: accept and handle configuration options from st/dri
Vadim Girlin [Thu, 12 Apr 2012 00:30:03 +0000 (04:30 +0400)]
st/mesa: accept and handle configuration options from st/dri

Currently there is a single option - force_glsl_extensions_warn.

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
12 years agost/dri: add force_glsl_extensions_warn option to dri options
Vadim Girlin [Thu, 12 Apr 2012 00:28:52 +0000 (04:28 +0400)]
st/dri: add force_glsl_extensions_warn option to dri options

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
12 years agost/dri: use driver name for driconf section lookup
Vadim Girlin [Thu, 12 Apr 2012 00:28:24 +0000 (04:28 +0400)]
st/dri: use driver name for driconf section lookup

The name is taken from the driver_descriptor, so it will be the same as
expected by driconf utility.

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
12 years agoswrast: add DRM_DRIVER_DESCRIPTOR to store driver name
Vadim Girlin [Wed, 22 Aug 2012 16:20:04 +0000 (20:20 +0400)]
swrast: add DRM_DRIVER_DESCRIPTOR to store driver name

12 years agoegl_dri2: Fix segmentation fault
Paulo Alcantara [Fri, 17 Aug 2012 17:08:10 +0000 (14:08 -0300)]
egl_dri2: Fix segmentation fault

The segmentation fault occurs when DRI2 is not loaded up and
dri2_setup_screen() function deferences dri2_dpy->dri2 (since it's NULL
at this point).

This patch fixes the segmentation fault by checking if dri2 pointer is
not NULL before deferencing it.

Signed-off-by: Paulo Alcantara <pcacjr@profusion.mobi>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Signed-off-by: Brian Paul <brianp@vmware.com>
12 years agoradeon/llvm: Use the MCCodeEmitter for R600
Tom Stellard [Tue, 21 Aug 2012 17:48:14 +0000 (17:48 +0000)]
radeon/llvm: Use the MCCodeEmitter for R600

12 years agoradeon/llvm: Use the MCCodeEmitter for SI
Tom Stellard [Fri, 17 Aug 2012 19:42:11 +0000 (19:42 +0000)]
radeon/llvm: Use the MCCodeEmitter for SI

12 years agoradeon/llvm: Set 64BitPtr feature bit for SI
Tom Stellard [Fri, 17 Aug 2012 20:51:31 +0000 (20:51 +0000)]
radeon/llvm: Set 64BitPtr feature bit for SI

12 years agoradeon/llvm: Lower RETFLAG DAG Node to S_ENDPGM on SI
Tom Stellard [Fri, 17 Aug 2012 19:07:37 +0000 (19:07 +0000)]
radeon/llvm: Lower RETFLAG DAG Node to S_ENDPGM on SI

12 years agoradeon/llvm: Add AsmPrinter
Tom Stellard [Fri, 17 Aug 2012 15:52:15 +0000 (15:52 +0000)]
radeon/llvm: Add AsmPrinter

12 years agoradeon/llvm: Mark JUMP as a pseudo instruction
Tom Stellard [Thu, 16 Aug 2012 17:39:23 +0000 (17:39 +0000)]
radeon/llvm: Mark JUMP as a pseudo instruction

12 years agoradeon/llvm: Remove the last uses of MachineOperand flags
Tom Stellard [Thu, 23 Aug 2012 13:55:22 +0000 (13:55 +0000)]
radeon/llvm: Remove the last uses of MachineOperand flags

12 years agoradeon/llvm: Add flag operand to some instructions
Tom Stellard [Wed, 22 Aug 2012 15:04:58 +0000 (15:04 +0000)]
radeon/llvm: Add flag operand to some instructions

This new operand replaces the MachineOperand flags in LLVM, which
will be deprecated soon.  Eventually all instructions should have a flag
operand, but for now this operand has only been added to instructions
that need it.

12 years agoradeon/llvm: Encapsulate setting of MachineOperand flags
Tom Stellard [Tue, 21 Aug 2012 19:30:26 +0000 (19:30 +0000)]
radeon/llvm: Encapsulate setting of MachineOperand flags

MachineOperand flags will be removed soon, so it is convienent to
have only one function that modifies them.

12 years agobuild: Link DRI drivers with dricore in case of no direct rendering
Matt Turner [Fri, 17 Aug 2012 23:24:32 +0000 (16:24 -0700)]
build: Link DRI drivers with dricore in case of no direct rendering

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
12 years agobuild: Only build libmesagallium.la if building Gallium
Matt Turner [Fri, 17 Aug 2012 22:51:59 +0000 (15:51 -0700)]
build: Only build libmesagallium.la if building Gallium

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
12 years agobuild: Clean glx Makefile.am
Matt Turner [Fri, 17 Aug 2012 22:43:27 +0000 (15:43 -0700)]
build: Clean glx Makefile.am

mapi/glapi is already built when make is run in src/glx.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
12 years agobuild: Put mapi/shared-glapi in CORE_DIRS
Matt Turner [Fri, 17 Aug 2012 21:54:25 +0000 (14:54 -0700)]
build: Put mapi/shared-glapi in CORE_DIRS

SRC_DIRS was overwritten (visible in the second hunk).

Also don't require mapi/shared-glapi to be built for GLES.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
12 years agobuild: Only allow shared-glapi with DRI
Matt Turner [Fri, 17 Aug 2012 21:22:47 +0000 (14:22 -0700)]
build: Only allow shared-glapi with DRI

Tested-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
12 years agobuild: Set sensible DRI/X11/OSMesa defaults
Matt Turner [Fri, 17 Aug 2012 21:05:56 +0000 (14:05 -0700)]
build: Set sensible DRI/X11/OSMesa defaults

Tested-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
12 years agobuild: Print whether shared-glapi is enabled
Matt Turner [Fri, 17 Aug 2012 18:25:14 +0000 (11:25 -0700)]
build: Print whether shared-glapi is enabled

Tested-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
12 years agobuild/x11: Force usage of C++ linker
Matt Turner [Fri, 17 Aug 2012 18:16:45 +0000 (11:16 -0700)]
build/x11: Force usage of C++ linker

Tested-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
12 years agobuild/x11: Don't link against shared-glapi
Matt Turner [Fri, 17 Aug 2012 18:12:48 +0000 (11:12 -0700)]
build/x11: Don't link against shared-glapi

Tested-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
12 years agobuild: Remove deprecated --with-driver= flag
Matt Turner [Fri, 17 Aug 2012 16:31:16 +0000 (09:31 -0700)]
build: Remove deprecated --with-driver= flag

Tested-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
12 years agoradeonsi: rework vertex format handling
Christian König [Wed, 22 Aug 2012 10:35:02 +0000 (12:35 +0200)]
radeonsi: rework vertex format handling

Preventing piglit's draw-vertices test from hanging the GPU.

Signed-off-by: Christian König <deathsimple@vodafone.de>
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
12 years agoradeonsi: fix SPI_PS_INPUT_ENA handling
Christian König [Tue, 21 Aug 2012 12:41:29 +0000 (14:41 +0200)]
radeonsi: fix SPI_PS_INPUT_ENA handling

We need to enable at least one interpolation mode,
otherwise the GPU will hang.

Signed-off-by: Christian König <deathsimple@vodafone.de>
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
12 years agor600g: fix lockups with dual_src_blend v2
Vadim Girlin [Tue, 21 Aug 2012 11:39:25 +0000 (15:39 +0400)]
r600g: fix lockups with dual_src_blend v2

Disable blending when dual_src_blend is enabled and number of color exports
in the current fragment shader is less than 2.

Fixes lockups with ext_framebuffer_multisample-
alpha-to-coverage-dual-src-blend piglit test.

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
12 years agost/dri: Add shared usage on buffers created
Jakob Bornecrantz [Tue, 14 Aug 2012 13:19:22 +0000 (15:19 +0200)]
st/dri: Add shared usage on buffers created

Tested-by: Scott Moreau <oreaus@gmail.com>
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
12 years agogbm: Add shared usage on images created
Jakob Bornecrantz [Tue, 14 Aug 2012 13:15:56 +0000 (15:15 +0200)]
gbm: Add shared usage on images created

Tested-by: Scott Moreau <oreaus@gmail.com>
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
12 years agomesa: Fix generic compressed texture formats' handling in glTexImage/glCopyTexImage
Anuj Phogat [Tue, 21 Aug 2012 18:03:48 +0000 (11:03 -0700)]
mesa: Fix generic compressed texture formats' handling in glTexImage/glCopyTexImage

The generic texture formats should be accepted by the <internalformat>
parameter of TexImage1D, TexImage2D, TexImage3D, CopyTexImage1D, and
CopyTexImage2D functions. When the application specifies a generic
format, the driver is free to pick an uncompressed format.

This patch reverts the changes due to following commit:
commit a36581ccc06693231011c3fe136207e73191b1ce
mesa: do more teximage error checking for generic compressed formats

This patch fixes compressed texture format failures in intel oglconform
pxconv-gettex test case:
https://bugs.freedesktop.org/show_bug.cgi?id=47220

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agoradeon/llvm: ExpandSpecialInstrs - Add support for cube instructions
Tom Stellard [Tue, 21 Aug 2012 14:53:50 +0000 (14:53 +0000)]
radeon/llvm: ExpandSpecialInstrs - Add support for cube instructions

12 years agoradeon/llvm: ExpandSpecialInstrs - Add support for vector instructions
Tom Stellard [Tue, 21 Aug 2012 14:33:04 +0000 (14:33 +0000)]
radeon/llvm: ExpandSpecialInstrs - Add support for vector instructions

12 years agoradeon/llvm: Add R600ExpandSpecialInstrs pass
Tom Stellard [Mon, 20 Aug 2012 21:09:00 +0000 (21:09 +0000)]
radeon/llvm: Add R600ExpandSpecialInstrs pass

This pass expends reduction instructions into a MachineInstrBundle that
contains 4 instruction, one for each instruction slot.

12 years agoradeon/llvm: Add helper function for getting sub reg indices
Tom Stellard [Mon, 20 Aug 2012 21:08:03 +0000 (21:08 +0000)]
radeon/llvm: Add helper function for getting sub reg indices

12 years agoradeonsi: Handle NULL sampler views getting passed in by the state tracker.
Michel Dänzer [Tue, 21 Aug 2012 11:48:18 +0000 (13:48 +0200)]
radeonsi: Handle NULL sampler views getting passed in by the state tracker.

Don't dereference NULL pointers, and if all views are NULL, don't generate an
invalid PM4 packet which locks up the GPU.

Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
12 years agoAPIspec: Remove cruft about AMD_compressed_???_texture
Ian Romanick [Thu, 26 Jul 2012 17:38:15 +0000 (10:38 -0700)]
APIspec: Remove cruft about AMD_compressed_???_texture

Mesa doesn't support these extensions, and it seems unlikely that it
ever will

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant glFramebufferTexture3D textarget validation
Ian Romanick [Fri, 27 Jul 2012 14:23:14 +0000 (07:23 -0700)]
mesa/es: Remove redundant glFramebufferTexture3D textarget validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant glGetShaderiv pname validation
Ian Romanick [Fri, 27 Jul 2012 14:18:48 +0000 (07:18 -0700)]
mesa/es: Remove redundant glGetShaderiv pname validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant glCompressedTexImage border validation
Ian Romanick [Fri, 27 Jul 2012 14:06:58 +0000 (07:06 -0700)]
mesa/es: Remove redundant glCompressedTexImage border validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant glPointSizePointer type validation
Ian Romanick [Wed, 25 Jul 2012 22:24:38 +0000 (15:24 -0700)]
mesa/es: Remove redundant glPointSizePointer type validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant glGetBufferPointer pname validation
Ian Romanick [Wed, 25 Jul 2012 23:15:25 +0000 (16:15 -0700)]
mesa/es: Remove redundant glGetBufferPointer pname validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant glGetVertexAttribPointer pname validation
Ian Romanick [Wed, 25 Jul 2012 22:20:32 +0000 (15:20 -0700)]
mesa/es: Remove redundant glGetVertexAttribPointer pname validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant element type validation
Ian Romanick [Wed, 25 Jul 2012 14:26:33 +0000 (07:26 -0700)]
mesa/es: Remove redundant element type validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant glGetShaderPrecisionFormat shader type validation
Ian Romanick [Wed, 25 Jul 2012 03:18:17 +0000 (20:18 -0700)]
mesa/es: Remove redundant glGetShaderPrecisionFormat shader type validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant depth func validation
Ian Romanick [Tue, 20 Sep 2011 23:50:50 +0000 (16:50 -0700)]
mesa/es: Remove redundant depth func validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant stencil op fail/zfail/zpass validation
Ian Romanick [Tue, 20 Sep 2011 23:50:22 +0000 (16:50 -0700)]
mesa/es: Remove redundant stencil op fail/zfail/zpass validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant shade model mode validation
Ian Romanick [Tue, 20 Sep 2011 23:47:43 +0000 (16:47 -0700)]
mesa/es: Remove redundant shade model mode validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant light pname and light validation
Ian Romanick [Tue, 20 Sep 2011 23:45:43 +0000 (16:45 -0700)]
mesa/es: Remove redundant light pname and light validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant hint mode validation
Ian Romanick [Tue, 20 Sep 2011 23:43:43 +0000 (16:43 -0700)]
mesa/es: Remove redundant hint mode validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant separate stencil face validation
Ian Romanick [Tue, 20 Sep 2011 23:21:41 +0000 (16:21 -0700)]
mesa/es: Remove redundant separate stencil face validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant stencil function validation
Ian Romanick [Tue, 20 Sep 2011 23:20:08 +0000 (16:20 -0700)]
mesa/es: Remove redundant stencil function validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant logic op operand validation
Ian Romanick [Tue, 20 Sep 2011 23:19:04 +0000 (16:19 -0700)]
mesa/es: Remove redundant logic op operand validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant alpha function validation
Ian Romanick [Tue, 20 Sep 2011 23:17:16 +0000 (16:17 -0700)]
mesa/es: Remove redundant alpha function validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant separate stencil mask face validation
Ian Romanick [Tue, 20 Sep 2011 23:15:22 +0000 (16:15 -0700)]
mesa/es: Remove redundant separate stencil mask face validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant front-face mode validation
Ian Romanick [Tue, 20 Sep 2011 23:13:14 +0000 (16:13 -0700)]
mesa/es: Remove redundant front-face mode validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant face culling mode validation
Ian Romanick [Tue, 20 Sep 2011 23:09:55 +0000 (16:09 -0700)]
mesa/es: Remove redundant face culling mode validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant blend equation mode validation
Ian Romanick [Tue, 20 Sep 2011 23:08:35 +0000 (16:08 -0700)]
mesa/es: Remove redundant blend equation mode validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant texture target validation
Ian Romanick [Tue, 20 Sep 2011 23:07:04 +0000 (16:07 -0700)]
mesa/es: Remove redundant texture target validation

Mesa doesn't check the parameter passed to glMultiTexCoord*.  It does,
however, mask the texture value to prevent out-of-bounds writes.  This
patch will promote this non-conformant behavior to OpenGL ES 1.  I don't
think anyone will care, and the gets some silly code out of a hot path.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Rearrange placement of GL_TEXTURE_MAX_ANISOTROPY_EXT in APIspec
Ian Romanick [Mon, 3 Oct 2011 20:09:51 +0000 (13:09 -0700)]
mesa/es: Rearrange placement of GL_TEXTURE_MAX_ANISOTROPY_EXT in APIspec

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa/es: Remove redundant min/mag filter validation
Ian Romanick [Mon, 3 Oct 2011 20:05:47 +0000 (13:05 -0700)]
mesa/es: Remove redundant min/mag filter validation

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agoradeon-llvm: Start multithreaded before using llvm.
Mathias Fröhlich [Sat, 18 Aug 2012 09:43:51 +0000 (11:43 +0200)]
radeon-llvm: Start multithreaded before using llvm.

This is required to make some of llvm's api calls
thread save. In particular the PassRegistry, which is
implicitly accessed while compiling shader programs.
The PassRegistry uses a mutex that is only active if
the llvm_is_multithreaded() returns true.
Calling llvm_start_multithreading() makes this happen
and by calling this function we try to make sure that
we can savely compile shaders in paralell.
Since there is also a call llvm_stop_multithreading()
in the llvm api, we cannot guarantee that this does
not get switched off while we are relying on this being
set, but for the easier use cases this fixes a race with
the radeon llvm compiler we have as of today.

Signed-off-by: Mathias Froehlich <Mathias.Froehlich@web.de>
Signed-off-by: Tom Stellard <thomas.stellard@amd.com>
12 years agor600g: Move common compute/3D register init to its own function
archibald [Mon, 20 Aug 2012 14:44:39 +0000 (14:44 +0000)]
r600g: Move common compute/3D register init to its own function

Signed-off-by: Tom Stellard <thomas.stellard@amd.com>
12 years agonv50/ir/tgsi: handle DP2 in tgsi Instruction srcMask
Christoph Bumiller [Sat, 18 Aug 2012 15:34:44 +0000 (17:34 +0200)]
nv50/ir/tgsi: handle DP2 in tgsi Instruction srcMask

Solved by Tiziano Bacocco on IRC.

12 years agonv50/ir/emit: don't forget saturation bit on f32 add immediate
Christoph Bumiller [Sat, 18 Aug 2012 15:30:50 +0000 (17:30 +0200)]
nv50/ir/emit: don't forget saturation bit on f32 add immediate

Solved by Maxim Levitsky on IRC.

12 years agomesa: use #if over #ifdef in the FEATURE_ES1 check to fix a build failure.
Tilman Sauerbeck [Sat, 18 Aug 2012 09:51:22 +0000 (11:51 +0200)]
mesa: use #if over #ifdef in the FEATURE_ES1 check to fix a build failure.

mfeatures.h will define FEATURE_ES1 to 0 if it's not defined yet.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=53664

Signed-off-by: Brian Paul <brianp@vmware.com>
12 years agost/mesa: fix sampler view counting
Brian Paul [Fri, 17 Aug 2012 14:16:23 +0000 (08:16 -0600)]
st/mesa: fix sampler view counting

In the past, when we called pipe::set_sampler_views(n) the drivers set
samplers [n..MAX] to NULL.  We no longer do that.  The state tracker
code was already trying to set unused sampler views to NULL to cover
that case, but the logic was broken and unnoticed until now.  This patch
fixes it.

Strictly speaking, this patch shouldn't be necessary.  Drivers should simply
ignore unused samplers and sampler views.  But some drivers like llvmpipe (and
others?) count those things and they figure into state validation.  That could
be fixed in the future.

Fixes http://bugs.freedesktop.org/show_bug.cgi?id=53617

Reviewed-by: Marek Olšák <maraeo@gmail.com>