diff options
| author | Peter Collingbourne <peter@pcc.me.uk> | 2017-06-12 20:10:48 +0000 |
|---|---|---|
| committer | Peter Collingbourne <peter@pcc.me.uk> | 2017-06-12 20:10:48 +0000 |
| commit | 89061b2224456b46fb09a62533687dd3bf746afa (patch) | |
| tree | 30716f798fdb25531fe7c4790d84f0b272bcae50 /llvm/lib/Bitcode | |
| parent | 30b2c6bdb7e87b0fbcfcf17898dba1d2e982d5b3 (diff) | |
| download | bcm5719-llvm-89061b2224456b46fb09a62533687dd3bf746afa.tar.gz bcm5719-llvm-89061b2224456b46fb09a62533687dd3bf746afa.zip | |
IR: Replace the "Linker Options" module flag with "llvm.linker.options" named metadata.
The new metadata is easier to manipulate than module flags.
Differential Revision: https://reviews.llvm.org/D31349
llvm-svn: 305227
Diffstat (limited to 'llvm/lib/Bitcode')
| -rw-r--r-- | llvm/lib/Bitcode/Reader/BitcodeReader.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp index 95987fac74e..bfa73071c14 100644 --- a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp +++ b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp @@ -2608,6 +2608,16 @@ Error BitcodeReader::materializeMetadata() { if (Error Err = MDLoader->parseModuleMetadata()) return Err; } + + // Upgrade "Linker Options" module flag to "llvm.linker.options" module-level + // metadata. + if (Metadata *Val = TheModule->getModuleFlag("Linker Options")) { + NamedMDNode *LinkerOpts = + TheModule->getOrInsertNamedMetadata("llvm.linker.options"); + for (const MDOperand &MDOptions : cast<MDNode>(Val)->operands()) + LinkerOpts->addOperand(cast<MDNode>(MDOptions)); + } + DeferredMetadataInfo.clear(); return Error::success(); } |

