diff options
author | Jessica Paquette <jpaquette@apple.com> | 2019-01-30 21:03:52 +0000 |
---|---|---|
committer | Jessica Paquette <jpaquette@apple.com> | 2019-01-30 21:03:52 +0000 |
commit | 22457f8e9bd6e21d890134db2b268636cebd4591 (patch) | |
tree | 6cc851bc319cadc80246d4e7547506deaa7cef58 /llvm/lib/CodeGen | |
parent | b147e7d85374ff4aedd28c8cd9d8713ed0ce9d10 (diff) | |
download | bcm5719-llvm-22457f8e9bd6e21d890134db2b268636cebd4591.tar.gz bcm5719-llvm-22457f8e9bd6e21d890134db2b268636cebd4591.zip |
[GlobalISel][AArch64] Add instruction selection support for @llvm.sqrt
This teaches the legalizer about G_FSQRT in AArch64. Also adds a legalizer
test for G_FSQRT, a selection test for it, and updates existing floating point
tests.
https://reviews.llvm.org/D57361
llvm-svn: 352671
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r-- | llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp b/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp index 5fb5aae1c6d..ee9163f5c74 100644 --- a/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp +++ b/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp @@ -1197,6 +1197,7 @@ LegalizerHelper::widenScalar(MachineInstr &MI, unsigned TypeIdx, LLT WideTy) { case TargetOpcode::G_FSIN: case TargetOpcode::G_FLOG10: case TargetOpcode::G_FLOG: + case TargetOpcode::G_FSQRT: assert(TypeIdx == 0); Observer.changingInstr(MI); @@ -1842,6 +1843,7 @@ LegalizerHelper::fewerElementsVector(MachineInstr &MI, unsigned TypeIdx, case G_INTRINSIC_TRUNC: case G_FCOS: case G_FSIN: + case G_FSQRT: return fewerElementsVectorBasic(MI, TypeIdx, NarrowTy); case G_ZEXT: case G_SEXT: |