1@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s | llvm-readobj -t \ 2@ RUN: | FileCheck %s 3 4@ RUN: llvm-mc -triple armv7-eabi -filetype asm -o - %s \ 5@ RUN: | FileCheck --check-prefix=ASM %s 6 7 .syntax unified 8 9 .arm 10 11 .type arm_func,%function 12arm_func: 13 nop 14 15 .thumb_set alias_arm_func, arm_func 16 17 alias_arm_func2 = alias_arm_func 18 alias_arm_func3 = alias_arm_func2 19 20@ ASM: .thumb_set alias_arm_func, arm_func 21 22 .thumb 23 24 .type thumb_func,%function 25 .thumb_func 26thumb_func: 27 nop 28 29 .thumb_set alias_thumb_func, thumb_func 30 31 .thumb_set seedless, 0x5eed1e55 32 .thumb_set eggsalad, seedless + 0x87788358 33 .thumb_set faceless, ~eggsalad + 0xe133c002 34 35 .thumb_set alias_undefined_data, badblood 36 37 .data 38 39 .type badblood,%object 40badblood: 41 .long 0xbadb100d 42 43 .type bedazzle,%object 44bedazzle: 45 .long 0xbeda221e 46 47 .text 48 .thumb 49 50 .thumb_set alias_defined_data, bedazzle 51 52 .type alpha,%function 53alpha: 54 nop 55 56 .type beta,%function 57beta: 58 bkpt 59 60 .thumb_set beta, alpha 61 62@ CHECK: Symbol { 63@ CHECK: Name: alias_arm_func 64@ CHECK: Value: 0x1 65@ CHECK: Type: Function 66@ CHECK: } 67 68@ CHECK: Symbol { 69@ CHECK: Name: alias_arm_func2 70@ CHECK: Value: 0x1 71@ CHECK: Type: Function 72@ CHECK: } 73 74@ CHECK: Symbol { 75@ CHECK: Name: alias_arm_func3 76@ CHECK: Value: 0x1 77@ CHECK: Type: Function 78@ CHECK: } 79 80@ CHECK: Symbol { 81@ CHECK: Name: alias_defined_data 82@ CHECK: Value: 0x5 83@ CHECK: Type: Function 84@ CHECK: } 85 86@ CHECK: Symbol { 87@ CHECK: Name: alias_thumb_func 88@ CHECK: Value: 0x5 89@ CHECK: Type: Function 90@ CHECK: } 91 92@ CHECK: Symbol { 93@ CHECK: Name: alias_undefined_data 94@ CHECK: Value: 0x0 95@ CHECK: Type: Object 96@ CHECK: } 97 98@ CHECK: Symbol { 99@ CHECK: Name: alpha 100@ CHECK: Value: 0x7 101@ CHECK: Type: Function 102@ CHECK: } 103 104@ CHECK: Symbol { 105@ CHECK: Name: arm_func 106@ CHECK: Value: 0x0 107@ CHECK: Type: Function 108@ CHECK: } 109 110@ CHECK: Symbol { 111@ CHECK: Name: badblood 112@ CHECK-NEXT: Value: 0x0 113@ CHECK-NEXT: Size: 0 114@ CHECK-NEXT: Binding: Local 115@ CHECK-NEXT: Type: Object 116@ CHECK-NEXT: Other: 0 117@ CHECK-NEXT: Section: .data 118@ CHECK-NEXT: } 119 120@ CHECK: Symbol { 121@ CHECK: Name: bedazzle 122@ CHECK: Value: 0x4 123@ CHECK: Type: Object 124@ CHECK: } 125 126@ CHECK: Symbol { 127@ CHECK: Name: beta 128@ CHECK: Value: 0x7 129@ CHECK: Type: Function 130@ CHECK: } 131 132@ CHECK: Symbol { 133@ CHECK: Name: eggsalad 134@ CHECK: Value: 0xE665A1AD 135@ CHECK: Type: Function 136@ CHECK: } 137 138@ CHECK: Symbol { 139@ CHECK: Name: faceless 140@ CHECK: Value: 0xFACE1E55 141@ CHECK: Type: Function 142@ CHECK: } 143 144@ CHECK: Symbol { 145@ CHECK: Name: seedless 146@ CHECK: Value: 0x5EED1E55 147@ CHECK: Type: Function 148@ CHECK: } 149 150@ CHECK: Symbol { 151@ CHECK: Name: thumb_func 152@ CHECK: Value: 0x5 153@ CHECK: Type: Function 154@ CHECK: } 155