[all-commits] [llvm/llvm-project] 3d9c85: Mark FMOV constant materialization as being as che...

Owen Anderson via All-commits all-commits at lists.llvm.org
Thu Sep 10 09:39:21 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 3d9c85e4d85bef3db495a37577f80b90ec9770b6
      https://github.com/llvm/llvm-project/commit/3d9c85e4d85bef3db495a37577f80b90ec9770b6
  Author: Owen Anderson <resistor at mac.com>
  Date:   2020-09-10 (Thu, 10 Sep 2020)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/arm64-aapcs.ll
    A llvm/test/CodeGen/AArch64/fmov-imm-licm.ll
    M llvm/test/CodeGen/AArch64/fp-cond-sel.ll
    M llvm/test/CodeGen/AArch64/func-calls.ll
    M llvm/test/CodeGen/AArch64/pow.ll
    M llvm/test/CodeGen/AArch64/swifterror.ll
    M llvm/test/Transforms/LoopStrengthReduce/AArch64/small-constant.ll

  Log Message:
  -----------
  Mark FMOV constant materialization as being as cheap as a move.

This prevents us from doing things like LICM'ing it out of a loop,
which is usually a net loss because we end up having to spill a
callee-saved FPR to accomodate it.

This does perturb instruction scheduling around this instruction,
so a number of tests had to be updated to account for it.

Reviewed By: t.p.northover

Differential Revision: https://reviews.llvm.org/D87316




More information about the All-commits mailing list