diff options
| author | Diana Picus <diana.picus@linaro.org> | 2019-04-30 09:24:43 +0000 |
|---|---|---|
| committer | Diana Picus <diana.picus@linaro.org> | 2019-04-30 09:24:43 +0000 |
| commit | 59a4c0481a83fc3ef74a63d4f231f06aa3075371 (patch) | |
| tree | 5080e2c8b1b2b7096518803a4071908a485c7677 /llvm/lib/Target/ARM/ARMLegalizerInfo.cpp | |
| parent | 7bce25cd7d0779526db8e5dca8c2bacd0b9dd5e4 (diff) | |
| download | bcm5719-llvm-59a4c0481a83fc3ef74a63d4f231f06aa3075371.tar.gz bcm5719-llvm-59a4c0481a83fc3ef74a63d4f231f06aa3075371.zip | |
[ARM GlobalISel] Widen small shift operands
The legalizer was already widening the shift amount. Add tests for that
behaviour, and also support widening the shifted value.
llvm-svn: 359542
Diffstat (limited to 'llvm/lib/Target/ARM/ARMLegalizerInfo.cpp')
| -rw-r--r-- | llvm/lib/Target/ARM/ARMLegalizerInfo.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp b/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp index 5ab211b791e..689a77a9d93 100644 --- a/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp +++ b/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp @@ -90,6 +90,7 @@ ARMLegalizerInfo::ARMLegalizerInfo(const ARMSubtarget &ST) { getActionDefinitionsBuilder({G_ASHR, G_LSHR, G_SHL}) .legalFor({{s32, s32}}) + .minScalar(0, s32) .clampScalar(1, s32, s32); bool HasHWDivide = (!ST.isThumb() && ST.hasDivideInARMMode()) || |

