1 // RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | elf-dump --dump-section-data | FileCheck %s
3 // Test that we produce a R_X86_64_32S or R_X86_64_32.
6 movl $bar, %edx // R_X86_64_32
7 movq $bar, %rdx // R_X86_64_32S
8 movq $bar, bar(%rip) // R_X86_64_32S
9 movl bar, %edx // R_X86_64_32S
10 movq bar, %rdx // R_X86_64_32S
11 .long bar // R_X86_64_32
14 // CHECK: (('sh_name', 1) # '.text'
17 // CHECK: (('st_name', 0) # ''
18 // CHECK: ('st_bind', 0)
19 // CHECK ('st_type', 3)
20 // CHECK: ('st_other', 0)
21 // CHECK: ('st_shndx', 1)
23 // CHECK: # Relocation 0
24 // CHECK-NEXT: (('r_offset', 1)
25 // CHECK-NEXT: ('r_sym', 2)
26 // CHECK-NEXT: ('r_type', 10)
27 // CHECK-NEXT: ('r_addend',
29 // CHECK: # Relocation 1
30 // CHECK-NEXT: (('r_offset', 8)
31 // CHECK-NEXT: ('r_sym', 2)
32 // CHECK-NEXT: ('r_type', 11)
33 // CHECK-NEXT: ('r_addend',
35 // CHECK: # Relocation 2
36 // CHECK-NEXT: (('r_offset', 19)
37 // CHECK-NEXT: ('r_sym', 2)
38 // CHECK-NEXT: ('r_type', 11)
39 // CHECK-NEXT: ('r_addend',
41 // CHECK: # Relocation 3
42 // CHECK-NEXT: (('r_offset', 26)
43 // CHECK-NEXT: ('r_sym', 2)
44 // CHECK-NEXT: ('r_type', 11)
45 // CHECK-NEXT: ('r_addend',
47 // CHECK: # Relocation 4
48 // CHECK-NEXT: (('r_offset', 34)
49 // CHECK-NEXT: ('r_sym', 2)
50 // CHECK-NEXT: ('r_type', 11)
51 // CHECK-NEXT: ('r_addend',
53 // CHECK: # Relocation 5
54 // CHECK-NEXT: (('r_offset', 38)
55 // CHECK-NEXT: ('r_sym', 2)
56 // CHECK-NEXT: ('r_type', 10)
57 // CHECK-NEXT: ('r_addend',