2010-10-27 15:18:17 +00:00
|
|
|
// RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | elf-dump | FileCheck %s
|
|
|
|
|
|
|
|
defined1:
|
|
|
|
defined2:
|
|
|
|
defined3:
|
|
|
|
.symver defined1, bar1@zed
|
|
|
|
.symver undefined1, bar2@zed
|
|
|
|
|
|
|
|
.symver defined2, bar3@@zed
|
|
|
|
|
|
|
|
.symver defined3, bar5@@@zed
|
|
|
|
.symver undefined3, bar6@@@zed
|
|
|
|
|
|
|
|
.long defined1
|
|
|
|
.long undefined1
|
|
|
|
.long defined2
|
|
|
|
.long defined3
|
|
|
|
.long undefined3
|
|
|
|
|
2010-10-28 18:33:03 +00:00
|
|
|
.global global1
|
|
|
|
.symver global1, g1@@zed
|
|
|
|
global1:
|
|
|
|
|
|
|
|
|
2011-08-04 14:01:03 +00:00
|
|
|
// CHECK: # Relocation 0
|
2011-08-04 17:00:11 +00:00
|
|
|
// CHECK-NEXT: (('r_offset', 0x0000000000000000)
|
2011-03-20 18:44:20 +00:00
|
|
|
// CHECK-NEXT: ('r_sym', 0x00000006)
|
|
|
|
// CHECK-NEXT: ('r_type', 0x0000000a)
|
2011-08-04 13:00:24 +00:00
|
|
|
// CHECK-NEXT: ('r_addend', 0x0000000000000000)
|
2011-03-20 18:44:20 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:01:03 +00:00
|
|
|
// CHECK-NEXT: # Relocation 1
|
2011-08-04 17:00:11 +00:00
|
|
|
// CHECK-NEXT: (('r_offset', 0x0000000000000004)
|
2011-03-20 18:44:20 +00:00
|
|
|
// CHECK-NEXT: ('r_sym', 0x0000000b)
|
|
|
|
// CHECK-NEXT: ('r_type', 0x0000000a)
|
2011-08-04 13:00:24 +00:00
|
|
|
// CHECK-NEXT: ('r_addend', 0x0000000000000000)
|
2011-03-20 18:44:20 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:01:03 +00:00
|
|
|
// CHECK-NEXT: # Relocation 2
|
2011-08-04 17:00:11 +00:00
|
|
|
// CHECK-NEXT: (('r_offset', 0x0000000000000008)
|
2011-03-20 18:44:20 +00:00
|
|
|
// CHECK-NEXT: ('r_sym', 0x00000006)
|
|
|
|
// CHECK-NEXT: ('r_type', 0x0000000a)
|
2011-08-04 13:00:24 +00:00
|
|
|
// CHECK-NEXT: ('r_addend', 0x0000000000000000)
|
2011-03-20 18:44:20 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:01:03 +00:00
|
|
|
// CHECK-NEXT: # Relocation 3
|
2011-08-04 17:00:11 +00:00
|
|
|
// CHECK-NEXT: (('r_offset', 0x000000000000000c)
|
2011-03-20 18:44:20 +00:00
|
|
|
// CHECK-NEXT: ('r_sym', 0x00000006)
|
|
|
|
// CHECK-NEXT: ('r_type', 0x0000000a)
|
2011-08-04 13:00:24 +00:00
|
|
|
// CHECK-NEXT: ('r_addend', 0x0000000000000000)
|
2011-03-20 18:44:20 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:01:03 +00:00
|
|
|
// CHECK-NEXT: # Relocation 4
|
2011-08-04 17:00:11 +00:00
|
|
|
// CHECK-NEXT: (('r_offset', 0x0000000000000010)
|
2011-03-20 18:44:20 +00:00
|
|
|
// CHECK-NEXT: ('r_sym', 0x0000000c)
|
|
|
|
// CHECK-NEXT: ('r_type', 0x0000000a)
|
2011-08-04 13:00:24 +00:00
|
|
|
// CHECK-NEXT: ('r_addend', 0x0000000000000000)
|
2011-03-20 18:44:20 +00:00
|
|
|
// CHECK-NEXT: ),
|
|
|
|
// CHECK-NEXT:])
|
|
|
|
|
2011-08-04 14:27:46 +00:00
|
|
|
// CHECK: # Symbol 1
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: (('st_name', 0x00000013) # 'bar1@zed'
|
2011-08-04 15:10:35 +00:00
|
|
|
// CHECK-NEXT: ('st_bind', 0x0)
|
2011-08-04 15:24:00 +00:00
|
|
|
// CHECK-NEXT: ('st_type', 0x0)
|
2011-08-04 15:38:19 +00:00
|
|
|
// CHECK-NEXT: ('st_other', 0x00)
|
2011-08-04 15:50:13 +00:00
|
|
|
// CHECK-NEXT: ('st_shndx', 0x0001)
|
2010-12-20 20:49:43 +00:00
|
|
|
// CHECK-NEXT: ('st_value', 0x0000000000000000)
|
|
|
|
// CHECK-NEXT: ('st_size', 0x0000000000000000)
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:27:46 +00:00
|
|
|
// CHECK-NEXT: # Symbol 2
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: (('st_name', 0x00000025) # 'bar3@@zed'
|
2011-08-04 15:10:35 +00:00
|
|
|
// CHECK-NEXT: ('st_bind', 0x0)
|
2011-08-04 15:24:00 +00:00
|
|
|
// CHECK-NEXT: ('st_type', 0x0)
|
2011-08-04 15:38:19 +00:00
|
|
|
// CHECK-NEXT: ('st_other', 0x00)
|
2011-08-04 15:50:13 +00:00
|
|
|
// CHECK-NEXT: ('st_shndx', 0x0001)
|
2010-12-20 20:49:43 +00:00
|
|
|
// CHECK-NEXT: ('st_value', 0x0000000000000000)
|
|
|
|
// CHECK-NEXT: ('st_size', 0x0000000000000000)
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:27:46 +00:00
|
|
|
// CHECK-NEXT: # Symbol 3
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: (('st_name', 0x0000002f) # 'bar5@@zed'
|
2011-08-04 15:10:35 +00:00
|
|
|
// CHECK-NEXT: ('st_bind', 0x0)
|
2011-08-04 15:24:00 +00:00
|
|
|
// CHECK-NEXT: ('st_type', 0x0)
|
2011-08-04 15:38:19 +00:00
|
|
|
// CHECK-NEXT: ('st_other', 0x00)
|
2011-08-04 15:50:13 +00:00
|
|
|
// CHECK-NEXT: ('st_shndx', 0x0001)
|
2010-12-20 20:49:43 +00:00
|
|
|
// CHECK-NEXT: ('st_value', 0x0000000000000000)
|
|
|
|
// CHECK-NEXT: ('st_size', 0x0000000000000000)
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:27:46 +00:00
|
|
|
// CHECK-NEXT: # Symbol 4
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: (('st_name', 0x00000001) # 'defined1'
|
2011-08-04 15:10:35 +00:00
|
|
|
// CHECK-NEXT: ('st_bind', 0x0)
|
2011-08-04 15:24:00 +00:00
|
|
|
// CHECK-NEXT: ('st_type', 0x0)
|
2011-08-04 15:38:19 +00:00
|
|
|
// CHECK-NEXT: ('st_other', 0x00)
|
2011-08-04 15:50:13 +00:00
|
|
|
// CHECK-NEXT: ('st_shndx', 0x0001)
|
2010-12-20 20:49:43 +00:00
|
|
|
// CHECK-NEXT: ('st_value', 0x0000000000000000)
|
|
|
|
// CHECK-NEXT: ('st_size', 0x0000000000000000)
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:27:46 +00:00
|
|
|
// CHECK-NEXT: # Symbol 5
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: (('st_name', 0x0000000a) # 'defined2'
|
2011-08-04 15:10:35 +00:00
|
|
|
// CHECK-NEXT: ('st_bind', 0x0)
|
2011-08-04 15:24:00 +00:00
|
|
|
// CHECK-NEXT: ('st_type', 0x0)
|
2011-08-04 15:38:19 +00:00
|
|
|
// CHECK-NEXT: ('st_other', 0x00)
|
2011-08-04 15:50:13 +00:00
|
|
|
// CHECK-NEXT: ('st_shndx', 0x0001)
|
2010-12-20 20:49:43 +00:00
|
|
|
// CHECK-NEXT: ('st_value', 0x0000000000000000)
|
|
|
|
// CHECK-NEXT: ('st_size', 0x0000000000000000)
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:27:46 +00:00
|
|
|
// CHECK-NEXT: # Symbol 6
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: (('st_name', 0x00000000) # ''
|
2011-08-04 15:10:35 +00:00
|
|
|
// CHECK-NEXT: ('st_bind', 0x0)
|
2011-08-04 15:24:00 +00:00
|
|
|
// CHECK-NEXT: ('st_type', 0x3)
|
2011-08-04 15:38:19 +00:00
|
|
|
// CHECK-NEXT: ('st_other', 0x00)
|
2011-08-04 15:50:13 +00:00
|
|
|
// CHECK-NEXT: ('st_shndx', 0x0001)
|
2010-12-20 20:49:43 +00:00
|
|
|
// CHECK-NEXT: ('st_value', 0x0000000000000000)
|
|
|
|
// CHECK-NEXT: ('st_size', 0x0000000000000000)
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:27:46 +00:00
|
|
|
// CHECK-NEXT: # Symbol 7
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: (('st_name', 0x00000000) # ''
|
2011-08-04 15:10:35 +00:00
|
|
|
// CHECK-NEXT: ('st_bind', 0x0)
|
2011-08-04 15:24:00 +00:00
|
|
|
// CHECK-NEXT: ('st_type', 0x3)
|
2011-08-04 15:38:19 +00:00
|
|
|
// CHECK-NEXT: ('st_other', 0x00)
|
2011-08-04 15:50:13 +00:00
|
|
|
// CHECK-NEXT: ('st_shndx', 0x0003)
|
2010-12-20 20:49:43 +00:00
|
|
|
// CHECK-NEXT: ('st_value', 0x0000000000000000)
|
|
|
|
// CHECK-NEXT: ('st_size', 0x0000000000000000)
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:27:46 +00:00
|
|
|
// CHECK-NEXT: # Symbol 8
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: (('st_name', 0x00000000) # ''
|
2011-08-04 15:10:35 +00:00
|
|
|
// CHECK-NEXT: ('st_bind', 0x0)
|
2011-08-04 15:24:00 +00:00
|
|
|
// CHECK-NEXT: ('st_type', 0x3)
|
2011-08-04 15:38:19 +00:00
|
|
|
// CHECK-NEXT: ('st_other', 0x00)
|
2011-08-04 15:50:13 +00:00
|
|
|
// CHECK-NEXT: ('st_shndx', 0x0004)
|
2010-12-20 20:49:43 +00:00
|
|
|
// CHECK-NEXT: ('st_value', 0x0000000000000000)
|
|
|
|
// CHECK-NEXT: ('st_size', 0x0000000000000000)
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:27:46 +00:00
|
|
|
// CHECK-NEXT: # Symbol 9
|
2010-10-28 18:33:03 +00:00
|
|
|
// CHECK-NEXT: (('st_name', 0x0000004a) # 'g1@@zed'
|
2011-08-04 15:10:35 +00:00
|
|
|
// CHECK-NEXT: ('st_bind', 0x1)
|
2011-08-04 15:24:00 +00:00
|
|
|
// CHECK-NEXT: ('st_type', 0x0)
|
2011-08-04 15:38:19 +00:00
|
|
|
// CHECK-NEXT: ('st_other', 0x00)
|
2011-08-04 15:50:13 +00:00
|
|
|
// CHECK-NEXT: ('st_shndx', 0x0001)
|
2010-12-20 20:49:43 +00:00
|
|
|
// CHECK-NEXT: ('st_value', 0x0000000000000014)
|
|
|
|
// CHECK-NEXT: ('st_size', 0x0000000000000000)
|
2010-10-28 18:33:03 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:27:46 +00:00
|
|
|
// CHECK-NEXT: # Symbol 10
|
2010-10-28 18:33:03 +00:00
|
|
|
// CHECK-NEXT: (('st_name', 0x00000042) # 'global1'
|
2011-08-04 15:10:35 +00:00
|
|
|
// CHECK-NEXT: ('st_bind', 0x1)
|
2011-08-04 15:24:00 +00:00
|
|
|
// CHECK-NEXT: ('st_type', 0x0)
|
2011-08-04 15:38:19 +00:00
|
|
|
// CHECK-NEXT: ('st_other', 0x00)
|
2011-08-04 15:50:13 +00:00
|
|
|
// CHECK-NEXT: ('st_shndx', 0x0001)
|
2010-12-20 20:49:43 +00:00
|
|
|
// CHECK-NEXT: ('st_value', 0x0000000000000014)
|
|
|
|
// CHECK-NEXT: ('st_size', 0x0000000000000000)
|
2010-10-28 18:33:03 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:27:46 +00:00
|
|
|
// CHECK-NEXT: # Symbol 11
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: (('st_name', 0x0000001c) # 'bar2@zed'
|
2011-08-04 15:10:35 +00:00
|
|
|
// CHECK-NEXT: ('st_bind', 0x1)
|
2011-08-04 15:24:00 +00:00
|
|
|
// CHECK-NEXT: ('st_type', 0x0)
|
2011-08-04 15:38:19 +00:00
|
|
|
// CHECK-NEXT: ('st_other', 0x00)
|
2011-08-04 15:50:13 +00:00
|
|
|
// CHECK-NEXT: ('st_shndx', 0x0000)
|
2010-12-20 20:49:43 +00:00
|
|
|
// CHECK-NEXT: ('st_value', 0x0000000000000000)
|
|
|
|
// CHECK-NEXT: ('st_size', 0x0000000000000000)
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: ),
|
2011-08-04 14:27:46 +00:00
|
|
|
// CHECK-NEXT: # Symbol 12
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: (('st_name', 0x00000039) # 'bar6@zed'
|
2011-08-04 15:10:35 +00:00
|
|
|
// CHECK-NEXT: ('st_bind', 0x1)
|
2011-08-04 15:24:00 +00:00
|
|
|
// CHECK-NEXT: ('st_type', 0x0)
|
2011-08-04 15:38:19 +00:00
|
|
|
// CHECK-NEXT: ('st_other', 0x00)
|
2011-08-04 15:50:13 +00:00
|
|
|
// CHECK-NEXT: ('st_shndx', 0x0000)
|
2010-12-20 20:49:43 +00:00
|
|
|
// CHECK-NEXT: ('st_value', 0x0000000000000000)
|
|
|
|
// CHECK-NEXT: ('st_size', 0x0000000000000000)
|
2010-10-27 15:18:17 +00:00
|
|
|
// CHECK-NEXT: ),
|
|
|
|
// CHECK-NEXT:])
|