LLVM/project e3dade7flang/include/flang/Tools CrossToolHelpers.h, flang/lib/Frontend FrontendActions.cpp

[Flang][MLIR] Move setOpenMPIntegerWrapAround function into the OpenMP dialect (#217448)

- Fixed the linker error: `undefined reference
to'mlir::omp::IntegerWrapAroundAttr::get(mlir::MLIRContext*, bool)'`
mentioned in mentioned in
[PR#214165](https://github.com/llvm/llvm-project/pull/214165#issuecomment-5323821248)
by moving the `setOpenMPIntegerWrapAround(...)` helper function out of
`flang/Tools/CrossToolHelpers.h` and placed it into the OpenMP dialect
utilities.
DeltaFile
+0-6flang/include/flang/Tools/CrossToolHelpers.h
+6-0mlir/lib/Dialect/OpenMP/Utils/Utils.cpp
+3-0mlir/include/mlir/Dialect/OpenMP/Utils/Utils.h
+1-1flang/tools/bbc/bbc.cpp
+1-1flang/lib/Frontend/FrontendActions.cpp
+11-85 files

LLVM/project 5a5faaeclang/test/CodeGen/AArch64/neon load.c, libcxx/test/std/language.support/support.limits/support.limits.general version.version.compile.pass.cpp

Rebase and address comments

Created using spr 1.3.6-beta.1
DeltaFile
+0-6,246llvm/test/CodeGen/AMDGPU/NextUseAnalysis/test_ers_nested_loops.mir
+0-4,877llvm/test/CodeGen/AMDGPU/NextUseAnalysis/test_ers_emit_restore_in_loop_preheader2.mir
+1,217-1,125llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
+2,240-0clang/test/CodeGen/AArch64/neon/load.c
+853-1,375llvm/test/CodeGen/AMDGPU/splitkit-getsubrangeformask-phi-extend.ll
+2,058-2libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
+6,368-13,6252,254 files not shown
+87,773-53,8352,260 files

LLVM/project 12c0beaclang/test/CodeGen/AArch64/neon load.c, libcxx/test/std/language.support/support.limits/support.limits.general version.version.compile.pass.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.6-beta.1

[skip ci]
DeltaFile
+0-6,246llvm/test/CodeGen/AMDGPU/NextUseAnalysis/test_ers_nested_loops.mir
+0-4,877llvm/test/CodeGen/AMDGPU/NextUseAnalysis/test_ers_emit_restore_in_loop_preheader2.mir
+1,217-1,125llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
+2,240-0clang/test/CodeGen/AArch64/neon/load.c
+853-1,375llvm/test/CodeGen/AMDGPU/splitkit-getsubrangeformask-phi-extend.ll
+2,058-2libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
+6,368-13,6252,253 files not shown
+87,753-53,8182,259 files

LLVM/project 2904012llvm/test/Analysis/CostModel/AArch64 fminmax.ll fminmax-bf16.ll

[AArch64] Add bf16 min/max test coverage. NFC (#219123)
DeltaFile
+110-0llvm/test/Analysis/CostModel/AArch64/fminmax-bf16.ll
+0-34llvm/test/Analysis/CostModel/AArch64/fminmax.ll
+110-342 files

LLVM/project 5bc0be4clang-tools-extra/clang-tidy/bugprone InfiniteLoopCheck.cpp, clang-tools-extra/clang-tidy/llvm InvalidRegexPatternCheck.cpp

[clang-tidy][NFC] Fix couple clang-tidy violations (#219006)
DeltaFile
+9-11clang-tools-extra/clang-tidy/misc/StaticInitializationCycleCheck.cpp
+4-4clang-tools-extra/clang-tidy/llvm/InvalidRegexPatternCheck.cpp
+2-2clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
+2-2clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
+0-1clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
+17-205 files

LLVM/project 0aa4a1eclang-tools-extra/clang-tidy .clang-tidy

[clang-tidy][NFC] Disable new checks in .clang-tidy (#219002)

Disabled new checks form 23 release that I found not comply with current
style (yet).
DeltaFile
+13-6clang-tools-extra/clang-tidy/.clang-tidy
+13-61 files

LLVM/project 849e90ellvm/test/CodeGen/WebAssembly/GlobalISel/instructions global_value.ll load.ll

[WebAssembly][GlobalISel] Implement pointer and memory ops (v2) (#219072)

Implements a variety of pointer and memory related ops
(`G_GLOBAL_VALUE`, `G_PTR_ADD`, `G_LOAD`, `G_STORE`, etc.).

Split from #157161

-----

TODO (in future PR)

- Move `G_PTRTOINT`, `G_INTTOPTR`, `G_PTRMASK` selection to tablegen
(for all targets)
- MAYBE try to shuffle `G_GLOBAL_VALUE` selection elsewhere (e.g.
legalizer). Doesn't seem worth it?

-----

Reapplication of #206885 with some fixes and extensions.
DeltaFile
+236-0llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/store.ll
+220-0llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/sextload.mir
+208-0llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/zextload.mir
+202-3llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/icmp.ll
+198-0llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/load.ll
+127-0llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/global_value.ll
+1,191-316 files not shown
+2,051-3322 files

LLVM/project 8463b1fmlir/lib/Conversion/ArithToLLVM ArithToLLVM.cpp, mlir/lib/Dialect/LLVMIR/IR LLVMDialect.cpp

[mlir][LLVM] Verify that constant attribute and result types match

`llvm.mlir.constant` only checked that the kind of the value attribute suits
the kind of the result type, never that the types themselves agree. All of the
following verified:

  %0 = llvm.mlir.constant(1 : index) : i64
  %1 = llvm.mlir.constant(1 : i8) : i16
  %2 = llvm.mlir.constant(dense<1> : vector<4xi32>) : vector<4xi64>

Translation ignores the attribute type and uses the result type, so the
attribute type was effectively decorative for integers, and passes that read it
back could observe a type that has nothing to do with the value.

Require exact type equality for integer attributes and exact element type
equality for integer elements attributes, mirroring the `AllTypesMatch`
constraint `arith.constant` gets from ODS. The op cannot use that trait itself
because `value` is an `AnyAttr` that also holds `StringAttr` and `ArrayAttr`.
The element type check is also run on the scalable vector path, which

    [11 lines not shown]
DeltaFile
+56-0mlir/test/Dialect/LLVMIR/invalid.mlir
+42-11mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
+12-12mlir/test/Dialect/LLVMIR/roundtrip.mlir
+23-0mlir/test/Conversion/ArithToLLVM/constant-index-bitwidth.mlir
+11-4mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
+7-7mlir/test/Dialect/LLVMIR/inlining-alias-scopes.mlir
+151-3413 files not shown
+177-5619 files

LLVM/project 325a853flang/test/Fir convert-to-llvm-openmp-and-fir.fir, mlir/test/Conversion/ArithToLLVM arith-to-llvm.mlir

[mlir] Build llvm.mlir.constant attributes from the result type (#218607)

Many conversion patterns created `llvm.mlir.constant` with a value
attribute whose type does not match the result type. The most common
case was pairing an `index`-typed attribute with the converted index
type:

```
llvm.mlir.constant(1 : index) : i64
```

but there were also plain width and signedness mismatches, e.g. NVGPU's
`makeI64Const` built `i64` constants from `i32` attributes, and the NVVM
`fdiv` expansion used `ui32` attributes on `i32` values.

Translation to LLVM IR ignores the attribute type and uses the result
type, so the emitted IR was correct, but the attribute type is
meaningless in this state and anything that reads it back sees the wrong
type. Derive the attribute from the result type in every case; where the

    [21 lines not shown]
DeltaFile
+63-63mlir/test/Target/LLVMIR/llvmir.mlir
+58-58mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
+115-1mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
+55-55mlir/test/Conversion/MemRefToLLVM/expand-then-convert-to-llvm.mlir
+49-43flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
+45-45mlir/test/Conversion/MemRefToLLVM/convert-dynamic-memref-ops.mlir
+385-265108 files not shown
+1,157-891114 files

LLVM/project 1b5b734llvm/lib/CodeGen/GlobalISel LegalizerHelper.cpp CombinerHelper.cpp, llvm/test/CodeGen/AArch64 qmovn.ll saturating-vec-smull.ll

[AArch64][GlobalISel] Combine trunc_nsw(smin) to truncsat (#218605)

The midend of LLVM, in CVP, will often transform the canonical pattern
for a saturate trunc(smin(smax)) into trunc nsw (smin), as the range
analysis proves that the smax is outside of range. This adds a fold
back, converting the trunc with nsw + smin into G_TRUNC_SSAT_S.
https://alive2.llvm.org/ce/z/xfPEXE

Support for widening is added for truncsat nodes too, to prevent
fallbacks. They can be widened in the same way as a standard trunc using
buildPadVectorWithUndefElements.
DeltaFile
+37-75llvm/test/CodeGen/AArch64/saturating-vec-smull.ll
+19-8llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
+6-15llvm/test/CodeGen/AArch64/qmovn.ll
+4-1llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
+66-994 files

LLVM/project f4c2282libcxx/test/libcxx/transitive_includes cxx29.csv, libcxx/test/std/language.support/support.limits/support.limits.general functional.version.compile.pass.cpp memory.version.compile.pass.cpp

[libc++] Kickstart C++29 support (#215820)

Based on https://github.com/llvm/llvm-project/pull/203992: Clang adds
`c++2d` flag
Also based on
https://github.com/llvm/llvm-project/commit/00c97cbc570042a49d8b1906c1a6f39106a21259
libc++ C++26 support

1. Adds C++29 flag and macros (unlike Clang's `c++2d` uses the `c++29`
flag, supported also by GCC)
2. Updates FTM tests with C++29 details
3. Updates generated files

---------

Co-authored-by: Lucas Mellone <github.snugness349 at passinbox.com>
Co-authored-by: Hristo Hristov <zingam at outlook.com>
Co-authored-by: A. Jiang <de34 at live.cn>
DeltaFile
+2,058-2libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
+1,118-0libcxx/test/libcxx/transitive_includes/cxx29.csv
+222-2libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.compile.pass.cpp
+170-2libcxx/test/std/language.support/support.limits/support.limits.general/ranges.version.compile.pass.cpp
+137-2libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.compile.pass.cpp
+128-2libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.compile.pass.cpp
+3,833-1094 files not shown
+6,466-179100 files

LLVM/project 988fc92llvm/lib/Target/SPIRV SPIRVPostLegalizer.cpp SPIRVPreLegalizer.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+51-22llvm/lib/Target/SPIRV/SPIRVPreLegalizerCombiner.cpp
+33-6llvm/lib/Target/SPIRV/SPIRV.h
+38-0llvm/lib/Target/SPIRV/SPIRVAsmPrinter.h
+27-9llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
+36-0llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
+23-8llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
+208-453 files not shown
+245-559 files

LLVM/project 62fec6cllvm/lib/Target/SPIRV SPIRVPassRegistry.def SPIRVTargetMachine.cpp

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+51-22llvm/lib/Target/SPIRV/SPIRVPreLegalizerCombiner.cpp
+33-6llvm/lib/Target/SPIRV/SPIRV.h
+27-9llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
+23-8llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
+6-6llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
+8-0llvm/lib/Target/SPIRV/SPIRVPassRegistry.def
+148-511 files not shown
+151-557 files

LLVM/project 051c10fllvm/lib/Target/SPIRV SPIRVCodeGenPassBuilder.cpp SPIRVPassRegistry.def

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+51-22llvm/lib/Target/SPIRV/SPIRVPreLegalizerCombiner.cpp
+27-9llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
+23-4llvm/lib/Target/SPIRV/SPIRV.h
+4-4llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
+7-0llvm/lib/Target/SPIRV/SPIRVPassRegistry.def
+2-3llvm/lib/Target/SPIRV/SPIRVCodeGenPassBuilder.cpp
+114-426 files

LLVM/project 8496bd3llvm/lib/Target/SPIRV SPIRVPassRegistry.def SPIRVTargetMachine.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+51-22llvm/lib/Target/SPIRV/SPIRVPreLegalizerCombiner.cpp
+33-6llvm/lib/Target/SPIRV/SPIRV.h
+27-9llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
+23-8llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
+6-6llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
+8-0llvm/lib/Target/SPIRV/SPIRVPassRegistry.def
+148-511 files not shown
+151-557 files

LLVM/project 5e30069llvm/lib/Target/SPIRV SPIRVCodeGenPassBuilder.cpp SPIRVTargetMachine.cpp

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+27-9llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
+13-2llvm/lib/Target/SPIRV/SPIRV.h
+6-0llvm/lib/Target/SPIRV/SPIRVPassRegistry.def
+2-2llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
+1-1llvm/lib/Target/SPIRV/SPIRVCodeGenPassBuilder.cpp
+49-145 files

LLVM/project f533423llvm/lib/Target/SPIRV SPIRVCodeGenPassBuilder.cpp SPIRVPassRegistry.def

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+51-22llvm/lib/Target/SPIRV/SPIRVPreLegalizerCombiner.cpp
+27-9llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
+23-4llvm/lib/Target/SPIRV/SPIRV.h
+4-4llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
+7-0llvm/lib/Target/SPIRV/SPIRVPassRegistry.def
+2-3llvm/lib/Target/SPIRV/SPIRVCodeGenPassBuilder.cpp
+114-426 files

LLVM/project 35e2434llvm/lib/Target/SPIRV SPIRVCodeGenPassBuilder.cpp SPIRVTargetMachine.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+27-9llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
+13-2llvm/lib/Target/SPIRV/SPIRV.h
+6-0llvm/lib/Target/SPIRV/SPIRVPassRegistry.def
+2-2llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
+1-1llvm/lib/Target/SPIRV/SPIRVCodeGenPassBuilder.cpp
+49-145 files

LLVM/project b7dc8e3llvm/include/llvm/ADT FoldingSet.h, llvm/lib/Support FoldingSet.cpp

[ADT] Simplify FoldingSetIterator (NFC) (#219073)

This patch simplifies FoldingSetIterator by defining it entirely in the
header without the type-erased FoldingSetIteratorImpl.

Now that FoldingSet uses an open-addressing hash table, we just have to
march through the entire bucket array while skipping empty slots.  It
does not make sense to call out-of-line advance().

This also reduces the .text section size of a release build of bin/clang
by 647 bytes (from 185,968,635 to 185,967,988 bytes).

Assisted-by: Antigravity
DeltaFile
+35-32llvm/include/llvm/ADT/FoldingSet.h
+0-17llvm/lib/Support/FoldingSet.cpp
+35-492 files

LLVM/project 01aedf3clang/include/clang/AST DeclCXX.h, clang/lib/AST DeclFriend.cpp

[C++20] [Modules] Load friends for classes in ADL (#219094)

Close https://github.com/llvm/llvm-project/issues/218228

The root cause of the problem is the corresponding friend is not loaded
at the point of ADL.

This patch tries to fix this simply by loading the friends at the point
of ADL. Note that this may be best efficient if there are a lot of
friends. We just think it is rare. If it is really possible, we can
change the structure of friends from a list to a name lookup table.
DeltaFile
+95-0clang/test/Modules/pr218228.cppm
+11-0clang/lib/Sema/SemaLookup.cpp
+9-0clang/lib/AST/DeclFriend.cpp
+4-0clang/include/clang/AST/DeclCXX.h
+119-04 files

LLVM/project 64a4895orc-rt/include CMakeLists.txt, orc-rt/include/orc-rt/bedrock Session.h SimpleRemoteCA.h

[orc-rt] Add SimpleRemoteCA, a SimpleRemote protocol base (#219093)

SimpleRemoteCA implements the transport-independent parts of the
SimpleRemote protocol: opcode and header validation, setup-message
encoding, hang-up encoding and decoding, pending-call tracking, and
completion of controller calls onto the Session::ControllerAccess
contract. Subclasses own wire framing and byte transport entirely --
they de-frame incoming messages and hand the header fields to
handleMessage, and build outgoing ones from the Opcode set and the
encode helpers.

Header validation rejects fields the protocol requires to be unset: a
Result may not carry a handler tag, a hang-up may not carry a sequence
number or tag. It does not interpret fields the protocol requires to be
present -- in particular a Call's handler tag is passed through as
given, since the executor's job is to jump where the controller tells it
to.

A hang-up carries a serialized Error giving the reason the session is

    [6 lines not shown]
DeltaFile
+291-0orc-rt/test/unit/SimpleRemoteCATest.cpp
+147-0orc-rt/lib/bedrock/SimpleRemoteCA.cpp
+114-0orc-rt/include/orc-rt/bedrock/SimpleRemoteCA.h
+14-12orc-rt/include/orc-rt/bedrock/Session.h
+1-0orc-rt/lib/bedrock/CMakeLists.txt
+1-0orc-rt/include/CMakeLists.txt
+568-121 files not shown
+569-127 files

LLVM/project dc222c2clang/lib/Serialization ASTReader.cpp, clang/test/Modules merge-target-features.cpp

[NFC][clang][Serialization] Fix std::set_difference sorting mismatch in ASTReader (#219053)

Fixes a `std::set_difference` sorting violation in
`ASTReader::checkTargetOptions` that causes a crash when building clang
with `LLVM_ENABLE_EXPENSIVE_CHECKS` on libstdc++.

`accumulateFeaturesAsWritten` sorts target features using a custom
comparator that strips the `+`/`-` prefix (i.e. comparing `A.substr(1) <
B.substr(1)`). However, `std::set_difference` was being called with the
default `std::string::operator<` comparator, which does not match the
sorting order because `+` (ASCII 0x2B) is less than `-` (ASCII 0x2D).
For example, `["-cx16", "+sse2"]` is correctly sorted according to the
custom comparator, but incorrectly sorted according to the default
lexicographical comparator.

This patch fixes the issue by passing the same custom comparator used
for sorting to both `std::set_difference` calls.

Fixes #219046.
DeltaFile
+22-0clang/test/Modules/merge-target-features.cpp
+9-4clang/lib/Serialization/ASTReader.cpp
+31-42 files

LLVM/project 814a6fcllvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer/X86 reassoc-flattened-copyable-operand.ll phi-operand-gather-insert-point.ll

[SLP]Trim combined nodes only at their roots

Combined subnodes were added to the trimming worklist as independent
candidates, carrying their descendants' aggregated costs. Trimming such
a subnode on its own deleted operands still referenced by the combined
root, producing instructions that no longer dominated their uses.

Skip CombinedVectorize subnodes in subtree-cost aggregation and worklist
construction so only combined roots are evaluated as trim candidates.

Fixes #218974

Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/219095
DeltaFile
+125-0llvm/test/Transforms/SLPVectorizer/X86/phi-operand-gather-insert-point.ll
+10-12llvm/test/Transforms/SLPVectorizer/X86/reassoc-flattened-copyable-operand.ll
+10-1llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+145-133 files

LLVM/project 2ff334allvm/tools/llvm-profdata llvm-profdata.cpp

[lsan][llvm-profdata] Suppress leak check on abnormal exit (#219088)

This is common issue with lsan after exit().
`exit()` is no return, we can't expect that compiler
will preserve pointers to allocations done by callers.

Fixes new build bot report after upgrading base compiler to clang 23.1.0
https://lab.llvm.org/buildbot/#/builders/169/builds/26007
It probably has improved stack or registers re-use.
DeltaFile
+13-0llvm/tools/llvm-profdata/llvm-profdata.cpp
+13-01 files

LLVM/project b6016efflang/docs FlangDriver.md

[flang][docs] Mention --driver-mode=flang in FlangDriver.md (#207659)

This patch adds a description about the `--driver-mode=flang` flag.
The behavior will be ensured by #207658.

---------

Co-authored-by: Tarun Prabhu <tarunprabhu at gmail.com>
DeltaFile
+2-0flang/docs/FlangDriver.md
+2-01 files

LLVM/project c0bf6b1libc/startup/linux/x86_64 tls.cpp, utils/bazel/llvm-project-overlay/libc libc_build_rules.bzl

[libc][bazel] Add targets for startup objects

[libc][bazel] more startup object rules

[libc][bazel] Refactor internal_copts for libc_support_library
DeltaFile
+202-0utils/bazel/llvm-project-overlay/libc/startup/startup_rules.bzl
+104-0utils/bazel/llvm-project-overlay/libc/startup/linux/BUILD.bazel
+46-0utils/bazel/llvm-project-overlay/libc/startup/linux/x86_64/BUILD.bazel
+41-2utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl
+3-0utils/bazel/llvm-project-overlay/libc/startup/BUILD.bazel
+1-1libc/startup/linux/x86_64/tls.cpp
+397-31 files not shown
+398-37 files

LLVM/project ae34d72libc/src/signal/linux kill.cpp __restore.cpp, libc/src/stdio remove.h

[libc][bazel] Make a large swath of targets full-build compatible
DeltaFile
+1,245-48utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+1-2libc/src/signal/linux/__restore.cpp
+2-1libc/src/stdlib/atexit.cpp
+0-1libc/src/stdio/remove.h
+0-1libc/src/signal/linux/kill.cpp
+1,248-535 files

LLVM/project 28ef86futils/bazel MODULE.bazel extensions.bzl

[libc][bazel] Add a repo with linux kernel UAPI headers

This will be used to support libc's -DFULL_BUILD option, which uses `-nostdlibinc` and thus requires a copy of linux kernel headers.
DeltaFile
+74-0utils/bazel/linux_uapi.bzl
+5-1utils/bazel/MODULE.bazel.lock
+2-0utils/bazel/extensions.bzl
+1-0utils/bazel/MODULE.bazel
+82-14 files

LLVM/project 3a64a0futils/bazel/llvm-project-overlay/libc libc_configure_options.bzl BUILD.bazel

[libc][bazel] Allow building with -DLIBC_FULL_BUILD

This PR defines a flag `--@llvm-project//libc:build_mode` that configures LLVM-libc to build with full-build flags. This is only compatible with clang at the moment, since it relies on the `-nostdlibinc` flag.
DeltaFile
+39-4utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl
+22-5utils/bazel/llvm-project-overlay/libc/libc_configure_options.bzl
+22-5utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+83-143 files

LLVM/project 86440cccompiler-rt/lib/orc/tests CMakeLists.txt, compiler-rt/test/orc CMakeLists.txt

[compiler-rt][cmake] Change orc-rt target names (#216901)

When configured with `LLVM_ENABLE_RUNTIMES=compiler-rt;orc-rt`,
following two CMake errors occur.

```
CMake Error at llvm-project/llvm/cmake/modules/AddLLVM.cmake:2245 (add_custom_target):
  add_custom_target cannot create target "check-orc-rt" because another
  target with the same name already exists.  The existing target is a custom
  target created in source directory
  "llvm-project/compiler-rt/test/orc".  See documentation
  for policy CMP0002 for more details.
Call Stack (most recent call first):
  llvm-project/llvm/cmake/modules/AddLLVM.cmake:2326 (add_lit_target)
  llvm-project/orc-rt/test/CMakeLists.txt:24 (add_lit_testsuite)

CMake Error at llvm-project/orc-rt/test/unit/CMakeLists.txt:1 (add_custom_target):
  add_custom_target cannot create target "OrcRTUnitTests" because another
  target with the same name already exists.  The existing target is a custom

    [10 lines not shown]
DeltaFile
+3-3compiler-rt/lib/orc/tests/CMakeLists.txt
+1-1compiler-rt/test/orc/CMakeLists.txt
+4-42 files