LLVM/project c295aabclang/include/clang/Basic BuiltinsAMDGPUDocs.td BuiltinsAMDGPU.td, clang/test/SemaHIP amdgpu-av-load-store.hip

add docs for the builtins; split the target test; add a host/device test
DeltaFile
+29-0clang/include/clang/Basic/BuiltinsAMDGPUDocs.td
+12-14clang/test/SemaOpenCL/builtins-amdgcn-global-load-store-target-error.cl
+20-0clang/test/SemaHIP/amdgpu-av-load-store.hip
+8-2clang/include/clang/Basic/BuiltinsAMDGPU.td
+69-164 files

LLVM/project ad9e5bfllvm/runtimes CMakeLists.txt

[Offload] Forward LIBOMPTARGET_ cmake options to offload (#199906)

Add LIBOMPTARGET for offload so LIBOMPTARGET_* options are forwarded.
Note that the LIBOMPTARGET_* prefix was inherited from OpenMP's CMake
setup.
DeltaFile
+6-1llvm/runtimes/CMakeLists.txt
+6-11 files

LLVM/project 67b3b87llvm/lib/CodeGen/GlobalISel CSEMIRBuilder.cpp, llvm/test/CodeGen/AArch64/GlobalISel select-splat-vector.ll

[LLVM][GlobalISel] Make CSEMIRBuilder::buildFConstant scalable vector aware. (#200386)
DeltaFile
+16-0llvm/test/CodeGen/AArch64/GlobalISel/select-splat-vector.ll
+3-1llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
+19-12 files

LLVM/project 7139d0bclang/include/clang/Basic arm_neon.td, clang/lib/CodeGen/TargetBuiltins ARM.cpp

[AArch64] Add intrinsic support for Fdot instr. (#189987)

This patch adds intrinsics for new NEON Fdot instruction variants. The
implementation is based on the
[proposal](https://github.com/ARM-software/acle/pull/428) and adds these
ACLE builtins:

```
float32x2_t vdot_f32_f16(float32x2_t r, float16x4_t a, float16x4_t b);
float32x4_t vdotq_f32_f16(float32x4_t r, float16x8_t a, float16x8_t b);

float32x2_t vdot_lane_f32_f16(float32x2_t r, float16x4_t a, float16x4_t b, const int lane);
float32x4_t vdotq_laneq_f32_f16(float32x4_t r, float16x8_t a, float16x8_t b, const int lane);
float32x2_t vdot_laneq_f32_f16(float32x2_t r, float16x4_t a, float16x8_t b, const int lane);
float32x4_t vdotq_lane_f32_f16(float32x4_t r, float16x8_t a, float16x4_t b, const int lane);
```
DeltaFile
+112-0clang/test/CodeGen/AArch64/f16f32dot-intrinsics.c
+62-0llvm/test/CodeGen/AArch64/aarch64-f16f32dot-intrinsics.ll
+28-0clang/lib/CodeGen/TargetBuiltins/ARM.cpp
+23-1clang/test/Sema/aarch64-neon-immediate-ranges/dotprod.c
+19-0llvm/lib/Target/AArch64/AArch64InstrFormats.td
+8-0clang/include/clang/Basic/arm_neon.td
+252-11 files not shown
+253-17 files

LLVM/project 3191c78llvm/lib/Target/SPIRV SPIRVAsmPrinter.cpp, llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_inline_assembly module_asm_unsupported.ll

[SPIR-V] Reject module-level inline assembly with a diagnostic (#199992)

Module level inline asm is unsupported, even with extension
DeltaFile
+15-0llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_inline_assembly/module_asm_unsupported.ll
+6-0llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
+21-02 files

LLVM/project 78cf6cdclang/lib/StaticAnalyzer/Core ExprEngine.cpp ExprEngineCallAndReturn.cpp

[NFC][analyzer] Simplify ExprEngine::Visit, eliminate NodeBuilders (#200837)

Remove NodeBuilder use from `ExprEngine::Visit` to reduce its size from
700 lines to 600 lines of source code.

This commit also moves the "for instance method operators, make sure the
'this' argument has a valid region" logic (~10 lines) from the huge
`ExprEngine::Visit` to the more specific `VisitCallExpr`; and applies a
few other very minor code quality improvements.
DeltaFile
+32-163clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
+20-0clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
+52-1632 files

LLVM/project 0404de4llvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll accvgpr-spill-scc-clobber.mir, llvm/test/CodeGen/AMDGPU/GlobalISel legalize-load-global.mir

Merge branch 'upstream-main' into users/ssahasra/av-builtins
DeltaFile
+12,982-11,930llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+10,469-10llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
+8,268-12llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
+2,674-2,698llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+2,501-2,502llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
+2,422-2,449llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
+39,316-19,6015,245 files not shown
+274,733-132,3755,251 files

LLVM/project 3228793clang/include/clang/AST DeclTemplate.h, clang/lib/AST DeclTemplate.cpp

Revert "[clang] fix getTemplateInstantiationArgs (#199528)"

This reverts commit ccd2606d0c30c58554cc11038a2160672ef529d5.
DeltaFile
+429-194clang/lib/Sema/SemaTemplateInstantiate.cpp
+164-257clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
+146-150clang/lib/Sema/SemaTemplate.cpp
+95-96clang/include/clang/AST/DeclTemplate.h
+129-59clang/lib/Sema/SemaConcept.cpp
+92-60clang/lib/AST/DeclTemplate.cpp
+1,055-81652 files not shown
+1,714-1,45458 files

LLVM/project 6b6cb5fllvm/lib/ObjCopy/DXContainer DXContainerObjcopy.cpp, llvm/test/tools/llvm-objcopy/DXContainer dump-section.yaml copy-headers.yaml

Reapply "[llvm-objcopy] Strip header from DXContainer's ILDB part during `--dump-section`" (#200906)

The patch is reapplied with adjustments for the test failing on some
buildbots.
It strips the header from ILDB part of DXContainer during `llvm-objcopy
--dump-section`, so that the output contains bitcode only.
DeltaFile
+26-219llvm/test/tools/llvm-objcopy/DXContainer/dump-section.yaml
+12-3llvm/test/tools/llvm-objcopy/DXContainer/copy-headers.yaml
+1-1llvm/lib/ObjCopy/DXContainer/DXContainerObjcopy.cpp
+39-2233 files

LLVM/project 6e1f2f5lldb/bindings/python CMakeLists.txt

[lldb][windows] copy vcpkg runtime dlls (#200416)
DeltaFile
+12-0lldb/bindings/python/CMakeLists.txt
+12-01 files

LLVM/project 3c0daa2lldb/source/Host/windows PseudoConsole.cpp

[lldb][Windows] Default-initialize PseudoConsole Kernel32 members (#200880)
DeltaFile
+4-4lldb/source/Host/windows/PseudoConsole.cpp
+4-41 files

LLVM/project c512963lldb/source/Host/windows PipeWindows.cpp

[lldb][windows] Close pipe HANDLE if _open_osfhandle fails (#200882)
DeltaFile
+15-0lldb/source/Host/windows/PipeWindows.cpp
+15-01 files

LLVM/project 79e54c2llvm/include/llvm/DebugInfo/PDB/Native PDBStringTableBuilder.h, llvm/lib/DebugInfo/PDB/Native PDBFileBuilder.cpp

Initialize InjectedSourceHashTraits along with Strings
DeltaFile
+4-3llvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp
+1-0llvm/include/llvm/DebugInfo/PDB/Native/PDBStringTableBuilder.h
+5-32 files

LLVM/project 141ee0fllvm/lib/DebugInfo/PDB/Native PDBFileBuilder.cpp

Initialize PDBFileBuilder::Strings
DeltaFile
+2-2llvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp
+2-21 files

LLVM/project 3c870d4llvm/include/llvm/DebugInfo/PDB/Native PDBFileBuilder.h, llvm/lib/DebugInfo/PDB/Native PDBFileBuilder.cpp

[PDB][llvm-pdbutil] Add DXContainer support for yaml2pdb
DeltaFile
+47-21llvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp
+35-10llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
+3-1llvm/include/llvm/DebugInfo/PDB/Native/PDBFileBuilder.h
+0-2llvm/test/tools/llvm-pdbutil/dxcontainer.test
+85-344 files

LLVM/project 4d95037llvm/tools/llvm-pdbutil PdbYaml.h PdbYaml.cpp

Rename a conflicting class name
DeltaFile
+3-3llvm/tools/llvm-pdbutil/PdbYaml.h
+2-2llvm/tools/llvm-pdbutil/PdbYaml.cpp
+5-52 files

LLVM/project e3c331allvm/tools/llvm-pdbutil YAMLOutputStyle.cpp PdbYaml.h

[llvm-pdbutil] Add DXContainer support for pdb2yaml
DeltaFile
+31-0llvm/tools/llvm-pdbutil/YAMLOutputStyle.cpp
+7-0llvm/tools/llvm-pdbutil/PdbYaml.h
+6-0llvm/tools/llvm-pdbutil/PdbYaml.cpp
+5-0llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
+1-0llvm/tools/llvm-pdbutil/llvm-pdbutil.h
+1-0llvm/tools/llvm-pdbutil/YAMLOutputStyle.h
+51-06 files

LLVM/project a2bbd87llvm/include/llvm/DebugInfo/PDB/Native RawConstants.h PDBFile.h, llvm/lib/DebugInfo/PDB/Native PDBFile.cpp

[PDB] Add DXContainer parsing inside PDBFile
DeltaFile
+145-0llvm/test/tools/llvm-pdbutil/dxcontainer.test
+25-1llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp
+4-1llvm/include/llvm/DebugInfo/PDB/Native/RawConstants.h
+3-0llvm/include/llvm/DebugInfo/PDB/Native/PDBFile.h
+177-24 files

LLVM/project 9def57allvm/lib/Transforms/Vectorize VPlanTransforms.cpp

[VPlan] Remove stale references to VPTypeInfo. (#201088)

VPTypeInfo has been removed, and (#199647) a016f53e2 add dead reference,
causing the build to fail on main.
DeltaFile
+2-3llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+2-31 files

LLVM/project 67aaa03mlir/docs Tokens.md LangRef.md, mlir/lib/Conversion/AsyncToLLVM AsyncToLLVM.cpp

[mlir][IR] Add builtin `TokenType` (#195640)

Introduces a new parameterless, opaque, builtin SSA value type,
`!token`. A token cannot appear in a value-forwarding position such as
`cf.br`, `arith.select`, `scf.for` iter-args or function call/return.
Walking back from any token use reaches the producing operation without
crossing such a boundary. Tokens carry no runtime data and cannot
constant-fold.

This contract is enforced by changing the default ODS `AnyType`
predicate to exclude tokens. In addition, token-producing and
token-consuming ops must opt in by implementing the `ProducesToken` and
`ConsumesToken` traits. The IR verifier checks for the presence of these
traits.

Note: CSE, DCE, hoisting, and `OperationEquivalence` remain unchanged. A
stronger contract (e.g., uniqueness, arity, paired lifetime), if
desirable based on the semantics of token-producing and token-consuming
ops, can be expressed at the op level via existing mechanisms (side

    [27 lines not shown]
DeltaFile
+143-0mlir/test/IR/token-type.mlir
+107-0mlir/docs/Tokens.md
+89-3mlir/lib/IR/Verifier.cpp
+55-0mlir/test/lib/Dialect/Test/TestOps.td
+20-19mlir/lib/Conversion/AsyncToLLVM/AsyncToLLVM.cpp
+28-0mlir/docs/LangRef.md
+442-2243 files not shown
+652-14049 files

LLVM/project 016f53ellvm/lib/Transforms/Vectorize VPlanTransforms.cpp, llvm/test/Transforms/LoopVectorize/RISCV strided-accesses-narrow-iv.ll strided-access-wide-stride.ll

[VPlan] Use pointer index type for stride in convertToStridedAccesses (#199647)

The type of StrideInBytes should be index type, not the canonical IV
type. When the type of canonical IV is narrower than index type (e.g.,
i32 canonical IV on a RV64), using CanonicalIVType for stride may cause
crash.

The assertion failure in SelectionDAG was a secondary symptom, and the
root cause is a semantic mismatch in the stride type.

Fixes #199509
DeltaFile
+275-0llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses-narrow-iv.ll
+48-2llvm/test/Transforms/LoopVectorize/RISCV/strided-access-wide-stride.ll
+13-7llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+2-2llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
+2-2llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
+1-1llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
+341-141 files not shown
+342-157 files

LLVM/project f341dabclang/include/clang/Basic DiagnosticCommonKinds.td, clang/lib/Basic/Targets RISCV.cpp RISCV.h

[clang][RISCV][Zicfilp] Force user to use `-mcf-branch-label-scheme=unlabeled` (#152122)

Expected Behavior:

When `-fcf-protection=branch|full` is specified, it's an error to omit
`-mcf-branch-label-scheme=unlabeled`.

Context:

When using forward-edge control flow integrity feature based on the
RISC-V Zicfilp extension, the `-mcf-branch-label-scheme` option selects
the encoding scheme used in the landing pad labels. The spec defines 2
schemes: `func-sig` and `unlabeled`, with the former specified as the
default. However the `func-sig` backend is still under active
development and won't land anytime soon; in the meanwhile, the
`unlabeled` scheme almost has complete support in the toolchain now.

Given that Clang currently accepts and defaults to
`-mcf-branch-label-scheme=func-sig` but doesn't work correctly, we want

    [7 lines not shown]
DeltaFile
+20-17clang/test/CodeGen/RISCV/riscv-cf-protection.c
+28-0clang/lib/Basic/Targets/RISCV.cpp
+1-9clang/lib/Basic/Targets/RISCV.h
+2-0clang/include/clang/Basic/DiagnosticCommonKinds.td
+51-264 files

LLVM/project e41928dllvm/test/CodeGen/AMDGPU memory-legalizer-av-none.ll

added tests that mix synchronize-as and av-none
DeltaFile
+75-5llvm/test/CodeGen/AMDGPU/memory-legalizer-av-none.ll
+75-51 files

LLVM/project 238bd57llvm/lib/Target/AArch64 SVEInstrFormats.td AArch64InstrFormats.td

[AArch64][TG] Migrate AArch64 backend from !cond to !switch(NFC) (#200949)

Making exact matches more compact. The \!switch operator has been
introduced by: https://github.com/llvm/llvm-project/pull/199659
DeltaFile
+81-81llvm/lib/Target/AArch64/SVEInstrFormats.td
+4-4llvm/lib/Target/AArch64/AArch64InstrFormats.td
+85-852 files

LLVM/project 1c54625mlir/docs Tokens.md

Update mlir/docs/Tokens.md

Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
DeltaFile
+2-1mlir/docs/Tokens.md
+2-11 files

LLVM/project 8e5b8dbmlir/include/mlir/IR BuiltinOps.td

drop unrealized_conversion_cast change
DeltaFile
+3-3mlir/include/mlir/IR/BuiltinOps.td
+3-31 files

LLVM/project 1290ce6mlir/docs Tokens.md, mlir/include/mlir/Dialect/LLVMIR LLVMIntrinsicOps.td

infer token traits
DeltaFile
+14-14mlir/test/IR/token-type.mlir
+16-9mlir/test/lib/Dialect/Test/TestOps.td
+13-0mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
+7-2mlir/docs/Tokens.md
+4-4mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
+3-3mlir/lib/IR/Verifier.cpp
+57-323 files not shown
+60-409 files

LLVM/project 2b211f1mlir/test/Dialect/Builtin/Bytecode builtin_fixed_0.mlirbc

regenerate bytecode
DeltaFile
+0-0mlir/test/Dialect/Builtin/Bytecode/builtin_fixed_0.mlirbc
+0-01 files

LLVM/project c65bd7dmlir/docs/Dialects LLVM.md, mlir/lib/IR Verifier.cpp

address comments
DeltaFile
+5-9mlir/lib/IR/Verifier.cpp
+1-2mlir/docs/Dialects/LLVM.md
+6-112 files

LLVM/project 591fdc2mlir/docs Tokens.md

call out IsolatedFromAbove restriction
DeltaFile
+4-0mlir/docs/Tokens.md
+4-01 files