]> granicus.if.org Git - clang/commit
ARM: use vqdmull and vqadds/vqsubs to implement vqdmlal/vqdmlsl
authorTim Northover <tnorthover@apple.com>
Wed, 28 Aug 2013 09:46:34 +0000 (09:46 +0000)
committerTim Northover <tnorthover@apple.com>
Wed, 28 Aug 2013 09:46:34 +0000 (09:46 +0000)
commitb1c09b913e331824da29f8017452b6171f7eccbc
tree1ea340df488ae27a0773dda89025abb7a382862f
parent7143a21706d951ad53b5167a4dcd750f5997d208
ARM: use vqdmull and vqadds/vqsubs to implement vqdmlal/vqdmlsl

The NEON intrinsics vqdmlal and vqdmlsl are really just combinations of a
saturating-doubling-multiply (vqdmull) and a saturating add/sub, so now that
LLVM can spot those patterns Clang should emit them instead of specialised
intrinsics.

Feature already tested by existing ARM NEON intrinsics tests.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189462 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CGBuiltin.cpp