]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Revert
authorJakub Jelinek <jakub@redhat.com>
Thu, 5 Jul 2018 09:47:05 +0000 (11:47 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 5 Jul 2018 09:47:05 +0000 (11:47 +0200)
2018-07-04  Maxim Ostapenko  <m.ostapenko@samsung.com>

PR sanitizer/84250
* config/gnu-user.h (LIBASAN_EARLY_SPEC): Pass -lstdc++ for static
libasan.
* gcc.c: Do not pass LIBUBSAN_SPEC if ASan is enabled with UBSan.

* Makefile.am: Reorder libs.
* Makefile.in: Regenerate.
* asan/Makefile.am: Define DCAN_SANITIZE_UB=1, add dependancy from
libsanitizer_ubsan.la.
* asan/Makefile.in: Regenerate.
* ubsan/Makefile.am: Define new libsanitizer_ubsan.la library.
* ubsan/Makefile.in: Regenerate.

From-SVN: r262433

gcc/ChangeLog
gcc/config/gnu-user.h
gcc/gcc.c
libsanitizer/ChangeLog
libsanitizer/Makefile.am
libsanitizer/Makefile.in
libsanitizer/asan/Makefile.am
libsanitizer/asan/Makefile.in
libsanitizer/ubsan/Makefile.am
libsanitizer/ubsan/Makefile.in

index 2a609fe6110fac5f8b67fcd17267d7c9f8487dd6..1ecd22670ecbdb80620883e4c30968499404ee83 100644 (file)
@@ -1,3 +1,13 @@
+2018-07-05  Jakub Jelinek  <jakub@redhat.com>
+
+       Revert
+       2018-07-04  Maxim Ostapenko  <m.ostapenko@samsung.com>
+
+       PR sanitizer/84250
+       * config/gnu-user.h (LIBASAN_EARLY_SPEC): Pass -lstdc++ for static
+       libasan.
+       * gcc.c: Do not pass LIBUBSAN_SPEC if ASan is enabled with UBSan.
+
 2018-07-04  Maxim Ostapenko  <m.ostapenko@samsung.com>
 
        PR sanitizer/84250
index ccae9575499ed0a747c301c5895ddd18ed3609ad..cba3c0b92e3206e3cd3ed62b0ac46c4899d67cd6 100644 (file)
@@ -161,7 +161,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 #define LIBASAN_EARLY_SPEC "%{!shared:libasan_preinit%O%s} " \
   "%{static-libasan:%{!shared:" \
   LD_STATIC_OPTION " --whole-archive -lasan --no-whole-archive " \
-  LD_DYNAMIC_OPTION " -lstdc++ }}%{!static-libasan:-lasan}"
+  LD_DYNAMIC_OPTION "}}%{!static-libasan:-lasan}"
 #undef LIBTSAN_EARLY_SPEC
 #define LIBTSAN_EARLY_SPEC "%{!shared:libtsan_preinit%O%s} " \
   "%{static-libtsan:%{!shared:" \
index 51b7a55687725054a68a31ae79c6d8ef7c9f6fd7..9ed8a03af0a2aa017be1fc75a81823dda94d7816 100644 (file)
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -993,7 +993,7 @@ proper position among the other output files.  */
     %{static:%ecannot specify -static with -fsanitize=address}}\
     %{%:sanitize(thread):" LIBTSAN_SPEC "\
     %{static:%ecannot specify -static with -fsanitize=thread}}\
-    %{!%:sanitize(address):%{%:sanitize(undefined):" LIBUBSAN_SPEC "}}\
+    %{%:sanitize(undefined):" LIBUBSAN_SPEC "}\
     %{%:sanitize(leak):" LIBLSAN_SPEC "}}}"
 #endif
 
index 51a8de5a8bf09f4557dcab1835fd68f935c79ae2..80c3c0298dd4df957461ad9894ce77185ad497fb 100644 (file)
@@ -1,3 +1,17 @@
+2018-07-05  Jakub Jelinek  <jakub@redhat.com>
+
+       Revert
+       2018-07-04  Maxim Ostapenko  <m.ostapenko@samsung.com>
+
+       PR sanitizer/84250
+       * Makefile.am: Reorder libs.
+       * Makefile.in: Regenerate.
+       * asan/Makefile.am: Define DCAN_SANITIZE_UB=1, add dependancy from
+       libsanitizer_ubsan.la.
+       * asan/Makefile.in: Regenerate.
+       * ubsan/Makefile.am: Define new libsanitizer_ubsan.la library.
+       * ubsan/Makefile.in: Regenerate.
+
 2018-07-04  Maxim Ostapenko  <m.ostapenko@samsung.com>
 
        PR sanitizer/84250
index 08d952b01827e4f1a551f47aafe50ac9c33268c3..018f0b0682328a37a0f489d21755c2acafdb0198 100644 (file)
@@ -14,7 +14,7 @@ endif
 if LIBBACKTRACE_SUPPORTED
 SUBDIRS += libbacktrace
 endif
-SUBDIRS += lsan ubsan asan
+SUBDIRS += lsan asan ubsan
 nodist_saninclude_HEADERS += \
   include/sanitizer/lsan_interface.h \
   include/sanitizer/asan_interface.h \
index 9074292764bbcc4461d18dc245f68a3003e5e187..a9fea21eaf8fff0db777db949d351d3032fcd100 100644 (file)
@@ -140,8 +140,8 @@ AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
        $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS
 ETAGS = etags
 CTAGS = ctags
-DIST_SUBDIRS = sanitizer_common interception libbacktrace lsan ubsan \
-       asan tsan
+DIST_SUBDIRS = sanitizer_common interception libbacktrace lsan asan \
+       ubsan tsan
 ACLOCAL = @ACLOCAL@
 ALLOC_FILE = @ALLOC_FILE@
 AMTAR = @AMTAR@
@@ -294,7 +294,7 @@ ACLOCAL_AMFLAGS = -I .. -I ../config
 sanincludedir = $(libdir)/gcc/$(target_alias)/$(gcc_version)/include/sanitizer
 nodist_saninclude_HEADERS = $(am__append_1)
 @SANITIZER_SUPPORTED_TRUE@SUBDIRS = sanitizer_common $(am__append_2) \
-@SANITIZER_SUPPORTED_TRUE@     $(am__append_3) lsan ubsan asan \
+@SANITIZER_SUPPORTED_TRUE@     $(am__append_3) lsan asan ubsan \
 @SANITIZER_SUPPORTED_TRUE@     $(am__append_4)
 gcc_version := $(shell @get_gcc_base_ver@ $(top_srcdir)/../gcc/BASE-VER)
 
index 3ac49eed3b6ade04e66984c7bd32e6a9b536c8da..f105b0357964ca85d9dd48653e13ef5c5b6cbef9 100644 (file)
@@ -3,7 +3,7 @@ AM_CPPFLAGS = -I $(top_srcdir)/include -I $(top_srcdir)
 # May be used by toolexeclibdir.
 gcc_version := $(shell @get_gcc_base_ver@ $(top_srcdir)/../gcc/BASE-VER)
 
-DEFS = -D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -DASAN_HAS_EXCEPTIONS=1 -DASAN_NEEDS_SEGV=1 -DCAN_SANITIZE_UB=1
+DEFS = -D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -DASAN_HAS_EXCEPTIONS=1 -DASAN_NEEDS_SEGV=1 -DCAN_SANITIZE_UB=0
 if USING_MAC_INTERPOSE
 DEFS += -DMAC_INTERPOSE_FUNCTIONS -DMISSING_BLOCKS_SUPPORT
 endif
@@ -48,7 +48,7 @@ asan_files = \
        asan_win_dynamic_runtime_thunk.cc
 
 libasan_la_SOURCES = $(asan_files)
-libasan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la $(top_builddir)/lsan/libsanitizer_lsan.la $(top_builddir)/ubsan/libsanitizer_ubsan.la
+libasan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la $(top_builddir)/lsan/libsanitizer_lsan.la
 if !USING_MAC_INTERPOSE
 libasan_la_LIBADD += $(top_builddir)/interception/libinterception.la
 endif
index 8ce2362a8d096718905284a86e53c341624ca0de..4cf27e712f70638cae67e9e5faf9c833a16c00b6 100644 (file)
@@ -110,8 +110,7 @@ LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
 am__DEPENDENCIES_1 =
 libasan_la_DEPENDENCIES =  \
        $(top_builddir)/sanitizer_common/libsanitizer_common.la \
-       $(top_builddir)/lsan/libsanitizer_lsan.la \
-       $(top_builddir)/ubsan/libsanitizer_ubsan.la $(am__append_2) \
+       $(top_builddir)/lsan/libsanitizer_lsan.la $(am__append_2) \
        $(am__append_3) $(am__DEPENDENCIES_1)
 am__objects_1 = asan_activation.lo asan_allocator.lo asan_debugging.lo \
        asan_descriptions.lo asan_errors.lo asan_fake_stack.lo \
@@ -177,7 +176,7 @@ CYGPATH_W = @CYGPATH_W@
 DEFS = -D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS \
        -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS \
        -DASAN_HAS_EXCEPTIONS=1 -DASAN_NEEDS_SEGV=1 \
-       -DCAN_SANITIZE_UB=1 $(am__append_1)
+       -DCAN_SANITIZE_UB=0 $(am__append_1)
 DEPDIR = @DEPDIR@
 DSYMUTIL = @DSYMUTIL@
 DUMPBIN = @DUMPBIN@
@@ -347,8 +346,7 @@ asan_files = \
 libasan_la_SOURCES = $(asan_files)
 libasan_la_LIBADD =  \
        $(top_builddir)/sanitizer_common/libsanitizer_common.la \
-       $(top_builddir)/lsan/libsanitizer_lsan.la \
-       $(top_builddir)/ubsan/libsanitizer_ubsan.la $(am__append_2) \
+       $(top_builddir)/lsan/libsanitizer_lsan.la $(am__append_2) \
        $(am__append_3) $(LIBSTDCXX_RAW_CXX_LDFLAGS)
 libasan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(link_libasan)
 
index 1bb40bdadad74312a8f9f5f46393d00712c3b2e0..2bff6be93b7b38bb4fc1faa698d00b6cf674a816 100644 (file)
@@ -11,7 +11,6 @@ AM_CXXFLAGS += $(EXTRA_CXXFLAGS)
 ACLOCAL_AMFLAGS = -I m4
 
 toolexeclib_LTLIBRARIES = libubsan.la
-noinst_LTLIBRARIES = libsanitizer_ubsan.la
 
 ubsan_plugin_files = \
        ubsan_diag.cc \
@@ -26,10 +25,7 @@ ubsan_plugin_files = \
 
 ubsan_files = $(ubsan_plugin_files)
 
-libsanitizer_ubsan_la_SOURCES = $(ubsan_plugin_files)
-libsanitizer_ubsan_la_LIBADD = $(LIBSTDCXX_RAW_CXX_LDFLAGS)
-
-libubsan_la_SOURCES = $(ubsan_files)
+libubsan_la_SOURCES = $(ubsan_files) 
 libubsan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la 
 if !USING_MAC_INTERPOSE
 libubsan_la_LIBADD += $(top_builddir)/interception/libinterception.la
index 2102deffc2c0d08122f92227893f2f15d7839191..d75260f1ef76c73dd0ff37ea350023ec07e1cf6c 100644 (file)
@@ -103,18 +103,15 @@ am__uninstall_files_from_dir = { \
          $(am__cd) "$$dir" && rm -f $$files; }; \
   }
 am__installdirs = "$(DESTDIR)$(toolexeclibdir)"
-LTLIBRARIES = $(noinst_LTLIBRARIES) $(toolexeclib_LTLIBRARIES)
+LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
 am__DEPENDENCIES_1 =
-libsanitizer_ubsan_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
+libubsan_la_DEPENDENCIES =  \
+       $(top_builddir)/sanitizer_common/libsanitizer_common.la \
+       $(am__append_1) $(am__append_2) $(am__DEPENDENCIES_1)
 am__objects_1 = ubsan_diag.lo ubsan_flags.lo ubsan_handlers.lo \
        ubsan_handlers_cxx.lo ubsan_init.lo ubsan_type_hash.lo \
        ubsan_type_hash_itanium.lo ubsan_type_hash_win.lo \
        ubsan_value.lo
-am_libsanitizer_ubsan_la_OBJECTS = $(am__objects_1)
-libsanitizer_ubsan_la_OBJECTS = $(am_libsanitizer_ubsan_la_OBJECTS)
-libubsan_la_DEPENDENCIES =  \
-       $(top_builddir)/sanitizer_common/libsanitizer_common.la \
-       $(am__append_1) $(am__append_2) $(am__DEPENDENCIES_1)
 am__objects_2 = $(am__objects_1)
 am_libubsan_la_OBJECTS = $(am__objects_2)
 libubsan_la_OBJECTS = $(am_libubsan_la_OBJECTS)
@@ -134,7 +131,7 @@ CXXLD = $(CXX)
 CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
        --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
        $(LDFLAGS) -o $@
-SOURCES = $(libsanitizer_ubsan_la_SOURCES) $(libubsan_la_SOURCES)
+SOURCES = $(libubsan_la_SOURCES)
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -301,7 +298,6 @@ AM_CXXFLAGS = -Wall -W -Wno-unused-parameter -Wwrite-strings -pedantic \
        -std=gnu++11 $(EXTRA_CXXFLAGS)
 ACLOCAL_AMFLAGS = -I m4
 toolexeclib_LTLIBRARIES = libubsan.la
-noinst_LTLIBRARIES = libsanitizer_ubsan.la
 ubsan_plugin_files = \
        ubsan_diag.cc \
        ubsan_flags.cc \
@@ -314,9 +310,7 @@ ubsan_plugin_files = \
        ubsan_value.cc
 
 ubsan_files = $(ubsan_plugin_files)
-libsanitizer_ubsan_la_SOURCES = $(ubsan_plugin_files)
-libsanitizer_ubsan_la_LIBADD = $(LIBSTDCXX_RAW_CXX_LDFLAGS)
-libubsan_la_SOURCES = $(ubsan_files)
+libubsan_la_SOURCES = $(ubsan_files) 
 libubsan_la_LIBADD =  \
        $(top_builddir)/sanitizer_common/libsanitizer_common.la \
        $(am__append_1) $(am__append_2) $(LIBSTDCXX_RAW_CXX_LDFLAGS)
@@ -395,15 +389,6 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(am__aclocal_m4_deps):
-
-clean-noinstLTLIBRARIES:
-       -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
-       @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \
-         dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
-         test "$$dir" != "$$p" || dir=.; \
-         echo "rm -f \"$${dir}/so_locations\""; \
-         rm -f "$${dir}/so_locations"; \
-       done
 install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES)
        @$(NORMAL_INSTALL)
        @list='$(toolexeclib_LTLIBRARIES)'; test -n "$(toolexeclibdir)" || list=; \
@@ -436,8 +421,6 @@ clean-toolexeclibLTLIBRARIES:
          echo "rm -f \"$${dir}/so_locations\""; \
          rm -f "$${dir}/so_locations"; \
        done
-libsanitizer_ubsan.la: $(libsanitizer_ubsan_la_OBJECTS) $(libsanitizer_ubsan_la_DEPENDENCIES) $(EXTRA_libsanitizer_ubsan_la_DEPENDENCIES) 
-       $(CXXLINK)  $(libsanitizer_ubsan_la_OBJECTS) $(libsanitizer_ubsan_la_LIBADD) $(LIBS)
 libubsan.la: $(libubsan_la_OBJECTS) $(libubsan_la_DEPENDENCIES) $(EXTRA_libubsan_la_DEPENDENCIES) 
        $(libubsan_la_LINK) -rpath $(toolexeclibdir) $(libubsan_la_OBJECTS) $(libubsan_la_LIBADD) $(LIBS)
 
@@ -574,8 +557,8 @@ maintainer-clean-generic:
        @echo "it deletes files that may require special tools to rebuild."
 clean: clean-am
 
-clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \
-       clean-toolexeclibLTLIBRARIES mostlyclean-am
+clean-am: clean-generic clean-libtool clean-toolexeclibLTLIBRARIES \
+       mostlyclean-am
 
 distclean: distclean-am
        -rm -rf ./$(DEPDIR)
@@ -646,19 +629,18 @@ uninstall-am: uninstall-toolexeclibLTLIBRARIES
 .MAKE: install-am install-strip
 
 .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-       clean-libtool clean-noinstLTLIBRARIES \
-       clean-toolexeclibLTLIBRARIES ctags distclean distclean-compile \
-       distclean-generic distclean-libtool distclean-tags dvi dvi-am \
-       html html-am info info-am install install-am install-data \
-       install-data-am install-dvi install-dvi-am install-exec \
-       install-exec-am install-html install-html-am install-info \
-       install-info-am install-man install-pdf install-pdf-am \
-       install-ps install-ps-am install-strip \
-       install-toolexeclibLTLIBRARIES installcheck installcheck-am \
-       installdirs maintainer-clean maintainer-clean-generic \
-       mostlyclean mostlyclean-compile mostlyclean-generic \
-       mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
-       uninstall-am uninstall-toolexeclibLTLIBRARIES
+       clean-libtool clean-toolexeclibLTLIBRARIES ctags distclean \
+       distclean-compile distclean-generic distclean-libtool \
+       distclean-tags dvi dvi-am html html-am info info-am install \
+       install-am install-data install-data-am install-dvi \
+       install-dvi-am install-exec install-exec-am install-html \
+       install-html-am install-info install-info-am install-man \
+       install-pdf install-pdf-am install-ps install-ps-am \
+       install-strip install-toolexeclibLTLIBRARIES installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+       tags uninstall uninstall-am uninstall-toolexeclibLTLIBRARIES
 
 
 # Use special rules for files that require RTTI support.