[Mesa-dev] [PATCH 5/6] nir: remove dependency on glsl
Rob Clark
robdclark at gmail.com
Thu Oct 15 14:57:17 PDT 2015
On Tue, Oct 13, 2015 at 12:15 PM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
> On 13 October 2015 at 16:37, Rob Clark <robdclark at gmail.com> wrote:
>> On Tue, Oct 13, 2015 at 11:22 AM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
>>> Hi Rob,
>>>
>>> On 10 October 2015 at 19:47, Rob Clark <robdclark at gmail.com> wrote:
>>>> From: Rob Clark <robclark at freedesktop.org>
>>>>
>>>> Move glsl_types into NIR, now that the dependency on glsl_symbol_table
>>>> has been split out.
>>>>
>>>> Possibly makes sense to rename things at this point, but if we do that
>>>> I'd like to keep it split out into a separate patch to make git history
>>>> easier to follow (IMHO).
>>>>
>>>> Signed-off-by: Rob Clark <robclark at freedesktop.org>
>>>> ---
>>>> src/glsl/Makefile.am | 3 -
>>>> src/glsl/Makefile.sources | 4 +-
>>>> src/glsl/builtin_type_macros.h | 172 --
>>>> src/glsl/glsl_types.cpp | 1729 --------------------
>>>> src/glsl/glsl_types.h | 867 ----------
>>>> src/glsl/nir/builtin_type_macros.h | 172 ++
>>>> src/glsl/nir/glsl_types.cpp | 1729 ++++++++++++++++++++
>>>> src/glsl/nir/glsl_types.h | 867 ++++++++++
>>>> src/glsl/nir/nir_types.h | 2 +-
>>>> .../drivers/dri/i965/brw_cubemap_normalize.cpp | 2 +-
>>>> src/mesa/drivers/dri/i965/brw_fs.cpp | 2 +-
>>>> src/mesa/drivers/dri/i965/brw_fs.h | 2 +-
>>>> .../dri/i965/brw_fs_channel_expressions.cpp | 2 +-
>>>> src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp | 2 +-
>>>> .../drivers/dri/i965/brw_fs_vector_splitting.cpp | 2 +-
>>>> src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 2 +-
>>>> .../dri/i965/brw_lower_unnormalized_offset.cpp | 2 +-
>>>> .../drivers/dri/i965/brw_schedule_instructions.cpp | 2 +-
>>>> src/mesa/main/ff_fragment_shader.cpp | 2 +-
>>>> src/mesa/main/uniforms.h | 2 +-
>>>> src/mesa/program/ir_to_mesa.cpp | 2 +-
>>>> src/mesa/program/sampler.cpp | 2 +-
>>>> 22 files changed, 2784 insertions(+), 2787 deletions(-)
>>>> delete mode 100644 src/glsl/builtin_type_macros.h
>>>> delete mode 100644 src/glsl/glsl_types.cpp
>>>> delete mode 100644 src/glsl/glsl_types.h
>>>> create mode 100644 src/glsl/nir/builtin_type_macros.h
>>>> create mode 100644 src/glsl/nir/glsl_types.cpp
>>>> create mode 100644 src/glsl/nir/glsl_types.h
>>>>
>>>> diff --git a/src/glsl/Makefile.am b/src/glsl/Makefile.am
>>>> index 347919b..437c6a5 100644
>>>> --- a/src/glsl/Makefile.am
>>>> +++ b/src/glsl/Makefile.am
>>>> @@ -148,9 +148,6 @@ libglsl_la_SOURCES = \
>>>>
>>>>
>>>> libnir_la_SOURCES = \
>>>> - glsl_types.cpp \
>>>> - builtin_types.cpp \
>>>> - glsl_symbol_table.cpp \
>>>> $(NIR_FILES) \
>>>> $(NIR_GENERATED_FILES)
>>>>
>>>> diff --git a/src/glsl/Makefile.sources b/src/glsl/Makefile.sources
>>>> index 436949c..6e61f23 100644
>>>> --- a/src/glsl/Makefile.sources
>>>> +++ b/src/glsl/Makefile.sources
>>>> @@ -20,6 +20,8 @@ NIR_GENERATED_FILES = \
>>>> NIR_FILES = \
>>>> nir/glsl_to_nir.cpp \
>>>> nir/glsl_to_nir.h \
>>>> + nir/glsl_types.cpp \
>>>> + nir/glsl_types.h \
>>>> nir/nir.c \
>>>> nir/nir.h \
>>>> nir/nir_array.h \
>>>> @@ -103,8 +105,6 @@ LIBGLSL_FILES = \
>>>> glsl_parser_extras.h \
>>>> glsl_symbol_table.cpp \
>>>> glsl_symbol_table.h \
>>>> - glsl_types.cpp \
>>>> - glsl_types.h \
>>>> hir_field_selection.cpp \
>>>> ir_basic_block.cpp \
>>>> ir_basic_block.h \
>>> Can we split this into two (or more) patches.
>>> - move the files from glsl to glsl/nir, updating scons/android. note
>>> scons is missing everything NIR related.
>>> - fold/nuke the additional glsl requirements, from NIR.
>>
>> It is already split up this way.. this patch is primarily the move
>> (plus header path tweaks, etc, to keep things compiling). I don't see
>> how it could be split up any finer while keeping bisectability (ie.
>> not breaking compile in the middle).
>>
>> That said, I did completely ignore scons/android. I don't know the
>> first thing about scons or how to do a scons build, so I think I'll
>> ignore that and let someone else fix it up. I suppose I could fix
>> android build, although I can't build android on my laptop (and I
>> guess I'd have to rebase some of the other android related stuff that
>> isn't upstream yet), so maybe I'll just fix that in a follow-on patch
>> this weekend.
>>
> Essentially you'd want (I've expanded greatly, but feel free do you
> your own split)
> - Add libnir for scons.
sounds a bit out of scope, and, well, I think I'll pass on touching scons..
> - Android split out libnir static lib.
> - Move the file - GLSL_FILES -> NIR_FILES, glsl{,/nir}, sed
> "s|glsl/foo.h/|glsl/nir/foo.h|"
this patch is essentially that w/ addition of hunk below
> - Remove all the unused code from libnir (i.e. the following patch)
just fwiw, if I split it up, then the second patch would amount to just:
--------------
diff --git a/src/glsl/Makefile.am b/src/glsl/Makefile.am
index 347919b..437c6a5 100644
--- a/src/glsl/Makefile.am
+++ b/src/glsl/Makefile.am
@@ -148,9 +148,6 @@ libglsl_la_SOURCES =
\
libnir_la_SOURCES = \
- builtin_types.cpp \
- glsl_symbol_table.cpp \
$(NIR_FILES) \
$(NIR_GENERATED_FILES)
--------------
Sorry, I admit that was a bit hard to see without having used -M for
format-patch..
I do have one other small fix for srcdir != objdir build, and I'll try
to fix up the Android build files, which should just be minor tweaks,
and squash that in over the weekend.. after that I think I have beat
this horse about as dead as it can get..
BR,
-R
> libnir_la_SOURCES = \
> - builtin_types.cpp \
> - glsl_symbol_table.cpp \
> $(NIR_FILES) \
> $(NIR_GENERATED_FILES)
>
>
> Thanks
> Emil
More information about the mesa-dev
mailing list