summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2015-02-17 20:50:39 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2015-02-17 20:50:39 +0000
commit928e9ae89cc99f4e827faa47dba5032a503be92a (patch)
tree7ec7c7c794e1c52248fbec91aa1412a1c2310923
parent68fa249cb5a9755f05e437db618d85e0097de8c3 (diff)
downloadbcm5719-llvm-928e9ae89cc99f4e827faa47dba5032a503be92a.tar.gz
bcm5719-llvm-928e9ae89cc99f4e827faa47dba5032a503be92a.zip
Add testcases I missed in r229541.
llvm-svn: 229542
-rw-r--r--llvm/test/CodeGen/X86/non-unique-sections.ll15
-rw-r--r--llvm/test/MC/ELF/section-unique.s39
2 files changed, 54 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/X86/non-unique-sections.ll b/llvm/test/CodeGen/X86/non-unique-sections.ll
new file mode 100644
index 00000000000..e588b9dda98
--- /dev/null
+++ b/llvm/test/CodeGen/X86/non-unique-sections.ll
@@ -0,0 +1,15 @@
+; RUN: llc < %s -mtriple=x86_64-pc-linux -function-sections -unique-section-names=false | FileCheck %s
+
+; CHECK: .section .text,"ax",@progbits,unique
+; CHECK-NOT: section
+; CHECK: f:
+define void @f() {
+ ret void
+}
+
+; CHECK: .section .text,"ax",@progbits,unique
+; CHECK-NOT: section
+; CHECK: g:
+define void @g() {
+ ret void
+}
diff --git a/llvm/test/MC/ELF/section-unique.s b/llvm/test/MC/ELF/section-unique.s
new file mode 100644
index 00000000000..b482af3d101
--- /dev/null
+++ b/llvm/test/MC/ELF/section-unique.s
@@ -0,0 +1,39 @@
+// RUN: llvm-mc -triple x86_64-pc-linux-gnu %s -o - | FileCheck %s
+// RUN: llvm-mc -triple x86_64-pc-linux-gnu %s -filetype=obj -o - | llvm-readobj -t | FileCheck %s --check-prefix=OBJ
+
+ .section .text,"ax",@progbits,unique
+ .globl f
+f:
+ nop
+
+ .section .text,"ax",@progbits,unique
+ .globl g
+g:
+ nop
+
+// test that f and g are in different sections.
+
+// CHECK: .section .text,"ax",@progbits,unique
+// CHECK: f:
+
+// CHECK: .section .text,"ax",@progbits,unique
+// CHECK: g:
+
+// OBJ: Symbol {
+// OBJ: Name: f
+// OBJ: Value: 0x0
+// OBJ: Size: 0
+// OBJ: Binding: Global
+// OBJ: Type: None
+// OBJ: Other: 0
+// OBJ: Section: .text (0x4)
+// OBJ: }
+// OBJ: Symbol {
+// OBJ: Name: g
+// OBJ: Value: 0x0
+// OBJ: Size: 0
+// OBJ: Binding: Global
+// OBJ: Type: None
+// OBJ: Other: 0
+// OBJ: Section: .text (0x5)
+// OBJ: }
OpenPOWER on IntegriCloud