[all-commits] [llvm/llvm-project] d79b57: [ARM] Split FPExt loads

David Green via All-commits all-commits at lists.llvm.org
Thu Jun 25 13:55:40 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: d79b57b8bbba8d9f7e91417fdccf70e74150fd4a
      https://github.com/llvm/llvm-project/commit/d79b57b8bbba8d9f7e91417fdccf70e74150fd4a
  Author: David Green <david.green at arm.com>
  Date:   2020-06-25 (Thu, 25 Jun 2020)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/test/CodeGen/Thumb2/mve-fp16convertloops.ll
    M llvm/test/CodeGen/Thumb2/mve-vcvt16.ll
    M llvm/test/CodeGen/Thumb2/mve-widen-narrow.ll

  Log Message:
  -----------
  [ARM] Split FPExt loads

This extends PerformSplittingToWideningLoad to also handle FP_Ext, as
well as sign and zero extends. It uses an integer extending load
followed by a VCVTL on the bottom lanes to efficiently perform an fpext
on a smaller than legal type.

The existing code had to be rewritten a little to not just split the
node in two and let legalization handle it from there, but to actually
split into legal chunks.

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




More information about the All-commits mailing list