llvm-6502/utils/TableGen
Rafael Espindola 7d7d99622f Replace PROLOG_LABEL with a new CFI_INSTRUCTION.
The old system was fairly convoluted:
* A temporary label was created.
* A single PROLOG_LABEL was created with it.
* A few MCCFIInstructions were created with the same label.

The semantics were that the cfi instructions were mapped to the PROLOG_LABEL
via the temporary label. The output position was that of the PROLOG_LABEL.
The temporary label itself was used only for doing the mapping.

The new CFI_INSTRUCTION has a 1:1 mapping to MCCFIInstructions and points to
one by holding an index into the CFI instructions of this function.

I did consider removing MMI.getFrameInstructions completelly and having
CFI_INSTRUCTION own a MCCFIInstruction, but MCCFIInstructions have non
trivial constructors and destructors and are somewhat big, so the this setup
is probably better.

The net result is that we don't create temporary labels that are never used.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203204 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-07 06:08:31 +00:00
..
AsmMatcherEmitter.cpp Replace OwningPtr<T> with std::unique_ptr<T>. 2014-03-06 05:51:42 +00:00
AsmWriterEmitter.cpp Replace PROLOG_LABEL with a new CFI_INSTRUCTION. 2014-03-07 06:08:31 +00:00
AsmWriterInst.cpp Remove dead code. 2013-12-02 05:10:04 +00:00
AsmWriterInst.h Remove dead code. 2013-12-02 05:10:04 +00:00
CallingConvEmitter.cpp LLVM-1163: AAPCS-VFP violation when CPRC allocated to stack 2014-02-07 11:19:53 +00:00
CMakeLists.txt Remove TGValueTypes.cpp from CMakeLists.txt which I forgot to do in r200036. 2014-01-24 20:51:32 +00:00
CodeEmitterGen.cpp Propagate MCSubtargetInfo through TableGen's getBinaryCodeForInstr() 2014-01-28 23:13:18 +00:00
CodeGenDAGPatterns.cpp Add an OutPatFrag TableGen class 2014-02-28 00:26:56 +00:00
CodeGenDAGPatterns.h Add an OutPatFrag TableGen class 2014-02-28 00:26:56 +00:00
CodeGenInstruction.cpp Shrink the size of CodeGenInstruction a little bit by using bitfields. 32 bools seemed excessive. 2014-02-05 09:10:40 +00:00
CodeGenInstruction.h Shrink the size of CodeGenInstruction a little bit by using bitfields. 32 bools seemed excessive. 2014-02-05 09:10:40 +00:00
CodeGenIntrinsics.h Extend 'readonly' and 'readnone' to work on function arguments as well as 2013-07-06 00:29:58 +00:00
CodeGenMapTable.cpp Unbreak the C++11 build. 2014-03-03 13:59:41 +00:00
CodeGenRegisters.cpp [C++11] Add 'override' keywords to tablegen code. 2014-03-05 05:17:42 +00:00
CodeGenRegisters.h Fix known typos 2014-01-24 17:20:08 +00:00
CodeGenSchedule.cpp [C++11] Add 'override' keywords to tablegen code. 2014-03-05 05:17:42 +00:00
CodeGenSchedule.h Fix known typos 2014-01-24 17:20:08 +00:00
CodeGenTarget.cpp Replace PROLOG_LABEL with a new CFI_INSTRUCTION. 2014-03-07 06:08:31 +00:00
CodeGenTarget.h Support little-endian encodings in the FixedLenDecoderEmitter 2013-12-17 22:37:50 +00:00
CTagsEmitter.cpp Remove unnecessary include. 2014-02-09 07:55:19 +00:00
DAGISelEmitter.cpp Use ArrayRef to simplify some code. 2014-01-21 07:20:05 +00:00
DAGISelMatcher.cpp Add CheckChildInteger to ISelMatcher operations. Removes nearly 2000 bytes from X86 matcher table. 2014-02-05 05:44:28 +00:00
DAGISelMatcher.h Replace OwningPtr<T> with std::unique_ptr<T>. 2014-03-06 05:51:42 +00:00
DAGISelMatcherEmitter.cpp Add CheckChildInteger to ISelMatcher operations. Removes nearly 2000 bytes from X86 matcher table. 2014-02-05 05:44:28 +00:00
DAGISelMatcherGen.cpp Fix typo in commment tyep->type. 2014-01-25 17:34:23 +00:00
DAGISelMatcherOpt.cpp Replace OwningPtr<T> with std::unique_ptr<T>. 2014-03-06 05:51:42 +00:00
DFAPacketizerEmitter.cpp Fix PR14568: Avoid the DFA packetizer from making an invalid read 2012-12-10 22:45:57 +00:00
DisassemblerEmitter.cpp Don't use PrintFatalError(which calls exit) for 'Primary decode conflict'. Just skip emitting the table. This way the main function will delete the output file instead of it remaining empty and confusing dependency checks if build is invoked a second time. 2014-01-05 01:34:12 +00:00
FastISelEmitter.cpp Rename a DebugLoc variable to DbgLoc and a DataLayout to DL. 2014-02-18 22:05:46 +00:00
FixedLenDecoderEmitter.cpp Remove unnecessary include. 2014-02-09 07:55:19 +00:00
InstrInfoEmitter.cpp Fix a vector that was passed by value instead of reference. 2014-02-05 07:27:49 +00:00
IntrinsicEmitter.cpp Now that we have C++11, turn simple functors into lambdas and remove a ton of boilerplate. 2014-03-01 11:47:00 +00:00
LLVMBuild.txt LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
Makefile Remove exception handling usage from tblgen. 2012-10-25 20:33:17 +00:00
OptParserEmitter.cpp [cleanup] Re-sort all the includes with utils/sort_includes.py. 2014-03-04 10:07:28 +00:00
PseudoLoweringEmitter.cpp Change MCStreamer EmitInstruction interface to take subtarget info 2014-01-28 23:12:42 +00:00
RegisterInfoEmitter.cpp Fix indentation. 2014-02-27 03:30:36 +00:00
SequenceToOffsetTable.h Add missing include 2013-08-28 07:03:02 +00:00
SetTheory.cpp [C++11] Add 'override' keywords to tablegen code. 2014-03-05 05:17:42 +00:00
SetTheory.h Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
SubtargetEmitter.cpp Mark the x86 machine model as incomplete. PR17367. 2013-09-25 18:14:12 +00:00
TableGen.cpp replace LeakSanitizerIsTurnedOffForTheCurrentProcess with __lsan_is_turned_off, but this time hide it under __has_feature(address_sanitizer); also include <sanitizer/lsan_interface.h> 2014-01-15 07:59:37 +00:00
TableGenBackends.h Add TableGen ctags(1) emitter and helper script. 2013-03-21 23:40:38 +00:00
tdtags Add TableGen ctags(1) emitter and helper script. 2013-03-21 23:40:38 +00:00
X86DisassemblerShared.h Remove filtering concept from X86 disassembler table generation. It's no longer necessary. 2014-02-13 07:07:16 +00:00
X86DisassemblerTables.cpp AVX-512: Added rrk, rrkz, rmk, rmkz, rmbk, rmbkz versions of AVX512 FP packed instructions, added encoding tests for them. 2014-03-06 08:45:30 +00:00
X86DisassemblerTables.h Remove A6/A7 opcode maps. They can all be handled with a TB map, opcode of 0xa6/0xa7, and adding MRM_C0/MRM_E0 forms. Removes 376K from the disassembler tables. 2014-02-19 05:34:21 +00:00
X86ModRMFilters.cpp Second attempt at Removing special form of AddRegFrm used by FP instructions. These instructions can be handled by MRMXr instead. 2014-01-01 14:22:37 +00:00
X86ModRMFilters.h [C++11] Add 'override' keywords to tablegen code. 2014-03-05 05:17:42 +00:00
X86RecognizableInstr.cpp [x86] Simplify disassembler code slightly. 2014-02-26 06:01:21 +00:00
X86RecognizableInstr.h [x86] Switch PAUSE instruction to use XS prefix instead of HasREPPrefix. Remove HasREPPrefix support from disassembler table generator since its now only used by CodeGenOnly instructions. 2014-02-20 07:59:43 +00:00