Changes

Summary

  1. [libc++] Promote GCC 11 to mandatory CI (details)
  2. [DFSan] Handle landingpad inst explicitly as zero shadow. (details)
  3. [NFC][sanitizer] Remove calls to __asan_get_current_fake_stack (details)
  4. [FuncSpec] Use std::pow instead of operator^ (details)
  5. X86: balance the frame prologue and epilogue on Win64 (details)
  6. [Debug-Info] guard DW_LANG_C_plus_plus_14 under strict dwarf (details)
  7. [Driver] Delete -fsanitize-coverage-blocklist= in favor of -fsanitize-coverage-ignorelist= (details)
Commit 4f194d0db78f612233234a7db659384cd62709fb by Louis Dionne
[libc++] Promote GCC 11 to mandatory CI

Also, fix the last issue that prevented GCC 11 from passing the test
suite. Thanks to everyone else who fixed issues.

Differential Revision: https://reviews.llvm.org/D104315
The file was modifiedlibcxxabi/test/catch_member_function_pointer_02.pass.cpp
The file was modifiedlibcxx/utils/ci/Dockerfile
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_is_lock_free.pass.cpp
The file was modifiedlibcxx/utils/ci/buildkite-pipeline.yml
The file was modifiedlibcxx/utils/ci/run-buildbot
Commit af93157625ef26679883a17711b53aac8521306c by browneee
[DFSan] Handle landingpad inst explicitly as zero shadow.

Before this change, DFSan was relying fallback cases when getting origin
address.

Differential Revision: https://reviews.llvm.org/D104266
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/call.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
Commit c4992bf593a4fd2fd250c5ebe31aa9f26cc9ed40 by Vitaly Buka
[NFC][sanitizer] Remove calls to __asan_get_current_fake_stack

Unnecessary with -fsanitize-address-use-after-return=never.

for issue: https://github.com/google/sanitizers/issues/1394

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D104154
The file was modifiedcompiler-rt/test/asan/TestCases/Posix/stack-overflow.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/contiguous_container.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/longjmp.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/throw_catch.cpp
Commit 86906304d8cd7dcb4478283866b56ba52e1e224e by yedeng.yd
[FuncSpec] Use std::pow instead of operator^

The original implementation calculating UserBonus uses operator ^, which means XOR in C++
language.
At the first glance of reviewing, I thought it should be power, my bad.
It doesn't make sense to use XOR here. So I believe it should be a
carelessness as I made.

Test Plan: check-all

Reviewed By: SjoerdMeijer

Differential Revision: https://reviews.llvm.org/D104282
The file was modifiedllvm/test/Transforms/FunctionSpecialization/function-specialization3.ll
The file was modifiedllvm/test/Transforms/FunctionSpecialization/function-specialization-recursive.ll
The file was addedllvm/test/Transforms/FunctionSpecialization/function-specialization-loop.ll
The file was modifiedllvm/lib/Transforms/IPO/FunctionSpecialization.cpp
Commit 17bdc0ff6f2e71ae5d93ce52b2291f915055ccb6 by Saleem Abdulrasool
X86: balance the frame prologue and epilogue on Win64

This was broken in ba1509da7b89c850c89f0f98afbab375794cd3c8.  The Win64
frame would not perform the setup of the Swift async context parameter
but would tear down the setup in the epilogue resulting in crashes.
This ensures that we do the full setup when we do the tear down.
Although this is non-conforming to the Win64 calling convention, it
corrects the setup and exposes the actual issue that the change
introduced: incorrect frame setup.

Reviewed By: rnk

Differential Revision: https://reviews.llvm.org/D104246
The file was modifiedllvm/lib/Target/X86/X86FrameLowering.cpp
The file was addedllvm/test/CodeGen/X86/swift-async-win64.ll
The file was addedllvm/test/CodeGen/X86/swifttail-async-win64.ll
Commit 4590b406c02e4e6803d2644195dbb78bc09c25c7 by czhengsz
[Debug-Info] guard DW_LANG_C_plus_plus_14 under strict dwarf

Reviewed By: stuart

Differential Revision: https://reviews.llvm.org/D104291
The file was modifiedclang/test/CodeGenCXX/debug-info-programming-language.cpp
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
Commit 285dd08b56215840d721961add4a355b60d673a7 by i
[Driver] Delete -fsanitize-coverage-blocklist= in favor of -fsanitize-coverage-ignorelist=

We are settled with -fsanitize-coverage-ignorelist (D101832).
Just delete -fsanitize-coverage-blocklist which is also new.
The file was modifiedclang/docs/SanitizerCoverage.rst
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/docs/ClangCommandLineReference.rst