llvm-6502/include/llvm
Chandler Carruth 212226e114 [PM] Add support for using SFINAE to reflect on an analysis's result
type and detect whether or not it provides an 'invalidate' member the
analysis manager should use.

This lets the overwhelming common case of *not* caring about custom
behavior when an analysis is invalidated be the the obvious default
behavior with no code written by the author of an analysis. Only when
they write code specifically to handle invalidation does it get used.

Both cases are actually covered by tests here. The test analysis uses
the default behavior, and the proxy module analysis actually has custom
behavior on invalidation that is firing correctly. (In fact, this is the
analysis which was the primary motivation for having custom invalidation
behavior in the first place.)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195332 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-21 09:10:21 +00:00
..
ADT Make the moved-from SmallPtrSet be a valid, empty, small-state object. 2013-11-20 18:29:56 +00:00
Analysis ScalarEvolution: Warn if the result of setFlags/clearFlags is unused. 2013-11-16 16:25:47 +00:00
Assembly
Bitcode Add addrspacecast instruction. 2013-11-15 01:34:59 +00:00
CodeGen Dereference the node iterator when dumping the PBQP graph structure in DOT 2013-11-21 06:30:14 +00:00
Config Update to reflect the next release. 2013-11-20 10:10:50 +00:00
DebugInfo DWARF parser: Use ArrayRef to represent form sizes and simplify DWARFDIE::extractFast() interface. No functionality change. 2013-10-28 23:41:49 +00:00
ExecutionEngine [weak vtables] Remove a bunch of weak vtables 2013-11-19 00:57:56 +00:00
IR [PM] Add support for using SFINAE to reflect on an analysis's result 2013-11-21 09:10:21 +00:00
IRReader
LTO Protect user-supplied runtime library functions in LTO 2013-11-12 21:44:01 +00:00
MC Teach ISel not to optimize 'optnone' functions. 2013-11-21 06:33:32 +00:00
Object Readobj: If NumbersOfSections is 0xffff, it's an COFF import library. 2013-11-15 20:23:25 +00:00
Option
Support YAML I/O add support for validate() 2013-11-21 00:28:07 +00:00
TableGen Speling fixes. 2013-10-22 15:18:03 +00:00
Target Teach ISel not to optimize 'optnone' functions. 2013-11-21 06:33:32 +00:00
Transforms Add support for software expansion of 64-bit integer division instructions. 2013-11-19 06:54:19 +00:00
AutoUpgrade.h Fix spacing, forward declare order. 2013-11-18 02:51:33 +00:00
CMakeLists.txt
DebugInfo.h DebugInfo: Simplify a few more explicit constructions, underconstrained types, and make DIType(MDNode*) explicit like all the other DI* node ctors. 2013-11-18 23:33:32 +00:00
DIBuilder.h DebugInfo: Simplify a few more explicit constructions, underconstrained types, and make DIType(MDNode*) explicit like all the other DI* node ctors. 2013-11-18 23:33:32 +00:00
GVMaterializer.h Use error_code in GVMaterializer. 2013-11-05 19:36:34 +00:00
InitializePasses.h Add a loop rerolling pass 2013-11-16 23:59:05 +00:00
InstVisitor.h Add addrspacecast instruction. 2013-11-15 01:34:59 +00:00
LinkAllIR.h
LinkAllPasses.h Add a loop rerolling pass 2013-11-16 23:59:05 +00:00
Linker.h Add a 'deleteModule' method to the Linker class. 2013-10-16 08:59:57 +00:00
Pass.h
PassAnalysisSupport.h
PassManager.h Move the old pass manager infrastructure into a legacy namespace and 2013-11-09 12:26:54 +00:00
PassRegistry.h
PassSupport.h