On 06/04/06, Brian Paul <[EMAIL PROTECTED]> wrote: > > I think the arbitrary-length bitset type is overkill. We really just > need a 64-bit bitfield for the foreseeable future, right? > > These macros in bitset.h are pretty "heavy" if all the bitsets are > just 64 bits or less. > [...] > > The code would be far more efficient this way. What do you think? > > I still need to review the rest of the patch in more detail. Maybe > this evening - I've got other things I need to work on. >
The specialization given above is okay, but to make it future proof, I would suggest the following. 1) Leave the generic bitset macros as they are. 2) Suffix 64-bit versions with "64", e.g. BITSET64_COPY. 3) In "t_context.h", where DECLARE_RENDER_INPUTS is declared, also define macro names for operations, not just declarations, e.g. #define RENDERINPUTS_COPY(x,y) BITSET64_COPY(x,y) ... and then use them in drivers and mesa core, in place of BITSET_* as it is now, in the patch. This way we can do transition to, say, 128-bit flags without touching drivers. Also, this reduces the overall burden, when more bit-fields will need multi-word handling. This will happen to swrast, when more than 64 varyings are needed. For now, I just need a confirmation that my changes will not break compilation of drivers. Then I can safely apply your proposals in my next cvs commit. -- Pozdrawiam, Michal Krol ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnk&kid0944&bid$1720&dat1642 _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mesa3d-dev