Chris Lattner
bb9ae1512e
Strip off CPR's manually, because if we don't, the inliner doesn't delete dead
...
functions. GRR
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9641 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-31 21:05:58 +00:00
Chris Lattner
07a38e7b77
Make the call graph more precise despite the hated constantpointerrefs.
...
Do you detect the animosity I feel towards CPRs yet?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9640 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-31 21:05:12 +00:00
Chris Lattner
bc539434c5
Did I mention that I _HATE_ CPRs?
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9639 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-31 18:38:06 +00:00
Chris Lattner
b10bed8a63
Constant pointer refs are causing these to fail unnecessarily, which is causing
...
a lot of code to be pessimized. I hate CPRs. :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9635 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-31 17:51:16 +00:00
Alkis Evlogimenos
088eb45cf4
Use already existing classes for post order iterator.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9629 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-31 03:02:34 +00:00
Chris Lattner
95e5a2cc3f
Make use of the new AssemblyAnnotationWriter interface
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9619 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-30 23:41:03 +00:00
Brian Gaeke
3ceac85296
Include llvm/CodeGen/MachineCodeForInstruction.h. Use it to start
...
implementing verifySavedState().
In saveState(), use the new AllocInfo::AllocStateTy enum, and increment
Insn each time through the loop.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9617 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-30 21:21:33 +00:00
Brian Gaeke
82c5eb7bc8
Make AllocState an enum.
...
Move the stringifying method for that enum into class AllocInfo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9616 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-30 21:21:22 +00:00
Alkis Evlogimenos
74fa84fcef
Output types in reverse postorder. This will allow the ByteCode/Reader
...
to create the minimum number of opaque types for each type with a
cycle in its type graph.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9615 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-30 21:04:44 +00:00
Alkis Evlogimenos
60048b8a66
Put DEBUG_OUTPUT at the top along with TRACE_LEVEL. Also fix the code
...
inside DEBUG_OUTPUT so that it compiles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9614 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-30 18:33:58 +00:00
Chris Lattner
14fffaf6c1
When someone includes CallGraph.h, make sure that they link in CallGraph.cpp
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9611 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-30 05:17:30 +00:00
Chris Lattner
8ea8f36a7f
Make sure that PHI node operands are first class types
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9607 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-30 01:38:18 +00:00
Chris Lattner
bb60904469
Fix bug: 2003-10-29-CallSiteResolve.ll & PR70
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9600 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-30 00:46:41 +00:00
Chris Lattner
88c1738064
Print the names of more opaque types
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9598 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-30 00:22:33 +00:00
Chris Lattner
daf2a492a7
Make sure to print opaque types names if they are available.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9597 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-30 00:12:51 +00:00
Chris Lattner
942457564d
Refactor code, initial implementation of -insert-block-profiling pass
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9593 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-29 21:24:22 +00:00
Brian Gaeke
bc839b5827
Explicitly cast type, so we aren't passing output_vbr a size_t.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9590 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-29 20:09:01 +00:00
Brian Gaeke
3386e45440
Tweak sed commands so that they filter out more # stuff and also
...
work on Mac OS X. Also turn ${...} into $(...); we do not speak BSD
Make.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9589 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-29 20:07:35 +00:00
Chris Lattner
546fc40d69
Fix PR66 & ScalarRepl/2003-10-29-ArrayProblem.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9585 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-29 17:55:44 +00:00
Chris Lattner
6ace4daa57
Fix bug: ConstantMerge/2003-10-28-MergeExternalConstants.ll & PR64
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9579 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-29 06:01:26 +00:00
Brian Gaeke
11911abf5c
In VM::create(), comment out almost the whole function if NO_JITS_ENABLED,
...
because the Arch variable will likely be undefined.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9576 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-29 04:24:09 +00:00
Alkis Evlogimenos
5d1bdcd6f6
Add more debugging info to help tracing the SlotCalculator.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9575 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-29 03:12:12 +00:00
Chris Lattner
fe2143d87d
Check in statistifying patch for Bill
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9572 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-28 23:14:59 +00:00
Chris Lattner
c2bcde4da0
Fix PR62, and llvm/test/Regression/CBackend/2003-10-28-CastToPtrToStruct.ll
...
ConstantExpr's can use unrelated types, make sure to scan them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9569 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-28 23:09:45 +00:00
Chris Lattner
c0204e0b73
Pass in argc & argv
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9563 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-28 22:42:24 +00:00
Chris Lattner
baa2007fae
Initial checkin of profiling instrumentation pass. So far, despite the
...
file name, we only support function profiling. This will be fixed in the
near future.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9547 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-28 18:59:04 +00:00
Chris Lattner
7b6dd2950f
Eliminate using declarations
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9543 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-27 21:44:09 +00:00
Chris Lattner
2e8dfb8221
Propagating constants to arguments can make other arguments constant. For now
...
do something dumb, and inefficient, but more complete.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9542 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-27 21:09:00 +00:00
Chris Lattner
35956558e2
Fix test: Linker/2003-10-27-LinkOncePromote.ll
...
Fix PR58
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9530 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-27 16:39:39 +00:00
Chris Lattner
198f4507e2
Get the list of PHI node values before the basic block is split. Also, add
...
PHI node entries for unwind instructions just like for call instructions which
became invokes! This fixes PR57, tested by
Inline/2003-10-26-InlineInvokeExceptionDestPhi.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9526 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-27 05:33:09 +00:00
Chris Lattner
764486f5e4
Attempt to provide support for those without RTLD_DEFAULT.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9503 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-25 16:55:32 +00:00
Chris Lattner
b8afbe6139
Unbreak the build
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9502 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-25 16:18:03 +00:00
Brian Gaeke
8fc493430c
Publicize the type of FnAllocState.
...
Prototype option to save state in a global instead of as a Constant in
the Module. (Turned off, for now, with the on/off switch welded in the off
position. You get the idea.)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9500 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-24 21:21:58 +00:00
Chris Lattner
3e43026095
standardize command line option names
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9496 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-24 20:05:58 +00:00
Brian Gaeke
f143d3c284
ExecutionEngine::create no longer takes a TraceMode argument.
...
CurFrame, TraceMode, and the CachedWriter are history.
The ExecutionAnnotations (SlotNumber, InstNumber, and FunctionInfo) are history.
ExecutionContext now keeps Values for each stack frame in a std::map.
printValue() and print() are history.
executeInstruction() is now part of run().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9493 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-24 19:59:37 +00:00
Brian Gaeke
a824f42074
ExecutionEngine::create no longer takes a TraceMode argument.
...
CurFrame, TraceMode, and the CachedWriter are history.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9492 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-24 19:59:28 +00:00
Brian Gaeke
02438ca254
The ExecutionAnnotations (SlotNumber, InstNumber, and FunctionInfo) are history.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9490 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-24 19:59:18 +00:00
Brian Gaeke
03e43dcfe7
Reduce the number of #includes.
...
CurFrame, TraceMode, and the CachedWriter are history.
ArrayChecksEnabled and non-QuietMode are history.
The ExecutionAnnotations (SlotNumber, InstNumber, and FunctionInfo) are history.
ExecutionContext now keeps Values for each stack frame in a std::map.
Stop pre-initializing Values on the stack to 42.
Remove some dead variables, excess whitespace and commented-out code.
executeInstruction() is now part of run().
printValue() and print() are history.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9489 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-24 19:59:01 +00:00
Brian Gaeke
20a277e162
ExecutionEngine::create no longer takes a TraceMode argument.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9488 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-24 19:58:38 +00:00
Brian Gaeke
242978cdee
Destroy MachineFunction for any Function that we are about to
...
recompile and relink. This keeps it from failing an assertion when
it goes and tries to construct a new MachineFunction for that Function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9459 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-24 03:55:37 +00:00
Brian Gaeke
232db6e8d6
Move the implementations of ==, != on AllocInfos here, from UnpackTraceFunction.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9452 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-23 20:39:18 +00:00
Brian Gaeke
537132bf12
Move AllocInfo structure to a private AllocInfo.h header file.
...
Make FnAllocState contain vectors of AllocInfo, instead of LLVM Constants.
Give doFinalization a method comment, and let it do the work of converting
AllocInfos to LLVM Constants.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9451 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-23 20:32:55 +00:00
Brian Gaeke
b8dbbcee25
Make FnAllocState contain vectors of AllocInfo, instead of LLVM Constants.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9450 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-23 20:32:02 +00:00
Brian Gaeke
3d7125cd66
New file, containing AllocInfo structure.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9449 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-23 20:31:51 +00:00
Chris Lattner
472a7ef1cb
Fix bug: CBackend/2003-10-23-UnusedType.ll and hopefully 252.eon
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9441 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-23 19:30:30 +00:00
Chris Lattner
2e56dd82b3
We might as well strip off any CPRs before propagation
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9437 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-23 18:49:23 +00:00
Chris Lattner
4065ef99f9
Fail gracefully if we have a zero arg varargs function
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9436 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-23 18:39:22 +00:00
Misha Brukman
f54c437714
* Eliminate `using' directive
...
* Fix order of #includes
* Make code layout more consistent
* Eliminate extraneous whitespace and comment-lines
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9433 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-23 18:10:02 +00:00
Misha Brukman
396c8c34ed
* Fix order of #include files
...
* Doxygen-ify method comments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9432 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-23 18:06:27 +00:00
Misha Brukman
0d82a54bb9
* Order #includes as per style guide
...
* Doxygen-ify comments
* Make code layout more consistent
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9431 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-23 18:03:50 +00:00