111 lines
3.6 KiB
Text
111 lines
3.6 KiB
Text
|
Test creating ARM64EC importlib.
|
||
|
|
||
|
RUN: split-file %s %t.dir && cd %t.dir
|
||
|
RUN: llvm-lib -machine:arm64ec -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: test_NULL_THUNK_DATA in test.dll
|
||
|
ARMAP-EMPTY:
|
||
|
ARMAP-NEXT: Archive EC map
|
||
|
ARMAP-NEXT: #expname in test.dll
|
||
|
ARMAP-NEXT: #funcexp in test.dll
|
||
|
ARMAP-NEXT: #mangledfunc in test.dll
|
||
|
ARMAP-NEXT: ?test_cpp_func@@$$hYAHPEAX@Z in test.dll
|
||
|
ARMAP-NEXT: ?test_cpp_func@@YAHPEAX@Z in test.dll
|
||
|
ARMAP-NEXT: __IMPORT_DESCRIPTOR_test in test.dll
|
||
|
ARMAP-NEXT: __NULL_IMPORT_DESCRIPTOR in test.dll
|
||
|
ARMAP-NEXT: __imp_?test_cpp_func@@YAHPEAX@Z in test.dll
|
||
|
ARMAP-NEXT: __imp_aux_?test_cpp_func@@YAHPEAX@Z in test.dll
|
||
|
ARMAP-NEXT: __imp_aux_expname in test.dll
|
||
|
ARMAP-NEXT: __imp_aux_funcexp in test.dll
|
||
|
ARMAP-NEXT: __imp_aux_mangledfunc in test.dll
|
||
|
ARMAP-NEXT: __imp_dataexp in test.dll
|
||
|
ARMAP-NEXT: __imp_expname in test.dll
|
||
|
ARMAP-NEXT: __imp_funcexp in test.dll
|
||
|
ARMAP-NEXT: __imp_mangledfunc in test.dll
|
||
|
ARMAP-NEXT: expname in test.dll
|
||
|
ARMAP-NEXT: funcexp in test.dll
|
||
|
ARMAP-NEXT: mangledfunc 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-ARM64{{$}}
|
||
|
READOBJ-NEXT: Arch: aarch64
|
||
|
READOBJ-NEXT: AddressSize: 64bit
|
||
|
READOBJ-EMPTY:
|
||
|
READOBJ-NEXT: File: test.lib(test.dll)
|
||
|
READOBJ-NEXT: Format: COFF-ARM64{{$}}
|
||
|
READOBJ-NEXT: Arch: aarch64
|
||
|
READOBJ-NEXT: AddressSize: 64bit
|
||
|
READOBJ-EMPTY:
|
||
|
READOBJ-NEXT: File: test.lib(test.dll)
|
||
|
READOBJ-NEXT: Format: COFF-ARM64{{$}}
|
||
|
READOBJ-NEXT: Arch: aarch64
|
||
|
READOBJ-NEXT: AddressSize: 64bit
|
||
|
READOBJ-EMPTY:
|
||
|
READOBJ-NEXT: File: test.dll
|
||
|
READOBJ-NEXT: Format: COFF-import-file-ARM64EC
|
||
|
READOBJ-NEXT: Type: code
|
||
|
READOBJ-NEXT: Name type: export as
|
||
|
READOBJ-NEXT: Export name: funcexp
|
||
|
READOBJ-NEXT: Symbol: __imp_funcexp
|
||
|
READOBJ-NEXT: Symbol: funcexp
|
||
|
READOBJ-NEXT: Symbol: __imp_aux_funcexp
|
||
|
READOBJ-NEXT: Symbol: #funcexp
|
||
|
READOBJ-EMPTY:
|
||
|
READOBJ-NEXT: File: test.dll
|
||
|
READOBJ-NEXT: Format: COFF-import-file-ARM64EC
|
||
|
READOBJ-NEXT: Type: code
|
||
|
READOBJ-NEXT: Name type: export as
|
||
|
READOBJ-NEXT: Export name: mangledfunc
|
||
|
READOBJ-NEXT: Symbol: __imp_mangledfunc
|
||
|
READOBJ-NEXT: Symbol: mangledfunc
|
||
|
READOBJ-NEXT: Symbol: __imp_aux_mangledfunc
|
||
|
READOBJ-NEXT: Symbol: #mangledfunc
|
||
|
READOBJ-EMPTY:
|
||
|
READOBJ-NEXT: File: test.dll
|
||
|
READOBJ-NEXT: Format: COFF-import-file-ARM64EC
|
||
|
READOBJ-NEXT: Type: code
|
||
|
READOBJ-NEXT: Name type: export as
|
||
|
READOBJ-NEXT: Export name: ?test_cpp_func@@YAHPEAX@Z
|
||
|
READOBJ-NEXT: Symbol: __imp_?test_cpp_func@@YAHPEAX@Z
|
||
|
READOBJ-NEXT: Symbol: ?test_cpp_func@@YAHPEAX@Z
|
||
|
READOBJ-NEXT: Symbol: __imp_aux_?test_cpp_func@@YAHPEAX@Z
|
||
|
READOBJ-NEXT: Symbol: ?test_cpp_func@@$$hYAHPEAX@Z
|
||
|
READOBJ-EMPTY:
|
||
|
READOBJ-NEXT: File: test.dll
|
||
|
READOBJ-NEXT: Format: COFF-import-file-ARM64EC
|
||
|
READOBJ-NEXT: Type: code
|
||
|
READOBJ-NEXT: Name type: export as
|
||
|
READOBJ-NEXT: Export name: expname
|
||
|
READOBJ-NEXT: Symbol: __imp_expname
|
||
|
READOBJ-NEXT: Symbol: expname
|
||
|
READOBJ-NEXT: Symbol: __imp_aux_expname
|
||
|
READOBJ-NEXT: Symbol: #expname
|
||
|
READOBJ-EMPTY:
|
||
|
READOBJ-NEXT: File: test.dll
|
||
|
READOBJ-NEXT: Format: COFF-import-file-ARM64EC
|
||
|
READOBJ-NEXT: Type: data
|
||
|
READOBJ-NEXT: Name type: name
|
||
|
READOBJ-NEXT: Export name: dataexp
|
||
|
READOBJ-NEXT: Symbol: __imp_dataexp
|
||
|
|
||
|
Creating a new lib containing the existing lib:
|
||
|
RUN: llvm-lib -machine:arm64ec test.lib -out:test2.lib
|
||
|
RUN: llvm-nm --print-armap test2.lib | FileCheck -check-prefix=ARMAP %s
|
||
|
|
||
|
#--- test.def
|
||
|
LIBRARY test.dll
|
||
|
EXPORTS
|
||
|
funcexp
|
||
|
#mangledfunc
|
||
|
?test_cpp_func@@YAHPEAX@Z
|
||
|
expname=impname
|
||
|
dataexp DATA
|