| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Fix some nondeterministic behavior when forwarding | Dale Johannesen | 2009-03-12 | 1 | -3/+13 |
| | | | | | | | | | | from a switch table. Multiple table entries that branch to the same place were being sorted by the pointer value of the ConstantInt*; changed to sort by the actual value of the ConstantInt. llvm-svn: 66749 | ||||
| * | Don't consider debug intrinsics when checking | Dale Johannesen | 2009-03-10 | 1 | -2/+2 |
| | | | | | | | whether a callee to be inlined is a leaf. llvm-svn: 66588 | ||||
| * | Ignore dbg info, while estimating size of jump through block. | Devang Patel | 2009-03-10 | 1 | -1/+3 |
| | | | | | llvm-svn: 66554 | ||||
| * | If a function is marked alwaysinline, it must be inlined (possibly for ↵ | Evan Cheng | 2009-03-10 | 1 | -7/+7 |
| | | | | | | | correctness). Do so even if the callee has dynamic alloca and the caller doesn't. llvm-svn: 66539 | ||||
| * | Introduce new linkage types linkonce_odr, weak_odr, common_odr | Duncan Sands | 2009-03-07 | 2 | -7/+4 |
| | | | | | | | | | | | | | | | | | | | | | | and extern_weak_odr. These are the same as the non-odr versions, except that they indicate that the global will only be overridden by an *equivalent* global. In C, a function with weak linkage can be overridden by a function which behaves completely differently. This means that IP passes have to skip weak functions, since any deductions made from the function definition might be wrong, since the definition could be replaced by something completely different at link time. This is not allowed in C++, thanks to the ODR (One-Definition-Rule): if a function is replaced by another at link-time, then the new function must be the same as the original function. If a language knows that a function or other global can only be overridden by an equivalent global, it can give it the weak_odr linkage type, and the optimizers will understand that it is alright to make deductions based on the function body. The code generators on the other hand map weak and weak_odr linkage to the same thing. llvm-svn: 66339 | ||||
| * | Fix another case where debug info interferes with | Dale Johannesen | 2009-03-06 | 1 | -2/+6 |
| | | | | | | | an optimization. llvm-svn: 66288 | ||||
| * | While hoisting instruction to speculatively execute simple bb, ignore dbg ↵ | Devang Patel | 2009-03-06 | 1 | -18/+30 |
| | | | | | | | intrinsics. llvm-svn: 66255 | ||||
| * | Tweak the check for promotable alloca's to handle | Dale Johannesen | 2009-03-06 | 1 | -1/+7 |
| | | | | | | | debug intrinsics correctly. llvm-svn: 66225 | ||||
| * | Add "check/remove dbg var" helper routines. | Devang Patel | 2009-03-06 | 1 | -0/+44 |
| | | | | | llvm-svn: 66223 | ||||
| * | Revert unintended commmit. | Dale Johannesen | 2009-03-04 | 1 | -5/+2 |
| | | | | | llvm-svn: 66001 | ||||
| * | Skip ptr-to-ptr bitcasts when counting in another case. | Dale Johannesen | 2009-03-04 | 1 | -4/+4 |
| | | | | | llvm-svn: 66000 | ||||
| * | Always skip ptr-to-ptr bitcasts when counting, | Dale Johannesen | 2009-03-04 | 1 | -2/+5 |
| | | | | | | | per Chris' suggestion. Slightly faster. llvm-svn: 65999 | ||||
| * | Marking debug info intrinsics as not touching memory | Dale Johannesen | 2009-03-03 | 1 | -0/+3 |
| | | | | | | | caused them to be considered trivially dead. Fix this. llvm-svn: 65979 | ||||
| * | Instruction counters must skip the bitcasts that | Dale Johannesen | 2009-03-03 | 1 | -0/+6 |
| | | | | | | | | feed into llvm.dbg.declare nodes, as well as the debug directives themselves. llvm-svn: 65976 | ||||
| * | When removing a store to an alloca that has only one | Dale Johannesen | 2009-03-03 | 1 | -2/+1 |
| | | | | | | | | | use, check also for the case where it has two uses, the other being a llvm.dbg.declare. This is needed so debug info doesn't affect codegen. llvm-svn: 65970 | ||||
| * | Remove accidental check-ins in r65960. :-( | Bill Wendling | 2009-03-03 | 1 | -5/+1 |
| | | | | | llvm-svn: 65961 | ||||
| * | Use > instead of >=. We want to promote aggregates of 128-bytes. | Bill Wendling | 2009-03-03 | 1 | -1/+5 |
| | | | | | llvm-svn: 65960 | ||||
| * | Fix a bunch of Doxygen syntax issues. Escape special characters, | Dan Gohman | 2009-03-03 | 1 | -2/+2 |
| | | | | | | | and put @file directives on their own comment line. llvm-svn: 65920 | ||||
| * | When sinking an insn in InstCombine bring its debug | Dale Johannesen | 2009-03-03 | 1 | -2/+25 |
| | | | | | | | | | info with it. Don't count debug info insns against the scan maximum in FindAvailableLoadedValue (lest they affect codegen). llvm-svn: 65910 | ||||
| * | Fix compiler warning about uninitialized variables. No functional change. | Nick Lewycky | 2009-02-27 | 1 | -1/+1 |
| | | | | | llvm-svn: 65620 | ||||
| * | Ignore dbg info intrinsics when folding conditional branch to | Zhou Sheng | 2009-02-26 | 1 | -1/+5 |
| | | | | | | | conditional branch predecessors. llvm-svn: 65509 | ||||
| * | Don't block basic block with only SwitchInst to fold into predecessors. | Zhou Sheng | 2009-02-25 | 1 | -1/+5 |
| | | | | | llvm-svn: 65456 | ||||
| * | While folding unconditional return move DbgRegionEndInst into the ↵ | Devang Patel | 2009-02-24 | 2 | -23/+10 |
| | | | | | | | | | | | | predecessor, instead of removing it. This fixes following tests from llvmgcc42 testsuite. gcc.c-torture/execute/20000605-3.c gcc.c-torture/execute/20020619-1.c gcc.c-torture/execute/20030920-1.c gcc.c-torture/execute/loop-ivopts-1.c llvm-svn: 65353 | ||||
| * | Changed option name from inline-threshold to basic-inline-threshold because | Mon P Wang | 2009-02-23 | 1 | -1/+1 |
| | | | | | | | inline-threshold option is used by the inliner. llvm-svn: 65309 | ||||
| * | Add AddrModeMatcher.cpp | Evan Cheng | 2009-02-21 | 1 | -0/+1 |
| | | | | | llvm-svn: 65228 | ||||
| * | Factor address mode matcher out of codegen prepare to make it available to ↵ | Evan Cheng | 2009-02-20 | 1 | -0/+593 |
| | | | | | | | other passes, e.g. loop strength reduction. llvm-svn: 65134 | ||||
| * | Just roll back the previous change to -mem2reg. | Zhou Sheng | 2009-02-20 | 1 | -26/+0 |
| | | | | | | | Will re-think about this according to Chris's comments. llvm-svn: 65126 | ||||
| * | patch to update the line number information in pass -mem2reg. | Zhou Sheng | 2009-02-20 | 1 | -0/+26 |
| | | | | | | | | | Currently this pass will delete the variable declaration info, and keep the line number info. But the kept line number info is not updated, and some is redundant or not correct, this patch just updates those info. llvm-svn: 65123 | ||||
| * | Fix typo caused by too much surfing, dudes... | Nick Lewycky | 2009-02-16 | 1 | -1/+1 |
| | | | | | llvm-svn: 64626 | ||||
| * | Fix a nasty bug (PR3550) where the inline pass could incorrectly mark | Chris Lattner | 2009-02-12 | 1 | -2/+2 |
| | | | | | | | | calls with the tail marker when inlining them through an invoke. Patch, testcase, and perfect analysis by Jay Foad! llvm-svn: 64364 | ||||
| * | If llvm.dbg.region.end is disappearing then remove corresponding ↵ | Devang Patel | 2009-02-11 | 2 | -3/+23 |
| | | | | | | | llvm.dbg.func.start also. llvm-svn: 64278 | ||||
| * | Ignore dbg intrinsic while folding unconditional branch. | Devang Patel | 2009-02-10 | 1 | -1/+2 |
| | | | | | llvm-svn: 64242 | ||||
| * | Do not clone llvm.dbg.func.start and corresponding llvm.dbg.region.end ↵ | Devang Patel | 2009-02-10 | 1 | -3/+14 |
| | | | | | | | during inlining. llvm-svn: 64209 | ||||
| * | Enable scalar replacement of AllocaInst whose one of the user is dbg info. | Devang Patel | 2009-02-10 | 1 | -0/+22 |
| | | | | | llvm-svn: 64207 | ||||
| * | Revert rev. 63876. It is causing llvm-gcc bootstrap failure. | Devang Patel | 2009-02-05 | 2 | -17/+14 |
| | | | | | llvm-svn: 63888 | ||||
| * | Ignore dbg intrinsics while propagating conditional expression info. | Devang Patel | 2009-02-05 | 2 | -14/+17 |
| | | | | | llvm-svn: 63876 | ||||
| * | Ignore dbg intrinsics while folding switch instruction. | Devang Patel | 2009-02-05 | 1 | -8/+19 |
| | | | | | llvm-svn: 63802 | ||||
| * | Ignore dbg intrinsics. | Devang Patel | 2009-02-04 | 1 | -7/+29 |
| | | | | | llvm-svn: 63781 | ||||
| * | While folding vallue comparison terminators ignore dbg intrinsics. | Devang Patel | 2009-02-04 | 1 | -0/+3 |
| | | | | | llvm-svn: 63700 | ||||
| * | Ignore dbg intrinsics while hoisting common code in the two blocks up into ↵ | Devang Patel | 2009-02-04 | 1 | -3/+14 |
| | | | | | | | the branch block. llvm-svn: 63687 | ||||
| * | Do not let dbg intrinsic block folding of two entry phi node. | Devang Patel | 2009-02-03 | 1 | -2/+3 |
| | | | | | llvm-svn: 63671 | ||||
| * | Revert r63600. It didn't fix the bug, it just moved it a bit. | Nick Lewycky | 2009-02-03 | 1 | -7/+2 |
| | | | | | llvm-svn: 63618 | ||||
| * | Update the callgraph when replacing InvokeInst with CallInst when inlining. | Nick Lewycky | 2009-02-03 | 1 | -3/+8 |
| | | | | | llvm-svn: 63600 | ||||
| * | use precise getters | Gabor Greif | 2009-01-30 | 1 | -2/+2 |
| | | | | | llvm-svn: 63402 | ||||
| * | Rename getAnalysisToUpdate to getAnalysisIfAvailable. | Duncan Sands | 2009-01-28 | 4 | -14/+14 |
| | | | | | llvm-svn: 63198 | ||||
| * | Revert previous change; even this mild and clearly | Dale Johannesen | 2009-01-24 | 1 | -7/+4 |
| | | | | | | | | more accurate change loses more than it gains on benchmarks. llvm-svn: 62938 | ||||
| * | Improve the inlining cost function a bit. | Dale Johannesen | 2009-01-24 | 1 | -3/+6 |
| | | | | | | | Little practical effect. llvm-svn: 62908 | ||||
| * | Simplify the logic of getting hold of a PHI predecessor block. | Gabor Greif | 2009-01-23 | 1 | -4/+2 |
| | | | | | | | | | | There is now a direct way from value-use-iterator to incoming block in PHINode's API. This way we avoid the iterator->index->iterator trip, and especially the costly getOperandNo() invocation. Additionally there is now an assertion that the iterator really refers to one of the PHI's Uses. llvm-svn: 62869 | ||||
| * | another fix for PR3354 | Chris Lattner | 2009-01-20 | 1 | -0/+5 |
| | | | | | llvm-svn: 62561 | ||||
| * | Doxygen-ify comments. | Bill Wendling | 2009-01-19 | 1 | -45/+43 |
| | | | | | llvm-svn: 62546 | ||||

