summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-exegesis/lib/SnippetGenerator.cpp
diff options
context:
space:
mode:
authorClement Courbet <courbet@google.com>2018-11-08 12:09:45 +0000
committerClement Courbet <courbet@google.com>2018-11-08 12:09:45 +0000
commit0d79aaf1a7303cc0840563d7ed3a2f2cf2bab25f (patch)
tree55d51b4eb237922d3849b7a12939c1a51838ff0d /llvm/tools/llvm-exegesis/lib/SnippetGenerator.cpp
parent266c087b9dff314433f318a9ef61ec7d1b44fbb4 (diff)
downloadbcm5719-llvm-0d79aaf1a7303cc0840563d7ed3a2f2cf2bab25f.tar.gz
bcm5719-llvm-0d79aaf1a7303cc0840563d7ed3a2f2cf2bab25f.zip
Revert "[llvm-exegesis] Add a snippet generator to generate snippets to compute ROB sizes."
This reverts accidental commit rL346394. llvm-svn: 346398
Diffstat (limited to 'llvm/tools/llvm-exegesis/lib/SnippetGenerator.cpp')
-rw-r--r--llvm/tools/llvm-exegesis/lib/SnippetGenerator.cpp8
1 files changed, 2 insertions, 6 deletions
diff --git a/llvm/tools/llvm-exegesis/lib/SnippetGenerator.cpp b/llvm/tools/llvm-exegesis/lib/SnippetGenerator.cpp
index b8c56265fd3..eb6a8577b57 100644
--- a/llvm/tools/llvm-exegesis/lib/SnippetGenerator.cpp
+++ b/llvm/tools/llvm-exegesis/lib/SnippetGenerator.cpp
@@ -56,9 +56,8 @@ SnippetGenerator::generateConfigurations(const Instruction &Instr) const {
}
if (CT.ScratchSpacePointerInReg)
BC.LiveIns.push_back(CT.ScratchSpacePointerInReg);
- BC.ScratchRegisterCopies = CT.ScratchRegisterCopies;
BC.RegisterInitialValues =
- computeRegisterInitialValues(BC.ScratchRegisterCopies, CT.Instructions);
+ computeRegisterInitialValues(CT.Instructions);
Output.push_back(std::move(BC));
}
}
@@ -68,15 +67,12 @@ SnippetGenerator::generateConfigurations(const Instruction &Instr) const {
}
std::vector<RegisterValue> SnippetGenerator::computeRegisterInitialValues(
- const std::vector<unsigned> &ScratchRegisterCopies,
const std::vector<InstructionTemplate> &Instructions) const {
// Collect all register uses and create an assignment for each of them.
// Ignore memory operands which are handled separately.
// Loop invariant: DefinedRegs[i] is true iif it has been set at least once
// before the current instruction.
llvm::BitVector DefinedRegs = State.getRATC().emptyRegisters();
- for (const auto& Reg : ScratchRegisterCopies)
- DefinedRegs.set(Reg);
std::vector<RegisterValue> RIV;
for (const InstructionTemplate &IT : Instructions) {
// Returns the register that this Operand sets or uses, or 0 if this is not
@@ -95,7 +91,7 @@ std::vector<RegisterValue> SnippetGenerator::computeRegisterInitialValues(
if (Op.isUse()) {
const unsigned Reg = GetOpReg(Op);
if (Reg > 0 && !DefinedRegs.test(Reg)) {
- RIV.push_back(RegisterValue::zero(Reg));
+ RIV.push_back(RegisterValue{Reg, llvm::APInt()});
DefinedRegs.set(Reg);
}
}
OpenPOWER on IntegriCloud