LLVM/project dcfcd3elibc/docs conf.py, libc/docs/dev building_docs.md

Fix trouble shooting definition list
DeltaFile
+6-9libc/docs/dev/building_docs.md
+2-0libc/docs/conf.py
+8-92 files

LLVM/project f5169f2libcxx/include unordered_set unordered_map, libcxx/test/std/containers/associative/multimap/multimap.cons iter_iter_comp_alloc.pass.cpp

[libc++] Enable missing allocator constructors in C++11 (#204845)

LWG2210 was a patch to N2554 (C++11) which added missing
allocator-extended constructors to various containers. When LWG2210 was
implemented, the constructors were gated with C++14. However, we
normally apply LWG issue resolutions as DRs.

This patch enables these constructors in C++11 mode too.

Fixes #204843

---------

Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Co-authored-by: A. Jiang <de34 at live.cn>
DeltaFile
+40-0libcxx/test/std/containers/associative/multimap/multimap.cons/iter_iter_comp_alloc.pass.cpp
+12-24libcxx/include/unordered_set
+18-18libcxx/include/unordered_map
+16-9libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/size.pass.cpp
+8-16libcxx/include/set
+17-7libcxx/test/std/containers/sequences/list/list.cons/size_type.pass.cpp
+111-7437 files not shown
+159-14443 files

LLVM/project be9bea7clang/include/clang/Basic BuiltinsAMDGPU.td, llvm/include/llvm/IR IntrinsicsAMDGPU.td

[AMDGPU] Guard more intrinsics with target features
DeltaFile
+1-51llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
+0-42llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+16-17llvm/lib/Target/AMDGPU/AMDGPU.td
+0-24llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+15-2llvm/include/llvm/IR/IntrinsicsAMDGPU.td
+4-4clang/include/clang/Basic/BuiltinsAMDGPU.td
+36-14024 files not shown
+82-17630 files

LLVM/project b2b67ballvm/lib/CodeGen/GlobalISel IRTranslator.cpp, llvm/test/CodeGen/AMDGPU llvm.amdgcn.permlane16.swap.ll

[GISel] Don't return false when an intrinsic is not supported (#208567)

This will abort immediately by default, which is not ideal.
DeltaFile
+0-2llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
+1-1llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane16.swap.ll
+1-32 files

LLVM/project 880f3d0mlir/include/mlir/Dialect/XeGPU/Transforms XeGPULayoutImpl.h, mlir/lib/Dialect/XeGPU/Transforms XeGPULayoutImpl.cpp XeGPUPropagateLayout.cpp

[mlir][xegpu] Support subgroup layout assignment for scatter stores (#205955)

Add getStoreSubgroupLayouts() to derive the subgroup (sg_layout/sg_data)
anchor layout for store_scatter and store_matrix. It factorizes numSg
into the most balanced sg_layout that divides the workgroup tile with
sg_data a multiple of inst_data (lane_layout * lane_data).

Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>
DeltaFile
+32-25mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
+47-0mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir
+24-2mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
+4-0mlir/include/mlir/Dialect/XeGPU/Transforms/XeGPULayoutImpl.h
+107-274 files

LLVM/project 27d83e2clang/lib/Basic/Targets PPC.cpp PPC.h, clang/test/Sema attr-target.c

[AIX] diagnose invalid feature strings on the target attribute (#208059)

Currently, Sema calls `getTargetInfo().isValidFeatureName(S)` to
validate string inputs on the `target` attribute. `PPCTargetInfo`
doesn't override the function and the base class implementation returns
true unconditionally. This results in the FE accepting invalid feature
strings on `target` attribute, and generates invalid target-feature
values in the IR.

Co-authored-by: Wael Yehia <wyehia at ca.ibm.com>
DeltaFile
+8-0clang/lib/Basic/Targets/PPC.cpp
+7-0llvm/lib/TargetParser/PPCTargetParser.cpp
+2-2clang/test/Sema/attr-target.c
+3-0llvm/include/llvm/TargetParser/TargetParser.h
+2-0clang/lib/Basic/Targets/PPC.h
+1-0llvm/include/llvm/TargetParser/PPCTargetParser.h
+23-26 files

LLVM/project f40ad8fclang/docs AMDGPUSupport.rst, clang/include/clang/Basic BuiltinsAMDGPUDocs.td BuiltinsAMDGPU.td

[Clang][AMDGPU] Add __builtin_amdgcn_s_buffer_load_<T> (#203352)

Expose `llvm.amdgcn.s.buffer.load` intrinsic overloads for OpenCL via
`__builtin_amdgcn_s_buffer_load_*` builtins.

Function prototypes:
```
  <return-type>
  __builtin_amdgcn_s_buffer_load_<suffix>(
      v4i32 rsrc,  // 4-dword buffer resource in SGPRs
      int offset,  // byte offset from the base of the buffer
      int aux);    // cache-policy, control flags. Must be compile-time const.
```
Where:
```
  return-type       suffix
  ----------------  ------
  char              i8
  unsigned char     u8

    [25 lines not shown]
DeltaFile
+286-0clang/test/CodeGenOpenCL/builtins-amdgcn-s-buffer-load.cl
+125-0clang/test/SemaOpenCL/builtins-amdgcn-s-buffer-load-error.cl
+51-0clang/include/clang/Basic/BuiltinsAMDGPUDocs.td
+40-0clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
+30-0clang/include/clang/Basic/BuiltinsAMDGPU.td
+7-0clang/docs/AMDGPUSupport.rst
+539-06 files

LLVM/project cd6d0adclang/docs ReleaseNotes.md, clang/lib/Sema SemaTemplate.cpp

[clang] fix typo-correction for template name lookup

Only consider candidates which are templates.

Disable spell checking for a DR test in order to not introduce noise,
as spell checking is never helpful in those.

Fixes #207498
DeltaFile
+19-1clang/lib/Sema/SemaTemplate.cpp
+7-7clang/test/CXX/drs/cwg5xx.cpp
+11-0clang/test/SemaCXX/typo-correction.cpp
+1-0clang/docs/ReleaseNotes.md
+38-84 files

LLVM/project 09ad7f1llvm/utils/gn/secondary/clang/include/clang/Basic BUILD.gn, llvm/utils/gn/secondary/clang/lib/Basic BUILD.gn

[gn build] Port commits (#208584)

0f9f5a2aba97
a1fcdd1a7a69
c0ddc3c5ce0e
cfa5d6f59db9
DeltaFile
+4-0llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
+1-0llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
+1-0llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
+1-0llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/SourceTransformation/BUILD.gn
+1-0llvm/utils/gn/secondary/clang/unittests/ScalableStaticAnalysis/BUILD.gn
+1-0llvm/utils/gn/secondary/llvm/lib/ABI/BUILD.gn
+9-01 files not shown
+10-07 files

LLVM/project 1eb67aalibc/config/baremetal config.json

[libc] Disable baremetal modular printf (#208576)

This reverts commit a14d084bbb1a7261d8a71c56120159abb6af330b.
Though the modular printf works as intented, we noticed a few challenges
using this feature. Without diagnostic help it is difficult to
understand which "modules" got linked in and why. Disabling this to be
the default setting until this is sorted.
DeltaFile
+3-6libc/config/baremetal/config.json
+3-61 files

LLVM/project 2c04b33llvm/docs conf.py LibFuzzer.md, llvm/docs/_static custom.css copybutton.js

[Docs] Migrate LLVM docs to furo (#184440)

Implements the proposal at
https://discourse.llvm.org/t/rfc-update-llvm-docs-to-furo-theme/90053

Furo output at https://nigham.github.io/llvm_docs_furo/LangRef.html

- Switched theme to Furo
- Removed `:content` directives from RSTs, since Furo always has a TOC
on the side.

Credits for various pieces of feedback and improvements: @Pierre-vh
@aengelke @slinder1 @jhuber6 @fmayer @llvm/infrastructure-area-team
@petrhosek @rnk @boomanaiden154 (see discussions in the RFC)
DeltaFile
+62-0llvm/docs/_static/custom.css
+56-0llvm/docs/_static/copybutton.js
+39-0llvm/docs/_static/copybutton.css
+16-15llvm/docs/conf.py
+4-16llvm/docs/LibFuzzer.md
+0-16llvm/docs/ReleaseProcess.rst
+177-47154 files not shown
+194-553160 files

LLVM/project e2bd9ceoffload/ci openmp-offload-amdgpu-libc-runtime.py openmp-offload-amdgpu-runtime.py, offload/cmake/caches FlangOffload.cmake AMDGPULibcBot.cmake

Revert "[Offload][CI][AMDGPU] Update build scripts for updated triple" (#208583)

Reverts llvm/llvm-project#208568

It breaks bots.
DeltaFile
+5-5offload/cmake/caches/FlangOffload.cmake
+4-4offload/ci/openmp-offload-amdgpu-libc-runtime.py
+4-4offload/cmake/caches/AMDGPULibcBot.cmake
+3-3offload/cmake/caches/Offload.cmake
+2-2offload/ci/openmp-offload-amdgpu-runtime.py
+2-2offload/ci/openmp-offload-amdgpu-clang-flang.py
+20-201 files not shown
+22-227 files

LLVM/project 3a3d2cbmlir/lib/Dialect/XeGPU/IR XeGPUDialect.cpp, mlir/test/Dialect/XeGPU propagate-layout-inst-data.mlir propagate-layout-subgroup.mlir

[mlir][xegpu] Fix expandDim distribution for shape_cast layout inference (#205987)

The expanded dims of a shape_cast collapse are row-major (innermost is
fastest-varying), so sg_layout/lane_layout must be distributed
inner-to-outer rather than outer-to-inner, and jointly with the data
component: distribute sg_data/lane_data first, then stride
sg_layout/lane_layout over the per-dim leftover.

Example — shape_cast [8,32,32] -> [256,32] (consumer lane_layout=[8,4],
lane_data=[2,1], order=[0,1]),
  inferred source layout:
before: inst_data=[8,2,4], lane_layout=[8,1,4], lane_data=[1,2,1],
order=[1,0,2] # lanes on slow dim
after: inst_data=[1,16,4], lane_layout=[1,8,4], lane_data=[1,2,1],
order=[1,0,2] # lanes wrap to fast dim

This also fixes wrap-around, e.g. [2,16]->[32] with sg_layout=[4],
sg_data=[4] → sg_layout=[1,4], sg_data=[1,4].


    [2 lines not shown]
DeltaFile
+57-81mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
+28-37mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
+18-1mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir
+1-1mlir/test/Dialect/XeGPU/propagate-layout.mlir
+104-1204 files

LLVM/project 9cfb4b6clang/lib/CodeGen CGExprScalar.cpp, clang/lib/Parse ParseOpenMP.cpp

Fix review comments
DeltaFile
+17-0clang/lib/Sema/SemaOpenMP.cpp
+10-6clang/lib/Parse/ParseOpenMP.cpp
+0-1clang/lib/CodeGen/CGExprScalar.cpp
+27-73 files

LLVM/project 3145761flang/lib/Optimizer/Builder CUDAIntrinsicCall.cpp, flang/test/Lower/CUDA cuda-device-proc.cuf

[flang][cuda] Fix atomicCAS to return the old value (#208558)

atomicCAS returned cmpxchg's success flag instead of the old value,
breaking spinlock idioms. Extract element 0 (bitcast back for floats).
DeltaFile
+7-3flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
+4-4flang/test/Lower/CUDA/cuda-device-proc.cuf
+11-72 files

LLVM/project 80d57d1llvm/lib/Transforms/IPO AttributorAttributes.cpp Attributor.cpp, llvm/test/Transforms/Attributor undefined_behavior.ll

[Attributor] Add remarks when UB is optimized to unreachable (#207864)

These often bite LTO users in surprising and hard-to-debug ways. Adding
remarks to give at least a small bread-crumb as to 'why' we're
optimizing out chunks of code.
DeltaFile
+82-16llvm/lib/Transforms/IPO/AttributorAttributes.cpp
+54-0llvm/test/Transforms/Attributor/undefined_behavior.ll
+8-2llvm/lib/Transforms/IPO/Attributor.cpp
+144-183 files

LLVM/project 9cfa768offload/ci openmp-offload-amdgpu-libc-runtime.py openmp-offload-amdgpu-clang-flang.py, offload/cmake/caches FlangOffload.cmake AMDGPULibcBot.cmake

[Offload][CI][AMDGPU] Update build scripts for updated triple (#208568)

As new triple is introduced
https://github.com/llvm/llvm-project/pull/206480, updated the build
scripts accordingly.
DeltaFile
+5-5offload/cmake/caches/FlangOffload.cmake
+4-4offload/ci/openmp-offload-amdgpu-libc-runtime.py
+4-4offload/cmake/caches/AMDGPULibcBot.cmake
+3-3offload/cmake/caches/Offload.cmake
+2-2offload/ci/openmp-offload-amdgpu-clang-flang.py
+2-2offload/cmake/caches/AMDGPUBot.cmake
+20-201 files not shown
+22-227 files

LLVM/project 9dabe38mlir/lib/Conversion/VectorToXeGPU VectorToXeGPU.cpp, mlir/test/Conversion/VectorToXeGPU transfer-read-to-xegpu.mlir transfer-write-to-xegpu.mlir

[mlir][xegpu] Fix crash on 0D vector in vector-to-xegpu transfer lowering (#205812)

`transferPreconditions` accepted rank-0 vectors, which then reached
`computeOffsets` and indexed an empty `SmallVector` (`broadcasted[0]`),
asserting `idx < size()` and crashing. For example:

```mlir
vector.transfer_write %arg0, %arg1[%1] : vector<f32>, memref<3xf32>
```

This is valid IR (the verifier accepts it; 0D vector transfers are part
of the vector dialect spec), so the conversion pass should not crash on
it.

Bail out via `notifyMatchFailure` for 0D vectors in the shared
`transferPreconditions`, so both `transfer_read` and `transfer_write`
are left unconverted instead of crashing. This matches how the core
vector lowering already treats 0D transfers as an unsupported corner
case (see `mlir/lib/Dialect/Vector/Transforms/LowerVectorTransfer.cpp`).

    [3 lines not shown]
DeltaFile
+19-1mlir/test/Conversion/VectorToXeGPU/transfer-read-to-xegpu.mlir
+17-0mlir/test/Conversion/VectorToXeGPU/transfer-write-to-xegpu.mlir
+2-0mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
+38-13 files

LLVM/project a5d6462clang/lib/ScalableStaticAnalysis/Analyses/PinnedPointers PinnedPointers.cpp, clang/test/Analysis/Scalable/PinnedPointers pinned-pointers.cpp

[SSAF][PinnedPointers] Add pointer parameters of 'main' as pinned pointers

Similar to some pointer entities of operator new/delete overload
functions, pointer type parameters of the main function shall also
retain its type during clang-reforge transformation.

rdar://179151882
DeltaFile
+27-0clang/unittests/ScalableStaticAnalysis/Analyses/PinnedPointers/PinnedPointersExtractorTest.cpp
+8-0clang/test/Analysis/Scalable/PinnedPointers/pinned-pointers.cpp
+8-0clang/lib/ScalableStaticAnalysis/Analyses/PinnedPointers/PinnedPointers.cpp
+43-03 files

LLVM/project d776249clang/include/clang/ScalableStaticAnalysis/Analyses/OperatorNewDelete OperatorNewDeletePointers.h, clang/include/clang/ScalableStaticAnalysis/Analyses/PinnedPointers PinnedPointers.h

[SSAF][NFC] Rename operator new/delete pointers analysis to pinned pointers

Other pointer entities, such as the pointer parameters of the main
function, must also retain their type during the clang-reforge
transformation. Since they are extracted and processed similarly,
combining them into a single analysis simplifies maintenance.
DeltaFile
+260-0clang/unittests/ScalableStaticAnalysis/Analyses/PinnedPointers/PinnedPointersExtractorTest.cpp
+0-260clang/unittests/ScalableStaticAnalysis/Analyses/OperatorNewDelete/OperatorNewDeletePointersExtractorTest.cpp
+0-258clang/lib/ScalableStaticAnalysis/Analyses/OperatorNewDelete/OperatorNewDeletePointers.cpp
+254-0clang/lib/ScalableStaticAnalysis/Analyses/PinnedPointers/PinnedPointers.cpp
+0-79clang/include/clang/ScalableStaticAnalysis/Analyses/OperatorNewDelete/OperatorNewDeletePointers.h
+76-0clang/include/clang/ScalableStaticAnalysis/Analyses/PinnedPointers/PinnedPointers.h
+590-59721 files not shown
+884-89127 files

LLVM/project b0627c0clang/include/clang/Basic DiagnosticSemaKinds.td, clang/lib/Sema SemaDecl.cpp

[HLSL] Reject unbounded resource array and noinline function resource parameters (#208111)

Fixes #180808.

This issue involved two bugs:
- `noinline` functions accepted resource parameters in the frontend,
which crashed the backend since valid DXIL cannot be generated for
resources passed across a function call. This change adds a new check in
`SemaDecl.cpp` that rejects resource parameters on `noinline` functions,
as well as a new `resource_params_noinline.hlsl` test.
- The check for incomplete resource array parameters queried the array's
element type to decide if it was a resource. When the parameter was the
first use of the resource type, the element was still incomplete and
wouldn't register as a resource, so the check would be skipped and the
compiler would later crash. This change fixes the check to now force
element completion with `isCompleteType` before querying the type, and
updates `unbounded_resource_arrays.hlsl` to test this.

This change also fixes the `unbounded_resource_arrays.hlsl` test in

    [4 lines not shown]
DeltaFile
+29-21clang/test/SemaHLSL/Resources/unbounded_resource_arrays.hlsl
+30-5clang/lib/Sema/SemaDecl.cpp
+20-0clang/test/SemaHLSL/Resources/resource_params_noinline.hlsl
+2-0clang/include/clang/Basic/DiagnosticSemaKinds.td
+81-264 files

LLVM/project 5006e14llvm/lib/MC ELFObjectWriter.cpp MachObjectWriter.cpp, llvm/test/MC/ELF size-expression-must-be-absolute.s

MC: Start some error messages with a lowercase

Also add a missing test for one of them.
DeltaFile
+6-0llvm/test/MC/ELF/size-expression-must-be-absolute.s
+1-1llvm/lib/MC/ELFObjectWriter.cpp
+1-1llvm/lib/MC/MachObjectWriter.cpp
+1-1llvm/test/MC/X86/check-end-of-data-region.s
+9-34 files

LLVM/project 0538275lldb/source/Target Target.cpp

[lldb] Don't add the same module to a target twice (#208472)

`Target::GetOrCreateModule` uses `Append`, so a module already in the
target could be added again. Then `RemoveModule` dropped only one,
keeping the module (and its memory-mapped file) alive.
On Windows that mapped file can't be deleted, causing
`TestReplaceDLL.py` to fail with `LLDB_USE_LLDB_SERVER=1`.

This patch uses `AppendIfNeeded` instead.

rdar://181797592
DeltaFile
+4-2lldb/source/Target/Target.cpp
+4-21 files

LLVM/project 3bdf536lldb/source/Plugins/SymbolFile/DWARF DWARFASTParserClang.cpp, lldb/unittests/SymbolFile/DWARF DWARFASTParserClangTests.cpp CMakeLists.txt

[lldb] Use `llvm::APInt` for `VariantMember` Discriminants (#188487)

resolves #177812 

It currently uses a `uint32_t` even though Rust can output 64- and
128-bit discriminants. This became a more obvious issue when Rust
started niche-optimizing based on the capacity of strings (which are
`NoHighBit` values, guaranteed to be less than `u64::MAX / 2`), rather
than the `NonNull` heap pointer. With this optimization, the `None`
variant of strings is 9223372036854775808, which LLDB truncates to 0.
This means whenever the capacity is 0 (e.g. `Some(String::new())`, LLDB
will mistakenly read it as the `None` variant. Additionally, when trying
to determine the `None` variant, lldb will read the discr from memory
correctly (9223372036854775808), and the visualizer scripts will compare
that to the value in the variant name (`$variant$0`), see that it
doesn't match, and incorrectly decides that it must not be the `None`
variant.

This patch simply swaps the `uint32_t` with an `llvm::APInt`. 

    [104 lines not shown]
DeltaFile
+871-0lldb/unittests/SymbolFile/DWARF/Inputs/DW_TAG_variant_rust-test.yaml
+38-6lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
+34-2lldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
+2-1lldb/unittests/SymbolFile/DWARF/CMakeLists.txt
+945-94 files

LLVM/project a1fcdd1clang/include/clang/ScalableStaticAnalysis/SourceTransformation SARIFTransformationReportFormat.h, clang/lib/ScalableStaticAnalysis/SourceTransformation SARIFTransformationReportFormat.cpp CMakeLists.txt

[clang][ssaf] Add SARIF transformation-report format (#208327)

Adds the built-in `TransformationReportFormat`, registered under the
file extension `sarif`. The writer drives clang's existing
`SarifDocumentWriter` (`clang/Basic/Sarif.h`) to produce a SARIF 2.1.0
JSON document. The tool driver name is `clang-ssaf`; the long `fullName`
carries the transformation's name.

Token-range `CharSourceRange`s are canonicalized to char ranges via
`clang::Lexer::getAsCharRange` before being attached to results; invalid
ranges (including default-constructed ones) are treated as "no location"
— the writer omits the result's `locations` key rather than fabricating
one. Source edits are not embedded in the report; the writer never emits
a `fix` or `fixes` key.

Anchored via `SSAFSARIFTransformationReportFormatAnchorSource` so static
builds keep the registration.

Assisted-By: Claude Opus 4.7
DeltaFile
+185-0clang/unittests/ScalableStaticAnalysis/SourceTransformation/SARIFFormatTest.cpp
+56-0clang/lib/ScalableStaticAnalysis/SourceTransformation/SARIFTransformationReportFormat.cpp
+50-0clang/include/clang/ScalableStaticAnalysis/SourceTransformation/SARIFTransformationReportFormat.h
+1-0clang/lib/ScalableStaticAnalysis/SourceTransformation/CMakeLists.txt
+1-0clang/unittests/ScalableStaticAnalysis/CMakeLists.txt
+293-05 files

LLVM/project 7ef8194llvm/lib/Transforms/Scalar Reassociate.cpp

[Reassociate] Compute value ranks iteratively (NFC) (#204952)

ReassociatePass::getRank recursively walks operand def-use chains before
memoizing ranks. For a very deep acyclic chain whose tail feeds a
reassociable operation, this can recurse once per chain element and
overflow the native stack.

Compute ranks with an explicit post-order worklist instead. The worklist
preserves the existing rank calculation and memoization behavior while
bounding native stack use.

Co-authored-by: Justin Fargnoli <jfargnoli at nvidia.com>
DeltaFile
+52-26llvm/lib/Transforms/Scalar/Reassociate.cpp
+52-261 files

LLVM/project aa6db49lldb/include/lldb/DataFormatters TypeCategory.h, lldb/source/Commands CommandObjectType.cpp

[lldb] Tighten interface for TypeCategoryImpl::AnyMatches (#208321)

The last 2 parameters are never actually used by any caller so they can
be removed. `only_enabled` defaults to `true` but all callers explicitly
set this to false. I removed that and rewrote the body to assume it will
always be false.
DeltaFile
+1-22lldb/source/DataFormatters/TypeCategory.cpp
+2-4lldb/source/Commands/CommandObjectType.cpp
+1-4lldb/include/lldb/DataFormatters/TypeCategory.h
+4-303 files

LLVM/project 87be708clang/include/clang/Basic BuiltinsAMDGPU.td, llvm/include/llvm/IR IntrinsicsAMDGPU.td

[AMDGPU] Guard more intrinsics with target features
DeltaFile
+1-51llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
+0-42llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+16-17llvm/lib/Target/AMDGPU/AMDGPU.td
+0-24llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+15-2llvm/include/llvm/IR/IntrinsicsAMDGPU.td
+4-4clang/include/clang/Basic/BuiltinsAMDGPU.td
+36-14024 files not shown
+82-17630 files

LLVM/project 5b21ec3llvm/benchmarks writeToOutputInParallel.cpp CMakeLists.txt, llvm/lib/Support/Unix Signals.inc

[Support] Optimize signal handling file removal code (#173586)

clangd/clangd#1787 describes how LLVM's code for removing partially
written files when taking a fatal signal is slower than it should be.
This code was substantially rewritten by JF Bastien in
aa1333a91f8d8a060bcf5 to make it (more) signal-safe.

As written in 2018, the logic always allocates a new node for every file
we attempt to protect, and those nodes are added to a global singly
linked list and never removed. If you open a lot of output files,
suddenly output file opening becomes O(n^2), which is what happened
during clangd indexing.

Removing files on signals in a multi-threaded environment is really
complicated! We can use locks to synchronize between threads that are
writing to the list, but we cannot use locks to synchronize against
re-entrant signals, and we don't have any great tools for masking or
delaying things like SIGTERM. This makes it difficult to assert that we
have the one and only reference to a node, even after removing it from

    [18 lines not shown]
DeltaFile
+113-0llvm/benchmarks/writeToOutputInParallel.cpp
+51-25llvm/lib/Support/Unix/Signals.inc
+1-0llvm/benchmarks/CMakeLists.txt
+165-253 files

LLVM/project fdde3c0clang/test/SemaTemplate concepts-out-of-line-def.cpp

[Sema] Properly space namespace comments (#208561)

// namespace instead of //namespace.

This is consistent with the LLVM coding standards. We took focus on this
specific case as it was tripping up some of our internal tooling.
DeltaFile
+2-2clang/test/SemaTemplate/concepts-out-of-line-def.cpp
+2-21 files