diff options
Diffstat (limited to 'llvm/tools/llvm-exegesis/lib/BenchmarkRunner.h')
-rw-r--r-- | llvm/tools/llvm-exegesis/lib/BenchmarkRunner.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/llvm/tools/llvm-exegesis/lib/BenchmarkRunner.h b/llvm/tools/llvm-exegesis/lib/BenchmarkRunner.h index 4705e713a92..f23a8a458fd 100644 --- a/llvm/tools/llvm-exegesis/lib/BenchmarkRunner.h +++ b/llvm/tools/llvm-exegesis/lib/BenchmarkRunner.h @@ -19,6 +19,7 @@ #include "Assembler.h" #include "BenchmarkResult.h" #include "LlvmState.h" +#include "MCInstrDescView.h" #include "RegisterAliasing.h" #include "llvm/MC/MCInst.h" #include "llvm/Support/Error.h" @@ -80,10 +81,15 @@ private: InstructionBenchmark runOne(const BenchmarkConfiguration &Configuration, unsigned Opcode, unsigned NumRepetitions) const; + // Calls generatePrototype and expands the SnippetPrototype into one or more + // BenchmarkConfiguration. + llvm::Expected<std::vector<BenchmarkConfiguration>> + generateConfigurations(unsigned Opcode) const; + virtual InstructionBenchmark::ModeE getMode() const = 0; - virtual llvm::Expected<std::vector<BenchmarkConfiguration>> - createConfigurations(unsigned Opcode) const = 0; + virtual llvm::Expected<SnippetPrototype> + generatePrototype(unsigned Opcode) const = 0; virtual std::vector<BenchmarkMeasure> runMeasurements(const ExecutableFunction &EF, |