1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 20:23:11 +01:00
llvm-mirror/include/llvm
Chandler Carruth 43148d2e6e Convert the TargetTransformInfo from an immutable pass with dynamic
interfaces which could be extracted from it, and must be provided on
construction, to a chained analysis group.

The end goal here is that TTI works much like AA -- there is a baseline
"no-op" and target independent pass which is in the group, and each
target can expose a target-specific pass in the group. These passes will
naturally chain allowing each target-specific pass to delegate to the
generic pass as needed.

In particular, this will allow a much simpler interface for passes that
would like to use TTI -- they can have a hard dependency on TTI and it
will just be satisfied by the stub implementation when that is all that
is available.

This patch is a WIP however. In particular, the "stub" pass is actually
the one and only pass, and everything there is implemented by delegating
to the target-provided interfaces. As a consequence the tools still have
to explicitly construct the pass. Switching targets to provide custom
passes and sinking the stub behavior into the NoTTI pass is the next
step.

llvm-svn: 171621
2013-01-05 11:43:11 +00:00
..
ADT Whitespace. 2013-01-05 05:16:53 +00:00
Analysis Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
Assembly Prune some includes and forward declarations. 2012-03-26 06:58:25 +00:00
Bitcode Have the bitcode reader/writer just use FPMathOperator's fast math enum directly 2012-12-09 20:23:16 +00:00
CodeGen Don't call destructors on MachineInstr and MachineOperand. 2013-01-05 05:05:51 +00:00
Config [CMake] Move libxml2 stuff from clang to llvm/cmake. 2012-12-14 18:30:20 +00:00
DebugInfo Sort the #include lines for the include/... tree with the script. 2012-12-03 17:02:12 +00:00
ExecutionEngine JITEventListener.h: Use llvm-config.h instead of config.h. 2012-12-13 15:03:38 +00:00
IR Switch the empty and tombstone key enumerators to not have explicit 2013-01-05 08:47:26 +00:00
MC Add section information for the DWARF5 split debug proposal 2013-01-04 17:59:22 +00:00
Object Make this an integer so we have enumeral types in the conditional 2013-01-05 00:32:04 +00:00
Option Resort the #include lines in include/... and lib/... with the 2013-01-02 10:22:59 +00:00
Support Add an ArrayRecycler class. 2013-01-05 00:57:11 +00:00
TableGen Sort the #include lines for the include/... tree with the script. 2012-12-03 17:02:12 +00:00
Target Refactor the ScalarTargetTransformInfo API for querying about the 2013-01-05 03:36:17 +00:00
Transforms Sink the AddressingModeMatcher helper class into an anonymous namespace 2013-01-05 02:09:22 +00:00
AddressingMode.h Use DataTypes.h 2012-10-08 23:14:28 +00:00
AutoUpgrade.h remove autoupgrade support for really old-style debug info intrinsics. 2011-11-27 06:18:33 +00:00
CallGraphSCCPass.h moves doInitialization and doFinalization to the Pass class and removes some unreachable code in MachineModuleInfo 2012-12-03 21:56:57 +00:00
CMakeLists.txt Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
DebugInfo.h Improve debug info generated with enabled AddressSanitizer. 2012-12-12 14:31:53 +00:00
DefaultPasses.h Fix a couple include directives that used angle brackets for llvm files. 2012-09-15 18:41:37 +00:00
DIBuilder.h Use the 'count' attribute to calculate the upper bound of an array. 2012-12-04 21:34:03 +00:00
GVMaterializer.h
InitializePasses.h Convert the TargetTransformInfo from an immutable pass with dynamic 2013-01-05 11:43:11 +00:00
InstVisitor.h Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
LinkAllPasses.h Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
LinkAllVMCore.h Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
Linker.h Prune some includes and forward declarations. 2012-03-26 06:58:25 +00:00
Pass.h moves doInitialization and doFinalization to the Pass class and removes some unreachable code in MachineModuleInfo 2012-12-03 21:56:57 +00:00
PassAnalysisSupport.h Sort the #include lines for the include/... tree with the script. 2012-12-03 17:02:12 +00:00
PassManager.h One more step towards making doInitialization and doFinalization useful for 2012-11-29 17:47:05 +00:00
PassManagers.h Sort the #include lines for the include/... tree with the script. 2012-12-03 17:02:12 +00:00
PassRegistry.h
PassSupport.h Fix comment typo. 2012-12-17 11:43:15 +00:00
TargetTransformInfo.h Convert the TargetTransformInfo from an immutable pass with dynamic 2013-01-05 11:43:11 +00:00
TypeFinder.h Move the "findUsedStructTypes" functionality outside of the Module class. 2012-08-03 00:30:35 +00:00