summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
diff options
context:
space:
mode:
authorDiana Picus <diana.picus@linaro.org>2017-07-06 08:04:16 +0000
committerDiana Picus <diana.picus@linaro.org>2017-07-06 08:04:16 +0000
commitcd460c89c4e4da989240c5094a616313105c4e16 (patch)
tree31a7dfe6a18f000017aba110570a341872a6195f /llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
parentccc5e044615f0b6e15b5e48518bcce17c2bd675a (diff)
downloadbcm5719-llvm-cd460c89c4e4da989240c5094a616313105c4e16.tar.gz
bcm5719-llvm-cd460c89c4e4da989240c5094a616313105c4e16.zip
[ARM] GlobalISel: Widen s1, s8, s16 G_CONSTANT
Get the legalizer to widen small constants. llvm-svn: 307239
Diffstat (limited to 'llvm/lib/Target/ARM/ARMLegalizerInfo.cpp')
-rw-r--r--llvm/lib/Target/ARM/ARMLegalizerInfo.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp b/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
index af6505c9862..53bf4ba1dc5 100644
--- a/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
+++ b/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
@@ -89,6 +89,8 @@ ARMLegalizerInfo::ARMLegalizerInfo(const ARMSubtarget &ST) {
setAction({G_SELECT, 1, s1}, Legal);
setAction({G_CONSTANT, s32}, Legal);
+ for (auto Ty : {s1, s8, s16})
+ setAction({G_CONSTANT, Ty}, WidenScalar);
setAction({G_ICMP, s1}, Legal);
for (auto Ty : {s8, s16})
OpenPOWER on IntegriCloud