llvm-6502/include/llvm
Tobias Grosser e7bc5bb862 Make .bc en/decoding of AttrKind stable
The bitcode representation attribute kinds are encoded into / decoded from
should be independent of the current set of LLVM attributes and their position
in the AttrKind enum. This patch explicitly encodes attributes to fixed bitcode
values.

With this patch applied, LLVM does not silently misread attributes written by
LLVM 3.3. We also enhance the decoding slightly such that an error message is
printed if an unknown AttrKind encoding was dected.

Bonus: Dropping bitcode attributes from AttrKind is now easy, as old AttrKinds
       do not need to be kept to support the Bitcode reader.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187186 91177308-0d34-0410-b5e6-96231b3b80d8
2013-07-26 04:16:55 +00:00
..
ADT [PowerPC] Support powerpc64le as a syntax-checking target. 2013-07-26 01:35:43 +00:00
Analysis Fix typo (ponted -> pointed) 2013-07-22 23:52:23 +00:00
Assembly Enable *BasicBlockPass::createPrinterPass() 2013-02-08 23:37:41 +00:00
Bitcode Make .bc en/decoding of AttrKind stable 2013-07-26 04:16:55 +00:00
CodeGen MI Sched: Register pressure heuristics. 2013-07-25 07:26:35 +00:00
Config Find xdot or xdot.py. 2013-07-08 20:24:54 +00:00
DebugInfo llvm-dwarfdump: Add support for dumping the .debug_loc section 2013-06-19 21:37:13 +00:00
ExecutionEngine Revising the MCJIT ObjectCache interface to allow subclasses to avoid retaining references to returned objects 2013-06-28 21:40:16 +00:00
IR Remove the mblaze backend from llvm. 2013-07-25 18:55:05 +00:00
IRReader Split out the IRReader header and the utility functions it provides into 2013-03-26 02:25:37 +00:00
MC Split generated asm mnemonic matching table into a separate table for each asm variant. 2013-07-24 07:33:14 +00:00
Object [PowerPC] Support powerpc64le as a syntax-checking target. 2013-07-26 01:35:43 +00:00
Option [Option] Add inclusion and exclusion flags to option parsing 2013-07-19 18:04:57 +00:00
Support Remove the mblaze backend from llvm. 2013-07-25 18:55:05 +00:00
TableGen Fix up some asserts that are within an if statement. This removes the need 2013-07-01 23:42:53 +00:00
Target Fix a comment cut-&-pasto. 2013-07-25 10:53:02 +00:00
Transforms Respect llvm.used in Internalize. 2013-07-25 03:23:25 +00:00
AutoUpgrade.h Remove trailing whitespace, fix file path in comment 2013-07-20 17:46:00 +00:00
CMakeLists.txt Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
DebugInfo.h Remove dead code. 2013-07-24 01:38:05 +00:00
DIBuilder.h Remove DIBuilder cache of variable TheCU and change the few 2013-07-19 00:51:47 +00:00
GVMaterializer.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
InitializePasses.h Remove the simplify-libcalls pass (finally) 2013-06-20 19:48:07 +00:00
InstVisitor.h Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
LinkAllIR.h Rename LinkAllVMCore.h to LinkAllIR.h since VMCore directory was renamed to IR. 2013-01-10 21:55:02 +00:00
LinkAllPasses.h Remove the simplify-libcalls pass (finally) 2013-06-20 19:48:07 +00:00
Linker.h Fix a performance bug in the Linker. 2013-05-04 05:05:18 +00:00
Pass.h moves doInitialization and doFinalization to the Pass class and removes some unreachable code in MachineModuleInfo 2012-12-03 21:56:57 +00:00
PassAnalysisSupport.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
PassManager.h This patch breaks up Wrap.h so that it does not have to include all of 2013-05-01 20:59:00 +00:00
PassManagers.h Use a DenseMap instead of a std::map for AnalysisID -> Pass* maps. This reduces the pass-manager overhead from FPPassManager::runOnFunction() by about 10%. 2013-02-26 01:31:59 +00:00
PassRegistry.h This patch breaks up Wrap.h so that it does not have to include all of 2013-05-01 20:59:00 +00:00
PassSupport.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00