Mesa (master): mesa: Move register_allocate.c to util.

Eric Anholt anholt at kemper.freedesktop.org
Tue Sep 23 21:52:58 UTC 2014


Module: Mesa
Branch: master
Commit: 517e01b5c3db9ba750698096e823134b288e213f
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=517e01b5c3db9ba750698096e823134b288e213f

Author: Eric Anholt <eric at anholt.net>
Date:   Mon Sep 22 12:24:21 2014 -0700

mesa: Move register_allocate.c to util.

The r300 gallium driver is using it outside of the Mesa tree, and I wanted
to do so for vc4 as well.  Rather than make the multiple-definitions
problem even more complicated, just move it to more-shared code.

v2: Don't forget to delete the symlink in r300 (review by Matt).
    Delete more r300-helper references (review by Emil)
    Don't prefix util/ header inclusion with "util/" (review by Emil)

Reviewed-by: Matt Turner <mattst88 at gmail.com> (v1)
Reviewed-by: Emil Velikov <emil.l.velikov at gmail.com> (v1)

---

 src/gallium/drivers/r300/Makefile.am                     |   14 ++------------
 src/gallium/drivers/r300/Makefile.sources                |    3 ---
 src/gallium/drivers/r300/compiler/radeon_pair_regalloc.c |    2 +-
 src/gallium/drivers/r300/register_allocate.c             |    1 -
 src/gallium/targets/egl-static/Makefile.am               |    5 -----
 src/gallium/targets/gbm/Makefile.am                      |    1 -
 src/gallium/targets/pipe-loader/Makefile.am              |    1 -
 src/mesa/Makefile.sources                                |    1 -
 src/mesa/drivers/dri/i965/brw_fs.cpp                     |    2 +-
 src/mesa/drivers/dri/i965/brw_fs.h                       |    2 +-
 src/mesa/drivers/dri/i965/brw_fs_visitor.cpp             |    2 +-
 src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp      |    2 +-
 src/util/Makefile.am                                     |    3 +++
 src/util/Makefile.sources                                |    2 ++
 src/{mesa/program => util}/register_allocate.c           |    2 +-
 src/{mesa/program => util}/register_allocate.h           |    0
 16 files changed, 13 insertions(+), 30 deletions(-)

diff --git a/src/gallium/drivers/r300/Makefile.am b/src/gallium/drivers/r300/Makefile.am
index 7692bd8..ead7a87 100644
--- a/src/gallium/drivers/r300/Makefile.am
+++ b/src/gallium/drivers/r300/Makefile.am
@@ -13,11 +13,11 @@ AM_CFLAGS = \
 	$(LLVM_CFLAGS) \
 	$(RADEON_CFLAGS)
 
-noinst_LTLIBRARIES = libr300.la libr300-helper.la
+noinst_LTLIBRARIES = libr300.la
 check_PROGRAMS = r300_compiler_tests
 TESTS = r300_compiler_tests
 
-r300_compiler_tests_LDADD = libr300.la libr300-helper.la \
+r300_compiler_tests_LDADD = libr300.la \
 	$(top_builddir)/src/gallium/auxiliary/libgallium.la \
 	$(top_builddir)/src/util/libmesautil.la \
 	$(GALLIUM_COMMON_LIB_DEPS)
@@ -28,16 +28,6 @@ r300_compiler_tests_SOURCES = $(COMPILER_TESTS_SOURCES)
 
 libr300_la_SOURCES = $(C_SOURCES)
 
-# These two files are included in libmesagallium, which is included in the dri
-# targets. So, they were added directly to r300g the dri-r300 target would have
-# duplicated symbols, and if they weren't the other *-r300 targets would fail
-# with undefined symbols.
-#
-# Solve this by building them into a separate helper library that can be linked
-# in place of libmesagallium.
-libr300_helper_la_CPPFLAGS = -I$(top_srcdir)/src
-libr300_helper_la_SOURCES = $(HELPER_SOURCES)
-
 EXTRA_DIST = Android.mk \
 	compiler/tests/omod_two_writers.test \
 	compiler/tests/regalloc_tex_1d_swizzle.test
diff --git a/src/gallium/drivers/r300/Makefile.sources b/src/gallium/drivers/r300/Makefile.sources
index ab1c9de..1ba6db0 100644
--- a/src/gallium/drivers/r300/Makefile.sources
+++ b/src/gallium/drivers/r300/Makefile.sources
@@ -108,6 +108,3 @@ COMPILER_TESTS_SOURCES := \
 	compiler/tests/rc_test_helpers.h \
 	compiler/tests/unit_test.c \
 	compiler/tests/unit_test.h
-
-HELPER_SOURCES := \
-	register_allocate.c
diff --git a/src/gallium/drivers/r300/compiler/radeon_pair_regalloc.c b/src/gallium/drivers/r300/compiler/radeon_pair_regalloc.c
index b854a2f..64b225d 100644
--- a/src/gallium/drivers/r300/compiler/radeon_pair_regalloc.c
+++ b/src/gallium/drivers/r300/compiler/radeon_pair_regalloc.c
@@ -31,7 +31,7 @@
 #include <stdio.h>
 
 #include "main/glheader.h"
-#include "program/register_allocate.h"
+#include "util/register_allocate.h"
 #include "util/u_memory.h"
 #include "util/ralloc.h"
 
diff --git a/src/gallium/drivers/r300/register_allocate.c b/src/gallium/drivers/r300/register_allocate.c
deleted file mode 120000
index 2117950..0000000
--- a/src/gallium/drivers/r300/register_allocate.c
+++ /dev/null
@@ -1 +0,0 @@
-../../../mesa/program/register_allocate.c
\ No newline at end of file
diff --git a/src/gallium/targets/egl-static/Makefile.am b/src/gallium/targets/egl-static/Makefile.am
index 84f3338..a428be5 100644
--- a/src/gallium/targets/egl-static/Makefile.am
+++ b/src/gallium/targets/egl-static/Makefile.am
@@ -196,11 +196,6 @@ egl_gallium_la_CPPFLAGS += -DGALLIUM_R300
 egl_gallium_la_LIBADD += \
 	$(top_builddir)/src/gallium/drivers/r300/libr300.la \
 	$(RADEON_LIBS)
-
-if !HAVE_OPENGL
-egl_gallium_la_LIBADD += \
-	$(top_builddir)/src/gallium/drivers/r300/libr300-helper.la
-endif
 endif
 
 if HAVE_GALLIUM_R600
diff --git a/src/gallium/targets/gbm/Makefile.am b/src/gallium/targets/gbm/Makefile.am
index a5f7070..31a8b47 100644
--- a/src/gallium/targets/gbm/Makefile.am
+++ b/src/gallium/targets/gbm/Makefile.am
@@ -94,7 +94,6 @@ if HAVE_GALLIUM_R300
 STATIC_TARGET_CPPFLAGS += -DGALLIUM_R300
 STATIC_TARGET_LIB_DEPS += \
 	$(top_builddir)/src/gallium/drivers/r300/libr300.la \
-	$(top_builddir)/src/gallium/drivers/r300/libr300-helper.la \
 	$(RADEON_LIBS)
 endif
 
diff --git a/src/gallium/targets/pipe-loader/Makefile.am b/src/gallium/targets/pipe-loader/Makefile.am
index ee93078..5f1330a 100644
--- a/src/gallium/targets/pipe-loader/Makefile.am
+++ b/src/gallium/targets/pipe-loader/Makefile.am
@@ -97,7 +97,6 @@ nodist_EXTRA_pipe_r300_la_SOURCES = dummy.cpp
 pipe_r300_la_LIBADD = \
 	$(PIPE_LIBS) \
 	$(top_builddir)/src/gallium/winsys/radeon/drm/libradeonwinsys.la \
-	$(top_builddir)/src/gallium/drivers/r300/libr300-helper.la \
 	$(top_builddir)/src/gallium/drivers/r300/libr300.la \
 	$(LIBDRM_LIBS) \
 	$(RADEON_LIBS)
diff --git a/src/mesa/Makefile.sources b/src/mesa/Makefile.sources
index 12336c0..4755018 100644
--- a/src/mesa/Makefile.sources
+++ b/src/mesa/Makefile.sources
@@ -280,7 +280,6 @@ PROGRAM_FILES = \
 	$(SRCDIR)program/prog_print.c \
 	$(SRCDIR)program/prog_statevars.c \
 	$(SRCDIR)program/programopt.c \
-	$(SRCDIR)program/register_allocate.c \
 	$(SRCDIR)program/sampler.cpp \
 	$(SRCDIR)program/string_to_uint_map.cpp \
 	$(SRCDIR)program/symbol_table.c \
diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp
index 66705a1..12652d5 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs.cpp
@@ -38,7 +38,7 @@ extern "C" {
 #include "main/fbobject.h"
 #include "program/prog_parameter.h"
 #include "program/prog_print.h"
-#include "program/register_allocate.h"
+#include "util/register_allocate.h"
 #include "program/sampler.h"
 #include "program/hash_table.h"
 #include "brw_context.h"
diff --git a/src/mesa/drivers/dri/i965/brw_fs.h b/src/mesa/drivers/dri/i965/brw_fs.h
index d76ea2d..b4d766e 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.h
+++ b/src/mesa/drivers/dri/i965/brw_fs.h
@@ -39,7 +39,7 @@ extern "C" {
 #include "program/prog_parameter.h"
 #include "program/prog_print.h"
 #include "program/prog_optimize.h"
-#include "program/register_allocate.h"
+#include "util/register_allocate.h"
 #include "program/sampler.h"
 #include "program/hash_table.h"
 #include "brw_context.h"
diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
index 6dcf67b..d32aa1f 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
@@ -36,7 +36,7 @@ extern "C" {
 #include "program/prog_parameter.h"
 #include "program/prog_print.h"
 #include "program/prog_optimize.h"
-#include "program/register_allocate.h"
+#include "util/register_allocate.h"
 #include "program/sampler.h"
 #include "program/hash_table.h"
 #include "brw_context.h"
diff --git a/src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp b/src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp
index ddab342..29feec0 100644
--- a/src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp
+++ b/src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp
@@ -23,7 +23,7 @@
 
 extern "C" {
 #include "main/macros.h"
-#include "program/register_allocate.h"
+#include "util/register_allocate.h"
 } /* extern "C" */
 
 #include "brw_vec4.h"
diff --git a/src/util/Makefile.am b/src/util/Makefile.am
index 4733a1a..8d5f90e 100644
--- a/src/util/Makefile.am
+++ b/src/util/Makefile.am
@@ -28,6 +28,9 @@ noinst_LTLIBRARIES = libmesautil.la
 libmesautil_la_CPPFLAGS = \
 	$(DEFINES) \
 	-I$(top_srcdir)/include \
+	-I$(top_srcdir)/src \
+	-I$(top_srcdir)/src/mapi \
+	-I$(top_srcdir)/src/mesa \
 	$(VISIBILITY_CFLAGS)
 
 libmesautil_la_SOURCES = \
diff --git a/src/util/Makefile.sources b/src/util/Makefile.sources
index c34475a..952b799 100644
--- a/src/util/Makefile.sources
+++ b/src/util/Makefile.sources
@@ -1,6 +1,8 @@
 MESA_UTIL_FILES :=	\
 	hash_table.c	\
 	ralloc.c \
+	register_allocate.c \
+	register_allocate.h \
 	rgtc.c
 
 MESA_UTIL_GENERATED_FILES = \
diff --git a/src/mesa/program/register_allocate.c b/src/util/register_allocate.c
similarity index 99%
rename from src/mesa/program/register_allocate.c
rename to src/util/register_allocate.c
index 7faf672..afab9dd 100644
--- a/src/mesa/program/register_allocate.c
+++ b/src/util/register_allocate.c
@@ -72,7 +72,7 @@
 
 #include <stdbool.h>
 
-#include "util/ralloc.h"
+#include "ralloc.h"
 #include "main/imports.h"
 #include "main/macros.h"
 #include "main/mtypes.h"
diff --git a/src/mesa/program/register_allocate.h b/src/util/register_allocate.h
similarity index 100%
rename from src/mesa/program/register_allocate.h
rename to src/util/register_allocate.h




More information about the mesa-commit mailing list