[all-commits] [llvm/llvm-project] 66a1b8: [TargetLowering][NFC] More efficient emitPatchpoin...

dantrushin via All-commits all-commits at lists.llvm.org
Fri Jun 5 04:57:57 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 66a1b83bf93ec46f6d7a06c47d5981ae154f9ea0
      https://github.com/llvm/llvm-project/commit/66a1b83bf93ec46f6d7a06c47d5981ae154f9ea0
  Author: Denis Antrushin <dantrushin at gmail.com>
  Date:   2020-06-05 (Fri, 05 Jun 2020)

  Changed paths:
    M llvm/lib/CodeGen/TargetLoweringBase.cpp

  Log Message:
  -----------
  [TargetLowering][NFC] More efficient emitPatchpoint().

Current implementation of emitPatchpoint() is very inefficient:
for every FrameIndex operand if creates new MachineInstr with
that operand expanded and all other copied as is.
Since PATCHPOINT/STATEPOINT instructions may have *a lot* of
FrameIndex operands, we end up creating and erasing many
machine instructions. But we can do it in single pass, with only
one new machine instruction generated.

Reviewed By: reames
Differential Revision: https://reviews.llvm.org/D81181




More information about the All-commits mailing list