[llvm-commits] [llvm] r94112 - /llvm/trunk/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
Victor Hernandez
vhernandez at apple.com
Fri Jan 22 14:51:54 PST 2010
I returned them in r94194.
Victor
On Jan 21, 2010, at 3:58 PM, Chris Lattner wrote:
> On Jan 21, 2010, at 3:07 PM, Victor Hernandez wrote:
>> URL: http://llvm.org/viewvc/llvm-project?rev=94112&view=rev
>> Log:
>> No need to look through bitcasts for DbgInfoIntrinsic
>
> Nice, thanks for cleaning this stuff up.
>
>> +++ llvm/trunk/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp Thu Jan 21 17:07:15 2010
>> @@ -406,12 +406,8 @@
>> for (unsigned ScanInsts = 6; BBI != SI.getParent()->begin() && ScanInsts;
>> --ScanInsts) {
>> --BBI;
>> - // Don't count debug info directives, lest they affect codegen,
>> - // and we skip pointer-to-pointer bitcasts, which are NOPs.
>> - // It is necessary for correctness to skip those that feed into a
>> - // llvm.dbg.declare, as these are not present when debugging is off.
>> - if (isa<DbgInfoIntrinsic>(BBI) ||
>> - (isa<BitCastInst>(BBI) && isa<PointerType>(BBI->getType()))) {
>> + // Don't count debug info directives, lest they affect codegen
>> + if (isa<DbgInfoIntrinsic>(BBI)) {
>
> i think this should stay, but the comment should remove reference to dbg.declare. Pointer bitcast is still a noop.
>
>> ScanInsts++;
>> continue;
>> }
>> @@ -475,14 +471,12 @@
>>
>>
>> // If this store is the last instruction in the basic block (possibly
>> - // excepting debug info instructions and the pointer bitcasts that feed
>> - // into them), and if the block ends with an unconditional branch, try
>> - // to move it to the successor block.
>> + // excepting debug info instructions), and if the block ends with an
>> + // unconditional branch, try to move it to the successor block.
>> BBI = &SI;
>> do {
>> ++BBI;
>> - } while (isa<DbgInfoIntrinsic>(BBI) ||
>> - (isa<BitCastInst>(BBI) && isa<PointerType>(BBI->getType())));
>> + } while (isa<DbgInfoIntrinsic>(BBI));
>> if (BranchInst *BI = dyn_cast<BranchInst>(BBI))
>> if (BI->isUnconditional())
>> if (SimplifyStoreAtEndOfBlock(SI))
>> @@ -542,8 +536,7 @@
>> if (OtherBr->isUnconditional()) {
>> --BBI;
>> // Skip over debugging info.
>> - while (isa<DbgInfoIntrinsic>(BBI) ||
>> - (isa<BitCastInst>(BBI) && isa<PointerType>(BBI->getType()))) {
>> + while (isa<DbgInfoIntrinsic>(BBI)) {
>
> This part of the change is still good to keep.
>
> -Chris
>
More information about the llvm-commits
mailing list