llvm-6502/include/llvm
David Greene a358c1db5c Prefix IR dumps with LiveInterval indices when possible. This turns
this:

	%ESI<def> = MOV32rr %EDI<kill>
	ADJCALLSTACKDOWN64 0, %RSP<imp-def>, %EFLAGS<imp-def,dead>, %RSP<imp-use>
	%reg1027<def> = MOVZX64rr32 %ESI
	%reg1027<def> = ADD64ri8 %reg1027, 15, %EFLAGS<imp-def,dead>
	%reg1027<def> = AND64ri8 %reg1027, -16, %EFLAGS<imp-def,dead>
	%RDI<def> = MOV64rr %RSP
	%RDI<def> = SUB64rr %RDI, %reg1027<kill>, %EFLAGS<imp-def,dead>
	%RSP<def> = MOV64rr %RDI

into this:

4	%reg1024<def> = MOV32rr %EDI<kill>
12	ADJCALLSTACKDOWN64 0, %RSP<imp-def>, %EFLAGS<imp-def,dead>, %RSP<imp-use>
20	%reg1025<def> = MOVZX64rr32 %reg1024
28	%reg1026<def> = MOV64rr %reg1025<kill>
36	%reg1026<def> = ADD64ri8 %reg1026, 15, %EFLAGS<imp-def,dead>
44	%reg1027<def> = MOV64rr %reg1026<kill>
52	%reg1027<def> = AND64ri8 %reg1027, -16, %EFLAGS<imp-def,dead>
60	%reg1028<def> = MOV64rr %RSP
68	%reg1029<def> = MOV64rr %reg1028<kill>
76	%reg1029<def> = SUB64rr %reg1029, %reg1027<kill>, %EFLAGS<imp-def,dead>
84	%RSP<def> = MOV64rr %reg1029

This helps greatly when debugging register allocation and coalescing
problems.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76615 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-21 18:56:32 +00:00
..
ADT Add freed memory poisoning in !NDEBUG mode for DenseMap. 2009-07-21 18:01:37 +00:00
Analysis Commit this change, to accompany r76232. 2009-07-17 21:03:54 +00:00
Assembly switch the .ll parser into SMDiagnostic. 2009-07-02 22:46:18 +00:00
Bitcode Assembly and Bitcode support for unsigned/signed overflow flags and 2009-07-20 21:19:07 +00:00
CodeGen Prefix IR dumps with LiveInterval indices when possible. This turns 2009-07-21 18:56:32 +00:00
CompilerDriver Add a -t="dir" option to the driver. This can be used to specify the directory to be used as TempDir if somebody doesn't want to use the standard /tmp. 2009-07-09 08:23:38 +00:00
Config Sketch support for target specific assembly parser. 2009-07-17 20:42:00 +00:00
Debugger Match declaration to definition. 2009-07-12 23:50:34 +00:00
ExecutionEngine Add EngineBuilder to ExecutionEngine in favor of the five optional argument EE::create(). 2009-07-18 00:42:18 +00:00
MC Removed the DumpSymbolsandMacros and LoadSymbolsandMacros MCStreamer API as 2009-07-20 20:25:37 +00:00
Support Add a small utility class to configure IR printers. This will allow 2009-07-21 18:21:46 +00:00
System Add a Program::GetPid() method. 2009-07-18 21:43:40 +00:00
Target Rename LessPrivateGlobalPrefix -> LinkerPrivateGlobalPrefix to match the 2009-07-21 17:30:51 +00:00
Transforms Revert yesterday's change by removing the LLVMContext parameter to AllocaInst and MallocInst. 2009-07-15 23:53:25 +00:00
AbstractTypeUser.h Another attempt at fixing PR2975. 2009-04-07 17:23:02 +00:00
Argument.h Don't analyze arguments already marked 'nocapture'. 2008-12-31 18:08:59 +00:00
Attributes.h Add support for naked functions 2009-07-17 18:07:26 +00:00
AutoUpgrade.h Tidy up #includes, deleting a bunch of unnecessary #includes. 2009-01-05 17:59:02 +00:00
BasicBlock.h "LLVMContext* " --> "LLVMContext *" 2009-07-06 23:00:19 +00:00
CallGraphSCCPass.h Move the ConstantInt uniquing table into LLVMContextImpl. This exposed a number of issues in 2009-07-16 18:04:31 +00:00
CallingConv.h Address review comments: add 3 ARM calling conventions. 2009-06-16 18:50:49 +00:00
CMakeLists.txt CMake: Have generated Xcode projects also contain the LLVM header files. 2009-04-01 15:40:21 +00:00
Constant.h Privatize the MDString uniquing table. 2009-07-16 22:11:26 +00:00
Constants.h Move a bit more state over to the LLVMContext. 2009-07-21 02:47:59 +00:00
DerivedTypes.h improve the APIs for creating struct and function types with no arguments/elements 2009-07-01 04:13:31 +00:00
Function.h "LLVMContext* " --> "LLVMContext *" 2009-07-06 23:00:19 +00:00
GlobalAlias.h Tidy up #includes, deleting a bunch of unnecessary #includes. 2009-01-05 17:59:02 +00:00
GlobalValue.h Add plumbing for the `linker_private' linkage type. This type is meant for 2009-07-20 01:03:30 +00:00
GlobalVariable.h Switch GlobalVariable ctors to a sane API, where *either* a context or a module is required. 2009-07-08 19:03:57 +00:00
InlineAsm.h Model inline asm constraint which ties an input to an output register as machine operand TIED_TO constraint. This eliminated the need to pre-allocate registers for these. This also allows register allocator can eliminate the unneeded copies. 2009-03-23 08:01:15 +00:00
InstrTypes.h These don't really need contexts either. 2009-07-13 22:18:28 +00:00
Instruction.def Remove the vicmp and vfcmp instructions. Because we never had a release with 2009-07-08 03:04:38 +00:00
Instruction.h Documentation clarifications for isSafeToSpeculativelyExecute. 2009-07-17 08:38:29 +00:00
Instructions.h Add a GEPOperator class, and move the hasNoPointerOverflow 2009-07-17 21:33:58 +00:00
IntrinsicInst.h A little bit more LLVMContextification. 2009-07-09 18:36:20 +00:00
Intrinsics.h LLVMContext-ification. 2009-07-07 23:43:39 +00:00
Intrinsics.td Remove the v3i32 and v3f32 value types: they are not 2009-07-15 15:28:52 +00:00
IntrinsicsAlpha.td Modify the intrinsics pattern to separate out the "return" types from the 2008-11-13 09:08:33 +00:00
IntrinsicsARM.td Change NEON vldN/vstN intrinsics to specify "N" as an immediate operand 2009-07-07 22:27:20 +00:00
IntrinsicsCellSPU.td Modify the intrinsics pattern to separate out the "return" types from the 2008-11-13 09:08:33 +00:00
IntrinsicsPowerPC.td Modify the intrinsics pattern to separate out the "return" types from the 2008-11-13 09:08:33 +00:00
IntrinsicsX86.td ADDS{D|S}rr_Int and MULS{D|S}rr_Int are not commutable. The users of these intrinsics expect the high bits will not be modified. 2009-02-26 03:12:02 +00:00
IntrinsicsXCore.td Add XCore intrinsics for getid (returns thread id) and bitrev (reverses 2008-11-14 10:12:16 +00:00
LinkAllPasses.h Introduce a pointertracking pass. 2009-07-14 18:44:28 +00:00
LinkAllVMCore.h Hold the LLVMContext by reference rather than by pointer. 2009-07-01 21:22:36 +00:00
Linker.h Make the use of const with respect to LLVMContext sane. Hopefully this is the last time, for the 2009-07-01 23:13:44 +00:00
LLVMContext.h Rename getConstantInt{True|False} to get{True|False} at Chris' behest. 2009-07-21 18:03:38 +00:00
MDNode.h Privatize the MDNode uniquing table. 2009-07-16 23:44:30 +00:00
Module.h Make the use of const with respect to LLVMContext sane. Hopefully this is the last time, for the 2009-07-01 23:13:44 +00:00
ModuleProvider.h
OperandTraits.h Remove some dead functions, patch by Ryan Flynn! 2009-07-14 18:58:35 +00:00
Operator.h Clarify that OverflowingBinaryOperator is not used for SDiv, even though 2009-07-20 20:32:43 +00:00
Pass.h "LLVMContext* " --> "LLVMContext *" 2009-07-06 23:00:19 +00:00
PassAnalysisSupport.h Simplify assertion message to avoid confusion. 2009-06-02 17:26:29 +00:00
PassManager.h
PassManagers.h Clean up pass manager cache after each run. 2009-04-01 22:34:41 +00:00
PassSupport.h remove a deprecated interface that was pretty useless 2009-03-02 12:42:07 +00:00
SymbolTableListTraits.h simplify the way how traits get hold of the symbol table 2009-03-07 12:33:24 +00:00
Type.h Add an LLVMContext to Type, hardwired to the global context until Type uniquing is moved on the contexts themselves. 2009-07-15 22:50:23 +00:00
TypeSymbolTable.h Fixed spelling. 2009-04-01 16:13:29 +00:00
Use.h Add a comment to refer to the section of the programmer's manual that explains what the pointer tagging in Use is for. 2009-04-30 23:28:50 +00:00
User.h Remove some dead functions, patch by Ryan Flynn! 2009-07-14 18:58:35 +00:00
Value.h Add a method to clear optional optimization information from a Value. 2009-07-17 18:56:23 +00:00
ValueSymbolTable.h