[zorg] r315973 - [zorg] Split sanitizer bootstrap bot to asan, msan and ubsan

Vitaly Buka via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 16 23:08:21 PDT 2017


Author: vitalybuka
Date: Mon Oct 16 23:08:21 2017
New Revision: 315973

URL: http://llvm.org/viewvc/llvm-project?rev=315973&view=rev
Log:
[zorg] Split sanitizer bootstrap bot to asan, msan and ubsan

Added:
    zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap_msan.sh   (contents, props changed)
      - copied, changed from r315949, zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap.sh
    zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap_ubsan.sh
Modified:
    zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap.sh

Modified: zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap.sh
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap.sh?rev=315973&r1=315972&r2=315973&view=diff
==============================================================================
--- zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap.sh (original)
+++ zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap.sh Mon Oct 16 23:08:21 2017
@@ -15,13 +15,8 @@ CHECK_LIBCXX=${CHECK_LIBCXX:-1}
 CHECK_LLD=${CHECK_LLD:-1}
 STAGE1_DIR=llvm_build0
 STAGE2_ASAN_DIR=llvm_build_asan
-STAGE2_MSAN_DIR=llvm_build_msan
-STAGE2_LIBCXX_MSAN_DIR=libcxx_build_msan
 STAGE2_LIBCXX_ASAN_DIR=libcxx_build_asan
-STAGE2_LIBCXX_UBSAN_DIR=libcxx_build_ubsan
-STAGE2_UBSAN_DIR=llvm_build_ubsan
 STAGE3_ASAN_DIR=llvm_build2_asan
-STAGE3_MSAN_DIR=llvm_build2_msan
 LLVM=$ROOT/llvm
 CMAKE_COMMON_OPTIONS="-GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_ASSERTIONS=ON -DLLVM_PARALLEL_LINK_JOBS=20"
 
@@ -34,14 +29,9 @@ fi
 # CMake does not notice that the compiler itself has changed.
 # Anyway, incremental builds of stage2 and stage3 compilers don't make sense.
 # Clobber the build trees.
-rm -rf ${STAGE2_LIBCXX_MSAN_DIR}
 rm -rf ${STAGE2_LIBCXX_ASAN_DIR}
-rm -rf ${STAGE2_LIBCXX_UBSAN_DIR}
-rm -rf ${STAGE2_MSAN_DIR}
-rm -rf ${STAGE3_MSAN_DIR}
 rm -rf ${STAGE2_ASAN_DIR}
 rm -rf ${STAGE3_ASAN_DIR}
-rm -rf ${STAGE2_UBSAN_DIR}
 
 echo @@@BUILD_STEP update@@@
 buildbot_update
@@ -52,31 +42,6 @@ echo @@@BUILD_STEP build stage1 clang@@@
 
 build_stage1_clang
 
-# Stage 2 / Memory Sanitizer
-
-build_stage2_msan
-
-check_stage2_msan
-
-# Stage 3 / MemorySanitizer
-
-echo @@@BUILD_STEP build stage3/msan clang@@@
-
-mkdir -p ${STAGE3_MSAN_DIR}
-
-clang_msan_path=$ROOT/${STAGE2_MSAN_DIR}/bin
-cmake_stage3_msan_options="${CMAKE_COMMON_OPTIONS} -DCMAKE_C_COMPILER=${clang_msan_path}/clang -DCMAKE_CXX_COMPILER=${clang_msan_path}/clang++"
-
-(cd ${STAGE3_MSAN_DIR} && cmake ${cmake_stage3_msan_options} $LLVM && ninja clang) || \
-  echo @@@STEP_FAILURE@@@
-
-
-echo @@@BUILD_STEP check-llvm check-clang stage3/msan@@@
-
-(cd ${STAGE3_MSAN_DIR} && ninja check-llvm) || echo @@@STEP_FAILURE@@@
-(cd ${STAGE3_MSAN_DIR} && ninja check-clang) || echo @@@STEP_FAILURE@@@
-
-
 # Stage 2 / AddressSanitizer
 
 build_stage2_asan
@@ -109,9 +74,3 @@ export ASAN_OPTIONS="check_initializatio
 
 (cd ${STAGE3_ASAN_DIR} && ninja check-llvm) || echo @@@STEP_FAILURE@@@
 (cd ${STAGE3_ASAN_DIR} && ninja check-clang) || echo @@@STEP_FAILURE@@@
-
-# Stage 2 / UndefinedBehaviorSanitizer
-
-build_stage2_ubsan
-
-check_stage2_ubsan

Copied: zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap_msan.sh (from r315949, zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap.sh)
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap_msan.sh?p2=zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap_msan.sh&p1=zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap.sh&r1=315949&r2=315973&rev=315973&view=diff
==============================================================================
--- zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap.sh (original)
+++ zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap_msan.sh Mon Oct 16 23:08:21 2017
@@ -14,13 +14,8 @@ export PATH="/usr/local/bin:$PATH"
 CHECK_LIBCXX=${CHECK_LIBCXX:-1}
 CHECK_LLD=${CHECK_LLD:-1}
 STAGE1_DIR=llvm_build0
-STAGE2_ASAN_DIR=llvm_build_asan
 STAGE2_MSAN_DIR=llvm_build_msan
 STAGE2_LIBCXX_MSAN_DIR=libcxx_build_msan
-STAGE2_LIBCXX_ASAN_DIR=libcxx_build_asan
-STAGE2_LIBCXX_UBSAN_DIR=libcxx_build_ubsan
-STAGE2_UBSAN_DIR=llvm_build_ubsan
-STAGE3_ASAN_DIR=llvm_build2_asan
 STAGE3_MSAN_DIR=llvm_build2_msan
 LLVM=$ROOT/llvm
 CMAKE_COMMON_OPTIONS="-GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_ASSERTIONS=ON -DLLVM_PARALLEL_LINK_JOBS=20"
@@ -35,13 +30,8 @@ fi
 # Anyway, incremental builds of stage2 and stage3 compilers don't make sense.
 # Clobber the build trees.
 rm -rf ${STAGE2_LIBCXX_MSAN_DIR}
-rm -rf ${STAGE2_LIBCXX_ASAN_DIR}
-rm -rf ${STAGE2_LIBCXX_UBSAN_DIR}
 rm -rf ${STAGE2_MSAN_DIR}
 rm -rf ${STAGE3_MSAN_DIR}
-rm -rf ${STAGE2_ASAN_DIR}
-rm -rf ${STAGE3_ASAN_DIR}
-rm -rf ${STAGE2_UBSAN_DIR}
 
 echo @@@BUILD_STEP update@@@
 buildbot_update
@@ -75,43 +65,3 @@ echo @@@BUILD_STEP check-llvm check-clan
 
 (cd ${STAGE3_MSAN_DIR} && ninja check-llvm) || echo @@@STEP_FAILURE@@@
 (cd ${STAGE3_MSAN_DIR} && ninja check-clang) || echo @@@STEP_FAILURE@@@
-
-
-# Stage 2 / AddressSanitizer
-
-build_stage2_asan
-
-check_stage2_asan
-
-# Stage 3 / AddressSanitizer
-
-echo @@@BUILD_STEP build stage3/asan clang@@@
-
-mkdir -p ${STAGE3_ASAN_DIR}
-
-clang_asan_path=$ROOT/${STAGE2_ASAN_DIR}/bin
-cmake_stage3_asan_options="${CMAKE_COMMON_OPTIONS} -DCMAKE_C_COMPILER=${clang_asan_path}/clang -DCMAKE_CXX_COMPILER=${clang_asan_path}/clang++"
-
-(cd ${STAGE3_ASAN_DIR} && cmake ${cmake_stage3_asan_options} $LLVM && ninja clang) || \
-  echo @@@STEP_FAILURE@@@
-
-
-echo @@@BUILD_STEP check-llvm check-clang stage3/asan@@@
-
-export ASAN_OPTIONS="check_initialization_order=true:detect_stack_use_after_return=0:detect_leaks=1"
-
-(cd ${STAGE3_ASAN_DIR} && ninja check-llvm) || echo @@@STEP_FAILURE@@@
-(cd ${STAGE3_ASAN_DIR} && ninja check-clang) || echo @@@STEP_FAILURE@@@
-
-echo @@@BUILD_STEP check-llvm check-clang stage3/asan-uar@@@
-
-export ASAN_OPTIONS="check_initialization_order=true:detect_stack_use_after_return=1:detect_leaks=1"
-
-(cd ${STAGE3_ASAN_DIR} && ninja check-llvm) || echo @@@STEP_FAILURE@@@
-(cd ${STAGE3_ASAN_DIR} && ninja check-clang) || echo @@@STEP_FAILURE@@@
-
-# Stage 2 / UndefinedBehaviorSanitizer
-
-build_stage2_ubsan
-
-check_stage2_ubsan

Added: zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap_ubsan.sh
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap_ubsan.sh?rev=315973&view=auto
==============================================================================
--- zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap_ubsan.sh (added)
+++ zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_bootstrap_ubsan.sh Mon Oct 16 23:08:21 2017
@@ -0,0 +1,67 @@
+#!/usr/bin/env bash
+
+set -x
+set -e
+set -u
+
+HERE="$(cd $(dirname $0) && pwd)"
+. ${HERE}/buildbot_functions.sh
+
+ROOT=`pwd`
+PLATFORM=`uname`
+export PATH="/usr/local/bin:$PATH"
+
+CHECK_LIBCXX=${CHECK_LIBCXX:-1}
+CHECK_LLD=${CHECK_LLD:-1}
+STAGE1_DIR=llvm_build0
+STAGE2_UBSAN_DIR=llvm_build_ubsan
+STAGE2_LIBCXX_UBSAN_DIR=libcxx_build_ubsan
+STAGE3_UBSAN_DIR=llvm_build2_msan
+LLVM=$ROOT/llvm
+CMAKE_COMMON_OPTIONS="-GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_ASSERTIONS=ON -DLLVM_PARALLEL_LINK_JOBS=20"
+
+if [ "$BUILDBOT_CLOBBER" != "" ]; then
+  echo @@@BUILD_STEP clobber@@@
+  rm -rf llvm
+  rm -rf ${STAGE1_DIR}
+fi
+
+# CMake does not notice that the compiler itself has changed.
+# Anyway, incremental builds of stage2 and stage3 compilers don't make sense.
+# Clobber the build trees.
+rm -rf ${STAGE2_LIBCXX_UBSAN_DIR}
+rm -rf ${STAGE2_UBSAN_DIR}
+rm -rf ${STAGE3_UBSAN_DIR}
+
+echo @@@BUILD_STEP update@@@
+buildbot_update
+
+# Stage 1
+
+echo @@@BUILD_STEP build stage1 clang@@@
+
+build_stage1_clang
+
+# Stage 2 / UndefinedBehaviorSanitizer
+
+build_stage2_ubsan
+
+check_stage2_ubsan
+
+# Stage 3 / UndefinedBehaviorSanitizer
+
+echo @@@BUILD_STEP build stage3/ubsan clang@@@
+
+mkdir -p ${STAGE3_UBSAN_DIR}
+
+clang_ubsan_path=$ROOT/${STAGE3_UBSAN_DIR}/bin
+cmake_stage3_ubsan_options="${CMAKE_COMMON_OPTIONS} -DCMAKE_C_COMPILER=${clang_ubsan_path}/clang -DCMAKE_CXX_COMPILER=${clang_ubsan_path}/clang++"
+
+(cd ${STAGE3_UBSAN_DIR} && cmake ${cmake_stage3_ubsan_options} $LLVM && ninja clang) || \
+  echo @@@STEP_FAILURE@@@
+
+
+echo @@@BUILD_STEP check-llvm check-clang stage3/ubsan@@@
+
+(cd ${STAGE3_UBSAN_DIR} && ninja check-llvm) || echo @@@STEP_FAILURE@@@
+(cd ${STAGE3_UBSAN_DIR} && ninja check-clang) || echo @@@STEP_FAILURE@@@




More information about the llvm-commits mailing list