summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@intel.com>2019-04-10 21:42:08 +0000
committerCraig Topper <craig.topper@intel.com>2019-04-10 21:42:08 +0000
commit61f31cbcb2c22f9954a24c700db3038eb4d61ee3 (patch)
treed3fc355161a7a3044faaa60e9495f05a29a6e2d3 /llvm/lib/CodeGen
parent4a32ce39b79da1e8e3711807278524ee23933927 (diff)
downloadbcm5719-llvm-61f31cbcb2c22f9954a24c700db3038eb4d61ee3.tar.gz
bcm5719-llvm-61f31cbcb2c22f9954a24c700db3038eb4d61ee3.zip
[X86] Teach foldMaskedShiftToScaledMask to look through an any_extend from i32 to i64 between the and & shl
foldMaskedShiftToScaledMask tries to reorder and & shl to enable the shl to fold into an LEA. But if there is an any_extend between them it doesn't work. This patch modifies the code to look through any_extend from i32 to i64 when the and mask only uses bits that weren't from the extended part. This will prevent a regression from D60358 caused by 64-bit SHL being narrowed to 32-bits when their upper bits aren't demanded. Differential Revision: https://reviews.llvm.org/D60532 llvm-svn: 358139
Diffstat (limited to 'llvm/lib/CodeGen')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud