summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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