1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 10:42:39 +01:00
llvm-mirror/test/tools/llvm-dlltool/triple-prefix.def
Martin Storsjö 3f31f63125 [llvm-dlltool] Imply the target arch from a tool triple prefix
Also use the default LLVM target as default for dlltool. This
matches how GNU dlltool behaves; it is compiled with one default
target, which is used if no option is provided.

Extend the anonymous namespace in the implementation file instead
of using static functions.

Based on a patch by Mateusz Mikuła.

The effect of the default LLVM target, if neither the -m option
nor a tool triple prefix is provided, isn't tested, as we can't
make assumptions about what it is set to.

(We could make the default be forced to one of the four supported
architectures if the default triple is another arch, and then just
test that llvm-dlltool without an -m option is able to produce an
import library, without checking the actual architecture though.)

Differential Revision: https://reviews.llvm.org/D104212
2021-06-17 13:02:35 +03:00

28 lines
971 B
Modula-2

;; Don't make symlinks on Windows.
; UNSUPPORTED: system-windows
; RUN: rm -rf %t
; RUN: mkdir %t
; RUN: ln -s llvm-dlltool %t/i686-w64-mingw32-llvm-dlltool-10.0.exe
; RUN: ln -s llvm-dlltool %t/x86_64-w64-mingw32-llvm-dlltool-10
; RUN: ln -s llvm-dlltool %t/armv7-w64-mingw32-dlltool
; RUN: ln -s llvm-dlltool %t/aarch64-w64-mingw32-DLLTOOL.exe
; RUN: %t/i686-w64-mingw32-llvm-dlltool-10.0.exe -d %s -l %t.a
; RUN: llvm-readobj %t.a | FileCheck --check-prefix=I386 %s
; RUN: %t/x86_64-w64-mingw32-llvm-dlltool-10 -d %s -l %t.a
; RUN: llvm-readobj %t.a | FileCheck --check-prefix=X86_64 %s
; RUN: %t/armv7-w64-mingw32-dlltool -d %s -l %t.a
; RUN: llvm-readobj %t.a | FileCheck --check-prefix=ARM %s
; RUN: %t/aarch64-w64-mingw32-DLLTOOL.exe -d %s -l %t.a
; RUN: llvm-readobj %t.a | FileCheck --check-prefix=ARM64 %s
LIBRARY test.dll
EXPORTS
TestFunction
; I386: Format: COFF-i386
; X86_64: Format: COFF-x86-64
; ARM: Format: COFF-ARM{{$}}
; ARM64: Format: COFF-ARM64