[all-commits] [llvm/llvm-project] 362d00: [ARM][VecReduce] Force expand vector_reduce_fmin

David Green via All-commits all-commits at lists.llvm.org
Tue Feb 4 01:37:28 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 362d00e0510ee75750499e2993a782428e377215
      https://github.com/llvm/llvm-project/commit/362d00e0510ee75750499e2993a782428e377215
  Author: David Green <david.green at arm.com>
  Date:   2020-02-04 (Tue, 04 Feb 2020)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    M llvm/test/CodeGen/AArch64/vecreduce-fmax-legalization.ll
    A llvm/test/CodeGen/Thumb2/mve-vecreduce-fminmax.ll

  Log Message:
  -----------
  [ARM][VecReduce] Force expand vector_reduce_fmin

Under MVE, we do not have any lowering for fminimum, which a
vector_reduce_fmin without NoNan will be expanded into. As with the
other recent patches, force this to expand in the pre-isel pass. Note
that Neon lowering would be OK because the scalar fminimum uses the
vector VMIN instruction, but is probably better to just rely on the
scalar operations, which is what is done here.

Also fixes what appears to be the reversal of INF vs -INF in the
vector_reduce_fmin widening code.




More information about the All-commits mailing list