[Mesa-dev] [PATCH v2 00/12] gallium: Misc. changes from gallium-compute.
Francisco Jerez
currojerez at riseup.net
Sat Mar 24 06:39:53 PDT 2012
Jakob Bornecrantz <jakob at vmware.com> writes:
> ----- Original Message -----
>> Jakob Bornecrantz <jakob at vmware.com> writes:
>>
>> >> +libws_loader_la_LIBADD = \
>> >> + $(top_srcdir)/src/gallium/winsys/sw/null/libws_null.la
>> >> +
>> >> +if HAVE_XLIB_LOADER_GALLIUM
>> >> +libws_loader_la_LIBADD += \
>> >> + $(top_srcdir)/src/gallium/winsys/sw/xlib/libws_xlib.la
>> >> +AM_CFLAGS += -DHAVE_WS_LOADER_XLIB
>> >> +endif
>> >
>> > Ah so this explains the not sorting winsys dir, this shouldn't
>> > be done on the winsys this is for the target to keep track of.
>> > Just as it is the targets job to link libdrm.
>> >
>>
>> I had the feeling that letting a winsys link to another wouldn't be
>> much of a problem, especially if all the winsys build system is
>> going to be converted to automake and we're going to get a more
>> automated dependency tracking. But, if we don't want to relax
>> that restriction anyway, the other possibility would be to define
>> a GALLIUM_WS_LOADER_LIBS variable at configure time containing all
>> the objects a target has to pull in order to link to the winsys
>> loader. Would that be OK with you?
>
> Sounds good with me. Under the scons build we usually put that
> calculation in the targets [1][2], but I guess for automake we
> want a more centralized approach.
>
Updated patch series follows. I've used the configure variable
approach to avoid having to replicate the same logic in every target
that makes use of winsys/loader. '[PATCH 09/15] configure.ac: Don't
sort GALLIUM_WINSYS_DIRS' isn't necessary now.
Jakob Bornecrantz <jakob at vmware.com> writes:
> I'm not against this and the other change per say, I just
> wished all of the winsys's where converted at the same time.
OK, I'm also leaving out the automake conversion of winsys/null and
winsys/xlib for a future patch series.
Thanks.
Francisco Jerez (12):
gallium/util: Define util_strchrnul.
gallium/tgsi/ureg: Lift the restriction on releasing temporaries over UREG_MAX_TEMP.
gallium/tgsi/ureg: Support local temporary emission.
st/mesa: Use local temporary registers.
gallium/tgsi: Add new 'has_label' opcode info flag, and fix tgsi_text.c to use it.
gallium/tgsi: Fix tgsi_build_full_immediate() for non-float data types.
gallium/tgsi/text: Parse immediates of non-float data types.
gallium/tgsi/text: Replace open-coded integer parsing with parse_int().
gallium: Add winsys loader for device enumeration and driver multiplexing.
gallium: Add "pipe-loader" target.
gallium/tests/trivial: Switch to the winsys loader.
gallium/gbm: Switch to the winsys loader.
configs/autoconf.in | 3 +
configure.ac | 33 ++
src/gallium/auxiliary/tgsi/tgsi_build.c | 30 +-
src/gallium/auxiliary/tgsi/tgsi_info.c | 352 ++++++++++----------
src/gallium/auxiliary/tgsi/tgsi_info.h | 1 +
src/gallium/auxiliary/tgsi/tgsi_text.c | 88 +++--
src/gallium/auxiliary/tgsi/tgsi_ureg.c | 85 +++--
src/gallium/auxiliary/tgsi/tgsi_ureg.h | 3 +
src/gallium/auxiliary/util/u_string.h | 24 +-
src/gallium/state_trackers/gbm/gbm_drm.c | 5 +-
.../state_trackers/gbm/gbm_gallium_drmint.h | 3 +
src/gallium/targets/gbm/Makefile | 170 +---------
src/gallium/targets/gbm/gbm.c | 44 ++-
src/gallium/targets/gbm/pipe_i915.c | 27 --
src/gallium/targets/gbm/pipe_loader.c | 192 -----------
src/gallium/targets/gbm/pipe_loader.h | 48 ---
src/gallium/targets/gbm/pipe_nouveau.c | 21 --
src/gallium/targets/gbm/pipe_r300.c | 27 --
src/gallium/targets/gbm/pipe_r600.c | 26 --
src/gallium/targets/gbm/pipe_swrast.c | 22 --
src/gallium/targets/gbm/pipe_vmwgfx.c | 27 --
src/gallium/targets/pipe-loader/Makefile | 165 +++++++++
src/gallium/targets/pipe-loader/pipe_i915.c | 27 ++
src/gallium/targets/pipe-loader/pipe_nouveau.c | 21 ++
src/gallium/targets/pipe-loader/pipe_r300.c | 27 ++
src/gallium/targets/pipe-loader/pipe_r600.c | 26 ++
src/gallium/targets/pipe-loader/pipe_swrast.c | 22 ++
src/gallium/targets/pipe-loader/pipe_vmwgfx.c | 27 ++
src/gallium/tests/trivial/Makefile | 25 +-
src/gallium/tests/trivial/quad-tex.c | 24 +-
src/gallium/tests/trivial/tri.c | 24 +-
src/gallium/winsys/loader/Makefile.am | 34 ++
src/gallium/winsys/loader/ws_loader.c | 102 ++++++
src/gallium/winsys/loader/ws_loader.h | 144 ++++++++
src/gallium/winsys/loader/ws_loader_drm.c | 218 ++++++++++++
src/gallium/winsys/loader/ws_loader_priv.h | 47 +++
src/gallium/winsys/loader/ws_loader_sw.c | 107 ++++++
src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 8 +-
38 files changed, 1411 insertions(+), 868 deletions(-)
More information about the mesa-dev
mailing list