[PATCH] D46821: Update llvm-exegesis to cover latency through another opcode.

Clement Courbet via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 15 01:31:01 PDT 2018


courbet added inline comments.


================
Comment at: tools/llvm-exegesis/lib/MCInstrDescView.h:130
+// Set all Instruction's Variables AssignedValue to Invalid.
+void clearVariables(const Instruction &Instruction);
+
----------------
clearVariableAssignments ?


================
Comment at: tools/llvm-exegesis/lib/Uops.cpp:112
+// Returns whether this Variable ties Use and Def operands together.
+bool HasTiedOperands(const Variable *Variable) {
+  bool HasUse = false;
----------------
hasTiedOperands


================
Comment at: tools/llvm-exegesis/lib/Uops.cpp:125
+llvm::SmallVector<Variable *, 8>
+GetTiedVariables(const Instruction &Instruction) {
+  llvm::SmallVector<Variable *, 8> Result;
----------------
getTiedVariables


================
Comment at: tools/llvm-exegesis/lib/Uops.cpp:133
+
+void Remove(llvm::BitVector &a, const llvm::BitVector &b) {
+  assert(a.size() == b.size());
----------------
remove


================
Comment at: tools/llvm-exegesis/lib/Uops.cpp:173
+    assert(TiedVariables.size() == 1 &&
+           "Don't know how to handle several tied variables");
+    Debug << "Static renaming\n";
----------------
remove assert, add an if, say it in debug and return an error.


================
Comment at: tools/llvm-exegesis/lib/Uops.cpp:231
+    // FIXME: Sum results when there are several
+    // counters for a single ProcRes
     // (e.g. P23 on SandyBridge).
----------------
format


Repository:
  rL LLVM

https://reviews.llvm.org/D46821





More information about the llvm-commits mailing list