History log of /llvm-project/llvm/lib/Transforms/Utils/InlineFunction.cpp (Results 551 – 575 of 636)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 3b18fd7b 20-Jun-2008 Dan Gohman <gohman@apple.com>

Teach InlineFunction how to differentiate between multiple-value
return statements and aggregate returns so that it handles both
correctly.

llvm-svn: 52519


Revision tags: llvmorg-2.3.0
# 697e94cc 15-May-2008 Gabor Greif <ggreif@gmail.com>

Fix a bunch of 80col violations that arose from the Create API change. Tweak makefile targets to find these better.

llvm-svn: 51143


# 4d43d3c7 25-Apr-2008 Nick Lewycky <nicholas@mxc.ca>

Remove 'unwinds to' support from mainline. This patch undoes r47802 r47989
r48047 r48084 r48085 r48086 r48088 r48096 r48099 r48109 and r48123.

llvm-svn: 50265


# 8f83081f 23-Apr-2008 Devang Patel <dpatel@apple.com>

Check type instead of no. of operands.

llvm-svn: 50179


# 1416ebf1 07-Apr-2008 Duncan Sands <baldrick@free.fr>

The "stacksave is not nounwind problem" no longer
needs to be fixed here - a previous commit made sure
that intrinsics always get the right attributes.
So remove no-longer needed code, and while ther

The "stacksave is not nounwind problem" no longer
needs to be fixed here - a previous commit made sure
that intrinsics always get the right attributes.
So remove no-longer needed code, and while there use
Intrinsic::getDeclaration rather than getOrInsertFunction.

llvm-svn: 49337

show more ...


# 87e484f0 07-Apr-2008 Dale Johannesen <dalej@apple.com>

Mark calls to llvm.stacksave, llvm.stackrestore as
nounwind. When such calls are inlined into something
else that is invoked, they were getting changed to invokes,
which is badness.

llvm-svn: 49299


# e9ecc68d 06-Apr-2008 Gabor Greif <ggreif@gmail.com>

API changes for class Use size reduction, wave 1.
Specifically, introduction of XXX::Create methods
for Users that have a potentially variable number of
Uses.

llvm-svn: 49277


# 64d0f070 10-Mar-2008 Devang Patel <dpatel@apple.com>

Restore optimization that merges blocks when inline function
has single return value.

llvm-svn: 48162


# 72ea2dc9 10-Mar-2008 Devang Patel <dpatel@apple.com>

Simplify

llvm-svn: 48161


# 5ce9b521 09-Mar-2008 Nick Lewycky <nicholas@mxc.ca>

Update the inliner and simplifycfg to handle unwind_to.

llvm-svn: 48086


# 780b3ca6 07-Mar-2008 Devang Patel <dpatel@apple.com>

Update inliner to handle functions that return multiple values.

llvm-svn: 48020


# 4566d885 04-Mar-2008 Devang Patel <dpatel@apple.com>

Use while loop.

llvm-svn: 47909


# 941ab37e 04-Mar-2008 Devang Patel <dpatel@apple.com>

Use cast instead of dyn_cast.
Update test to use multiple return value directly, instead of relying on -sretpromotion.

llvm-svn: 47907


# 841322b3 04-Mar-2008 Devang Patel <dpatel@apple.com>

Handle multiple return values.

llvm-svn: 47904


Revision tags: llvmorg-2.2.0
# 053c9871 27-Jan-2008 Duncan Sands <baldrick@free.fr>

Revert r46393: readonly/readnone functions are no
longer allowed to write through byval arguments.

llvm-svn: 46416


# c4dc3dc3 26-Jan-2008 Duncan Sands <baldrick@free.fr>

Create an explicit copy for byval parameters even
when inlining a readonly function.

llvm-svn: 46393


# f52faf9a 25-Jan-2008 Duncan Sands <baldrick@free.fr>

Do this more neatly.

llvm-svn: 46369


# 4f6c81ac 12-Jan-2008 Chris Lattner <sabre@nondot.org>

we don't have to make an explicit copy of a byval argument when
inlining a function if we know that the function does not write
to *any* memory. This implements test/Transforms/Inline/byval2.ll

ll

we don't have to make an explicit copy of a byval argument when
inlining a function if we know that the function does not write
to *any* memory. This implements test/Transforms/Inline/byval2.ll

llvm-svn: 45912

show more ...


# 908117bf 11-Jan-2008 Chris Lattner <sabre@nondot.org>

When inlining a functino with a byval argument, make an explicit
copy of it in case the callee modifies the struct.

llvm-svn: 45853


# f3ebc3f3 29-Dec-2007 Chris Lattner <sabre@nondot.org>

Remove attribution from file headers, per discussion on llvmdev.

llvm-svn: 45418


# b969c598 25-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com>

GC poses hazards to the inliner. Consider:

define void @f() {
...
call i32 @g()
...
}

define void @g() {
...
}

The hazards are:

-

GC poses hazards to the inliner. Consider:

define void @f() {
...
call i32 @g()
...
}

define void @g() {
...
}

The hazards are:

- @f and @g have GC, but they differ GC. Inlining is invalid. This
may never occur.
- @f has no GC, but @g does. g's GC must be propagated to @f.

The other scenarios are safe:

- @f and @g have the same GC.
- @f and @g have no GC.
- @g has no GC.

This patch adds inliner checks for the former two scenarios.

llvm-svn: 45351

show more ...


# aa31b925 19-Dec-2007 Duncan Sands <baldrick@free.fr>

When inlining through an 'nounwind' call, mark inlined
calls 'nounwind'. It is important for correct C++
exception handling that nounwind markings do not get
lost, so this transformation is actually

When inlining through an 'nounwind' call, mark inlined
calls 'nounwind'. It is important for correct C++
exception handling that nounwind markings do not get
lost, so this transformation is actually needed for
correctness.

llvm-svn: 45218

show more ...


# 3353ed09 18-Dec-2007 Duncan Sands <baldrick@free.fr>

Rename isNoReturn to doesNotReturn, and isNoUnwind to
doesNotThrow.

llvm-svn: 45160


# b5a79d0e 17-Dec-2007 Duncan Sands <baldrick@free.fr>

Make invokes of inline asm legal. Teach codegen
how to lower them (with no attempt made to be
efficient, since they should only occur for
unoptimized code).

llvm-svn: 45108


# edf07887 17-Dec-2007 Christopher Lamb <christopher.lamb@gmail.com>

Change the PointerType api for creating pointer types. The old functionality of PointerType::get() has become PointerType::getUnqual(), which returns a pointer in the generic address space. The new p

Change the PointerType api for creating pointer types. The old functionality of PointerType::get() has become PointerType::getUnqual(), which returns a pointer in the generic address space. The new prototype of PointerType::get() requires both a type and an address space.

llvm-svn: 45082

show more ...


1...<<212223242526