From 785bd172501f67eb9941987120362dcea3b32abe Mon Sep 17 00:00:00 2001 From: pytlab Date: Wed, 19 Oct 2016 21:11:16 +0800 Subject: [PATCH 1/3] Add -fkeep-inline-function compiler option. Add -fkeep-inline-function compiler option to generate a callable version of inline functions for debug inline functions with gdb. referenc: http://stackoverflow.com/questions/22029834/possible-to-call-inline -functions-in-gdb-and-or-emit-them-using-gcc --- c++/CMakeLists.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/c++/CMakeLists.txt b/c++/CMakeLists.txt index d802a86..2d08a92 100644 --- a/c++/CMakeLists.txt +++ b/c++/CMakeLists.txt @@ -52,7 +52,7 @@ if (${CMAKE_CXX_COMPILER_ID} MATCHES "Intel") message( STATUS "Using the Intel compiler" ) set( USING_INTEL TRUE ) set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,-Bsymbolic -O3 -fPIC -Wall -Wextra -Werror -pedantic -std=c++0x") - set( CMAKE_CXX_FLAGS_DEBUG "-g -pg" ) + set( CMAKE_CXX_FLAGS_DEBUG "-g -pg -fkeep-inline-functions" ) set( CMAKE_CXX_FLAGS_RELEASE "" ) set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "-g -pg" ) @@ -64,7 +64,7 @@ elseif (CMAKE_COMPILER_IS_GNUCXX) set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,-Bsymbolic -O3 -ffast-math -fPIC -Wall -Wextra -Werror -pedantic -std=c++0x") endif() - set( CMAKE_CXX_FLAGS_DEBUG "-g -pg" ) + set( CMAKE_CXX_FLAGS_DEBUG "-g -pg -fkeep-inline-functions" ) set( CMAKE_CXX_FLAGS_RELEASE "" ) set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "" ) @@ -82,7 +82,7 @@ elseif (${CMAKE_CXX_COMPILER_ID} MATCHES "Clang") message( STATUS "Using compiler ${CMAKE_CXX_COMPILER_ID}") set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -fPIC -Wall -Wextra -Werror -pedantic -stdlib=libc++ -std=c++11") - set( CMAKE_CXX_FLAGS_DEBUG "-g -pg" ) + set( CMAKE_CXX_FLAGS_DEBUG "-g -pg -fkeep-inline-functions" ) set( CMAKE_CXX_FLAGS_RELEASE "" ) set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "" ) From 6b1633ec51742925ab9a1acf4826b985bef44df5 Mon Sep 17 00:00:00 2001 From: pytlab Date: Wed, 19 Oct 2016 21:44:01 +0800 Subject: [PATCH 2/3] Remove -fkeep-inline-functions from intel & clang. --- c++/CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/c++/CMakeLists.txt b/c++/CMakeLists.txt index 2d08a92..114cc64 100644 --- a/c++/CMakeLists.txt +++ b/c++/CMakeLists.txt @@ -52,7 +52,7 @@ if (${CMAKE_CXX_COMPILER_ID} MATCHES "Intel") message( STATUS "Using the Intel compiler" ) set( USING_INTEL TRUE ) set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,-Bsymbolic -O3 -fPIC -Wall -Wextra -Werror -pedantic -std=c++0x") - set( CMAKE_CXX_FLAGS_DEBUG "-g -pg -fkeep-inline-functions" ) + set( CMAKE_CXX_FLAGS_DEBUG "-g -pg" ) set( CMAKE_CXX_FLAGS_RELEASE "" ) set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "-g -pg" ) @@ -82,7 +82,7 @@ elseif (${CMAKE_CXX_COMPILER_ID} MATCHES "Clang") message( STATUS "Using compiler ${CMAKE_CXX_COMPILER_ID}") set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -fPIC -Wall -Wextra -Werror -pedantic -stdlib=libc++ -std=c++11") - set( CMAKE_CXX_FLAGS_DEBUG "-g -pg -fkeep-inline-functions" ) + set( CMAKE_CXX_FLAGS_DEBUG "-g -pg" ) set( CMAKE_CXX_FLAGS_RELEASE "" ) set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "" ) From 882c13480b75ba282db8964fceb63aae447fc8c6 Mon Sep 17 00:00:00 2001 From: pytlab Date: Thu, 20 Oct 2016 15:23:24 +0800 Subject: [PATCH 3/3] Add -O0 compiler option. --- c++/CMakeLists.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/c++/CMakeLists.txt b/c++/CMakeLists.txt index 114cc64..8794114 100644 --- a/c++/CMakeLists.txt +++ b/c++/CMakeLists.txt @@ -52,7 +52,7 @@ if (${CMAKE_CXX_COMPILER_ID} MATCHES "Intel") message( STATUS "Using the Intel compiler" ) set( USING_INTEL TRUE ) set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,-Bsymbolic -O3 -fPIC -Wall -Wextra -Werror -pedantic -std=c++0x") - set( CMAKE_CXX_FLAGS_DEBUG "-g -pg" ) + set( CMAKE_CXX_FLAGS_DEBUG "-g -pg -O0" ) set( CMAKE_CXX_FLAGS_RELEASE "" ) set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "-g -pg" ) @@ -64,7 +64,7 @@ elseif (CMAKE_COMPILER_IS_GNUCXX) set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,-Bsymbolic -O3 -ffast-math -fPIC -Wall -Wextra -Werror -pedantic -std=c++0x") endif() - set( CMAKE_CXX_FLAGS_DEBUG "-g -pg -fkeep-inline-functions" ) + set( CMAKE_CXX_FLAGS_DEBUG "-g -pg -O0 -fkeep-inline-functions" ) set( CMAKE_CXX_FLAGS_RELEASE "" ) set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "" ) @@ -82,7 +82,7 @@ elseif (${CMAKE_CXX_COMPILER_ID} MATCHES "Clang") message( STATUS "Using compiler ${CMAKE_CXX_COMPILER_ID}") set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -fPIC -Wall -Wextra -Werror -pedantic -stdlib=libc++ -std=c++11") - set( CMAKE_CXX_FLAGS_DEBUG "-g -pg" ) + set( CMAKE_CXX_FLAGS_DEBUG "-g -pg -O0" ) set( CMAKE_CXX_FLAGS_RELEASE "" ) set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "" )