diff options
| author | Roman Lebedev <lebedev.ri@gmail.com> | 2019-05-22 13:04:34 +0000 |
|---|---|---|
| committer | Roman Lebedev <lebedev.ri@gmail.com> | 2019-05-22 13:04:34 +0000 |
| commit | 7c72ca012d563415d7a36737d4c903f7ec988679 (patch) | |
| tree | 98e9c0f545109c73470252444a8be1f0890ae9f5 /llvm/test/CodeGen/SPARC | |
| parent | 4bf35671b5a3b1ba666e1b2dee3412562a21d283 (diff) | |
| download | bcm5719-llvm-7c72ca012d563415d7a36737d4c903f7ec988679.tar.gz bcm5719-llvm-7c72ca012d563415d7a36737d4c903f7ec988679.zip | |
UpdateTestChecks: sparc march handling
Summary:
Another target that prefers to use `-march` in tests
```
llvm/test/CodeGen/SPARC$ grep -ri mtriple | wc -l
25
llvm/test/CodeGen/SPARC$ grep -ri march | wc -l
165
```
This test is being affected by a further patch,
so regenerate it to better visualize the changes
Reviewers: RKSimon, dcederman, gberry
Reviewed By: RKSimon
Subscribers: jyknight, fedor.sergeev, jrtc27, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D62242
llvm-svn: 361381
Diffstat (limited to 'llvm/test/CodeGen/SPARC')
| -rw-r--r-- | llvm/test/CodeGen/SPARC/2013-05-17-CallFrame.ll | 79 |
1 files changed, 62 insertions, 17 deletions
diff --git a/llvm/test/CodeGen/SPARC/2013-05-17-CallFrame.ll b/llvm/test/CodeGen/SPARC/2013-05-17-CallFrame.ll index ad929849ae8..1a97e4e317e 100644 --- a/llvm/test/CodeGen/SPARC/2013-05-17-CallFrame.ll +++ b/llvm/test/CodeGen/SPARC/2013-05-17-CallFrame.ll @@ -1,27 +1,72 @@ +; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py ; RUN: llc -march=sparc < %s | FileCheck %s --check-prefix=V8 ; RUN: llc -march=sparcv9 < %s | FileCheck %s --check-prefix=SPARC64 -; V8-LABEL: variable_alloca_with_adj_call_stack -; V8: save %sp, -96, %sp ; (this should ideally be doing "add 4+7; and -8", instead of ; "add 7; and -8; add 8"; see comments in LowerDYNAMIC_STACKALLOC) -; V8: add %i0, 7, %i0 -; V8-NEXT: and %i0, -8, %i0 -; V8-NEXT: add %i0, 8, %i0 -; V8-NEXT: sub %sp, %i0, %i0 -; V8-NEXT: add %i0, 96, %o0 -; V8: add %sp, -16, %sp -; V8: call foo -; V8: add %sp, 16, %sp - -; SPARC64-LABEL: variable_alloca_with_adj_call_stack -; SPARC64: save %sp, -128, %sp -; SPARC64: add {{.+}}, 2175, %o0 -; SPARC64: add %sp, -80, %sp -; SPARC64: call foo -; SPARC64: add %sp, 80, %sp define void @variable_alloca_with_adj_call_stack(i32 %num) { +; V8-LABEL: variable_alloca_with_adj_call_stack: +; V8: .cfi_startproc +; V8-NEXT: ! %bb.0: ! %entry +; V8-NEXT: save %sp, -96, %sp +; V8-NEXT: .cfi_def_cfa_register %fp +; V8-NEXT: .cfi_window_save +; V8-NEXT: .cfi_register 15, 31 +; V8-NEXT: add %i0, 7, %i0 +; V8-NEXT: and %i0, -8, %i0 +; V8-NEXT: add %i0, 8, %i0 +; V8-NEXT: sub %sp, %i0, %i0 +; V8-NEXT: add %i0, 96, %o0 +; V8-NEXT: mov %i0, %sp +; V8-NEXT: add %sp, -16, %sp +; V8-NEXT: st %o0, [%sp+104] +; V8-NEXT: st %o0, [%sp+100] +; V8-NEXT: st %o0, [%sp+96] +; V8-NEXT: st %o0, [%sp+92] +; V8-NEXT: mov %o0, %o1 +; V8-NEXT: mov %o0, %o2 +; V8-NEXT: mov %o0, %o3 +; V8-NEXT: mov %o0, %o4 +; V8-NEXT: call foo +; V8-NEXT: mov %o0, %o5 +; V8-NEXT: add %sp, 16, %sp +; V8-NEXT: ret +; V8-NEXT: restore +; +; SPARC64-LABEL: variable_alloca_with_adj_call_stack: +; SPARC64: .cfi_startproc +; SPARC64-NEXT: ! %bb.0: ! %entry +; SPARC64-NEXT: save %sp, -128, %sp +; SPARC64-NEXT: .cfi_def_cfa_register %fp +; SPARC64-NEXT: .cfi_window_save +; SPARC64-NEXT: .cfi_register 15, 31 +; SPARC64-NEXT: srl %i0, 0, %i0 +; SPARC64-NEXT: add %i0, 15, %i0 +; SPARC64-NEXT: sethi 4194303, %i1 +; SPARC64-NEXT: or %i1, 1008, %i1 +; SPARC64-NEXT: sethi 0, %i2 +; SPARC64-NEXT: or %i2, 1, %i2 +; SPARC64-NEXT: sllx %i2, 32, %i2 +; SPARC64-NEXT: or %i2, %i1, %i1 +; SPARC64-NEXT: and %i0, %i1, %i0 +; SPARC64-NEXT: sub %sp, %i0, %i0 +; SPARC64-NEXT: add %i0, 2175, %o0 +; SPARC64-NEXT: mov %i0, %sp +; SPARC64-NEXT: add %sp, -80, %sp +; SPARC64-NEXT: stx %o0, [%sp+2247] +; SPARC64-NEXT: stx %o0, [%sp+2239] +; SPARC64-NEXT: stx %o0, [%sp+2231] +; SPARC64-NEXT: stx %o0, [%sp+2223] +; SPARC64-NEXT: mov %o0, %o1 +; SPARC64-NEXT: mov %o0, %o2 +; SPARC64-NEXT: mov %o0, %o3 +; SPARC64-NEXT: mov %o0, %o4 +; SPARC64-NEXT: call foo +; SPARC64-NEXT: mov %o0, %o5 +; SPARC64-NEXT: add %sp, 80, %sp +; SPARC64-NEXT: ret +; SPARC64-NEXT: restore entry: %0 = alloca i8, i32 %num, align 8 call void @foo(i8* %0, i8* %0, i8* %0, i8* %0, i8* %0, i8* %0, i8* %0, i8* %0, i8* %0, i8* %0) |

