[PATCH] D63937: [ARM] MVE: allow soft-float ABI to pass vector types.

Simon Tatham via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 1 09:54:12 PDT 2019


simon_tatham updated this revision to Diff 207362.
simon_tatham added a comment.

Revised patch is intended to apply //after// D63938 <https://reviews.llvm.org/D63938> rather than before.

Moved the re-enablement of `ISD::UNDEF` into `setAllExpand` itself
(after the other patch started centralising things in there), because
that way it will reliably be turned back on for any type where we
turned it off in the first place.

Also fixed the bogus triple, added some soft-float-abi tests for other
types, and updated a load of tests using `update_llc_test_checks`.

In order to get the new tests for handling vectors of floats to pass,
I also had to legalize `INSERT_VECTOR_ELT` with the type set to the
vector's //element// type, rather than the type of the vector as a
whole, because that seems to be how it gets queried in some situations
(particularly, if the scalar operand is of a floating type that needs
promotion, like f16).


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D63937/new/

https://reviews.llvm.org/D63937

Files:
  llvm/lib/Target/ARM/ARMISelLowering.cpp
  llvm/lib/Target/ARM/ARMISelLowering.h
  llvm/lib/Target/ARM/ARMInstrMVE.td
  llvm/test/CodeGen/Thumb2/mve-div-expand.ll
  llvm/test/CodeGen/Thumb2/mve-fmath.ll
  llvm/test/CodeGen/Thumb2/mve-fp-negabs.ll
  llvm/test/CodeGen/Thumb2/mve-shuffle.ll
  llvm/test/CodeGen/Thumb2/mve-simple-arith.ll
  llvm/test/CodeGen/Thumb2/mve-soft-float-abi.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D63937.207362.patch
Type: text/x-patch
Size: 173049 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190701/8eac7149/attachment-0001.bin>


More information about the llvm-commits mailing list