c - Determine optimization level in preprocessor? -
-og relatively new optimization option intended improve debugging experience while apply optimizations. if user selects -og, i'd source files activate alternate code paths enhance debugging experience. gcc offers __optimize__ preprocessor macro, set 1 when optimizations in effect.
is there way learn optimization level, -o1, -o3 or -og, use preprocessor?
i believe not possible know directly optimization level used compile software not in the list of defined preprocessor symbols
you rely on -dndebug (no debug) used disable assertions in release code , enable "debug" code path in case.
however, believe better thing having system wide set of symbols local project , let user choose use explicitly.:
myproject_dndebugmyproject_optimizemyproject_optimize_aggressively
this makes debugging or differences of behavior between release/debug easier can incrementally turn on/off different behaviors.
Comments
Post a Comment