llvm-mirror/lib
Jakob Stoklund Olesen 0d3c0a9aea Start scaffolding for a MachineTraceMetrics analysis pass.
This is still a work in progress.

Out-of-order CPUs usually execute instructions from multiple basic
blocks simultaneously, so it is necessary to look at longer traces when
estimating the performance effects of code transformations.

The MachineTraceMetrics analysis will pick a typical trace through a
given basic block and provide performance metrics for the trace. Metrics
will include:

- Instruction count through the trace.
- Issue count per functional unit.
- Critical path length, and per-instruction 'slack'.

These metrics can be used to determine the performance limiting factor
when executing the trace, and how it will be affected by a code
transformation.

Initially, this will be used by the early if-conversion pass.

llvm-svn: 160796
2012-07-26 18:38:11 +00:00
..
Analysis revert r160742: it's breaking CMake build 2012-07-25 18:49:28 +00:00
Archive Include cstdio in a few place that depended on getting it transitively through StringExtras.h 2012-03-23 11:35:30 +00:00
AsmParser Extend the IL for selecting TLS models (PR9788) 2012-06-23 11:37:03 +00:00
Bitcode Remove tabs. 2012-07-19 00:15:11 +00:00
CodeGen Start scaffolding for a MachineTraceMetrics analysis pass. 2012-07-26 18:38:11 +00:00
DebugInfo DebugInfo library: add support for fetching absolute paths to source files 2012-07-19 07:03:58 +00:00
ExecutionEngine You cannot call removeModule on a JIT with no modules. Patch by Verena 2012-07-25 19:06:29 +00:00
Linker Extend the IL for selecting TLS models (PR9788) 2012-06-23 11:37:03 +00:00
MC Fix a typo (the the => the) 2012-07-23 08:51:15 +00:00
Object Reverting r 160419. 2012-07-19 21:43:55 +00:00
Support Don't add null characters to the end of the APFloat string buffer. 2012-07-25 18:04:24 +00:00
TableGen TableGen: Location information for diagnostic. 2012-07-12 00:53:31 +00:00
Target Make l/q suffixes on AVX forms of scalar convert instructions consistent with their non-AVX forms. 2012-07-26 07:48:28 +00:00
Transforms do null checks for a few more Emit*() functions. 2012-07-26 17:10:46 +00:00
VMCore Fix a dangling StringRef bug in the auto upgrader. In one case, we reset 2012-07-20 21:09:18 +00:00
CMakeLists.txt Move TableGen's parser and entry point into a library 2011-10-01 16:41:13 +00:00
LLVMBuild.txt LLVMBuild: Introduce a common section which currently has a list of the 2011-12-12 22:45:54 +00:00
Makefile Remove more of llvmc and dependencies. 2011-09-20 00:34:27 +00:00