Test EXPORTAS in importlibs.

RUN: split-file %s %t.dir && cd %t.dir
RUN: llvm-lib -machine:amd64 -def:test.def -out:test.lib

RUN: llvm-nm --print-armap test.lib | FileCheck --check-prefix=ARMAP %s

ARMAP:      Archive map
ARMAP-NEXT: __IMPORT_DESCRIPTOR_test in test.dll
ARMAP-NEXT: __NULL_IMPORT_DESCRIPTOR in test.dll
ARMAP-NEXT: __imp_func in test.dll
ARMAP-NEXT: __imp_func2 in test.dll
ARMAP-NEXT: __imp_func3 in test.dll
ARMAP-NEXT: __imp_mydata in test.dll
ARMAP-NEXT: func in test.dll
ARMAP-NEXT: func2 in test.dll
ARMAP-NEXT: func3 in test.dll
ARMAP-NEXT: test_NULL_THUNK_DATA in test.dll

RUN: llvm-readobj test.lib | FileCheck --check-prefix=READOBJ %s

READOBJ:      File: test.lib(test.dll)
READOBJ-NEXT: Format: COFF-x86-64
READOBJ-NEXT: Arch: x86_64
READOBJ-NEXT: AddressSize: 64bit
READOBJ-EMPTY:
READOBJ-NEXT: File: test.lib(test.dll)
READOBJ-NEXT: Format: COFF-x86-64
READOBJ-NEXT: Arch: x86_64
READOBJ-NEXT: AddressSize: 64bit
READOBJ-EMPTY:
READOBJ-NEXT: File: test.lib(test.dll)
READOBJ-NEXT: Format: COFF-x86-64
READOBJ-NEXT: Arch: x86_64
READOBJ-NEXT: AddressSize: 64bit
READOBJ-EMPTY:
READOBJ-NEXT: File: test.dll
READOBJ-NEXT: Format: COFF-import-file-x86-64
READOBJ-NEXT: Type: code
READOBJ-NEXT: Name type: export as
READOBJ-NEXT: Export name: expfunc
READOBJ-NEXT: Symbol: __imp_func
READOBJ-NEXT: Symbol: func
READOBJ-EMPTY:
READOBJ-NEXT: File: test.dll
READOBJ-NEXT: Format: COFF-import-file-x86-64
READOBJ-NEXT: Type: data
READOBJ-NEXT: Name type: export as
READOBJ-NEXT: Export name: expdata
READOBJ-NEXT: Symbol: __imp_mydata
READOBJ-EMPTY:
READOBJ-NEXT: File: test.dll
READOBJ-NEXT: Format: COFF-import-file-x86-64
READOBJ-NEXT: Type: code
READOBJ-NEXT: Name type: export as
READOBJ-NEXT: Export name: expfunc2
READOBJ-NEXT: Symbol: __imp_func2
READOBJ-NEXT: Symbol: func2
READOBJ-EMPTY:
READOBJ-NEXT: File: test.dll
READOBJ-NEXT: Format: COFF-import-file-x86-64
READOBJ-NEXT: Type: code
READOBJ-NEXT: Name type: export as
READOBJ-NEXT: Export name: expfunc3
READOBJ-NEXT: Symbol: __imp_func3
READOBJ-NEXT: Symbol: func3


EXPORTAS must be at the end of entry declaration.
RUN: not llvm-lib -machine:amd64 -def:test2.def -out:test2.lib 2>&1 \
RUN:              | FileCheck --check-prefix=ERROR %s
RUN: not llvm-lib -machine:amd64 -def:test3.def -out:test3.lib 2>&1 \
RUN:              | FileCheck --check-prefix=ERROR %s
ERROR: Invalid data was encountered while parsing the file


#--- test.def
LIBRARY test.dll
EXPORTS
        func EXPORTAS expfunc
        mydata DATA EXPORTAS expdata
        func2 = myfunc2 EXPORTAS expfunc2
        func3 = otherdll.otherfunc3 EXPORTAS expfunc3

#--- test2.def
LIBRARY test.dll
EXPORTS
        func EXPORTAS expfunc
        mydata EXPORTAS expdata DATA

#--- test3.def
LIBRARY test.dll
EXPORTS
        mydata EXPORTAS
