[Sanitizer] Build ASan, TSan and MSan runtimes with -fno-rtti.

llvm-svn: 176940
This commit is contained in:
Alexey Samsonov
2013-03-13 09:18:30 +00:00
parent 98f5ea0dba
commit d7ab381f53
5 changed files with 12 additions and 7 deletions

View File

@@ -30,7 +30,9 @@ set(ASAN_DYLIB_SOURCES
include_directories(..)
set(ASAN_CFLAGS ${SANITIZER_COMMON_CFLAGS})
set(ASAN_CFLAGS
${SANITIZER_COMMON_CFLAGS}
-fno-rtti)
set(ASAN_COMMON_DEFINITIONS
ASAN_HAS_EXCEPTIONS=1)

View File

@@ -11,6 +11,7 @@ set(MSAN_RTL_SOURCES
)
set(MSAN_RTL_CFLAGS
${SANITIZER_COMMON_CFLAGS}
-fno-rtti
-fPIE
# Prevent clang from generating libc calls.
-ffreestanding)

View File

@@ -2,7 +2,9 @@
include_directories(..)
set(TSAN_CFLAGS ${SANITIZER_COMMON_CFLAGS})
set(TSAN_CFLAGS
${SANITIZER_COMMON_CFLAGS}
-fno-rtti)
# FIXME: Add support for compile flags:
# -Wframe-larger-than=512,
# -Wglobal-constructors,

View File

@@ -132,7 +132,7 @@ CFLAGS.eprintf := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
CFLAGS.10.4 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
# FIXME: We can't build ASAN with our stub SDK yet.
CFLAGS.asan_osx := $(CFLAGS) -mmacosx-version-min=10.5 -fno-builtin \
-DASAN_FLEXIBLE_MAPPING_AND_OFFSET=1
-fno-rtti -DASAN_FLEXIBLE_MAPPING_AND_OFFSET=1
CFLAGS.asan_osx_dynamic := \
$(CFLAGS) -mmacosx-version-min=10.5 -fno-builtin \
-DMAC_INTERPOSE_FUNCTIONS=1 \

View File

@@ -86,12 +86,12 @@ CFLAGS.full-i386 := $(CFLAGS) -m32
CFLAGS.full-x86_64 := $(CFLAGS) -m64
CFLAGS.profile-i386 := $(CFLAGS) -m32
CFLAGS.profile-x86_64 := $(CFLAGS) -m64
CFLAGS.asan-i386 := $(CFLAGS) -m32 -fPIE -fno-builtin \
CFLAGS.asan-i386 := $(CFLAGS) -m32 -fPIE -fno-builtin -fno-rtti \
-DASAN_FLEXIBLE_MAPPING_AND_OFFSET=1
CFLAGS.asan-x86_64 := $(CFLAGS) -m64 -fPIE -fno-builtin \
CFLAGS.asan-x86_64 := $(CFLAGS) -m64 -fPIE -fno-builtin -fno-rtti \
-DASAN_FLEXIBLE_MAPPING_AND_OFFSET=1
CFLAGS.tsan-x86_64 := $(CFLAGS) -m64 -fPIE -fno-builtin
CFLAGS.msan-x86_64 := $(CFLAGS) -m64 -fPIE -fno-builtin
CFLAGS.tsan-x86_64 := $(CFLAGS) -m64 -fPIE -fno-builtin -fno-rtti
CFLAGS.msan-x86_64 := $(CFLAGS) -m64 -fPIE -fno-builtin -fno-rtti
CFLAGS.ubsan-i386 := $(CFLAGS) -m32 -fPIE -fno-builtin
CFLAGS.ubsan-x86_64 := $(CFLAGS) -m64 -fPIE -fno-builtin