1. [libcxx][test] Split more debug mode tests (details)
  2. [PowerPC] [Clang] Enable float128 feature on VSX targets (details)
  3. sanitizer_common: deduplicate CheckFailed (details)
  4. [COFF] Fix ARM and ARM64 REL32 relocations to be relative to the end of the relocation (details)
  5. tsan: fix syscall test on aarch64 (details)
  6. [mlir] Support alignment in LLVM dialect GlobalOp (details)
  7. [MLIR] Enable conversion from llvm::SMLoc to mlir::Location with OpAsmParser. (details)
  8. scudo: fix CheckFailed-related build breakage (details)
  9. [libc] Simplifies multi implementations (details)
Commit f8306647fa05b7bf84dff12d731d03abf53b45fe by kbessonova
[libcxx][test] Split more debug mode tests

Split a few more debug mode tests missed in D100592.

Differential Revision:
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_db1.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db8.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db4.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db1.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db5.pass.cpp
The file was addedlibcxx/test/libcxx/containers/sequences/vector/db_cindex_2.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db6.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_db4.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_db3.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/db_cindex.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_db2.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db7.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db3.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db2.pass.cpp
Commit febbe4b5a0ab0cb6f8ada6cd1ead4bb1f565bda8 by qiucofan
[PowerPC] [Clang] Enable float128 feature on VSX targets

Reviewed By: nemanjai, steven.zhang

Differential Revision:
The file was modifiedclang/lib/Basic/Targets/PPC.cpp
The file was modifiedclang/test/Driver/ppc-f128-support-check.c
Commit 2721e27c3aa34841db3fc0b4da25890288652d50 by dvyukov
sanitizer_common: deduplicate CheckFailed

We have some significant amount of duplication around
CheckFailed functionality. Each sanitizer copy-pasted
a chunk of code. Some got random improvements like
dealing with recursive failures better. These improvements
could benefit all sanitizers, but they don't.

Deduplicate CheckFailed logic across sanitizers and let each
sanitizer only print the current stack trace.
I've tried to dedup stack printing as well,
but this got me into cmake hell. So let's keep this part
duplicated in each sanitizer for now.

Reviewed By: vitalybuka

Differential Revision:
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_common.h
The file was modifiedcompiler-rt/lib/msan/msan.h
The file was modifiedcompiler-rt/lib/asan/asan_rtl.cpp
The file was modifiedcompiler-rt/lib/msan/msan.cpp
The file was modifiedcompiler-rt/test/msan/check-handler.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_termination.cpp
The file was modifiedcompiler-rt/lib/hwasan/hwasan.h
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_rtl.h
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_rtl_report.cpp
The file was modifiedcompiler-rt/lib/hwasan/hwasan.cpp
The file was modifiedcompiler-rt/lib/asan/asan_stack.h
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_rtl.cpp
The file was modifiedcompiler-rt/lib/memprof/memprof_stack.h
The file was modifiedcompiler-rt/lib/memprof/memprof_rtl.cpp
Commit 382c505d9cfca8adaec47aea2da7bbcbc00fc05c by martin
[COFF] Fix ARM and ARM64 REL32 relocations to be relative to the end of the relocation

This matches how they are defined on X86.

This should fix the relative lookup tables pass for COFF, allowing
it to be reenabled.

Differential Revision:
The file was modifiedllvm/test/MC/ARM/coff-relocations.s
The file was modifiedllvm/test/MC/AArch64/coff-relocations.s
The file was modifiedllvm/lib/MC/WinCOFFObjectWriter.cpp
Commit 1dc838717a294ed7bfd7d597d427886ce61df122 by dvyukov
tsan: fix syscall test on aarch64

Add missing includes and use SYS_pipe2 instead of SYS_pipe
as it's not present on some arches.

Differential Revision:
The file was modifiedcompiler-rt/test/tsan/Linux/syscall.h
Commit 9a0ea5994bdc477d77fd4d9f4eb5d34b1ac4184a by zinenko
[mlir] Support alignment in LLVM dialect GlobalOp

First step in adding alignment as an attribute to MLIR global definitions. Alignment can be specified for global objects in LLVM IR. It can also be specified as a named attribute in the LLVMIR dialect of MLIR. However, this attribute has no standing and is discarded during translation from MLIR to LLVM IR. This patch does two things: First, it adds the attribute to the syntax of the operation, and by doing this it also adds accessors and verifications. The syntax is "align=XX" (with XX being an integer), placed right after the value of the operation. Second, it allows transforming this operation to and from LLVM IR. It is checked whether the value is an integer power of 2.

Reviewed By: ftynse, mehdi_amini

Differential Revision:
The file was modifiedmlir/examples/toy/Ch6/mlir/LowerToLLVM.cpp
The file was modifiedmlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
The file was modifiedmlir/test/Target/LLVMIR/import.ll
The file was modifiedmlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
The file was modifiedmlir/test/Target/LLVMIR/llvmir.mlir
The file was modifiedmlir/lib/Target/LLVMIR/ModuleTranslation.cpp
The file was modifiedmlir/examples/toy/Ch7/mlir/LowerToLLVM.cpp
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
The file was modifiedmlir/lib/Conversion/GPUCommon/GPUOpsLowering.cpp
The file was modifiedmlir/test/Dialect/LLVMIR/global.mlir
The file was modifiedmlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
The file was modifiedmlir/test/Dialect/LLVMIR/invalid.mlir
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/
The file was modifiedmlir/lib/Conversion/SPIRVToLLVM/ConvertLaunchFuncToLLVMCalls.cpp
Commit 27b2bd76017f5b486b96ad782bfb28e1b28b5088 by zinenko
[MLIR] Enable conversion from llvm::SMLoc to mlir::Location with OpAsmParser.

DialectAsmParser already allows converting an llvm::SMLoc location to a
mlir::Location location. This commit adds the same functionality to OpAsmParser.
Implementation is copied from DialectAsmParser.

Reviewed By: rriddle

Differential Revision:
The file was modifiedmlir/lib/Parser/Parser.cpp
The file was modifiedmlir/include/mlir/IR/OpImplementation.h
Commit 8aa7f28497b6794ca659f1b729a6e8ce312c54e2 by dvyukov
scudo: fix CheckFailed-related build breakage

I was running:

$ ninja check-sanitizer check-msan check-asan \
  check-tsan check-lsan check-ubsan check-cfi \
  check-profile check-memprof check-xray check-hwasan

but missed check-scudo...

Differential Revision:
The file was modifiedcompiler-rt/lib/scudo/scudo_termination.cpp
Commit 6351993da72e298b3f79218e4f129a9bbde3e679 by gchatelet
[libc] Simplifies multi implementations

This is a roll forward of D101895 with two additional fixes:

Original Patch description:
> This is a follow up on D101524 which:
> - simplifies cpu features detection and usage,
> - flattens target dependent optimizations so it's obvious which implementations are generated,
> - provides an implementation targeting the host (march/mtune=native) for the mem* functions,
> - makes sure all implementations are unittested (provided the host can run them).

Additional fixes:
- Fix uninitialized ALL_CPU_FEATURES
- Use non pseudo microarch as it is only supported from Clang 12 on

Differential Revision:
The file was modifiedlibc/cmake/modules/LLVMLibCCheckCpuFeatures.cmake
The file was modifiedlibc/test/src/string/CMakeLists.txt
The file was modifiedlibc/src/string/CMakeLists.txt
The file was removedlibc/src/string/x86_64/CMakeLists.txt
The file was removedlibc/src/string/aarch64/CMakeLists.txt