diff options
author | Tim Rowley <[email protected]> | 2017-06-26 13:00:27 -0500 |
---|---|---|
committer | Tim Rowley <[email protected]> | 2017-06-30 13:26:19 -0500 |
commit | cae53b24d7a739647193711e9a16c7face7ec72a (patch) | |
tree | 2d70ab5c42624d507b10816187b116c1fc3470a0 /src/gallium/drivers/swr/Makefile.am | |
parent | b89bd3694c12f95a74af02e8095edcd631a05801 (diff) |
swr/rast: Split backend.cpp to improve compile time
Hardcode split to four files currently. Decreases swr build
time on a quad-core by ~10%.
Reviewed-by: Bruce Cherniak <bruce.cherniak at intel.com>
Diffstat (limited to 'src/gallium/drivers/swr/Makefile.am')
-rw-r--r-- | src/gallium/drivers/swr/Makefile.am | 29 |
1 files changed, 24 insertions, 5 deletions
diff --git a/src/gallium/drivers/swr/Makefile.am b/src/gallium/drivers/swr/Makefile.am index 6650abda5ae..578f15909b6 100644 --- a/src/gallium/drivers/swr/Makefile.am +++ b/src/gallium/drivers/swr/Makefile.am @@ -34,6 +34,7 @@ COMMON_CXXFLAGS = \ $(LLVM_CXXFLAGS) \ $(SWR_CXX11_CXXFLAGS) \ -I$(builddir)/rasterizer/codegen \ + -I$(builddir)/rasterizer/core \ -I$(builddir)/rasterizer/jitter \ -I$(builddir)/rasterizer/archrast \ -I$(srcdir)/rasterizer \ @@ -62,7 +63,11 @@ BUILT_SOURCES = \ rasterizer/archrast/gen_ar_event.cpp \ rasterizer/archrast/gen_ar_eventhandler.hpp \ rasterizer/archrast/gen_ar_eventhandlerfile.hpp \ - rasterizer/core/gen_BackendPixelRate0.cpp + rasterizer/core/backends/gen_BackendPixelRate0.cpp \ + rasterizer/core/backends/gen_BackendPixelRate1.cpp \ + rasterizer/core/backends/gen_BackendPixelRate2.cpp \ + rasterizer/core/backends/gen_BackendPixelRate3.cpp \ + rasterizer/core/backends/gen_BackendPixelRate.hpp MKDIR_GEN = $(AM_V_at)$(MKDIR_P) $(@D) PYTHON_GEN = $(AM_V_GEN)$(PYTHON2) $(PYTHON_FLAGS) @@ -140,20 +145,33 @@ rasterizer/archrast/gen_ar_eventhandlerfile.hpp: rasterizer/codegen/gen_archrast --output rasterizer/archrast/gen_ar_eventhandlerfile.hpp \ --gen_eventhandlerfile_h +rasterizer/core/backends/gen_BackendPixelRate0.cpp \ +rasterizer/core/backends/gen_BackendPixelRate1.cpp \ +rasterizer/core/backends/gen_BackendPixelRate2.cpp \ +rasterizer/core/backends/gen_BackendPixelRate3.cpp \ +rasterizer/core/backends/gen_BackendPixelRate.hpp: \ +backend.intermediate + # 5 SWR_MULTISAMPLE_TYPE_COUNT # 2 SWR_MSAA_SAMPLE_PATTERN_COUNT # 3 SWR_INPUT_COVERAGE_COUNT # 2 centroid # 2 forcedSampleCount # 2 canEarlyZ -rasterizer/core/gen_BackendPixelRate0.cpp: rasterizer/codegen/gen_backends.py rasterizer/codegen/templates/gen_backend.cpp + +# use intermediate rule to tell make that all files can be +# generated in one invocation of gen_backends.py (prevents +# parallel make race condition) +.INTERMEDIATE: backend.intermediate +backend.intermediate: rasterizer/codegen/gen_backends.py rasterizer/codegen/templates/gen_backend.cpp rasterizer/codegen/templates/gen_header_init.hpp $(MKDIR_GEN) $(PYTHON_GEN) \ $(srcdir)/rasterizer/codegen/gen_backends.py \ - --outdir rasterizer/core \ + --outdir rasterizer/core/backends \ --dim 5 2 3 2 2 2 \ - --split 0 \ - --cpp + --numfiles 4 \ + --cpp \ + --hpp COMMON_LIBADD = \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ @@ -227,5 +245,6 @@ EXTRA_DIST = \ rasterizer/codegen/templates/gen_ar_eventhandlerfile.hpp \ rasterizer/codegen/templates/gen_backend.cpp \ rasterizer/codegen/templates/gen_builder.hpp \ + rasterizer/codegen/templates/gen_header_init.hpp \ rasterizer/codegen/templates/gen_knobs.cpp \ rasterizer/codegen/templates/gen_llvm.hpp |