[cmake-developers] New RelWithDebInfo flags?

2014-11-22 Thread Ben Boeckel
Hi,

I just discovered today that it looks like GCC 4.8 shipped with a new
optimization level:

   -Og Optimize debugging experience.  -Og enables optimizations that do
   not interfere with debugging. It should be the optimization level
   of choice for the standard edit-compile-debug cycle, offering a
   reasonable level of optimization while maintaining fast
   compilation and a good debugging experience.

Would using this (if available) rather than -O2 in RelWithDebInfo
configurations be something developers would want?

Mailing list thread about the patch:

https://gcc.gnu.org/ml/gcc-patches/2012-09/msg00097.html

Thanks,

--Ben
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


Re: [cmake-developers] New RelWithDebInfo flags?

2014-11-22 Thread clinton
- Original Message -
 Hi,
 
 I just discovered today that it looks like GCC 4.8 shipped with a new
 optimization level:
 
-Og Optimize debugging experience.  -Og enables optimizations that do
not interfere with debugging. It should be the optimization level
of choice for the standard edit-compile-debug cycle, offering a
reasonable level of optimization while maintaining fast
compilation and a good debugging experience.
 
 Would using this (if available) rather than -O2 in RelWithDebInfo
 configurations be something developers would want?
 
 Mailing list thread about the patch:
 
 https://gcc.gnu.org/ml/gcc-patches/2012-09/msg00097.html


Perhaps not if people are using that configuration to build release binaries 
and stripping debug symbols from it.

In my opinion, it *does* interfere with debugging, because of optimization done 
on stack variables.
You may or may not be able to see their value at certain times.  Its annoying 
enough that I go back to not having -Og for development, and have a separate 
build directory if I want optimization.

The program flow while debugging is uninterrupted though, which is nice.

Clint
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


Re: [cmake-developers] New RelWithDebInfo flags?

2014-11-22 Thread Ben Boeckel
On Sat, Nov 22, 2014 at 10:12:22 -0700, clin...@elemtech.com wrote:
 Perhaps not if people are using that configuration to build release
 binaries and stripping debug symbols from it.

Ah, true. Maybe it would be better for Debug than RelWithDebInfo?

 In my opinion, it *does* interfere with debugging, because of
 optimization done on stack variables. You may or may not be able to
 see their value at certain times.  Its annoying enough that I go back
 to not having -Og for development, and have a separate build directory
 if I want optimization.

Hrm. That's unfortunate. That's usually where my issues come in (though
you can sometimes get their values by walking up or down the stack
looking for unoptimized values which become those stack variables.

 The program flow while debugging is uninterrupted though, which is
 nice.

Yeah, 'n' being unpredictable is annoying. Too easy to accidentally skip
the important bits :( .

--Ben
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers