1d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// RUN: llvm-mc -triple x86_64-apple-darwin9 %s -filetype=obj -o - | macho-dump --dump-section-data | FileCheck %s
2d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby
3d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// Test case for rdar://10743265
4d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby
5d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// This tests that this expression does not cause a crash and produces two
6d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// relocation entries:
7d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// Relocation information (__TEXT,__text) 2 entries
8d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// address  pcrel length extern type    scattered symbolnum/value
9d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// 00000000 False long   True   SUB     False     _base
10d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// 00000000 False long   True   UNSIGND False     _start_ap_2
11d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby
12d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby_base = .
13d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby
14d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby.long (0x2000) + _start_ap_2 - _base
15d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby.word 0
16d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby
17d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby_start_ap_2:
18d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby        cli
19d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby
20d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// CHECK:   ('_relocations', [
21d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// CHECK:     # Relocation 0
22d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// CHECK:     (('word-0', 0x0),
23d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// CHECK:      ('word-1', 0x5c000000)),
24d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// CHECK:     # Relocation 1
25d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// CHECK:     (('word-0', 0x0),
26d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// CHECK:      ('word-1', 0xc000001)),
27d49b2a7a9d927bb8c314a8c66f7f2e5f3aef4ffdKevin Enderby// CHECK:   ])
28