[BOLT] Detect and reject binaries built for coverage.

Summary: Don't attempt to optimize binaries built with coverage support.

(cherry picked from FBD4810330)
This commit is contained in:
Maksim Panchenko 2017-03-31 07:51:30 -07:00
parent c166a8c1a7
commit f7d32f7e7d
1 changed files with 5 additions and 0 deletions

View File

@ -837,6 +837,11 @@ void RewriteInstance::discoverFileObjects() {
"support. Cannot optimize.\n";
exit(1);
}
if (NameOrError && NameOrError->startswith("__llvm_coverage_mapping")) {
errs() << "BOLT-ERROR: input file was compiled or linked with coverage "
"support. Cannot optimize.\n";
exit(1);
}
if (Symbol.getFlags() & SymbolRef::SF_Undefined)
continue;