[libc] Switch to using the generic `<gpuintrin.h>` implementations (#121810)
[llvm-project.git] / llvm / test / tools / llvm-dlltool / arm64ec.test
blob4ed0f4a4387d6fbfd0ab82667cb5a5221a287688
1 Test creating ARM64EC importlib.
3 RUN: split-file %s %t.dir && cd %t.dir
5 RUN: llvm-dlltool -m arm64ec -d test.def -l test.lib
6 RUN: llvm-nm --print-armap test.lib | FileCheck --check-prefix=ARMAP %s
8 ARMAP:      Archive map
9 ARMAP-NEXT: __IMPORT_DESCRIPTOR_test in test.dll
10 ARMAP-NEXT: __NULL_IMPORT_DESCRIPTOR in test.dll
11 ARMAP-NEXT: test_NULL_THUNK_DATA in test.dll
12 ARMAP-EMPTY:
13 ARMAP-NEXT: Archive EC map
14 ARMAP-NEXT: #func in test.dll
15 ARMAP-NEXT: __IMPORT_DESCRIPTOR_test in test.dll
16 ARMAP-NEXT: __NULL_IMPORT_DESCRIPTOR in test.dll
17 ARMAP-NEXT: __imp_aux_func in test.dll
18 ARMAP-NEXT: __imp_func in test.dll
19 ARMAP-NEXT: func in test.dll
20 ARMAP-NEXT: test_NULL_THUNK_DATA in test.dll
22 RUN: llvm-dlltool -m arm64ec -d test.def -N test2.def -l test2.lib
23 RUN: llvm-nm --print-armap test2.lib | FileCheck --check-prefix=ARMAP2 %s
25 ARMAP2:      Archive map
26 ARMAP2-NEXT: __IMPORT_DESCRIPTOR_test in test.dll
27 ARMAP2-NEXT: __NULL_IMPORT_DESCRIPTOR in test.dll
28 ARMAP2-NEXT: __imp_otherfunc in test.dll
29 ARMAP2-NEXT: otherfunc in test.dll
30 ARMAP2-NEXT: test_NULL_THUNK_DATA in test.dll
31 ARMAP2-EMPTY:
32 ARMAP2-NEXT: Archive EC map
33 ARMAP2-NEXT: #func in test.dll
34 ARMAP2-NEXT: __IMPORT_DESCRIPTOR_test in test.dll
35 ARMAP2-NEXT: __NULL_IMPORT_DESCRIPTOR in test.dll
36 ARMAP2-NEXT: __imp_aux_func in test.dll
37 ARMAP2-NEXT: __imp_func in test.dll
38 ARMAP2-NEXT: func in test.dll
39 ARMAP2-NEXT: test_NULL_THUNK_DATA in test.dll
41 RUN: llvm-dlltool -m arm64ec -d test.def --input-native-def test2.def -l test3.lib
42 RUN: llvm-nm --print-armap test3.lib | FileCheck --check-prefix=ARMAP2 %s
44 RUN: not llvm-dlltool -m arm64 -d test.def -N test2.def -l test4.lib 2>&1 | FileCheck --check-prefix=ERR %s
45 ERR: native .def file is supported only on arm64ec target
47 RUN: llvm-dlltool -m arm64ec -d test3.def -l test3.lib
48 RUN: llvm-readobj test3.lib | FileCheck --check-prefix=ALIAS %s
50 ALIAS:      File: test.dll
51 ALIAS-NEXT: Format: COFF-import-file-ARM64EC
52 ALIAS-NEXT: Type: code
53 ALIAS-NEXT: Name type: export as
54 ALIAS-NEXT: Export name: efunc
55 ALIAS-NEXT: Symbol: __imp_func
56 ALIAS-NEXT: Symbol: func
57 ALIAS-NEXT: Symbol: __imp_aux_func
58 ALIAS-NEXT: Symbol: #func
59 ALIAS-EMPTY:
60 ALIAS-NEXT: File: test.dll
61 ALIAS-NEXT: Format: COFF-import-file-ARM64EC
62 ALIAS-NEXT: Type: code
63 ALIAS-NEXT: Name type: export as
64 ALIAS-NEXT: Export name: efunc
65 ALIAS-NEXT: Symbol: __imp_efunc
66 ALIAS-NEXT: Symbol: efunc
67 ALIAS-NEXT: Symbol: __imp_aux_efunc
68 ALIAS-NEXT: Symbol: #efunc
70 #--- test.def
71 LIBRARY test.dll
72 EXPORTS
73     func
75 #--- test2.def
76 LIBRARY test.dll
77 EXPORTS
78     otherfunc
80 #--- test3.def
81 LIBRARY test.dll
82 EXPORTS
83     func == efunc
84     efunc