| // The purpose of this test is to verify that symbol aliases | |
| // (@foo = alias <type> @bar) generate the correct entries in the symbol table. | |
| // They should be identical except for the name. | |
| // RUN: llvm-mc -filetype=obj -triple i686-pc-win32 %s | coff-dump.py | FileCheck %s | |
| // RUN: llvm-mc -filetype=obj -triple x86_64-pc-win32 %s | coff-dump.py | FileCheck %s | |
| .def _foo; | |
| .scl 2; | |
| .type 32; | |
| .endef | |
| .text | |
| .globl _foo | |
| .align 16, 0x90 | |
| _foo: # @foo | |
| # BB#0: # %entry | |
| ret | |
| .data | |
| .globl _bar # @bar | |
| .align 4 | |
| _bar: | |
| .long 0 # 0x0 | |
| .globl _foo_alias | |
| _foo_alias = _foo | |
| .globl _bar_alias | |
| _bar_alias = _bar | |
| // CHECK: Name = {{_?}}foo | |
| // CHECK-NEXT: Value = [[FOO_VALUE:.*$]] | |
| // CHECK-NEXT: SectionNumber = [[FOO_SECTION_NUMBER:.*$]] | |
| // CHECK-NEXT: SimpleType = [[FOO_SIMPLE_TYPE:.*$]] | |
| // CHECK-NEXT: ComplexType = [[FOO_COMPLEX_TYPE:.*$]] | |
| // CHECK-NEXT: StorageClass = [[FOO_STORAGE_CLASS:.*$]] | |
| // CHECK-NEXT: NumberOfAuxSymbols = [[FOO_NUMBER_OF_AUX_SYMBOLS:.*$]] | |
| // CHECK: Name = {{_?}}bar | |
| // CHECK-NEXT: Value = [[BAR_VALUE:.*$]] | |
| // CHECK-NEXT: SectionNumber = [[BAR_SECTION_NUMBER:.*$]] | |
| // CHECK-NEXT: SimpleType = [[BAR_SIMPLE_TYPE:.*$]] | |
| // CHECK-NEXT: ComplexType = [[BAR_COMPLEX_TYPE:.*$]] | |
| // CHECK-NEXT: StorageClass = [[BAR_STORAGE_CLASS:.*$]] | |
| // CHECK-NEXT: NumberOfAuxSymbols = [[BAR_NUMBER_OF_AUX_SYMBOLS:.*$]] | |
| // CHECK: Name = {{_?}}foo_alias | |
| // CHECK-NEXT: Value = [[FOO_VALUE]] | |
| // CHECK-NEXT: SectionNumber = [[FOO_SECTION_NUMBER]] | |
| // CHECK-NEXT: SimpleType = [[FOO_SIMPLE_TYPE]] | |
| // CHECK-NEXT: ComplexType = [[FOO_COMPLEX_TYPE]] | |
| // CHECK-NEXT: StorageClass = [[FOO_STORAGE_CLASS]] | |
| // CHECK-NEXT: NumberOfAuxSymbols = [[FOO_NUMBER_OF_AUX_SYMBOLS]] | |
| // CHECK: Name = {{_?}}bar_alias | |
| // CHECK-NEXT: Value = [[BAR_VALUE]] | |
| // CHECK-NEXT: SectionNumber = [[BAR_SECTION_NUMBER]] | |
| // CHECK-NEXT: SimpleType = [[BAR_SIMPLE_TYPE]] | |
| // CHECK-NEXT: ComplexType = [[BAR_COMPLEX_TYPE]] | |
| // CHECK-NEXT: StorageClass = [[BAR_STORAGE_CLASS]] | |
| // CHECK-NEXT: NumberOfAuxSymbols = [[BAR_NUMBER_OF_AUX_SYMBOLS]] | |