On 12/29/2012 11:58 AM, Ben Widawsky wrote:
On Fri, 28 Dec 2012 21:21:51 -0800
Kenneth Graunke <[email protected]> wrote:
Every generation except Gen7 creates SURFACE_STATE entries via a
uint32_t array. Only Gen7 uses the older bitfield structure, which we
moved away from because it was less efficient. Convert it for
consistency.
This reduces the compiled size of gen7_wm_surface_state.o by 2.86% in
a release build.
Just pointing out that this sucks wrt to intel-gen4asm not being able
to directly copy the headers anymore.
Hopefully someone can update it at some point, or else we'll have a
mess on our hands in the not too distant future.
Huh? intel-gen4asm is for shaders...these are indirect state objects.
I haven't looked at the intel-gen4asm code in ages, but it could copy
over brw_defines.h, which is the core of the new approach. It's what
defines the <FIELD>_SHIFT and <FIELD>_MASK macros, which can be used
with the GET_FIELD/SET_FIELD macros. Or directly. INTEL_MASK is also
useful.
Also, it's already a giant mess: Mesa has a bunch of code,
intel-gpu-tools contains some of it, the standalone intel-gen4asm/disasm
utilities have some other bits, and the DDX has a giant pile of shader
code. I'm afraid it's only going to get worse with Gen8, if people
really are writing their own representation for shader instructions
rather than using the one I wrote for Mesa...
--Ken
_______________________________________________
mesa-dev mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-dev