1 Test creating ARM64EC importlib.
3 RUN: split-file %s %t.dir && cd %t.dir
4 RUN: llvm-lib -machine:arm64ec -def:test.def -out:test.lib
6 RUN: llvm-nm --print-armap test.lib | FileCheck -check-prefix=ARMAP %s
9 ARMAP-NEXT: __IMPORT_DESCRIPTOR_test in test.dll
10 ARMAP-NEXT: __NULL_IMPORT_DESCRIPTOR in test.dll
11 ARMAP-NEXT: __imp_dataexp in test.dll
12 ARMAP-NEXT: __imp_funcexp in test.dll
13 ARMAP-NEXT: funcexp in test.dll
14 ARMAP-NEXT: test_NULL_THUNK_DATA in test.dll
16 RUN: llvm-readobj test.lib | FileCheck -check-prefix=READOBJ %s
18 READOBJ: File: test.lib(test.dll)
19 READOBJ-NEXT: Format: COFF-ARM64EC
20 READOBJ-NEXT: Arch: aarch64
21 READOBJ-NEXT: AddressSize: 64bit
23 READOBJ-NEXT: File: test.lib(test.dll)
24 READOBJ-NEXT: Format: COFF-ARM64EC
25 READOBJ-NEXT: Arch: aarch64
26 READOBJ-NEXT: AddressSize: 64bit
28 READOBJ-NEXT: File: test.lib(test.dll)
29 READOBJ-NEXT: Format: COFF-ARM64
30 READOBJ-NEXT: Arch: aarch64
31 READOBJ-NEXT: AddressSize: 64bit
33 READOBJ-NEXT: File: test.dll
34 READOBJ-NEXT: Format: COFF-import-file
35 READOBJ-NEXT: Type: code
36 READOBJ-NEXT: Name type: name
37 READOBJ-NEXT: Symbol: __imp_funcexp
38 READOBJ-NEXT: Symbol: funcexp
40 READOBJ-NEXT: File: test.dll
41 READOBJ-NEXT: Format: COFF-import-file
42 READOBJ-NEXT: Type: data
43 READOBJ-NEXT: Name type: name
44 READOBJ-NEXT: Symbol: __imp_dataexp
46 Creating a new lib containing the existing lib:
47 RUN: llvm-lib -machine:arm64ec test.lib -out:test2.lib
48 RUN: llvm-nm --print-armap test2.lib | FileCheck -check-prefix=ARMAP %s