llvm-6502/include/llvm/CodeGen
Alex Lorenz a15d888abf MIR Serialization: Connect the machine function analysis pass to the MIR parser.
This commit connects the machine function analysis pass (which creates machine
functions) to the MIR parser, which will initialize the machine functions 
with the state from the MIR file and reconstruct the machine IR.

This commit introduces a new interface called 'MachineFunctionInitializer',
which can be used to provide custom initialization for the machine functions.

This commit also introduces a new diagnostic class called 
'DiagnosticInfoMIRParser' which is used for MIR parsing errors.
This commit modifies the default diagnostic handling in LLVMContext - now the
the diagnostics are printed directly into llvm::errs() so that the MIR parsing 
errors can be printed with colours.  

Reviewers: Justin Bogner

Differential Revision: http://reviews.llvm.org/D9928


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@239753 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-15 20:30:22 +00:00
..
MIRParser MIR Serialization: Connect the machine function analysis pass to the MIR parser. 2015-06-15 20:30:22 +00:00
PBQP Add more missing #includes, found by modules build. 2015-05-11 22:41:07 +00:00
Analysis.h Fold a loop for array processing in ComputeLinearIndex 2015-01-14 05:33:01 +00:00
AsmPrinter.h Make EmitFunctionHeader virtual 2015-05-26 17:33:15 +00:00
BasicTTIImpl.h [LoopVectorize] Teach Loop Vectorizor about interleaved memory accesses. 2015-06-08 06:39:56 +00:00
CalcSpillWeights.h [PBQP] Tweak spill costs and coalescing benefits 2014-11-04 20:51:24 +00:00
CallingConvLower.h Remove 3 includes from MCInstrDesc.h and explicitly include them where needed 2015-05-15 21:58:42 +00:00
CommandFlags.h Fix English usage in command line flag help string. 2015-06-11 20:03:23 +00:00
DAGCombine.h
DFAPacketizer.h Remove the TargetMachine from DFAPacketizer since it was only 2014-10-14 01:03:16 +00:00
DIE.h AsmPrinter: Stop exposing underlying DIE children list, NFC 2015-05-28 19:56:34 +00:00
DIEValue.def Reapply "AsmPrinter: Change DIEValue to be stored by value" 2015-05-27 22:14:58 +00:00
DwarfStringPoolEntry.h AsmPrinter: Avoid creating symbols in DwarfStringPool 2015-05-24 16:58:59 +00:00
EdgeBundles.h [modules] "Specialize" a function by actually specializing a function template 2014-04-24 18:27:29 +00:00
FastISel.h [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
FaultMaps.h Unbreak the build from r239740. 2015-06-15 19:29:44 +00:00
FunctionLoweringInfo.h [StatepointLowering] Support of the gc.relocates for invoke statepoints. 2015-05-20 11:37:25 +00:00
GCMetadata.h Replace push_back(Constructor(foo)) with emplace_back(foo) for non-trivial types 2015-05-29 19:43:39 +00:00
GCMetadataPrinter.h Removing LLVM_DELETED_FUNCTION, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition. 2015-02-15 22:54:22 +00:00
GCs.h Prune CRLFs. 2015-05-25 01:43:23 +00:00
GCStrategy.h [gcroot] Remove unused items from an enum 2015-04-02 05:02:16 +00:00
IntrinsicLowering.h Rename some member variables from TD to DL. 2014-02-18 15:33:12 +00:00
ISDOpcodes.h Add SDNodes for umin, umax, smin and smax. 2015-05-15 09:03:15 +00:00
LatencyPriorityQueue.h Remove LatencyPriorityQueue::dump because it relies on an implicit copy ctor which is deprecated in C++11 (due to the presence of a user-declare dtor in the base class) 2015-03-03 21:16:56 +00:00
LexicalScopes.h IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
LinkAllAsmWriterComponents.h
LinkAllCodegenComponents.h Add a GCStrategy for CoreCLR 2015-05-20 01:07:23 +00:00
LiveInterval.h Recommit r231168: unique_ptrify LiveRange::segmentSet 2015-03-04 01:20:33 +00:00
LiveIntervalAnalysis.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
LiveIntervalUnion.h Removing LLVM_DELETED_FUNCTION, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition. 2015-02-15 22:54:22 +00:00
LivePhysRegs.h Refactor UpdatePredRedefs and StepForward to avoid duplication. NFC 2015-05-05 20:14:22 +00:00
LiveRangeEdit.h LiveRangeEdit: Fix liveranges not shrinking on subrange kill. 2015-06-01 21:26:26 +00:00
LiveRegMatrix.h [C++11] Replace OwningPtr with std::unique_ptr in places where it doesn't break the API. 2014-04-21 09:34:48 +00:00
LiveStackAnalysis.h Recommit r231175: Change LiveStackAnalysis::SS2IntervalMap from std::map to std::unordered_map 2015-03-04 01:15:53 +00:00
LiveVariables.h CodeGen/LiveVariables: hoist out code in nested loops 2014-08-25 01:59:49 +00:00
MachineBasicBlock.h MachineBasicBlock: Cleanup computeRegisterLiveness() 2015-05-27 05:12:39 +00:00
MachineBlockFrequencyInfo.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
MachineBranchProbabilityInfo.h blockfreq: Use const in MachineBlockFrequencyInfo 2014-03-25 18:01:32 +00:00
MachineCombinerPattern.h MachineCombiner Pass for selecting faster instruction 2014-08-03 21:35:39 +00:00
MachineConstantPool.h CodeGen: Add a getSectionKind method to MachineConstantPoolEntry 2014-07-14 22:06:29 +00:00
MachineDominanceFrontier.h Removing LLVM_DELETED_FUNCTION, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition. 2015-02-15 22:54:22 +00:00
MachineDominators.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
MachineFrameInfo.h MachineFrameInfo: Simplify pristine register calculation. 2015-05-28 23:20:35 +00:00
MachineFunction.h Removing LLVM_DELETED_FUNCTION, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition. 2015-02-15 22:54:22 +00:00
MachineFunctionAnalysis.h MIR Serialization: Connect the machine function analysis pass to the MIR parser. 2015-06-15 20:30:22 +00:00
MachineFunctionInitializer.h MIR Serialization: Connect the machine function analysis pass to the MIR parser. 2015-06-15 20:30:22 +00:00
MachineFunctionPass.h [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-07 09:26:03 +00:00
MachineInstr.h fix typos; NFC 2015-06-08 15:21:38 +00:00
MachineInstrBuilder.h IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
MachineInstrBundle.h [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-14 00:51:57 +00:00
MachineJumpTableInfo.h
MachineLoopInfo.h Push constness through LoopInfo::isLoopHeader and clean it up a bit. 2015-06-02 15:28:27 +00:00
MachineMemOperand.h [BranchFolding] Remove MMOs during tail merge to preserve dependencies. 2015-03-10 16:22:52 +00:00
MachineModuleInfo.h Remove MachineModuleInfo::UsedFunctions as it has no users. 2015-06-11 01:04:56 +00:00
MachineModuleInfoImpls.h Clear the stub map in getSortedStubs. 2015-04-07 12:59:28 +00:00
MachineOperand.h Add ChangeTo* to MachineOperand for symbols 2015-05-06 17:05:54 +00:00
MachinePassRegistry.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
MachinePostDominators.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
MachineRegionInfo.h Remove empty non-virtual destructors or mark them =default when non-public 2015-04-11 15:32:26 +00:00
MachineRegisterInfo.h MachineRegisterInfo: Make it clear that hints are for vregs 2015-04-03 00:18:33 +00:00
MachineScheduler.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
MachineSSAUpdater.h Removing LLVM_DELETED_FUNCTION, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition. 2015-02-15 22:54:22 +00:00
MachineTraceMetrics.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MachineValueType.h Add support for v1i128 type. 2015-04-17 16:11:05 +00:00
MachORelocation.h
MIRYamlMapping.h MIR Serialization: print and parse machine function names. 2015-05-28 22:41:12 +00:00
Passes.h [CodeGen] Add a pass to fold null checks into nearby memory operations. 2015-06-15 18:44:27 +00:00
PBQPRAConstraint.h Remove redundant virtual on overriden functions. 2014-11-14 19:06:36 +00:00
PseudoSourceValue.h Fix broken build of llvm using clang. 2014-04-15 08:10:46 +00:00
RegAllocPBQP.h [PBQP] Do not add an edge between nodes with totally disjoint allowed registers 2015-03-01 20:39:34 +00:00
RegAllocRegistry.h
RegisterClassInfo.h [C++11] Replace OwningPtr with std::unique_ptr in places where it doesn't break the API. 2014-04-21 09:34:48 +00:00
RegisterPressure.h Remove declarations for nonexistent methods 2015-04-01 21:16:02 +00:00
RegisterScavenging.h remove names from comments, fix typos; NFC 2015-05-22 15:38:24 +00:00
ResourcePriorityQueue.h unique_ptrify ResourcePriorityQueue::ResourceModel 2015-03-03 20:49:08 +00:00
RuntimeLibcalls.h SDAG: Merge the meat of two ExpandAtomic implementations. 2015-03-05 20:04:29 +00:00
ScheduleDAG.h Remove the explicit SUnitIterator::operator= as the default is just fine 2015-03-03 21:17:00 +00:00
ScheduleDAGInstrs.h Replace push_back(Constructor(foo)) with emplace_back(foo) for non-trivial types 2015-05-29 19:43:39 +00:00
ScheduleDFS.h Move remaining LLVM_ENABLE_DUMP conditionals out of the headers 2014-07-01 21:19:13 +00:00
ScheduleHazardRecognizer.h Add two additional hazard recognizer functions 2013-12-11 22:33:43 +00:00
SchedulerRegistry.h
ScoreboardHazardRecognizer.h [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-14 00:51:57 +00:00
SelectionDAG.h [sdag] Add the helper I most want to the DAG -- building a bitcast 2015-05-30 04:14:10 +00:00
SelectionDAGISel.h Reapply r235977 "[DebugInfo] Add debug locations to constant SD nodes" 2015-04-28 14:05:47 +00:00
SelectionDAGNodes.h Revert r237046. See the testcase on the thread where r237046 was committed. 2015-05-13 23:41:47 +00:00
SlotIndexes.h Removing LLVM_EXPLICIT, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition. 2015-02-15 22:00:20 +00:00
StackMaps.h [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
StackProtector.h [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-14 00:51:57 +00:00
TargetLoweringObjectFileImpl.h Move alignment from MCSectionData to MCSection. 2015-05-21 19:20:38 +00:00
TargetSchedule.h TargetSchedule: factor out common code; NFC 2015-05-14 18:01:13 +00:00
ValueTypes.h Make VTs and UnicodeCharSet ctors constexpr if the compiler supports it. 2015-03-01 18:10:07 +00:00
ValueTypes.td Add support for v1i128 type. 2015-04-17 16:11:05 +00:00
VirtRegMap.h Removing LLVM_DELETED_FUNCTION, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition. 2015-02-15 22:54:22 +00:00
WinEHFuncInfo.h [WinEH] Create an llvm.x86.seh.exceptioninfo intrinsic 2015-06-11 22:32:23 +00:00