[PATCH] D105588: [ARM] Remove PromotedBitwiseVT for NEON types

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 7 13:25:54 PDT 2021


dmgreen created this revision.
dmgreen added reviewers: efriedma, samtebbs, SjoerdMeijer, ostannard, simon_tatham.
Herald added subscribers: danielkiss, hiraditya, kristof.beyls.
dmgreen requested review of this revision.
Herald added a project: LLVM.

This removes the promotion of NEON AND, OR and XOR nodes to v2i32/v4i32, treating them the same as the AArch64 and MVE backends where we just add the relevant patterns for each legal type. This prevents a lot of bitcasts from being added to the DAG, which have the potential to make optimizations more difficult. It does mean adding extra patterns, and some codegen can change due to the types now being legal, not promoted.


https://reviews.llvm.org/D105588

Files:
  llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
  llvm/lib/Target/AArch64/AArch64ISelLowering.h
  llvm/lib/Target/ARM/ARMISelLowering.cpp
  llvm/lib/Target/ARM/ARMISelLowering.h
  llvm/lib/Target/ARM/ARMInstrNEON.td
  llvm/test/CodeGen/ARM/vector-promotion.ll
  llvm/test/CodeGen/ARM/vmov.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D105588.357060.patch
Type: text/x-patch
Size: 11022 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210707/a5112cb3/attachment.bin>


More information about the llvm-commits mailing list