labath created this revision.
Herald added subscribers: JDevlieghere, krytarowski, aprantl, emaste.

This flag is on by default for darwin and freebsd, but off for linux.
Without it, clang will sometimes not emit debug info for types like
std::string. Whether it does this, and which tests will fail because of
that depends on the linux distro and c++ library version.

A bunch of tests were already setting these flags manually, but here
instead I take a whole sale approach and enable this flag for all tests.
Any test which does not want to have this flag (right now we have one
such test) can turn it off explicitly via
CFLAGS_EXTRAS+=$(LIMIT_DEBUG_INFO_FLAGS)

Can you check whether this makes any difference for test results on
red-hat?


https://reviews.llvm.org/D40717

Files:
  packages/Python/lldbsuite/test/expression_command/anonymous-struct/Makefile
  packages/Python/lldbsuite/test/expression_command/call-function/Makefile
  packages/Python/lldbsuite/test/expression_command/fixits/Makefile
  
packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-skip-summary/Makefile
  
packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/iterator/Makefile
  
packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/list/Makefile
  
packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/map/Makefile
  
packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/smart_ptr/Makefile
  
packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/string/Makefile
  
packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/tuple/Makefile
  
packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/unique_ptr/Makefile
  
packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/vector/Makefile
  
packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-synth/Makefile
  
packages/Python/lldbsuite/test/functionalities/data-formatter/dump_dynamic/Makefile
  
packages/Python/lldbsuite/test/functionalities/data-formatter/stringprinter/Makefile
  
packages/Python/lldbsuite/test/functionalities/data-formatter/summary-string-onfail/Makefile
  
packages/Python/lldbsuite/test/functionalities/data-formatter/var-in-aggregate-misuse/Makefile
  packages/Python/lldbsuite/test/functionalities/type_completion/Makefile
  packages/Python/lldbsuite/test/lang/cpp/auto/Makefile
  packages/Python/lldbsuite/test/lang/cpp/stl/Makefile
  packages/Python/lldbsuite/test/lang/cpp/template/Makefile
  packages/Python/lldbsuite/test/make/Makefile.rules
  packages/Python/lldbsuite/test/python_api/sbvalue_persist/Makefile

Index: packages/Python/lldbsuite/test/python_api/sbvalue_persist/Makefile
===================================================================
--- packages/Python/lldbsuite/test/python_api/sbvalue_persist/Makefile
+++ packages/Python/lldbsuite/test/python_api/sbvalue_persist/Makefile
@@ -5,11 +5,4 @@
 # Clean renamed executable on 'make clean'
 clean: OBJECTS+=no_synth
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD 
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/make/Makefile.rules
===================================================================
--- packages/Python/lldbsuite/test/make/Makefile.rules
+++ packages/Python/lldbsuite/test/make/Makefile.rules
@@ -223,7 +223,8 @@
 	CFLAGS += $(ARCHFLAG)$(ARCH) $(FRAMEWORK_INCLUDES) -I$(LLDB_BASE_DIR)include
 endif
 
-CFLAGS += -include $(THIS_FILE_DIR)test_common.h -I$(THIS_FILE_DIR) $(ARCH_CFLAGS) $(CFLAGS_EXTRAS)
+CFLAGS += -include $(THIS_FILE_DIR)test_common.h -I$(THIS_FILE_DIR)
+CFLAGS += $(NO_LIMIT_DEBUG_INFO_FLAGS) $(ARCH_CFLAGS) $(CFLAGS_EXTRAS)
 
 # Use this one if you want to build one part of the result without debug information:
 ifeq "$(OS)" "Darwin"
Index: packages/Python/lldbsuite/test/lang/cpp/template/Makefile
===================================================================
--- packages/Python/lldbsuite/test/lang/cpp/template/Makefile
+++ packages/Python/lldbsuite/test/lang/cpp/template/Makefile
@@ -2,6 +2,4 @@
 
 CXX_SOURCES := main.cpp
 
-CFLAGS_EXTRAS += $(NO_LIMIT_DEBUG_INFO_FLAGS)
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/lang/cpp/stl/Makefile
===================================================================
--- packages/Python/lldbsuite/test/lang/cpp/stl/Makefile
+++ packages/Python/lldbsuite/test/lang/cpp/stl/Makefile
@@ -5,11 +5,4 @@
 
 clean: OBJECTS+=$(wildcard main.d.*)
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD 
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/lang/cpp/auto/Makefile
===================================================================
--- packages/Python/lldbsuite/test/lang/cpp/auto/Makefile
+++ packages/Python/lldbsuite/test/lang/cpp/auto/Makefile
@@ -2,6 +2,4 @@
 
 CXX_SOURCES := main.cpp
 
-CFLAGS_EXTRAS += $(NO_LIMIT_DEBUG_INFO_FLAGS)
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/type_completion/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/type_completion/Makefile
+++ packages/Python/lldbsuite/test/functionalities/type_completion/Makefile
@@ -2,11 +2,4 @@
 
 CXX_SOURCES := main.cpp
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD 
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/data-formatter/var-in-aggregate-misuse/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/data-formatter/var-in-aggregate-misuse/Makefile
+++ packages/Python/lldbsuite/test/functionalities/data-formatter/var-in-aggregate-misuse/Makefile
@@ -2,10 +2,4 @@
 
 CXX_SOURCES := main.cpp
 
-# Workaround for llvm.org/pr16214: clang doesn't emit structure definition DWARF
-# information without the flag below.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/data-formatter/summary-string-onfail/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/data-formatter/summary-string-onfail/Makefile
+++ packages/Python/lldbsuite/test/functionalities/data-formatter/summary-string-onfail/Makefile
@@ -2,11 +2,4 @@
 
 CXX_SOURCES := main.cpp
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD 
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/data-formatter/stringprinter/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/data-formatter/stringprinter/Makefile
+++ packages/Python/lldbsuite/test/functionalities/data-formatter/stringprinter/Makefile
@@ -2,11 +2,4 @@
 CXX_SOURCES := main.cpp
 CXXFLAGS += -std=c++11
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD 
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/data-formatter/dump_dynamic/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/data-formatter/dump_dynamic/Makefile
+++ packages/Python/lldbsuite/test/functionalities/data-formatter/dump_dynamic/Makefile
@@ -2,11 +2,4 @@
 CXX_SOURCES := main.cpp
 CXXFLAGS += -std=c++11
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD 
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-synth/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-synth/Makefile
+++ packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-synth/Makefile
@@ -2,11 +2,4 @@
 
 CXX_SOURCES := main.cpp
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD 
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/vector/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/vector/Makefile
+++ packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/vector/Makefile
@@ -5,11 +5,4 @@
 CXXFLAGS := -O0
 USE_LIBSTDCPP := 1
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/unique_ptr/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/unique_ptr/Makefile
+++ packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/unique_ptr/Makefile
@@ -3,6 +3,5 @@
 CXX_SOURCES := main.cpp
 
 USE_LIBSTDCPP := 1
-CFLAGS_EXTRAS += $(NO_LIMIT_DEBUG_INFO_FLAGS)
 
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/tuple/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/tuple/Makefile
+++ packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/tuple/Makefile
@@ -3,6 +3,5 @@
 CXX_SOURCES := main.cpp
 
 USE_LIBSTDCPP := 1
-CFLAGS_EXTRAS += $(NO_LIMIT_DEBUG_INFO_FLAGS)
 
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/string/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/string/Makefile
+++ packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/string/Makefile
@@ -5,11 +5,4 @@
 CFLAGS_EXTRAS += -O0
 USE_LIBSTDCPP := 1
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD 
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/smart_ptr/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/smart_ptr/Makefile
+++ packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/smart_ptr/Makefile
@@ -5,11 +5,4 @@
 CXXFLAGS := -O0
 USE_LIBSTDCPP := 1
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/map/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/map/Makefile
+++ packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/map/Makefile
@@ -4,11 +4,4 @@
 
 USE_LIBSTDCPP := 1
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/list/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/list/Makefile
+++ packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/list/Makefile
@@ -5,11 +5,4 @@
 CFLAGS_EXTRAS += -O0
 USE_LIBSTDCPP := 1
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD 
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/iterator/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/iterator/Makefile
+++ packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/iterator/Makefile
@@ -5,11 +5,4 @@
 CFLAGS_EXTRAS += -O0
 USE_LIBSTDCPP := 1
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD 
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-skip-summary/Makefile
===================================================================
--- packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-skip-summary/Makefile
+++ packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-skip-summary/Makefile
@@ -3,13 +3,6 @@
 CXX_SOURCES := main.cpp
 USE_LIBSTDCPP := 0
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD 
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
 
 CXXFLAGS += -O0
Index: packages/Python/lldbsuite/test/expression_command/fixits/Makefile
===================================================================
--- packages/Python/lldbsuite/test/expression_command/fixits/Makefile
+++ packages/Python/lldbsuite/test/expression_command/fixits/Makefile
@@ -2,11 +2,4 @@
 
 CXX_SOURCES := main.cpp
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
Index: packages/Python/lldbsuite/test/expression_command/call-function/Makefile
===================================================================
--- packages/Python/lldbsuite/test/expression_command/call-function/Makefile
+++ packages/Python/lldbsuite/test/expression_command/call-function/Makefile
@@ -2,13 +2,6 @@
 
 CXX_SOURCES := main.cpp
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
 
 clean::
Index: packages/Python/lldbsuite/test/expression_command/anonymous-struct/Makefile
===================================================================
--- packages/Python/lldbsuite/test/expression_command/anonymous-struct/Makefile
+++ packages/Python/lldbsuite/test/expression_command/anonymous-struct/Makefile
@@ -2,11 +2,4 @@
 
 CXX_SOURCES := main.cpp
 
-# clang-3.5+ outputs FullDebugInfo by default for Darwin/FreeBSD
-# targets.  Other targets do not, which causes this test to fail.
-# This flag enables FullDebugInfo for all targets.
-ifneq (,$(findstring clang,$(CC)))
-  CFLAGS_EXTRAS += -fno-limit-debug-info
-endif
-
 include $(LEVEL)/Makefile.rules
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to