llvm-project/lld/test/COFF/savetemps.ll
Jordan Rupprecht 60a8a504f1 [llvm-objdump] Print file format in lowercase to match GNU output.
Summary:
GNU objdump prints the file format in lowercase, e.g. `elf64-x86-64`. llvm-objdump prints `ELF64-x86-64` right now, even though piping that into llvm-objcopy refuses that as a valid arch to use.

As an example of a problem this causes, see: https://github.com/ClangBuiltLinux/linux/issues/779

Reviewers: MaskRay, jhenderson, alexshap

Reviewed By: MaskRay

Subscribers: tpimh, sbc100, grimar, jvesely, nhaehnle, kerbowa, cfe-commits, llvm-commits

Tags: #clang, #llvm

Differential Revision: https://reviews.llvm.org/D74433
2020-02-12 08:17:01 -08:00

30 lines
1.3 KiB
LLVM

; REQUIRES: x86
; RUN: rm -fr %T/savetemps
; RUN: mkdir %T/savetemps
; RUN: llvm-as -o %T/savetemps/savetemps.obj %s
; RUN: lld-link /out:%T/savetemps/savetemps.exe /entry:main \
; RUN: /subsystem:console %T/savetemps/savetemps.obj
; RUN: not llvm-dis -o - %T/savetemps/savetemps.exe.0.0.preopt.bc
; RUN: not llvm-dis -o - %T/savetemps/savetemps.exe.0.2.internalize.bc
; RUN: not llvm-dis -o - %T/savetemps/savetemps.exe.0.4.opt.bc
; RUN: not llvm-dis -o - %T/savetemps/savetemps.exe.0.5.precodegen.bc
; RUN: not llvm-objdump -s %T/savetemps/savetemps.exe.lto.obj
; RUN: lld-link /lldsavetemps /out:%T/savetemps/savetemps.exe /entry:main \
; RUN: /subsystem:console %T/savetemps/savetemps.obj
; RUN: llvm-dis -o - %T/savetemps/savetemps.exe.0.0.preopt.bc | FileCheck %s
; RUN: llvm-dis -o - %T/savetemps/savetemps.exe.0.2.internalize.bc | FileCheck %s
; RUN: llvm-dis -o - %T/savetemps/savetemps.exe.0.4.opt.bc | FileCheck %s
; RUN: llvm-dis -o - %T/savetemps/savetemps.exe.0.5.precodegen.bc | FileCheck %s
; RUN: llvm-objdump -s %T/savetemps/savetemps.exe.lto.obj | \
; RUN: FileCheck --check-prefix=CHECK-OBJDUMP %s
; CHECK: define i32 @main()
; CHECK-OBJDUMP: file format coff
target datalayout = "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-pc-windows-msvc"
define i32 @main() {
ret i32 0
}