SuccessChanges

Summary

  1. [Clang] remove text extension from diag::err_drv_invalid_value_with_suggestion (details)
  2. Make clangd CompletionModel not depend on directory layout. (details)
  3. [lld-macho] Have --reproduce account for path rerooting (details)
  4. [lld-macho] Preliminary support for ARM_RELOC_BR24 (details)
  5. [hwasan] Fix missing synchronization in AllocThread. (details)
  6. [libomptarget] Initial documentation on amdgpu offload (details)
  7. [WebAssembly] Set alignment to 1 for SIMD memory intrinsics (details)
  8. [libc++] NFC: Remove stray semicolon in from-scratch config files (details)
  9. [libcxx] [ci] Add a Windows CI configuration for a statically linked libc++ (details)
  10. [lld-macho] Try to unbreak build (details)
  11. Add fuzzer for Rust demangler (details)
  12. [WebAssembly] Update narrowing builtin function operand types (details)
  13. [WebAssembly] Fix constness of pointer params to load intrinsics (details)
Commit aefbfbcbd776f5549b18cd6083d6408f661efacc by ndesaulniers
[Clang] remove text extension from diag::err_drv_invalid_value_with_suggestion

This hinders translations, as per:
https://clang.llvm.org/docs/InternalsManual.html#the-format-string

Reviewed By: MaskRay, xbolva00

Differential Revision: https://reviews.llvm.org/D101387
The file was modifiedclang/include/clang/Basic/DiagnosticDriverKinds.td
The file was modifiedclang/test/Driver/stack-protector-guard.c
The file was modifiedflang/test/Driver/fixed-line-length.f90
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedflang/lib/Frontend/CompilerInvocation.cpp
Commit 7907c46fe6195728fafd843b8c0fb19a3e68e9ad by harald
Make clangd CompletionModel not depend on directory layout.

The current code accounts for two possible layouts, but there is at
least a third supported layout: clang-tools-extra may also be checked
out as clang/tools/extra with the releases, which was not yet handled.
Rather than treating that as a special case, use the location of
CompletionModel.cmake to handle all three cases. This should address the
problems that prompted D96787 and the problems that prompted the
proposed revert D100625.

Reviewed By: usaxena95

Differential Revision: https://reviews.llvm.org/D101851
The file was modifiedclang-tools-extra/clangd/quality/CompletionModel.cmake
Commit 20f51ffe67d12ab72c917dc4b371b55c80321393 by jezng
[lld-macho] Have --reproduce account for path rerooting

We need to account for path rerooting when generating the response
file. We could either reroot the paths before generating the file, or pass
through the original filenames and change just the syslibroot. I've opted for
the latter, in order that the reproduction run more closely mirrors the
original.

We must also be careful *not* to make an absolute path relative if it is
shadowed by a rerooted path. See repro6.tar in reroot-path.s for
details.

I've moved the call to `createResponseFile()` after the initialization of
`config->systemLibraryRoots`, since it now needs to know what those roots are.

Reviewed By: #lld-macho, oontvoo

Differential Revision: https://reviews.llvm.org/D101224
The file was modifiedlld/MachO/Driver.cpp
The file was modifiedlld/MachO/DriverUtils.cpp
The file was modifiedlld/MachO/Driver.h
The file was modifiedlld/test/MachO/reroot-path.s
Commit 8806df4778349dac4e8744b9ae50f43b80eedda3 by jezng
[lld-macho] Preliminary support for ARM_RELOC_BR24

ARM_RELOC_BR24 is used for BL/BLX instructions from within ARM (i.e. not
Thumb) code. This diff just handles the basic case: branches from ARM to
ARM, or from ARM to Thumb where no shimming is required. (See comments
in ARM.cpp for why shims are required.)

Note: I will likely be deprioritizing ARM work for the near future to
focus on other parts of LLD. Apologies for the half-done state of this;
I'm just trying to wrap up what I've already worked on.

Reviewed By: #lld-macho, alexshap

Differential Revision: https://reviews.llvm.org/D101814
The file was addedlld/test/MachO/arm-branch-relocs.s
The file was modifiedlld/MachO/Arch/ARM.cpp
Commit 18959a6a094c6469fc2fd5cc167fda7cbe3f163b by eugenis
[hwasan] Fix missing synchronization in AllocThread.

The problem was introduced in D100348.

It's really hard to trigger the bug in a stress test - the race is just too
narrow - but the new checks in Thread::Init should at least provide usable
diagnostic if the problem ever returns.

Differential Revision: https://reviews.llvm.org/D101881
The file was modifiedcompiler-rt/lib/hwasan/hwasan_thread_list.h
The file was modifiedcompiler-rt/lib/hwasan/hwasan_thread.cpp
Commit 25fe17d3c1041de7e2dc5df865d7f65fd074f9a6 by jonathanchesterfield
[libomptarget] Initial documentation on amdgpu offload

[libomptarget] Initial documentation on amdgpu offload

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D101927
The file was modifiedopenmp/docs/SupportAndFAQ.rst
Commit 89333b35a7a909d29ae53fddcfb4792d87223b96 by tlively
[WebAssembly] Set alignment to 1 for SIMD memory intrinsics

The WebAssembly SIMD intrinsics in wasm_simd128.h generally try not to require
any particular alignment for memory operations to be maximally flexible. For
builtin memory access functions and their corresponding LLVM IR intrinsics,
there's no way to set the expected alignment, so the best we can do is set the
alignment to 1 in the backend. This change means that the alignment hints in the
emitted code will no longer be incorrect when users use the intrinsics to access
unaligned data.

Differential Revision: https://reviews.llvm.org/D101850
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
The file was modifiedllvm/test/CodeGen/WebAssembly/simd-load-zero-offset.ll
The file was modifiedllvm/test/CodeGen/WebAssembly/simd-load-lane-offset.ll
Commit 7fbc7bfdfddd85e12156556e3c074f6dcef865df by Louis Dionne
[libc++] NFC: Remove stray semicolon in from-scratch config files
The file was modifiedlibcxx/test/configs/libcxx-trunk-shared.cfg.in
The file was modifiedlibcxx/test/configs/libcxx-trunk-static.cfg.in
Commit 9b24ff9cd2efe1d8319af023ffb69efdaf4cd5ce by martin
[libcxx] [ci] Add a Windows CI configuration for a statically linked libc++

On Windows, static vs DLL linking affects details in quite a few
cases, so it's good to have coverage for both cases.

Testing with static linking also increases coverage for a number of
cases and individual checks that have had to be waived for the DLL
case, and allows testing libc++experimental, increasing the number
of test cases actually executed by 180 (176 new tests from
libc++experimental and 4 ones that are XFAIL windows-dll).

Also drop the "generic-" prefix from these configuration names, as
they're perhaps not what the "generic" prefix intended originally
in the other generic-posix configurations.

Differential Revision: https://reviews.llvm.org/D101565
The file was modifiedlibcxx/test/libcxx/experimental/memory/memory.resource.adaptor/memory.resource.adaptor.mem/db_deallocate.pass.cpp
The file was modifiedlibcxx/utils/ci/buildkite-pipeline.yml
The file was modifiedlibcxx/utils/ci/run-buildbot
Commit 75ba35130080f91494b0ceb90c0501b50787b1cc by jezng
[lld-macho] Try to unbreak build

Looks like the PointerUnion casting cares about const-ness...
The file was modifiedlld/MachO/Arch/ARM.cpp
Commit 0e7c2aeaa8c0fe25178f7fc4c61cd92321cdde76 by dblaikie
Add fuzzer for Rust demangler

Reviewed By: dblaikie

Differential Revision: https://reviews.llvm.org/D101823
The file was addedllvm/tools/llvm-rust-demangle-fuzzer/llvm-rust-demangle-fuzzer.cpp
The file was addedllvm/tools/llvm-rust-demangle-fuzzer/DummyDemanglerFuzzer.cpp
The file was addedllvm/tools/llvm-rust-demangle-fuzzer/CMakeLists.txt
Commit 627a52695537dd2bea068630887431febbf06856 by tlively
[WebAssembly] Update narrowing builtin function operand types

Make the inputs to all narrowing builtins signed, which is how they are
interpreted by the underlying instructions (only the result changes sign
between instructions).

Differential Revision: https://reviews.llvm.org/D101883
The file was modifiedclang/test/CodeGen/builtins-wasm.c
The file was modifiedclang/include/clang/Basic/BuiltinsWebAssembly.def
Commit 602f318cfdac999a8604f1588159326b1a1a1a23 by tlively
[WebAssembly] Fix constness of pointer params to load intrinsics

Update the SIMD builtin load functions to take pointers to const data and update
the intrinsics themselves to not cast away constness.

Differential Revision: https://reviews.llvm.org/D101884
The file was modifiedclang/lib/Headers/wasm_simd128.h
The file was modifiedclang/test/CodeGen/builtins-wasm.c
The file was modifiedclang/test/Headers/wasm.c
The file was modifiedclang/include/clang/Basic/BuiltinsWebAssembly.def