Quoting Rob Clark (2018-12-12 15:52:47)
> On Wed, Dec 12, 2018 at 6:25 PM Dylan Baker <dy...@pnwbakers.com> 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?
> 
> I guess my use cases for !=release builds are:
> 
> + I want all the expensive checking because I'm not in it to win the
>   deqp/piglit fps race
> + I want debug syms for profiling and/or valgrind, but otherwise
>   want something close to a release build but with debug syms
> 
> 
> That said, I can get behind replacing DEBUG with !NDEBUG or
> EXPENSIVE_DEBUG or whatever permutation of that color folks prefer
> 
> 
> BR,
> -R

I guess I should have covered that:

autotools had effectively two build types "debug" and "not debug", "debug" set
"-DDEBUG -g -O2", "not debug" set -DNDEBUG

Meson has 4 build types, and a separate toggle for NDEBUG:
debug: -O0 -DDEBUG (we add -DDEBUG)
debugoptimzed: -O2 -g
release: -O2
plain: (nothing)

Meson doesn't define NDEBUG by default, so if you want to turn off asserts you
need to add -Db_ndebug=true

autotools debug is roughly between meson's debugoptimized and debug, while
autotools non-debug corresponds to meson's plain buildtype.

Dylan

Attachment: signature.asc
Description: signature

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to