summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-exegesis/lib/BenchmarkRunner.h
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/tools/llvm-exegesis/lib/BenchmarkRunner.h')
-rw-r--r--llvm/tools/llvm-exegesis/lib/BenchmarkRunner.h10
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,
OpenPOWER on IntegriCloud