teak-llvm/llvm/lib/Bitcode/Writer
Teresa Johnson d4d3dfd8ef [ThinLTO] Add MODULE_CODE_METADATA_VALUES record
Summary:
This is split out from the ThinLTO metadata mapping patch
http://reviews.llvm.org/D14752.

To avoid needing to parse the module level metadata during function
importing, a new module-level record is added which holds the
number of module-level metadata values. This is required because
metadata value ids are assigned implicitly during parsing, and the
function-level metadata ids start after the module-level metadata ids.

I made a change to this version of the code compared to D14752
in order to add more consistent and thorough assertion checking of the
new record value. We now unconditionally use the record value to
initialize the MDValueList size, and handle it the same in parseMetadata
for all module level metadata cases (lazy loading or not).

Reviewers: dexonsmith, joker.eph

Subscribers: davidxl, llvm-commits, joker.eph

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

llvm-svn: 253668
2015-11-20 14:51:27 +00:00
..
BitcodeWriter.cpp [ThinLTO] Add MODULE_CODE_METADATA_VALUES record 2015-11-20 14:51:27 +00:00
BitcodeWriterPass.cpp Support for function summary index bitcode sections and files. 2015-10-04 14:33:43 +00:00
BitWriter.cpp Introduce LLVMWriteBitcodeToMemoryBuffer C API function. 2014-10-14 00:30:59 +00:00
CMakeLists.txt modules: Add explicit dependency on intrinsics_gen 2015-06-16 00:44:12 +00:00
LLVMBuild.txt
Makefile
ValueEnumerator.cpp BitcodeWriter: Stop using implicit ilist iterator conversion, NFC 2015-10-13 03:26:19 +00:00
ValueEnumerator.h [ThinLTO] Add MODULE_CODE_METADATA_VALUES record 2015-11-20 14:51:27 +00:00