diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2015-01-18 16:17:27 +0000 |
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2015-01-18 16:17:27 +0000 |
| commit | 67c32a98315f785a9ec9d531c1f571a0196c7463 (patch) | |
| tree | 4abb9cbeecc7901726dd0b4a37369596c852e9ef /test/CodeGen/SPARC | |
| parent | 9f61947910e6ab40de38e6b4034751ef1513200f (diff) | |
Notes
Diffstat (limited to 'test/CodeGen/SPARC')
| -rw-r--r-- | test/CodeGen/SPARC/2008-10-10-InlineAsmMemoryOperand.ll | 2 | ||||
| -rw-r--r-- | test/CodeGen/SPARC/empty-functions.ll | 32 | ||||
| -rw-r--r-- | test/CodeGen/SPARC/inlineasm.ll | 2 | ||||
| -rw-r--r-- | test/CodeGen/SPARC/mult-alt-generic-sparc.ll | 2 | ||||
| -rw-r--r-- | test/CodeGen/SPARC/setjmp.ll | 10 |
5 files changed, 40 insertions, 8 deletions
diff --git a/test/CodeGen/SPARC/2008-10-10-InlineAsmMemoryOperand.ll b/test/CodeGen/SPARC/2008-10-10-InlineAsmMemoryOperand.ll index e8315f17ebb6..373a1967307a 100644 --- a/test/CodeGen/SPARC/2008-10-10-InlineAsmMemoryOperand.ll +++ b/test/CodeGen/SPARC/2008-10-10-InlineAsmMemoryOperand.ll @@ -1,4 +1,4 @@ -; RUN: llc < %s -march=sparc +; RUN: llc < %s -march=sparc -no-integrated-as ; PR 1557 target datalayout = "E-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-f128:128:128" diff --git a/test/CodeGen/SPARC/empty-functions.ll b/test/CodeGen/SPARC/empty-functions.ll new file mode 100644 index 000000000000..38d288903d4a --- /dev/null +++ b/test/CodeGen/SPARC/empty-functions.ll @@ -0,0 +1,32 @@ +; RUN: llc < %s -mtriple=sparc-linux-gnu | FileCheck -check-prefix=LINUX-NO-FP %s +; RUN: llc < %s -mtriple=sparc-linux-gnu -disable-fp-elim | FileCheck -check-prefix=LINUX-FP %s + +define void @func() { +entry: + unreachable +} + +; An empty function is perfectly fine on ELF. +; LINUX-NO-FP: func: +; LINUX-NO-FP-NEXT: .cfi_startproc +; LINUX-NO-FP-NEXT: {{^}}! +; LINUX-NO-FP-NEXT: {{^}}.L{{.*}}:{{$}} +; LINUX-NO-FP-NEXT: .size func, .L{{.*}}-func +; LINUX-NO-FP-NEXT: .cfi_endproc + +; A cfi directive can point to the end of a function. It (and in fact the +; entire body) could be optimized out because of the unreachable, but we +; don't do it right now. +; LINUX-FP: func: +; LINUX-FP-NEXT: .cfi_startproc +; LINUX-FP-NEXT: {{^}}! +; LINUX-FP-NEXT: save %sp, -96, %sp +; LINUX-FP-NEXT: {{^}}.L{{.*}}:{{$}} +; LINUX-FP-NEXT: .cfi_def_cfa_register %fp +; LINUX-FP-NEXT: {{^}}.L{{.*}}:{{$}} +; LINUX-FP-NEXT: .cfi_window_save +; LINUX-FP-NEXT: {{^}}.L{{.*}}:{{$}} +; LINUX-FP-NEXT: .cfi_register 15, 31 +; LINUX-FP-NEXT: {{^}}.L{{.*}}:{{$}} +; LINUX-FP-NEXT: .size func, .Ltmp3-func +; LINUX-FP-NEXT: .cfi_endproc diff --git a/test/CodeGen/SPARC/inlineasm.ll b/test/CodeGen/SPARC/inlineasm.ll index 2650533b7fec..526cde8de8b4 100644 --- a/test/CodeGen/SPARC/inlineasm.ll +++ b/test/CodeGen/SPARC/inlineasm.ll @@ -1,4 +1,4 @@ -; RUN: llc -march=sparc <%s | FileCheck %s +; RUN: llc -march=sparc -no-integrated-as <%s | FileCheck %s ; CHECK-LABEL: test_constraint_r ; CHECK: add %o1, %o0, %o0 diff --git a/test/CodeGen/SPARC/mult-alt-generic-sparc.ll b/test/CodeGen/SPARC/mult-alt-generic-sparc.ll index 6013b17d9372..6a67616d53be 100644 --- a/test/CodeGen/SPARC/mult-alt-generic-sparc.ll +++ b/test/CodeGen/SPARC/mult-alt-generic-sparc.ll @@ -1,4 +1,4 @@ -; RUN: llc < %s -march=sparc +; RUN: llc < %s -march=sparc -no-integrated-as ; ModuleID = 'mult-alt-generic.c' target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-n32" target triple = "sparc" diff --git a/test/CodeGen/SPARC/setjmp.ll b/test/CodeGen/SPARC/setjmp.ll index a31cd7016731..17afb36ca74c 100644 --- a/test/CodeGen/SPARC/setjmp.ll +++ b/test/CodeGen/SPARC/setjmp.ll @@ -65,8 +65,8 @@ attributes #0 = { nounwind } attributes #1 = { noreturn nounwind } attributes #2 = { nounwind returns_twice } -!0 = metadata !{metadata !"alias set 6: struct.jmpbuf_env*", metadata !1} -!1 = metadata !{metadata !1} -!2 = metadata !{metadata !"alias set 3: int", metadata !1} -!3 = metadata !{metadata !0, metadata !0, i64 0} -!4 = metadata !{metadata !2, metadata !2, i64 0} +!0 = !{!"alias set 6: struct.jmpbuf_env*", !1} +!1 = !{!1} +!2 = !{!"alias set 3: int", !1} +!3 = !{!0, !0, i64 0} +!4 = !{!2, !2, i64 0} |
