[lld] r280507 - Fix potential test failures.
Rui Ueyama via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 2 10:19:29 PDT 2016
Author: ruiu
Date: Fri Sep 2 12:19:28 2016
New Revision: 280507
URL: http://llvm.org/viewvc/llvm-project?rev=280507&view=rev
Log:
Fix potential test failures.
Windows does not allow opened files to be removed. This patch
fixes two types of errors.
- Output file being the same as input file. Because LLD itself
holds a file descriptor of the input file, it cannot create an
output file with the same name as a new file.
- Removing files before releasing MemoryBuffer objects.
These tests are not failing no because MemoryBuffer happens to
decide not to use mmap on these files. But we shouldn't rely on
that behavior.
Modified:
lld/trunk/test/ELF/dynamic.s
lld/trunk/test/ELF/icf4.s
lld/trunk/test/ELF/icf5.s
lld/trunk/test/ELF/linkerscript/linkerscript-excludefile.s
lld/trunk/unittests/MachOTests/MachONormalizedFileBinaryWriterTests.cpp
Modified: lld/trunk/test/ELF/dynamic.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/dynamic.s?rev=280507&r1=280506&r2=280507&view=diff
==============================================================================
--- lld/trunk/test/ELF/dynamic.s (original)
+++ lld/trunk/test/ELF/dynamic.s Fri Sep 2 12:19:28 2016
@@ -34,8 +34,8 @@
# CHECK-NEXT: Section: .dynamic
# CHECK-NEXT: }
-# RUN: ld.lld %t.o -o %t.o
-# RUN: llvm-readobj -sections -symbols %t.o | FileCheck -check-prefix=NODYN %s
+# RUN: ld.lld %t.o -o %t2
+# RUN: llvm-readobj -sections -symbols %t2 | FileCheck -check-prefix=NODYN %s
# NODYN: Symbols [
# NODYN-NOT: Name: _DYNAMIC
# NODYN: ]
Modified: lld/trunk/test/ELF/icf4.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/icf4.s?rev=280507&r1=280506&r2=280507&view=diff
==============================================================================
--- lld/trunk/test/ELF/icf4.s (original)
+++ lld/trunk/test/ELF/icf4.s Fri Sep 2 12:19:28 2016
@@ -1,7 +1,7 @@
# REQUIRES: x86
# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
-# RUN: ld.lld %t -o %t --icf=all --verbose | FileCheck %s
+# RUN: ld.lld %t -o %t2 --icf=all --verbose | FileCheck %s
# CHECK-NOT: Selected .text.f1
# CHECK-NOT: Selected .text.f2
Modified: lld/trunk/test/ELF/icf5.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/icf5.s?rev=280507&r1=280506&r2=280507&view=diff
==============================================================================
--- lld/trunk/test/ELF/icf5.s (original)
+++ lld/trunk/test/ELF/icf5.s Fri Sep 2 12:19:28 2016
@@ -1,7 +1,7 @@
# REQUIRES: x86
# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
-# RUN: ld.lld %t -o %t --icf=all --verbose | FileCheck %s
+# RUN: ld.lld %t -o %t2 --icf=all --verbose | FileCheck %s
# CHECK-NOT: Selected .text.f1
# CHECK-NOT: Selected .text.f2
Modified: lld/trunk/test/ELF/linkerscript/linkerscript-excludefile.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/linkerscript/linkerscript-excludefile.s?rev=280507&r1=280506&r2=280507&view=diff
==============================================================================
--- lld/trunk/test/ELF/linkerscript/linkerscript-excludefile.s (original)
+++ lld/trunk/test/ELF/linkerscript/linkerscript-excludefile.s Fri Sep 2 12:19:28 2016
@@ -7,8 +7,7 @@
# RUN: echo "SECTIONS {} " > %t.script
# RUN: ld.lld -o %t --script %t.script %t1 %t2 %t3.notinclude
-# RUN: llvm-objdump -d %t | \
-# RUN: FileCheck %s
+# RUN: llvm-objdump -d %t | FileCheck %s
# CHECK: Disassembly of section .text:
# CHECK: _start:
@@ -25,9 +24,8 @@
# RUN: echo "SECTIONS { .patatino : \
# RUN: { KEEP(*(EXCLUDE_FILE(*notinclude) .text)) } }" \
# RUN: > %t.script
-# RUN: ld.lld -o %t2 --script %t.script %t1 %t2 %t3.notinclude
-# RUN: llvm-objdump -d %t2 | \
-# RUN: FileCheck %s --check-prefix=EXCLUDE
+# RUN: ld.lld -o %t4 --script %t.script %t1 %t2 %t3.notinclude
+# RUN: llvm-objdump -d %t4 | FileCheck %s --check-prefix=EXCLUDE
# EXCLUDE: Disassembly of section .patatino:
# EXCLUDE: _start:
Modified: lld/trunk/unittests/MachOTests/MachONormalizedFileBinaryWriterTests.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/unittests/MachOTests/MachONormalizedFileBinaryWriterTests.cpp?rev=280507&r1=280506&r2=280507&view=diff
==============================================================================
--- lld/trunk/unittests/MachOTests/MachONormalizedFileBinaryWriterTests.cpp (original)
+++ lld/trunk/unittests/MachOTests/MachONormalizedFileBinaryWriterTests.cpp Fri Sep 2 12:19:28 2016
@@ -219,6 +219,7 @@ TEST(BinaryWriterTest, obj_relocs_x86_64
EXPECT_EQ(signed4.isExtern, true);
EXPECT_EQ(signed4.symbol, 1U);
+ bufferOwner.reset(nullptr);
std::error_code ec = llvm::sys::fs::remove(Twine(tmpFl));
EXPECT_FALSE(ec);
}
@@ -329,6 +330,7 @@ TEST(BinaryWriterTest, obj_relocs_x86) {
EXPECT_EQ(tlv.symbol, 1U);
//llvm::errs() << "temp = " << tmpFl << "\n";
+ bufferOwner.reset(nullptr);
std::error_code ec = llvm::sys::fs::remove(Twine(tmpFl));
EXPECT_FALSE(ec);
}
@@ -458,6 +460,7 @@ TEST(BinaryWriterTest, obj_relocs_armv7)
EXPECT_EQ(absPointer.symbol, 2U);
//llvm::errs() << "temp = " << tmpFl << "\n";
+ bufferOwner.reset(nullptr);
std::error_code ec = llvm::sys::fs::remove(Twine(tmpFl));
EXPECT_FALSE(ec);
}
@@ -687,6 +690,7 @@ TEST(BinaryWriterTest, obj_relocs_ppc) {
EXPECT_EQ(absloa2.length, 2);
EXPECT_EQ(absloa2.symbol, 0U);
+ bufferOwner.reset(nullptr);
std::error_code ec = llvm::sys::fs::remove(Twine(tmpFl));
EXPECT_FALSE(ec);
}
More information about the llvm-commits
mailing list