1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 19:42:54 +02:00
llvm-mirror/include/llvm/IR
Chandler Carruth a25189ea0f [PM] Introduce CRTP mixin base classes to help define passes and
analyses in the new pass manager.

These just handle really basic stuff: turning a type name into a string
statically that is nice to print in logs, and getting a static unique ID
for each analysis.

Sadly, the format of passes in anonymous namespaces makes using their
names in tests really annoying so I've customized the names of the no-op
passes to keep tests sane to read.

This is the first of a few simplifying refactorings for the new pass
manager that should reduce boilerplate and confusion.

llvm-svn: 262004
2016-02-26 11:44:45 +00:00
..
Argument.h IR: Create SymbolTableList wrapper around iplist, NFC 2015-10-07 20:05:10 +00:00
AssemblyAnnotationWriter.h Prune trailing whitespaces. 2015-09-22 11:19:03 +00:00
Attributes.h AttributeSetImpl: Summarize existing function attributes in a bitset. 2016-01-29 22:25:19 +00:00
Attributes.td [Inliner] Merge the attributes of the caller and callee functions 2016-01-13 06:02:45 +00:00
AutoUpgrade.h
BasicBlock.h ADT: Avoid relying on UB in ilist_node::getNextNode() 2015-11-11 02:26:42 +00:00
CallingConv.h [AVR] Defnined calling conventions. NFC. 2016-01-20 09:30:01 +00:00
CallSite.h [IR] Add {is,set,setNot}Convergent() functions to CallSite, CallInstr, and InvokeInstr. 2016-02-17 17:46:47 +00:00
CFG.h
CMakeLists.txt Revert r253810. The builds should be fine now. 2015-11-22 16:13:51 +00:00
Comdat.h AsmWriter: Print the argument names in declarations while debugging 2015-09-27 22:38:50 +00:00
Constant.h Simplify handleOperandChangeImpl() removing last argument (NFC) 2016-02-10 22:47:15 +00:00
ConstantFolder.h
ConstantRange.h [ConstantRange] Rename a method and add more doc 2016-02-22 16:13:02 +00:00
Constants.h IR: Add ConstantData, for operand-less Constants 2016-02-21 02:39:49 +00:00
DataLayout.h [opaque pointer types] [NFC] DataLayout::getIndexedOffset: take source element type instead of pointer type and rename to getIndexedOffsetInType. 2016-01-22 03:08:27 +00:00
DebugInfo.h Avoid overly large SmallPtrSet/SmallSet 2016-01-30 01:24:31 +00:00
DebugInfoFlags.def
DebugInfoMetadata.h Macro debug info support in LLVM IR 2015-12-10 12:56:35 +00:00
DebugLoc.h
DerivedTypes.h don't repeat names in documentation comments; NFC 2016-02-25 15:55:28 +00:00
DiagnosticInfo.h DiagnosticInfoWithDebugLocBase: Appease Twine for now. 2016-02-03 00:09:22 +00:00
DiagnosticPrinter.h
DIBuilder.h [DIBuilder] Make createReferenceType take size and align 2015-11-16 07:57:32 +00:00
Dominators.h [PM] Introduce CRTP mixin base classes to help define passes and 2016-02-26 11:44:45 +00:00
Function.h Restore "[ThinLTO] Use MD5 hash in function index." with fix 2016-02-10 21:55:02 +00:00
FunctionInfo.h Restore "[ThinLTO] Use MD5 hash in function index." with fix 2016-02-10 21:55:02 +00:00
GetElementPtrTypeIterator.h [opaque pointer types] [NFC] gep_type_{begin,end} now take source element type and address space. 2016-01-22 01:33:43 +00:00
GlobalAlias.h IR: Create SymbolTableList wrapper around iplist, NFC 2015-10-07 20:05:10 +00:00
GlobalObject.h [opaque pointer types] Add an explicit value type to GlobalObject 2015-09-14 21:47:27 +00:00
GlobalValue.h Simplify handleOperandChangeImpl() removing last argument (NFC) 2016-02-10 22:47:15 +00:00
GlobalVariable.h Change hasUniqueInitializer() to call isStrongDefinitionForLinker() instead of !isWeakForLinker() 2015-12-09 16:17:07 +00:00
GVMaterializer.h Rename MDValue* to Metadata* (NFC) 2015-12-29 23:00:22 +00:00
InlineAsm.h Prune trailing whitespaces. 2015-09-22 11:19:03 +00:00
InstIterator.h IR: Create SymbolTableList wrapper around iplist, NFC 2015-10-07 20:05:10 +00:00
InstrTypes.h [WinEH] Use operand bundles to describe call sites 2015-12-15 21:27:27 +00:00
Instruction.def [IR] Remove terminatepad 2015-12-14 18:34:23 +00:00
Instruction.h [IR] Remove terminatepad 2015-12-14 18:34:23 +00:00
Instructions.h [IR] Add {is,set,setNot}Convergent() functions to CallSite, CallInstr, and InvokeInstr. 2016-02-17 17:46:47 +00:00
InstVisitor.h [IR] Remove terminatepad 2015-12-14 18:34:23 +00:00
IntrinsicInst.h don't repeat names in documentation comments; NFC 2016-02-25 15:55:28 +00:00
Intrinsics.h Handle more edge cases in intrinsic name binary search 2016-01-26 22:33:19 +00:00
Intrinsics.td SelectionDAG: Make Properties a field of SDPatternOperator 2016-02-10 18:40:04 +00:00
IntrinsicsAArch64.td SelectionDAG: Make Properties a field of SDPatternOperator 2016-02-10 18:40:04 +00:00
IntrinsicsAMDGPU.td AMDGPU/SI: add llvm.amdgcn.image.load/store[.mip] intrinsics 2016-02-18 16:44:18 +00:00
IntrinsicsARM.td SelectionDAG: Make Properties a field of SDPatternOperator 2016-02-10 18:40:04 +00:00
IntrinsicsBPF.td
IntrinsicsHexagon.td [Hexagon] Hexagon V60 HVX intrinsic defintions 2015-11-26 16:54:33 +00:00
IntrinsicsMips.td
IntrinsicsNVVM.td [NVPTX] Mark nvvm synchronizing intrinsics as convergent. 2016-02-06 19:32:44 +00:00
IntrinsicsPowerPC.td Fix for PR 26193 2016-02-05 14:50:29 +00:00
IntrinsicsSystemZ.td
IntrinsicsWebAssembly.td [WebAssembly] Change int_wasm_memory_size from IntrNoMem to IntrReadMem. 2015-11-14 23:02:31 +00:00
IntrinsicsX86.td [LLVM][AVX512][PSHUFHW ][PSHUFLW ] Change imm8 to int 2016-02-24 08:39:05 +00:00
IntrinsicsXCore.td
IRBuilder.h [IR] Straighten out bundle overload of IRBuilder::CreateCall 2016-02-18 20:57:41 +00:00
IRPrintingPasses.h
LegacyPassManager.h
LegacyPassManagers.h [PassManager] Ensure destructors of cached AnalysisUsage objects are run 2015-12-04 23:48:19 +00:00
LegacyPassNameParser.h
LLVMContext.h Add a "gc-transition" operand bundle 2016-01-20 19:50:25 +00:00
Mangler.h [ptr-traits] Add one more #include necessary to do strict alignment 2015-12-30 03:56:17 +00:00
MDBuilder.h
Metadata.def Macro debug info support in LLVM IR 2015-12-10 12:56:35 +00:00
Metadata.h Revert "Query the StringMap only once when creating MDString (NFC)" 2016-02-17 02:18:58 +00:00
Module.h Restore "[ThinLTO] Use MD5 hash in function index." with fix 2016-02-10 21:55:02 +00:00
ModuleSlotTracker.h
NoFolder.h
OperandTraits.h
Operator.h [opaque pointer types] [NFC] GEP: replace get(Pointer)ElementType uses with get{Source,Result}ElementType. 2016-01-19 17:28:00 +00:00
PassManager.h [PM] Introduce CRTP mixin base classes to help define passes and 2016-02-26 11:44:45 +00:00
PassManagerInternal.h
PatternMatch.h Revert "[PatternMatch] Switch to use ValueTracking::matchSelectPattern" 2015-11-04 08:36:53 +00:00
PredIteratorCache.h
Statepoint.h [Statepoints] Refactor GCRelocateOperands into an intrinsic wrapper. NFC. 2016-01-05 04:03:00 +00:00
SymbolTableListTraits.h IR: Create SymbolTableList wrapper around iplist, NFC 2015-10-07 20:05:10 +00:00
TrackingMDRef.h [ptr-traits] Merge the MetadataTracking helpers into the Metadata 2015-12-29 02:14:50 +00:00
Type.h [IR] Shuffle the code for getSequentialElementType to type.h to avoid circular header dependencies. 2016-01-29 12:47:01 +00:00
TypeBuilder.h
TypeFinder.h Make more headers self-contained. 2016-01-27 18:03:37 +00:00
Use.h [IR] Move definitions of users of Use::set to Value.h 2016-01-29 12:47:05 +00:00
UseListOrder.h Fix Clang-tidy modernize-use-nullptr warnings in examples and include directories; other minor cleanups. 2015-09-29 18:02:48 +00:00
User.h Re-reapply "[IR] Move optional data in llvm::Function into a hungoff uselist" 2015-12-19 08:52:49 +00:00
Value.def IR: Add ConstantData, for operand-less Constants 2016-02-21 02:39:49 +00:00
Value.h NFC. Move getAlignment helper function from ValueTracking to Value class. 2016-02-24 12:25:10 +00:00
ValueHandle.h
ValueMap.h
ValueSymbolTable.h Have a single way for creating unique value names. 2015-11-22 00:16:24 +00:00
Verifier.h [PM] Introduce CRTP mixin base classes to help define passes and 2016-02-26 11:44:45 +00:00