[LiveDebugValues] Remove early-exit when testing regmasks, NFC
authorVedant Kumar <vsk@apple.com>
Sat, 30 May 2020 05:47:08 +0000 (22:47 -0700)
committerVedant Kumar <vsk@apple.com>
Mon, 1 Jun 2020 22:16:10 +0000 (15:16 -0700)
In transferRegisterDef, if the instruction has a regmask attached, we'll
check if any currently used register is clobbered by the regmask.

The early exit in this scan isn't necessary, costs a set lookup, and is
almost never taken [1]. Delete it.

[1]
http://lab.llvm.org:8080/coverage/coverage-reports/coverage/Users/buildslave/jenkins/workspace/coverage/llvm-project/llvm/lib/CodeGen/LiveDebugValues.cpp.html#L1136

llvm/lib/CodeGen/LiveDebugValues.cpp

index 6f0f9bd..85fb83d 100644 (file)
@@ -1197,10 +1197,6 @@ void LiveDebugValues::transferRegisterDef(
     SmallVector<uint32_t, 32> UsedRegs;
     getUsedRegs(OpenRanges.getVarLocs(), UsedRegs);
     for (uint32_t Reg : UsedRegs) {
-      // The VarLocs residing in this register are already in the kill set.
-      if (DeadRegs.count(Reg))
-        continue;
-
       // Remove ranges of all clobbered registers. Register masks don't usually
       // list SP as preserved. Assume that call instructions never clobber SP,
       // because some backends (e.g., AArch64) never list SP in the regmask.