]> granicus.if.org Git - llvm/commit
[ARM] Sink zext/sext operands for add and sub to enable vsubl generation.
authorFlorian Hahn <flo@fhahn.com>
Wed, 6 Mar 2019 00:10:03 +0000 (00:10 +0000)
committerFlorian Hahn <flo@fhahn.com>
Wed, 6 Mar 2019 00:10:03 +0000 (00:10 +0000)
commit3cd4111205aa3019d6e02ad21edd855bc51681d0
tree0d58359e26f7caddb3f1547f9421808186a886b3
parent4eb768f03d7ff70031429f2d78bb85da8fc38da9
[ARM] Sink zext/sext operands for add and sub to enable vsubl generation.

This uses the infrastructure added in rL353152 to sink zext and sexts to
sub/add users, to enable vsubl/vaddl generation when NEON is available.

See https://bugs.llvm.org/show_bug.cgi?id=40025.

Reviewers: SjoerdMeijer, t.p.northover, samparker, efriedma

Reviewed By: samparker

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@355460 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/ARM/ARMISelLowering.cpp
lib/Target/ARM/ARMISelLowering.h
test/Transforms/CodeGenPrepare/ARM/sink-free-instructions.ll [new file with mode: 0644]