Re-land "Fix Bug 30978 by emitting cv file checksums."

This reverts r313431 and brings back r313374 with a fix to write
checksums as binary data and not ASCII hex strings.

llvm-svn: 313657
This commit is contained in:
Reid Kleckner
2017-09-19 18:14:45 +00:00
parent 0a84b1ac80
commit 26fa1bf4da
16 changed files with 305 additions and 81 deletions

View File

@@ -228,8 +228,11 @@ void MCStreamer::EnsureValidDwarfFrame() {
report_fatal_error("No open frame");
}
bool MCStreamer::EmitCVFileDirective(unsigned FileNo, StringRef Filename) {
return getContext().getCVContext().addFile(FileNo, Filename);
bool MCStreamer::EmitCVFileDirective(unsigned FileNo, StringRef Filename,
ArrayRef<uint8_t> Checksum,
unsigned ChecksumKind) {
return getContext().getCVContext().addFile(*this, FileNo, Filename, Checksum,
ChecksumKind);
}
bool MCStreamer::EmitCVFuncIdDirective(unsigned FunctionId) {