Index: tools/clang/scripts/update.sh |
diff --git a/tools/clang/scripts/update.sh b/tools/clang/scripts/update.sh |
index b414a6c6d3bec2952b09c16fe3813236a47b8997..79cf170be6bdeb97e9258d12aa0c23265d54cc11 100755 |
--- a/tools/clang/scripts/update.sh |
+++ b/tools/clang/scripts/update.sh |
@@ -8,7 +8,7 @@ |
# 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=202555 |
+CLANG_REVISION=204777 |
THIS_DIR="$(dirname "${0}")" |
LLVM_DIR="${THIS_DIR}/../../../third_party/llvm" |
@@ -258,6 +258,22 @@ if [[ -n "${with_android}" ]] && ! [[ -d "${ANDROID_NDK_DIR}" ]]; then |
exit 1 |
fi |
+# Revert previous temporary patches. |
+if [[ -d "${COMPILER_RT_DIR}" ]]; then |
+ pushd "${COMPILER_RT_DIR}" |
+ svn revert lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc |
+ svn revert make/platform/clang_linux.mk |
+ popd |
+fi |
+if [[ -d "${LLVM_DIR}" ]]; then |
+ pushd "${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 |
+ popd |
+fi |
+ |
echo Getting LLVM r"${CLANG_REVISION}" in "${LLVM_DIR}" |
if ! svn co --force "${LLVM_REPO_URL}/llvm/trunk@${CLANG_REVISION}" \ |
"${LLVM_DIR}"; then |
@@ -290,7 +306,7 @@ if [ "${OS}" = "Darwin" ]; then |
fi |
# Apply patch for test failing with --disable-pthreads (llvm.org/PR11974) |
-cd "${CLANG_DIR}" |
+pushd "${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) |
@@ -305,648 +321,7 @@ cat << 'EOF' | |
@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 - |
+popd |
# Echo all commands. |
set -x |