diff options
author | Clement Courbet <courbet@google.com> | 2018-06-06 09:42:36 +0000 |
---|---|---|
committer | Clement Courbet <courbet@google.com> | 2018-06-06 09:42:36 +0000 |
commit | 62b34fa89a9cabfebe56848e25be4413ee009520 (patch) | |
tree | 445956971d8c96465c4ec3aa81652f78cd289b4f /llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp | |
parent | 57f661bd7d20412f21ac6b7611c41a0f8b84fc01 (diff) | |
download | bcm5719-llvm-62b34fa89a9cabfebe56848e25be4413ee009520.tar.gz bcm5719-llvm-62b34fa89a9cabfebe56848e25be4413ee009520.zip |
[llvm-exegesis] move Mode from Key to BenchmarResult.
Moves the Mode field out of the Key. The existing yaml benchmark results can be fixed with the following script:
```
readonly FILE=$1
readonly MODE=latency # Change to uops to fix a uops benchmark.
cat $FILE | \
sed "/^\ \+mode:\ \+$MODE$/d" | \
sed "/^cpu_name.*$/i mode: $MODE"
```
Differential Revision: https://reviews.llvm.org/D47813
Authored by: Guillaume Chatelet
llvm-svn: 334079
Diffstat (limited to 'llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp')
-rw-r--r-- | llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp b/llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp index 441aee0758e..87b25b413f2 100644 --- a/llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp +++ b/llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp @@ -68,12 +68,12 @@ template <> struct MappingTraits<exegesis::BenchmarkMeasure> { }; template <> -struct ScalarEnumerationTraits<exegesis::InstructionBenchmarkKey::ModeE> { +struct ScalarEnumerationTraits<exegesis::InstructionBenchmark::ModeE> { static void enumeration(IO &Io, - exegesis::InstructionBenchmarkKey::ModeE &Value) { - Io.enumCase(Value, "", exegesis::InstructionBenchmarkKey::Unknown); - Io.enumCase(Value, "latency", exegesis::InstructionBenchmarkKey::Latency); - Io.enumCase(Value, "uops", exegesis::InstructionBenchmarkKey::Uops); + exegesis::InstructionBenchmark::ModeE &Value) { + Io.enumCase(Value, "", exegesis::InstructionBenchmark::Unknown); + Io.enumCase(Value, "latency", exegesis::InstructionBenchmark::Latency); + Io.enumCase(Value, "uops", exegesis::InstructionBenchmark::Uops); } }; @@ -81,13 +81,13 @@ template <> struct MappingTraits<exegesis::InstructionBenchmarkKey> { static void mapping(IO &Io, exegesis::InstructionBenchmarkKey &Obj) { Io.mapRequired("opcode_name", Obj.OpcodeName); Io.mapOptional("instructions", Obj.Instructions); - Io.mapRequired("mode", Obj.Mode); Io.mapOptional("config", Obj.Config); } }; template <> struct MappingTraits<exegesis::InstructionBenchmark> { static void mapping(IO &Io, exegesis::InstructionBenchmark &Obj) { + Io.mapRequired("mode", Obj.Mode); Io.mapRequired("key", Obj.Key); Io.mapRequired("cpu_name", Obj.CpuName); Io.mapRequired("llvm_triple", Obj.LLVMTriple); |