summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/CodeGen/X86/alias-gep.ll22
-rw-r--r--llvm/test/MC/MachO/absolute.s9
-rw-r--r--llvm/test/MC/MachO/altentry.s55
-rw-r--r--llvm/test/MC/MachO/variable-exprs.s8
-rw-r--r--llvm/test/MC/MachO/x86_64-reloc-arithmetic.s3
5 files changed, 89 insertions, 8 deletions
diff --git a/llvm/test/CodeGen/X86/alias-gep.ll b/llvm/test/CodeGen/X86/alias-gep.ll
new file mode 100644
index 00000000000..5ecf20ba78e
--- /dev/null
+++ b/llvm/test/CodeGen/X86/alias-gep.ll
@@ -0,0 +1,22 @@
+; RUN: llc < %s -mtriple=x86_64-apple-darwin | FileCheck --check-prefix=MACHO %s
+; RUN: llc < %s -mtriple=x86_64-pc-linux | FileCheck --check-prefix=ELF %s
+
+;MACHO: .globl _offsetSym0
+;MACHO-NOT: .alt_entry
+;MACHO: _offsetSym0 = _s
+;MACHO: .globl _offsetSym1
+;MACHO: .alt_entry _offsetSym1
+;MACHO: _offsetSym1 = _s+8
+
+;ELF: .globl offsetSym0
+;ELF-NOT: .alt_entry
+;ELF: offsetSym0 = s
+;ELF: .globl offsetSym1
+;ELF-NOT: .alt_entry
+;ELF: offsetSym1 = s+8
+
+%struct.S1 = type { i32, i32, i32 }
+
+@s = global %struct.S1 { i32 31, i32 32, i32 33 }, align 4
+@offsetSym0 = alias i32, i32* getelementptr inbounds (%struct.S1, %struct.S1* @s, i64 0, i32 0)
+@offsetSym1 = alias i32, i32* getelementptr inbounds (%struct.S1, %struct.S1* @s, i64 0, i32 2)
diff --git a/llvm/test/MC/MachO/absolute.s b/llvm/test/MC/MachO/absolute.s
index 36a0ae5ec5b..26850a2d09a 100644
--- a/llvm/test/MC/MachO/absolute.s
+++ b/llvm/test/MC/MachO/absolute.s
@@ -79,7 +79,8 @@ foo_equals2 = (_foo - _bar + 0xffff0000)
// CHECK: Type: Section (0xE)
// CHECK: Section: __text (0x1)
// CHECK: RefType: UndefinedNonLazy (0x0)
-// CHECK: Flags [ (0x20)
+// CHECK: Flags [ (0x220)
+// CHECK: AltEntry (0x200)
// CHECK: NoDeadStrip (0x20)
// CHECK: ]
// CHECK: Value: 0xFFFF0001
@@ -99,7 +100,8 @@ foo_equals2 = (_foo - _bar + 0xffff0000)
// CHECK: Type: Section (0xE)
// CHECK: Section: __text (0x1)
// CHECK: RefType: UndefinedNonLazy (0x0)
-// CHECK: Flags [ (0x0)
+// CHECK: Flags [ (0x200)
+// CHECK: AltEntry (0x200)
// CHECK: ]
// CHECK: Value: 0xFFFF0001
// CHECK: }
@@ -118,7 +120,8 @@ foo_equals2 = (_foo - _bar + 0xffff0000)
// CHECK: Type: Section (0xE)
// CHECK: Section: __text (0x1)
// CHECK: RefType: UndefinedNonLazy (0x0)
-// CHECK: Flags [ (0x20)
+// CHECK: Flags [ (0x220)
+// CHECK: AltEntry (0x200)
// CHECK: NoDeadStrip (0x20)
// CHECK: ]
// CHECK: Value: 0xFFFF0001
diff --git a/llvm/test/MC/MachO/altentry.s b/llvm/test/MC/MachO/altentry.s
new file mode 100644
index 00000000000..73cc26120f4
--- /dev/null
+++ b/llvm/test/MC/MachO/altentry.s
@@ -0,0 +1,55 @@
+// RUN: llvm-mc -triple x86_64-apple-darwin -filetype=obj %s -o - | llvm-readobj -t | FileCheck %s
+
+ // CHECK: Symbol {
+ // CHECK: Name: _offsetsym0
+ // CHECK: Flags [ (0x0)
+ // CHECK: Value: 0x0
+
+ // CHECK: Symbol {
+ // CHECK: Name: _offsetsym1
+ // CHECK: Flags [ (0x200)
+ // CHECK: Value: 0x4
+
+ // CHECK: Symbol {
+ // CHECK: Name: _offsetsym2
+ // CHECK: Flags [ (0x200)
+ // CHECK: Value: 0x8
+
+ // CHECK: Symbol {
+ // CHECK: Name: _offsetsym3
+ // CHECK: Flags [ (0x200)
+ // CHECK: Value: 0x18
+
+ // CHECK: Symbol {
+ // CHECK: Symbol {
+ // CHECK: Symbol {
+
+ .section __TEXT,__text,regular,pure_instructions
+ .comm _g0,4,2
+ .section __DATA,__data
+ .globl _s0
+ .align 3
+_s0:
+ .long 31
+ .long 32
+ .quad _g0
+
+ .globl _s1
+ .align 3
+_s1:
+ .long 33
+ .long 34
+ .quad _g0
+
+ .globl _offsetsym0
+ _offsetsym0 = _s0
+ .globl _offsetsym1
+ .alt_entry _offsetsym1
+ _offsetsym1 = _s0+4
+ .globl _offsetsym2
+ .alt_entry _offsetsym2
+ _offsetsym2 = _s0+8
+ .globl _offsetsym3
+ .alt_entry _offsetsym3
+ _offsetsym3 = _s1+8
+ .subsections_via_symbols
diff --git a/llvm/test/MC/MachO/variable-exprs.s b/llvm/test/MC/MachO/variable-exprs.s
index 85f395fd3be..5369622d8cf 100644
--- a/llvm/test/MC/MachO/variable-exprs.s
+++ b/llvm/test/MC/MachO/variable-exprs.s
@@ -151,7 +151,7 @@ Lt0_x = Lt0_a - Lt0_b
// CHECK-I386: Type: Section (0xE)
// CHECK-I386: Section: __data (0x2)
// CHECK-I386: RefType: UndefinedNonLazy (0x0)
-// CHECK-I386: Flags [ (0x0)
+// CHECK-I386: Flags [ (0x200)
// CHECK-I386: ]
// CHECK-I386: Value: 0x9
// CHECK-I386: }
@@ -208,7 +208,7 @@ Lt0_x = Lt0_a - Lt0_b
// CHECK-I386: Type: Undef (0x0)
// CHECK-I386: Section: (0x0)
// CHECK-I386: RefType: UndefinedNonLazy (0x0)
-// CHECK-I386: Flags [ (0x0)
+// CHECK-I386: Flags [ (0x200)
// CHECK-I386: ]
// CHECK-I386: Value: 0x0
// CHECK-I386: }
@@ -360,7 +360,7 @@ Lt0_x = Lt0_a - Lt0_b
// CHECK-X86_64: Type: Section (0xE)
// CHECK-X86_64: Section: __data (0x2)
// CHECK-X86_64: RefType: UndefinedNonLazy (0x0)
-// CHECK-X86_64: Flags [ (0x0)
+// CHECK-X86_64: Flags [ (0x200)
// CHECK-X86_64: ]
// CHECK-X86_64: Value: 0x9
// CHECK-X86_64: }
@@ -417,7 +417,7 @@ Lt0_x = Lt0_a - Lt0_b
// CHECK-X86_64: Type: Undef (0x0)
// CHECK-X86_64: Section: (0x0)
// CHECK-X86_64: RefType: UndefinedNonLazy (0x0)
-// CHECK-X86_64: Flags [ (0x0)
+// CHECK-X86_64: Flags [ (0x200)
// CHECK-X86_64: ]
// CHECK-X86_64: Value: 0x0
// CHECK-X86_64: }
diff --git a/llvm/test/MC/MachO/x86_64-reloc-arithmetic.s b/llvm/test/MC/MachO/x86_64-reloc-arithmetic.s
index de524791faa..bce9dbdbe4c 100644
--- a/llvm/test/MC/MachO/x86_64-reloc-arithmetic.s
+++ b/llvm/test/MC/MachO/x86_64-reloc-arithmetic.s
@@ -31,7 +31,8 @@ _baz:
// CHECK-NEXT: Type: Section (0xE)
// CHECK-NEXT: Section: __text (0x1)
// CHECK-NEXT: RefType: UndefinedNonLazy (0x0)
-// CHECK-NEXT: Flags [ (0x0)
+// CHECK-NEXT: Flags [ (0x200)
+// CHECK-NEXT: AltEntry (0x200)
// CHECK-NEXT: ]
// CHECK-NEXT: Value: 0x102
// CHECK-NEXT: }
OpenPOWER on IntegriCloud