Moving code around, post classic

Alyssa Rosenzweig alyssa at collabora.com
Tue Dec 7 13:19:43 UTC 2021


> 1. Move src/mesa into src/gallium/frontends/mesa (I have patches for
>    this)
> 
>    Seems like a pretty obvoius thing to do, given that all of the other
>    gallium state trackers live there (OpenCL, video, d3d9, etc)

Ack from me.

> 2. Move src/compiler/glsl into src/gallium/frontends/mesa as well
> 
>     Given that there are now no? drivers that use GLSL-IR directly, it
>     might make sense to move the glsl compiler into the mesa
>     state_tracker, and just have that lower to TGSI or NIR, and treat
>     GLSL-IR as an implementation detail of the OpenGL frontend.

It would be an ack from, but...

>     Unfortunately, there are a lot of code outside of glsl that uses the
>     linked list implementation in the glsl compiler, and not the on in
>     util.

If it were just linked lists, I'd say someone should write the
Coccinelle to transform the tree to use the one in util and call it a
day. It's a bit more complicated though, NIR depends on GLSL types.
Though that could probably continue to live in its current location even
if glsl moves? Might breed confusion.

> 3. Move src/gallium* to src/
> 
>     This was suggested, though given the existance of Vulkan, it wasn't
>     clear that this was a good idea or not

If src/gallium/drivers/* is distributed to src/*/* this becomes a lot
less interesting I think?


More information about the mesa-dev mailing list