[PATCH] D59431: [DebugInfo] Terminate constant-value location-list ranges at the end of basic blocks

Adrian Prantl via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 21 08:54:32 PDT 2019


aprantl added inline comments.


================
Comment at: lib/CodeGen/AsmPrinter/DbgEntityHistoryCalculator.cpp:292
+      }
+      NonRegVars.clear();
     }
----------------
The title says "constant" but this seems to also affect memory locations. Is that intentional?


================
Comment at: lib/CodeGen/LiveDebugValues.cpp:148
+      ImmediateKind,
+      FPImmediateKind,
+      CImmediateKind
----------------
ConstantFPKind and ConstantIntKind ?


================
Comment at: lib/CodeGen/LiveDebugValues.cpp:223
+        return Var == Other.Var &&
+               Loc.FPImm->isExactlyValue(Other.Loc.FPImm->getValueAPF());
+      else if (Kind == CImmediateKind)
----------------
The fact that this code exists means that ConstantFP/Ints are not unique?


================
Comment at: lib/CodeGen/LiveDebugValues.cpp:457
+    // This is an undefined location. We should leave OpenRanges closed.
+    assert(MI.getOperand(0).isReg() && MI.getOperand(0).getReg() == 0);
   }
----------------
Can you add an &&"errormessage" to explain what is being asserted here?


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D59431/new/

https://reviews.llvm.org/D59431





More information about the llvm-commits mailing list