Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(71)

Side by Side Diff: trunk/src/tools/clang/scripts/update.sh

Issue 203313004: Revert 257618 "roll clang 198389:202554" (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « trunk/src/tools/clang/scripts/plugin_flags.sh ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env bash 1 #!/usr/bin/env bash
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 # This script will check out llvm and clang into third_party/llvm and build it. 6 # This script will check out llvm and clang into third_party/llvm and build it.
7 7
8 # Do NOT CHANGE this if you don't know what you're doing -- see 8 # Do NOT CHANGE this if you don't know what you're doing -- see
9 # https://code.google.com/p/chromium/wiki/UpdatingClang 9 # https://code.google.com/p/chromium/wiki/UpdatingClang
10 # Reverting problematic clang rolls is safe, though. 10 # Reverting problematic clang rolls is safe, though.
11 CLANG_REVISION=202554 11 CLANG_REVISION=198389
12 12
13 THIS_DIR="$(dirname "${0}")" 13 THIS_DIR="$(dirname "${0}")"
14 LLVM_DIR="${THIS_DIR}/../../../third_party/llvm" 14 LLVM_DIR="${THIS_DIR}/../../../third_party/llvm"
15 LLVM_BUILD_DIR="${LLVM_DIR}/../llvm-build" 15 LLVM_BUILD_DIR="${LLVM_DIR}/../llvm-build"
16 LLVM_BOOTSTRAP_DIR="${LLVM_DIR}/../llvm-bootstrap" 16 LLVM_BOOTSTRAP_DIR="${LLVM_DIR}/../llvm-bootstrap"
17 LLVM_BOOTSTRAP_INSTALL_DIR="${LLVM_DIR}/../llvm-bootstrap-install"
18 CLANG_DIR="${LLVM_DIR}/tools/clang" 17 CLANG_DIR="${LLVM_DIR}/tools/clang"
19 CLANG_TOOLS_EXTRA_DIR="${CLANG_DIR}/tools/extra" 18 CLANG_TOOLS_EXTRA_DIR="${CLANG_DIR}/tools/extra"
20 COMPILER_RT_DIR="${LLVM_DIR}/projects/compiler-rt" 19 COMPILER_RT_DIR="${LLVM_DIR}/projects/compiler-rt"
21 LIBCXX_DIR="${LLVM_DIR}/projects/libcxx"
22 ANDROID_NDK_DIR="${LLVM_DIR}/../android_tools/ndk" 20 ANDROID_NDK_DIR="${LLVM_DIR}/../android_tools/ndk"
23 STAMP_FILE="${LLVM_BUILD_DIR}/cr_build_revision" 21 STAMP_FILE="${LLVM_BUILD_DIR}/cr_build_revision"
24 22
25 # Use both the clang revision and the plugin revisions to test for updates. 23 # Use both the clang revision and the plugin revisions to test for updates.
26 BLINKGCPLUGIN_REVISION=\ 24 BLINKGCPLUGIN_REVISION=\
27 $(grep LIBRARYNAME "$THIS_DIR"/../blink_gc_plugin/Makefile \ 25 $(grep LIBRARYNAME "$THIS_DIR"/../blink_gc_plugin/Makefile \
28 | cut -d '_' -f 2) 26 | cut -d '_' -f 2)
29 CLANG_AND_PLUGINS_REVISION="${CLANG_REVISION}-${BLINKGCPLUGIN_REVISION}" 27 CLANG_AND_PLUGINS_REVISION="${CLANG_REVISION}-${BLINKGCPLUGIN_REVISION}"
30 28
31 # ${A:-a} returns $A if it's set, a else. 29 # ${A:-a} returns $A if it's set, a else.
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after
254 svn co --force "${LLVM_REPO_URL}/llvm/trunk@${CLANG_REVISION}" "${LLVM_DIR}" 252 svn co --force "${LLVM_REPO_URL}/llvm/trunk@${CLANG_REVISION}" "${LLVM_DIR}"
255 fi 253 fi
256 254
257 echo Getting clang r"${CLANG_REVISION}" in "${CLANG_DIR}" 255 echo Getting clang r"${CLANG_REVISION}" in "${CLANG_DIR}"
258 svn co --force "${LLVM_REPO_URL}/cfe/trunk@${CLANG_REVISION}" "${CLANG_DIR}" 256 svn co --force "${LLVM_REPO_URL}/cfe/trunk@${CLANG_REVISION}" "${CLANG_DIR}"
259 257
260 echo Getting compiler-rt r"${CLANG_REVISION}" in "${COMPILER_RT_DIR}" 258 echo Getting compiler-rt r"${CLANG_REVISION}" in "${COMPILER_RT_DIR}"
261 svn co --force "${LLVM_REPO_URL}/compiler-rt/trunk@${CLANG_REVISION}" \ 259 svn co --force "${LLVM_REPO_URL}/compiler-rt/trunk@${CLANG_REVISION}" \
262 "${COMPILER_RT_DIR}" 260 "${COMPILER_RT_DIR}"
263 261
264 # clang needs a libc++ checkout, else -stdlib=libc++ won't find includes
265 # (i.e. this is needed for bootstrap builds).
266 if [ "${OS}" = "Darwin" ]; then
267 echo Getting libc++ r"${CLANG_REVISION}" in "${LIBCXX_DIR}"
268 svn co --force "${LLVM_REPO_URL}/libcxx/trunk@${CLANG_REVISION}" \
269 "${LIBCXX_DIR}"
270 fi
271
272 # Apply patch for test failing with --disable-pthreads (llvm.org/PR11974)
273 cd "${CLANG_DIR}"
274 svn revert test/Index/crash-recovery-modules.m
275 cat << 'EOF' |
276 --- third_party/llvm/tools/clang/test/Index/crash-recovery-modules.m (revisio n 202554)
277 +++ third_party/llvm/tools/clang/test/Index/crash-recovery-modules.m (working copy)
278 @@ -12,6 +12,8 @@
279
280 // REQUIRES: crash-recovery
281 // REQUIRES: shell
282 +// XFAIL: *
283 +// (PR11974)
284
285 @import Crash;
286 EOF
287 patch -p4
288 cd -
289
290 # Temporary patches to make build on android work.
291 # Merge LLVM r202793, r203601
292 cd "${COMPILER_RT_DIR}"
293 svn revert lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc
294 svn revert make/platform/clang_linux.mk
295 cat << 'EOF' |
296 Index: compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep .cc
297 ===================================================================
298 --- compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc (original)
299 +++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc Tue Mar 11 15:23:59 2014
300 @@ -32,18 +32,10 @@
301 // C++ demangling function, as required by Itanium C++ ABI. This is weak,
302 // because we do not require a C++ ABI library to be linked to a program
303 // using sanitizers; if it's not present, we'll just use the mangled name.
304 -//
305 -// On Android, this is not weak, because we are using shared runtime library
306 -// AND static libstdc++, and there is no good way to conditionally export
307 -// __cxa_demangle. By making this a non-weak symbol, we statically link
308 -// __cxa_demangle into ASan runtime library.
309 namespace __cxxabiv1 {
310 - extern "C"
311 -#if !SANITIZER_ANDROID
312 - SANITIZER_WEAK_ATTRIBUTE
313 -#endif
314 - char *__cxa_demangle(const char *mangled, char *buffer, size_t *length,
315 - int *status);
316 + extern "C" SANITIZER_WEAK_ATTRIBUTE
317 + char *__cxa_demangle(const char *mangled, char *buffer,
318 + size_t *length, int *status);
319 }
320
321 namespace __sanitizer {
322 @@ -55,7 +47,7 @@ static const char *DemangleCXXABI(const
323 // own demangler (libc++abi's implementation could be adapted so that
324 // it does not allocate). For now, we just call it anyway, and we leak
325 // the returned value.
326 - if (SANITIZER_ANDROID || &__cxxabiv1::__cxa_demangle)
327 + if (__cxxabiv1::__cxa_demangle)
328 if (const char *demangled_name =
329 __cxxabiv1::__cxa_demangle(name, 0, 0, 0))
330 return demangled_name;
331
332 Index: compiler-rt/trunk/make/platform/clang_linux.mk
333 ===================================================================
334 --- compiler-rt/trunk/make/platform/clang_linux.mk (original)
335 +++ compiler-rt/trunk/make/platform/clang_linux.mk Tue Mar 4 01:17:38 2014
336 @@ -110,9 +110,10 @@ ANDROID_COMMON_FLAGS := -target arm-linu
337 --sysroot=$(LLVM_ANDROID_TOOLCHAIN_DIR)/sysroot \
338 -B$(LLVM_ANDROID_TOOLCHAIN_DIR)
339 CFLAGS.asan-arm-android := $(CFLAGS) -fPIC -fno-builtin \
340 - $(ANDROID_COMMON_FLAGS) -fno-rtti
341 + $(ANDROID_COMMON_FLAGS) -fno-rtti \
342 + -I$(ProjSrcRoot)/third_party/android/include
343 LDFLAGS.asan-arm-android := $(LDFLAGS) $(ANDROID_COMMON_FLAGS) -ldl -lm -llog \
344 - -Wl,-soname=libclang_rt.asan-arm-android.so -Wl,-z,defs
345 + -lstdc++ -Wl,-soname=libclang_rt.asan-arm-android.so -Wl,-z,defs
346
347 # Use our stub SDK as the sysroot to support more portable building. For now we
348 # just do this for the core module, because the stub SDK doesn't have
349 EOF
350 patch -p2
351 cd -
352
353 cd "${LLVM_DIR}"
354 # Merge LLVM r203635
355 cat << 'EOF' |
356 Index: lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
357 ===================================================================
358 --- lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
359 +++ lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
360 @@ -54,4 +54,7 @@
361 UseParensForSymbolVariant = true;
362
363 UseIntegratedAssembler = true;
364 +
365 + // gas doesn't handle VFP register names in cfi directives.
366 + DwarfRegNumForCFI = true;
367 }
368 Index: test/CodeGen/ARM/debug-frame-large-stack.ll
369 ===================================================================
370 --- test/CodeGen/ARM/debug-frame-large-stack.ll
371 +++ test/CodeGen/ARM/debug-frame-large-stack.ll
372 @@ -42,8 +42,8 @@
373 ; CHECK-ARM: .cfi_startproc
374 ; CHECK-ARM: push {r4, r5}
375 ; CHECK-ARM: .cfi_def_cfa_offset 8
376 -; CHECK-ARM: .cfi_offset r5, -4
377 -; CHECK-ARM: .cfi_offset r4, -8
378 +; CHECK-ARM: .cfi_offset 5, -4
379 +; CHECK-ARM: .cfi_offset 4, -8
380 ; CHECK-ARM: sub sp, sp, #72
381 ; CHECK-ARM: sub sp, sp, #4096
382 ; CHECK-ARM: .cfi_def_cfa_offset 4176
383 @@ -54,7 +54,7 @@
384 ; CHECK-ARM-FP_ELIM: push {r4, r5}
385 ; CHECK-ARM-FP_ELIM: .cfi_def_cfa_offset 8
386 ; CHECK-ARM-FP_ELIM: .cfi_offset 54, -4
387 -; CHECK-ARM-FP_ELIM: .cfi_offset r4, -8
388 +; CHECK-ARM-FP_ELIM: .cfi_offset 4, -8
389 ; CHECK-ARM-FP_ELIM: sub sp, sp, #72
390 ; CHECK-ARM-FP_ELIM: sub sp, sp, #4096
391 ; CHECK-ARM-FP_ELIM: .cfi_def_cfa_offset 4176
392 @@ -73,11 +73,11 @@
393 ; CHECK-ARM: .cfi_startproc
394 ; CHECK-ARM: push {r4, r5, r11}
395 ; CHECK-ARM: .cfi_def_cfa_offset 12
396 -; CHECK-ARM: .cfi_offset r11, -4
397 -; CHECK-ARM: .cfi_offset r5, -8
398 -; CHECK-ARM: .cfi_offset r4, -12
399 +; CHECK-ARM: .cfi_offset 11, -4
400 +; CHECK-ARM: .cfi_offset 5, -8
401 +; CHECK-ARM: .cfi_offset 4, -12
402 ; CHECK-ARM: add r11, sp, #8
403 -; CHECK-ARM: .cfi_def_cfa r11, 4
404 +; CHECK-ARM: .cfi_def_cfa 11, 4
405 ; CHECK-ARM: sub sp, sp, #20
406 ; CHECK-ARM: sub sp, sp, #805306368
407 ; CHECK-ARM: bic sp, sp, #15
408 @@ -87,11 +87,11 @@
409 ; CHECK-ARM-FP-ELIM: .cfi_startproc
410 ; CHECK-ARM-FP-ELIM: push {r4, r5, r11}
411 ; CHECK-ARM-FP-ELIM: .cfi_def_cfa_offset 12
412 -; CHECK-ARM-FP-ELIM: .cfi_offset r11, -4
413 -; CHECK-ARM-FP-ELIM: .cfi_offset r5, -8
414 -; CHECK-ARM-FP-ELIM: .cfi_offset r4, -12
415 +; CHECK-ARM-FP-ELIM: .cfi_offset 11, -4
416 +; CHECK-ARM-FP-ELIM: .cfi_offset 5, -8
417 +; CHECK-ARM-FP-ELIM: .cfi_offset 4, -12
418 ; CHECK-ARM-FP-ELIM: add r11, sp, #8
419 -; CHECK-ARM-FP-ELIM: .cfi_def_cfa r11, 4
420 +; CHECK-ARM-FP-ELIM: .cfi_def_cfa 11, 4
421 ; CHECK-ARM-FP-ELIM: sub sp, sp, #20
422 ; CHECK-ARM-FP-ELIM: sub sp, sp, #805306368
423 ; CHECK-ARM-FP-ELIM: bic sp, sp, #15
424 Index: test/CodeGen/ARM/debug-frame-vararg.ll
425 ===================================================================
426 --- test/CodeGen/ARM/debug-frame-vararg.ll
427 +++ test/CodeGen/ARM/debug-frame-vararg.ll
428 @@ -66,8 +66,8 @@
429 ; CHECK-FP: .cfi_def_cfa_offset 16
430 ; CHECK-FP: push {r4, lr}
431 ; CHECK-FP: .cfi_def_cfa_offset 24
432 -; CHECK-FP: .cfi_offset lr, -20
433 -; CHECK-FP: .cfi_offset r4, -24
434 +; CHECK-FP: .cfi_offset 14, -20
435 +; CHECK-FP: .cfi_offset 4, -24
436 ; CHECK-FP: sub sp, sp, #8
437 ; CHECK-FP: .cfi_def_cfa_offset 32
438
439 @@ -77,22 +77,22 @@
440 ; CHECK-FP-ELIM: .cfi_def_cfa_offset 16
441 ; CHECK-FP-ELIM: push {r4, r11, lr}
442 ; CHECK-FP-ELIM: .cfi_def_cfa_offset 28
443 -; CHECK-FP-ELIM: .cfi_offset lr, -20
444 -; CHECK-FP-ELIM: .cfi_offset r11, -24
445 -; CHECK-FP-ELIM: .cfi_offset r4, -28
446 +; CHECK-FP-ELIM: .cfi_offset 14, -20
447 +; CHECK-FP-ELIM: .cfi_offset 11, -24
448 +; CHECK-FP-ELIM: .cfi_offset 4, -28
449 ; CHECK-FP-ELIM: add r11, sp, #4
450 -; CHECK-FP-ELIM: .cfi_def_cfa r11, 24
451 +; CHECK-FP-ELIM: .cfi_def_cfa 11, 24
452
453 ; CHECK-THUMB-FP-LABEL: sum
454 ; CHECK-THUMB-FP: .cfi_startproc
455 ; CHECK-THUMB-FP: sub sp, #16
456 ; CHECK-THUMB-FP: .cfi_def_cfa_offset 16
457 ; CHECK-THUMB-FP: push {r4, r5, r7, lr}
458 ; CHECK-THUMB-FP: .cfi_def_cfa_offset 32
459 -; CHECK-THUMB-FP: .cfi_offset lr, -20
460 -; CHECK-THUMB-FP: .cfi_offset r7, -24
461 -; CHECK-THUMB-FP: .cfi_offset r5, -28
462 -; CHECK-THUMB-FP: .cfi_offset r4, -32
463 +; CHECK-THUMB-FP: .cfi_offset 14, -20
464 +; CHECK-THUMB-FP: .cfi_offset 7, -24
465 +; CHECK-THUMB-FP: .cfi_offset 5, -28
466 +; CHECK-THUMB-FP: .cfi_offset 4, -32
467 ; CHECK-THUMB-FP: sub sp, #8
468 ; CHECK-THUMB-FP: .cfi_def_cfa_offset 40
469
470 @@ -102,12 +102,12 @@
471 ; CHECK-THUMB-FP-ELIM: .cfi_def_cfa_offset 16
472 ; CHECK-THUMB-FP-ELIM: push {r4, r5, r7, lr}
473 ; CHECK-THUMB-FP-ELIM: .cfi_def_cfa_offset 32
474 -; CHECK-THUMB-FP-ELIM: .cfi_offset lr, -20
475 -; CHECK-THUMB-FP-ELIM: .cfi_offset r7, -24
476 -; CHECK-THUMB-FP-ELIM: .cfi_offset r5, -28
477 -; CHECK-THUMB-FP-ELIM: .cfi_offset r4, -32
478 +; CHECK-THUMB-FP-ELIM: .cfi_offset 14, -20
479 +; CHECK-THUMB-FP-ELIM: .cfi_offset 7, -24
480 +; CHECK-THUMB-FP-ELIM: .cfi_offset 5, -28
481 +; CHECK-THUMB-FP-ELIM: .cfi_offset 4, -32
482 ; CHECK-THUMB-FP-ELIM: add r7, sp, #8
483 -; CHECK-THUMB-FP-ELIM: .cfi_def_cfa r7, 24
484 +; CHECK-THUMB-FP-ELIM: .cfi_def_cfa 7, 24
485
486 define i32 @sum(i32 %count, ...) {
487 entry:
488 Index: test/CodeGen/ARM/debug-frame.ll
489 ===================================================================
490 --- test/CodeGen/ARM/debug-frame.ll
491 +++ test/CodeGen/ARM/debug-frame.ll
492 @@ -163,131 +163,131 @@
493 ; CHECK-FP: .cfi_startproc
494 ; CHECK-FP: push {r4, r5, r6, r7, r8, r9, r10, r11, lr}
495 ; CHECK-FP: .cfi_def_cfa_offset 36
496 -; CHECK-FP: .cfi_offset lr, -4
497 -; CHECK-FP: .cfi_offset r11, -8
498 -; CHECK-FP: .cfi_offset r10, -12
499 -; CHECK-FP: .cfi_offset r9, -16
500 -; CHECK-FP: .cfi_offset r8, -20
501 -; CHECK-FP: .cfi_offset r7, -24
502 -; CHECK-FP: .cfi_offset r6, -28
503 -; CHECK-FP: .cfi_offset r5, -32
504 -; CHECK-FP: .cfi_offset r4, -36
505 +; CHECK-FP: .cfi_offset 14, -4
506 +; CHECK-FP: .cfi_offset 11, -8
507 +; CHECK-FP: .cfi_offset 10, -12
508 +; CHECK-FP: .cfi_offset 9, -16
509 +; CHECK-FP: .cfi_offset 8, -20
510 +; CHECK-FP: .cfi_offset 7, -24
511 +; CHECK-FP: .cfi_offset 6, -28
512 +; CHECK-FP: .cfi_offset 5, -32
513 +; CHECK-FP: .cfi_offset 4, -36
514 ; CHECK-FP: add r11, sp, #28
515 -; CHECK-FP: .cfi_def_cfa r11, 8
516 +; CHECK-FP: .cfi_def_cfa 11, 8
517 ; CHECK-FP: sub sp, sp, #28
518 ; CHECK-FP: .cfi_endproc
519
520 ; CHECK-FP-ELIM-LABEL: _Z4testiiiiiddddd:
521 ; CHECK-FP-ELIM: .cfi_startproc
522 ; CHECK-FP-ELIM: push {r4, r5, r6, r7, r8, r9, r10, r11, lr}
523 ; CHECK-FP-ELIM: .cfi_def_cfa_offset 36
524 -; CHECK-FP-ELIM: .cfi_offset lr, -4
525 -; CHECK-FP-ELIM: .cfi_offset r11, -8
526 -; CHECK-FP-ELIM: .cfi_offset r10, -12
527 -; CHECK-FP-ELIM: .cfi_offset r9, -16
528 -; CHECK-FP-ELIM: .cfi_offset r8, -20
529 -; CHECK-FP-ELIM: .cfi_offset r7, -24
530 -; CHECK-FP-ELIM: .cfi_offset r6, -28
531 -; CHECK-FP-ELIM: .cfi_offset r5, -32
532 -; CHECK-FP-ELIM: .cfi_offset r4, -36
533 +; CHECK-FP-ELIM: .cfi_offset 14, -4
534 +; CHECK-FP-ELIM: .cfi_offset 11, -8
535 +; CHECK-FP-ELIM: .cfi_offset 10, -12
536 +; CHECK-FP-ELIM: .cfi_offset 9, -16
537 +; CHECK-FP-ELIM: .cfi_offset 8, -20
538 +; CHECK-FP-ELIM: .cfi_offset 7, -24
539 +; CHECK-FP-ELIM: .cfi_offset 6, -28
540 +; CHECK-FP-ELIM: .cfi_offset 5, -32
541 +; CHECK-FP-ELIM: .cfi_offset 4, -36
542 ; CHECK-FP-ELIM: sub sp, sp, #28
543 ; CHECK-FP-ELIM: .cfi_def_cfa_offset 64
544 ; CHECK-FP-ELIM: .cfi_endproc
545
546 ; CHECK-V7-FP-LABEL: _Z4testiiiiiddddd:
547 ; CHECK-V7-FP: .cfi_startproc
548 ; CHECK-V7-FP: push {r4, r11, lr}
549 ; CHECK-V7-FP: .cfi_def_cfa_offset 12
550 -; CHECK-V7-FP: .cfi_offset lr, -4
551 -; CHECK-V7-FP: .cfi_offset r11, -8
552 -; CHECK-V7-FP: .cfi_offset r4, -12
553 +; CHECK-V7-FP: .cfi_offset 14, -4
554 +; CHECK-V7-FP: .cfi_offset 11, -8
555 +; CHECK-V7-FP: .cfi_offset 4, -12
556 ; CHECK-V7-FP: add r11, sp, #4
557 -; CHECK-V7-FP: .cfi_def_cfa r11, 8
558 +; CHECK-V7-FP: .cfi_def_cfa 11, 8
559 ; CHECK-V7-FP: vpush {d8, d9, d10, d11, d12}
560 -; CHECK-V7-FP: .cfi_offset d12, -24
561 -; CHECK-V7-FP: .cfi_offset d11, -32
562 -; CHECK-V7-FP: .cfi_offset d10, -40
563 -; CHECK-V7-FP: .cfi_offset d9, -48
564 -; CHECK-V7-FP: .cfi_offset d8, -56
565 +; CHECK-V7-FP: .cfi_offset 268, -24
566 +; CHECK-V7-FP: .cfi_offset 267, -32
567 +; CHECK-V7-FP: .cfi_offset 266, -40
568 +; CHECK-V7-FP: .cfi_offset 265, -48
569 +; CHECK-V7-FP: .cfi_offset 264, -56
570 ; CHECK-V7-FP: sub sp, sp, #28
571 ; CHECK-V7-FP: .cfi_endproc
572
573 ; CHECK-V7-FP-ELIM-LABEL: _Z4testiiiiiddddd:
574 ; CHECK-V7-FP-ELIM: .cfi_startproc
575 ; CHECK-V7-FP-ELIM: push {r4, lr}
576 ; CHECK-V7-FP-ELIM: .cfi_def_cfa_offset 8
577 -; CHECK-V7-FP-ELIM: .cfi_offset lr, -4
578 -; CHECK-V7-FP-ELIM: .cfi_offset r4, -8
579 +; CHECK-V7-FP-ELIM: .cfi_offset 14, -4
580 +; CHECK-V7-FP-ELIM: .cfi_offset 4, -8
581 ; CHECK-V7-FP-ELIM: vpush {d8, d9, d10, d11, d12}
582 ; CHECK-V7-FP-ELIM: .cfi_def_cfa_offset 48
583 -; CHECK-V7-FP-ELIM: .cfi_offset d12, -16
584 -; CHECK-V7-FP-ELIM: .cfi_offset d11, -24
585 -; CHECK-V7-FP-ELIM: .cfi_offset d10, -32
586 -; CHECK-V7-FP-ELIM: .cfi_offset d9, -40
587 -; CHECK-V7-FP-ELIM: .cfi_offset d8, -48
588 +; CHECK-V7-FP-ELIM: .cfi_offset 268, -16
589 +; CHECK-V7-FP-ELIM: .cfi_offset 267, -24
590 +; CHECK-V7-FP-ELIM: .cfi_offset 266, -32
591 +; CHECK-V7-FP-ELIM: .cfi_offset 265, -40
592 +; CHECK-V7-FP-ELIM: .cfi_offset 264, -48
593 ; CHECK-V7-FP-ELIM: sub sp, sp, #24
594 ; CHECK-V7-FP-ELIM: .cfi_def_cfa_offset 72
595 ; CHECK-V7-FP-ELIM: .cfi_endproc
596
597 ; CHECK-THUMB-FP-LABEL: _Z4testiiiiiddddd:
598 ; CHECK-THUMB-FP: .cfi_startproc
599 ; CHECK-THUMB-FP: push {r4, r5, r6, r7, lr}
600 ; CHECK-THUMB-FP: .cfi_def_cfa_offset 20
601 -; CHECK-THUMB-FP: .cfi_offset lr, -4
602 -; CHECK-THUMB-FP: .cfi_offset r7, -8
603 -; CHECK-THUMB-FP: .cfi_offset r6, -12
604 -; CHECK-THUMB-FP: .cfi_offset r5, -16
605 -; CHECK-THUMB-FP: .cfi_offset r4, -20
606 +; CHECK-THUMB-FP: .cfi_offset 14, -4
607 +; CHECK-THUMB-FP: .cfi_offset 7, -8
608 +; CHECK-THUMB-FP: .cfi_offset 6, -12
609 +; CHECK-THUMB-FP: .cfi_offset 5, -16
610 +; CHECK-THUMB-FP: .cfi_offset 4, -20
611 ; CHECK-THUMB-FP: add r7, sp, #12
612 -; CHECK-THUMB-FP: .cfi_def_cfa r7, 8
613 +; CHECK-THUMB-FP: .cfi_def_cfa 7, 8
614 ; CHECK-THUMB-FP: sub sp, #60
615 ; CHECK-THUMB-FP: .cfi_endproc
616
617 ; CHECK-THUMB-FP-ELIM-LABEL: _Z4testiiiiiddddd:
618 ; CHECK-THUMB-FP-ELIM: .cfi_startproc
619 ; CHECK-THUMB-FP-ELIM: push {r4, r5, r6, r7, lr}
620 ; CHECK-THUMB-FP-ELIM: .cfi_def_cfa_offset 20
621 -; CHECK-THUMB-FP-ELIM: .cfi_offset lr, -4
622 -; CHECK-THUMB-FP-ELIM: .cfi_offset r7, -8
623 -; CHECK-THUMB-FP-ELIM: .cfi_offset r6, -12
624 -; CHECK-THUMB-FP-ELIM: .cfi_offset r5, -16
625 -; CHECK-THUMB-FP-ELIM: .cfi_offset r4, -20
626 +; CHECK-THUMB-FP-ELIM: .cfi_offset 14, -4
627 +; CHECK-THUMB-FP-ELIM: .cfi_offset 7, -8
628 +; CHECK-THUMB-FP-ELIM: .cfi_offset 6, -12
629 +; CHECK-THUMB-FP-ELIM: .cfi_offset 5, -16
630 +; CHECK-THUMB-FP-ELIM: .cfi_offset 4, -20
631 ; CHECK-THUMB-FP-ELIM: sub sp, #60
632 ; CHECK-THUMB-FP-ELIM: .cfi_def_cfa_offset 80
633 ; CHECK-THUMB-FP-ELIM: .cfi_endproc
634
635 ; CHECK-THUMB-V7-FP-LABEL: _Z4testiiiiiddddd:
636 ; CHECK-THUMB-V7-FP: .cfi_startproc
637 ; CHECK-THUMB-V7-FP: push.w {r4, r7, r11, lr}
638 ; CHECK-THUMB-V7-FP: .cfi_def_cfa_offset 16
639 -; CHECK-THUMB-V7-FP: .cfi_offset lr, -4
640 -; CHECK-THUMB-V7-FP: .cfi_offset r11, -8
641 -; CHECK-THUMB-V7-FP: .cfi_offset r7, -12
642 -; CHECK-THUMB-V7-FP: .cfi_offset r4, -16
643 +; CHECK-THUMB-V7-FP: .cfi_offset 14, -4
644 +; CHECK-THUMB-V7-FP: .cfi_offset 11, -8
645 +; CHECK-THUMB-V7-FP: .cfi_offset 7, -12
646 +; CHECK-THUMB-V7-FP: .cfi_offset 4, -16
647 ; CHECK-THUMB-V7-FP: add r7, sp, #4
648 -; CHECK-THUMB-V7-FP: .cfi_def_cfa r7, 12
649 +; CHECK-THUMB-V7-FP: .cfi_def_cfa 7, 12
650 ; CHECK-THUMB-V7-FP: vpush {d8, d9, d10, d11, d12}
651 -; CHECK-THUMB-V7-FP: .cfi_offset d12, -24
652 -; CHECK-THUMB-V7-FP: .cfi_offset d11, -32
653 -; CHECK-THUMB-V7-FP: .cfi_offset d10, -40
654 -; CHECK-THUMB-V7-FP: .cfi_offset d9, -48
655 -; CHECK-THUMB-V7-FP: .cfi_offset d8, -56
656 +; CHECK-THUMB-V7-FP: .cfi_offset 268, -24
657 +; CHECK-THUMB-V7-FP: .cfi_offset 267, -32
658 +; CHECK-THUMB-V7-FP: .cfi_offset 266, -40
659 +; CHECK-THUMB-V7-FP: .cfi_offset 265, -48
660 +; CHECK-THUMB-V7-FP: .cfi_offset 264, -56
661 ; CHECK-THUMB-V7-FP: sub sp, #24
662 ; CHECK-THUMB-V7-FP: .cfi_endproc
663
664 ; CHECK-THUMB-V7-FP-ELIM-LABEL: _Z4testiiiiiddddd:
665 ; CHECK-THUMB-V7-FP-ELIM: .cfi_startproc
666 ; CHECK-THUMB-V7-FP-ELIM: push {r4, lr}
667 ; CHECK-THUMB-V7-FP-ELIM: .cfi_def_cfa_offset 8
668 -; CHECK-THUMB-V7-FP-ELIM: .cfi_offset lr, -4
669 -; CHECK-THUMB-V7-FP-ELIM: .cfi_offset r4, -8
670 +; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 14, -4
671 +; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 4, -8
672 ; CHECK-THUMB-V7-FP-ELIM: vpush {d8, d9, d10, d11, d12}
673 ; CHECK-THUMB-V7-FP-ELIM: .cfi_def_cfa_offset 48
674 -; CHECK-THUMB-V7-FP-ELIM: .cfi_offset d12, -16
675 -; CHECK-THUMB-V7-FP-ELIM: .cfi_offset d11, -24
676 -; CHECK-THUMB-V7-FP-ELIM: .cfi_offset d10, -32
677 -; CHECK-THUMB-V7-FP-ELIM: .cfi_offset d9, -40
678 -; CHECK-THUMB-V7-FP-ELIM: .cfi_offset d8, -48
679 +; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 268, -16
680 +; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 267, -24
681 +; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 266, -32
682 +; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 265, -40
683 +; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 264, -48
684 ; CHECK-THUMB-V7-FP-ELIM: sub sp, #24
685 ; CHECK-THUMB-V7-FP-ELIM: .cfi_def_cfa_offset 72
686 ; CHECK-THUMB-V7-FP-ELIM: .cfi_endproc
687 @@ -309,81 +309,81 @@
688 ; CHECK-FP: .cfi_startproc
689 ; CHECK-FP: push {r11, lr}
690 ; CHECK-FP: .cfi_def_cfa_offset 8
691 -; CHECK-FP: .cfi_offset lr, -4
692 -; CHECK-FP: .cfi_offset r11, -8
693 +; CHECK-FP: .cfi_offset 14, -4
694 +; CHECK-FP: .cfi_offset 11, -8
695 ; CHECK-FP: mov r11, sp
696 -; CHECK-FP: .cfi_def_cfa_register r11
697 +; CHECK-FP: .cfi_def_cfa_register 11
698 ; CHECK-FP: pop {r11, lr}
699 ; CHECK-FP: mov pc, lr
700 ; CHECK-FP: .cfi_endproc
701
702 ; CHECK-FP-ELIM-LABEL: test2:
703 ; CHECK-FP-ELIM: .cfi_startproc
704 ; CHECK-FP-ELIM: push {r11, lr}
705 ; CHECK-FP-ELIM: .cfi_def_cfa_offset 8
706 -; CHECK-FP-ELIM: .cfi_offset lr, -4
707 -; CHECK-FP-ELIM: .cfi_offset r11, -8
708 +; CHECK-FP-ELIM: .cfi_offset 14, -4
709 +; CHECK-FP-ELIM: .cfi_offset 11, -8
710 ; CHECK-FP-ELIM: pop {r11, lr}
711 ; CHECK-FP-ELIM: mov pc, lr
712 ; CHECK-FP-ELIM: .cfi_endproc
713
714 ; CHECK-V7-FP-LABEL: test2:
715 ; CHECK-V7-FP: .cfi_startproc
716 ; CHECK-V7-FP: push {r11, lr}
717 ; CHECK-V7-FP: .cfi_def_cfa_offset 8
718 -; CHECK-V7-FP: .cfi_offset lr, -4
719 -; CHECK-V7-FP: .cfi_offset r11, -8
720 +; CHECK-V7-FP: .cfi_offset 14, -4
721 +; CHECK-V7-FP: .cfi_offset 11, -8
722 ; CHECK-V7-FP: mov r11, sp
723 -; CHECK-V7-FP: .cfi_def_cfa_register r11
724 +; CHECK-V7-FP: .cfi_def_cfa_register 11
725 ; CHECK-V7-FP: pop {r11, pc}
726 ; CHECK-V7-FP: .cfi_endproc
727
728 ; CHECK-V7-FP-ELIM-LABEL: test2:
729 ; CHECK-V7-FP-ELIM: .cfi_startproc
730 ; CHECK-V7-FP-ELIM: push {r11, lr}
731 ; CHECK-V7-FP-ELIM: .cfi_def_cfa_offset 8
732 -; CHECK-V7-FP-ELIM: .cfi_offset lr, -4
733 -; CHECK-V7-FP-ELIM: .cfi_offset r11, -8
734 +; CHECK-V7-FP-ELIM: .cfi_offset 14, -4
735 +; CHECK-V7-FP-ELIM: .cfi_offset 11, -8
736 ; CHECK-V7-FP-ELIM: pop {r11, pc}
737 ; CHECK-V7-FP-ELIM: .cfi_endproc
738
739 ; CHECK-THUMB-FP-LABEL: test2:
740 ; CHECK-THUMB-FP: .cfi_startproc
741 ; CHECK-THUMB-FP: push {r7, lr}
742 ; CHECK-THUMB-FP: .cfi_def_cfa_offset 8
743 -; CHECK-THUMB-FP: .cfi_offset lr, -4
744 -; CHECK-THUMB-FP: .cfi_offset r7, -8
745 +; CHECK-THUMB-FP: .cfi_offset 14, -4
746 +; CHECK-THUMB-FP: .cfi_offset 7, -8
747 ; CHECK-THUMB-FP: add r7, sp, #0
748 -; CHECK-THUMB-FP: .cfi_def_cfa_register r7
749 +; CHECK-THUMB-FP: .cfi_def_cfa_register 7
750 ; CHECK-THUMB-FP: pop {r7, pc}
751 ; CHECK-THUMB-FP: .cfi_endproc
752
753 ; CHECK-THUMB-FP-ELIM-LABEL: test2:
754 ; CHECK-THUMB-FP-ELIM: .cfi_startproc
755 ; CHECK-THUMB-FP-ELIM: push {r7, lr}
756 ; CHECK-THUMB-FP-ELIM: .cfi_def_cfa_offset 8
757 -; CHECK-THUMB-FP-ELIM: .cfi_offset lr, -4
758 -; CHECK-THUMB-FP-ELIM: .cfi_offset r7, -8
759 +; CHECK-THUMB-FP-ELIM: .cfi_offset 14, -4
760 +; CHECK-THUMB-FP-ELIM: .cfi_offset 7, -8
761 ; CHECK-THUMB-FP-ELIM: pop {r7, pc}
762 ; CHECK-THUMB-FP-ELIM: .cfi_endproc
763
764 ; CHECK-THUMB-V7-FP-LABEL: test2:
765 ; CHECK-THUMB-V7-FP: .cfi_startproc
766 ; CHECK-THUMB-V7-FP: push {r7, lr}
767 ; CHECK-THUMB-V7-FP: .cfi_def_cfa_offset 8
768 -; CHECK-THUMB-V7-FP: .cfi_offset lr, -4
769 -; CHECK-THUMB-V7-FP: .cfi_offset r7, -8
770 +; CHECK-THUMB-V7-FP: .cfi_offset 14, -4
771 +; CHECK-THUMB-V7-FP: .cfi_offset 7, -8
772 ; CHECK-THUMB-V7-FP: mov r7, sp
773 -; CHECK-THUMB-V7-FP: .cfi_def_cfa_register r7
774 +; CHECK-THUMB-V7-FP: .cfi_def_cfa_register 7
775 ; CHECK-THUMB-V7-FP: pop {r7, pc}
776 ; CHECK-THUMB-V7-FP: .cfi_endproc
777
778 ; CHECK-THUMB-V7-FP-ELIM-LABEL: test2:
779 ; CHECK-THUMB-V7-FP-ELIM: .cfi_startproc
780 ; CHECK-THUMB-V7-FP-ELIM: push.w {r11, lr}
781 ; CHECK-THUMB-V7-FP-ELIM: .cfi_def_cfa_offset 8
782 -; CHECK-THUMB-V7-FP-ELIM: .cfi_offset lr, -4
783 -; CHECK-THUMB-V7-FP-ELIM: .cfi_offset r11, -8
784 +; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 14, -4
785 +; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 11, -8
786 ; CHECK-THUMB-V7-FP-ELIM: pop.w {r11, pc}
787 ; CHECK-THUMB-V7-FP-ELIM: .cfi_endproc
788
789 @@ -413,97 +413,97 @@
790 ; CHECK-FP: .cfi_startproc
791 ; CHECK-FP: push {r4, r5, r11, lr}
792 ; CHECK-FP: .cfi_def_cfa_offset 16
793 -; CHECK-FP: .cfi_offset lr, -4
794 -; CHECK-FP: .cfi_offset r11, -8
795 -; CHECK-FP: .cfi_offset r5, -12
796 -; CHECK-FP: .cfi_offset r4, -16
797 +; CHECK-FP: .cfi_offset 14, -4
798 +; CHECK-FP: .cfi_offset 11, -8
799 +; CHECK-FP: .cfi_offset 5, -12
800 +; CHECK-FP: .cfi_offset 4, -16
801 ; CHECK-FP: add r11, sp, #8
802 -; CHECK-FP: .cfi_def_cfa r11, 8
803 +; CHECK-FP: .cfi_def_cfa 11, 8
804 ; CHECK-FP: pop {r4, r5, r11, lr}
805 ; CHECK-FP: mov pc, lr
806 ; CHECK-FP: .cfi_endproc
807
808 ; CHECK-FP-ELIM-LABEL: test3:
809 ; CHECK-FP-ELIM: .cfi_startproc
810 ; CHECK-FP-ELIM: push {r4, r5, r11, lr}
811 ; CHECK-FP-ELIM: .cfi_def_cfa_offset 16
812 -; CHECK-FP-ELIM: .cfi_offset lr, -4
813 -; CHECK-FP-ELIM: .cfi_offset r11, -8
814 -; CHECK-FP-ELIM: .cfi_offset r5, -12
815 -; CHECK-FP-ELIM: .cfi_offset r4, -16
816 +; CHECK-FP-ELIM: .cfi_offset 14, -4
817 +; CHECK-FP-ELIM: .cfi_offset 11, -8
818 +; CHECK-FP-ELIM: .cfi_offset 5, -12
819 +; CHECK-FP-ELIM: .cfi_offset 4, -16
820 ; CHECK-FP-ELIM: pop {r4, r5, r11, lr}
821 ; CHECK-FP-ELIM: mov pc, lr
822 ; CHECK-FP-ELIM: .cfi_endproc
823
824 ; CHECK-V7-FP-LABEL: test3:
825 ; CHECK-V7-FP: .cfi_startproc
826 ; CHECK-V7-FP: push {r4, r5, r11, lr}
827 ; CHECK-V7-FP: .cfi_def_cfa_offset 16
828 -; CHECK-V7-FP: .cfi_offset lr, -4
829 -; CHECK-V7-FP: .cfi_offset r11, -8
830 -; CHECK-V7-FP: .cfi_offset r5, -12
831 -; CHECK-V7-FP: .cfi_offset r4, -16
832 +; CHECK-V7-FP: .cfi_offset 14, -4
833 +; CHECK-V7-FP: .cfi_offset 11, -8
834 +; CHECK-V7-FP: .cfi_offset 5, -12
835 +; CHECK-V7-FP: .cfi_offset 4, -16
836 ; CHECK-V7-FP: add r11, sp, #8
837 -; CHECK-V7-FP: .cfi_def_cfa r11, 8
838 +; CHECK-V7-FP: .cfi_def_cfa 11, 8
839 ; CHECK-V7-FP: pop {r4, r5, r11, pc}
840 ; CHECK-V7-FP: .cfi_endproc
841
842 ; CHECK-V7-FP-ELIM-LABEL: test3:
843 ; CHECK-V7-FP-ELIM: .cfi_startproc
844 ; CHECK-V7-FP-ELIM: push {r4, r5, r11, lr}
845 ; CHECK-V7-FP-ELIM: .cfi_def_cfa_offset 16
846 -; CHECK-V7-FP-ELIM: .cfi_offset lr, -4
847 -; CHECK-V7-FP-ELIM: .cfi_offset r11, -8
848 -; CHECK-V7-FP-ELIM: .cfi_offset r5, -12
849 -; CHECK-V7-FP-ELIM: .cfi_offset r4, -16
850 +; CHECK-V7-FP-ELIM: .cfi_offset 14, -4
851 +; CHECK-V7-FP-ELIM: .cfi_offset 11, -8
852 +; CHECK-V7-FP-ELIM: .cfi_offset 5, -12
853 +; CHECK-V7-FP-ELIM: .cfi_offset 4, -16
854 ; CHECK-V7-FP-ELIM: pop {r4, r5, r11, pc}
855 ; CHECK-V7-FP-ELIM: .cfi_endproc
856
857 ; CHECK-THUMB-FP-LABEL: test3:
858 ; CHECK-THUMB-FP: .cfi_startproc
859 ; CHECK-THUMB-FP: push {r4, r5, r7, lr}
860 ; CHECK-THUMB-FP: .cfi_def_cfa_offset 16
861 -; CHECK-THUMB-FP: .cfi_offset lr, -4
862 -; CHECK-THUMB-FP: .cfi_offset r7, -8
863 -; CHECK-THUMB-FP: .cfi_offset r5, -12
864 -; CHECK-THUMB-FP: .cfi_offset r4, -16
865 +; CHECK-THUMB-FP: .cfi_offset 14, -4
866 +; CHECK-THUMB-FP: .cfi_offset 7, -8
867 +; CHECK-THUMB-FP: .cfi_offset 5, -12
868 +; CHECK-THUMB-FP: .cfi_offset 4, -16
869 ; CHECK-THUMB-FP: add r7, sp, #8
870 -; CHECK-THUMB-FP: .cfi_def_cfa r7, 8
871 +; CHECK-THUMB-FP: .cfi_def_cfa 7, 8
872 ; CHECK-THUMB-FP: pop {r4, r5, r7, pc}
873 ; CHECK-THUMB-FP: .cfi_endproc
874
875 ; CHECK-THUMB-FP-ELIM-LABEL: test3:
876 ; CHECK-THUMB-FP-ELIM: .cfi_startproc
877 ; CHECK-THUMB-FP-ELIM: push {r4, r5, r7, lr}
878 ; CHECK-THUMB-FP-ELIM: .cfi_def_cfa_offset 16
879 -; CHECK-THUMB-FP-ELIM: .cfi_offset lr, -4
880 -; CHECK-THUMB-FP-ELIM: .cfi_offset r7, -8
881 -; CHECK-THUMB-FP-ELIM: .cfi_offset r5, -12
882 -; CHECK-THUMB-FP-ELIM: .cfi_offset r4, -16
883 +; CHECK-THUMB-FP-ELIM: .cfi_offset 14, -4
884 +; CHECK-THUMB-FP-ELIM: .cfi_offset 7, -8
885 +; CHECK-THUMB-FP-ELIM: .cfi_offset 5, -12
886 +; CHECK-THUMB-FP-ELIM: .cfi_offset 4, -16
887 ; CHECK-THUMB-FP-ELIM: pop {r4, r5, r7, pc}
888 ; CHECK-THUMB-FP-ELIM: .cfi_endproc
889
890 ; CHECK-THUMB-V7-FP-LABEL: test3:
891 ; CHECK-THUMB-V7-FP: .cfi_startproc
892 ; CHECK-THUMB-V7-FP: push {r4, r5, r7, lr}
893 ; CHECK-THUMB-V7-FP: .cfi_def_cfa_offset 16
894 -; CHECK-THUMB-V7-FP: .cfi_offset lr, -4
895 -; CHECK-THUMB-V7-FP: .cfi_offset r7, -8
896 -; CHECK-THUMB-V7-FP: .cfi_offset r5, -12
897 -; CHECK-THUMB-V7-FP: .cfi_offset r4, -16
898 +; CHECK-THUMB-V7-FP: .cfi_offset 14, -4
899 +; CHECK-THUMB-V7-FP: .cfi_offset 7, -8
900 +; CHECK-THUMB-V7-FP: .cfi_offset 5, -12
901 +; CHECK-THUMB-V7-FP: .cfi_offset 4, -16
902 ; CHECK-THUMB-V7-FP: add r7, sp, #8
903 -; CHECK-THUMB-V7-FP: .cfi_def_cfa r7, 8
904 +; CHECK-THUMB-V7-FP: .cfi_def_cfa 7, 8
905 ; CHECK-THUMB-V7-FP: pop {r4, r5, r7, pc}
906 ; CHECK-THUMB-V7-FP: .cfi_endproc
907
908 ; CHECK-THUMB-V7-FP-ELIM-LABEL: test3:
909 ; CHECK-THUMB-V7-FP-ELIM: .cfi_startproc
910 ; CHECK-THUMB-V7-FP-ELIM: push.w {r4, r5, r11, lr}
911 ; CHECK-THUMB-V7-FP-ELIM: .cfi_def_cfa_offset 16
912 -; CHECK-THUMB-V7-FP-ELIM: .cfi_offset lr, -4
913 -; CHECK-THUMB-V7-FP-ELIM: .cfi_offset r11, -8
914 -; CHECK-THUMB-V7-FP-ELIM: .cfi_offset r5, -12
915 -; CHECK-THUMB-V7-FP-ELIM: .cfi_offset r4, -16
916 +; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 14, -4
917 +; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 11, -8
918 +; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 5, -12
919 +; CHECK-THUMB-V7-FP-ELIM: .cfi_offset 4, -16
920 ; CHECK-THUMB-V7-FP-ELIM: pop.w {r4, r5, r11, pc}
921 ; CHECK-THUMB-V7-FP-ELIM: .cfi_endproc
922
923 EOF
924 patch -p0
925 cd -
926
927 # Echo all commands. 262 # Echo all commands.
928 set -x 263 set -x
929 264
930 NUM_JOBS=3 265 NUM_JOBS=3
931 if [[ "${OS}" = "Linux" ]]; then 266 if [[ "${OS}" = "Linux" ]]; then
932 NUM_JOBS="$(grep -c "^processor" /proc/cpuinfo)" 267 NUM_JOBS="$(grep -c "^processor" /proc/cpuinfo)"
933 elif [ "${OS}" = "Darwin" -o "${OS}" = "FreeBSD" ]; then 268 elif [ "${OS}" = "Darwin" -o "${OS}" = "FreeBSD" ]; then
934 NUM_JOBS="$(sysctl -n hw.ncpu)" 269 NUM_JOBS="$(sysctl -n hw.ncpu)"
935 fi 270 fi
936 271
937 if [[ -n "${gcc_toolchain}" ]]; then 272 if [[ -n "${gcc_toolchain}" ]]; then
938 # Use the specified gcc installation for building. 273 # Use the specified gcc installation for building.
939 export CC="$gcc_toolchain/bin/gcc" 274 export CC="$gcc_toolchain/bin/gcc"
940 export CXX="$gcc_toolchain/bin/g++" 275 export CXX="$gcc_toolchain/bin/g++"
941 fi 276 fi
942 277
943 export CFLAGS="" 278 export CFLAGS=""
944 export CXXFLAGS="" 279 export CXXFLAGS=""
945 # LLVM uses C++11 starting in llvm 3.5. On Linux, this means libstdc++4.7+ is
946 # needed, on OS X it requires libc++. clang only automatically links to libc++
947 # when targeting OS X 10.9+, so add stdlib=libc++ explicitly so clang can run on
948 # OS X versions as old as 10.7.
949 if [ "${OS}" = "Darwin" ]; then
950 CXXFLAGS="-stdlib=libc++"
951 fi
952 280
953 # Build bootstrap clang if requested. 281 # Build bootstrap clang if requested.
954 if [[ -n "${bootstrap}" ]]; then 282 if [[ -n "${bootstrap}" ]]; then
955 ABS_INSTALL_DIR="${PWD}/${LLVM_BOOTSTRAP_INSTALL_DIR}"
956 echo "Building bootstrap compiler" 283 echo "Building bootstrap compiler"
957 mkdir -p "${LLVM_BOOTSTRAP_DIR}" 284 mkdir -p "${LLVM_BOOTSTRAP_DIR}"
958 cd "${LLVM_BOOTSTRAP_DIR}" 285 cd "${LLVM_BOOTSTRAP_DIR}"
959 if [[ ! -f ./config.status ]]; then 286 if [[ ! -f ./config.status ]]; then
960 # The bootstrap compiler only needs to be able to build the real compiler, 287 # The bootstrap compiler only needs to be able to build the real compiler,
961 # so it needs no cross-compiler output support. In general, the host 288 # so it needs no cross-compiler output support. In general, the host
962 # compiler should be as similar to the final compiler as possible, so do 289 # compiler should be as similar to the final compiler as possible, so do
963 # keep --disable-threads & co. 290 # keep --disable-threads & co.
964 ../llvm/configure \ 291 ../llvm/configure \
965 --enable-optimized \ 292 --enable-optimized \
966 --enable-targets=host-only \ 293 --enable-targets=host-only \
967 --disable-threads \ 294 --disable-threads \
968 --disable-pthreads \ 295 --disable-pthreads \
969 --without-llvmgcc \ 296 --without-llvmgcc \
970 --without-llvmgxx \ 297 --without-llvmgxx
971 --prefix="${ABS_INSTALL_DIR}"
972 fi 298 fi
973 299
974 MACOSX_DEPLOYMENT_TARGET=10.7 ${MAKE} -j"${NUM_JOBS}" 300 if [[ -n "${gcc_toolchain}" ]]; then
301 # Copy that gcc's stdlibc++.so.6 to the build dir, so the bootstrap
302 # compiler can start.
303 mkdir -p Release+Asserts/lib
304 cp -v "$(${CXX} -print-file-name=libstdc++.so.6)" \
305 "Release+Asserts/lib/"
306 fi
307
308
309 MACOSX_DEPLOYMENT_TARGET=10.5 ${MAKE} -j"${NUM_JOBS}"
975 if [[ -n "${run_tests}" ]]; then 310 if [[ -n "${run_tests}" ]]; then
976 ${MAKE} check-all 311 ${MAKE} check-all
977 fi 312 fi
978
979 MACOSX_DEPLOYMENT_TARGET=10.7 ${MAKE} install
980 if [[ -n "${gcc_toolchain}" ]]; then
981 # Copy that gcc's stdlibc++.so.6 to the build dir, so the bootstrap
982 # compiler can start.
983 cp -v "$(${CXX} -print-file-name=libstdc++.so.6)" \
984 "${ABS_INSTALL_DIR}/lib/"
985 fi
986
987 cd - 313 cd -
988 export CC="${ABS_INSTALL_DIR}/bin/clang" 314 export CC="${PWD}/${LLVM_BOOTSTRAP_DIR}/Release+Asserts/bin/clang"
989 export CXX="${ABS_INSTALL_DIR}/bin/clang++" 315 export CXX="${PWD}/${LLVM_BOOTSTRAP_DIR}/Release+Asserts/bin/clang++"
990 316
991 if [[ -n "${gcc_toolchain}" ]]; then 317 if [[ -n "${gcc_toolchain}" ]]; then
992 # Tell the bootstrap compiler to use a specific gcc prefix to search 318 # Tell the bootstrap compiler to use a specific gcc prefix to search
993 # for standard library headers and shared object file. 319 # for standard library headers and shared object file.
994 export CFLAGS="--gcc-toolchain=${gcc_toolchain}" 320 export CFLAGS="--gcc-toolchain=${gcc_toolchain}"
995 export CXXFLAGS="--gcc-toolchain=${gcc_toolchain}" 321 export CXXFLAGS="--gcc-toolchain=${gcc_toolchain}"
996 fi 322 fi
997 323
998 echo "Building final compiler" 324 echo "Building final compiler"
999 fi 325 fi
(...skipping 11 matching lines...) Expand all
1011 --without-llvmgcc \ 337 --without-llvmgcc \
1012 --without-llvmgxx 338 --without-llvmgxx
1013 fi 339 fi
1014 340
1015 if [[ -n "${gcc_toolchain}" ]]; then 341 if [[ -n "${gcc_toolchain}" ]]; then
1016 # Copy in the right stdlibc++.so.6 so clang can start. 342 # Copy in the right stdlibc++.so.6 so clang can start.
1017 mkdir -p Release+Asserts/lib 343 mkdir -p Release+Asserts/lib
1018 cp -v "$(${CXX} ${CXXFLAGS} -print-file-name=libstdc++.so.6)" \ 344 cp -v "$(${CXX} ${CXXFLAGS} -print-file-name=libstdc++.so.6)" \
1019 Release+Asserts/lib/ 345 Release+Asserts/lib/
1020 fi 346 fi
1021 MACOSX_DEPLOYMENT_TARGET=10.7 ${MAKE} -j"${NUM_JOBS}" 347 MACOSX_DEPLOYMENT_TARGET=10.5 ${MAKE} -j"${NUM_JOBS}"
1022 STRIP_FLAGS= 348 STRIP_FLAGS=
1023 if [ "${OS}" = "Darwin" ]; then 349 if [ "${OS}" = "Darwin" ]; then
1024 # See http://crbug.com/256342 350 # See http://crbug.com/256342
1025 STRIP_FLAGS=-x 351 STRIP_FLAGS=-x
1026 fi 352 fi
1027 strip ${STRIP_FLAGS} Release+Asserts/bin/clang 353 strip ${STRIP_FLAGS} Release+Asserts/bin/clang
1028 cd - 354 cd -
1029 355
1030 if [[ -n "${with_android}" ]]; then 356 if [[ -n "${with_android}" ]]; then
1031 # Make a standalone Android toolchain. 357 # Make a standalone Android toolchain.
(...skipping 18 matching lines...) Expand all
1050 # system to compile it. 376 # system to compile it.
1051 for CHROME_TOOL_DIR in ${chrome_tools}; do 377 for CHROME_TOOL_DIR in ${chrome_tools}; do
1052 TOOL_SRC_DIR="${THIS_DIR}/../${CHROME_TOOL_DIR}" 378 TOOL_SRC_DIR="${THIS_DIR}/../${CHROME_TOOL_DIR}"
1053 TOOL_DST_DIR="${LLVM_DIR}/tools/clang/tools/chrome-${CHROME_TOOL_DIR}" 379 TOOL_DST_DIR="${LLVM_DIR}/tools/clang/tools/chrome-${CHROME_TOOL_DIR}"
1054 TOOL_BUILD_DIR="${LLVM_BUILD_DIR}/tools/clang/tools/chrome-${CHROME_TOOL_DIR}" 380 TOOL_BUILD_DIR="${LLVM_BUILD_DIR}/tools/clang/tools/chrome-${CHROME_TOOL_DIR}"
1055 rm -rf "${TOOL_DST_DIR}" 381 rm -rf "${TOOL_DST_DIR}"
1056 cp -R "${TOOL_SRC_DIR}" "${TOOL_DST_DIR}" 382 cp -R "${TOOL_SRC_DIR}" "${TOOL_DST_DIR}"
1057 rm -rf "${TOOL_BUILD_DIR}" 383 rm -rf "${TOOL_BUILD_DIR}"
1058 mkdir -p "${TOOL_BUILD_DIR}" 384 mkdir -p "${TOOL_BUILD_DIR}"
1059 cp "${TOOL_SRC_DIR}/Makefile" "${TOOL_BUILD_DIR}" 385 cp "${TOOL_SRC_DIR}/Makefile" "${TOOL_BUILD_DIR}"
1060 MACOSX_DEPLOYMENT_TARGET=10.7 ${MAKE} -j"${NUM_JOBS}" -C "${TOOL_BUILD_DIR}" 386 MACOSX_DEPLOYMENT_TARGET=10.5 ${MAKE} -j"${NUM_JOBS}" -C "${TOOL_BUILD_DIR}"
1061 done 387 done
1062 388
1063 if [[ -n "$run_tests" ]]; then 389 if [[ -n "$run_tests" ]]; then
1064 # Run a few tests. 390 # Run a few tests.
1065 for CHROME_TOOL_DIR in ${chrome_tools}; do 391 for CHROME_TOOL_DIR in ${chrome_tools}; do
1066 TOOL_SRC_DIR="${THIS_DIR}/../${CHROME_TOOL_DIR}" 392 TOOL_SRC_DIR="${THIS_DIR}/../${CHROME_TOOL_DIR}"
1067 if [[ -f "${TOOL_SRC_DIR}/tests/test.sh" ]]; then 393 if [[ -f "${TOOL_SRC_DIR}/tests/test.sh" ]]; then
1068 "${TOOL_SRC_DIR}/tests/test.sh" "${LLVM_BUILD_DIR}/Release+Asserts" 394 "${TOOL_SRC_DIR}/tests/test.sh" "${LLVM_BUILD_DIR}/Release+Asserts"
1069 fi 395 fi
1070 done 396 done
1071 cd "${LLVM_BUILD_DIR}" 397 cd "${LLVM_BUILD_DIR}"
1072 ${MAKE} check-all 398 ${MAKE} check-all
1073 cd - 399 cd -
1074 fi 400 fi
1075 401
1076 # After everything is done, log success for this revision. 402 # After everything is done, log success for this revision.
1077 echo "${CLANG_AND_PLUGINS_REVISION}" > "${STAMP_FILE}" 403 echo "${CLANG_AND_PLUGINS_REVISION}" > "${STAMP_FILE}"
OLDNEW
« no previous file with comments | « trunk/src/tools/clang/scripts/plugin_flags.sh ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698