aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-11-30 06:36:11 +0000
committerChris Lattner <sabre@nondot.org>2004-11-30 06:36:11 +0000
commite74ed0d53b5c12eb9cb463698df8e81c8a99549d (patch)
tree8b09df0c69e94b1762c6653056cc6f84ae6518ea /lib
parentd510293e245518a3803868d0f8832ce12060f56d (diff)
Fix test/Regression/CodeGen/PowerPC/2004-11-29-ShrCrash.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18374 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Target/PowerPC/PPC32ISelSimple.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Target/PowerPC/PPC32ISelSimple.cpp b/lib/Target/PowerPC/PPC32ISelSimple.cpp
index 33512c1e39..7b9a312a11 100644
--- a/lib/Target/PowerPC/PPC32ISelSimple.cpp
+++ b/lib/Target/PowerPC/PPC32ISelSimple.cpp
@@ -2910,7 +2910,9 @@ void PPC32ISel::emitShiftOperation(MachineBasicBlock *MBB,
return;
unsigned SrcReg = getReg (Op, MBB, IP);
- if (isLeftShift) {
+ if (Amount == 0) {
+ BuildMI(*MBB, IP, PPC::OR, 2, DestReg).addReg(SrcReg).addReg(SrcReg);
+ } else if (isLeftShift) {
BuildMI(*MBB, IP, PPC::RLWINM, 4, DestReg).addReg(SrcReg)
.addImm(Amount).addImm(0).addImm(31-Amount);
} else {