LLVM/project a1dd123mlir/include/mlir/Dialect/SCF/IR SCFOps.td, mlir/include/mlir/Interfaces ControlFlowInterfaces.h

allow early exit from execute_region
DeltaFile
+702-0mlir/test/Dialect/SCF/lower-early-exit.mlir
+489-0mlir/lib/Dialect/SCF/Transforms/LowerEarlyExit.cpp
+271-50mlir/lib/Dialect/SCF/IR/SCF.cpp
+143-0mlir/test/Dialect/Arith/int-range-early-exit.mlir
+95-11mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
+72-16mlir/include/mlir/Interfaces/ControlFlowInterfaces.h
+1,772-7721 files not shown
+2,404-15127 files

LLVM/project 3db25f8libc/src/__support/File/linux file.cpp dir.cpp, libc/src/__support/OSUtil/linux auxv.h

[libc] Use linux_syscalls::open instead of manual SYS_open ifdefs (#201089)

I needed to clean up a few types in file.cpp in order to match the
wrapper prototype.

Assisted by Gemini.
DeltaFile
+13-24libc/src/__support/threads/linux/thread.cpp
+8-16libc/src/__support/File/linux/file.cpp
+3-18libc/src/spawn/linux/posix_spawn.cpp
+6-12libc/src/fcntl/linux/creat.cpp
+8-10libc/src/__support/OSUtil/linux/auxv.h
+2-15libc/src/__support/File/linux/dir.cpp
+40-955 files not shown
+46-9611 files

LLVM/project bd85a10llvm/lib/Target/AMDGPU AMDGPUAsmPrinter.cpp AMDGPUMCResourceInfo.cpp, llvm/lib/Target/AMDGPU/Utils AMDGPUBaseInfo.cpp

[AMDGPU] Do not propagate vgpr count in dVGPR mode (#187078)

When dVGPR mode is enabled chain functions should not propagate VGPR
counts from other chain callees. VGPRs are allocated before chaining to
a chain functions. We only propagate counts from non-chain callees.
DeltaFile
+154-0llvm/test/CodeGen/AMDGPU/dvgpr-vgpr-count-propagation.ll
+128-0llvm/test/CodeGen/AMDGPU/dvgpr-vgpr-count-propagation-direct-chain.ll
+59-0llvm/test/CodeGen/AMDGPU/dvgpr-vgpr-count-propagation-indirect.ll
+37-18llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
+34-5llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.cpp
+5-3llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
+417-265 files not shown
+426-2811 files

LLVM/project 0bbb91b

[lldb][NFCI] Cleanup AppleObjCClassDescriptorV2::ivar_t API (#200777)
DeltaFile
+0-00 files

LLVM/project 52fd3eclibc/include unistd.yaml, libc/include/llvm-libc-macros/linux unistd-macros.h

[libc] Define _POSIX_THREADS and support _SC_THREADS in sysconf (#201091)

Defined the _POSIX_THREADS macro to 202405L in unistd-macros.h for Linux
to signal POSIX thread support.

Also implemented runtime support for _SC_THREADS in sysconf, returning
_POSIX_THREADS, and added _SC_THREADS and _POSIX_THREADS to the public
unistd.yaml specification.

Added compile-time and runtime tests to verify _POSIX_THREADS definition
and sysconf(_SC_THREADS) behavior. Standardized header comments in
unistd-macros.h to conform to LLVM style.

Assisted-by: Automated tooling, human reviewed.

---------

Co-authored-by: Pavel Labath <pavel at labath.sk>
DeltaFile
+28-0libc/test/include/unistd_macros_test.cpp
+9-0libc/test/include/CMakeLists.txt
+8-1libc/include/llvm-libc-macros/linux/unistd-macros.h
+5-0libc/test/src/unistd/sysconf_test.cpp
+4-0libc/include/unistd.yaml
+3-0libc/src/unistd/linux/sysconf.cpp
+57-16 files

LLVM/project 2790e61clang-tools-extra/clang-tidy/readability NonConstParameterCheck.cpp, clang-tools-extra/docs ReleaseNotes.rst

[clang-tidy] Fix crash in readability-non-const-parameter with redecls (#200178)

The check matches `VarDecls` with `hasInitializer()`, which uses
`getAnyInitializer()` and may therefore match a redeclaration whose
initializer is attached to another declaration. So calling
`IgnoreParenCasts()` on `VD->getInit()` directly would crash when that
redeclaration had no initializer of its own.

This commit fixes the problem by using a new matcher that only matches
VarDecls with an initializer on the current declaration.

Closes https://github.com/llvm/llvm-project/issues/199197
DeltaFile
+16-0clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.cpp
+10-1clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
+3-0clang-tools-extra/docs/ReleaseNotes.rst
+29-13 files

LLVM/project 6180a48lldb/source/Plugins/DynamicLoader/Windows-DYLD MSVCRTCFrameRecognizer.cpp MSVCRTCFrameRecognizer.h, lldb/source/Plugins/Process/Windows/Common MSVCRTCFrameRecognizer.cpp MSVCRTCFrameRecognizer.h

[lldb][Windows] Register MSVCRTCFrameRecognizer from DynamicLoaderWindowsDYLD (#201097)
DeltaFile
+0-80lldb/source/Plugins/Process/Windows/Common/MSVCRTCFrameRecognizer.cpp
+73-0lldb/source/Plugins/DynamicLoader/Windows-DYLD/MSVCRTCFrameRecognizer.cpp
+42-0lldb/source/Plugins/DynamicLoader/Windows-DYLD/MSVCRTCFrameRecognizer.h
+0-41lldb/source/Plugins/Process/Windows/Common/MSVCRTCFrameRecognizer.h
+5-0lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.cpp
+3-0lldb/source/Plugins/DynamicLoader/Windows-DYLD/CMakeLists.txt
+123-1212 files not shown
+123-1258 files

LLVM/project 2a7524blldb/source/Plugins/Process/Windows/Common ProcessWindows.cpp DebuggerThread.cpp, lldb/test/Shell/Process/Windows output_debug_string.cpp

[lldb][Windows] Support OutputDebugString (#196395)

This picks https://reviews.llvm.org/D128541 back up. It implements
support for `OutputDebugStringA/W` on Windows. It's used by some logging
systems.

The main changes since the original patch:
- Use `WaitForDebugEventEx` for getting debug events over
`WaitForDebugEvent`. According to the
[docs](https://learn.microsoft.com/en-us/windows/win32/api/debugapi/nf-debugapi-waitfordebugeventex),
the only difference is that the -Ex version correctly outputs Unicode
strings.
- Support strings longer than 64 KiB. I set an arbitrary limit of 1 MiB
for the strings we read. The debugger interface only tells us the length
modulo 64 KiB which is a bit awkward. Libraries like Qt already chunk
calls to `OutputDebugString`, so strings shouldn't be too big in
practice.
- Output to stdout instead of a log channel, so the output is always
enabled. I don't know if this should go to stdout or stderr.

    [8 lines not shown]
DeltaFile
+86-1lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
+58-0lldb/test/Shell/Process/Windows/output_debug_string.cpp
+9-5lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp
+6-1lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
+4-2lldb/source/Plugins/Process/Windows/Common/LocalDebugDelegate.cpp
+5-1lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.cpp
+168-105 files not shown
+180-1511 files

LLVM/project 9942a38libcxx/include shared_mutex, libcxx/include/__mutex unique_lock.h

[libc++] Apply `[[nodiscard]]` to `unique_lock` and `<shared_mutex>` (#200986)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/thread.sharedmutex.class
- https://wg21.link/thread.sharedtimedmutex.class
- https://wg21.link/thread.lock.unique
- https://wg21.link/thread.lock.shared

Remarks:
- All constructors of `shared_lock` are marked `[[nodiscard]]`, which is
consistent with handling for constructors of `unique_lock`.
DeltaFile
+75-2libcxx/test/libcxx/thread/nodiscard.verify.cpp
+29-21libcxx/include/shared_mutex
+5-5libcxx/include/__mutex/unique_lock.h
+109-283 files

LLVM/project 94fcaf5llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes LoadStoreVec.cpp, llvm/test/Transforms/SandboxVectorizer load_store_vec.ll

[LLVM][SandboxVec][LoadStoreVec] Add support for vector ConstantInt/FP. (#200437)

The current implementation treats all ConstantInt/FP values as scalar,
leading to the wrong number of elements being used when combining them.
DeltaFile
+37-0llvm/test/Transforms/SandboxVectorizer/load_store_vec.ll
+14-0llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.cpp
+51-02 files

LLVM/project 574243dllvm/lib/Target/SPIRV SPIRVCallLowering.cpp, llvm/test/CodeGen/SPIRV/transcoding func_param_attr.ll

[SPIR-V] Emit missing Sext function parameter decoration for signext args and test other param decorations (#200801)
DeltaFile
+45-0llvm/test/CodeGen/SPIRV/transcoding/func_param_attr.ll
+6-0llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
+51-02 files

LLVM/project 0012320llvm/lib/CodeGen ComplexDeinterleavingPass.cpp, llvm/test/CodeGen/AArch64 complex-deinterleaving-f32-add.ll

[LLVM][ComplexDeinterleaving] Update identifyDeinterleave to support all forms of zero. (#200400)

The original code misses ConstantFP based zeros.
DeltaFile
+17-0llvm/test/CodeGen/AArch64/complex-deinterleaving-f32-add.ll
+2-2llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
+19-22 files

LLVM/project 905afb8flang/lib/Semantics mod-file.cpp

format
DeltaFile
+0-1flang/lib/Semantics/mod-file.cpp
+0-11 files

LLVM/project 4b13aeeopenmp/runtime/src kmp_adt.h kmp_str.cpp, openmp/runtime/unittests/ADT TestStringRef.cpp

implement feedback
DeltaFile
+131-0openmp/runtime/unittests/ADT/TestStringRef.cpp
+50-32openmp/runtime/src/kmp_adt.h
+1-1openmp/runtime/src/kmp_str.cpp
+1-1openmp/runtime/src/kmp_str.h
+183-344 files

LLVM/project 227e62eflang/lib/Semantics mod-file.cpp

format
DeltaFile
+2-1flang/lib/Semantics/mod-file.cpp
+2-11 files

LLVM/project 9a9b9d9llvm/lib/DebugInfo/PDB/Native PDBFileBuilder.cpp PDBFile.cpp, llvm/test/tools/llvm-pdbutil dxcontainer.test

Reapply "[PDB][llvm-pdbutil] Add DXContainer support for `pdb2yaml` and `yaml2pdb`" (#201092)

This reapplies #198351 with 2 issues fixed:
- `-Wchanges-meaning` causing an error in `PdbYaml.h`
- UB when parsing DXContainer header from a null buffer, fixed in
#200865

Original patch description:

This patch enables the following:
1. Attempting to parse a `DXContainer` from stream 5 (generated by
DirectX tools) of a PDB file, to be used later in `llvm-pdbutil`.
2. Outputting a PDB file with a built in DXContainer as YAML. Existing
DirectX tools form a PDB container with empty DBI, TPI and IPI streams,
so this patch also allows them to be empty when dumping a PDB file as
YAML.
3. Creating a PDB file from YAML with an built in DXContainer. When
creating a PDB with a DXContainer, streams DBI, TPI and IPI can be
completely empty, so this patch also includes adjustments to allow
forming such a PDB file. This is done to maintain compatibility with
other DirectX tools.
DeltaFile
+143-0llvm/test/tools/llvm-pdbutil/dxcontainer.test
+49-22llvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp
+40-10llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
+31-0llvm/tools/llvm-pdbutil/YAMLOutputStyle.cpp
+25-1llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp
+7-0llvm/tools/llvm-pdbutil/PdbYaml.h
+295-337 files not shown
+314-3513 files

LLVM/project 10d3c67libc/include limits.yaml, libc/include/llvm-libc-macros limits-macros.h

[libc] Define SSIZE_MAX in limits-macros.h (#201087)

Defined SSIZE_MAX in limits-macros.h to support POSIX compliance.
Applications compiling against LLVM libc require SSIZE_MAX to be defined
in limits.h.

SSIZE_MAX is defined strictly in terms of __PTRDIFF_MAX__, matching
ssize_t defined as __PTRDIFF_TYPE__, ensuring they are always
structurally aligned and compile-time safe.

Added Doxygen comments for SSIZE_MAX.
Added SSIZE_MAX to limits.yaml and added a unit test in limits_test.cpp
to verify the definition.

Assisted-by: Automated tooling, human reviewed.
DeltaFile
+8-0libc/test/src/__support/CPP/limits_test.cpp
+7-0libc/include/llvm-libc-macros/limits-macros.h
+2-0libc/include/limits.yaml
+17-03 files

LLVM/project dc09abcflang/include/flang/Semantics symbol.h, flang/lib/Semantics mod-file.cpp symbol.cpp

[flang][OpenMP] Store DECLARE_TARGET information in WithOmpDeclarative

This will be used to emit DECLARE_TARGET directives into module files.

When a symbol apperars in DECLARE_TARGET (explicitly or explicitly), the
OmpDeclareTarget flag will be set on it. The set of accompanying clauses
will be stored in the associated details, in the WithOmpDeclarative mixin.
The mixin was added to ObjectEntityDetails, ProcEntityDetails, and
CommonBlockDetails.

The design goal was to be able to reconstruct the appropriate DECLARE_
TARGET directive for individual symbols for the purpose of emitting it
in a module file. Simply storing and then unparsing the AST node may
include symbols that should not be emitted.

Additionally, refactor the WithOmpDeclarative printing code for reuse in
symbol dumping for debugging, and for printing clause sets.
DeltaFile
+40-26flang/lib/Semantics/mod-file.cpp
+43-22flang/lib/Semantics/symbol.cpp
+63-0flang/lib/Semantics/resolve-directives.cpp
+41-0flang/test/Semantics/OpenMP/declare-target-modfile.f90
+36-0flang/test/Semantics/OpenMP/declare-target-flags.f90
+23-3flang/include/flang/Semantics/symbol.h
+246-518 files not shown
+264-6814 files

LLVM/project 17f85f4llvm/include/llvm/BinaryFormat WasmTraits.h, llvm/include/llvm/CAS CASReference.h CASID.h

[llvm] Remove unused DenseMapInfo::getTombstoneKey (#200957)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.
DeltaFile
+0-16llvm/include/llvm/BinaryFormat/WasmTraits.h
+0-11llvm/include/llvm/CAS/CASReference.h
+5-5llvm/include/llvm/CAS/CASID.h
+0-8llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
+0-8llvm/include/llvm/ExecutionEngine/Orc/SymbolStringPool.h
+2-6llvm/lib/Linker/IRMover.cpp
+7-5421 files not shown
+13-13127 files

LLVM/project e0f5ce1llvm/include/llvm/Analysis ScalarEvolution.h, llvm/include/llvm/IR ModuleSummaryIndex.h ValueHandle.h

[IR][Analysis] Remove unused DenseMapInfo::getTombstoneKey (#200958)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.
DeltaFile
+6-29llvm/lib/IR/LLVMContextImpl.h
+1-15llvm/include/llvm/IR/ModuleSummaryIndex.h
+1-13llvm/include/llvm/IR/ValueHandle.h
+0-12llvm/include/llvm/IR/Attributes.h
+2-7llvm/lib/Analysis/IRSimilarityIdentifier.cpp
+0-9llvm/include/llvm/Analysis/ScalarEvolution.h
+10-8514 files not shown
+15-15520 files

LLVM/project 414b8b9llvm/include/llvm/Transforms/IPO Attributor.h, llvm/lib/Transforms/IPO AttributorAttributes.cpp

[CodeGen][Transforms] Remove unused DenseMapInfo::getTombstoneKey (#200956)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.
DeltaFile
+3-18llvm/lib/Transforms/Scalar/EarlyCSE.cpp
+2-17llvm/include/llvm/Transforms/IPO/Attributor.h
+1-18llvm/lib/Transforms/IPO/AttributorAttributes.cpp
+2-13llvm/lib/Transforms/Utils/Local.cpp
+2-9llvm/lib/Transforms/Scalar/NewGVN.cpp
+0-11llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+10-8639 files not shown
+24-25845 files

LLVM/project f85f70fllvm/lib/Target/AArch64 AArch64StackTaggingPreRA.cpp, llvm/lib/Target/AMDGPU GCNHazardRecognizer.cpp

[Target] Remove unused DenseMapInfo::getTombstoneKey (#200955)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.
DeltaFile
+2-12llvm/lib/Target/X86/X86OptimizeLEAs.cpp
+2-10llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
+0-3llvm/lib/Target/CSKY/MCTargetDesc/CSKYTargetStreamer.h
+0-3llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
+0-3llvm/lib/Target/SPIRV/SPIRVTypeInst.h
+0-1llvm/lib/Target/AArch64/AArch64StackTaggingPreRA.cpp
+4-326 files

LLVM/project 1872f06flang/include/flang/Optimizer/HLFIR Passes.td, flang/lib/Optimizer/HLFIR/Transforms SeparateAllocatableAssign.cpp OptimizedBufferization.cpp

[flang][HLFIR] Add SeparateAllocatableAssign pass (#197814)

Example:
```fortran
!$acc kernels
B = A          ! A, B allocatable
!$acc end kernels
```

In this code, `B = A` lowers to `hlfir.assign ... realloc`, which
becomes a `_FortranAAssign` runtime call inside the compute region — the
allocation can't be separated from the copy, and it crashes when `B` is
unallocated.

Fix: add `SeparateAllocatableAssign`, which splits the realloc assign
into an explicit conditional [re-]allocation followed by a plain
`hlfir.assign`, exposing the allocation as plain FIR. For variable RHS
it skips aliasing cases (`a = a(:n)`) by loading the LHS `fir.box` and
querying `fir::AliasAnalysis` on the data. For `hlfir.expr` RHS it

    [2 lines not shown]
DeltaFile
+181-0flang/test/HLFIR/separate-allocatable-assign.fir
+175-0flang/lib/Optimizer/HLFIR/Transforms/SeparateAllocatableAssign.cpp
+32-0flang/test/HLFIR/opt-bufferization-dealloc-conflict.fir
+22-0flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
+4-6flang/test/Integration/OpenMP/workshare-axpy.f90
+10-0flang/include/flang/Optimizer/HLFIR/Passes.td
+424-65 files not shown
+442-611 files

LLVM/project b8cf24bllvm/utils/TableGen GlobalISelCombinerEmitter.cpp, llvm/utils/TableGen/Common/GlobalISel/MatchTable Matchers.cpp Matchers.h

Comments
DeltaFile
+6-2llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
+3-2llvm/utils/TableGen/Common/GlobalISel/MatchTable/Matchers.cpp
+1-2llvm/utils/TableGen/Common/GlobalISel/MatchTable/Matchers.h
+10-63 files

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

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

This caused bootstrap builds on macOS to fail with

  error: definition with same mangled name ... as another definition

in JSONGenerator.cpp. See comments on the original PR.

Reverts llvm/llvm-project#199528
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 3c86ffbllvm/lib/IR Verifier.cpp, llvm/test/Verifier immarg-param-attribute-invalid.ll

[LLVM][Verifier] Reject "splat (...)" as an invalid value for an immarg operand. (#200445)

This makes the behaviour consistent with ConstantDataVector based
values.
DeltaFile
+11-0llvm/test/Verifier/immarg-param-attribute-invalid.ll
+2-1llvm/lib/IR/Verifier.cpp
+13-12 files

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