On Mon, 2006-12-04 at 10:22 -0800, Chris Lattner wrote: > > // If this is another cast that can be eliminated, it isn't > > codegen either. > > if (const CastInst *CI = dyn_cast<CastInst>(V)) > > - if (isEliminableCastPair(CI, CastInst::getCastOpcode(V, Ty), > > Ty, TD)) > > + if (isEliminableCastPair(CI, CastInst::getCastOpcode( > > + V, V->getType()->isSigned(), Ty, Ty->isSigned()), Ty, > > TD)) > > return false; > > return true; > > } > > Won't this miscompile stuff like: > > %B = zext sbyte %A to ushort > %C = zext ushort %B to uint > > into a sext?
No. This patch doesn't change anything. The only reason for this change is the change in signature for getCastOpcode. See the corresponding change in getCastOpcode. This passed everything on Linux last night before I committed it. Reid. > > -Chris > _______________________________________________ > llvm-commits mailing list > llvm-commits@cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
signature.asc
Description: This is a digitally signed message part
_______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits