summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lld/test/MinGW/Inputs/imagebase-aarch64.yaml47
-rw-r--r--lld/test/MinGW/Inputs/imagebase-arm.yaml47
-rw-r--r--lld/test/MinGW/Inputs/imagebase-i386.yaml47
-rw-r--r--lld/test/MinGW/Inputs/imagebase-x86_64.yaml47
-rw-r--r--lld/test/MinGW/driver.s60
-rw-r--r--lld/test/MinGW/driver.test46
-rw-r--r--lld/test/MinGW/lto-debug-pass-arguments.ll16
7 files changed, 46 insertions, 264 deletions
diff --git a/lld/test/MinGW/Inputs/imagebase-aarch64.yaml b/lld/test/MinGW/Inputs/imagebase-aarch64.yaml
deleted file mode 100644
index d3974f2fb4c..00000000000
--- a/lld/test/MinGW/Inputs/imagebase-aarch64.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
---- !COFF
-header:
- Machine: IMAGE_FILE_MACHINE_ARM64
- Characteristics: [ ]
-sections:
- - Name: .text
- Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
- Alignment: 16
- SectionData: 31C0C3666666662E0F1F84000000000031C0C3666666662E0F1F840000000000488D0500000000C3
-symbols:
- - Name: .text
- Value: 0
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_STATIC
- SectionDefinition:
- Length: 40
- NumberOfRelocations: 1
- NumberOfLinenumbers: 0
- CheckSum: 3930888477
- Number: 1
- - Name: mainCRTStartup
- Value: 0
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_FUNCTION
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
- - Name: main
- Value: 16
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_FUNCTION
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
- - Name: func
- Value: 32
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_FUNCTION
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
- - Name: __ImageBase
- Value: 0
- SectionNumber: 0
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
-...
diff --git a/lld/test/MinGW/Inputs/imagebase-arm.yaml b/lld/test/MinGW/Inputs/imagebase-arm.yaml
deleted file mode 100644
index bcb123179e1..00000000000
--- a/lld/test/MinGW/Inputs/imagebase-arm.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
---- !COFF
-header:
- Machine: IMAGE_FILE_MACHINE_ARMNT
- Characteristics: [ ]
-sections:
- - Name: .text
- Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
- Alignment: 16
- SectionData: 31C0C3666666662E0F1F84000000000031C0C3666666662E0F1F840000000000B800000000C3
-symbols:
- - Name: .text
- Value: 0
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_STATIC
- SectionDefinition:
- Length: 38
- NumberOfRelocations: 1
- NumberOfLinenumbers: 0
- CheckSum: 3189961473
- Number: 1
- - Name: mainCRTStartup
- Value: 0
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_FUNCTION
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
- - Name: main
- Value: 16
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_FUNCTION
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
- - Name: func
- Value: 32
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_FUNCTION
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
- - Name: __ImageBase
- Value: 0
- SectionNumber: 0
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
-...
diff --git a/lld/test/MinGW/Inputs/imagebase-i386.yaml b/lld/test/MinGW/Inputs/imagebase-i386.yaml
deleted file mode 100644
index 253c648d886..00000000000
--- a/lld/test/MinGW/Inputs/imagebase-i386.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
---- !COFF
-header:
- Machine: IMAGE_FILE_MACHINE_I386
- Characteristics: [ ]
-sections:
- - Name: .text
- Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
- Alignment: 16
- SectionData: 31C0C3666666662E0F1F84000000000031C0C3666666662E0F1F840000000000B800000000C3
-symbols:
- - Name: .text
- Value: 0
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_STATIC
- SectionDefinition:
- Length: 38
- NumberOfRelocations: 1
- NumberOfLinenumbers: 0
- CheckSum: 3189961473
- Number: 1
- - Name: _mainCRTStartup
- Value: 0
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_FUNCTION
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
- - Name: _main
- Value: 16
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_FUNCTION
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
- - Name: _func
- Value: 32
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_FUNCTION
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
- - Name: __image_base__
- Value: 0
- SectionNumber: 0
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
-...
diff --git a/lld/test/MinGW/Inputs/imagebase-x86_64.yaml b/lld/test/MinGW/Inputs/imagebase-x86_64.yaml
deleted file mode 100644
index 96595a6a9df..00000000000
--- a/lld/test/MinGW/Inputs/imagebase-x86_64.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
---- !COFF
-header:
- Machine: IMAGE_FILE_MACHINE_AMD64
- Characteristics: [ ]
-sections:
- - Name: .text
- Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
- Alignment: 16
- SectionData: 31C0C3666666662E0F1F84000000000031C0C3666666662E0F1F840000000000488D0500000000C3
-symbols:
- - Name: .text
- Value: 0
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_STATIC
- SectionDefinition:
- Length: 40
- NumberOfRelocations: 1
- NumberOfLinenumbers: 0
- CheckSum: 3930888477
- Number: 1
- - Name: mainCRTStartup
- Value: 0
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_FUNCTION
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
- - Name: main
- Value: 16
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_FUNCTION
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
- - Name: func
- Value: 32
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_FUNCTION
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
- - Name: __image_base__
- Value: 0
- SectionNumber: 0
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
-...
diff --git a/lld/test/MinGW/driver.s b/lld/test/MinGW/driver.s
deleted file mode 100644
index aa73f403b88..00000000000
--- a/lld/test/MinGW/driver.s
+++ /dev/null
@@ -1,60 +0,0 @@
-# REQEUIRES: x86
-# RUN: rm -f a.exe a.dll
-
-# RUN: llvm-mc -triple=x86_64-windows-msvc %s -filetype=obj -o %t.obj
-# RUN: ld.lld -m i386pep --entry main %t.obj
-# RUN: llvm-readobj a.exe | FileCheck %s
-# RUN: ld.lld -m i386pep -shared --entry main %t.obj
-# RUN: llvm-readobj a.dll | FileCheck %s
-# RUN: ld.lld -m i386pep -e main %t.obj -o %t.exe
-# RUN: llvm-readobj %t.exe | FileCheck %s
-# CHECK: File:
-
-# RUN: ld.lld -m i386pep -e main %t.obj -o %t.exe -verbose -### | FileCheck %s -check-prefix CHECK-VERBOSE
-# CHECK-VERBOSE: lld-link -entry:main
-# CHECK-VERBOSE-SAME: -machine:x64 -alternatename:__image_base__=__ImageBase
-# CHECK-VERBOSE-SAME: -verbose
-
-# RUN: ld.lld -m i386pep --entry main %t.obj -o %t.exe --subsystem console
-# RUN: llvm-readobj -file-headers %t.exe | FileCheck %s -check-prefix CHECK-CONSOLE
-# CHECK-CONSOLE: Subsystem: IMAGE_SUBSYSTEM_WINDOWS_CUI (0x3)
-
-# RUN: ld.lld -m i386pep --entry main %t.obj -o %t.exe --subsystem windows
-# RUN: llvm-readobj -file-headers %t.exe | FileCheck %s -check-prefix CHECK-WINDOWS
-# CHECK-WINDOWS: Subsystem: IMAGE_SUBSYSTEM_WINDOWS_GUI (0x2)
-
-# RUN: ld.lld -m i386pep --entry main %t.obj -o %t.exe --stack 4194304,8192
-# RUN: llvm-readobj -file-headers %t.exe | FileCheck %s -check-prefix CHECK-STACK
-# CHECK-STACK: SizeOfStackReserve: 4194304
-# CHECK-STACK: SizeOfStackCommit: 8192
-
-# RUN: yaml2obj < %p/Inputs/imagebase-i386.yaml > %t.obj
-# RUN: ld.lld -m i386pe %t.obj -o %t.exe
-# RUN: llvm-readobj -file-headers %t.exe | FileCheck %s -check-prefix CHECK-I386
-# CHECK-I386: Machine: IMAGE_FILE_MACHINE_I386
-
-# RUN: yaml2obj < %p/Inputs/imagebase-x86_64.yaml > %t.obj
-# RUN: ld.lld -m i386pep %t.obj -o %t.exe
-# RUN: llvm-readobj -file-headers %t.exe | FileCheck %s -check-prefix CHECK-AMD64
-# CHECK-AMD64: Machine: IMAGE_FILE_MACHINE_AMD64
-
-# RUN: yaml2obj < %p/Inputs/imagebase-arm.yaml > %t.obj
-# RUN: ld.lld -m thumb2pe %t.obj -o %t.exe
-# RUN: llvm-readobj -file-headers %t.exe | FileCheck %s -check-prefix CHECK-ARMNT
-# CHECK-ARMNT: Machine: IMAGE_FILE_MACHINE_ARMNT
-
-# RUN: yaml2obj < %p/Inputs/imagebase-aarch64.yaml > %t.obj
-# RUN: ld.lld -m arm64pe %t.obj -o %t.exe
-# RUN: llvm-readobj -file-headers %t.exe | FileCheck %s -check-prefix CHECK-ARM64
-# CHECK-ARM64: Machine: IMAGE_FILE_MACHINE_ARM64
-
-# RUN: yaml2obj < %p/../COFF/Inputs/export.yaml > %t.obj
-# RUN: ld.lld -m i386pep --shared %t.obj -o %t.dll --out-implib %t.lib
-# RUN: llvm-readobj %t.lib | FileCheck %s -check-prefix CHECK-IMPLIB
-# CHECK-IMPLIB: Symbol: __imp_exportfn3
-# CHECK-IMPLIB: Symbol: exportfn3
-
-.global main
-.text
-main:
- ret
diff --git a/lld/test/MinGW/driver.test b/lld/test/MinGW/driver.test
new file mode 100644
index 00000000000..a86cdcadf25
--- /dev/null
+++ b/lld/test/MinGW/driver.test
@@ -0,0 +1,46 @@
+RUN: ld.lld -### foo.o -m i386pe | FileCheck -check-prefix=X86 %s
+X86: -out:a.exe
+X86-SAME: -machine:x86
+X86-SAME: -alternatename:__image_base__=___ImageBase
+X86-SAME: foo.o
+
+RUN: ld.lld -### foo.o -m i386pep | FileCheck -check-prefix=X64 %s
+X64: -out:a.exe
+X64-SAME: -machine:x64
+X64-SAME: -alternatename:__image_base__=__ImageBase
+X64-SAME: foo.o
+
+RUN: ld.lld -### foo.o -m thumb2pe | FileCheck -check-prefix=ARM %s
+ARM: -out:a.exe
+ARM-SAME: -machine:arm
+ARM-SAME: -alternatename:__image_base__=__ImageBase
+ARM-SAME: foo.o
+
+RUN: ld.lld -### foo.o -m arm64pe | FileCheck -check-prefix=ARM64 %s
+ARM64: -out:a.exe
+ARM64-SAME: -machine:arm64
+ARM64-SAME: -alternatename:__image_base__=__ImageBase
+ARM64-SAME: foo.o
+
+RUN: ld.lld -### foo.o -m i386pep -shared | FileCheck -check-prefix=SHARED %s
+SHARED: -out:a.dll
+SHARED-SAME: -dll
+
+RUN: ld.lld -### foo.o -m i386pep -o bar.exe | FileCheck -check-prefix=OUT %s
+OUT: -out:bar.exe
+
+RUN: ld.lld -### foo.o -m i386pep -e bar | FileCheck -check-prefix=ENTRY %s
+RUN: ld.lld -### foo.o -m i386pep --entry bar | FileCheck -check-prefix=ENTRY %s
+ENTRY: -entry:bar
+
+RUN: ld.lld -### foo.o -m i386pep -mllvm bar -mllvm baz | FileCheck -check-prefix=MLLVM %s
+MLLVM: -mllvm:bar -mllvm:baz
+
+RUN: ld.lld -### foo.o -m i386pep --subsystem console | FileCheck -check-prefix=SUBSYSTEM %s
+SUBSYSTEM: -subsystem:console
+
+RUN: ld.lld -### foo.o -m i386pep --stack 4194304,8192 | FileCheck -check-prefix=STACK %s
+STACK: -stack:4194304,8192
+
+RUN: ld.lld -### foo.o -m i386pep --verbose | FileCheck -check-prefix=VERBOSE %s
+VERBOSE: -verbose
diff --git a/lld/test/MinGW/lto-debug-pass-arguments.ll b/lld/test/MinGW/lto-debug-pass-arguments.ll
deleted file mode 100644
index e9fb9ed473a..00000000000
--- a/lld/test/MinGW/lto-debug-pass-arguments.ll
+++ /dev/null
@@ -1,16 +0,0 @@
-; REQUIRES: x86
-; RUN: llvm-as %s -o %t.obj
-; RUN: ld.lld -m i386pep -shared -o %t.dll %t.obj -mllvm -debug-pass=Arguments 2>&1 | FileCheck %s
-
-target datalayout = "e-m:w-i64:64-f80:128-n8:16:32:64-S128"
-target triple = "x86_64-pc-windows-gnu"
-
-define void @dummy() {
- ret void
-}
-
-define void @_DllMainCRTStartup() {
- ret void
-}
-
-; CHECK: Pass Arguments:
OpenPOWER on IntegriCloud