mesa.git
10 years agoradeonsi: add and use a helper function for loading constants
Marek Olšák [Tue, 6 May 2014 12:10:47 +0000 (14:10 +0200)]
radeonsi: add and use a helper function for loading constants

Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
10 years agoradeonsi: only count CS space for state atoms if we're going to draw
Marek Olšák [Mon, 5 May 2014 20:16:45 +0000 (22:16 +0200)]
radeonsi: only count CS space for state atoms if we're going to draw

Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
10 years agoradeonsi: remove unused variable exports_ps in si_pipe_shader_ps
Marek Olšák [Wed, 30 Apr 2014 19:21:17 +0000 (21:21 +0200)]
radeonsi: remove unused variable exports_ps in si_pipe_shader_ps

Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
10 years agoradeonsi: use DRAW_PREAMBLE on CIK
Marek Olšák [Tue, 29 Apr 2014 23:03:40 +0000 (01:03 +0200)]
radeonsi: use DRAW_PREAMBLE on CIK

It's the same as setting the 3 regs separately, but shorter, and it also
seems to be required on GFX7.2 and later. This doesn't fix Hawaii.

Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
10 years agor600g: simplify framebuffer state size computation
Marek Olšák [Tue, 6 May 2014 11:53:59 +0000 (13:53 +0200)]
r600g: simplify framebuffer state size computation

Take the upper bound. The number doesn't have to absolutely correct, only safe.

Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
10 years agoRevert "i965: Fix depth (array slices) computation for 1D_ARRAY render targets."
Kenneth Graunke [Fri, 9 May 2014 21:45:57 +0000 (14:45 -0700)]
Revert "i965: Fix depth (array slices) computation for 1D_ARRAY render targets."

This reverts commit e6967270c75a5b669152127bb7a746d55f4407a6.

Chris Forbes pointed out that this is broken for texture views which
restrict the number of slices.  He committed a better fix which makes
this unnecessary.

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
10 years agoegl_dri2: cleanup memory leak in dri2_create_context()
Emil Velikov [Thu, 8 May 2014 15:49:45 +0000 (16:49 +0100)]
egl_dri2: cleanup memory leak in dri2_create_context()

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
10 years agoilo: destroy the mutex, if winsys creation fails
Emil Velikov [Thu, 8 May 2014 18:09:39 +0000 (19:09 +0100)]
ilo: destroy the mutex, if winsys creation fails

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
10 years agoglx/tests: Partially revert commit 51e3569573a7b3f8da0df093836761003fcdc414
Emil Velikov [Wed, 7 May 2014 21:30:43 +0000 (22:30 +0100)]
glx/tests: Partially revert commit 51e3569573a7b3f8da0df093836761003fcdc414

C++ does not support designated initializers, thus compilation
is not guaranteed to succeed. Surprisingly gcc 4.6.3 fails to
build the code, while version 4.9.0 compiles it without a hitch.

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78403
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Tested-by: Vinson Lee <vlee@freedesktop.org>
10 years agoconfigure: error out if building GBM without dri
Emil Velikov [Mon, 5 May 2014 21:09:22 +0000 (22:09 +0100)]
configure: error out if building GBM without dri

Both backends require --enable-dri, and building an empty libgbm
makes little to no sense. Error out at configure to prevent the
user from shooting themselves in the foot.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78225
Cc: "10.1 10.2" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agomesa: propagate FragDepthLayout to gl_program
Chia-I Wu [Tue, 18 Feb 2014 04:25:06 +0000 (12:25 +0800)]
mesa: propagate FragDepthLayout to gl_program

The information was lost during linking, causing the layout to be treated as
FRAG_DEPTH_LAYOUT_NONE.

Signed-off-by: Chia-I Wu <olv@lunarg.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoglsl: Rename linker's is_varying_var
Chris Forbes [Thu, 8 May 2014 23:28:49 +0000 (11:28 +1200)]
glsl: Rename linker's is_varying_var

Both the ast->IR and linker have functions with this name, but different
behavior.

Rename the linker's version to var_counts_against_varying_limit to be
closer to what it is actually used for.

Suggested by Ian a while back.

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
10 years agoi965: Fix GPU hangs on Broadwell in shaders with some control flow.
Kenneth Graunke [Thu, 8 May 2014 23:44:37 +0000 (16:44 -0700)]
i965: Fix GPU hangs on Broadwell in shaders with some control flow.

According to the documentation, we need to set the source 0 register
type to IMM for flow control instructions that have both JIP and UIP.

Fixes GPU hangs in approximately 10 Piglit tests, 5 es3conform tests,
Unigine Crypt, a WebGL raytracer demo, and several Steam titles.

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75478
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75878
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76939
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Tested-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Tested-by: Kristian Høgsberg <krh@bitplanet.net>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agoradeonsi: Enable geometry shaders with LLVM 3.4.1
Tom Stellard [Fri, 9 May 2014 08:24:42 +0000 (04:24 -0400)]
radeonsi: Enable geometry shaders with LLVM 3.4.1

Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
CC: "10.1 10.2" <mesa-stable@lists.freedesktop.org>
10 years agoconfigure.ac: Add LLVM_VERSION_PATCH to DEFINES
Tom Stellard [Fri, 9 May 2014 08:23:50 +0000 (04:23 -0400)]
configure.ac: Add LLVM_VERSION_PATCH to DEFINES

Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
CC: "10.1 10.2" <mesa-stable@lists.freedesktop.org>
10 years agodocs: Import 10.1.3 release notes, andd news item.
Carl Worth [Fri, 9 May 2014 14:52:26 +0000 (07:52 -0700)]
docs: Import 10.1.3 release notes, andd news item.

10 years agost/xa: Fix performance regression introduced by commit "Cache render target surface"
Thomas Hellstrom [Thu, 8 May 2014 07:08:10 +0000 (09:08 +0200)]
st/xa: Fix performance regression introduced by commit "Cache render target surface"

The mentioned commit has the nasty side-effect of turning off accelerated
copies.

Cc: "10.1 10.2" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
Reviewed-by: Rob Clark <robdclark@gmail.com>
10 years agoclover: Destory pipe_screen when device does not support compute v2
Tom Stellard [Fri, 9 May 2014 01:08:32 +0000 (21:08 -0400)]
clover: Destory pipe_screen when device does not support compute v2

v2:
  - Make sure screen was successfully created before destroying it.

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
10 years agopipe-loader: Don't destroy the winsys in the sw loader
Tom Stellard [Fri, 9 May 2014 01:05:02 +0000 (21:05 -0400)]
pipe-loader: Don't destroy the winsys in the sw loader

The screen takes ownership of the winsys, and is responsible for
destroying it.  Users of pipe-loader should make sure they destory
and  screens they've created to avoid memory leaks.

This fixes a crash in clover introduced by
ce6c17c0833032e91a2d1b34f9eb80c738a854a2 where the pipe-loader was
destroying the winsys while a screen was still using it.

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agoi965/Gen8: Set up layer constraints properly for depth buffers
Chris Forbes [Thu, 8 May 2014 05:06:01 +0000 (17:06 +1200)]
i965/Gen8: Set up layer constraints properly for depth buffers

Same issues as the previous commit fixed for Gen7:
- Bogus physical->logical layer conversion; depth/stencil surfaces
  are still IMS layout on Gen8.
- mt_layer ignored in layered rendering case, which breaks handling
  of views with MinLayer.
- Render target array extent not set correctly for arrays.

I'm not able to test this one since I can't get a Broadwell yet, but
it's the same set of fixes as for Gen7.

V2: Restore the MAX2() to account for zero depth/layer_count.

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoi965/Gen7: Set up layer constraints properly for depth buffers
Chris Forbes [Thu, 8 May 2014 04:29:41 +0000 (16:29 +1200)]
i965/Gen7: Set up layer constraints properly for depth buffers

Again, a few problems:
- Layered attachments did not honor MinLayer.
- Non-layered MSAA attachments rendered to the wrong layer due to
  dividing by the layer count. All depth buffers use the IMS layout, so
  the physical layer count == logical layer count.
- Layered attachments were not limited to irb->layer_count, so we could
  render off the end of the texture.

V2: Restore the MAX2() to account for zero depth/layer_count.

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoi965/Gen8: Set up layer constraints properly for renderbuffers
Chris Forbes [Thu, 8 May 2014 05:15:59 +0000 (17:15 +1200)]
i965/Gen8: Set up layer constraints properly for renderbuffers

Fixing the same issues the previous commit does for Gen7.

Note that I can't test this one, since I don't have a Broadwell.

V2: Restore the MAX2() to account for zero depth/layer_count.

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoi965/Gen7: Set up layer constraints properly for renderbuffers
Chris Forbes [Thu, 8 May 2014 04:02:16 +0000 (16:02 +1200)]
i965/Gen7: Set up layer constraints properly for renderbuffers

There were a few problems here, which mostly just broke layered
rendering into a view:

- Render target view extent was always set to be == depth. This is
  benign for non-layered-rendering, but allows writes off the end of the
  render target for layered rendering, which ends badly.
- Layered rendering did not honor the mt_layer setting, so would not
  properly handle MinLayer being set on a view.

V2: Restore the MAX2() to account for zero depth/layer_count.

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoi965: Fix typo in assert message
Chris Forbes [Thu, 8 May 2014 21:34:34 +0000 (09:34 +1200)]
i965: Fix typo in assert message

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
10 years agoradeonsi: Don't use anonymous struct trick in atom tracking
Adam Jackson [Tue, 22 Apr 2014 16:46:08 +0000 (12:46 -0400)]
radeonsi: Don't use anonymous struct trick in atom tracking

I'm somewhat impressed that current gccs will let you do this, but
sufficiently old ones (including 4.4.7 in RHEL6) won't.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
10 years agollvmpipe: change LP_MAX_SHADER_INSTRUCTIONS limit definition.
Roland Scheidegger [Thu, 8 May 2014 14:25:47 +0000 (16:25 +0200)]
llvmpipe: change LP_MAX_SHADER_INSTRUCTIONS limit definition.

When the limit was changed to be defined in terms of LP_MAX_SHADER_VARIANTS
(75f1fea14f524ef05e980d825fda3ae226ae2ffe) when it was increased, this
inadvertently lowered the limit in some branches (that have a lower
LP_MAX_SHADER_VARIANTS number) when merged. So, make sure the limit is always
at least the number it once was.

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
10 years agodraw: do not use draw_get_option_use_llvm() inside draw execution paths
Roland Scheidegger [Wed, 7 May 2014 17:06:39 +0000 (19:06 +0200)]
draw: do not use draw_get_option_use_llvm() inside draw execution paths

1c73e919a4b4dd79166d0633075990056f27fd28 made it possible to not allocate
the tgsi machine if llvm was used. However, draw_get_option_use_llvm() is
not reliable after draw context creation, since drivers can explicitly
request a non-llvm draw context even if draw_get_option_use_llvm() would
return true (and softpipe does just that) which leads to crashes.
Thus use draw->llvm to determine if we're using llvm or not instead (and
make draw->llvm available even if HAVE_LLVM is false so we don't have to put
even more ifdefs).

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agoi965: Fix depth (array slices) computation for 1D_ARRAY render targets.
Kenneth Graunke [Wed, 7 May 2014 21:35:43 +0000 (14:35 -0700)]
i965: Fix depth (array slices) computation for 1D_ARRAY render targets.

1D array targets store the number of slices in the Height field.

Fixes Piglit's spec/!OpenGL 3.2/layered-rendering/clear-color-all-types
1d_array single_level, at least when used with Meta clears.

Cc: "10.2 10.1 10.0" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
10 years agomesa: Fix MaxNumLayers for 1D array textures.
Kenneth Graunke [Wed, 7 May 2014 21:35:42 +0000 (14:35 -0700)]
mesa: Fix MaxNumLayers for 1D array textures.

1D array targets store the number of slices in the Height field.

Cc: "10.2 10.1 10.0" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
10 years agoi965: Enable GL_ARB_texture_view on Broadwell.
Kenneth Graunke [Tue, 6 May 2014 23:04:40 +0000 (16:04 -0700)]
i965: Enable GL_ARB_texture_view on Broadwell.

This is a port of commit c9c08867ed07ceb10b67ffac5f0a33812710a5e8.
A tiny bit of extra work was necessary to not break stencil texturing.

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
10 years agomesa: pass target through to driver when choosing texture format
Ilia Mirkin [Tue, 6 May 2014 06:51:45 +0000 (02:51 -0400)]
mesa: pass target through to driver when choosing texture format

This only matters for TextureView where the texObj's target has not been
set yet, in all other instances, texObj->target should be the same as
the passed-in target parameter.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agonv50/ir/gk110: fix set with f32 dest
Ilia Mirkin [Tue, 6 May 2014 23:54:59 +0000 (19:54 -0400)]
nv50/ir/gk110: fix set with f32 dest

Should fix comparison opcodes like SGE/SLT/etc which expected a float to
be returned. These were previously getting integer 0/-1 values.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Ben Skeggs <bskeggs@redhat.com>
Cc: 10.2 <mesa-stable@lists.freedesktop.org>
10 years agonv50/ir: allow load propagation when flags are defined
Ilia Mirkin [Sat, 3 May 2014 04:26:14 +0000 (00:26 -0400)]
nv50/ir: allow load propagation when flags are defined

The old condition disallowed load propagation any time flags were
defined, even with e.g. set and a constbuf reference. The new condition
disallows it only with immediate propagation. (There are no opcodes that
set the condition flag and have an immediate argument.)

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
10 years agomesa/st: pass 4-offset TG4 without lowering if supported
Ilia Mirkin [Sun, 27 Apr 2014 03:47:14 +0000 (23:47 -0400)]
mesa/st: pass 4-offset TG4 without lowering if supported

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
10 years agogallium: add a cap for supporting 4-offset TG4 opcodes
Ilia Mirkin [Sun, 27 Apr 2014 03:44:57 +0000 (23:44 -0400)]
gallium: add a cap for supporting 4-offset TG4 opcodes

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
10 years agosvga: add switch case for PIPE_SHADER_CAP_PREFERRED_IR, remove default case
Brian Paul [Mon, 5 May 2014 16:19:56 +0000 (10:19 -0600)]
svga: add switch case for PIPE_SHADER_CAP_PREFERRED_IR, remove default case

Remove default switch case so we're warned of missing cases at compile
time.

Reviewed-by: José Fonseca <jfonseca@vmware.com>
10 years agotgsi: add missing switch cases in tgsi_exec_get_shader_param()
Brian Paul [Mon, 5 May 2014 16:18:49 +0000 (10:18 -0600)]
tgsi: add missing switch cases in tgsi_exec_get_shader_param()

Add cases for PIPE_SHADER_CAP_MAX_SAMPLER_VIEWS and
PIPE_SHADER_CAP_PREFERRED_IR.  Remove default switch case so we
learn of missing cases at compile time.

Reviewed-by: José Fonseca <jfonseca@vmware.com>
10 years agogallivm: add PIPE_SHADER_CAP_PREFERRED_IR switch case, remove default
Brian Paul [Mon, 5 May 2014 16:17:48 +0000 (10:17 -0600)]
gallivm: add PIPE_SHADER_CAP_PREFERRED_IR switch case, remove default

Return PIPE_SHADER_IR_TGSI for the PIPE_SHADER_CAP_PREFERRED_IR query.
Remove default switch case so we learn of missing switch cases at
compile time.

Reviewed-by: José Fonseca <jfonseca@vmware.com>
10 years agogallium: remove enum numbers from shader cap queries
Brian Paul [Sat, 3 May 2014 13:27:48 +0000 (07:27 -0600)]
gallium: remove enum numbers from shader cap queries

The enum numbers were just cruft.

Reviewed-by: Michel Dänzer <michel@daenzer.net>
10 years agolinker: Fix consumer_inputs_with_locations indexing
Ian Romanick [Mon, 5 May 2014 17:39:26 +0000 (10:39 -0700)]
linker: Fix consumer_inputs_with_locations indexing

In an earlier incarnation of populate_consumer_input_sets and
get_matching_input, the consumer_inputs_with_locations array was indexed
using the user-specified location.  In that version, only user-defined
varyings were included in the array.

In the current incarnation, the Mesa location is used to index the
array, and built-in varyings are included.

This change fixes the unit test to exepect gl_ClipDistance in the array,
and it resizes the arrays to actually be big enough.  It's just dumb
luck that the existing piglit tests use small enough locations to not
stomp the stack. :(

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78258
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Cc: Vinson Lee <vlee@freedesktop.org>
10 years agost/wgl: Advertise WGL_ARB_create_context(_profile).
José Fonseca [Wed, 7 May 2014 13:10:20 +0000 (14:10 +0100)]
st/wgl: Advertise WGL_ARB_create_context(_profile).

We added wglCreateContextAttribsARB but not the extension strings.

This allows creation of GL 3.x contexts.

Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agost/wgl: Honour request of 3.1 contexts through core profile where available.
José Fonseca [Wed, 7 May 2014 12:10:40 +0000 (13:10 +0100)]
st/wgl: Honour request of 3.1 contexts through core profile where available.

Port 5f493eed69f6fb11239c04119d602f1c23a68cbd from GLX.

Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agometa: Only clear the requested color buffers.
Kenneth Graunke [Fri, 2 May 2014 08:10:17 +0000 (01:10 -0700)]
meta: Only clear the requested color buffers.

This path is used to implement both glClear and glClearBuffer; the
latter is only supposed to clear particular buffers.  Core Mesa provides
us that information in the buffers bitmask; we must only clear buffers
mentioned there.

To accomplish this, we save/restore the color draw buffers state, and
use glDrawBuffers to restrict drawing to the relevant buffers.

Fixes Piglit's spec/!OpenGL 3.0/clearbuffer-mixed-formats and
spec/ARB_framebuffer_object/fbo-drawbuffers-none glClearBuffer tests
for drivers using meta clears (such as Broadwell).

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77852
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77856
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
10 years agometa: Add infrastructure for saving/restoring the DrawBuffers state.
Kenneth Graunke [Fri, 2 May 2014 08:06:04 +0000 (01:06 -0700)]
meta: Add infrastructure for saving/restoring the DrawBuffers state.

Sometimes we need to configure what draw buffers we render to, without
creating a new FBO.  This path will make that possible.

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
10 years agometa: Add a new MESA_META_DRAW_BUFFERS bit.
Kenneth Graunke [Mon, 5 May 2014 21:03:46 +0000 (14:03 -0700)]
meta: Add a new MESA_META_DRAW_BUFFERS bit.

This will be used for saving/restoring the glDrawBuffers state.
For now, make sure that existing users of MESA_META_ALL don't get
the new bit, since they probably won't want it.

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
10 years agometa: Unify the GLSL and fixed-function clear paths.
Kenneth Graunke [Mon, 5 May 2014 20:33:27 +0000 (13:33 -0700)]
meta: Unify the GLSL and fixed-function clear paths.

The majority of _mesa_meta_Clear and _mesa_meta_glsl_Clear was the same;
adding a boolean for whether to use GLSL allows us to share most of it
without polluting either path too much.

Tested for regressions by hacking i965 to always use the non-GLSL path.

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
10 years agoi965: Always intel_prepare_render() after invalidating front buffers.
Kenneth Graunke [Mon, 5 May 2014 18:02:18 +0000 (11:02 -0700)]
i965: Always intel_prepare_render() after invalidating front buffers.

Fixes glean/texture_srgb, which hit recursive-flush prevention
assertions in vbo_exec_FlushVertices.

This probably hurts the performance of front buffer rendering, but
very few people in their right mind do front buffer rendering.

Fixes Glean's texture_srgb test.

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
10 years agoradeonsi: implement ARB_texture_cube_map_array
Marek Olšák [Tue, 22 Apr 2014 19:23:29 +0000 (21:23 +0200)]
radeonsi: implement ARB_texture_cube_map_array

No LLVM changes needed.

Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
v2: updated GL3.txt and relnotes

10 years agoconfigure.ac: radeonsi requires EGL_DRM and GBM
Marek Olšák [Thu, 24 Apr 2014 11:40:56 +0000 (13:40 +0200)]
configure.ac: radeonsi requires EGL_DRM and GBM

Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
10 years agoglsl: fix bogus layout qualifier warnings
Tapani Pälli [Wed, 30 Apr 2014 07:56:59 +0000 (10:56 +0300)]
glsl: fix bogus layout qualifier warnings

Print out GL_ARB_explicit_attrib_location warnings only
when parsing attribute that uses "location" qualifier.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77245
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Cc: "10.1 10.2" <mesa-stable@lists.freedesktop.org>
10 years agodocs: Import 10.1.2 release notes, andd news item.
Carl Worth [Mon, 5 May 2014 20:25:44 +0000 (13:25 -0700)]
docs: Import 10.1.2 release notes, andd news item.

10 years agost/egl: Flush resources before presentation (android - bug 77966)
Paulo Sergio Travaglia [Fri, 2 May 2014 15:00:11 +0000 (12:00 -0300)]
st/egl: Flush resources before presentation (android - bug 77966)

[olv: Use the real name provided by the patch author.  Ideally this could be
moved to somewhere higher level so that we would not need to create a pipe
context to flush resources.  Plus, it is not clear if flushing resources for
another context is valid.]

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
10 years agodocs: mark ARB_stencil_texturing as done for nv50+/r600+
Ilia Mirkin [Mon, 5 May 2014 00:16:44 +0000 (20:16 -0400)]
docs: mark ARB_stencil_texturing as done for nv50+/r600+

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
10 years agomesa/st: implement ARB_stencil_texturing
Ilia Mirkin [Sat, 3 May 2014 09:08:53 +0000 (05:08 -0400)]
mesa/st: implement ARB_stencil_texturing

If StencilSampling is enabled on the texture object, pass in an
equivalent stencil-only format.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
10 years agonv50,nvc0: add X8Z24_UNORM, fix stencil-only formats
Ilia Mirkin [Sat, 3 May 2014 03:46:28 +0000 (23:46 -0400)]
nv50,nvc0: add X8Z24_UNORM, fix stencil-only formats

S8_UINT will become useful when ARB_texture_stencil8 becomes supported by
mesa. The other stencil formats are needed for ARB_stencil_texturing.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
10 years agoxa: fix segfault
Rob Clark [Sun, 4 May 2014 14:40:46 +0000 (10:40 -0400)]
xa: fix segfault

Fixes:

  Program received signal SIGSEGV, Segmentation fault.
  bind_samplers (comp=0x21b054, comp=0x21b054, ctx=0x211430)
      at ../../../../../src/gallium/state_trackers/xa/xa_composite.c:445
  445 mask_pic->srf->tex->format);
  (gdb) bt
  #0  bind_samplers (comp=0x21b054, comp=0x21b054, ctx=0x211430)
      at ../../../../../src/gallium/state_trackers/xa/xa_composite.c:445
  #1  xa_composite_prepare (ctx=0x211430, comp=comp@entry=0x21b054)
      at ../../../../../src/gallium/state_trackers/xa/xa_composite.c:488
  #2  0xb6f454b4 in XAPrepareComposite (op=<optimized out>, pSrcPicture=<optimized out>,
      pMaskPicture=<optimized out>, pDstPicture=<optimized out>, pSrc=0x5b3ad8, pMask=0x0,
      pDst=0x5923b8) at msm-exa-xa.c:533

We can't yet handle solid fill mask, so explicitly reject that, rather
than segfaulting.  Otherwise DDX would need to check XA version to see
if solid fill mask were supported.

Signed-off-by: Rob Clark <robclark@freedesktop.org>
10 years agoi965: Set miptree target field when creating from a BO.
Kenneth Graunke [Fri, 2 May 2014 06:33:53 +0000 (23:33 -0700)]
i965: Set miptree target field when creating from a BO.

Prior to commit 8435b60a3577d2d905eae189cd7e770500177e99, the region
equivalent of this function called intel_miptree_create_layout, which
set mt->target to target.  With that commit, it no longer copied target.

Piglit's ext_image_dma_buf_import-sample_[xa]rgb8888 tests would then
hit an assertion failure, where image->TexObject->Target was
GL_TEXTURE_EXTERNAL_OES, and mt->target was GL_TEXTURE_2D.

Copying the target fixes this assertion failure.

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
10 years agomesa: Bump version to 10.3-devel
Ian Romanick [Sat, 3 May 2014 04:43:39 +0000 (21:43 -0700)]
mesa: Bump version to 10.3-devel

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
10 years agodocs: Add missing release notes for ARB_separate_shader_objects
Ian Romanick [Sat, 3 May 2014 00:19:48 +0000 (17:19 -0700)]
docs: Add missing release notes for ARB_separate_shader_objects

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reported-by: Ilia Mirkin <imirkin@alum.mit.edu>
10 years agoi965: Move push constant state packets to push constant update time.
Eric Anholt [Thu, 1 May 2014 16:59:22 +0000 (09:59 -0700)]
i965: Move push constant state packets to push constant update time.

-0.553779% +/- 0.423394% effect on cairo-perf-trace runtime on glamor
(n=612)

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoi965: Merge gen8_upload_constant_state into gen7_upload_constant_state.
Eric Anholt [Thu, 1 May 2014 16:55:59 +0000 (09:55 -0700)]
i965: Merge gen8_upload_constant_state into gen7_upload_constant_state.

The two paths are really similar, and the extra conditionals will be
dwarfed by the cost of the actual upload.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoi965: Refactor gen7_upload_constant_state to look more like gen8.
Eric Anholt [Thu, 1 May 2014 16:54:07 +0000 (09:54 -0700)]
i965: Refactor gen7_upload_constant_state to look more like gen8.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoi965: Drop unnecessary state flag for units on NEW_BINDING_TABLE.
Eric Anholt [Thu, 1 May 2014 17:40:20 +0000 (10:40 -0700)]
i965: Drop unnecessary state flag for units on NEW_BINDING_TABLE.

Commit 30259856a8a82a55c030df1ad052e505c61144bc moved the state packets to
table generation time, but forgot to make this change.  Apparently the
performance win there was about not reemitting the table pointers on
unrelated state changes.

No performance difference on cairo on glamor (n=118).

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoi965/gen7+: Move sampler state packets to the stage sampler state table update.
Eric Anholt [Mon, 28 Apr 2014 18:27:22 +0000 (11:27 -0700)]
i965/gen7+: Move sampler state packets to the stage sampler state table update.

Now that we have the stage state coming into our setup of sampler states,
it's easy to drop an identifier into it of which stage the stage_state is,
and then look up which packet to emit in a little table.

No performance difference on cairo on glamor (n=492).

v2: Don't forget to do the workaround flush on IVB.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoi965/gen6: Don't update unit state when samplers change.
Eric Anholt [Thu, 1 May 2014 20:49:57 +0000 (13:49 -0700)]
i965/gen6: Don't update unit state when samplers change.

There's no remaining dependency between these two packets that I can find.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoi965: Drop a NEW_SAMPLER annotation for use of sampler_count.
Eric Anholt [Mon, 28 Apr 2014 16:35:20 +0000 (09:35 -0700)]
i965: Drop a NEW_SAMPLER annotation for use of sampler_count.

The sampler count is set up from the gl_program at draw time, not at
sampler change time.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoi965: Simplify sampler setup by passing the stage state.
Eric Anholt [Mon, 28 Apr 2014 16:23:57 +0000 (09:23 -0700)]
i965: Simplify sampler setup by passing the stage state.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoi965: Make batch dumping go to stderr, too.
Eric Anholt [Thu, 1 May 2014 16:12:10 +0000 (09:12 -0700)]
i965: Make batch dumping go to stderr, too.

All our other debug goes there.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoi965: Fix a stale comment reference
Eric Anholt [Wed, 23 Apr 2014 21:04:04 +0000 (14:04 -0700)]
i965: Fix a stale comment reference

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoglx: Conditionally compile GLX_MESA_query_renderer DRI3 support
Armin K [Fri, 2 May 2014 21:59:22 +0000 (23:59 +0200)]
glx: Conditionally compile GLX_MESA_query_renderer DRI3 support

Missed out with commit 625bdd64e5ea3327d4459b1ccccff8dab89129d0.

Cc: "10.1" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agoradeonsi: add Mullins pci ids.
Samuel Li [Tue, 12 Nov 2013 20:49:55 +0000 (15:49 -0500)]
radeonsi: add Mullins pci ids.

Signed-off-by: Samuel Li <samuel.li@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
10 years agoradeonsi: add support for Mullins asics.
Samuel Li [Thu, 1 May 2014 17:27:58 +0000 (13:27 -0400)]
radeonsi: add support for Mullins asics.

v2: name defaults to kabini for older llvm
v3: fix llvm version check

Signed-off-by: Samuel Li <samuel.li@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
10 years agoconfigure: bump up libdrm_radeon requirement to 2.4.54
Alex Deucher [Fri, 2 May 2014 21:28:04 +0000 (17:28 -0400)]
configure: bump up libdrm_radeon requirement to 2.4.54

Required for Mullins.

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
10 years agodri3: Enable GLX_MESA_query_renderer on DRI3 too
Ian Romanick [Thu, 20 Feb 2014 19:47:14 +0000 (11:47 -0800)]
dri3: Enable GLX_MESA_query_renderer on DRI3 too

This should have happend around the time of commit 4680d23, but Keith's
DRI3 patches and my GLX_MESA_query_renderer patches crossed in the mail.

I don't have a working DRI3 setup, so I haven't been able to actually
verify this.  I'm hoping that someone can piglit this for me on DRI3...
It's also unfortunate the DRI2 and DRI3 can't share more code.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Cc: Keith Packard <keithp@keithp.com>
Cc: "10.1" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agoutil: Don't attempt to redefine INFINITY/NAN on VS 2013.
José Fonseca [Thu, 1 May 2014 13:17:51 +0000 (14:17 +0100)]
util: Don't attempt to redefine INFINITY/NAN on VS 2013.

There are now provided by VS.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
10 years agomesa: VS 2013 does not provide strcasecmp.
José Fonseca [Thu, 1 May 2014 13:17:14 +0000 (14:17 +0100)]
mesa: VS 2013 does not provide strcasecmp.

A define is necessary, like for earlier VS versions.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
10 years agoegl: Don't attempt to redefine stdint.h types with VS 2010.
José Fonseca [Thu, 1 May 2014 13:16:08 +0000 (14:16 +0100)]
egl: Don't attempt to redefine stdint.h types with VS 2010.

Just include stdint.h.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
10 years agoscons: Don't use bundled C99 headers for VS 2013.
José Fonseca [Thu, 1 May 2014 13:19:13 +0000 (14:19 +0100)]
scons: Don't use bundled C99 headers for VS 2013.

Use the ones provided by the compiler instead.

NOTE: External trees should be updated to not include '#include/c99'
directory directly, but rather rely on scons/gallium.py to do the right
thing.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
10 years agoscons: Don't restrict MSVC_VERSION values.
José Fonseca [Thu, 1 May 2014 14:49:36 +0000 (15:49 +0100)]
scons: Don't restrict MSVC_VERSION values.

Saves the trouble of continuously needing to update.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
10 years agodraw: Prevent signed/unsigned comparisons.
José Fonseca [Thu, 1 May 2014 14:41:43 +0000 (15:41 +0100)]
draw: Prevent signed/unsigned comparisons.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
10 years agost/vega: Prevent signed/unsigned comparisons.
José Fonseca [Thu, 1 May 2014 14:40:49 +0000 (15:40 +0100)]
st/vega: Prevent signed/unsigned comparisons.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
10 years agoscons: Adjust the warnings for VS.
José Fonseca [Thu, 1 May 2014 14:40:43 +0000 (15:40 +0100)]
scons: Adjust the warnings for VS.

Silence insignificant warnings so significant warnings have a chance to
stand out.

The only abundant warning that's not silenced here is "C4018:
signed/unsigned mismatch", as it could hide security issues, so it's better
to actually fix the code.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
10 years agoutil/u_debug_flush: Use util_snprintf.
José Fonseca [Thu, 1 May 2014 13:18:15 +0000 (14:18 +0100)]
util/u_debug_flush: Use util_snprintf.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
10 years agotargets/omx: add nouveau target
Emil Velikov [Sat, 5 Apr 2014 01:15:33 +0000 (02:15 +0100)]
targets/omx: add nouveau target

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agotargets/omx: use GALLIUM_VIDEO_CFLAGS
Emil Velikov [Sat, 5 Apr 2014 01:42:30 +0000 (02:42 +0100)]
targets/omx: use GALLIUM_VIDEO_CFLAGS

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
10 years agotargets/pipe-loader: cleanup version-script
Emil Velikov [Sat, 5 Apr 2014 17:04:18 +0000 (18:04 +0100)]
targets/pipe-loader: cleanup version-script

Drop the version/name tag from the script as it was never
meant to be there. Add swrast_create_screen as it is used
when loading swrast. Rename the file to pipe.sym.

v2: Rebase on top of the LD_NO_UNDEFINED changes.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
10 years agotargets/opencl: hide all the exported llvm/clang mayhem... hopefully
Emil Velikov [Fri, 4 Apr 2014 22:37:15 +0000 (23:37 +0100)]
targets/opencl: hide all the exported llvm/clang mayhem... hopefully

Both llvm and clang polute the exported symbol table, as soon
as we try to link with either one. Other than those two
everything else looks good (clean).

Cc: Tom Stellard <thomas.stellard@amd.com>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
10 years agotargets/egl-static: freshen up the version script
Emil Velikov [Sat, 5 Apr 2014 17:03:05 +0000 (18:03 +0100)]
targets/egl-static: freshen up the version script

Namely drop the version/name tag of the exported symbol, and
rename the filename to egl.sym.

v2: Rebase on top of the LD_NO_UNDEFINED changes.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agotargets/gbm: add version-script to limit exported symbols
Emil Velikov [Fri, 4 Apr 2014 20:44:36 +0000 (21:44 +0100)]
targets/gbm: add version-script to limit exported symbols

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agotargets/vdpau: use version script to limit the exported symbols
Emil Velikov [Fri, 4 Apr 2014 22:59:30 +0000 (23:59 +0100)]
targets/vdpau: use version script to limit the exported symbols

Using export-symbols-regex is the least desirable method of restricting
the exported symbols, as is completely messes up with the symbol table.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
10 years agotargets/omx: drop the version from the omx targets
Emil Velikov [Sat, 5 Apr 2014 17:09:59 +0000 (18:09 +0100)]
targets/omx: drop the version from the omx targets

Suggested-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agotargets/omx: use version script to limit amount of exported symbols
Emil Velikov [Fri, 4 Apr 2014 22:53:13 +0000 (23:53 +0100)]
targets/omx: use version script to limit amount of exported symbols

Using export-symbols-regex is the least desirable method of restricting
the exported symbols, as is completely messes up with the symbol table.

radeon_drm_winsys_create is not needed, avoid exporting it.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
10 years agotargets/dri: use a single version script to restict exported symbols
Emil Velikov [Fri, 4 Apr 2014 22:52:21 +0000 (23:52 +0100)]
targets/dri: use a single version script to restict exported symbols

Rather than having multiple (almost) identical version scripts use
a single one.

Cc: Christian König <christian.koenig@amd.com>
Acked-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agotargets/xvmc: limit the amount of exported symbols
Emil Velikov [Fri, 4 Apr 2014 22:46:13 +0000 (23:46 +0100)]
targets/xvmc: limit the amount of exported symbols

In the presence of LLVM the final library exports every symbol from
the llvm namespace. Resolve this by using a version script (w/o the
version/name tag).

Considering that there are only ~25 symbols, explicitly list them
to minimize the chances of rogue symbols sneaking in.

Drop the *winsys_create functions as they were only meant for
gl-vdpau interop.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
10 years agotargets/osmesa: hide osmesa_create_screen
Emil Velikov [Fri, 4 Apr 2014 17:32:38 +0000 (18:32 +0100)]
targets/osmesa: hide osmesa_create_screen

The symbol is not meant to be exported, and its presence was
only a side effect due to the missing visibility flags.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agotargets/pipe-loader: drop driver_descriptor symbol from swrast
Emil Velikov [Fri, 4 Apr 2014 14:45:08 +0000 (15:45 +0100)]
targets/pipe-loader: drop driver_descriptor symbol from swrast

The symbol is used for hardware only drivers. For swrast the
loader uses swrast_create_screen. Add VISIBILITY_CFLAGS while
we're here.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
10 years agomesa: add extra null checks in vbo_rebase_prims()
Juha-Pekka Heikkila [Sun, 27 Apr 2014 20:04:58 +0000 (23:04 +0300)]
mesa: add extra null checks in vbo_rebase_prims()

v2 [idr]: Move declarations before code to prevent MSVC build breaks.

Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
10 years agomesa: add missing null checks in _tnl_register_fastpath()
Juha-Pekka Heikkila [Sun, 27 Apr 2014 20:04:57 +0000 (23:04 +0300)]
mesa: add missing null checks in _tnl_register_fastpath()

Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
10 years agomesa: Add _mesa_error_no_memory for logging out-of-memory messages
Ian Romanick [Tue, 4 Mar 2014 13:39:37 +0000 (15:39 +0200)]
mesa: Add _mesa_error_no_memory for logging out-of-memory messages

This can be called from locations that don't have a context pointer
handy.  This patch also adds enough infrastructure so that the unit
tests for the GLSL compiler and the stand-alone compiler will build and
function.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
10 years agoglsl: make static constant variables "static const"
Chia-I Wu [Tue, 22 Apr 2014 08:58:16 +0000 (16:58 +0800)]
glsl: make static constant variables "static const"

This allows them to be moved to .rodata, and allow us to be sure that they
will not be modified.

Signed-off-by: Chia-I Wu <olv@lunarg.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Timothy Arceri <t_arceri@yahoo.com.au>