Index: tools/clang/scripts/update.sh |
diff --git a/tools/clang/scripts/update.sh b/tools/clang/scripts/update.sh |
index 3a70e74c1b3ffafa2993bfc6b8c2675489f199ca..386e8cb651a0cd68782d0e7b29d045d6c8138481 100755 |
--- a/tools/clang/scripts/update.sh |
+++ b/tools/clang/scripts/update.sh |
@@ -8,15 +8,17 @@ |
# Do NOT CHANGE this if you don't know what you're doing -- see |
# https://code.google.com/p/chromium/wiki/UpdatingClang |
# Reverting problematic clang rolls is safe, though. |
-CLANG_REVISION=198389 |
+CLANG_REVISION=202554 |
THIS_DIR="$(dirname "${0}")" |
LLVM_DIR="${THIS_DIR}/../../../third_party/llvm" |
LLVM_BUILD_DIR="${LLVM_DIR}/../llvm-build" |
LLVM_BOOTSTRAP_DIR="${LLVM_DIR}/../llvm-bootstrap" |
+LLVM_BOOTSTRAP_INSTALL_DIR="${LLVM_DIR}/../llvm-bootstrap-install" |
CLANG_DIR="${LLVM_DIR}/tools/clang" |
CLANG_TOOLS_EXTRA_DIR="${CLANG_DIR}/tools/extra" |
COMPILER_RT_DIR="${LLVM_DIR}/projects/compiler-rt" |
+LIBCXX_DIR="${LLVM_DIR}/projects/libcxx" |
ANDROID_NDK_DIR="${LLVM_DIR}/../android_tools/ndk" |
STAMP_FILE="${LLVM_BUILD_DIR}/cr_build_revision" |
@@ -259,6 +261,673 @@ echo Getting compiler-rt r"${CLANG_REVISION}" in "${COMPILER_RT_DIR}" |
svn co --force "${LLVM_REPO_URL}/compiler-rt/trunk@${CLANG_REVISION}" \ |
"${COMPILER_RT_DIR}" |
+# clang needs a libc++ checkout, else -stdlib=libc++ won't find includes |
+# (i.e. this is needed for bootstrap builds). |
+if [ "${OS}" = "Darwin" ]; then |
+ echo Getting libc++ r"${CLANG_REVISION}" in "${LIBCXX_DIR}" |
+ svn co --force "${LLVM_REPO_URL}/libcxx/trunk@${CLANG_REVISION}" \ |
+ "${LIBCXX_DIR}" |
+fi |
+ |
+# Apply patch for test failing with --disable-pthreads (llvm.org/PR11974) |
+cd "${CLANG_DIR}" |
+svn revert test/Index/crash-recovery-modules.m |
+cat << 'EOF' | |
+--- third_party/llvm/tools/clang/test/Index/crash-recovery-modules.m (revision 202554) |
++++ third_party/llvm/tools/clang/test/Index/crash-recovery-modules.m (working copy) |
+@@ -12,6 +12,8 @@ |
+ |
+ // REQUIRES: crash-recovery |
+ // REQUIRES: shell |
++// XFAIL: * |
++// (PR11974) |
+ |
+ @import Crash; |
+EOF |
+patch -p4 |
+cd - |
+ |
+# Temporary patches to make build on android work. |
+# Merge LLVM r202793, r203601 |
+cd "${COMPILER_RT_DIR}" |
+svn revert lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc |
+svn revert make/platform/clang_linux.mk |
+cat << 'EOF' | |
+Index: compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc |
+=================================================================== |
+--- compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc (original) |
++++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc Tue Mar 11 15:23:59 2014 |
+@@ -32,18 +32,10 @@ |
+ // C++ demangling function, as required by Itanium C++ ABI. This is weak, |
+ // because we do not require a C++ ABI library to be linked to a program |
+ // using sanitizers; if it's not present, we'll just use the mangled name. |
+-// |
+-// On Android, this is not weak, because we are using shared runtime library |
+-// AND static libstdc++, and there is no good way to conditionally export |
+-// __cxa_demangle. By making this a non-weak symbol, we statically link |
+-// __cxa_demangle into ASan runtime library. |
+ namespace __cxxabiv1 { |
+- extern "C" |
+-#if !SANITIZER_ANDROID |
+- SANITIZER_WEAK_ATTRIBUTE |
+-#endif |
+- char *__cxa_demangle(const char *mangled, char *buffer, size_t *length, |
+- int *status); |
++ extern "C" SANITIZER_WEAK_ATTRIBUTE |
++ char *__cxa_demangle(const char *mangled, char *buffer, |
++ size_t *length, int *status); |
+ } |
+ |
+ namespace __sanitizer { |
+@@ -55,7 +47,7 @@ static const char *DemangleCXXABI(const |
+ // own demangler (libc++abi's implementation could be adapted so that |
+ // it does not allocate). For now, we just call it anyway, and we leak |
+ // the returned value. |
+- if (SANITIZER_ANDROID || &__cxxabiv1::__cxa_demangle) |
++ if (__cxxabiv1::__cxa_demangle) |
+ if (const char *demangled_name = |
+ __cxxabiv1::__cxa_demangle(name, 0, 0, 0)) |
+ return demangled_name; |
+ |
+Index: compiler-rt/trunk/make/platform/clang_linux.mk |
+=================================================================== |
+--- compiler-rt/trunk/make/platform/clang_linux.mk (original) |
++++ compiler-rt/trunk/make/platform/clang_linux.mk Tue Mar 4 01:17:38 2014 |
+@@ -110,9 +110,10 @@ ANDROID_COMMON_FLAGS := -target arm-linu |
+ --sysroot=$(LLVM_ANDROID_TOOLCHAIN_DIR)/sysroot \ |
+ -B$(LLVM_ANDROID_TOOLCHAIN_DIR) |
+ CFLAGS.asan-arm-android := $(CFLAGS) -fPIC -fno-builtin \ |
+- $(ANDROID_COMMON_FLAGS) -fno-rtti |
++ $(ANDROID_COMMON_FLAGS) -fno-rtti \ |
++ -I$(ProjSrcRoot)/third_party/android/include |
+ LDFLAGS.asan-arm-android := $(LDFLAGS) $(ANDROID_COMMON_FLAGS) -ldl -lm -llog \ |
+- -Wl,-soname=libclang_rt.asan-arm-android.so -Wl,-z,defs |
++ -lstdc++ -Wl,-soname=libclang_rt.asan-arm-android.so -Wl,-z,defs |
+ |
+ # Use our stub SDK as the sysroot to support more portable building. For now we |
+ # just do this for the core module, because the stub SDK doesn't have |
+EOF |
+patch -p2 |
+cd - |
+ |
+# Merge LLVM r203635 |
+cd "${LLVM_DIR}" |
+svn revert lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp |
+svn revert test/CodeGen/ARM/debug-frame-large-stack.ll |
+svn revert test/CodeGen/ARM/debug-frame-vararg.ll |
+svn revert test/CodeGen/ARM/debug-frame.ll |
+cat << 'EOF' | |
+Index: lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp |
+=================================================================== |
+--- lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp |
++++ lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp |
+@@ -54,4 +54,7 @@ |
+ UseParensForSymbolVariant = true; |
+ |
+ UseIntegratedAssembler = true; |
++ |
++ // gas doesn't handle VFP register names in cfi directives. |
++ DwarfRegNumForCFI = true; |
+ } |
+Index: test/CodeGen/ARM/debug-frame-large-stack.ll |
+=================================================================== |
+--- test/CodeGen/ARM/debug-frame-large-stack.ll |
++++ test/CodeGen/ARM/debug-frame-large-stack.ll |
+@@ -42,8 +42,8 @@ |
+ ; CHECK-ARM: .cfi_startproc |
+ ; CHECK-ARM: push {r4, r5} |
+ ; CHECK-ARM: .cfi_def_cfa_offset 8 |
+-; CHECK-ARM: .cfi_offset r5, -4 |
+-; CHECK-ARM: .cfi_offset r4, -8 |
++; CHECK-ARM: .cfi_offset 5, -4 |
++; CHECK-ARM: .cfi_offset 4, -8 |
+ ; CHECK-ARM: sub sp, sp, #72 |
+ ; CHECK-ARM: sub sp, sp, #4096 |
+ ; CHECK-ARM: .cfi_def_cfa_offset 4176 |
+@@ -54,7 +54,7 @@ |
+ ; CHECK-ARM-FP_ELIM: push {r4, r5} |
+ ; CHECK-ARM-FP_ELIM: .cfi_def_cfa_offset 8 |
+ ; CHECK-ARM-FP_ELIM: .cfi_offset 54, -4 |
+-; CHECK-ARM-FP_ELIM: .cfi_offset r4, -8 |
++; CHECK-ARM-FP_ELIM: .cfi_offset 4, -8 |
+ ; CHECK-ARM-FP_ELIM: sub sp, sp, #72 |
+ ; CHECK-ARM-FP_ELIM: sub sp, sp, #4096 |
+ ; CHECK-ARM-FP_ELIM: .cfi_def_cfa_offset 4176 |
+@@ -73,11 +73,11 @@ |
+ ; CHECK-ARM: .cfi_startproc |
+ ; CHECK-ARM: push {r4, r5, r11} |
+ ; CHECK-ARM: .cfi_def_cfa_offset 12 |
+-; CHECK-ARM: .cfi_offset r11, -4 |
+-; CHECK-ARM: .cfi_offset r5, -8 |
+-; CHECK-ARM: .cfi_offset r4, -12 |
++; CHECK-ARM: .cfi_offset 11, -4 |
++; CHECK-ARM: .cfi_offset 5, -8 |
++; CHECK-ARM: .cfi_offset 4, -12 |
+ ; CHECK-ARM: add r11, sp, #8 |
+-; CHECK-ARM: .cfi_def_cfa r11, 4 |
++; CHECK-ARM: .cfi_def_cfa 11, 4 |
+ ; CHECK-ARM: sub sp, sp, #20 |
+ ; CHECK-ARM: sub sp, sp, #805306368 |
+ ; CHECK-ARM: bic sp, sp, #15 |
+@@ -87,11 +87,11 @@ |
+ ; CHECK-ARM-FP-ELIM: .cfi_startproc |
+ ; CHECK-ARM-FP-ELIM: push {r4, r5, r11} |
+ ; CHECK-ARM-FP-ELIM: .cfi_def_cfa_offset 12 |
+-; CHECK-ARM-FP-ELIM: .cfi_offset r11, -4 |
+-; CHECK-ARM-FP-ELIM: .cfi_offset r5, -8 |
+-; CHECK-ARM-FP-ELIM: .cfi_offset r4, -12 |
++; CHECK-ARM-FP-ELIM: .cfi_offset 11, -4 |
++; CHECK-ARM-FP-ELIM: .cfi_offset 5, -8 |
++; CHECK-ARM-FP-ELIM: .cfi_offset 4, -12 |
+ ; CHECK-ARM-FP-ELIM: add r11, sp, #8 |
+-; CHECK-ARM-FP-ELIM: .cfi_def_cfa r11, 4 |
++; CHECK-ARM-FP-ELIM: .cfi_def_cfa 11, 4 |
+ ; CHECK-ARM-FP-ELIM: sub sp, sp, #20 |
+ ; CHECK-ARM-FP-ELIM: sub sp, sp, #805306368 |
+ ; CHECK-ARM-FP-ELIM: bic sp, sp, #15 |
+Index: test/CodeGen/ARM/debug-frame-vararg.ll |
+=================================================================== |
+--- test/CodeGen/ARM/debug-frame-vararg.ll |
++++ test/CodeGen/ARM/debug-frame-vararg.ll |
+@@ -66,8 +66,8 @@ |
+ ; CHECK-FP: .cfi_def_cfa_offset 16 |
+ ; CHECK-FP: push {r4, lr} |
+ ; CHECK-FP: .cfi_def_cfa_offset 24 |
+-; CHECK-FP: .cfi_offset lr, -20 |
+-; CHECK-FP: .cfi_offset r4, -24 |
++; CHECK-FP: .cfi_offset 14, -20 |
++; CHECK-FP: .cfi_offset 4, -24 |
+ ; CHECK-FP: sub sp, sp, #8 |
+ ; CHECK-FP: .cfi_def_cfa_offset 32 |
+ |
+@@ -77,22 +77,22 @@ |
+ ; CHECK-FP-ELIM: .cfi_def_cfa_offset 16 |
+ ; CHECK-FP-ELIM: push {r4, r11, lr} |
+ ; CHECK-FP-ELIM: .cfi_def_cfa_offset 28 |
+-; CHECK-FP-ELIM: .cfi_offset lr, -20 |
+-; CHECK-FP-ELIM: .cfi_offset r11, -24 |
+-; CHECK-FP-ELIM: .cfi_offset r4, -28 |
++; CHECK-FP-ELIM: .cfi_offset 14, -20 |
++; CHECK-FP-ELIM: .cfi_offset 11, -24 |
++; CHECK-FP-ELIM: .cfi_offset 4, -28 |
+ ; CHECK-FP-ELIM: add r11, sp, #4 |
+-; CHECK-FP-ELIM: .cfi_def_cfa r11, 24 |
++; CHECK-FP-ELIM: .cfi_def_cfa 11, 24 |
+ |
+ ; CHECK-THUMB-FP-LABEL: sum |
+ ; CHECK-THUMB-FP: .cfi_startproc |
+ ; CHECK-THUMB-FP: sub sp, #16 |
+ ; CHECK-THUMB-FP: .cfi_def_cfa_offset 16 |
+ ; CHECK-THUMB-FP: push {r4, r5, r7, lr} |
+ ; CHECK-THUMB-FP: .cfi_def_cfa_offset 32 |
+-; CHECK-THUMB-FP: .cfi_offset lr, -20 |
+-; CHECK-THUMB-FP: .cfi_offset r7, -24 |
+-; CHECK-THUMB-FP: .cfi_offset r5, -28 |
+-; CHECK-THUMB-FP: .cfi_offset r4, -32 |
++; CHECK-THUMB-FP: .cfi_offset 14, -20 |
++; CHECK-THUMB-FP: .cfi_offset 7, -24 |
++; CHECK-THUMB-FP: .cfi_offset 5, -28 |
++; CHECK-THUMB-FP: .cfi_offset 4, -32 |
+ ; CHECK-THUMB-FP: sub sp, #8 |
+ ; CHECK-THUMB-FP: .cfi_def_cfa_offset 40 |
+ |
+@@ -102,12 +102,12 @@ |
+ ; CHECK-THUMB-FP-ELIM: .cfi_def_cfa_offset 16 |
+ ; CHECK-THUMB-FP-ELIM: push {r4, r5, r7, lr} |
+ ; CHECK-THUMB-FP-ELIM: .cfi_def_cfa_offset 32 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset lr, -20 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset r7, -24 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset r5, -28 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset r4, -32 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 14, -20 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 7, -24 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 5, -28 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 4, -32 |
+ ; CHECK-THUMB-FP-ELIM: add r7, sp, #8 |
+-; CHECK-THUMB-FP-ELIM: .cfi_def_cfa r7, 24 |
++; CHECK-THUMB-FP-ELIM: .cfi_def_cfa 7, 24 |
+ |
+ define i32 @sum(i32 %count, ...) { |
+ entry: |
+Index: test/CodeGen/ARM/debug-frame.ll |
+=================================================================== |
+--- test/CodeGen/ARM/debug-frame.ll |
++++ test/CodeGen/ARM/debug-frame.ll |
+@@ -163,131 +163,131 @@ |
+ ; CHECK-FP: .cfi_startproc |
+ ; CHECK-FP: push {r4, r5, r6, r7, r8, r9, r10, r11, lr} |
+ ; CHECK-FP: .cfi_def_cfa_offset 36 |
+-; CHECK-FP: .cfi_offset lr, -4 |
+-; CHECK-FP: .cfi_offset r11, -8 |
+-; CHECK-FP: .cfi_offset r10, -12 |
+-; CHECK-FP: .cfi_offset r9, -16 |
+-; CHECK-FP: .cfi_offset r8, -20 |
+-; CHECK-FP: .cfi_offset r7, -24 |
+-; CHECK-FP: .cfi_offset r6, -28 |
+-; CHECK-FP: .cfi_offset r5, -32 |
+-; CHECK-FP: .cfi_offset r4, -36 |
++; CHECK-FP: .cfi_offset 14, -4 |
++; CHECK-FP: .cfi_offset 11, -8 |
++; CHECK-FP: .cfi_offset 10, -12 |
++; CHECK-FP: .cfi_offset 9, -16 |
++; CHECK-FP: .cfi_offset 8, -20 |
++; CHECK-FP: .cfi_offset 7, -24 |
++; CHECK-FP: .cfi_offset 6, -28 |
++; CHECK-FP: .cfi_offset 5, -32 |
++; CHECK-FP: .cfi_offset 4, -36 |
+ ; CHECK-FP: add r11, sp, #28 |
+-; CHECK-FP: .cfi_def_cfa r11, 8 |
++; CHECK-FP: .cfi_def_cfa 11, 8 |
+ ; CHECK-FP: sub sp, sp, #28 |
+ ; CHECK-FP: .cfi_endproc |
+ |
+ ; CHECK-FP-ELIM-LABEL: _Z4testiiiiiddddd: |
+ ; CHECK-FP-ELIM: .cfi_startproc |
+ ; CHECK-FP-ELIM: push {r4, r5, r6, r7, r8, r9, r10, r11, lr} |
+ ; CHECK-FP-ELIM: .cfi_def_cfa_offset 36 |
+-; CHECK-FP-ELIM: .cfi_offset lr, -4 |
+-; CHECK-FP-ELIM: .cfi_offset r11, -8 |
+-; CHECK-FP-ELIM: .cfi_offset r10, -12 |
+-; CHECK-FP-ELIM: .cfi_offset r9, -16 |
+-; CHECK-FP-ELIM: .cfi_offset r8, -20 |
+-; CHECK-FP-ELIM: .cfi_offset r7, -24 |
+-; CHECK-FP-ELIM: .cfi_offset r6, -28 |
+-; CHECK-FP-ELIM: .cfi_offset r5, -32 |
+-; CHECK-FP-ELIM: .cfi_offset r4, -36 |
++; CHECK-FP-ELIM: .cfi_offset 14, -4 |
++; CHECK-FP-ELIM: .cfi_offset 11, -8 |
++; CHECK-FP-ELIM: .cfi_offset 10, -12 |
++; CHECK-FP-ELIM: .cfi_offset 9, -16 |
++; CHECK-FP-ELIM: .cfi_offset 8, -20 |
++; CHECK-FP-ELIM: .cfi_offset 7, -24 |
++; CHECK-FP-ELIM: .cfi_offset 6, -28 |
++; CHECK-FP-ELIM: .cfi_offset 5, -32 |
++; CHECK-FP-ELIM: .cfi_offset 4, -36 |
+ ; CHECK-FP-ELIM: sub sp, sp, #28 |
+ ; CHECK-FP-ELIM: .cfi_def_cfa_offset 64 |
+ ; CHECK-FP-ELIM: .cfi_endproc |
+ |
+ ; CHECK-V7-FP-LABEL: _Z4testiiiiiddddd: |
+ ; CHECK-V7-FP: .cfi_startproc |
+ ; CHECK-V7-FP: push {r4, r11, lr} |
+ ; CHECK-V7-FP: .cfi_def_cfa_offset 12 |
+-; CHECK-V7-FP: .cfi_offset lr, -4 |
+-; CHECK-V7-FP: .cfi_offset r11, -8 |
+-; CHECK-V7-FP: .cfi_offset r4, -12 |
++; CHECK-V7-FP: .cfi_offset 14, -4 |
++; CHECK-V7-FP: .cfi_offset 11, -8 |
++; CHECK-V7-FP: .cfi_offset 4, -12 |
+ ; CHECK-V7-FP: add r11, sp, #4 |
+-; CHECK-V7-FP: .cfi_def_cfa r11, 8 |
++; CHECK-V7-FP: .cfi_def_cfa 11, 8 |
+ ; CHECK-V7-FP: vpush {d8, d9, d10, d11, d12} |
+-; CHECK-V7-FP: .cfi_offset d12, -24 |
+-; CHECK-V7-FP: .cfi_offset d11, -32 |
+-; CHECK-V7-FP: .cfi_offset d10, -40 |
+-; CHECK-V7-FP: .cfi_offset d9, -48 |
+-; CHECK-V7-FP: .cfi_offset d8, -56 |
++; CHECK-V7-FP: .cfi_offset 268, -24 |
++; CHECK-V7-FP: .cfi_offset 267, -32 |
++; CHECK-V7-FP: .cfi_offset 266, -40 |
++; CHECK-V7-FP: .cfi_offset 265, -48 |
++; CHECK-V7-FP: .cfi_offset 264, -56 |
+ ; CHECK-V7-FP: sub sp, sp, #28 |
+ ; CHECK-V7-FP: .cfi_endproc |
+ |
+ ; CHECK-V7-FP-ELIM-LABEL: _Z4testiiiiiddddd: |
+ ; CHECK-V7-FP-ELIM: .cfi_startproc |
+ ; CHECK-V7-FP-ELIM: push {r4, lr} |
+ ; CHECK-V7-FP-ELIM: .cfi_def_cfa_offset 8 |
+-; CHECK-V7-FP-ELIM: .cfi_offset lr, -4 |
+-; CHECK-V7-FP-ELIM: .cfi_offset r4, -8 |
++; CHECK-V7-FP-ELIM: .cfi_offset 14, -4 |
++; CHECK-V7-FP-ELIM: .cfi_offset 4, -8 |
+ ; CHECK-V7-FP-ELIM: vpush {d8, d9, d10, d11, d12} |
+ ; CHECK-V7-FP-ELIM: .cfi_def_cfa_offset 48 |
+-; CHECK-V7-FP-ELIM: .cfi_offset d12, -16 |
+-; CHECK-V7-FP-ELIM: .cfi_offset d11, -24 |
+-; CHECK-V7-FP-ELIM: .cfi_offset d10, -32 |
+-; CHECK-V7-FP-ELIM: .cfi_offset d9, -40 |
+-; CHECK-V7-FP-ELIM: .cfi_offset d8, -48 |
++; CHECK-V7-FP-ELIM: .cfi_offset 268, -16 |
++; CHECK-V7-FP-ELIM: .cfi_offset 267, -24 |
++; CHECK-V7-FP-ELIM: .cfi_offset 266, -32 |
++; CHECK-V7-FP-ELIM: .cfi_offset 265, -40 |
++; CHECK-V7-FP-ELIM: .cfi_offset 264, -48 |
+ ; CHECK-V7-FP-ELIM: sub sp, sp, #24 |
+ ; CHECK-V7-FP-ELIM: .cfi_def_cfa_offset 72 |
+ ; CHECK-V7-FP-ELIM: .cfi_endproc |
+ |
+ ; CHECK-THUMB-FP-LABEL: _Z4testiiiiiddddd: |
+ ; CHECK-THUMB-FP: .cfi_startproc |
+ ; CHECK-THUMB-FP: push {r4, r5, r6, r7, lr} |
+ ; CHECK-THUMB-FP: .cfi_def_cfa_offset 20 |
+-; CHECK-THUMB-FP: .cfi_offset lr, -4 |
+-; CHECK-THUMB-FP: .cfi_offset r7, -8 |
+-; CHECK-THUMB-FP: .cfi_offset r6, -12 |
+-; CHECK-THUMB-FP: .cfi_offset r5, -16 |
+-; CHECK-THUMB-FP: .cfi_offset r4, -20 |
++; CHECK-THUMB-FP: .cfi_offset 14, -4 |
++; CHECK-THUMB-FP: .cfi_offset 7, -8 |
++; CHECK-THUMB-FP: .cfi_offset 6, -12 |
++; CHECK-THUMB-FP: .cfi_offset 5, -16 |
++; CHECK-THUMB-FP: .cfi_offset 4, -20 |
+ ; CHECK-THUMB-FP: add r7, sp, #12 |
+-; CHECK-THUMB-FP: .cfi_def_cfa r7, 8 |
++; CHECK-THUMB-FP: .cfi_def_cfa 7, 8 |
+ ; CHECK-THUMB-FP: sub sp, #60 |
+ ; CHECK-THUMB-FP: .cfi_endproc |
+ |
+ ; CHECK-THUMB-FP-ELIM-LABEL: _Z4testiiiiiddddd: |
+ ; CHECK-THUMB-FP-ELIM: .cfi_startproc |
+ ; CHECK-THUMB-FP-ELIM: push {r4, r5, r6, r7, lr} |
+ ; CHECK-THUMB-FP-ELIM: .cfi_def_cfa_offset 20 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset lr, -4 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset r7, -8 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset r6, -12 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset r5, -16 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset r4, -20 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 14, -4 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 7, -8 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 6, -12 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 5, -16 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 4, -20 |
+ ; CHECK-THUMB-FP-ELIM: sub sp, #60 |
+ ; CHECK-THUMB-FP-ELIM: .cfi_def_cfa_offset 80 |
+ ; CHECK-THUMB-FP-ELIM: .cfi_endproc |
+ |
+ ; CHECK-THUMB-V7-FP-LABEL: _Z4testiiiiiddddd: |
+ ; CHECK-THUMB-V7-FP: .cfi_startproc |
+ ; CHECK-THUMB-V7-FP: push.w {r4, r7, r11, lr} |
+ ; CHECK-THUMB-V7-FP: .cfi_def_cfa_offset 16 |
+-; CHECK-THUMB-V7-FP: .cfi_offset lr, -4 |
+-; CHECK-THUMB-V7-FP: .cfi_offset r11, -8 |
+-; CHECK-THUMB-V7-FP: .cfi_offset r7, -12 |
+-; CHECK-THUMB-V7-FP: .cfi_offset r4, -16 |
++; CHECK-THUMB-V7-FP: .cfi_offset 14, -4 |
++; CHECK-THUMB-V7-FP: .cfi_offset 11, -8 |
++; CHECK-THUMB-V7-FP: .cfi_offset 7, -12 |
++; CHECK-THUMB-V7-FP: .cfi_offset 4, -16 |
+ ; CHECK-THUMB-V7-FP: add r7, sp, #4 |
+-; CHECK-THUMB-V7-FP: .cfi_def_cfa r7, 12 |
++; CHECK-THUMB-V7-FP: .cfi_def_cfa 7, 12 |
+ ; CHECK-THUMB-V7-FP: vpush {d8, d9, d10, d11, d12} |
+-; CHECK-THUMB-V7-FP: .cfi_offset d12, -24 |
+-; CHECK-THUMB-V7-FP: .cfi_offset d11, -32 |
+-; CHECK-THUMB-V7-FP: .cfi_offset d10, -40 |
+-; CHECK-THUMB-V7-FP: .cfi_offset d9, -48 |
+-; CHECK-THUMB-V7-FP: .cfi_offset d8, -56 |
++; CHECK-THUMB-V7-FP: .cfi_offset 268, -24 |
++; CHECK-THUMB-V7-FP: .cfi_offset 267, -32 |
++; CHECK-THUMB-V7-FP: .cfi_offset 266, -40 |
++; CHECK-THUMB-V7-FP: .cfi_offset 265, -48 |
++; CHECK-THUMB-V7-FP: .cfi_offset 264, -56 |
+ ; CHECK-THUMB-V7-FP: sub sp, #24 |
+ ; CHECK-THUMB-V7-FP: .cfi_endproc |
+ |
+ ; CHECK-THUMB-V7-FP-ELIM-LABEL: _Z4testiiiiiddddd: |
+ ; CHECK-THUMB-V7-FP-ELIM: .cfi_startproc |
+ ; CHECK-THUMB-V7-FP-ELIM: push {r4, lr} |
+ ; CHECK-THUMB-V7-FP-ELIM: .cfi_def_cfa_offset 8 |
+-; CHECK-THUMB-V7-FP-ELIM: .cfi_offset lr, -4 |
+-; CHECK-THUMB-V7-FP-ELIM: .cfi_offset r4, -8 |
++; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 14, -4 |
++; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 4, -8 |
+ ; CHECK-THUMB-V7-FP-ELIM: vpush {d8, d9, d10, d11, d12} |
+ ; CHECK-THUMB-V7-FP-ELIM: .cfi_def_cfa_offset 48 |
+-; CHECK-THUMB-V7-FP-ELIM: .cfi_offset d12, -16 |
+-; CHECK-THUMB-V7-FP-ELIM: .cfi_offset d11, -24 |
+-; CHECK-THUMB-V7-FP-ELIM: .cfi_offset d10, -32 |
+-; CHECK-THUMB-V7-FP-ELIM: .cfi_offset d9, -40 |
+-; CHECK-THUMB-V7-FP-ELIM: .cfi_offset d8, -48 |
++; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 268, -16 |
++; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 267, -24 |
++; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 266, -32 |
++; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 265, -40 |
++; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 264, -48 |
+ ; CHECK-THUMB-V7-FP-ELIM: sub sp, #24 |
+ ; CHECK-THUMB-V7-FP-ELIM: .cfi_def_cfa_offset 72 |
+ ; CHECK-THUMB-V7-FP-ELIM: .cfi_endproc |
+@@ -309,81 +309,81 @@ |
+ ; CHECK-FP: .cfi_startproc |
+ ; CHECK-FP: push {r11, lr} |
+ ; CHECK-FP: .cfi_def_cfa_offset 8 |
+-; CHECK-FP: .cfi_offset lr, -4 |
+-; CHECK-FP: .cfi_offset r11, -8 |
++; CHECK-FP: .cfi_offset 14, -4 |
++; CHECK-FP: .cfi_offset 11, -8 |
+ ; CHECK-FP: mov r11, sp |
+-; CHECK-FP: .cfi_def_cfa_register r11 |
++; CHECK-FP: .cfi_def_cfa_register 11 |
+ ; CHECK-FP: pop {r11, lr} |
+ ; CHECK-FP: mov pc, lr |
+ ; CHECK-FP: .cfi_endproc |
+ |
+ ; CHECK-FP-ELIM-LABEL: test2: |
+ ; CHECK-FP-ELIM: .cfi_startproc |
+ ; CHECK-FP-ELIM: push {r11, lr} |
+ ; CHECK-FP-ELIM: .cfi_def_cfa_offset 8 |
+-; CHECK-FP-ELIM: .cfi_offset lr, -4 |
+-; CHECK-FP-ELIM: .cfi_offset r11, -8 |
++; CHECK-FP-ELIM: .cfi_offset 14, -4 |
++; CHECK-FP-ELIM: .cfi_offset 11, -8 |
+ ; CHECK-FP-ELIM: pop {r11, lr} |
+ ; CHECK-FP-ELIM: mov pc, lr |
+ ; CHECK-FP-ELIM: .cfi_endproc |
+ |
+ ; CHECK-V7-FP-LABEL: test2: |
+ ; CHECK-V7-FP: .cfi_startproc |
+ ; CHECK-V7-FP: push {r11, lr} |
+ ; CHECK-V7-FP: .cfi_def_cfa_offset 8 |
+-; CHECK-V7-FP: .cfi_offset lr, -4 |
+-; CHECK-V7-FP: .cfi_offset r11, -8 |
++; CHECK-V7-FP: .cfi_offset 14, -4 |
++; CHECK-V7-FP: .cfi_offset 11, -8 |
+ ; CHECK-V7-FP: mov r11, sp |
+-; CHECK-V7-FP: .cfi_def_cfa_register r11 |
++; CHECK-V7-FP: .cfi_def_cfa_register 11 |
+ ; CHECK-V7-FP: pop {r11, pc} |
+ ; CHECK-V7-FP: .cfi_endproc |
+ |
+ ; CHECK-V7-FP-ELIM-LABEL: test2: |
+ ; CHECK-V7-FP-ELIM: .cfi_startproc |
+ ; CHECK-V7-FP-ELIM: push {r11, lr} |
+ ; CHECK-V7-FP-ELIM: .cfi_def_cfa_offset 8 |
+-; CHECK-V7-FP-ELIM: .cfi_offset lr, -4 |
+-; CHECK-V7-FP-ELIM: .cfi_offset r11, -8 |
++; CHECK-V7-FP-ELIM: .cfi_offset 14, -4 |
++; CHECK-V7-FP-ELIM: .cfi_offset 11, -8 |
+ ; CHECK-V7-FP-ELIM: pop {r11, pc} |
+ ; CHECK-V7-FP-ELIM: .cfi_endproc |
+ |
+ ; CHECK-THUMB-FP-LABEL: test2: |
+ ; CHECK-THUMB-FP: .cfi_startproc |
+ ; CHECK-THUMB-FP: push {r7, lr} |
+ ; CHECK-THUMB-FP: .cfi_def_cfa_offset 8 |
+-; CHECK-THUMB-FP: .cfi_offset lr, -4 |
+-; CHECK-THUMB-FP: .cfi_offset r7, -8 |
++; CHECK-THUMB-FP: .cfi_offset 14, -4 |
++; CHECK-THUMB-FP: .cfi_offset 7, -8 |
+ ; CHECK-THUMB-FP: add r7, sp, #0 |
+-; CHECK-THUMB-FP: .cfi_def_cfa_register r7 |
++; CHECK-THUMB-FP: .cfi_def_cfa_register 7 |
+ ; CHECK-THUMB-FP: pop {r7, pc} |
+ ; CHECK-THUMB-FP: .cfi_endproc |
+ |
+ ; CHECK-THUMB-FP-ELIM-LABEL: test2: |
+ ; CHECK-THUMB-FP-ELIM: .cfi_startproc |
+ ; CHECK-THUMB-FP-ELIM: push {r7, lr} |
+ ; CHECK-THUMB-FP-ELIM: .cfi_def_cfa_offset 8 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset lr, -4 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset r7, -8 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 14, -4 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 7, -8 |
+ ; CHECK-THUMB-FP-ELIM: pop {r7, pc} |
+ ; CHECK-THUMB-FP-ELIM: .cfi_endproc |
+ |
+ ; CHECK-THUMB-V7-FP-LABEL: test2: |
+ ; CHECK-THUMB-V7-FP: .cfi_startproc |
+ ; CHECK-THUMB-V7-FP: push {r7, lr} |
+ ; CHECK-THUMB-V7-FP: .cfi_def_cfa_offset 8 |
+-; CHECK-THUMB-V7-FP: .cfi_offset lr, -4 |
+-; CHECK-THUMB-V7-FP: .cfi_offset r7, -8 |
++; CHECK-THUMB-V7-FP: .cfi_offset 14, -4 |
++; CHECK-THUMB-V7-FP: .cfi_offset 7, -8 |
+ ; CHECK-THUMB-V7-FP: mov r7, sp |
+-; CHECK-THUMB-V7-FP: .cfi_def_cfa_register r7 |
++; CHECK-THUMB-V7-FP: .cfi_def_cfa_register 7 |
+ ; CHECK-THUMB-V7-FP: pop {r7, pc} |
+ ; CHECK-THUMB-V7-FP: .cfi_endproc |
+ |
+ ; CHECK-THUMB-V7-FP-ELIM-LABEL: test2: |
+ ; CHECK-THUMB-V7-FP-ELIM: .cfi_startproc |
+ ; CHECK-THUMB-V7-FP-ELIM: push.w {r11, lr} |
+ ; CHECK-THUMB-V7-FP-ELIM: .cfi_def_cfa_offset 8 |
+-; CHECK-THUMB-V7-FP-ELIM: .cfi_offset lr, -4 |
+-; CHECK-THUMB-V7-FP-ELIM: .cfi_offset r11, -8 |
++; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 14, -4 |
++; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 11, -8 |
+ ; CHECK-THUMB-V7-FP-ELIM: pop.w {r11, pc} |
+ ; CHECK-THUMB-V7-FP-ELIM: .cfi_endproc |
+ |
+@@ -413,97 +413,97 @@ |
+ ; CHECK-FP: .cfi_startproc |
+ ; CHECK-FP: push {r4, r5, r11, lr} |
+ ; CHECK-FP: .cfi_def_cfa_offset 16 |
+-; CHECK-FP: .cfi_offset lr, -4 |
+-; CHECK-FP: .cfi_offset r11, -8 |
+-; CHECK-FP: .cfi_offset r5, -12 |
+-; CHECK-FP: .cfi_offset r4, -16 |
++; CHECK-FP: .cfi_offset 14, -4 |
++; CHECK-FP: .cfi_offset 11, -8 |
++; CHECK-FP: .cfi_offset 5, -12 |
++; CHECK-FP: .cfi_offset 4, -16 |
+ ; CHECK-FP: add r11, sp, #8 |
+-; CHECK-FP: .cfi_def_cfa r11, 8 |
++; CHECK-FP: .cfi_def_cfa 11, 8 |
+ ; CHECK-FP: pop {r4, r5, r11, lr} |
+ ; CHECK-FP: mov pc, lr |
+ ; CHECK-FP: .cfi_endproc |
+ |
+ ; CHECK-FP-ELIM-LABEL: test3: |
+ ; CHECK-FP-ELIM: .cfi_startproc |
+ ; CHECK-FP-ELIM: push {r4, r5, r11, lr} |
+ ; CHECK-FP-ELIM: .cfi_def_cfa_offset 16 |
+-; CHECK-FP-ELIM: .cfi_offset lr, -4 |
+-; CHECK-FP-ELIM: .cfi_offset r11, -8 |
+-; CHECK-FP-ELIM: .cfi_offset r5, -12 |
+-; CHECK-FP-ELIM: .cfi_offset r4, -16 |
++; CHECK-FP-ELIM: .cfi_offset 14, -4 |
++; CHECK-FP-ELIM: .cfi_offset 11, -8 |
++; CHECK-FP-ELIM: .cfi_offset 5, -12 |
++; CHECK-FP-ELIM: .cfi_offset 4, -16 |
+ ; CHECK-FP-ELIM: pop {r4, r5, r11, lr} |
+ ; CHECK-FP-ELIM: mov pc, lr |
+ ; CHECK-FP-ELIM: .cfi_endproc |
+ |
+ ; CHECK-V7-FP-LABEL: test3: |
+ ; CHECK-V7-FP: .cfi_startproc |
+ ; CHECK-V7-FP: push {r4, r5, r11, lr} |
+ ; CHECK-V7-FP: .cfi_def_cfa_offset 16 |
+-; CHECK-V7-FP: .cfi_offset lr, -4 |
+-; CHECK-V7-FP: .cfi_offset r11, -8 |
+-; CHECK-V7-FP: .cfi_offset r5, -12 |
+-; CHECK-V7-FP: .cfi_offset r4, -16 |
++; CHECK-V7-FP: .cfi_offset 14, -4 |
++; CHECK-V7-FP: .cfi_offset 11, -8 |
++; CHECK-V7-FP: .cfi_offset 5, -12 |
++; CHECK-V7-FP: .cfi_offset 4, -16 |
+ ; CHECK-V7-FP: add r11, sp, #8 |
+-; CHECK-V7-FP: .cfi_def_cfa r11, 8 |
++; CHECK-V7-FP: .cfi_def_cfa 11, 8 |
+ ; CHECK-V7-FP: pop {r4, r5, r11, pc} |
+ ; CHECK-V7-FP: .cfi_endproc |
+ |
+ ; CHECK-V7-FP-ELIM-LABEL: test3: |
+ ; CHECK-V7-FP-ELIM: .cfi_startproc |
+ ; CHECK-V7-FP-ELIM: push {r4, r5, r11, lr} |
+ ; CHECK-V7-FP-ELIM: .cfi_def_cfa_offset 16 |
+-; CHECK-V7-FP-ELIM: .cfi_offset lr, -4 |
+-; CHECK-V7-FP-ELIM: .cfi_offset r11, -8 |
+-; CHECK-V7-FP-ELIM: .cfi_offset r5, -12 |
+-; CHECK-V7-FP-ELIM: .cfi_offset r4, -16 |
++; CHECK-V7-FP-ELIM: .cfi_offset 14, -4 |
++; CHECK-V7-FP-ELIM: .cfi_offset 11, -8 |
++; CHECK-V7-FP-ELIM: .cfi_offset 5, -12 |
++; CHECK-V7-FP-ELIM: .cfi_offset 4, -16 |
+ ; CHECK-V7-FP-ELIM: pop {r4, r5, r11, pc} |
+ ; CHECK-V7-FP-ELIM: .cfi_endproc |
+ |
+ ; CHECK-THUMB-FP-LABEL: test3: |
+ ; CHECK-THUMB-FP: .cfi_startproc |
+ ; CHECK-THUMB-FP: push {r4, r5, r7, lr} |
+ ; CHECK-THUMB-FP: .cfi_def_cfa_offset 16 |
+-; CHECK-THUMB-FP: .cfi_offset lr, -4 |
+-; CHECK-THUMB-FP: .cfi_offset r7, -8 |
+-; CHECK-THUMB-FP: .cfi_offset r5, -12 |
+-; CHECK-THUMB-FP: .cfi_offset r4, -16 |
++; CHECK-THUMB-FP: .cfi_offset 14, -4 |
++; CHECK-THUMB-FP: .cfi_offset 7, -8 |
++; CHECK-THUMB-FP: .cfi_offset 5, -12 |
++; CHECK-THUMB-FP: .cfi_offset 4, -16 |
+ ; CHECK-THUMB-FP: add r7, sp, #8 |
+-; CHECK-THUMB-FP: .cfi_def_cfa r7, 8 |
++; CHECK-THUMB-FP: .cfi_def_cfa 7, 8 |
+ ; CHECK-THUMB-FP: pop {r4, r5, r7, pc} |
+ ; CHECK-THUMB-FP: .cfi_endproc |
+ |
+ ; CHECK-THUMB-FP-ELIM-LABEL: test3: |
+ ; CHECK-THUMB-FP-ELIM: .cfi_startproc |
+ ; CHECK-THUMB-FP-ELIM: push {r4, r5, r7, lr} |
+ ; CHECK-THUMB-FP-ELIM: .cfi_def_cfa_offset 16 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset lr, -4 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset r7, -8 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset r5, -12 |
+-; CHECK-THUMB-FP-ELIM: .cfi_offset r4, -16 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 14, -4 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 7, -8 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 5, -12 |
++; CHECK-THUMB-FP-ELIM: .cfi_offset 4, -16 |
+ ; CHECK-THUMB-FP-ELIM: pop {r4, r5, r7, pc} |
+ ; CHECK-THUMB-FP-ELIM: .cfi_endproc |
+ |
+ ; CHECK-THUMB-V7-FP-LABEL: test3: |
+ ; CHECK-THUMB-V7-FP: .cfi_startproc |
+ ; CHECK-THUMB-V7-FP: push {r4, r5, r7, lr} |
+ ; CHECK-THUMB-V7-FP: .cfi_def_cfa_offset 16 |
+-; CHECK-THUMB-V7-FP: .cfi_offset lr, -4 |
+-; CHECK-THUMB-V7-FP: .cfi_offset r7, -8 |
+-; CHECK-THUMB-V7-FP: .cfi_offset r5, -12 |
+-; CHECK-THUMB-V7-FP: .cfi_offset r4, -16 |
++; CHECK-THUMB-V7-FP: .cfi_offset 14, -4 |
++; CHECK-THUMB-V7-FP: .cfi_offset 7, -8 |
++; CHECK-THUMB-V7-FP: .cfi_offset 5, -12 |
++; CHECK-THUMB-V7-FP: .cfi_offset 4, -16 |
+ ; CHECK-THUMB-V7-FP: add r7, sp, #8 |
+-; CHECK-THUMB-V7-FP: .cfi_def_cfa r7, 8 |
++; CHECK-THUMB-V7-FP: .cfi_def_cfa 7, 8 |
+ ; CHECK-THUMB-V7-FP: pop {r4, r5, r7, pc} |
+ ; CHECK-THUMB-V7-FP: .cfi_endproc |
+ |
+ ; CHECK-THUMB-V7-FP-ELIM-LABEL: test3: |
+ ; CHECK-THUMB-V7-FP-ELIM: .cfi_startproc |
+ ; CHECK-THUMB-V7-FP-ELIM: push.w {r4, r5, r11, lr} |
+ ; CHECK-THUMB-V7-FP-ELIM: .cfi_def_cfa_offset 16 |
+-; CHECK-THUMB-V7-FP-ELIM: .cfi_offset lr, -4 |
+-; CHECK-THUMB-V7-FP-ELIM: .cfi_offset r11, -8 |
+-; CHECK-THUMB-V7-FP-ELIM: .cfi_offset r5, -12 |
+-; CHECK-THUMB-V7-FP-ELIM: .cfi_offset r4, -16 |
++; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 14, -4 |
++; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 11, -8 |
++; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 5, -12 |
++; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 4, -16 |
+ ; CHECK-THUMB-V7-FP-ELIM: pop.w {r4, r5, r11, pc} |
+ ; CHECK-THUMB-V7-FP-ELIM: .cfi_endproc |
+ |
+EOF |
+patch -p0 |
+cd - |
+ |
# Echo all commands. |
set -x |
@@ -277,9 +946,21 @@ fi |
export CFLAGS="" |
export CXXFLAGS="" |
+# LLVM uses C++11 starting in llvm 3.5. On Linux, this means libstdc++4.7+ is |
+# needed, on OS X it requires libc++. clang only automatically links to libc++ |
+# when targeting OS X 10.9+, so add stdlib=libc++ explicitly so clang can run on |
+# OS X versions as old as 10.7. |
+# TODO(thakis): Enable this once all bots are on 10.7, and remove the |
+# --disable-compiler-version-checks flags below, and change all |
+# MACOSX_DEPLOYMENT_TARGET values to 10.7. |
+if [ "${OS}" = "Darwin" ]; then |
+ #CXXFLAGS="-stdlib=libc++" |
+ CXXFLAGS="-std=gnu++98" |
+fi |
# Build bootstrap clang if requested. |
if [[ -n "${bootstrap}" ]]; then |
+ ABS_INSTALL_DIR="${PWD}/${LLVM_BOOTSTRAP_INSTALL_DIR}" |
echo "Building bootstrap compiler" |
mkdir -p "${LLVM_BOOTSTRAP_DIR}" |
cd "${LLVM_BOOTSTRAP_DIR}" |
@@ -289,30 +970,33 @@ if [[ -n "${bootstrap}" ]]; then |
# compiler should be as similar to the final compiler as possible, so do |
# keep --disable-threads & co. |
../llvm/configure \ |
+ --disable-compiler-version-checks \ |
--enable-optimized \ |
--enable-targets=host-only \ |
+ --enable-libedit=no \ |
--disable-threads \ |
--disable-pthreads \ |
--without-llvmgcc \ |
- --without-llvmgxx |
+ --without-llvmgxx \ |
+ --prefix="${ABS_INSTALL_DIR}" |
+ fi |
+ |
+ MACOSX_DEPLOYMENT_TARGET=10.5 ${MAKE} -j"${NUM_JOBS}" |
+ if [[ -n "${run_tests}" ]]; then |
+ ${MAKE} check-all |
fi |
+ MACOSX_DEPLOYMENT_TARGET=10.5 ${MAKE} install |
if [[ -n "${gcc_toolchain}" ]]; then |
# Copy that gcc's stdlibc++.so.6 to the build dir, so the bootstrap |
# compiler can start. |
- mkdir -p Release+Asserts/lib |
cp -v "$(${CXX} -print-file-name=libstdc++.so.6)" \ |
- "Release+Asserts/lib/" |
+ "${ABS_INSTALL_DIR}/lib/" |
fi |
- |
- MACOSX_DEPLOYMENT_TARGET=10.5 ${MAKE} -j"${NUM_JOBS}" |
- if [[ -n "${run_tests}" ]]; then |
- ${MAKE} check-all |
- fi |
cd - |
- export CC="${PWD}/${LLVM_BOOTSTRAP_DIR}/Release+Asserts/bin/clang" |
- export CXX="${PWD}/${LLVM_BOOTSTRAP_DIR}/Release+Asserts/bin/clang++" |
+ export CC="${ABS_INSTALL_DIR}/bin/clang" |
+ export CXX="${ABS_INSTALL_DIR}/bin/clang++" |
if [[ -n "${gcc_toolchain}" ]]; then |
# Tell the bootstrap compiler to use a specific gcc prefix to search |
@@ -331,7 +1015,9 @@ mkdir -p "${LLVM_BUILD_DIR}" |
cd "${LLVM_BUILD_DIR}" |
if [[ ! -f ./config.status ]]; then |
../llvm/configure \ |
+ --disable-compiler-version-checks \ |
--enable-optimized \ |
+ --enable-libedit=no \ |
--disable-threads \ |
--disable-pthreads \ |
--without-llvmgcc \ |