[APINotes] Support overloaded operators
This adds support for annotating C++ operators via API Notes. For instance:
```
Tags:
- Name: MyTag
Methods:
- Name: operator+
Availability: none
```
At the moment only operators that are declared as methods of C++ records can be annotated.
rdar://148534260
[AArch64][NFC] Extract a `LowerNTStore()` method (#176872)
Extracts nontermporal store lowering from `LowerSTORE` into its own
private method `LowerNTStore`. The refactoring improves overall code
structure (and prepares for later scaling of custom STNP lowering
logic).
[bazel] Improve building on/for Windows (#171761)
Few things going on here:
- I think we should be able to use the blake3 x86-64 asm on windows with
some slight adjustments (sorry it's still named *_unix.S, renaming
seemed like a bit bigger project)
- `genrule` is really evil because it bakes the path to the host bash
into the command, which fails spectacularly when running on a
non-windows remote executor. Swap to `write_file`/`run_binary` rules to
mitigate it
- The existing windows linkopts do not work correctly for clang in mingw
mode
With this set of changes (as well as another one that rewrites
`bundle_resources.py` into C) I am able to hermetically cross-build
clang/lld/etc from a windows host to a (mingw) windows target on a linux
executor, and use the resulting compilers to compile C binaries/tests
(see
https://github.com/dzbarsky/toolchains_llvm_bootstrapped/actions/runs/20121686105/job/57743214313?pr=1
and https://github.com/dzbarsky/toolchains_llvm_bootstrapped/pull/1)
[RISCV] Replace RISCVISD::CLMUL* with ISD::CLMUL*. (#177386)
This patch does the minimum to remove RISCVISD::CLMUL*. It does not
remove existing intrinsics.
There's some missed optimizations for i32 CLMULH/CLMULR on RV64, but
those may be generic issues.
I've put the test cases in the existing files so it's more obvious what
the missed optimizations are by comparing within the file.
[LLVM] Disable clang-format for TableGen files (#177002)
Clang-format is not very maintained for TableGen, and seems to make odd
choices that differ significantly from how humans write and read the
backend's tablegen.
For the moment, disable clang-format for TableGen files. This should
also apply when using `git clang-format`, which should help with newer
contributors who sometimes end up formatting td files by accident.
Revert "[AMDGPU][GlobalISel] Add RegBankLegalize support for G_MUL" (#177405)
Reverts llvm/llvm-project#177314
mul.ll test is failing expensive checks.
[flang][lowering] lowering assigned goto of allocatable variable (#175874)
towards [#173594](https://github.com/llvm/llvm-project/issues/173594)
This PR adds a lowering for `AssignedGoto`s that reference an
allocatable variable.
net/rsync: Reinstate rrsync by flavorizing
The previous update removed the rrsync script from binary packages built
with the default options. This replaces the PYTHON option with a python
flavor so there is a package available that contains rrsync.
PR: 286073
Reported by: Dan Langille <dvl at freebsd.org>