llvm-6502/include/llvm/Target
Jakob Stoklund Olesen da1f1f4950 Change virtual register numbering to make more space for physical registers.
The numbering plan is now:

0           NoRegister.
[1;2^30)    Physical registers.
[2^30;2^31) Stack slots.
[2^31;2^32) Virtual registers. (With -1u and -2u used by DenseMapInfo.)

Each segment is filled from the left, so any mistaken interpretation should
quickly cause crashes.

FirstVirtualRegister has been removed. TargetRegisterInfo provides predicates
conversion functions that should be used instead of interpreting register
numbers manually.

It is now legal to pass NoRegister to isPhysicalRegister() and
isVirtualRegister(). The result is false in both cases.

It is quite rare to represent stack slots in this way, so isPhysicalRegister()
and isVirtualRegister() require that isStackSlot() be checked first if it can
possibly return true. This allows a very fast implementation of the common
predicates.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123137 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-09 22:42:48 +00:00
..
Mangler.h Revert r107205 and r107207. 2010-06-29 22:34:52 +00:00
SubtargetFeature.h Merge System into Support. 2010-11-29 18:16:10 +00:00
Target.td Do not model all INLINEASM instructions as having unmodelled side effects. 2011-01-07 23:50:32 +00:00
TargetAsmBackend.h Remove the MCObjectFormat class. 2010-12-18 05:37:28 +00:00
TargetAsmInfo.h Fixed version of 121434 with no new memory leaks. 2010-12-10 07:39:47 +00:00
TargetAsmLexer.h Moved InstallLexer() from the X86-specific AsmLexer 2010-01-31 02:28:18 +00:00
TargetAsmParser.h implement rdar://8456378 and PR7557 - support for the fstsw, 2010-09-29 01:50:45 +00:00
TargetCallingConv.h Inside the calling convention logic LocVT is always a simple 2010-11-03 11:35:31 +00:00
TargetCallingConv.td Fix a couple of typos. 2010-08-27 21:38:11 +00:00
TargetData.h Merge System into Support. 2010-11-29 18:16:10 +00:00
TargetELFWriterInfo.h Jim Asked us to move DataLayout on ARM back to the most specialized classes. Do 2010-10-03 18:59:45 +00:00
TargetFrameInfo.h Move more PEI-related hooks to TFI 2010-11-27 23:05:25 +00:00
TargetInstrDesc.h Merge System into Support. 2010-11-29 18:16:10 +00:00
TargetInstrInfo.h Various bits of framework needed for precise machine-level selection 2010-12-24 05:03:26 +00:00
TargetInstrItineraries.h Various bits of framework needed for precise machine-level selection 2010-12-24 05:03:26 +00:00
TargetIntrinsicInfo.h Reintroduce support for overloading target intrinsics 2009-11-05 03:19:08 +00:00
TargetJITInfo.h Merge System into Support. 2010-11-29 18:16:10 +00:00
TargetLowering.h Re-implement r122936 with proper target hooks. Now getMaxStoresPerMemcpy 2011-01-06 06:52:41 +00:00
TargetLoweringObjectFile.h the latest assembler that runs on powerpc 10.4 machines doesn't 2010-09-27 06:44:54 +00:00
TargetMachine.h Change some methods in MCDwarf.cpp to be able to handle an arbitrary 2010-11-19 02:26:16 +00:00
TargetOpcodes.h Rename DBG_LABEL PROLOG_LABEL, because it's only used during prolog emission and 2010-07-16 22:20:36 +00:00
TargetOptions.h Grammar. 2010-07-29 18:11:28 +00:00
TargetRegisterInfo.h Change virtual register numbering to make more space for physical registers. 2011-01-09 22:42:48 +00:00
TargetRegistry.h MC: Make TargetAsmBackend available to the AsmStreamer. 2010-12-16 03:05:59 +00:00
TargetSchedule.td Comments about operand cycles and pipeline forwarding pathes. 2010-09-30 22:01:50 +00:00
TargetSelect.h Fix LLVM target initialization to deal with sociopathic outside projects 2010-08-30 18:34:48 +00:00
TargetSelectionDAG.td Add ARM patterns to match EXTRACT_SUBVECTOR nodes. 2011-01-07 04:59:04 +00:00
TargetSelectionDAGInfo.h reimplement memcpy/memmove/memset lowering to use MachinePointerInfo 2010-09-21 05:40:29 +00:00
TargetSubtarget.h Allow target to specify regclass for which antideps will only be broken along the critical path. 2009-11-13 19:52:48 +00:00