#
621699de |
| 31-Jan-2012 |
Bill Wendling <isanbard@gmail.com> |
Remove some unused, old-EH methods.
llvm-svn: 149316
|
#
518a205d |
| 31-Jan-2012 |
Bill Wendling <isanbard@gmail.com> |
Get rid of references to dead intrinsics.
The eh.selector and eh.resume intrinsics aren't used anymore. Get rid of some calls to them.
llvm-svn: 149314
|
#
ce0c2292 |
| 31-Jan-2012 |
Bill Wendling <isanbard@gmail.com> |
Formatting cleanups. No functionality change.
llvm-svn: 149312
|
#
f3cae514 |
| 31-Jan-2012 |
Bill Wendling <isanbard@gmail.com> |
Remove no-longer-useful dyn_casts and pals.
llvm-svn: 149307
|
#
4d2b871c |
| 02-Dec-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Fix quadratic behavior in InlineFunction by fetching the personality function of the callee once and not for every invoke in the caller.
The callee is usually smaller than the caller, too. This redu
Fix quadratic behavior in InlineFunction by fetching the personality function of the callee once and not for every invoke in the caller.
The callee is usually smaller than the caller, too. This reduces the compile time of ARMDisassembler.cpp by 32% (Release build). It still takes ages to compile though.
llvm-svn: 145690
show more ...
|
#
612d70b1 |
| 20-Nov-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Refactor code to use new attribute getters on CallSite for NoCapture and ByVal. Suggested in code review by Eli.
That code in InstCombine looks kinda suspicious.
llvm-svn: 145013
|
Revision tags: llvmorg-3.0.0, llvmorg-3.0.0-rc4, llvmorg-3.0.0-rc3, llvmorg-3.0.0-rc2, llvmorg-3.0.0-rc1 |
|
#
55421f0c |
| 14-Aug-2011 |
Bill Wendling <isanbard@gmail.com> |
Add inlining for the new EH scheme.
This builds off of the current scheme, but instead of llvm.eh.exception and llvm.eh.selector, it uses the landingpad instruction. And instead of llvm.eh.resume, i
Add inlining for the new EH scheme.
This builds off of the current scheme, but instead of llvm.eh.exception and llvm.eh.selector, it uses the landingpad instruction. And instead of llvm.eh.resume, it uses the resume instruction.
Because of the invariants in the landing pad instruction, a lot of code that's currently needed to find the appropriate intrinsic calls for an invoke instruction won't be needed once we go to the new EH scheme. The "FIXME"s tell us what to remove after we switch.
llvm-svn: 137576
show more ...
|
#
bb23a4a9 |
| 10-Aug-2011 |
Devang Patel <dpatel@apple.com> |
Distinguish between two copies of one inlined variable. Take 2.
llvm-svn: 137253
|
#
81b7e11c |
| 05-Aug-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Temporarily revert r135528 which distinguishes between two copies of one inlined variable, based on the discussion in PR10542.
This explodes the runtime of several passes down the pipeline due to a
Temporarily revert r135528 which distinguishes between two copies of one inlined variable, based on the discussion in PR10542.
This explodes the runtime of several passes down the pipeline due to a large number of "copies" remaining live across a large function. This only shows up with both debug and opt, but when it does it creates a many-minute compile when self-hosting LLVM+Clang. There are several other cases that show these types of regressions.
All of this is tracked in PR10542, and progress is being made on fixing the issue. Once its addressed, the re-instated, but until then this restores the performance for self-hosting and other opt+debug builds.
Devang, let me know if this causes any trouble, or impedes fixing it in any way, and thanks for working on this!
llvm-svn: 136953
show more ...
|
#
ad088e67 |
| 30-Jul-2011 |
Bill Wendling <isanbard@gmail.com> |
Revert r136253, r136263, r136269, r136313, r136325, r136326, r136329, r136338, r136339, r136341, r136369, r136387, r136392, r136396, r136429, r136430, r136444, r136445, r136446, r136253 pending revie
Revert r136253, r136263, r136269, r136313, r136325, r136326, r136329, r136338, r136339, r136341, r136369, r136387, r136392, r136396, r136429, r136430, r136444, r136445, r136446, r136253 pending review.
llvm-svn: 136556
show more ...
|
#
9e5f0f8f |
| 28-Jul-2011 |
Bill Wendling <isanbard@gmail.com> |
Some minor cleanups. No functionalitical change.
llvm-svn: 136341
|
#
fa28440f |
| 28-Jul-2011 |
Bill Wendling <isanbard@gmail.com> |
Leverage some of the code that John wrote to manage the landing pads.
The new EH is more simple in many respects. Mainly, we don't have to worry about the "llvm.eh.exception" and "llvm.eh.selector"
Leverage some of the code that John wrote to manage the landing pads.
The new EH is more simple in many respects. Mainly, we don't have to worry about the "llvm.eh.exception" and "llvm.eh.selector" calls being in weird places.
llvm-svn: 136339
show more ...
|
#
51affc82 |
| 28-Jul-2011 |
Bill Wendling <isanbard@gmail.com> |
Automatically merge the landingpad clauses when we come across a callee's landingpad.
llvm-svn: 136329
|
#
246eb96c |
| 28-Jul-2011 |
Bill Wendling <isanbard@gmail.com> |
Initial stab at getting inlining working with the EH rewrite.
This takes the new 'resume' instruction and turns it into a direct jump to the caller's landing pad code. The caller's landingpad instru
Initial stab at getting inlining working with the EH rewrite.
This takes the new 'resume' instruction and turns it into a direct jump to the caller's landing pad code. The caller's landingpad instruction is merged with the landingpad instructions of the callee. This is a bit rough and makes some assumptions in how the code works. But it passes a simple test.
llvm-svn: 136313
show more ...
|
#
9c5b7ff8 |
| 27-Jul-2011 |
Bill Wendling <isanbard@gmail.com> |
Refuse to inline two functions which use different personality functions.
llvm-svn: 136269
|
#
a59b24b0 |
| 19-Jul-2011 |
Devang Patel <dpatel@apple.com> |
Distinguish between two copies of one inlined variable.
llvm-svn: 135528
|
#
229907cd |
| 18-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
land David Blaikie's patch to de-constify Type, with a few tweaks.
llvm-svn: 135375
|
#
5bd375a6 |
| 15-Jul-2011 |
Jay Foad <jay.foad@gmail.com> |
Convert CallInst and InvokeInst APIs to use ArrayRef.
llvm-svn: 135265
|
#
e6e1933f |
| 14-Jul-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Change Intrinsic::getDeclaration and friends to take an ArrayRef.
llvm-svn: 135154
|
#
b804a2b7 |
| 12-Jul-2011 |
Jay Foad <jay.foad@gmail.com> |
Second attempt at de-constifying LLVM Types in FunctionType::get(), StructType::get() and TargetData::getIntPtrType().
llvm-svn: 134982
|
#
a78cd228 |
| 12-Jul-2011 |
Bill Wendling <isanbard@gmail.com> |
Revert r134893 and r134888 (and related patches in other trees). It was causing an assert on Darwin llvm-gcc builds.
Assertion failed: (castIsValid(op, S, Ty) && "Invalid cast!"), function Create, f
Revert r134893 and r134888 (and related patches in other trees). It was causing an assert on Darwin llvm-gcc builds.
Assertion failed: (castIsValid(op, S, Ty) && "Invalid cast!"), function Create, file /Users/buildslave/zorg/buildbot/smooshlab/slave-0.8/build.llvm-gcc-i386-darwin9-RA/llvm.src/lib/VMCore/Instructions.cpp, li\ ne 2067. etc.
http://smooshlab.apple.com:8013/builders/llvm-gcc-i386-darwin9-RA/builds/2354
--- Reverse-merging r134893 into '.': U include/llvm/Target/TargetData.h U include/llvm/DerivedTypes.h U tools/bugpoint/ExtractFunction.cpp U unittests/Support/TypeBuilderTest.cpp U lib/Target/ARM/ARMGlobalMerge.cpp U lib/Target/TargetData.cpp U lib/VMCore/Constants.cpp U lib/VMCore/Type.cpp U lib/VMCore/Core.cpp U lib/Transforms/Utils/CodeExtractor.cpp U lib/Transforms/Instrumentation/ProfilingUtils.cpp U lib/Transforms/IPO/DeadArgumentElimination.cpp U lib/CodeGen/SjLjEHPrepare.cpp --- Reverse-merging r134888 into '.': G include/llvm/DerivedTypes.h U include/llvm/Support/TypeBuilder.h U include/llvm/Intrinsics.h U unittests/Analysis/ScalarEvolutionTest.cpp U unittests/ExecutionEngine/JIT/JITTest.cpp U unittests/ExecutionEngine/JIT/JITMemoryManagerTest.cpp U unittests/VMCore/PassManagerTest.cpp G unittests/Support/TypeBuilderTest.cpp U lib/Target/MBlaze/MBlazeIntrinsicInfo.cpp U lib/Target/Blackfin/BlackfinIntrinsicInfo.cpp U lib/VMCore/IRBuilder.cpp G lib/VMCore/Type.cpp U lib/VMCore/Function.cpp G lib/VMCore/Core.cpp U lib/VMCore/Module.cpp U lib/AsmParser/LLParser.cpp U lib/Transforms/Utils/CloneFunction.cpp G lib/Transforms/Utils/CodeExtractor.cpp U lib/Transforms/Utils/InlineFunction.cpp U lib/Transforms/Instrumentation/GCOVProfiling.cpp U lib/Transforms/Scalar/ObjCARC.cpp U lib/Transforms/Scalar/SimplifyLibCalls.cpp U lib/Transforms/Scalar/MemCpyOptimizer.cpp G lib/Transforms/IPO/DeadArgumentElimination.cpp U lib/Transforms/IPO/ArgumentPromotion.cpp U lib/Transforms/InstCombine/InstCombineCompares.cpp U lib/Transforms/InstCombine/InstCombineAndOrXor.cpp U lib/Transforms/InstCombine/InstCombineCalls.cpp U lib/CodeGen/DwarfEHPrepare.cpp U lib/CodeGen/IntrinsicLowering.cpp U lib/Bitcode/Reader/BitcodeReader.cpp
llvm-svn: 134949
show more ...
|
#
56cc1530 |
| 11-Jul-2011 |
Jay Foad <jay.foad@gmail.com> |
De-constify Types in FunctionType::get().
llvm-svn: 134888
|
#
35797406 |
| 08-Jul-2011 |
Devang Patel <dpatel@apple.com> |
Refactor. It is inliner's responsibility to update line number information.
llvm-svn: 134708
|
#
61ea0e46 |
| 23-Jun-2011 |
Jay Foad <jay.foad@gmail.com> |
Reinstate r133513 (reverted in r133700) with an additional fix for a -Wshorten-64-to-32 warning in Instructions.h.
llvm-svn: 133708
|
#
96513120 |
| 23-Jun-2011 |
Eric Christopher <echristo@apple.com> |
Revert r133513:
"Reinstate r133435 and r133449 (reverted in r133499) now that the clang self-hosted build failure has been fixed (r133512)."
Due to some additional warnings.
llvm-svn: 133700
|