mesa.git
10 years agogallium: add support for LODQ opcodes.
Dave Airlie [Tue, 11 Feb 2014 03:26:08 +0000 (13:26 +1000)]
gallium: add support for LODQ opcodes.

This opcode provide support for GL_ARB_texture_query_lod,

Signed-off-by: Dave Airlie <airlied@redhat.com>
[imirkin: rebase, docs update]
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
10 years agoi965/vec4: Allow constant propagation into dot product.
Matt Turner [Sun, 2 Mar 2014 17:02:17 +0000 (09:02 -0800)]
i965/vec4: Allow constant propagation into dot product.

total instructions in shared programs: 1667088 -> 1667055 (-0.00%)
instructions in affected programs:     3362 -> 3329 (-0.98%)

Reviewed-by: Eric Anholt <eric@anholt.net>
10 years agoglsl: Optimize (x + y cmp 0) into (x cmp -y).
Matt Turner [Sat, 29 Mar 2014 19:31:24 +0000 (12:31 -0700)]
glsl: Optimize (x + y cmp 0) into (x cmp -y).

Cuts a small handful of instructions in Serious Sam 3:

instructions in affected programs:     4692 -> 4666 (-0.55%)

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
10 years agoi965/fs: Split out can_coalesce_vars() function.
Matt Turner [Thu, 27 Mar 2014 17:25:57 +0000 (10:25 -0700)]
i965/fs: Split out can_coalesce_vars() function.

Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
10 years agoi965/fs: Split out is_coalesce_candidate() function.
Matt Turner [Thu, 27 Mar 2014 16:40:58 +0000 (09:40 -0700)]
i965/fs: Split out is_coalesce_candidate() function.

Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
10 years agoi965/fs: Split fs_visitor::register_coalesce() into its own file.
Matt Turner [Sat, 8 Feb 2014 02:17:03 +0000 (18:17 -0800)]
i965/fs: Split fs_visitor::register_coalesce() into its own file.

The function has gotten large, and brw_fs.cpp is the largest source file
in the driver.

Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
10 years agoi965/fs: Mark appropriate fs_inst members as const.
Matt Turner [Thu, 27 Mar 2014 16:40:30 +0000 (09:40 -0700)]
i965/fs: Mark appropriate fs_inst members as const.

Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
10 years agoi965: Mark is_tex() and friends as const.
Matt Turner [Thu, 27 Feb 2014 23:44:45 +0000 (15:44 -0800)]
i965: Mark is_tex() and friends as const.

Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
10 years agoi965/fs: Don't propagate saturation modifiers if there are source modifiers.
Matt Turner [Thu, 3 Apr 2014 20:57:44 +0000 (13:57 -0700)]
i965/fs: Don't propagate saturation modifiers if there are source modifiers.

Which would lead to translating

   mad     vgrf9:F,  vgrf3:F, u0:F, vgrf6:F
   mov.sat vgrf7:F, -vgrf9:F

into

   mad.sat vgrf9:F,  vgrf3:F, u0:F, vgrf6:F
   mov     vgrf7:F, -vgrf9:F

Fixes some lighting effects in Dota2.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76749
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
10 years agoi965/fs: Don't propagate saturate modifiers into partial writes.
Matt Turner [Thu, 3 Apr 2014 21:00:32 +0000 (14:00 -0700)]
i965/fs: Don't propagate saturate modifiers into partial writes.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
10 years agoi965/fs: Fix off-by-one in saturate propagation.
Matt Turner [Thu, 3 Apr 2014 17:35:09 +0000 (10:35 -0700)]
i965/fs: Fix off-by-one in saturate propagation.

ip needs to be initialized to start_ip - 1, since the first thing in the
main loop is ip++. Otherwise we would incorrectly propagate the saturate
from the mov to the mad:

   mad     a, b, c, d
   mov.sat x, a
   add     y, z, a

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
10 years agoi965/vec4: Consider sources of non-GRF-dst instructions for dead channels.
Matt Turner [Tue, 1 Apr 2014 21:05:39 +0000 (14:05 -0700)]
i965/vec4: Consider sources of non-GRF-dst instructions for dead channels.

Previously we'd ignore the sources of instructions with non-GRF
destinations when calculating calculating the dead channels. This would
lead to us incorrectly removing the first instruction in this sequence:

   mov vgrf11, ...
   cmp.ne.f0 null, vgrf11, 1.0
   mov vgrf11, ...

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

10 years agoi965/fs: Name temporary ralloc contexts something other than mem_ctx.
Matt Turner [Wed, 26 Mar 2014 22:58:12 +0000 (15:58 -0700)]
i965/fs: Name temporary ralloc contexts something other than mem_ctx.

Or else poor programmers might mistakenly use the temporary mem_ctx,
instead of the fs_visitor's mem_ctx and wonder why their code is
crashing.

Also remove the parenting. These contexts are local to the optimization
passes they're in and are freed at the end.

10 years agoi965/fs: Recalculate live intervals in calculate_register_pressure().
Matt Turner [Wed, 26 Mar 2014 20:09:21 +0000 (13:09 -0700)]
i965/fs: Recalculate live intervals in calculate_register_pressure().

Otherwise calling dump_instructions() after declaring a new fs_reg would
segfault when calculate_register_pressure()'s loop over reg walked off
the end of the virtual_grf_start[] array that calculate_live_intervals()
would have reallocated for you, if it had known there was a new
register.

10 years agoegl/dri2: use drm macros to construct device name
Jonathan Gray [Thu, 3 Apr 2014 05:22:26 +0000 (16:22 +1100)]
egl/dri2: use drm macros to construct device name

Don't hardcode /dev/dri/card0 but instead use the drm
macros which allows the correct /dev/drm0 device to be
opened on OpenBSD.

v2: use snprintf and fallback to /dev/dri/card0
v3: check for snprintf truncation

Signed-off-by: Jonathan Gray <jsg@jsg.id.au>
Cc: "10.1" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agoconfigure: don't require libudev for gbm or egl drm/wayland
Jonathan Gray [Sun, 23 Mar 2014 04:53:08 +0000 (15:53 +1100)]
configure: don't require libudev for gbm or egl drm/wayland

After the loader changes libudev is no longer required for
gbm or the egl drm/wayland platforms.  Lets these build/run
on OpenBSD.

v2: preserve the libudev requirement for Linux as suggested
by Emil Velikov.

Signed-off-by: Jonathan Gray <jsg@jsg.id.au>
Cc: "10.1" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agoegl/dri2: don't require libudev to build drm/wayland platforms
Jonathan Gray [Sun, 23 Mar 2014 04:53:07 +0000 (15:53 +1100)]
egl/dri2: don't require libudev to build drm/wayland platforms

After the loader changes libudev is no longer required to
build gbm or the egl drm/wayland platforms.

Remove a libudev ifdef which allows the the drm egl driver
to be loaded on OpenBSD.

Signed-off-by: Jonathan Gray <jsg@jsg.id.au>
Cc: "10.1" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agoautomake: don't enable -Wl,--no-undefined on OpenBSD
Jonathan Gray [Thu, 3 Apr 2014 04:46:01 +0000 (15:46 +1100)]
automake: don't enable -Wl,--no-undefined on OpenBSD

OpenBSD does not have DT_NEEDED entries for libc by design,
over concerns how the symbols would be referenced after
changing the major version of the library.

So avoid -no-undefined checks on OpenBSD as they will fail.

v2: don't include the -no-undefined libtool option in the variable
    and change -Wl,--no-undefined references in Automake.inc as well.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76856
Signed-off-by: Jonathan Gray <jsg@jsg.id.au>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agotargets/dri: move common libraries to GALLIUM_DRI_LIB_DEPS
Emil Velikov [Tue, 1 Apr 2014 01:58:33 +0000 (02:58 +0100)]
targets/dri: move common libraries to GALLIUM_DRI_LIB_DEPS

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agotargets/omx: use GALLIUM_COMMON_LIB_DEPS
Emil Velikov [Tue, 1 Apr 2014 01:43:34 +0000 (02:43 +0100)]
targets/omx: use GALLIUM_COMMON_LIB_DEPS

The targets do not require expat or selinux. Use GALLIUM_COMMON_LIB_DEPS
which provides the core requirements for each gallium target.

Cc: Christian König <christian.koenig@amd.com>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agotargets/xvmc: use GALLIUM_COMMON_LIB_DEPS
Emil Velikov [Tue, 1 Apr 2014 01:40:32 +0000 (02:40 +0100)]
targets/xvmc: use GALLIUM_COMMON_LIB_DEPS

The targets do not require expat or selinux. Use GALLIUM_COMMON_LIB_DEPS
which provides the core requirements for each gallium target.

Cc: Christian König <christian.koenig@amd.com>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agor600/omx: drop -lstdc++ hack
Emil Velikov [Tue, 1 Apr 2014 01:51:20 +0000 (02:51 +0100)]
r600/omx: drop -lstdc++ hack

The build system will use g++ to link the static library due to the
dummy.cpp source(s). Thus one does not need the explicit link against
stdc++.

Cc: Christian König <christian.koenig@amd.com>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agodrivers/nouveau: mention dummy.cpp to use g++ linker
Emil Velikov [Tue, 1 Apr 2014 01:49:58 +0000 (02:49 +0100)]
drivers/nouveau: mention dummy.cpp to use g++ linker

The build system does not know that the static library is C++.
Mention the cpp file to trigger generation of the proper variable
and drop the hacky stdc++ linking.

Cc: Ilia Mirkin <imirkin@alum.mit.edu>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
10 years agodrivers/nouveau: use GALLIUM_COMMON_LIB_DEPS
Emil Velikov [Tue, 1 Apr 2014 01:46:30 +0000 (02:46 +0100)]
drivers/nouveau: use GALLIUM_COMMON_LIB_DEPS

Cc: Ilia Mirkin <imirkin@alum.mit.edu>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
10 years agodrivers/r300: use GALLIUM_COMMON_LIB_DEPS
Emil Velikov [Tue, 1 Apr 2014 01:45:22 +0000 (02:45 +0100)]
drivers/r300: use GALLIUM_COMMON_LIB_DEPS

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76848
Tested-by: Vinson Lee <vlee@freedesktop.org>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agoautomake: introduce GALLIUM_COMMON_LIB_DEPS
Emil Velikov [Tue, 1 Apr 2014 01:34:08 +0000 (02:34 +0100)]
automake: introduce GALLIUM_COMMON_LIB_DEPS

Rather than copying the core four dependencies all over gallium,
introduce the above variable to avoid all the duplication.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76848
Tested-by: Vinson Lee <vlee@freedesktop.org>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agoautomake: move GALLIUM_DRI_LIB_DEPS to Automake.inc
Emil Velikov [Tue, 1 Apr 2014 01:05:57 +0000 (02:05 +0100)]
automake: move GALLIUM_DRI_LIB_DEPS to Automake.inc

With recent commit we started de-duplicating all of the compiler/
linker flags moving their handling inside Automake.inc.

This did not take into consideration that the above variable was set
at configure time, leading to issues on certain build combinations.

Move the variable to where it's used/handled thus cleaning up
configure.ac.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76848
Tested-by: Vinson Lee <vlee@freedesktop.org>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agoconfigure.ac: fix the detection of expat with pkg-config
Johannes Nixdorf [Sat, 22 Mar 2014 11:49:06 +0000 (12:49 +0100)]
configure.ac: fix the detection of expat with pkg-config

The pkg-config module was called "EXPAT" instead of "expat" in
PKG_CHECK_EXISTS. This seems to have been wrong because the wrong
argument was copied from PKG_CHECK_MODULES.

Cc: "10.0" "10.1" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agomegadriver_stub.c: don't use _GNU_SOURCE to gate the compat code
Jonathan Gray [Tue, 18 Mar 2014 14:59:18 +0000 (01:59 +1100)]
megadriver_stub.c: don't use _GNU_SOURCE to gate the compat code

_GNU_SOURCE is only set/required for linux*|*-gnu*|gnu*) and as the
functionality is available on other systems check for RTLD_DEFAULT instead.

Signed-off-by: Jonathan Gray <jsg@jsg.id.au>
Cc: "10.1" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agoloader: don't limit the non-udev path to only android
Jonathan Gray [Tue, 18 Mar 2014 14:59:16 +0000 (01:59 +1100)]
loader: don't limit the non-udev path to only android

Platforms that lack libudev (OpenBSD and possibly others) need
this change in order to load the correct dri driver.
Under linux we unconditionally require libudev, thus this code
will never get build.

v2: Add commit message (Emil Velikov)

Signed-off-by: Jonathan Gray <jsg@jsg.id.au>
Cc: "10.1" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agoloader: use 0 instead of FALSE which isn't defined
Jonathan Gray [Tue, 18 Mar 2014 14:59:15 +0000 (01:59 +1100)]
loader: use 0 instead of FALSE which isn't defined

Signed-off-by: Jonathan Gray <jsg@jsg.id.au>
Cc: "10.1" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agoclover: Document that the *obj*() helpers already take care of object validation.
Francisco Jerez [Fri, 4 Apr 2014 12:06:11 +0000 (14:06 +0200)]
clover: Document that the *obj*() helpers already take care of object validation.

10 years agoi965: Mark SNB GT1 as a GT1.
Matt Turner [Fri, 4 Apr 2014 19:16:23 +0000 (12:16 -0700)]
i965: Mark SNB GT1 as a GT1.

brw->gt only seems to be used on gen >= 7, so this shouldn't have any
effect.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
10 years agogallium/u_blitter: implement scaled blitting in the Z direction
Marek Olšák [Sun, 16 Mar 2014 02:44:09 +0000 (03:44 +0100)]
gallium/u_blitter: implement scaled blitting in the Z direction

So that pipe->blit can be used for 3D mipmap generation.

10 years agogallium/u_blitter: don't adjust cubemap coordinates by a small number
Marek Olšák [Sun, 16 Mar 2014 02:40:54 +0000 (03:40 +0100)]
gallium/u_blitter: don't adjust cubemap coordinates by a small number

It may cause issues with mipmap generation.
I think it was used to make some piglit tests pass on r300g.

10 years agoRevert "radeon: just don't map VRAM buffers at all"
Leo Liu [Wed, 2 Apr 2014 13:09:32 +0000 (09:09 -0400)]
Revert "radeon: just don't map VRAM buffers at all"

This reverts commit 96e8b916a7a39a9ba58e92d1ad77b5501de63ac7.
In the case of VCE encoding with raw YUV file, CPU load directly
to VRAM is faster than combination of CPU writing to GTT and
then blit to VRAM with GPU.

Reviewed-by: Christian König <christian.koenig@amd.com>
10 years agoradeon/vce: cleanup cpb handling
Leo Liu [Thu, 3 Apr 2014 20:53:30 +0000 (16:53 -0400)]
radeon/vce: cleanup cpb handling

v2: fix whitespace errors, minor coding style changes

Signed-off-by: Leo Liu <leo.liu@amd.com>
Signed-off-by: Christian König <christian.koenig@amd.com>
10 years agost/mesa: improve sampler view handling
Christian König [Tue, 25 Mar 2014 16:31:49 +0000 (17:31 +0100)]
st/mesa: improve sampler view handling

Keep a dynamically increasing array of all the views
created for a texture instead of just the last one.

v2: add comments, fix array size calculation,
    release only the first sampler view found

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agost/xa: Fix advertized version number and try to avoid future discrepancies
Thomas Hellstrom [Thu, 3 Apr 2014 05:59:31 +0000 (07:59 +0200)]
st/xa: Fix advertized version number and try to avoid future discrepancies

The xa version number had to be set in two places. In configure.ac and in
xa_tracker.h. Furthermore, xa_tracker.h is an installed header so we can't
use mesa internal defines. So therefore, at configure time, modify the
xa_tracker.h header to use the version given by configure.ac

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Rob Clark <robdclark@gmail.com>
10 years agoglapi: Fix make check
Ian Romanick [Wed, 2 Apr 2014 21:48:24 +0000 (14:48 -0700)]
glapi: Fix make check

/me puts a paper bag on his head and sits in the corner.

This was supposed to be included in 5a68f731, which added
glPointSizePointerOES back to the list of functions exposed by
libGLESv1_CM.  It looks like it was an uncommitted change in my tree
when I sent the patch out.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agollvmpipe: remove no-op checks in sampler, sampler_view functions
Brian Paul [Wed, 2 Apr 2014 23:15:47 +0000 (17:15 -0600)]
llvmpipe: remove no-op checks in sampler, sampler_view functions

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Reviewed-by: José Fonseca <jfonseca@vmware.com>
10 years agosoftpipe: remove no-op checks in sampler, sampler_view functions
Brian Paul [Wed, 2 Apr 2014 23:15:38 +0000 (17:15 -0600)]
softpipe: remove no-op checks in sampler, sampler_view functions

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Reviewed-by: José Fonseca <jfonseca@vmware.com>
10 years agosvga: remove no-op checks in sampler, sampler_view functions
Brian Paul [Wed, 2 Apr 2014 23:12:20 +0000 (17:12 -0600)]
svga: remove no-op checks in sampler, sampler_view functions

We are checking for no-ops in the CSO module for both of these items
so there's no reason to do it in the driver.

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Reviewed-by: José Fonseca <jfonseca@vmware.com>
10 years agocso: check for no sampler view changes in cso_set_sampler_views()
Brian Paul [Wed, 2 Apr 2014 23:12:02 +0000 (17:12 -0600)]
cso: check for no sampler view changes in cso_set_sampler_views()

As we do for sampler states in single_sampler_done() and many other
CSO functions.

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Reviewed-by: José Fonseca <jfonseca@vmware.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
10 years agodocs: Add note about updating tests to dev info
Timothy Arceri [Wed, 2 Apr 2014 06:35:17 +0000 (17:35 +1100)]
docs: Add note about updating tests to dev info

Signed-off-by: Timothy Arceri <t_arceri@yahoo.com.au>
10 years agost/wgl: Remove wgl*Gallium*MESA().
José Fonseca [Thu, 27 Mar 2014 14:46:02 +0000 (14:46 +0000)]
st/wgl: Remove wgl*Gallium*MESA().

These were only used by the Python state tracker, which was removed, hence
they have no practical use.

Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agoglapi: Fix scons build
Ian Romanick [Wed, 2 Apr 2014 19:30:27 +0000 (12:30 -0700)]
glapi: Fix scons build

Put the -c in the correct place (and match Makefile.am).

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76960
Tested-by: Vinson Lee <vlee@freedesktop.org>
Signed-off-by: José Fonseca <jfonseca@vmware.com>
10 years agoglx: Do not advertise buffer_age on dri2
Adel Gadllah [Sun, 30 Mar 2014 21:36:25 +0000 (23:36 +0200)]
glx: Do not advertise buffer_age on dri2

Previously GLX_EXT_buffer_age has always been advertised as supported because
both client_glx_support and client_glx_only where set. So it did not matter
that direct_support is only set when running dri3 and we ended up always
advertising it.

Fix that by not setting client_glx_only for buffer_age in known_glx_extensions.

Signed-off-by: Adel Gadllah <adel.gadllah@gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
10 years agocso: fix sampler view count in cso_set_sampler_views()
Brian Paul [Wed, 2 Apr 2014 14:54:41 +0000 (08:54 -0600)]
cso: fix sampler view count in cso_set_sampler_views()

We want to call pipe->set_sampler_views() with count being the
maximum of the old number of sampler views and the new number.
This makes sure we null-out any old sampler views.

We already do the same thing for sampler states in single_sampler_done().
Fixes some assertions seen in the VMware driver with XA tracker.

Cc: "10.0" "10.1" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
Tested-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
10 years agoglapi: Add static dispatch for glPointSizePointerOES
Ian Romanick [Wed, 2 Apr 2014 04:32:11 +0000 (21:32 -0700)]
glapi: Add static dispatch for glPointSizePointerOES

The OpenGL ES 1.1 conformance tests expect this function to be
statically available form libGLESv1_CM.so.  The comment "required for
es1.1" in the XML file should have been a clue.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76926
Reviewed-by: Matt Turner <mattst88@gmail.com>
Tested-by: Lu Hua <huax.lu@intel.com>
10 years agoRevert "Revert "glapi/es1: Don't mark core functions as static_dispatch=false""
Ian Romanick [Tue, 1 Apr 2014 20:11:46 +0000 (13:11 -0700)]
Revert "Revert "glapi/es1: Don't mark core functions as static_dispatch=false""

This reverts commit 526e49290cd2d83fb931708a786c27647972a00c.

The original build problem should be fixed by the previous commit.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Tested-by: Brian Paul <brianp@vmware.com>
Tested-by: Lu Hua <huax.lu@intel.com>
10 years agoglapi: Enable ES compatibility mode
Ian Romanick [Tue, 1 Apr 2014 20:04:17 +0000 (13:04 -0700)]
glapi: Enable ES compatibility mode

Ages ago Chia-I added an ES compatibility flag to several of the various
generator scripts.  The intention was to bridge differences between ES
and desktop in Mesa builds without ES.  It doesn't appear that it has
ever been used.  Recent changes to static_dispatch status of several ES1
functions caused problems in desktop-only, non-shared-glapi builds.
Enabling the ES compatibility mode appears to fix these build problems.

This is kind of a duct tape solution to this problem.  As I mentioned in
the cover letter for the series that triggered the build problem, I
would like to make some major changes to the generator architecture and
the XML.  The whole point of the proposed architecture changes is to
better handle the differences between desktop GL and ES.  I think duct
tape is okay for now.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76869
Tested-by: Brian Paul <brianp@vmware.com>
Tested-by: Lu Hua <huax.lu@intel.com>
Cc: Vinson Lee <vlee@freedesktop.org>
Cc: Chia-I Wu <olv@lunarg.com>
10 years agoglapi: Fix build break in 'make check' on non-shared-glapi builds
Ian Romanick [Tue, 1 Apr 2014 19:56:31 +0000 (12:56 -0700)]
glapi: Fix build break in 'make check' on non-shared-glapi builds

Commit fb78fa58 made the GL_ARB_debug_output functions aliases of the
GL_KHR_debug output functions.  As a result, the function names in
struct _glapi_table also changed.  The table in check_table.cpp used the
ARB names.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Timothy Arceri <t_arceri@yahoo.com.au>
Tested-by: Brian Paul <brianp@vmware.com>
Tested-by: Lu Hua <huax.lu@intel.com>
Cc: Vinson Lee <vlee@freedesktop.org>
10 years agoglapi: Remove support for "short string" mode
Ian Romanick [Tue, 1 Apr 2014 19:40:18 +0000 (12:40 -0700)]
glapi: Remove support for "short string" mode

C89 has a fairly short minimum-maximum string length.  To support
compilers limited by the C89 limits, this script had a mode where it
would generate a character array instead of a giant string.  These were
functionally the same, but the code generated for the character array is
HUGE and difficult to read.

As far as I can tell, nothing in Mesa uses '-m short' any more.  The
generated files used to be tracked in revision control, but I think we
stopped using '-m short' when we stopped tracking the generated files.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Tested-by: Brian Paul <brianp@vmware.com>
Tested-by: Lu Hua <huax.lu@intel.com>
Cc: Vinson Lee <vlee@freedesktop.org>
10 years agomesa: remove redundant running of check_symbol_table()
Juha-Pekka Heikkila [Wed, 2 Apr 2014 13:13:59 +0000 (16:13 +0300)]
mesa: remove redundant running of check_symbol_table()

Nested for loops running through tables against which they
finally do an assert were ran also with optimized builds.

Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agomesa: Add missing null check in _mesa_parse_arb_program()
Juha-Pekka Heikkila [Wed, 2 Apr 2014 13:13:58 +0000 (16:13 +0300)]
mesa: Add missing null check in _mesa_parse_arb_program()

Add missing null check in program_parse.tab.c through
program_parse.y

Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agomesa: Prevent negative indexing on noise2, noise3 and noise4
Juha-Pekka Heikkila [Wed, 2 Apr 2014 13:13:57 +0000 (16:13 +0300)]
mesa: Prevent negative indexing on noise2, noise3 and noise4

% operator could return negative value which would cause
indexing before perm table. Change %256 to &0xff

Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agoglx: add extra null check in getFBConfigs
Juha-Pekka Heikkila [Wed, 2 Apr 2014 13:13:56 +0000 (16:13 +0300)]
glx: add extra null check in getFBConfigs

Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agoglx: remove unused __glXClientInfo()
Juha-Pekka Heikkila [Wed, 2 Apr 2014 13:13:55 +0000 (16:13 +0300)]
glx: remove unused __glXClientInfo()

Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agoi965/vec4: do not trim dead channels on gen6 for math
Tapani Pälli [Wed, 2 Apr 2014 08:46:58 +0000 (11:46 +0300)]
i965/vec4: do not trim dead channels on gen6 for math

Do not set a writemask on Gen6 for math instructions, those are
executed using align1 mode that does not support a destination mask.

v2: cleanups, better comment (Matt)

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

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agowinsys/svga: Replace the query mm buffer pool with a slab pool v3
Thomas Hellstrom [Mon, 31 Mar 2014 07:01:24 +0000 (09:01 +0200)]
winsys/svga: Replace the query mm buffer pool with a slab pool v3

This is to avoid running out of query buffer space due to winsys
limitations. Instead of a fixed size per screen pool of query buffers,
use a slab allocator that allocates a new slab if we run out of space
in the first one.

v2: Correct email addresses.
v3: s/8192/VMW_QUERY_POOL_SIZE/. Improve documentation and log message.

Reported-and-tested-by: Brian Paul <brianp@vmware.com>
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Cc: "10.1" <mesa-stable@lists.freedesktop.org>
10 years agomesa/soft/llvmpipe: add fake MSAA support
Dave Airlie [Wed, 27 Nov 2013 09:47:51 +0000 (19:47 +1000)]
mesa/soft/llvmpipe: add fake MSAA support

This adds a gallium cap that allows us to fake GL3.0 by
not exposing MSAA on sw rendering.
It also forces the extra extensions needed for GL3.2.

Signed-off-by: Dave Airlie <airlied@redhat.com>
10 years agogbm: Add gbm_bo_get_fd to gbm-symbols-check script
Kristian Høgsberg [Tue, 1 Apr 2014 21:08:38 +0000 (14:08 -0700)]
gbm: Add gbm_bo_get_fd to gbm-symbols-check script

10 years agogbm: Add import from fd
Kristian Høgsberg [Fri, 28 Mar 2014 17:17:11 +0000 (10:17 -0700)]
gbm: Add import from fd

Add a new import type that lets us create a gbm bo from a
DMA-BUF file descriptor.

Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
10 years agogbm: Add gbm_bo_get_fd()
Kristian Høgsberg [Fri, 28 Mar 2014 07:33:54 +0000 (00:33 -0700)]
gbm: Add gbm_bo_get_fd()

Add gbm function to get a DMA-BUF file descriptor for a gbm bo.

Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
10 years agoinclude/GLES3: add OpenGL ES 3.1 Headers
Jordan Justen [Tue, 25 Mar 2014 07:38:20 +0000 (00:38 -0700)]
include/GLES3: add OpenGL ES 3.1 Headers

From:
http://www.khronos.org/registry/gles/api/GLES3/gl31.h
http://www.khronos.org/registry/gles/api/GLES2/gl2ext.h
http://www.khronos.org/registry/gles/api/GLES3/gl3platform.h

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agoRevert "glapi/es1: Don't mark core functions as static_dispatch=false"
Brian Paul [Tue, 1 Apr 2014 13:39:36 +0000 (07:39 -0600)]
Revert "glapi/es1: Don't mark core functions as static_dispatch=false"

This reverts commit f6e290f80cc6728647e9cee35546190f081197e2.

To fix the broken build.  The DRI-enabled build seems OK after reverting.
Th non-DRI/gallium build is still suffering from an unrelated issue in
the pipe-loader code.

10 years agomesa: Allow setting GL_TEXTURE_MAX_LEVEL to 0 with GL_TEXTURE_RECTANGLE.
Iago Toral Quiroga [Mon, 31 Mar 2014 08:04:00 +0000 (02:04 -0600)]
mesa: Allow setting GL_TEXTURE_MAX_LEVEL to 0 with GL_TEXTURE_RECTANGLE.

Currently, we raise an error when doing this which breaks a conformance
test from the OpenGL samples pack. Even if this is a bit silly it is not
an error.

From http://www.opengl.org/wiki/Rectangle_Texture:

"Rectangle textures contain exactly one image; they cannot have mipmaps.
Therefore, any texture parameters that depend on LODs are irrelevant
when used with rectangle textures; attempting to set these parameters to
any value other than 0 will result in an error."

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

Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agogallium/docs: fix silent math failures due to ~ and &
Ilia Mirkin [Mon, 31 Mar 2014 22:28:30 +0000 (18:28 -0400)]
gallium/docs: fix silent math failures due to ~ and &

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agogallium/docs: line up some of the equations
Ilia Mirkin [Mon, 31 Mar 2014 22:19:18 +0000 (18:19 -0400)]
gallium/docs: line up some of the equations

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agogallium/docs: fix incorrect/missing references
Ilia Mirkin [Mon, 31 Mar 2014 22:08:07 +0000 (18:08 -0400)]
gallium/docs: fix incorrect/missing references

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agogallium/docs: fix use of _ in math sections
Ilia Mirkin [Mon, 31 Mar 2014 21:51:31 +0000 (17:51 -0400)]
gallium/docs: fix use of _ in math sections

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agogallium/docs: add format to index
Ilia Mirkin [Mon, 31 Mar 2014 21:26:33 +0000 (17:26 -0400)]
gallium/docs: add format to index

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agogallium/docs: fix a lot of bad formatting
Ilia Mirkin [Mon, 31 Mar 2014 21:26:11 +0000 (17:26 -0400)]
gallium/docs: fix a lot of bad formatting

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Brian Paul <brianp@vmware.com>
10 years agoglsl: remove UBO fields from _mesa_glsl_parse_state
Chia-I Wu [Thu, 20 Mar 2014 07:50:36 +0000 (15:50 +0800)]
glsl: remove UBO fields from _mesa_glsl_parse_state

They are not needed since 514f8c7ec7cc1ab18be93cebb5b9bf970b1955a9.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agonv50: implement clear_buffer to accelerate ARB_clear_buffer_object
Ilia Mirkin [Tue, 25 Mar 2014 21:03:29 +0000 (17:03 -0400)]
nv50: implement clear_buffer to accelerate ARB_clear_buffer_object

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
10 years agomesa/st: Accelerate ARB_clear_buffer_object with clear_buffer
Ilia Mirkin [Tue, 25 Mar 2014 21:02:48 +0000 (17:02 -0400)]
mesa/st: Accelerate ARB_clear_buffer_object with clear_buffer

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
10 years agogallium: add interface to clear buffers
Ilia Mirkin [Tue, 25 Mar 2014 21:10:54 +0000 (17:10 -0400)]
gallium: add interface to clear buffers

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
10 years agomapi_abi: Remove ABI-check work arounds for functions that are no longer exported
Ian Romanick [Wed, 26 Mar 2014 20:11:29 +0000 (13:11 -0700)]
mapi_abi: Remove ABI-check work arounds for functions that are no longer exported

The previous commit stopped exporting 21 libGLESv2 and 88 libGLESv1_CM
functions.  This removes the work-arounds for those functions from
ABI-check.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Acked-by: Chad Versace <chad.versace@linux.intel.com>
10 years agomapi_abi: Make ES1 and ES2 static_dispatch=false functions hidden
Ian Romanick [Wed, 26 Mar 2014 19:57:47 +0000 (12:57 -0700)]
mapi_abi: Make ES1 and ES2 static_dispatch=false functions hidden

This has been a long standing issue with the ES libraries.  Functions
marked in the XML with 'static_dispatch=false' were still incorrectly
exported.  ABI-check is supposed to detect this case, but we have to
paper over failures every time a new extension is added.

This change will cause a big pile of functions to disappear from
libGLESv2 and libGLESv1_CM.

libGLESv2 loses (20 functions):

    glBindVertexArrayOES
    glCompressedTexImage3DOES
    glCompressedTexSubImage3DOES
    glCopyTexSubImage3DOES
    glDeleteVertexArraysOES
    glDiscardFramebufferEXT
    glDrawBuffersNV
    glFlushMappedBufferRangeEXT
    glFramebufferTexture3DOES
    glGenVertexArraysOES
    glGetBufferPointervOES
    glGetProgramBinaryOES
    glIsVertexArrayOES
    glMapBufferOES
    glMapBufferRangeEXT
    glProgramBinaryOES
    glReadBufferNV
    glTexImage3DOES
    glTexSubImage3DOES
    glUnmapBufferOES

libGLESv1_CM loses (88 functions):

    glAlphaFuncxOES
    glBindFramebufferOES
    glBindRenderbufferOES
    glBlendEquationOES
    glBlendEquationSeparateOES
    glBlendFuncSeparateOES
    glCheckFramebufferStatusOES
    glClearColorxOES
    glClearDepthfOES
    glClearDepthxOES
    glClipPlanefOES
    glClipPlanexOES
    glColor4xOES
    glDeleteFramebuffersOES
    glDeleteRenderbuffersOES
    glDepthRangefOES
    glDepthRangexOES
    glDiscardFramebufferEXT
    glDrawTexfOES
    glDrawTexfvOES
    glDrawTexiOES
    glDrawTexivOES
    glDrawTexsOES
    glDrawTexsvOES
    glDrawTexxOES
    glDrawTexxvOES
    glFlushMappedBufferRangeEXT
    glFogxOES
    glFogxvOES
    glFramebufferRenderbufferOES
    glFramebufferTexture2DOES
    glFrustumfOES
    glFrustumxOES
    glGenerateMipmapOES
    glGenFramebuffersOES
    glGenRenderbuffersOES
    glGetBufferPointervOES
    glGetClipPlanefOES
    glGetClipPlanexOES
    glGetFixedvOES
    glGetFramebufferAttachmentParameterivOES
    glGetLightxvOES
    glGetMaterialxvOES
    glGetRenderbufferParameterivOES
    glGetTexEnvxvOES
    glGetTexGenfvOES
    glGetTexGenivOES
    glGetTexGenxvOES
    glGetTexParameterxvOES
    glIsFramebufferOES
    glIsRenderbufferOES
    glLightModelxOES
    glLightModelxvOES
    glLightxOES
    glLightxvOES
    glLineWidthxOES
    glLoadMatrixxOES
    glMapBufferOES
    glMapBufferRangeEXT
    glMaterialxOES
    glMaterialxvOES
    glMultiTexCoord4xOES
    glMultMatrixxOES
    glNormal3xOES
    glOrthofOES
    glOrthoxOES
    glPointParameterxOES
    glPointParameterxvOES
    glPointSizePointerOES
    glPointSizexOES
    glPolygonOffsetxOES
    glQueryMatrixxOES
    glRenderbufferStorageOES
    glRotatexOES
    glSampleCoveragexOES
    glScalexOES
    glTexEnvxOES
    glTexEnvxvOES
    glTexGenfOES
    glTexGenfvOES
    glTexGeniOES
    glTexGenivOES
    glTexGenxOES
    glTexGenxvOES
    glTexParameterxOES
    glTexParameterxvOES
    glTranslatexOES
    glUnmapBufferOES

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Reviewed-by: Chia-I Wu <olv@lunarg.com>
Cc: Paul Berry <stereotype441@gmail.com>
10 years agomapi: Hack around glGetInternalformativ not being hidden in GLES
Ian Romanick [Wed, 26 Mar 2014 23:24:54 +0000 (16:24 -0700)]
mapi: Hack around glGetInternalformativ not being hidden in GLES

This is hella ugly.  The same-named function in desktop OpenGL is
hidden, but it needs to be exposed by libGLESv2 for OpenGL ES 3.0.
There's no way to express in the XML that a function should be be hidden
in one API but exposed in another.

This won't affect any change now, but it will prevent a regression in a
later patch.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
10 years agoglapi/es1: Don't mark core functions as static_dispatch=false
Ian Romanick [Wed, 26 Mar 2014 22:25:08 +0000 (15:25 -0700)]
glapi/es1: Don't mark core functions as static_dispatch=false

Functions that are part of OpenGL ES 1.0 or 1.1 should have static
dispatch functions in libGLESv1_CM.  This doesn't affect any change yet,
but it will prevent later regressions.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Acked-by: Chad Versace <chad.versace@linux.intel.com>
10 years agoglapi: Mark all GL_ARB_separate_shader_objects functions with static_dispatch=false
Ian Romanick [Wed, 26 Mar 2014 19:14:14 +0000 (12:14 -0700)]
glapi: Mark all GL_ARB_separate_shader_objects functions with static_dispatch=false

This prevents the entrypoints from being (incorrectly) advertised by
libGL.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Acked-by: Chad Versace <chad.versace@linux.intel.com>
10 years agoglapi: Remove some duplicate ignore="true" lines
Ian Romanick [Wed, 26 Mar 2014 22:31:11 +0000 (15:31 -0700)]
glapi: Remove some duplicate ignore="true" lines

It looks like these were added accidentally by Paul in commit 1a1db174.
From the commit message and the look of the patch, I think this was just
some sed-job left overs.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
10 years agoi965/vec4: Don't trim writemasks of texture instructions.
Matt Turner [Fri, 28 Mar 2014 23:45:17 +0000 (16:45 -0700)]
i965/vec4: Don't trim writemasks of texture instructions.

It was my understanding that the writemask works in SIMD4x2 mode for
texturing instructions and doesn't require a message header. Some bit of
this logic must be wrong, so disable it until it's understood.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76617
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
10 years agoautomake: ask the linker to do garbage collection
Emil Velikov [Tue, 11 Mar 2014 17:58:08 +0000 (17:58 +0000)]
automake: ask the linker to do garbage collection

By doing GC the linker removes all the symbols that are not referenced
and/or used by the final library. This results in a saving of ~100K
up-to ~600K per (stripped) binary (classic vs gallium drivers).

If interested one can ask the compiler to print the sections that are
removed using -Wl,--print-gc-sections.

v2: Check if ld supports the flag before using it.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Acked-by: Matt Turner <mattst88@gmail.com> (v1)
10 years agoautomake: add -Wl,--no-undefined to all libraries
Emil Velikov [Thu, 13 Mar 2014 05:44:33 +0000 (05:44 +0000)]
automake: add -Wl,--no-undefined to all libraries

... apart from the dri drivers.
With this final change we can build mesa without fear that
the resulting libraries will have unresolved symbols.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agogallium/targets: add missing library dependencies
Emil Velikov [Thu, 27 Mar 2014 20:32:41 +0000 (20:32 +0000)]
gallium/targets: add missing library dependencies

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agopipe-loader: reorder PIPE_LIBS
Emil Velikov [Mon, 31 Mar 2014 12:05:14 +0000 (13:05 +0100)]
pipe-loader: reorder PIPE_LIBS

Reorder -lm, -lrt, -lpthreads and -ldl to be consistent with the
rest of mesa.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agopipe-loader: use PTHREAD_LIBS over -lpthread
Emil Velikov [Thu, 27 Mar 2014 20:21:52 +0000 (20:21 +0000)]
pipe-loader: use PTHREAD_LIBS over -lpthread

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agodri/i965: use CLOCK_LIBS over -lrt
Emil Velikov [Wed, 12 Mar 2014 01:49:20 +0000 (01:49 +0000)]
dri/i965: use CLOCK_LIBS over -lrt

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agoautomake: consistently use -no-undefined
Emil Velikov [Thu, 13 Mar 2014 02:32:29 +0000 (02:32 +0000)]
automake: consistently use -no-undefined

Set the flag for all but the dri targets. They have missing
glapi symbols which are required for the normal operation with
the X server.

Jon, I fear that you'll need to carry the "no-undefined" hunk
locally when building the dri drivers under cygwin.

Cc: Jon TURNEY <jon.turney@dronecode.org.uk>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agotargets/egl-static: move the common LDFLAGS into AM_LDFLAGS
Emil Velikov [Tue, 11 Mar 2014 16:05:53 +0000 (16:05 +0000)]
targets/egl-static: move the common LDFLAGS into AM_LDFLAGS

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agotargets/omx: do not link against the trace driver
Emil Velikov [Fri, 28 Mar 2014 12:22:44 +0000 (12:22 +0000)]
targets/omx: do not link against the trace driver

Unused due to the missing GALLIUM_TRACE define.

Requested-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
10 years agogallium/targets: explicitly include a dummy.cpp and remove all the LINK mayhem
Emil Velikov [Tue, 11 Mar 2014 15:24:07 +0000 (15:24 +0000)]
gallium/targets: explicitly include a dummy.cpp and remove all the LINK mayhem

Explicitly setting the linker variable was required for old and broken
build toolchains. At this point this should no longer be needed, and
setting the sources lists will trigger generation of the correct LINK
variables.

Explicitly include dummy.cpp to use g++ to link the static library which
in most cases is based upon C++ code.

v2: Reword commit message.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
10 years agogallium/targets: move LLVM_LIBS handling inside Automake.inc
Emil Velikov [Tue, 11 Mar 2014 13:34:53 +0000 (13:34 +0000)]
gallium/targets: move LLVM_LIBS handling inside Automake.inc

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agogallium/targets: fold LLVM_LDFLAGS inside Automake.inc
Emil Velikov [Tue, 11 Mar 2014 02:21:21 +0000 (02:21 +0000)]
gallium/targets: fold LLVM_LDFLAGS inside Automake.inc

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
10 years agotargets/omx: use GALLIUM_OMX_LINKER_FLAGS
Emil Velikov [Thu, 13 Mar 2014 02:28:21 +0000 (02:28 +0000)]
targets/omx: use GALLIUM_OMX_LINKER_FLAGS

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
10 years agotargets/omx: introduce GALLIUM_OMX_LIB_DEPS
Emil Velikov [Tue, 11 Mar 2014 02:45:23 +0000 (02:45 +0000)]
targets/omx: introduce GALLIUM_OMX_LIB_DEPS

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
10 years agotargets/pipe-loader: move LLVM_LIBS handling inside PIPE_LIBS
Emil Velikov [Tue, 11 Mar 2014 14:45:30 +0000 (14:45 +0000)]
targets/pipe-loader: move LLVM_LIBS handling inside PIPE_LIBS

This lets us have only one if HAVE_MESA_LLVM block, rather than
one for each driver.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>