summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorJim Laskey <jlaskey@mac.com>2005-08-12 23:52:46 +0000
committerJim Laskey <jlaskey@mac.com>2005-08-12 23:52:46 +0000
commit35960708b740eea7502436185266d86cc4dc78b2 (patch)
tree63165d3cbf8d921ecd5750598a998ec842a902f2 /llvm/lib
parent461edda709611902959de41eb2e087862cc6719a (diff)
downloadbcm5719-llvm-35960708b740eea7502436185266d86cc4dc78b2.tar.gz
bcm5719-llvm-35960708b740eea7502436185266d86cc4dc78b2.zip
Fix for 2005-08-12-rlwimi-crash.ll. Make allowance for masks being shifted to
zero. llvm-svn: 22773
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp b/llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp
index 500333fb296..9725c2c586c 100644
--- a/llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp
+++ b/llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp
@@ -640,7 +640,7 @@ static bool isRotateAndMask(unsigned Opcode, unsigned Shift, unsigned Mask,
}
// if the mask doesn't intersect any Indeterminant bits
- if (!(Mask & Indeterminant)) {
+ if (Mask && !(Mask & Indeterminant)) {
SH = Shift;
// make sure the mask is still a mask (wrap arounds may not be)
return isRunOfOnes(Mask, MB, ME);
OpenPOWER on IntegriCloud