summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
diff options
context:
space:
mode:
authorDiana Picus <diana.picus@linaro.org>2017-04-10 09:27:39 +0000
committerDiana Picus <diana.picus@linaro.org>2017-04-10 09:27:39 +0000
commit3ff82c8cb795072c088d4a3b1c3ce4b0aebc01b3 (patch)
tree503cf7083889acb643dd73e39a544974e6fe020d /llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
parent31cc143b51026c711f682c2d3335c9f11a74844b (diff)
downloadbcm5719-llvm-3ff82c8cb795072c088d4a3b1c3ce4b0aebc01b3.tar.gz
bcm5719-llvm-3ff82c8cb795072c088d4a3b1c3ce4b0aebc01b3.zip
[ARM] GlobalISel: Support G_FPOW for float and double
Legalize to a libcall. llvm-svn: 299841
Diffstat (limited to 'llvm/lib/Target/ARM/ARMLegalizerInfo.cpp')
-rw-r--r--llvm/lib/Target/ARM/ARMLegalizerInfo.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp b/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
index ccafba968ca..a1097af6e85 100644
--- a/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
+++ b/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
@@ -65,8 +65,9 @@ ARMLegalizerInfo::ARMLegalizerInfo(const ARMSubtarget &ST) {
setAction({G_STORE, s64}, Legal);
}
- setAction({G_FREM, s32}, Libcall);
- setAction({G_FREM, s64}, Libcall);
+ for (unsigned Op : {G_FREM, G_FPOW})
+ for (auto Ty : {s32, s64})
+ setAction({Op, Ty}, Libcall);
computeTables();
}
OpenPOWER on IntegriCloud