History log of /llvm-project/llvm/lib/Transforms/Utils/Local.cpp (Results 801 – 825 of 910)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# ba61fed5 11-Nov-2009 Duncan Sands <baldrick@free.fr>

Don't trivially delete unused calls to llvm.invariant.start. This allows
llvm.invariant.start to be used without necessarily being paired with a call
to llvm.invariant.end. If you run the entire op

Don't trivially delete unused calls to llvm.invariant.start. This allows
llvm.invariant.start to be used without necessarily being paired with a call
to llvm.invariant.end. If you run the entire optimization pipeline then such
calls are in fact deleted (adce does it), but that's actually a good thing since
we probably do want them to be zapped late in the game. There should really be
an integration test that checks that the llvm.invariant.start call lasts long
enough that all passes that do interesting things with it get to do their stuff
before it is deleted. But since no passes do anything interesting with it yet
this will have to wait for later.

llvm-svn: 86840

show more ...


# 852d6d64 10-Nov-2009 Chris Lattner <sabre@nondot.org>

move some generally useful functions out of jump threading
into libanalysis and transformutils.

llvm-svn: 86735


# cbd18fc9 10-Nov-2009 Chris Lattner <sabre@nondot.org>

refactor TryToSimplifyUncondBranchFromEmptyBlock out of SimplifyCFG.

llvm-svn: 86666


# 5a383249 03-Nov-2009 Chris Lattner <sabre@nondot.org>

remove a isFreeCall check: it is a callinst that can write to memory already.

llvm-svn: 85863


# 54a4b840 01-Nov-2009 Chris Lattner <sabre@nondot.org>

constant fold indirectbr(blockaddress(%bb)) -> br label %bb.

llvm-svn: 85704


# f390e04a 27-Oct-2009 Victor Hernandez <vhernandez@apple.com>

Rename MallocFreeHelper as MemoryBuiltins

llvm-svn: 85286


# 762195bd 26-Oct-2009 Victor Hernandez <vhernandez@apple.com>

Rename MallocHelper as MallocFreeHelper, since it now also identifies calls to free()

llvm-svn: 85181


# de5ad42a 26-Oct-2009 Victor Hernandez <vhernandez@apple.com>

Remove FreeInst.
Remove LowerAllocations pass.
Update some more passes to treate free calls just like they were treating FreeInst.

llvm-svn: 85176


# e297149e 24-Oct-2009 Victor Hernandez <vhernandez@apple.com>

Auto-upgrade free instructions to calls to the builtin free function.
Update all analysis passes and transforms to treat free calls just like FreeInst.
Remove RaiseAllocations and all its tests since

Auto-upgrade free instructions to calls to the builtin free function.
Update all analysis passes and transforms to treat free calls just like FreeInst.
Remove RaiseAllocations and all its tests since FreeInst no longer needs to be raised.

llvm-svn: 84987

show more ...


Revision tags: llvmorg-2.6.0
# f8cb758b 16-Sep-2009 Andreas Neustifter <astifter-llvm@gmx.at>

Preserve ProfileInfo during CodeGenPrepare.

llvm-svn: 82034


# b292b8ce 30-Jul-2009 Owen Anderson <resistor@mac.com>

Move more code back to 2.5 APIs.

llvm-svn: 77635


# 47db941f 22-Jul-2009 Owen Anderson <resistor@mac.com>

Get rid of the Pass+Context magic.

llvm-svn: 76702


# 1e5f00e7 09-Jul-2009 Owen Anderson <resistor@mac.com>

This started as a small change, I swear. Unfortunately, lots of things call the [I|F]CmpInst constructors. Who knew!?

llvm-svn: 75200


# 38264b15 06-Jul-2009 Owen Anderson <resistor@mac.com>

"LLVMContext* " --> "LLVMContext *"

llvm-svn: 74878


# e70b6370 05-Jul-2009 Owen Anderson <resistor@mac.com>

More LLVMContext-ification.

llvm-svn: 74807


# 0f2eb5b9 26-Jun-2009 Devang Patel <dpatel@apple.com>

Remove unused routines.

llvm-svn: 74351


# 945d08d7 16-Jun-2009 Chris Lattner <sabre@nondot.org>

Generalize instcombine's isSafeToLoadUnconditionally() function
to ignore readonly calls, and factor it out of instcombine so
that it can be used by other passes. Patch by Frits van Bommel!

llvm-sv

Generalize instcombine's isSafeToLoadUnconditionally() function
to ignore readonly calls, and factor it out of instcombine so
that it can be used by other passes. Patch by Frits van Bommel!

llvm-svn: 73506

show more ...


# 9a6fef0a 06-May-2009 Dan Gohman <gohman@apple.com>

Simplify code by using SmallVector's pop_back_val() instead of
separate back() and pop_back() calls.

llvm-svn: 71089


# 1efabaaa 06-May-2009 Duncan Sands <baldrick@free.fr>

Allow readonly functions to unwind exceptions. Teach
the optimizers about this. For example, a readonly
function with no uses cannot be removed unless it is
also marked nounwind.

llvm-svn: 71071


# 48f82222 04-May-2009 Dan Gohman <gohman@apple.com>

Re-apply 70645, converting ScalarEvolution to use
CallbackVH, with fixes. allUsesReplacedWith need to
walk the def-use chains and invalidate all users of a
value that is replaced. SCEVs of users need

Re-apply 70645, converting ScalarEvolution to use
CallbackVH, with fixes. allUsesReplacedWith need to
walk the def-use chains and invalidate all users of a
value that is replaced. SCEVs of users need to be
recalcualted even if the new value is equivalent. Also,
make forgetLoopPHIs walk def-use chains, since any
SCEV that depends on a PHI should be recalculated when
more information about that PHI becomes available.

llvm-svn: 70927

show more ...


# 5036695c 03-May-2009 Dan Gohman <gohman@apple.com>

Revert r70645 for now; it's causing a variety of regressions.

llvm-svn: 70661


# e9a38d16 02-May-2009 Dan Gohman <gohman@apple.com>

Convert ScalarEvolution to use CallbackVH for its internal map. This
makes ScalarEvolution::deleteValueFromRecords, and it's code that
subtly needed to be called before ReplaceAllUsesWith, unnecessar

Convert ScalarEvolution to use CallbackVH for its internal map. This
makes ScalarEvolution::deleteValueFromRecords, and it's code that
subtly needed to be called before ReplaceAllUsesWith, unnecessary.

It also makes ValueDeletionListener unnecessary.

llvm-svn: 70645

show more ...


# ff089955 02-May-2009 Dan Gohman <gohman@apple.com>

Previously, RecursivelyDeleteDeadInstructions provided an option
of returning a list of pointers to Values that are deleted. This was
unsafe, because the pointers in the list are, by nature of what
R

Previously, RecursivelyDeleteDeadInstructions provided an option
of returning a list of pointers to Values that are deleted. This was
unsafe, because the pointers in the list are, by nature of what
RecursivelyDeleteDeadInstructions does, always dangling. Replace this
with a simple callback mechanism. This may eventually be removed if
all clients can reasonably be expected to use CallbackVH.

Use this to factor out the dead-phi-cycle-elimination code from LSR
utility function, and generalize it to use the
RecursivelyDeleteTriviallyDeadInstructions utility function.

This makes LSR more aggressive about eliminating dead PHI cycles;
adjust tests to either be less trivial or to simply expect fewer
instructions.

llvm-svn: 70636

show more ...


# 05bea906 18-Mar-2009 Zhou Sheng <zhousheng00@gmail.com>

Revert my previous change on Local.cpp, instead, fix the bug on scalarrepl.
If the instruction has no users, it is also not only used by debug info
and should not be deleted.

llvm-svn: 67194


# 64a6a092 18-Mar-2009 Zhou Sheng <zhousheng00@gmail.com>

Fix a bug.
If I->use_empty(), this method should return false.

llvm-svn: 67180


1...<<31323334353637