[Mesa-dev] [PATCH 00/15] gallium: Misc. changes from gallium-compute.

Francisco Jerez currojerez at riseup.net
Thu Mar 22 17:43:04 PDT 2012


Most of these changes affect various parts of the gallium auxiliary
libraries and they aren't directly related to compute by themselves,
but they turned out to be useful for the OpenCL state tracker in one
way or another.

Patch 12 implements the winsys/loader abstraction that will be used by
the CL library to enumerate the hardware (or software) devices that
are present in the system, load the shared library that contains the
matching pipe driver, and create winsys and pipe_screen instances for
them using a uniform API.

The main reason for converting winsys/null and winsys/xlib to automake
in patches 10 and 11 was to make the linking process of winsys/loader
a bit less painful.

Patches 2, 8, 15 aren't strictly required by anything else, they're
mainly clean-ups that are made possible by other commits of the
series.

Francisco Jerez (14):
      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().
      winsys/sw/null: Convert to automake.
      winsys/sw/xlib: Convert to automake.
      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.

Tom Stellard (1):
      configure.ac: Don't sort GALLIUM_WINSYS_DIRS

 configure.ac                                       |   22 +-
 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                   |  168 +---------
 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                 |   24 +-
 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              |  136 ++++++++
 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/gallium/winsys/sw/null/Makefile                |   16 -
 src/gallium/winsys/sw/null/Makefile.am             |   23 ++
 src/gallium/winsys/sw/xlib/Makefile                |   17 -
 src/gallium/winsys/sw/xlib/Makefile.am             |   24 ++
 src/mesa/state_tracker/st_glsl_to_tgsi.cpp         |    8 +-
 41 files changed, 1433 insertions(+), 901 deletions(-)


More information about the mesa-dev mailing list