93 lines
2.2 KiB
NASM
93 lines
2.2 KiB
NASM
|
; RUN: llvm-ml %s /Fo - | llvm-readobj --syms - | FileCheck %s
|
||
|
|
||
|
.code
|
||
|
|
||
|
proc1 PROC
|
||
|
ret
|
||
|
proc1 ENDP
|
||
|
|
||
|
proc2 PROC
|
||
|
ret
|
||
|
proc2 ENDP
|
||
|
|
||
|
alias <t1> = <proc1>
|
||
|
; CHECK: Symbol {
|
||
|
; CHECK: Name: t1
|
||
|
; CHECK-NEXT: Value: 0
|
||
|
; CHECK-NEXT: Section: IMAGE_SYM_UNDEFINED (0)
|
||
|
; CHECK-NEXT: BaseType: Null
|
||
|
; CHECK-NEXT: ComplexType: Null
|
||
|
; CHECK-NEXT: StorageClass: WeakExternal
|
||
|
; CHECK-NEXT: AuxSymbolCount: 1
|
||
|
; CHECK-NEXT: AuxWeakExternal {
|
||
|
; CHECK-NEXT: Linked: proc1
|
||
|
; CHECK-NEXT: Search: Alias
|
||
|
; CHECK-NEXT: }
|
||
|
; CHECK-NEXT: }
|
||
|
|
||
|
alias <t2> = <proc2>
|
||
|
; CHECK: Symbol {
|
||
|
; CHECK: Name: t2
|
||
|
; CHECK-NEXT: Value: 0
|
||
|
; CHECK-NEXT: Section: IMAGE_SYM_UNDEFINED (0)
|
||
|
; CHECK-NEXT: BaseType: Null
|
||
|
; CHECK-NEXT: ComplexType: Null
|
||
|
; CHECK-NEXT: StorageClass: WeakExternal
|
||
|
; CHECK-NEXT: AuxSymbolCount: 1
|
||
|
; CHECK-NEXT: AuxWeakExternal {
|
||
|
; CHECK-NEXT: Linked: proc2
|
||
|
; CHECK-NEXT: Search: Alias
|
||
|
; CHECK-NEXT: }
|
||
|
; CHECK-NEXT: }
|
||
|
|
||
|
alias <t3> = <foo>
|
||
|
; CHECK: Symbol {
|
||
|
; CHECK: Name: t3
|
||
|
; CHECK-NEXT: Value: 0
|
||
|
; CHECK-NEXT: Section: IMAGE_SYM_UNDEFINED (0)
|
||
|
; CHECK-NEXT: BaseType: Null
|
||
|
; CHECK-NEXT: ComplexType: Null
|
||
|
; CHECK-NEXT: StorageClass: WeakExternal
|
||
|
; CHECK-NEXT: AuxSymbolCount: 1
|
||
|
; CHECK-NEXT: AuxWeakExternal {
|
||
|
; CHECK-NEXT: Linked: foo
|
||
|
; CHECK-NEXT: Search: Alias
|
||
|
; CHECK-NEXT: }
|
||
|
; CHECK-NEXT: }
|
||
|
|
||
|
alias <t4> = <bar>
|
||
|
bar PROC
|
||
|
ret
|
||
|
bar ENDP
|
||
|
|
||
|
; CHECK: Symbol {
|
||
|
; CHECK: Name: t4
|
||
|
; CHECK-NEXT: Value: 0
|
||
|
; CHECK-NEXT: Section: IMAGE_SYM_UNDEFINED (0)
|
||
|
; CHECK-NEXT: BaseType: Null
|
||
|
; CHECK-NEXT: ComplexType: Null
|
||
|
; CHECK-NEXT: StorageClass: WeakExternal
|
||
|
; CHECK-NEXT: AuxSymbolCount: 1
|
||
|
; CHECK-NEXT: AuxWeakExternal {
|
||
|
; CHECK-NEXT: Linked: bar
|
||
|
; CHECK-NEXT: Search: Alias
|
||
|
; CHECK-NEXT: }
|
||
|
; CHECK-NEXT: }
|
||
|
|
||
|
alias <t5> = <t2>
|
||
|
; CHECK: Symbol {
|
||
|
; CHECK: Name: t5
|
||
|
; CHECK-NEXT: Value: 0
|
||
|
; CHECK-NEXT: Section: IMAGE_SYM_UNDEFINED (0)
|
||
|
; CHECK-NEXT: BaseType: Null
|
||
|
; CHECK-NEXT: ComplexType: Null
|
||
|
; CHECK-NEXT: StorageClass: WeakExternal
|
||
|
; CHECK-NEXT: AuxSymbolCount: 1
|
||
|
; CHECK-NEXT: AuxWeakExternal {
|
||
|
; CHECK-NEXT: Linked: t2
|
||
|
; CHECK-NEXT: Search: Alias
|
||
|
; CHECK-NEXT: }
|
||
|
; CHECK-NEXT: }
|
||
|
|
||
|
END
|