[all-commits] [llvm/llvm-project] 74ca67: [ARM] Remove hasSideEffects from FP converts

David Green via All-commits all-commits at lists.llvm.org
Sun Jul 5 08:23:47 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 74ca67c109c8d1abafe1d2bd4edfb85f03b45faa
      https://github.com/llvm/llvm-project/commit/74ca67c109c8d1abafe1d2bd4edfb85f03b45faa
  Author: David Green <david.green at arm.com>
  Date:   2020-07-05 (Sun, 05 Jul 2020)

  Changed paths:
    M llvm/lib/Target/ARM/ARMInstrVFP.td
    M llvm/test/CodeGen/ARM/cmov_fp16.ll
    M llvm/test/CodeGen/ARM/fp16-args.ll
    M llvm/test/CodeGen/ARM/fp16-bitcast.ll
    M llvm/test/CodeGen/ARM/fp16-fullfp16.ll
    M llvm/test/CodeGen/ARM/fp16-instructions.ll
    M llvm/test/CodeGen/ARM/no-fpscr-liveness.ll
    M llvm/test/CodeGen/ARM/vcvt.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-float-loops.ll
    M llvm/test/CodeGen/Thumb2/mve-masked-store.ll
    M llvm/test/CodeGen/Thumb2/mve-vcvt.ll
    M llvm/test/CodeGen/Thumb2/mve-vcvt16.ll
    M llvm/unittests/Target/ARM/MachineInstrTest.cpp

  Log Message:
  -----------
  [ARM] Remove hasSideEffects from FP converts

Whether an instruction is deemed to have side effects in determined by
whether it has a tblgen pattern that emits a single instruction.
Because of the way a lot of the the vcvt instructions are specified
either in dagtodag code or with patterns that emit multiple
instructions, they don't get marked as not having side effects.

This just marks them as not having side effects manually. It can help
especially with instruction scheduling, to not create artificial
barriers, but one of these tests also managed to produce fewer
instructions.

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




More information about the All-commits mailing list