[llvm] r216917 - Fix signed integer overflow in PPCInstPrinter.
Alexey Samsonov
vonosmas at gmail.com
Tue Sep 2 10:38:34 PDT 2014
Author: samsonov
Date: Tue Sep 2 12:38:34 2014
New Revision: 216917
URL: http://llvm.org/viewvc/llvm-project?rev=216917&view=rev
Log:
Fix signed integer overflow in PPCInstPrinter.
This bug was reported by UBSan.
Modified:
llvm/trunk/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp
Modified: llvm/trunk/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp?rev=216917&r1=216916&r2=216917&view=diff
==============================================================================
--- llvm/trunk/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp (original)
+++ llvm/trunk/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp Tue Sep 2 12:38:34 2014
@@ -268,7 +268,7 @@ void PPCInstPrinter::printAbsBranchOpera
if (!MI->getOperand(OpNo).isImm())
return printOperand(MI, OpNo, O);
- O << (int)MI->getOperand(OpNo).getImm()*4;
+ O << SignExtend32<32>((unsigned)MI->getOperand(OpNo).getImm() << 2);
}
More information about the llvm-commits
mailing list