forked from OSchip/llvm-project
1c829ce1e3
CodeGenAction::ExecuteAction creates a BackendConsumer for the purpose of handling diagnostics. The BackendConsumer's DiagnosticHandlerImpl method expects CurLinkModule to be set, but this did not happen on the code path that goes through ExecuteAction. This change makes it so that the BackendConsumer constructor used by ExecuteAction requires the Module to be specified and passes the appropriate module in ExecuteAction. The change also adds a test that fails without this change and passes with it. To make the test work, the FIXME in the handling of DK_Linker diagnostics was addressed so that warnings and notes are no longer silently discarded. Since this introduces a new warning diagnostic, a flag to control it (-Wlinker-warnings) has also been added. Reviewed By: xur Differential Revision: https://reviews.llvm.org/D108603 |
||
---|---|---|
.. | ||
basic-block-sections.funcnames | ||
code-coverage-filter1.h | ||
code-coverage-filter2.h | ||
debug-info-embed-source.c | ||
debug-info-file-checksum-line.cpp | ||
debug-info-file-checksum-pre.cpp | ||
debug-info-file-checksum.c | ||
debug-info-macro.h | ||
linker-diagnostic1.ll | ||
opt-record.proftext | ||
pgo-sample-thinlto-summary.prof | ||
pgo-sample.prof | ||
pgotestclang.profraw | ||
pgotestir.profraw | ||
pgotestir.proftext | ||
pgotestir_cs.proftext | ||
sanitizer-blacklist-vfsoverlay.yaml | ||
sanitizer-special-case-list.sanitized.txt | ||
sanitizer-special-case-list.unsanitized1.txt | ||
sanitizer-special-case-list.unsanitized2.txt | ||
sanitizer-special-case-list.unsanitized3.txt | ||
sanitizer-special-case-list.unsanitized4.txt | ||
start-lib1.ll | ||
start-lib2.ll | ||
stdio.h | ||
thinlto-distributed-backend-skip.bc | ||
thinlto-multi-module.ll | ||
thinlto_backend.ll | ||
thinlto_backend_local_name_conflict1.ll | ||
thinlto_backend_local_name_conflict2.ll | ||
thinlto_expect1.proftext | ||
thinlto_expect2.proftext |