[compiler-rt] r313585 - Revert "[ubsan] Split ubsan_init_standalone"

Vitaly Buka via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 18 15:47:36 PDT 2017


Author: vitalybuka
Date: Mon Sep 18 15:47:36 2017
New Revision: 313585

URL: http://llvm.org/viewvc/llvm-project?rev=313585&view=rev
Log:
Revert "[ubsan] Split ubsan_init_standalone"

Breaks build.

This reverts commit r313583 and r313584.

Removed:
    compiler-rt/trunk/lib/ubsan/ubsan_init_standalone_preinit.cc
Modified:
    compiler-rt/trunk/lib/ubsan/CMakeLists.txt
    compiler-rt/trunk/lib/ubsan/ubsan_init_standalone.cc

Modified: compiler-rt/trunk/lib/ubsan/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/ubsan/CMakeLists.txt?rev=313585&r1=313584&r2=313585&view=diff
==============================================================================
--- compiler-rt/trunk/lib/ubsan/CMakeLists.txt (original)
+++ compiler-rt/trunk/lib/ubsan/CMakeLists.txt Mon Sep 18 15:47:36 2017
@@ -10,6 +10,7 @@ set(UBSAN_SOURCES
 
 set(UBSAN_STANDALONE_SOURCES
   ubsan_diag_standalone.cc
+  ubsan_init_standalone.cc
   )
 
 set(UBSAN_CXXABI_SOURCES
@@ -63,7 +64,6 @@ if(APPLE)
       OS ${SANITIZER_COMMON_SUPPORTED_OS}
       ARCHS ${UBSAN_SUPPORTED_ARCH}
       SOURCES ${UBSAN_STANDALONE_SOURCES}
-              ubsan_init_standalone.cc
       CFLAGS ${UBSAN_STANDALONE_CFLAGS})
 
     add_weak_symbols("ubsan" WEAK_SYMBOL_LINK_FLAGS)
@@ -133,15 +133,7 @@ else()
     # Initializer of standalone UBSan runtime.
     add_compiler_rt_object_libraries(RTUbsan_standalone
       ARCHS ${UBSAN_SUPPORTED_ARCH}
-      SOURCES ${UBSAN_STANDALONE_SOURCES}
-              ubsan_init_standalone
-      CFLAGS ${UBSAN_STANDALONE_CFLAGS})
-    # This can't not be linked into share lib
-    add_compiler_rt_object_libraries(RTUbsan_standalone_preinit
-      ARCHS ${UBSAN_SUPPORTED_ARCH}
-      SOURCES ${UBSAN_STANDALONE_SOURCES}
-              ubsan_init_standalone_preinit.cc
-      CFLAGS ${UBSAN_STANDALONE_CFLAGS})
+      SOURCES ${UBSAN_STANDALONE_SOURCES} CFLAGS ${UBSAN_STANDALONE_CFLAGS})
 
     # Standalone UBSan runtimes.
     add_compiler_rt_runtime(clang_rt.ubsan_standalone
@@ -150,7 +142,7 @@ else()
       OBJECT_LIBS RTSanitizerCommon
               RTSanitizerCommonLibc
               RTUbsan
-              RTUbsan_standalone_preinit
+              RTUbsan_standalone
       CFLAGS ${UBSAN_CFLAGS}
       PARENT_TARGET ubsan)
 
@@ -168,7 +160,6 @@ else()
         OBJECT_LIBS RTSanitizerCommon
                 RTSanitizerCommonLibc
                 RTUbsan
-                RTUbsan_standalone
         CFLAGS ${UBSAN_CFLAGS}
         LINK_FLAGS ${SANITIZER_COMMON_LINK_FLAGS}
         LINK_LIBS ${UBSAN_DYNAMIC_LIBS}

Modified: compiler-rt/trunk/lib/ubsan/ubsan_init_standalone.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/ubsan/ubsan_init_standalone.cc?rev=313585&r1=313584&r2=313585&view=diff
==============================================================================
--- compiler-rt/trunk/lib/ubsan/ubsan_init_standalone.cc (original)
+++ compiler-rt/trunk/lib/ubsan/ubsan_init_standalone.cc Mon Sep 18 15:47:36 2017
@@ -19,6 +19,11 @@
 #include "sanitizer_common/sanitizer_internal_defs.h"
 #include "ubsan_init.h"
 
+#if SANITIZER_CAN_USE_PREINIT_ARRAY
+__attribute__((section(".preinit_array"), used))
+void (*__local_ubsan_preinit)(void) = __ubsan::InitAsStandalone;
+#else
+// Use a dynamic initializer.
 class UbsanStandaloneInitializer {
  public:
   UbsanStandaloneInitializer() {
@@ -26,3 +31,5 @@ class UbsanStandaloneInitializer {
   }
 };
 static UbsanStandaloneInitializer ubsan_standalone_initializer;
+#endif  // SANITIZER_CAN_USE_PREINIT_ARRAY
+

Removed: compiler-rt/trunk/lib/ubsan/ubsan_init_standalone_preinit.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/ubsan/ubsan_init_standalone_preinit.cc?rev=313584&view=auto
==============================================================================
--- compiler-rt/trunk/lib/ubsan/ubsan_init_standalone_preinit.cc (original)
+++ compiler-rt/trunk/lib/ubsan/ubsan_init_standalone_preinit.cc (removed)
@@ -1,26 +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"
-
-#if SANITIZER_CAN_USE_PREINIT_ARRAY
-__attribute__((section(".preinit_array"), used)) void (*__local_ubsan_preinit)(
-    void) = __ubsan::InitAsStandalone;
-#endif // SANITIZER_CAN_USE_PREINIT_ARRAY




More information about the llvm-commits mailing list