On Wednesday, 2018-12-12 15:24:25 -0800, Dylan Baker wrote: > In the autotools discussion I've come to realize that we also need to talk > about > the -DDEBUG guard. It seems that there are two different uses, and thus two > different asks about it: > > - Nine (and RadeonSI?) use -DDEBUG to hide generic debugging > - NIR and Intel (at least) use -DDEBUG to hide really expensive checks that > are > useful, but necessarily tank performance. > > The first group would like -DDEBUG in debugoptimized builds, the second > obviously doesn't. > > Is the right solution to move the first group being !NDEBUG, or would it be > better to split DEBUG into two different defines such as DEBUG_MESSAGES and > EXPENSIVE_VALIDATION (paint the bikeshed whatever color you like), with the > first for both debug and debugoptimized and the second only in debug builds?
Replacing DEBUG with !NDEBUG is obviously trivially simpler, but I think the right thing would be to split it into !NDEBUG and EXPENSIVE_VALIDATION (the color suits me just fine :P), as both solutions satisfy the first group but only the latter solution satisfies the 2nd group. I think a first pass might be to simply s/DEBUG/EXPENSIVE_VALIDATION/ so that it expresses the intent more clearly, with a prior patch to convert Nine and other obvious !NDEBUG candidates, then, later on, some of the EXPENSIVE_VALIDATION can be promoted to !NDEBUG on a case-by-case basis. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev