diff options
author | Teresa Johnson <tejohnson@google.com> | 2016-03-30 14:00:02 +0000 |
---|---|---|
committer | Teresa Johnson <tejohnson@google.com> | 2016-03-30 14:00:02 +0000 |
commit | 832a6790f66c5ec637b3be95703fedf520a38b33 (patch) | |
tree | fa2da029e58192817d152763bfc73bcb95fb63f3 /llvm/lib/IR/AsmWriter.cpp | |
parent | 0c7bb965336d458a2582cc8542d43bec1330430d (diff) | |
download | bcm5719-llvm-832a6790f66c5ec637b3be95703fedf520a38b33.tar.gz bcm5719-llvm-832a6790f66c5ec637b3be95703fedf520a38b33.zip |
[ThinLTO] Serialize the Module SourceFileName to/from LLVM assembly
Summary:
This change serializes out and in the SourceFileName to LLVM assembly
so that it is preserved through "llvm-dis | llvm-as". This is
necessary to ensure that the global identifiers created for local values
in the module summary index are the same even if the bitcode is
streamed out and read back from LLVM assembly.
Serializing the summary itself to LLVM assembly is in progress.
Reviewers: joker.eph
Subscribers: llvm-commits, joker.eph
Differential Revision: http://reviews.llvm.org/D18588
llvm-svn: 264869
Diffstat (limited to 'llvm/lib/IR/AsmWriter.cpp')
-rw-r--r-- | llvm/lib/IR/AsmWriter.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/IR/AsmWriter.cpp b/llvm/lib/IR/AsmWriter.cpp index ab56f08014e..3051193f890 100644 --- a/llvm/lib/IR/AsmWriter.cpp +++ b/llvm/lib/IR/AsmWriter.cpp @@ -2215,6 +2215,9 @@ void AssemblyWriter::printModule(const Module *M) { M->getModuleIdentifier().find('\n') == std::string::npos) Out << "; ModuleID = '" << M->getModuleIdentifier() << "'\n"; + if (!M->getSourceFileName().empty()) + Out << "source_filename = \"" << M->getSourceFileName() << "\"\n"; + const std::string &DL = M->getDataLayoutStr(); if (!DL.empty()) Out << "target datalayout = \"" << DL << "\"\n"; |