aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIain Sandoe <iain@codesourcery.com>2013-09-01 12:16:07 +0000
committerIain Sandoe <iains@gcc.gnu.org>2013-09-01 12:16:07 +0000
commit0cea211ebd67d10e93649074d348d12df67c4d97 (patch)
treea9a3ef71fa2f5a65f269a5dda95fc47d086a57c5
parent31f1f73b3e6e89784f0639957d1cf6ea44575468 (diff)
downloadgcc-0cea211ebd67d10e93649074d348d12df67c4d97.zip
gcc-0cea211ebd67d10e93649074d348d12df67c4d97.tar.gz
gcc-0cea211ebd67d10e93649074d348d12df67c4d97.tar.bz2
darwin.h (LINK_COMMAND_SPEC_A): Revise sanitizer specs to include sanitize(undefined).
gcc: * config/darwin.h (LINK_COMMAND_SPEC_A): Revise sanitizer specs to include sanitize(undefined). libsanitizer: * ubsan/Makefile.am (libubsan_la_LIBADD): Revise to omit libinterception.la for Darwin. * ubsan/Makefile.in: Regenerate. From-SVN: r202144
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/darwin.h3
-rw-r--r--libsanitizer/ChangeLog6
-rw-r--r--libsanitizer/ubsan/Makefile.am6
-rw-r--r--libsanitizer/ubsan/Makefile.in8
5 files changed, 23 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b141e61..34e5d33 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2013-09-01 Iain Sandoe <iain@codesourcery.com>
+
+ * config/darwin.h (LINK_COMMAND_SPEC_A): Revise sanitizer specs to
+ include sanitize(undefined).
+
2013-08-31 Jan Hubicka <jh@suse.cz>
* bulitins.c (expand_builtin): Do not early exit for gcov
diff --git a/gcc/config/darwin.h b/gcc/config/darwin.h
index 9d04472..596c9ef 100644
--- a/gcc/config/darwin.h
+++ b/gcc/config/darwin.h
@@ -178,10 +178,11 @@ extern GTY(()) int darwin_ms_struct;
%{L*} %(link_libgcc) %o %{fprofile-arcs|fprofile-generate*|coverage:-lgcov} \
%{fopenmp|ftree-parallelize-loops=*: \
%{static|static-libgcc|static-libstdc++|static-libgfortran: libgomp.a%s; : -lgomp } } \
- %{%:sanitize(address): -lasan } \
%{fgnu-tm: \
%{static|static-libgcc|static-libstdc++|static-libgfortran: libitm.a%s; : -litm } } \
%{!nostdlib:%{!nodefaultlibs:\
+ %{%:sanitize(address): -lasan } \
+ %{%:sanitize(undefined): -lubsan } \
%(link_ssp) %(link_gcc_c_sequence)\
}}\
%{!nostdlib:%{!nostartfiles:%E}} %{T*} %{F*} }}}}}}}"
diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog
index ffef18b..f5162c9 100644
--- a/libsanitizer/ChangeLog
+++ b/libsanitizer/ChangeLog
@@ -1,3 +1,9 @@
+2013-09-01 Iain Sandoe <iain@codesourcery.com>
+
+ * ubsan/Makefile.am (libubsan_la_LIBADD): Revise to omit
+ libinterception.la for Darwin.
+ * ubsan/Makefile.in: Regenerate.
+
2013-08-30 Jakub Jelinek <jakub@redhat.com>
* Makefile.am (SUBDIRS): Add ubsan.
diff --git a/libsanitizer/ubsan/Makefile.am b/libsanitizer/ubsan/Makefile.am
index 0921d95..e98984a 100644
--- a/libsanitizer/ubsan/Makefile.am
+++ b/libsanitizer/ubsan/Makefile.am
@@ -18,7 +18,11 @@ ubsan_files = \
ubsan_value.cc
libubsan_la_SOURCES = $(ubsan_files)
-libubsan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la $(top_builddir)/interception/libinterception.la $(LIBSTDCXX_RAW_CXX_LDFLAGS)
+libubsan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la
+if !USING_MAC_INTERPOSE
+libubsan_la_LIBADD += $(top_builddir)/interception/libinterception.la
+endif
+libubsan_la_LIBADD += $(LIBSTDCXX_RAW_CXX_LDFLAGS)
libubsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -lpthread -ldl
# Work around what appears to be a GNU make bug handling MAKEFLAGS
diff --git a/libsanitizer/ubsan/Makefile.in b/libsanitizer/ubsan/Makefile.in
index 948c244..6812538 100644
--- a/libsanitizer/ubsan/Makefile.in
+++ b/libsanitizer/ubsan/Makefile.in
@@ -35,6 +35,7 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
+@USING_MAC_INTERPOSE_FALSE@am__append_1 = $(top_builddir)/interception/libinterception.la
subdir = ubsan
DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -79,8 +80,7 @@ LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
am__DEPENDENCIES_1 =
libubsan_la_DEPENDENCIES = \
$(top_builddir)/sanitizer_common/libsanitizer_common.la \
- $(top_builddir)/interception/libinterception.la \
- $(am__DEPENDENCIES_1)
+ $(am__append_1) $(am__DEPENDENCIES_1)
am__objects_1 = ubsan_diag.lo ubsan_handlers.lo ubsan_handlers_cxx.lo \
ubsan_type_hash.lo ubsan_value.lo
am_libubsan_la_OBJECTS = $(am__objects_1)
@@ -253,7 +253,9 @@ ubsan_files = \
ubsan_value.cc
libubsan_la_SOURCES = $(ubsan_files)
-libubsan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la $(top_builddir)/interception/libinterception.la $(LIBSTDCXX_RAW_CXX_LDFLAGS)
+libubsan_la_LIBADD = \
+ $(top_builddir)/sanitizer_common/libsanitizer_common.la \
+ $(am__append_1) $(LIBSTDCXX_RAW_CXX_LDFLAGS)
libubsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -lpthread -ldl
# Work around what appears to be a GNU make bug handling MAKEFLAGS