; RUN: llvm-dlltool -m i386:x86-64 --input-def %s --output-lib %t.a
; RUN: llvm-nm %t.a | FileCheck %s
; RUN: llvm-readobj %t.a | FileCheck -check-prefix=ARCH %s
; RUN: llvm-readobj --symbols %t.a | FileCheck -check-prefix=SYMBOLS %s

LIBRARY test.dll
EXPORTS
TestFunction==AltTestFunction
; When creating an import library, the DLL internal function name of
; the implementation of a function isn't visible at all.
ImpLibName = Implementation
; A different import library name and implementation name can be mixed
; with exposing it via a different name in the DLL than in code.
ImpLibName2 = Implementation2 == AltTestFunction2
; The fact that a DLL export entry is a forward to a different DLL doesn't
; matter for the import library
ImpLibName3 = kernel32.Sleep

; CHECK:      U AltTestFunction
; CHECK-NEXT: W TestFunction
; CHECK:      U __imp_AltTestFunction
; CHECK-NEXT: W __imp_TestFunction
; CHECK:      T ImpLibName
; CHECK-NEXT: T __imp_ImpLibName
; CHECK:      U AltTestFunction2
; CHECK-NEXT: W ImpLibName2
; CHECK:      U __imp_AltTestFunction2
; CHECK-NEXT: W __imp_ImpLibName2
; CHECK:      T ImpLibName3
; CHECK-NEXT: T __imp_ImpLibName3

; ARCH-NOT: unknown arch

; SYMBOLS:        Symbol {
; SYMBOLS:          Name: TestFunction
; SYMBOLS-NEXT:     Value: 0
; SYMBOLS-NEXT:     Section: IMAGE_SYM_UNDEFINED (0)
; SYMBOLS-NEXT:     BaseType: Null (0x0)
; SYMBOLS-NEXT:     ComplexType: Null (0x0)
; SYMBOLS-NEXT:     StorageClass: WeakExternal (0x69)
; SYMBOLS-NEXT:     AuxSymbolCount: 1
; SYMBOLS-NEXT:     AuxWeakExternal {
; SYMBOLS-NEXT:       Linked: AltTestFunction (2)
; SYMBOLS-NEXT:       Search: Alias (0x3)
; SYMBOLS-NEXT:     }
; SYMBOLS-NEXT:   }
