[PATCH] D39827: ubsan: Allow programs to use setenv to configure ubsan_standalone.
Peter Collingbourne via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Nov 8 18:22:23 PST 2017
This revision was automatically updated to reflect the committed changes.
Closed by commit rL317757: ubsan: Allow programs to use setenv to configure ubsan_standalone. (authored by pcc).
Changed prior to commit:
https://reviews.llvm.org/D39827?vs=122186&id=122195#toc
Repository:
rL LLVM
https://reviews.llvm.org/D39827
Files:
compiler-rt/trunk/lib/ubsan/CMakeLists.txt
compiler-rt/trunk/lib/ubsan/ubsan_flags.cc
compiler-rt/trunk/lib/ubsan/ubsan_init_standalone_preinit.cc
Index: compiler-rt/trunk/lib/ubsan/CMakeLists.txt
===================================================================
--- compiler-rt/trunk/lib/ubsan/CMakeLists.txt
+++ compiler-rt/trunk/lib/ubsan/CMakeLists.txt
@@ -151,7 +151,6 @@
add_compiler_rt_runtime(clang_rt.ubsan_standalone
STATIC
ARCHS ${UBSAN_SUPPORTED_ARCH}
- SOURCES ubsan_init_standalone_preinit.cc
OBJECT_LIBS RTSanitizerCommon
RTSanitizerCommonLibc
RTUbsan
Index: compiler-rt/trunk/lib/ubsan/ubsan_flags.cc
===================================================================
--- compiler-rt/trunk/lib/ubsan/ubsan_flags.cc
+++ compiler-rt/trunk/lib/ubsan/ubsan_flags.cc
@@ -18,6 +18,8 @@
#include "sanitizer_common/sanitizer_flags.h"
#include "sanitizer_common/sanitizer_flag_parser.h"
+#include <stdlib.h>
+
namespace __ubsan {
const char *MaybeCallUbsanDefaultOptions() {
@@ -45,7 +47,7 @@
CommonFlags cf;
cf.CopyFrom(*common_flags());
cf.print_summary = false;
- cf.external_symbolizer_path = GetEnv("UBSAN_SYMBOLIZER_PATH");
+ cf.external_symbolizer_path = getenv("UBSAN_SYMBOLIZER_PATH");
OverrideCommonFlags(cf);
}
@@ -59,7 +61,7 @@
// Override from user-specified string.
parser.ParseString(MaybeCallUbsanDefaultOptions());
// Override from environment variable.
- parser.ParseString(GetEnv("UBSAN_OPTIONS"));
+ parser.ParseString(getenv("UBSAN_OPTIONS"));
InitializeCommonFlags();
if (Verbosity()) ReportUnrecognizedFlags();
Index: compiler-rt/trunk/lib/ubsan/ubsan_init_standalone_preinit.cc
===================================================================
--- compiler-rt/trunk/lib/ubsan/ubsan_init_standalone_preinit.cc
+++ compiler-rt/trunk/lib/ubsan/ubsan_init_standalone_preinit.cc
@@ -1,37 +0,0 @@
-//===-- ubsan_init_standalone_preinit.cc
-//------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// Initialization of standalone UBSan runtime.
-//
-//===----------------------------------------------------------------------===//
-
-#include "ubsan_platform.h"
-#if !CAN_SANITIZE_UB
-#error "UBSan is not supported on this platform!"
-#endif
-
-#include "sanitizer_common/sanitizer_internal_defs.h"
-#include "ubsan_init.h"
-#include "ubsan_signals_standalone.h"
-
-#if SANITIZER_CAN_USE_PREINIT_ARRAY
-
-namespace __ubsan {
-
-static void PreInitAsStandalone() {
- InitAsStandalone();
- InitializeDeadlySignals();
-}
-
-} // namespace __ubsan
-
-__attribute__((section(".preinit_array"), used)) void (*__local_ubsan_preinit)(
- void) = __ubsan::PreInitAsStandalone;
-#endif // SANITIZER_CAN_USE_PREINIT_ARRAY
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D39827.122195.patch
Type: text/x-patch
Size: 2882 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20171109/da138fba/attachment.bin>
More information about the llvm-commits
mailing list