diff options
author | Guillaume Chatelet <gchatelet@google.com> | 2018-09-25 12:18:08 +0000 |
---|---|---|
committer | Guillaume Chatelet <gchatelet@google.com> | 2018-09-25 12:18:08 +0000 |
commit | 55ad087a4c2ff29ef54f28edeb7b2394046ccbdf (patch) | |
tree | e9f465fa5f470f287e0382df3bf38c321254b78f /llvm/unittests/tools/llvm-exegesis | |
parent | 99d98ed2b246b013fcd9769f783af880c80c7e5f (diff) | |
download | bcm5719-llvm-55ad087a4c2ff29ef54f28edeb7b2394046ccbdf.tar.gz bcm5719-llvm-55ad087a4c2ff29ef54f28edeb7b2394046ccbdf.zip |
[llvm-exegesis][NFC] Rewrite of the YAML serialization.
Summary: This is a NFC in preparation of exporting the initial registers as part of the YAML dump
Reviewers: courbet
Reviewed By: courbet
Subscribers: mgorny, tschuett, llvm-commits
Differential Revision: https://reviews.llvm.org/D52427
llvm-svn: 342967
Diffstat (limited to 'llvm/unittests/tools/llvm-exegesis')
-rw-r--r-- | llvm/unittests/tools/llvm-exegesis/CMakeLists.txt | 1 | ||||
-rw-r--r-- | llvm/unittests/tools/llvm-exegesis/X86/BenchmarkResultTest.cpp (renamed from llvm/unittests/tools/llvm-exegesis/BenchmarkResultTest.cpp) | 34 | ||||
-rw-r--r-- | llvm/unittests/tools/llvm-exegesis/X86/CMakeLists.txt | 1 |
3 files changed, 18 insertions, 18 deletions
diff --git a/llvm/unittests/tools/llvm-exegesis/CMakeLists.txt b/llvm/unittests/tools/llvm-exegesis/CMakeLists.txt index 21459a46ddb..1b373161041 100644 --- a/llvm/unittests/tools/llvm-exegesis/CMakeLists.txt +++ b/llvm/unittests/tools/llvm-exegesis/CMakeLists.txt @@ -11,7 +11,6 @@ set(LLVM_LINK_COMPONENTS ) add_llvm_unittest(LLVMExegesisTests - BenchmarkResultTest.cpp BenchmarkRunnerTest.cpp ClusteringTest.cpp PerfHelperTest.cpp diff --git a/llvm/unittests/tools/llvm-exegesis/BenchmarkResultTest.cpp b/llvm/unittests/tools/llvm-exegesis/X86/BenchmarkResultTest.cpp index 2b604dcdeb4..74446fc77cd 100644 --- a/llvm/unittests/tools/llvm-exegesis/BenchmarkResultTest.cpp +++ b/llvm/unittests/tools/llvm-exegesis/X86/BenchmarkResultTest.cpp @@ -8,9 +8,12 @@ //===----------------------------------------------------------------------===// #include "BenchmarkResult.h" +#include "X86InstrInfo.h" #include "llvm/ADT/SmallString.h" #include "llvm/Support/Error.h" #include "llvm/Support/Path.h" +#include "llvm/Support/TargetRegistry.h" +#include "llvm/Support/TargetSelect.h" #include "llvm/Support/YAMLTraits.h" #include "llvm/Support/raw_ostream.h" #include "gmock/gmock.h" @@ -47,25 +50,21 @@ MATCHER(EqMCInst, "") { namespace { -static constexpr const unsigned kInstrId = 5; -static constexpr const char kInstrName[] = "Instruction5"; -static constexpr const unsigned kReg1Id = 1; -static constexpr const char kReg1Name[] = "Reg1"; -static constexpr const unsigned kReg2Id = 2; -static constexpr const char kReg2Name[] = "Reg2"; - TEST(BenchmarkResultTest, WriteToAndReadFromDisk) { + LLVMInitializeX86TargetInfo(); + LLVMInitializeX86Target(); + LLVMInitializeX86TargetMC(); + + // Read benchmarks. + const LLVMState State; + llvm::ExitOnError ExitOnErr; - BenchmarkResultContext Ctx; - Ctx.addInstrEntry(kInstrId, kInstrName); - Ctx.addRegEntry(kReg1Id, kReg1Name); - Ctx.addRegEntry(kReg2Id, kReg2Name); InstructionBenchmark ToDisk; - ToDisk.Key.Instructions.push_back(llvm::MCInstBuilder(kInstrId) - .addReg(kReg1Id) - .addReg(kReg2Id) + ToDisk.Key.Instructions.push_back(llvm::MCInstBuilder(llvm::X86::XOR32rr) + .addReg(llvm::X86::AL) + .addReg(llvm::X86::AH) .addImm(123) .addFPImm(0.5)); ToDisk.Key.Config = "config"; @@ -83,12 +82,13 @@ TEST(BenchmarkResultTest, WriteToAndReadFromDisk) { EC = llvm::sys::fs::createUniqueDirectory("BenchmarkResultTestDir", Filename); ASSERT_FALSE(EC); llvm::sys::path::append(Filename, "data.yaml"); - ExitOnErr(ToDisk.writeYaml(Ctx, Filename)); + llvm::errs() << Filename << "-------\n"; + ExitOnErr(ToDisk.writeYaml(State, Filename)); { // One-element version. const auto FromDisk = - ExitOnErr(InstructionBenchmark::readYaml(Ctx, Filename)); + ExitOnErr(InstructionBenchmark::readYaml(State, Filename)); EXPECT_THAT(FromDisk.Key.Instructions, Pointwise(EqMCInst(), ToDisk.Key.Instructions)); @@ -104,7 +104,7 @@ TEST(BenchmarkResultTest, WriteToAndReadFromDisk) { { // Vector version. const auto FromDiskVector = - ExitOnErr(InstructionBenchmark::readYamls(Ctx, Filename)); + ExitOnErr(InstructionBenchmark::readYamls(State, Filename)); ASSERT_EQ(FromDiskVector.size(), size_t{1}); const auto FromDisk = FromDiskVector[0]; EXPECT_THAT(FromDisk.Key.Instructions, diff --git a/llvm/unittests/tools/llvm-exegesis/X86/CMakeLists.txt b/llvm/unittests/tools/llvm-exegesis/X86/CMakeLists.txt index 5a74c87d9b5..5078e7ba76c 100644 --- a/llvm/unittests/tools/llvm-exegesis/X86/CMakeLists.txt +++ b/llvm/unittests/tools/llvm-exegesis/X86/CMakeLists.txt @@ -16,6 +16,7 @@ set(LLVM_LINK_COMPONENTS add_llvm_unittest(LLVMExegesisX86Tests AssemblerTest.cpp AnalysisTest.cpp + BenchmarkResultTest.cpp SnippetGeneratorTest.cpp RegisterAliasingTest.cpp TargetTest.cpp |