Chris Lattner
ed45ad33b7
Make the LLVM headers "-ansi -pedantic -Wno-long-long" clean.
...
Patch by Martin Partel!
llvm-svn: 26313
2006-02-22 16:23:43 +00:00
Chris Lattner
5c0f92e308
Remove a never-working pass
...
llvm-svn: 25348
2006-01-16 01:05:24 +00:00
Andrew Lenharth
cad1d52b64
Added documented rsprofiler interface. Also remove new profiler passes, the
...
old ones have been updated to implement the interface.
llvm-svn: 24499
2005-11-28 18:00:38 +00:00
Andrew Lenharth
311ec68cf4
Random sampling (aka Arnold and Ryder) profiling. This is still preliminary, but it works on spec on x86 and alpha. The idea is to allow profiling passes to remember what profiling they inserted, then a random sampling framework is inserted which consists of duplicated basic blocks (without profiling), such that at each backedge in the program and entry into every function, the framework chooses whether to use the instrumented code or the instrumentation free code. The goal of such a framework is to make it reasonably cheap to do random sampling of very expensive profiling products (such as load-value profiling).
...
The code is organized into 3 parts (2 passes)
1) a linked set of profiling passes, which implement an analysis group (linked, like alias analysis are). These insert profiling into the program, and remember what they inserted, so that at a later time they can be queried about any instruction.
2) a pass that handles inserting the random sampling framework. This also has options to control how random samples are choosen. Currently implemented are Global counters, register allocated global counters, and read cycle counter (see? there was a reason for it).
The profiling passes are almost identical to the existing ones (block, function, and null profiling is supported right now), and they are valid passes without the sampling framework (hence the existing passes can be unified with the new ones, not done yet).
Some things are a bit ugly still, but that should be fixed up soon enough.
Other todo? making the counter values not "magic 2^16 -1" values, but dynamically choosable.
llvm-svn: 24493
2005-11-28 00:58:09 +00:00
Andrew Lenharth
ddcbd92b23
needs to go here to apparently.
...
llvm-svn: 24268
2005-11-10 02:07:45 +00:00
Chris Lattner
dae0aafea8
Remove the LowerConstantExpressionsPass pass
...
llvm-svn: 24089
2005-10-29 05:32:20 +00:00
Chris Lattner
bd6a973ae0
Don't link these three passes in anymore
...
llvm-svn: 23941
2005-10-24 02:30:25 +00:00
Chris Lattner
2f752062c1
Don't invade the system namespace
...
llvm-svn: 23917
2005-10-24 00:16:03 +00:00
Chris Lattner
31ac6df518
There is no need for this to be VC++ only
...
llvm-svn: 23915
2005-10-24 00:08:51 +00:00
Chris Lattner
dac26c2440
Make this work with the internalize change
...
llvm-svn: 23812
2005-10-19 01:41:47 +00:00
Jeff Cohen
b555ae8f95
Add SimplyLibCalls.cpp to VC++ build
...
llvm-svn: 21554
2005-04-26 02:57:49 +00:00
Misha Brukman
58c97e67f3
Remove trailing whitespace
...
llvm-svn: 21412
2005-04-21 20:59:05 +00:00
Chris Lattner
8456833fa8
new pass
...
llvm-svn: 21307
2005-04-15 21:13:16 +00:00
Jeff Cohen
1be6e1cb99
Fix VC++ build breakage
...
llvm-svn: 20888
2005-03-28 02:52:28 +00:00
Jeff Cohen
29092b4f26
Get VC++ compiling again
...
llvm-svn: 19869
2005-01-28 07:29:32 +00:00
Jeff Cohen
a7f1ae5dc0
Apply feed back from Chris:
...
1. Rename createLoaderPass to CreateProfileLoaderPass
2. Opt shouldn't use the pass registered in CodeGen.
llvm-svn: 19431
2005-01-10 03:56:27 +00:00
Jeff Cohen
f692cd303d
Add last four createXxxPass functions
...
llvm-svn: 19424
2005-01-09 20:42:52 +00:00
Jeff Cohen
6c0db8d863
Add even more missing createXxxPass functions.
...
llvm-svn: 19402
2005-01-08 22:01:16 +00:00
Jeff Cohen
69ed91d1ca
Add a few more passes to LinkAllPasses.h
...
llvm-svn: 19371
2005-01-08 18:15:23 +00:00
Jeff Cohen
ce541ade79
Add more missing createXxxPass functions.
...
llvm-svn: 19370
2005-01-08 17:21:40 +00:00
Jeff Cohen
d8ac84c3f3
But not the identation of THAT line
...
llvm-svn: 19328
2005-01-07 07:46:40 +00:00
Jeff Cohen
8a926637e2
Correct indentation levels
...
llvm-svn: 19322
2005-01-07 07:44:02 +00:00
Jeff Cohen
c07c54f5b4
Add missing createXxxPass functions
...
llvm-svn: 19319
2005-01-07 06:57:28 +00:00
Misha Brukman
8b60d3e9df
Fix spelling.
...
llvm-svn: 19317
2005-01-07 06:45:07 +00:00
Jeff Cohen
83039834d7
Update list of passes
...
llvm-svn: 19316
2005-01-07 06:12:41 +00:00
Jeff Cohen
9bf3df5cc6
Get the #ifdef right on LinkAllPasses.h.
...
llvm-svn: 19310
2005-01-06 07:01:08 +00:00
Jeff Cohen
c205cf1049
Fix minor mistakes
...
llvm-svn: 19309
2005-01-06 06:29:42 +00:00
Jeff Cohen
b5bd66d55c
Get rid of those pesky tabs...
...
llvm-svn: 19308
2005-01-06 06:06:35 +00:00
Jeff Cohen
dfe5e3b330
Add project opt to Visual Studio.
...
llvm-svn: 19307
2005-01-06 06:02:53 +00:00