1@ RUN: llvm-mc -filetype=obj -triple arm-none-linux-gnueabi %s -o - | llvm-readobj -r --symbols - | FileCheck %s 2@ RUN: llvm-mc -filetype=obj -triple thumb-none-linux-gnueabi %s -o - | llvm-readobj -r --symbols - | FileCheck %s 3 4defined1: 5defined2: 6defined3: 7 .symver defined1, bar1@zed 8 .symver undefined1, bar2@zed 9 10 .symver defined2, bar3@@zed 11 12 .symver defined3, bar5@@@zed 13 .symver undefined3, bar6@@@zed 14 15 .long defined1 16 .long undefined1 17 .long defined2 18 .long defined3 19 .long undefined3 20 21 .global global1 22 .symver global1, g1@@zed 23global1: 24 25@ CHECK: Relocations [ 26@ CHECK-NEXT: Section {{.*}} .rel.text { 27@ CHECK-NEXT: 0x0 R_ARM_ABS32 .text 28@ CHECK-NEXT: 0x4 R_ARM_ABS32 bar2@zed 29@ CHECK-NEXT: 0x8 R_ARM_ABS32 .text 30@ CHECK-NEXT: 0xC R_ARM_ABS32 .text 31@ CHECK-NEXT: 0x10 R_ARM_ABS32 bar6@zed 32@ CHECK-NEXT: } 33@ CHECK-NEXT: ] 34 35@ CHECK: Symbol { 36@ CHECK: Symbol { 37@ CHECK-NEXT: Name: .text (0) 38@ CHECK-NEXT: Value: 0x0 39@ CHECK-NEXT: Size: 0 40@ CHECK-NEXT: Binding: Local (0x0) 41@ CHECK-NEXT: Type: Section (0x3) 42@ CHECK-NEXT: Other: 0 43@ CHECK-NEXT: Section: .text 44@ CHECK-NEXT: } 45@ CHECK-NEXT: Symbol { 46@ CHECK-NEXT: Name: defined1 47@ CHECK-NEXT: Value: 0x0 48@ CHECK-NEXT: Size: 0 49@ CHECK-NEXT: Binding: Local (0x0) 50@ CHECK-NEXT: Type: None (0x0) 51@ CHECK-NEXT: Other: 0 52@ CHECK-NEXT: Section: .text 53@ CHECK-NEXT: } 54@ CHECK-NEXT: Symbol { 55@ CHECK-NEXT: Name: defined2 56@ CHECK-NEXT: Value: 0x0 57@ CHECK-NEXT: Size: 0 58@ CHECK-NEXT: Binding: Local (0x0) 59@ CHECK-NEXT: Type: None (0x0) 60@ CHECK-NEXT: Other: 0 61@ CHECK-NEXT: Section: .text 62@ CHECK-NEXT: } 63@ CHECK: Symbol { 64@ CHECK: Name: bar1@zed 65@ CHECK-NEXT: Value: 0x0 66@ CHECK-NEXT: Size: 0 67@ CHECK-NEXT: Binding: Local (0x0) 68@ CHECK-NEXT: Type: None (0x0) 69@ CHECK-NEXT: Other: 0 70@ CHECK-NEXT: Section: .text 71@ CHECK-NEXT: } 72@ CHECK-NEXT: Symbol { 73@ CHECK-NEXT: Name: bar3@@zed 74@ CHECK-NEXT: Value: 0x0 75@ CHECK-NEXT: Size: 0 76@ CHECK-NEXT: Binding: Local (0x0) 77@ CHECK-NEXT: Type: None (0x0) 78@ CHECK-NEXT: Other: 0 79@ CHECK-NEXT: Section: .text 80@ CHECK-NEXT: } 81@ CHECK-NEXT: Symbol { 82@ CHECK-NEXT: Name: bar5@@zed 83@ CHECK-NEXT: Value: 0x0 84@ CHECK-NEXT: Size: 0 85@ CHECK-NEXT: Binding: Local (0x0) 86@ CHECK-NEXT: Type: None (0x0) 87@ CHECK-NEXT: Other: 0 88@ CHECK-NEXT: Section: .text 89@ CHECK-NEXT: } 90@ CHECK-NEXT: Symbol { 91@ CHECK-NEXT: Name: global1 92@ CHECK-NEXT: Value: 0x14 93@ CHECK-NEXT: Size: 0 94@ CHECK-NEXT: Binding: Global (0x1) 95@ CHECK-NEXT: Type: None (0x0) 96@ CHECK-NEXT: Other: 0 97@ CHECK-NEXT: Section: .text 98@ CHECK-NEXT: } 99@ CHECK-NEXT: Symbol { 100@ CHECK-NEXT: Name: bar2@zed 101@ CHECK-NEXT: Value: 0x0 102@ CHECK-NEXT: Size: 0 103@ CHECK-NEXT: Binding: Global (0x1) 104@ CHECK-NEXT: Type: None (0x0) 105@ CHECK-NEXT: Other: 0 106@ CHECK-NEXT: Section: Undefined (0x0) 107@ CHECK-NEXT: } 108@ CHECK-NEXT: Symbol { 109@ CHECK-NEXT: Name: bar6@zed 110@ CHECK-NEXT: Value: 0x0 111@ CHECK-NEXT: Size: 0 112@ CHECK-NEXT: Binding: Global (0x1) 113@ CHECK-NEXT: Type: None (0x0) 114@ CHECK-NEXT: Other: 0 115@ CHECK-NEXT: Section: Undefined (0x0) 116@ CHECK-NEXT: } 117@ CHECK-NEXT: Symbol { 118@ CHECK-NEXT: Name: g1@@zed 119@ CHECK-NEXT: Value: 0x14 120@ CHECK-NEXT: Size: 0 121@ CHECK-NEXT: Binding: Global (0x1) 122@ CHECK-NEXT: Type: None (0x0) 123@ CHECK-NEXT: Other: 0 124@ CHECK-NEXT: Section: .text 125@ CHECK-NEXT: } 126@ CHECK-NEXT: ] 127