[all-commits] [llvm/llvm-project] 58f9c4: [flang][OpenMP] Semantic checks for IN_REDUCTION a...

Paul Kirth via All-commits all-commits at lists.llvm.org
Fri Dec 13 09:38:50 PST 2024


  Branch: refs/heads/users/ilovepi/spr/main.clang-docnfc-make-test-resilient-to-line-changes
  Home:   https://github.com/llvm/llvm-project
  Commit: 58f9c4fc0055821d88869aafd49e0424b1070a79
      https://github.com/llvm/llvm-project/commit/58f9c4fc0055821d88869aafd49e0424b1070a79
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/test/Parser/OpenMP/in-reduction-clause.f90
    M flang/test/Parser/OpenMP/reduction-modifier.f90
    A flang/test/Parser/OpenMP/task-reduction-clause.f90
    M flang/test/Preprocessing/directive-contin-with-pp.F90
    A flang/test/Semantics/OpenMP/in-reduction.f90
    M flang/test/Semantics/OpenMP/symbol08.f90
    A flang/test/Semantics/OpenMP/task-reduction.f90
    M flang/test/Semantics/OpenMP/taskgroup01.f90
    M llvm/include/llvm/Frontend/OpenMP/OMP.td

  Log Message:
  -----------
  [flang][OpenMP] Semantic checks for IN_REDUCTION and TASK_REDUCTION (#118841)

Update parsing of these two clauses and add semantic checks for them.
Simplify some code in IsReductionAllowedForType and
CheckReductionOperator.


  Commit: 03cbe42627c7a7940b47cc1a2cda0120bc9c6d5e
      https://github.com/llvm/llvm-project/commit/03cbe42627c7a7940b47cc1a2cda0120bc9c6d5e
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M flang/examples/FeatureList/FeatureList.cpp
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree-visitor.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Semantics/openmp-modifiers.h
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/openmp-modifiers.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    A flang/test/Parser/OpenMP/linear-clause.f90
    M flang/test/Semantics/OpenMP/clause-validity01.f90
    M flang/test/Semantics/OpenMP/linear-clause01.f90
    A flang/test/Semantics/OpenMP/linear-clause02.f90
    M flang/test/Semantics/OpenMP/linear-iter.f90
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/unittests/Frontend/OpenMPDecompositionTest.cpp

  Log Message:
  -----------
  [flang][OpenMP] Rework LINEAR clause (#119278)

The OmpLinearClause class was a variant of two classes, one for when the
linear modifier was present, and one for when it was absent. These two
classes did not follow the conventions for parse tree nodes, (i.e.
tuple/wrapper/union formats), which necessitated specialization of the
parse tree visitor.

The new form of OmpLinearClause is the standard tuple with a list of
modifiers and an object list. The specialization of parse tree visitor
for it has been removed.
Parsing and unparsing of the new form bears additional complexity due to
syntactical differences between OpenMP 5.2 and prior versions: in OpenMP
5.2 the argument list is post-modified, while in the prior versions, the
step modifier was a post-modifier while the linear modifier had an
unusual syntax of `modifier(list)`.

With this change the LINEAR clause is no different from any other
clauses in terms of its structure and use of modifiers. Modifier
validation and all other checks work the same as with other clauses.


  Commit: 2546ae4ed09ff69274c184ae7e98f2aa72e7e7f7
      https://github.com/llvm/llvm-project/commit/2546ae4ed09ff69274c184ae7e98f2aa72e7e7f7
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/revec.ll

  Log Message:
  -----------
  [SLP][REVEC] Fix the number of elements in the mask of a ShuffleVectorInst is not a power of 2. (#119689)

The following shufflevector should not be vectorized when
slp-vectorize-non-power-of-2 is enabled.

shufflevector <8 x float> %1, <8 x float> poison, <3 x i32> <i32 0, i32
1, i32 2>
shufflevector <8 x float> %1, <8 x float> poison, <3 x i32> <i32 4, i32
5, i32 6>


  Commit: 139e69b7bcb05e6ff9db0f373d9180deb341a571
      https://github.com/llvm/llvm-project/commit/139e69b7bcb05e6ff9db0f373d9180deb341a571
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
    M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
    M flang/test/HLFIR/shapeof.fir

  Log Message:
  -----------
  [flang] Simple folding for hlfir.shape_of. (#119649)

This folding makes sure there are no hlfir.shape_of users
of hlfir.elemental - this may enable more InlineElementals matches,
because it is looking for exactly two uses of an hlfir.elemental.


  Commit: c047a5b3f6e2295dd74f1e8f17f1a023150b246c
      https://github.com/llvm/llvm-project/commit/c047a5b3f6e2295dd74f1e8f17f1a023150b246c
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M libc/docs/headers/assert.rst
    M libc/docs/headers/ctype.rst
    M libc/docs/headers/errno.rst
    M libc/docs/headers/fenv.rst
    M libc/docs/headers/float.rst
    M libc/docs/headers/inttypes.rst
    M libc/docs/headers/locale.rst
    M libc/docs/headers/signal.rst
    M libc/docs/headers/stdlib.rst
    M libc/docs/headers/string.rst
    M libc/docs/headers/strings.rst
    M libc/docs/headers/threads.rst
    M libc/docs/headers/uchar.rst
    M libc/docs/headers/wchar.rst
    M libc/docs/headers/wctype.rst
    M libc/utils/docgen/assert.json
    M libc/utils/docgen/ctype.json
    M libc/utils/docgen/docgen.py
    M libc/utils/docgen/errno.json
    M libc/utils/docgen/fenv.json
    M libc/utils/docgen/float.json
    M libc/utils/docgen/inttypes.json
    M libc/utils/docgen/locale.json
    M libc/utils/docgen/setjmp.json
    M libc/utils/docgen/signal.json
    M libc/utils/docgen/stdlib.json
    M libc/utils/docgen/string.json
    M libc/utils/docgen/strings.json
    M libc/utils/docgen/threads.json
    M libc/utils/docgen/uchar.json

  Log Message:
  -----------
  [libc][docgen] simplify posix links (#119595)

Usually posix functions have individual doc pages, and each header has its own
list of required macro definitions. Use a simpler key of "in-latest-posix" to
signal that the URL convention can be followed.

Add support for a "removed-in-posix-2008" key which will link to the 2004 docs
for functions like bcmp, bcopy, bzero, index, and rindex from strings.h.

I don't want to add all of these links for pthreads.h, so automating this will
make documenting these go much faster.


  Commit: f0f8434afac2d30ac143250377fb6433c68fc0a8
      https://github.com/llvm/llvm-project/commit/f0f8434afac2d30ac143250377fb6433c68fc0a8
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/test/AST/ast-print-openacc-data-construct.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    A clang/test/SemaOpenACC/data-construct-async-ast.cpp
    A clang/test/SemaOpenACC/data-construct-async-clause.c
    M clang/test/SemaOpenACC/data-construct-device_type-clause.c
    M clang/test/SemaOpenACC/data-construct.cpp

  Log Message:
  -----------
  [OpenACC] Implement sema for 'async' on 'data' constructs

This also is a clause that doesn't have any special rules, so this patch
enables it and adds tests.


  Commit: 4e2a9e50f6dd6760b12838517c7f85a0c9032921
      https://github.com/llvm/llvm-project/commit/4e2a9e50f6dd6760b12838517c7f85a0c9032921
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M libc/config/baremetal/aarch64/entrypoints.txt
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/src/__support/CMakeLists.txt
    A libc/src/__support/freelist_heap.cpp
    M libc/src/stdlib/CMakeLists.txt
    M libc/src/stdlib/baremetal/CMakeLists.txt
    A libc/src/stdlib/baremetal/aligned_alloc.cpp
    A libc/src/stdlib/baremetal/calloc.cpp
    A libc/src/stdlib/baremetal/free.cpp
    A libc/src/stdlib/baremetal/malloc.cpp
    A libc/src/stdlib/baremetal/realloc.cpp
    R libc/src/stdlib/freelist_malloc.cpp
    M libc/test/src/__support/CMakeLists.txt
    M libc/test/src/__support/freelist_heap_test.cpp
    R libc/test/src/__support/freelist_malloc_test.cpp

  Log Message:
  -----------
  [libc] Breakup freelist_malloc into separate files (#98784)

This better matches the structure we use for the rest of libc.


  Commit: b03470b81485281d9f2bdce5e44cc2cac4220d97
      https://github.com/llvm/llvm-project/commit/b03470b81485281d9f2bdce5e44cc2cac4220d97
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp

  Log Message:
  -----------
  [RISCV] Use a switch instead of an if/else chain. NFC


  Commit: 33b910cde3b305a49c98c6de88dbc22ced9dea61
      https://github.com/llvm/llvm-project/commit/33b910cde3b305a49c98c6de88dbc22ced9dea61
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/test/Sema/Inputs/lifetime-analysis.h
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp

  Log Message:
  -----------
  [clang] Fix the post-filtering heuristic for GSLPointer. (#114044)

The lifetime analyzer processes GSL pointers:

- when encountering a constructor for a `gsl::pointer`, the analyzer
continues traversing the constructor argument, regardless of whether the
parameter has a `lifetimebound` annotation. This aims to catch cases
where a GSL pointer is constructed from a GSL owner, either directly
(e.g., `FooPointer(FooOwner)`) or through a chain of GSL pointers (e.g.,
`FooPointer(FooPointer(FooOwner))`);
- When a temporary object is reported in the callback, the analyzer has
heuristics to exclude non-owner types, aiming to avoid false positives
(like `FooPointer(FooPointer())`).

In the problematic case (discovered in
https://github.com/llvm/llvm-project/pull/112751#issuecomment-2441055471)
of `return foo.get();`:

- When the analyzer reports the local object `foo`, the `Path` is
`[GslPointerInit, Lifetimebound]`.
- The `Path` goes through
[`pathOnlyHandlesGslPointer`](https://github.com/llvm/llvm-project/blob/main/clang/lib/Sema/CheckExprLifetime.cpp#L1136)
and isn’t filtered out by the [[heuristics]](because `foo` is an owner
type), the analyzer treats it as the `FooPointer(FooOwner())` scenario,
thus triggering a diagnostic.

Filtering out base on the object 'foo' is wrong, because the GSLPointer
is constructed from the return result of the `foo.get()`. The patch
fixes this by teaching the heuristic to use the return result (only
`const GSLOwner&` is considered) of the lifetimebound annotated
function.


  Commit: 4e828f8d741ff61317bb1e0b67f22e274632b07a
      https://github.com/llvm/llvm-project/commit/4e828f8d741ff61317bb1e0b67f22e274632b07a
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  [VPlan] Perform DT expensive input DT verification earlier (NFC).

After 6c8f41d33674, DT adjustments for the skeleton are applied as VPBBs
are executed. Move input DT verification up before starting to execute
any VPBBs to avoid checking DT while the CFG and DT are in an incomplete
state.

This fixes a number of verification failures with expensive checks
enabled, including
https://lab.llvm.org/buildbot/#/builders/16/builds/10584


  Commit: afcb7d4a2eab51977497e43ce6539d2b0ca01071
      https://github.com/llvm/llvm-project/commit/afcb7d4a2eab51977497e43ce6539d2b0ca01071
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/test/AST/ast-print-openacc-data-construct.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/SemaOpenACC/data-construct-device_type-clause.c
    A clang/test/SemaOpenACC/data-construct-wait-ast.cpp
    A clang/test/SemaOpenACC/data-construct-wait-clause.c
    M clang/test/SemaOpenACC/data-construct.cpp

  Log Message:
  -----------
  [OpenACC] Implement 'wait' sema for data constructs

This is once again simply enabling this for 'data', 'enter data', and
'exit data' (and ensuring we error for 'host_data').  Implementation is
very simply to enable it rather than emit the not-implemented
diagnostic.


  Commit: 463e93b95f0887145b51edb81b770eeb4463abc5
      https://github.com/llvm/llvm-project/commit/463e93b95f0887145b51edb81b770eeb4463abc5
  Author: choikwa <5455710+choikwa at users.noreply.github.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
    M llvm/test/CodeGen/AMDGPU/bypass-div.ll
    M llvm/test/CodeGen/AMDGPU/udiv64.ll
    M llvm/test/CodeGen/AMDGPU/urem64.ll

  Log Message:
  -----------
   Reapply [AMDGPU] prevent shrinking udiv/urem if either operand exceeds signed max (#119325)

This reverts commit 254d206ee2a337cb38ba347c896f7c6a14c7f218.

+Added a fix in ExpandDivRem24 to disqualify if DivNumBits exceed 24.

Original commit & msg:
ce6e955ac374f2b86cbbb73b2f32174dffd85f25.
Handle signed and unsigned path differently in getDivNumBits. Using
computeKnownBits, this rejects shrinking unsigned div/rem if operands
exceed signed max since we know NumSignBits will be always 0.


  Commit: 71418379574d2df5e435f67c4b8d7591bd2038e9
      https://github.com/llvm/llvm-project/commit/71418379574d2df5e435f67c4b8d7591bd2038e9
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Semantics/modfile55.cuf

  Log Message:
  -----------
  [flang][cuda] Implicitly add DEVICE attribute in device/global functions (#119743)

Variables in global and device function/subroutine that have no CUDA
Fortran data attribute are implicitly DEVICE.


  Commit: 186fac33d08b34be494caa58fe63972f69c6d6ab
      https://github.com/llvm/llvm-project/commit/186fac33d08b34be494caa58fe63972f69c6d6ab
  Author: jimingham <jingham at apple.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M lldb/include/lldb/Target/StackFrameList.h
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/test/API/api/multithreaded/TestMultithreaded.py
    A lldb/test/API/api/multithreaded/deep_stack.cpp
    A lldb/test/API/api/multithreaded/test_concurrent_unwind.cpp.template

  Log Message:
  -----------
  Convert the StackFrameList mutex to a shared mutex. (#117252)

In fact, there's only one public API in StackFrameList that changes
 the list explicitly.  The rest only change the list if you happen to
ask for more frames than lldb has currently fetched and that 
always adds frames "behind the user's back".  So we were
much more prone to deadlocking than we needed to be.

This patch uses a shared_mutex instead, and when we have to add more
frames (in GetFramesUpTo) we switches to exclusive long enough to add
the frames, then goes back to shared.
    
Most of the work here was actually getting the stack frame list locking
to not
require a recursive mutex (shared mutexes aren't recursive). 
    
I also added a test that has 5 threads progressively asking for more
frames simultaneously to make sure we get back valid frames and don't
deadlock.


  Commit: 5048808859eece3aaa680aaecb4a89dfabe9627b
      https://github.com/llvm/llvm-project/commit/5048808859eece3aaa680aaecb4a89dfabe9627b
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/test/AST/ast-print-openacc-data-construct.cpp
    M clang/test/SemaOpenACC/combined-construct-default-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-default-clause.c
    M clang/test/SemaOpenACC/compute-construct-default-clause.c
    M clang/test/SemaOpenACC/data-construct-ast.cpp
    A clang/test/SemaOpenACC/data-construct-default-ast.cpp
    A clang/test/SemaOpenACC/data-construct-default-clause.c
    M clang/test/SemaOpenACC/data-construct-if-ast.cpp
    M clang/test/SemaOpenACC/data-construct-if-clause.c
    M clang/test/SemaOpenACC/data-construct.cpp

  Log Message:
  -----------
  [OpenACC] Implement 'default' Sema for 'data' clause

No additional rules here beyond enabling it, this patch just enables
'default' and adds tests.


  Commit: 9b65b1ef25723fcbb61f1ca25a6abbe678bb1770
      https://github.com/llvm/llvm-project/commit/9b65b1ef25723fcbb61f1ca25a6abbe678bb1770
  Author: knickish <knickish at gmail.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/test/MC/Disassembler/M68k/control.txt

  Log Message:
  -----------
  [M68k] update dissassmbly test to require atLeastM68020 for BSR32 (#119758)

Fixes test failure reported in #117371. `BSR32` was previously
(incorrectly) allowed for CPUs <M68020, this test was missed while
updating the rest to fit the new model


  Commit: 88bcf7283b35b979ace0c6be32736b13f6b771ae
      https://github.com/llvm/llvm-project/commit/88bcf7283b35b979ace0c6be32736b13f6b771ae
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    R libc/utils/docgen/arpa/inet.json
    A libc/utils/docgen/arpa/inet.yaml
    R libc/utils/docgen/assert.json
    A libc/utils/docgen/assert.yaml
    R libc/utils/docgen/ctype.json
    A libc/utils/docgen/ctype.yaml
    M libc/utils/docgen/docgen.py
    R libc/utils/docgen/errno.json
    A libc/utils/docgen/errno.yaml
    R libc/utils/docgen/fenv.json
    A libc/utils/docgen/fenv.yaml
    R libc/utils/docgen/float.json
    A libc/utils/docgen/float.yaml
    M libc/utils/docgen/header.py
    R libc/utils/docgen/inttypes.json
    A libc/utils/docgen/inttypes.yaml
    R libc/utils/docgen/locale.json
    A libc/utils/docgen/locale.yaml
    R libc/utils/docgen/setjmp.json
    A libc/utils/docgen/setjmp.yaml
    R libc/utils/docgen/signal.json
    A libc/utils/docgen/signal.yaml
    R libc/utils/docgen/stdbit.json
    A libc/utils/docgen/stdbit.yaml
    R libc/utils/docgen/stdlib.json
    A libc/utils/docgen/stdlib.yaml
    R libc/utils/docgen/string.json
    A libc/utils/docgen/string.yaml
    R libc/utils/docgen/strings.json
    R libc/utils/docgen/sys/mman.json
    A libc/utils/docgen/sys/mman.yaml
    R libc/utils/docgen/threads.json
    A libc/utils/docgen/threads.yaml
    R libc/utils/docgen/uchar.json
    A libc/utils/docgen/uchar.yaml
    R libc/utils/docgen/wchar.json
    A libc/utils/docgen/wchar.yaml
    R libc/utils/docgen/wctype.json
    A libc/utils/docgen/wctype.yaml

  Log Message:
  -----------
  [libc][docs] move docgen from json to yaml (#119744)

That way it can more easily be integrated into hdrgen.


  Commit: 379cc44f56e6f220422ce85d2295833f849086e0
      https://github.com/llvm/llvm-project/commit/379cc44f56e6f220422ce85d2295833f849086e0
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M libc/config/baremetal/aarch64/entrypoints.txt
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/src/__support/CMakeLists.txt
    R libc/src/__support/freelist_heap.cpp
    M libc/src/stdlib/CMakeLists.txt
    M libc/src/stdlib/baremetal/CMakeLists.txt
    R libc/src/stdlib/baremetal/aligned_alloc.cpp
    R libc/src/stdlib/baremetal/calloc.cpp
    R libc/src/stdlib/baremetal/free.cpp
    R libc/src/stdlib/baremetal/malloc.cpp
    R libc/src/stdlib/baremetal/realloc.cpp
    A libc/src/stdlib/freelist_malloc.cpp
    M libc/test/src/__support/CMakeLists.txt
    M libc/test/src/__support/freelist_heap_test.cpp
    A libc/test/src/__support/freelist_malloc_test.cpp

  Log Message:
  -----------
  Revert "[libc] Breakup freelist_malloc into separate files" (#119749)

Reverts llvm/llvm-project#98784 which broke libc builders.


  Commit: 7071cd3885d06bc1ac388db0188468d135b37dfa
      https://github.com/llvm/llvm-project/commit/7071cd3885d06bc1ac388db0188468d135b37dfa
  Author: Kirill Stoimenov <kstoimenov at google.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SROA.cpp

  Log Message:
  -----------
  Revert "[Transforms] Silence a warning in SROA.cpp (NFC)"

This reverts commit 5b077506de26b1dfce1926895548b86f2106bed9.


  Commit: e3676aa21f875c12d878726a1de1663ebf428cc2
      https://github.com/llvm/llvm-project/commit/e3676aa21f875c12d878726a1de1663ebf428cc2
  Author: Kirill Stoimenov <kstoimenov at google.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/PtrUseVisitor.h
    M llvm/include/llvm/Transforms/Utils/SSAUpdater.h
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/lib/Transforms/Utils/SSAUpdater.cpp
    M llvm/test/Transforms/SROA/non-capturing-call-readonly.ll
    M llvm/test/Transforms/SROA/readonlynocapture.ll

  Log Message:
  -----------
  Revert "[SROA] Optimize reloaded values in allocas that escape into readonly nocapture calls. (#116645)"

Causing buffer overflow:

SUMMARY: AddressSanitizer: heap-buffer-overflow llvm/lib/Transforms/Scalar/SROA.cpp:5552:35

This reverts commit 5e247d726d7a54cf0acc997bc17b50e7494e6fa3.


  Commit: bd40421ad9ec5ecc164f8208caf3ba5657977e17
      https://github.com/llvm/llvm-project/commit/bd40421ad9ec5ecc164f8208caf3ba5657977e17
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M libc/hdr/types/CMakeLists.txt

  Log Message:
  -----------
  [libc] Stop installing `sys/types.h` when not requested (#119765)

Summary:
This is installed unconditionally because of the dependency in the
`hdr/` directory. Remove this so it's only used on the systems that need
it.


  Commit: 05137cc50726c82b6cd7bdd51ab44b6db2176ce9
      https://github.com/llvm/llvm-project/commit/05137cc50726c82b6cd7bdd51ab44b6db2176ce9
  Author: Pedro Lobo <pedro.lobo at tecnico.ulisboa.pt>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/test/Assembler/aggregate-constant-values.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu.private-memory.ll

  Log Message:
  -----------
  [AsmParser] Convert empty arrays to `poison` (#119754)

Empty arrays can be converted to `poison` instead of `undef`.


  Commit: 81dcbefba3901545d3aef79f7030d45e81e798be
      https://github.com/llvm/llvm-project/commit/81dcbefba3901545d3aef79f7030d45e81e798be
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    A libcxx/test/configs/stdlib-libstdc++.cfg.in
    A libcxx/test/configs/stdlib-native.cfg.in

  Log Message:
  -----------
  [libc++] Add testing configurations for libstdc++ and a native stdlib (#98539)

This allows running the test suite against the native Standard Library
on most systems, and against libstdc++ installed at a custom location.

Of course, these configurations don't run 100% clean at the moment. In
particular, running against the native stdlib is almost guaranteed not
to work out-of-the-box, since the test suite generally contains tests
for things that have been implemented on tip-of-trunk but not released
to most major platforms yet. However, having an easy way to run the test
suite against that library is still both useful and interesting.


  Commit: d1dff1dc18f6087a89e94866fe474d0be228b7cf
      https://github.com/llvm/llvm-project/commit/d1dff1dc18f6087a89e94866fe474d0be228b7cf
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/fully-unrolled-cost.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-icmpcost.ll

  Log Message:
  -----------
  [LV] Remove hard-coded VPValue numbers in test check lines. (NFC)

Make tests independent of VPlan value numbers.


  Commit: 80cd9e4265a8e3e0a6fc90dfe9815f6958ba0b9a
      https://github.com/llvm/llvm-project/commit/80cd9e4265a8e3e0a6fc90dfe9815f6958ba0b9a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVGISel.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td

  Log Message:
  -----------
  [RISCV] Move GIComplexOperandMatcher and GICustomOperandRenderer next to their SelectionDAG equivalents. NFC (#119729)

This makes it easier to see if the SelectionDAG node has an equivalent
without needing to check another file. Putting them in the same file
also helps associate them with the relevant ISA and any additional context
that may be provided by comments.

Naming is a little messy because we inconsistently use camel case and
snake case in the SelectionDAG node names. Thus the GISel node names are
named the same as the SelectionDAG node name with either GI or gi_ as a
prefix.


  Commit: ea04148c27264209fb9b732ec8932aa1f4680764
      https://github.com/llvm/llvm-project/commit/ea04148c27264209fb9b732ec8932aa1f4680764
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CUFDeviceGlobal.cpp
    M flang/test/Fir/CUDA/cuda-implicit-device-global.f90

  Log Message:
  -----------
  [flang][cuda] Extend implicit global handling to any type descriptor (#119769)

Relax the check to also handle other type descriptor globals.


  Commit: 37cd7926b767b3877bfa8079f2f8bcb4cd104b1f
      https://github.com/llvm/llvm-project/commit/37cd7926b767b3877bfa8079f2f8bcb4cd104b1f
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td

  Log Message:
  -----------
  AMDGPU: Fix entry for mac in VGPR->AGPR MFMA table (#119693)


  Commit: 37978c466b9c02463885a5de62d16f8ce0ca577f
      https://github.com/llvm/llvm-project/commit/37978c466b9c02463885a5de62d16f8ce0ca577f
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CUFDeviceGlobal.cpp

  Log Message:
  -----------
  [flang][cuda] Remove unused variable


  Commit: e605969efe95efd9941cf958d921006d0833889f
      https://github.com/llvm/llvm-project/commit/e605969efe95efd9941cf958d921006d0833889f
  Author: Soren Lassen <sorenlassen at gmail.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M mlir/unittests/Bytecode/BytecodeTest.cpp

  Log Message:
  -----------
  [MLIR] check resource attr of module in TEST(Bytecode, MultiModuleWithResource) (#119618)

`checkResourceAttribute` accidentally ignored its argument and only
checked `roundTripModule` and not `module`


  Commit: 7442be68f7e4bbb9ded915283ea49a005f7ffe8f
      https://github.com/llvm/llvm-project/commit/7442be68f7e4bbb9ded915283ea49a005f7ffe8f
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir

  Log Message:
  -----------
  [RISCV][VLOPT] Add vector mask producing integer instructions to isSupportedInstr and getOperandInfo (#119733)


  Commit: 602bbf2fd2ee1dadf0982e05192ee8791b35c657
      https://github.com/llvm/llvm-project/commit/602bbf2fd2ee1dadf0982e05192ee8791b35c657
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/cplusplus.PureVirtualCall.rst
    A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/cplusplus.SelfAssignment.rst
    R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/optin.osx.OSObjectCStyleCast.rst
    R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/osx.MIG.rst
    R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/osx.OSObjectRetainCount.rst
    M clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.PutenvStackArray.rst
    M clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.SetgidSetuidOrder.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst

  Log Message:
  -----------
  [clang-tidy][NFC][doc] clean out-dated clang-static-analyzer checks (#119580)


  Commit: ea6e13586ce22291e9e7a4e382f6b2409b406da9
      https://github.com/llvm/llvm-project/commit/ea6e13586ce22291e9e7a4e382f6b2409b406da9
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M clang/utils/perf-training/bolt.lit.cfg
    M clang/utils/perf-training/lit.cfg
    M clang/utils/perf-training/llvm-support/build.test

  Log Message:
  -----------
  [clang][perf-training] Fix profiling with -DCLANG_BOLT=perf (#119117)

This fixes the llvm-support build that generates the profile data, and
wraps the whole `cmake --build` command with perf instead of wrapping
each individual clang invocation. This limits the number of profile
files generated and reduces the time spent running perf2bolt.


  Commit: d01c11df04ae45a3d5b08e69bb683c760bbddd54
      https://github.com/llvm/llvm-project/commit/d01c11df04ae45a3d5b08e69bb683c760bbddd54
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M clang/include/clang/Basic/FileEntry.h
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Sema/ParsedAttr.h
    M clang/include/clang/Sema/SemaConcept.h
    M clang/include/clang/Sema/SemaInternal.h
    M clang/include/clang/Sema/Template.h
    M clang/lib/APINotes/APINotesManager.cpp
    M clang/lib/Analysis/ThreadSafetyCommon.cpp
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/Index/IndexDecl.cpp

  Log Message:
  -----------
  [clang] Migrate away from PointerUnion::{is,get} (NFC) (#119724)

Note that PointerUnion::{is,get} have been soft deprecated in
PointerUnion.h:

  // FIXME: Replace the uses of is(), get() and dyn_cast() with
  //        isa<T>, cast<T> and the llvm::dyn_cast<T>

I'm not touching PointerUnion::dyn_cast for now because it's a bit
complicated; we could blindly migrate it to dyn_cast_if_present, but
we should probably use dyn_cast when the operand is known to be
non-null.


  Commit: 88c18da37dfb10d570414bcb92ad075241f1b7c3
      https://github.com/llvm/llvm-project/commit/88c18da37dfb10d570414bcb92ad075241f1b7c3
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/render-vlop-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/render-vlop-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/vmclr-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/vmclr-rv64.mir
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.mir

  Log Message:
  -----------
  [RISCV] Rename suffixes on VCPOP/VMSBF/VMSET/etc pseudos. NFC (#119785)

These are suffixed with B1, B2, B4, B8, B16, B32, or B64 which I think
these were supposed to match the naming of the vbool types from C where
the number should be SEW/LMUL. So the smallest mask is 64 and the
largest is 1. This provides a compact syntax for describing the 7
possible ratios between LMUL and SEW.

We had the instruction names in the opposite order.


  Commit: 08379d6430106094aeb24ac02b82ce8e89799e9e
      https://github.com/llvm/llvm-project/commit/08379d6430106094aeb24ac02b82ce8e89799e9e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    A llvm/test/Transforms/PGOProfile/memprof_annotate_yaml.test

  Log Message:
  -----------
  [memprof] Test the memprof-use pass with a YAML (#119779)

This patch adds a test to verify that the call site that allocates
cold bytes is annotated as such.  The test is the first of its kind
integrating the memprof-use pass and YAML.


  Commit: 38eaea73cab3f427edd16d60035cf126f9a99cd0
      https://github.com/llvm/llvm-project/commit/38eaea73cab3f427edd16d60035cf126f9a99cd0
  Author: pcc <peter at pcc.me.uk>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/lib/TargetParser/Host.cpp
    M llvm/unittests/TargetParser/Host.cpp

  Log Message:
  -----------
  TargetParser: AArch64: Add part numbers for Apple CPUs.

Part numbers taken from:
https://github.com/AsahiLinux/m1n1/blob/main/src/chickens.c

Reviewers: ahmedbougacha, jroelofs

Reviewed By: jroelofs

Pull Request: https://github.com/llvm/llvm-project/pull/119777


  Commit: 768754807f17754fb450ec672779b827ad5df4b4
      https://github.com/llvm/llvm-project/commit/768754807f17754fb450ec672779b827ad5df4b4
  Author: Matthias Braun <matze at braunis.de>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    A llvm/test/Transforms/InstCombine/vec_shuffle-phi-multiuse.ll

  Log Message:
  -----------
  [InstCombine] Optimistically allow multiple shufflevector uses in foldOpPhi (#114278)

We would like to optimize situations of the form that happen after loop
vectorization+SROA:
```
loop:
    %phi = phi zeroinitializer, %interleaved

    %deinterleave_a = shufflevector %phi, poison ; pick half of the lanes
    %deinterleave_b = shufflevector %phi, posion ; pick remaining lanes

    ... %a = ... %b = ...

    %interleaved = shufflevector %a, %b ; interleave lanes of a+b
```
where the interleave and de-interleave shuffle operations cancel each
other out.
This could be handled by `foldOpPhi` but does not currently work because
it does
not proceed when there are multiple uses of the `Phi` operation.

This extends `foldOpPhi` to allow multiple `shufflevector` uses when
they are
shown to simplify for all `Phi` input values.


  Commit: 51001f87f1b1136554a73228fac2bde9735b2d06
      https://github.com/llvm/llvm-project/commit/51001f87f1b1136554a73228fac2bde9735b2d06
  Author: Feng Zou <feng.zou at intel.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M lld/test/ELF/tls-opt.s
    M lld/test/ELF/x86-64-tls-ie-local.s
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86FixupKinds.h
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp
    M llvm/test/MC/ELF/relocation.s

  Log Message:
  -----------
  [X86][MC] Fix offset for R_X86_64_CODE_6_GOTTPOFF fixup (#119496)

1. Fix the offset for R_X86_64_CODE_6_GOTTPOFF fixup, which is
introduced by #117277. It should be biased with the size of the
immediate field. Related tests are updated.
2. Rename reloc_riprel_6byte_relax to reloc_riprel_4byte_relax_evex as
the number of bytes represents the size of fixup, and "evex" suffix is added
as it's used for APX NDD/NF instructions with EVEX prefix.
3. Remove incorrectly setting R_X86_64_CODE_6_GOTTPOFF relocation type
for APX NDD/NF instructions with GOTPCREL symbol reference modifier.


  Commit: 3de5e8b23f5c145b13d930eb5019566d3a6f88d5
      https://github.com/llvm/llvm-project/commit/3de5e8b23f5c145b13d930eb5019566d3a6f88d5
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M libcxxabi/CMakeLists.txt

  Log Message:
  -----------
  [libc++abi] Build cxxabi with sanitizers (#119612)


  Commit: 6c4e70fcbbb62f38a5aab085634de5faaa5cf729
      https://github.com/llvm/llvm-project/commit/6c4e70fcbbb62f38a5aab085634de5faaa5cf729
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_loongarch64.cpp
    M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_loongarch64.h
    M lldb/source/Plugins/Process/Utility/CMakeLists.txt
    A lldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_loongarch.cpp
    A lldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_loongarch.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp
    M lldb/source/Target/Process.cpp

  Log Message:
  -----------
  [lldb][Process] Introduce LoongArch64 hw break/watchpoint support

This patch adds support for setting/clearing hardware watchpoints and
breakpoints on LoongArch 64-bit hardware.

Refer to the following document for the hw break/watchpoint:
https://loongson.github.io/LoongArch-Documentation/LoongArch-Vol1-EN.html#control-and-status-registers-related-to-watchpoints

Fix Failed Tests:
  lldb-shell :: Subprocess/clone-follow-child-wp.test
  lldb-shell :: Subprocess/clone-follow-parent-wp.test
  lldb-shell :: Subprocess/fork-follow-child-wp.test
  lldb-shell :: Subprocess/fork-follow-parent-wp.test
  lldb-shell :: Subprocess/vfork-follow-child-wp.test
  lldb-shell :: Subprocess/vfork-follow-parent-wp.test
  lldb-shell :: Watchpoint/ExpressionLanguage.test

Depends on: #118043

Reviewed By: SixWeining

Pull Request: https://github.com/llvm/llvm-project/pull/118770


  Commit: 7077896a548a22d6a15c59d4b3edbc19d8e44fce
      https://github.com/llvm/llvm-project/commit/7077896a548a22d6a15c59d4b3edbc19d8e44fce
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M clang/lib/Driver/SanitizerArgs.cpp

  Log Message:
  -----------
  [NFCI][sanitizer] Refactor parseSanitizeTrapArgs (#119797)

parseSanitizeTrapArgs follows the general pattern of "compute the
sanitizer mask based on the default plus opt-in (if supported) minus
opt-out". This patch refactors the functionality into a generalized
function, parseSanitizeArgs, which will be useful for future sanitizer
flag parsing.


  Commit: 3b10e31d3a4a1c660c82287d3b9f6515f37a32ca
      https://github.com/llvm/llvm-project/commit/3b10e31d3a4a1c660c82287d3b9f6515f37a32ca
  Author: hitmoon <zxq_yx_007 at 163.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/test/Driver/freebsd.c

  Log Message:
  -----------
  [clang][LoongArch] Add FreeBSD targets (#119191)

Add support for freebsd on loongarch

Signed-off-by: xiaoqiang zhao <zxq_yx_007 at 163.com>
Co-authored-by: yu shan wei <mpysw at vip.163.com>


  Commit: 5e53a8dadb0019ee87936c1278fa222781257005
      https://github.com/llvm/llvm-project/commit/5e53a8dadb0019ee87936c1278fa222781257005
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    A llvm/test/MachineVerifier/AMDGPU/unsupported-subreg-index-aligned-vgpr-check.mir

  Log Message:
  -----------
  AMDGPU: Fix verifier assert with out of bounds subregister indexes (#119799)

The manual check for aligned VGPR classes would assert if a virtual
register used an index not supported by the register class.


  Commit: ada517b40c6f90a78ea69b9d2d0997c82065c9fd
      https://github.com/llvm/llvm-project/commit/ada517b40c6f90a78ea69b9d2d0997c82065c9fd
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp

  Log Message:
  -----------
  [MLGO][NFC] Clang format MLRegAllocEvictAdvisor.cpp

Run clang-format to fix an issue in spacing in a comment.


  Commit: 1562b70eaf6e0b95910fa684dfc53bd5ca6252e7
      https://github.com/llvm/llvm-project/commit/1562b70eaf6e0b95910fa684dfc53bd5ca6252e7
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DomTreeUpdater.h
    M llvm/include/llvm/Analysis/GenericDomTreeUpdater.h
    M llvm/include/llvm/Analysis/GenericDomTreeUpdaterImpl.h
    M llvm/include/llvm/CodeGen/MachineBasicBlock.h
    M llvm/include/llvm/CodeGen/MachineDomTreeUpdater.h
    M llvm/include/llvm/CodeGen/MachineDominators.h
    M llvm/include/llvm/CodeGen/MachineSSAContext.h
    M llvm/lib/Analysis/DomTreeUpdater.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/LazyMachineBlockFrequencyInfo.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.cpp
    M llvm/lib/CodeGen/MachineBasicBlock.cpp
    M llvm/lib/CodeGen/MachineDomTreeUpdater.cpp
    M llvm/lib/CodeGen/MachineDominanceFrontier.cpp
    M llvm/lib/CodeGen/MachineDominators.cpp
    M llvm/lib/CodeGen/MachineLICM.cpp
    M llvm/lib/CodeGen/MachineLoopInfo.cpp
    M llvm/lib/CodeGen/MachineSink.cpp
    M llvm/lib/CodeGen/MachineUniformityAnalysis.cpp
    M llvm/lib/CodeGen/PHIElimination.cpp
    M llvm/lib/CodeGen/XRayInstrumentation.cpp
    M llvm/lib/Target/AMDGPU/SILateBranchLowering.cpp
    M llvm/lib/Target/AMDGPU/SILowerI1Copies.cpp
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    M llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
    M llvm/lib/Target/X86/X86FlagsCopyLowering.cpp
    M llvm/tools/llvm-reduce/deltas/ReduceInstructionsMIR.cpp
    M llvm/unittests/Analysis/DomTreeUpdaterTest.cpp
    M llvm/unittests/Target/WebAssembly/WebAssemblyExceptionInfoTest.cpp

  Log Message:
  -----------
  Reapply "[DomTreeUpdater] Move critical edge splitting code to updater" (#119547)

This relands commit #115111.
Use traditional way to update post dominator tree, i.e. break critical
edge splitting into insert, insert, delete sequence.
When splitting critical edges, the post dominator tree may change its
root node, and `setNewRoot` only works in normal dominator tree...
See

https://github.com/llvm/llvm-project/blob/6c7e5827eda26990e872eb7c3f0d7866ee3c3171/llvm/include/llvm/Support/GenericDomTree.h#L684-L687


  Commit: 02bcaca5995de283c85acfcca61a39baac315794
      https://github.com/llvm/llvm-project/commit/02bcaca5995de283c85acfcca61a39baac315794
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst

  Log Message:
  -----------
  [docs]Fix a typo around '#pragma clang section' (#119791)


  Commit: 82204154b7bd1f8c487c94c7ef00399d776b29f0
      https://github.com/llvm/llvm-project/commit/82204154b7bd1f8c487c94c7ef00399d776b29f0
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/vec3-base.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reversed-strided-node-with-external-ptr.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/vec3-base.ll
    M llvm/test/Transforms/SLPVectorizer/X86/barriercall.ll
    M llvm/test/Transforms/SLPVectorizer/X86/bottom-to-top-reorder.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract-scalar-from-undef.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extractcost.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-drop-wrapping-flags.ll
    M llvm/test/Transforms/SLPVectorizer/X86/multi-extracts-bv-combined.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec3-base.ll
    M llvm/test/Transforms/SLPVectorizer/alternate-opcode-sindle-bv.ll
    M llvm/test/Transforms/SLPVectorizer/resized-alt-shuffle-after-minbw.ll
    M llvm/test/Transforms/SLPVectorizer/shuffle-mask-resized.ll

  Log Message:
  -----------
  [SLP] Make getSameOpcode support different instructions if they have same semantics. (#112181)


  Commit: 3133acf1fbd1cc57ea8e74288ee9a0acd027d749
      https://github.com/llvm/llvm-project/commit/3133acf1fbd1cc57ea8e74288ee9a0acd027d749
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/vec3-base.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reversed-strided-node-with-external-ptr.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/vec3-base.ll
    M llvm/test/Transforms/SLPVectorizer/X86/barriercall.ll
    M llvm/test/Transforms/SLPVectorizer/X86/bottom-to-top-reorder.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract-scalar-from-undef.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extractcost.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-drop-wrapping-flags.ll
    M llvm/test/Transforms/SLPVectorizer/X86/multi-extracts-bv-combined.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec3-base.ll
    M llvm/test/Transforms/SLPVectorizer/alternate-opcode-sindle-bv.ll
    M llvm/test/Transforms/SLPVectorizer/resized-alt-shuffle-after-minbw.ll
    M llvm/test/Transforms/SLPVectorizer/shuffle-mask-resized.ll

  Log Message:
  -----------
  Revert "[SLP] Make getSameOpcode support different instructions if they have same semantics. (#112181)"

This reverts commit 82204154b7bd1f8c487c94c7ef00399d776b29f0.


  Commit: 60325abeb3226b17c28429dfa6e175f25c171ec0
      https://github.com/llvm/llvm-project/commit/60325abeb3226b17c28429dfa6e175f25c171ec0
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp

  Log Message:
  -----------
  [MLGO] Add Threshold to Prevent Pathological Compile Time Cases (#119807)

This patch adds a threshold flag, -mlregalloc-max-cascade, to prevent
live ranges from being evicted more than is necessary.

After deploying a new regalloc model, we ran into some pathological
cases where the model decided it wanted to ping-pong evictions, taking
up a large amount of compile time. This threshold is mostly a stop gap
while we continue to investigate other solutions and work on
minimizing/constructing test cases.


  Commit: 0c94915d34e6934c04140bb908364e54d1bc8ada
      https://github.com/llvm/llvm-project/commit/0c94915d34e6934c04140bb908364e54d1bc8ada
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.mir

  Log Message:
  -----------
  [RISCV] Use _B* suffix for vector mask logic pseudo instructions. (#119787)

Replace LMUL suffixes with _B1, _B2, etc. This matches what we do
for other mask only instructions like VCPOP_M, VFIRST_M, VMSBF_M,
VLM, VSM, etc.

Now all pseudoinstructions that use Log2SEW=0 will be consistently
named.


  Commit: 2bf3ef18471a987aea32fd845535b58aedbb3e46
      https://github.com/llvm/llvm-project/commit/2bf3ef18471a987aea32fd845535b58aedbb3e46
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M bolt/test/unreadable-profile.test

  Log Message:
  -----------
  [BOLT] Require non root user for unreadable-profile.test (#119816)

This patch adds a requirement for a non root user in
unreadable-profile.test. This test fails if run as a root user (like in
a container without explicitly changing the user), which can lead to
some CI test failures.


  Commit: ae89be0797e663b5e699104f58cbb8f5a090080b
      https://github.com/llvm/llvm-project/commit/ae89be0797e663b5e699104f58cbb8f5a090080b
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M compiler-rt/lib/orc/macho_tlv.x86-64.S
    M compiler-rt/lib/orc/sysv_reenter.arm64.S

  Log Message:
  -----------
  [ORC-RT] Fix comments. NFC.

Fix file name, symbol name, and formatting in comments.


  Commit: a1739d2501e813f629268f99a2ab3485aaf02ba1
      https://github.com/llvm/llvm-project/commit/a1739d2501e813f629268f99a2ab3485aaf02ba1
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/aarch64.h

  Log Message:
  -----------
  [JITLink][aarch64] Fix comment for trampoline instruction sequence. NFC.

The comment was from a prototype and doesn't reflect the final instruction
sequence.


  Commit: 81c680a89622466b279357ca2e1045ef84d2c534
      https://github.com/llvm/llvm-project/commit/81c680a89622466b279357ca2e1045ef84d2c534
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/JITLinkReentryTrampolines.cpp

  Log Message:
  -----------
  [ORC] Improve JITLinkReentryTrampolines "arch not supported" error message.

"Architecture not supported" becomes
"JITLinkReentryTrampolines: architecture <arch> not supported".


  Commit: 1865f0e203d4b23e676fb6ce72cf8797d0f0b80a
      https://github.com/llvm/llvm-project/commit/1865f0e203d4b23e676fb6ce72cf8797d0f0b80a
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M lld/COFF/PDB.cpp
    M lld/COFF/Writer.cpp

  Log Message:
  -----------
  [lld-link] Replace warn(...) with Warn(ctx)


  Commit: 7a648554f886fbc043c4f3f58ca88f6c4535f2cf
      https://github.com/llvm/llvm-project/commit/7a648554f886fbc043c4f3f58ca88f6c4535f2cf
  Author: Akshat Oke <Akshat.Oke at amd.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/sgpr-regalloc-flags.ll

  Log Message:
  -----------
  [AMDGPU][CodeGen] Do not backtrace invalid -regalloc param (#119687)

No need to generate a stack trace and a GitHub issue prompt on a wrongly
set regalloc option.


  Commit: 37d0e2f46e885f47c97b78c21d6b8668cd0ef871
      https://github.com/llvm/llvm-project/commit/37d0e2f46e885f47c97b78c21d6b8668cd0ef871
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/test/CodeGenOpenCL/opencl_types.cl

  Log Message:
  -----------
  clang: Fix broken check prefix in test (#119821)


  Commit: ea44647a0b49de826191eeb6e05020262b5a81e9
      https://github.com/llvm/llvm-project/commit/ea44647a0b49de826191eeb6e05020262b5a81e9
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M clang/docs/tools/dump_format_help.py
    M clang/docs/tools/dump_format_style.py

  Log Message:
  -----------
  [clang-format] Write in text mode with LF in dump_format_[help|style].py


  Commit: 5828aef014ea2b131fb126b328e7828d628ad5ed
      https://github.com/llvm/llvm-project/commit/5828aef014ea2b131fb126b328e7828d628ad5ed
  Author: Mike Hommey <mh at glandium.org>
  Date:   2024-12-12 (Thu, 12 Dec 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp

  Log Message:
  -----------
  [sanitizer_common] Return nullptr from ASan on ERROR_COMMITMENT_LIMIT (#119753)

Followup to #117929


  Commit: 28c3bf5c6dad0974f9f15b58afd0935c0c6cb3e4
      https://github.com/llvm/llvm-project/commit/28c3bf5c6dad0974f9f15b58afd0935c0c6cb3e4
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/test/CXX/dcl.decl/dcl.meaning/dcl.fct/p13.cpp
    M clang/test/Parser/cxx0x-decl.cpp
    M clang/test/Parser/cxx2c-pack-indexing.cpp
    M clang/test/SemaCXX/cxx2c-pack-indexing-ext-diags.cpp

  Log Message:
  -----------
  [Clang][Parser] Add a warning to ambiguous uses of T...[N] types (#116332)

`void f(T... [N])` is no longer treated as a function with a parameter
of pack expansion type after the implementation of the pack indexing
feature. This patch introduces a warning to clarify such cases while
maintaining it as a pack indexing type in all language modes.

Closes https://github.com/llvm/llvm-project/issues/115222


  Commit: d7a8e09893c43ad1169ff34989c3bec721d8b1a9
      https://github.com/llvm/llvm-project/commit/d7a8e09893c43ad1169ff34989c3bec721d8b1a9
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/test/Format/docs_updated.test

  Log Message:
  -----------
  [clang-format] Add --strip-trailing-cr to diff in docs_updated.test (#119666)

Fixes #119517.


  Commit: e32c428bec2074f954350d225104c299964b4585
      https://github.com/llvm/llvm-project/commit/e32c428bec2074f954350d225104c299964b4585
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/test/Transforms/SimplifyCFG/X86/switch_to_lookup_table.ll
    M llvm/test/Transforms/SimplifyCFG/switch-dup-bbs.ll

  Log Message:
  -----------
  [SimplifyCFG] Precommit tests for PR118955 (NFC)


  Commit: d26df3225537f3f9dc283f4fb33d191d11802d8c
      https://github.com/llvm/llvm-project/commit/d26df3225537f3f9dc283f4fb33d191d11802d8c
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/X86/switch_to_lookup_table.ll
    M llvm/test/Transforms/SimplifyCFG/switch-dup-bbs.ll

  Log Message:
  -----------
  [SimplifyCFG] Consider preds to switch in `simplifyDuplicateSwitchArms`

Allow a duplicate basic block with multiple predecessors to the
jump table to be simplified, by considering that the same basic
block may appear in more switch cases.


  Commit: 1d070988d9172965dee227e5629fa886845b815f
      https://github.com/llvm/llvm-project/commit/1d070988d9172965dee227e5629fa886845b815f
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86WinEHState.cpp
    A llvm/test/CodeGen/WinEH/wineh-musttail-call.ll

  Log Message:
  -----------
  [WinEH] Take musttail calls into account when unlinking eh records (#119702)

Exception handling records are unlinked on function return. However, if
there is a musttail call before the return, that's the de-facto point of
termination and the unlinking instructions must be inserted *before*
that.

Fixes #119255


  Commit: 3d6b2d491209018918e4c881a0917bffc54cc0d9
      https://github.com/llvm/llvm-project/commit/3d6b2d491209018918e4c881a0917bffc54cc0d9
  Author: David Green <david.green at arm.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-ext-debugloc.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-build-vector.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-concat-vectors.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-inserts.mir

  Log Message:
  -----------
  [GlobalISel] Use replaceRegOrBuildCopy when legalizer-combining anyext(undef). (#119721)

This just avoids the unnecessary creation of some COPY nodes created
from the CSE builder.


  Commit: 06789ccb1695214f787cd471a300522973d33375
      https://github.com/llvm/llvm-project/commit/06789ccb1695214f787cd471a300522973d33375
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M libclc/clc/include/clc/clcmacro.h
    M libclc/clc/include/clc/math/clc_ceil.h
    M libclc/clc/include/clc/math/clc_fabs.h
    M libclc/clc/include/clc/math/clc_floor.h
    M libclc/clc/include/clc/math/clc_rint.h
    M libclc/clc/include/clc/math/clc_trunc.h
    A libclc/clc/include/clc/math/unary_builtin.inc
    M libclc/clc/lib/clspv/SOURCES
    R libclc/clc/lib/clspv/dummy.cl
    M libclc/clc/lib/generic/SOURCES
    A libclc/clc/lib/generic/math/clc_ceil.cl
    A libclc/clc/lib/generic/math/clc_fabs.cl
    A libclc/clc/lib/generic/math/clc_floor.cl
    A libclc/clc/lib/generic/math/clc_rint.cl
    A libclc/clc/lib/generic/math/clc_trunc.cl
    M libclc/clc/lib/spirv/SOURCES
    M libclc/clc/lib/spirv64/SOURCES
    M libclc/generic/lib/math/ceil.cl
    M libclc/generic/lib/math/fabs.cl
    M libclc/generic/lib/math/floor.cl
    M libclc/generic/lib/math/rint.cl
    M libclc/generic/lib/math/round.cl
    M libclc/generic/lib/math/sqrt.cl
    M libclc/generic/lib/math/trunc.cl
    R libclc/generic/lib/math/unary_builtin.inc

  Log Message:
  -----------
  [libclc] Optimize ceil/fabs/floor/rint/trunc (#119596)

These functions all map to the corresponding LLVM intrinsics, but the
vector intrinsics weren't being generated. The intrinsic mapping from
CLC vector function to vector intrinsic was working correctly, but the
mapping from OpenCL builtin to CLC function was suboptimally recursively
splitting vectors in halves.

For example, with this change, `ceil(float16)` calls `llvm.ceil.v16f32`
directly once optimizations are applied.

Now also, instead of generating LLVM intrinsics through `__asm` we now
call clang elementwise builtins for each CLC builtin. This should be a
more standard way of achieving the same result

The CLC versions of each of these builtins are also now built and
enabled for SPIR-V targets. The LLVM -> SPIR-V translator maps the
intrinsics to the appropriate OpExtInst, so there should be no
difference in semantics, despite the newly introduced indirection from
OpenCL builtin through the CLC builtin to the intrinsic.

The AMDGPU targets make use of the same `_CLC_DEFINE_UNARY_BUILTIN`
macro to override `sqrt`, so those functions also appear more optimal
with this change, calling the vector `llvm.sqrt.vXf32` intrinsics
directly.


  Commit: 4c597d42dca13220c19661a021a11e28e2af801b
      https://github.com/llvm/llvm-project/commit/4c597d42dca13220c19661a021a11e28e2af801b
  Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
    M mlir/test/Conversion/VectorToXeGPU/load-to-xegpu.mlir
    M mlir/test/Conversion/VectorToXeGPU/store-to-xegpu.mlir
    M mlir/test/Conversion/VectorToXeGPU/transfer-read-to-xegpu.mlir
    M mlir/test/Conversion/VectorToXeGPU/transfer-write-to-xegpu.mlir

  Log Message:
  -----------
  [mlir][xegpu] Support boundary checks only for block instructions (#119380)

Constrains Vector lowering to apply boundary checks only to data
transfers operating on block shapes.

This further aligns lowering with the current Xe instructions'
restrictions.


  Commit: ccc8e454044477de9ce71c1b22dd048f189a9601
      https://github.com/llvm/llvm-project/commit/ccc8e454044477de9ce71c1b22dd048f189a9601
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/SampleProfile.cpp
    M llvm/test/Transforms/SampleProfile/pseudo-probe-profile.ll

  Log Message:
  -----------
  [PseudoProbe] Fix cleanup for pseudo probe after annotation (#119660)

When using -sample-profile-remove-probe, pseudo probe desc should
also be removed and dwarf discriminator for call instruction should
be restored.


  Commit: 1fd3d1d04e6339fff7ef5b8b172ed4954885dde1
      https://github.com/llvm/llvm-project/commit/1fd3d1d04e6339fff7ef5b8b172ed4954885dde1
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/include/clang/Basic/arm_sme.td
    M clang/include/clang/Basic/arm_sve_sme_incl.td
    A clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_fp8_fdot.c
    A clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_fp8_fdot.c
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/lib/Target/AArch64/SMEInstrFormats.td
    A llvm/test/CodeGen/AArch64/sme2-intrinsics-fp8-fdot.ll

  Log Message:
  -----------
  [AArch64] Add intrinsics for SME FP8 FDOT LANE instructions (#118492)

Add support for the following SME 8 bit floating-point dot-product
intrinsics:
* void svdot_lane_za16_mf8_vg1x2_fpm(uint32_t slice, svmfloat8x2_t zn,
svmfloat8_t zm, uint64_t imm_idx, fpm_t fpm);
* void svdot_lane_za16_mf8_vg1x4_fpm(uint32_t slice, svmfloat8x4_t zn,
svmfloat8_t zm, uint64_t imm_idx, fpm_t fpm);
* void svdot_lane_za32_mf8_vg1x2_fpm(uint32_t slice, svmfloat8x2_t zn,
svmfloat8_t zm, uint64_t imm_idx, fpm_t fpm);
* void svdot_lane_za32_mf8_vg1x4_fpm(uint32_t slice, svmfloat8x4_t zn,
svmfloat8_t zm, uint64_t imm_idx, fpm_t fpm);

---------

Co-authored-by: Momchil Velikov <momchil.velikov at arm.com>
Co-authored-by: Marian Lukac <marian.lukac at arm.com>
Co-authored-by: Caroline Concatto <caroline.concatto at arm.com>
Co-authored-by: SpencerAbson <Spencer.Abson at arm.com>


  Commit: 7da4b6b7a5beba9ff2589c8ecdc141316acdad12
      https://github.com/llvm/llvm-project/commit/7da4b6b7a5beba9ff2589c8ecdc141316acdad12
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/misc/unused-parameters.rst

  Log Message:
  -----------
  [clang-tidy][doc][NFC] format doc for misc-unused-parameters (#119839)


  Commit: d6cc140dfdccc7314cc124a7d4aa4d0176299531
      https://github.com/llvm/llvm-project/commit/d6cc140dfdccc7314cc124a7d4aa4d0176299531
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    A .ci/compute-projects.sh
    M .ci/generate-buildkite-pipeline-premerge

  Log Message:
  -----------
  [CI] Refactor common functionality into separate script (#119530)

This patch refactors some common functionality present in the CI scripts
to a separate shell script. This is mainly intended to make it easier to
reuse this functionality inside of a Github Actions pipeline as we make
the switch.


  Commit: bc29fc937c6cb4a210f80c93c79fc6ed97c801f8
      https://github.com/llvm/llvm-project/commit/bc29fc937c6cb4a210f80c93c79fc6ed97c801f8
  Author: Petr Kurapov <petr.a.kurapov at intel.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M mlir/include/mlir/Conversion/GPUCommon/GPUCommonPass.h
    M mlir/include/mlir/Dialect/GPU/Transforms/Passes.h
    R mlir/include/mlir/Dialect/GPU/Transforms/Utils.h
    A mlir/include/mlir/Dialect/GPU/Utils/DistributionUtils.h
    A mlir/include/mlir/Dialect/GPU/Utils/GPUUtils.h
    M mlir/lib/Dialect/GPU/CMakeLists.txt
    M mlir/lib/Dialect/GPU/Transforms/AsyncRegionRewriter.cpp
    M mlir/lib/Dialect/GPU/Transforms/KernelOutlining.cpp
    M mlir/lib/Dialect/GPU/Transforms/SubgroupReduceLowering.cpp
    R mlir/lib/Dialect/GPU/Transforms/Utils.cpp
    A mlir/lib/Dialect/GPU/Utils/CMakeLists.txt
    A mlir/lib/Dialect/GPU/Utils/DistributionUtils.cpp
    A mlir/lib/Dialect/GPU/Utils/Utils.cpp
    M mlir/lib/Dialect/Vector/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp

  Log Message:
  -----------
  [MLIR] Create GPU utils library & move distribution utils (#119264)

Continue the move of `warp_execute_on_lane_0` op to the gpu dialect
(#116994). This patch creates a utils library in GPU and moves generic
helper functions there.


  Commit: 05860f9b384b9b8f8bb01fa8984dbc2833669a27
      https://github.com/llvm/llvm-project/commit/05860f9b384b9b8f8bb01fa8984dbc2833669a27
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args-checked-const-member.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args-checked-ptr.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args-counted-const-member.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args.cpp
    M clang/test/Analysis/Checkers/WebKit/local-vars-checked-const-member.cpp
    M clang/test/Analysis/Checkers/WebKit/local-vars-counted-const-member.cpp
    M clang/test/Analysis/Checkers/WebKit/mock-types.h

  Log Message:
  -----------
  [WebKit checkers] Recognize ensureFoo functions (#119681)

In WebKit, we often write Foo::ensureBar function which lazily
initializes m_bar and returns a raw pointer or a raw reference to m_bar.
Such a return value is safe to use for the duration of a member function
call in Foo so long as m_bar is const so that it never gets unset or
updated with a new value once it's initialized.

This PR adds support for recognizing these types of functions and
treating its return value as a safe origin of a function argument
(including "this") or a local variable.


  Commit: 473e2518e850598feae62916ebef4b4dbc88a0ee
      https://github.com/llvm/llvm-project/commit/473e2518e850598feae62916ebef4b4dbc88a0ee
  Author: GeorgeKA <gkasante at gmail.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst

  Log Message:
  -----------
  [clang] Document the return value of __builtin_COLUMN (#118360)

PR for issue #78657

Updated clang/docs/LanguageExtensions.rst to detail the return value of
__builtin_COLUMN for this implementation.

--

Fyi, this is my first contribution, so please bear with me.

There already appears to be a unit test for __builtin_COLUMN in
clang/test/SemaCXX/source_location.cpp.


  Commit: 79f41434460d3305c889a6483ea59f1e3ea19b5a
      https://github.com/llvm/llvm-project/commit/79f41434460d3305c889a6483ea59f1e3ea19b5a
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp

  Log Message:
  -----------
  [mlir][Transforms] Dialect conversion: Move `hasRewrite` to expensive checks (#119848)

The dialect conversion has various checks that detect incorrect API
usage in patterns. One of these checks turned out to be quite expensive
(N*M complexity where N is the number of block rewrites and M is the
total number of rewrites) in NVIDIA-internal workloads: Checking that a
block is not converted multiple times.

This check iterates over the stack of all rewrites, which can be large.
We saw `hasRewrite` being called around 45000 times with an average
rewrite stack size of 500000.

This PR moves the check to `MLIR_ENABLE_EXPENSIVE_PATTERN_API_CHECKS`.
For consistency reasons, the other `hasRewrite`-based check is also
moved there.


  Commit: ff939b06a5ef57ac926c53e9f85b955b8bd855aa
      https://github.com/llvm/llvm-project/commit/ff939b06a5ef57ac926c53e9f85b955b8bd855aa
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/Utils/DistributionUtils.h

  Log Message:
  -----------
  [mlir] Fix the header guard (NFC)

/llvm-project/mlir/include/mlir/Dialect/GPU/Utils/DistributionUtils.h:9:9:
error: 'MLIR_DIALECT_GPU_TRANSFORMS_DISTRIBUTIONUTILS_H_' is used as a header guard here, followed by #define of a different macro [-Werror,-Wheader-guard]
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/llvm-project/mlir/include/mlir/Dialect/GPU/Utils/DistributionUtils.h:10:9:
note: 'MLIR_DIALECT_GPU_TRANSFORMS_DISTRIBITIONUTILS_H_' is defined here; did you mean 'MLIR_DIALECT_GPU_TRANSFORMS_DISTRIBUTIONUTILS_H_'?
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        MLIR_DIALECT_GPU_TRANSFORMS_DISTRIBUTIONUTILS_H_
1 error generated.


  Commit: 217e0f39710dec3348c996ecf98a76fd08b69853
      https://github.com/llvm/llvm-project/commit/217e0f39710dec3348c996ecf98a76fd08b69853
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    A llvm/include/llvm/Analysis/ScalarEvolutionPatternMatch.h
    M llvm/lib/Analysis/ScalarEvolution.cpp

  Log Message:
  -----------
  [SCEV] Add initial pattern matching for SCEV constants. (NFC) (#119389)

Add initial pattern matching for SCEV constants. Follow-up patches will
add additional matchers for various SCEV expressions.

This patch only converts a few instances to use the new matchers to make
sure everything builds as expected for now.

PR: https://github.com/llvm/llvm-project/pull/119389


  Commit: 94a77ebe240eb7dff7c5d645fc7f60cce049783f
      https://github.com/llvm/llvm-project/commit/94a77ebe240eb7dff7c5d645fc7f60cce049783f
  Author: David Green <david.green at arm.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-hoist-same-hands.mir

  Log Message:
  -----------
  [AArch64][GlobalISel] Guard against no operands in matchHoistLogicOpWithSameOpcodeHands

In case both LeftHandInst and RightHandInst are IMPLICIT_DEF with no input
operands, this patch protects against the post-legalizer-combiner
matchHoistLogicOpWithSameOpcodeHands with no operands. The
prelegalizercombiner-hoist-same-hands.mir test was cleaned up a little in the
process, and has a post-legalizer run line added so that the implicit_def do
not get folded awwy.


  Commit: 8820de68ddf02fe3c73def49ec32bbeca54c2754
      https://github.com/llvm/llvm-project/commit/8820de68ddf02fe3c73def49ec32bbeca54c2754
  Author: Pedro Lobo <pedro.lobo at tecnico.ulisboa.pt>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/lib/IR/IntrinsicInst.cpp

  Log Message:
  -----------
  [debug] Use poison instead of undef to set a killed dbg.assign address [NFC] (#119760)


  Commit: 30cbd09f4b8f7e94663631f0240d11bb754ea25b
      https://github.com/llvm/llvm-project/commit/30cbd09f4b8f7e94663631f0240d11bb754ea25b
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
    M clang/lib/AST/ByteCode/InterpBuiltinBitCast.h

  Log Message:
  -----------
  [clang][bytecode] Fix memcmp/bcmp failures on big-endian hosts (#119851)

See the discussion in

https://github.com/llvm/llvm-project/pull/119678#issuecomment-2539680746
and
https://github.com/llvm/llvm-project/pull/119544#issuecomment-2539678561


  Commit: 84b0f0145887bbfe49fd4dc85490b14108a72cee
      https://github.com/llvm/llvm-project/commit/84b0f0145887bbfe49fd4dc85490b14108a72cee
  Author: VScigolevs <vladimirs.scigolevs at zimperium.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/lib/Sema/SemaAttr.cpp
    A clang/test/SemaCXX/msvc-pragma-function-no-builtin-attr.cpp

  Log Message:
  -----------
  [clang-cl] Don't add implicit NoBuiltinAttr to deleted or defaulted functions (#119719)

In Clang `#pragma function` is implemented by adding an implicit
NoBuiltin Attribute to all function definitions after the pragma. This
(wrongly) includes also defaulted or deleted functions, which results in
the error, shown in #116256.

As this attribute has no effect on the deleted or defaulted functions,
this commit fixes the previously mentioned issue by simply not adding
the attribute in such cases.

Fixes #116256


  Commit: 8bf19ec444593b3076a446a8eeb5042bbf79dc65
      https://github.com/llvm/llvm-project/commit/8bf19ec444593b3076a446a8eeb5042bbf79dc65
  Author: macurtis-amd <macurtis at amd.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/unittests/Frontend/CompilerInvocationTest.cpp

  Log Message:
  -----------
  [clang] Fix use of dangling ptr in CommandLineTest (#119798)

If 'GeneratedArgsStorage' ever grows, contained strings may get copied
and data pointers stored in 'GeneratedArgs' may become invalid, pointing
to deallocated memory.


  Commit: 716360367fbdabac2c374c19b8746f4de49a5599
      https://github.com/llvm/llvm-project/commit/716360367fbdabac2c374c19b8746f4de49a5599
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M polly/lib/Analysis/ScopBuilder.cpp
    M polly/lib/Analysis/ScopDetection.cpp
    M polly/lib/Analysis/ScopInfo.cpp
    M polly/lib/Support/SCEVAffinator.cpp
    M polly/lib/Support/SCEVValidator.cpp
    M polly/lib/Support/ScopHelper.cpp
    M polly/lib/Support/VirtualInstruction.cpp

  Log Message:
  -----------
  [Polly] Use const SCEV * explicitly in more places. (NFC)

Use const SCEV * explicitly in more places to prepare for
https://github.com/llvm/llvm-project/pull/91961.


  Commit: a30e50fcb3119cc1f84f0398d229a929f296188d
      https://github.com/llvm/llvm-project/commit/a30e50fcb3119cc1f84f0398d229a929f296188d
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/test/CodeGen/SystemZ/zos-mixed-ptr-sizes-malloc.c
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    M llvm/test/Analysis/BasicAA/smaller-index-size-overflow.ll

  Log Message:
  -----------
  [BasicAA] Do not decompose past casts with different index width (#119365)

BasicAA currently tries to support addrspacecasts that change the index
width by performing the decomposition in the maximum of all index widths
and then trying to fix this up with in-place sign extends to get correct
overflow behavior if the actual index width is smaller.

However, even in the case where we don't mix different index widths and
just have an index width that is smaller than the maximum, the behavior
is incorrect (see test), because we only perform the index width
adjustment during decomposition and not any of the later logic -- and we
don't do anything at all for variable offsets. I'm sure that the case
where we actually mix different index widths is even more broken than
that.

Fix this by not allowing decomposition through index width changes. If
the pointers have different index widths, fall back to a base object
comparison, ignoring the offsets.


  Commit: 07aab4a3cdab3d46caab270845413c5ba4546b50
      https://github.com/llvm/llvm-project/commit/07aab4a3cdab3d46caab270845413c5ba4546b50
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/include/llvm/IR/DataLayout.h
    M llvm/lib/IR/DataLayout.cpp

  Log Message:
  -----------
  [DataLayout] Remove getMaxIndexSizeInBits() API

The last use was removed in #119365, and we should not add more
uses of this concept in the future either.


  Commit: a25b2ba782dd5839492b135518f0a58d4a19e1f9
      https://github.com/llvm/llvm-project/commit/a25b2ba782dd5839492b135518f0a58d4a19e1f9
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/include/llvm/AsmParser/LLParser.h
    A llvm/test/Assembler/pr119818.ll

  Log Message:
  -----------
  [AsmParser] Allow comparing ValIDs with different kinds (#119834)

This patch allows comparing `t_[Local|Global]ID` with
`t_[Local|Global]Name`.
Closes https://github.com/llvm/llvm-project/issues/119818.


  Commit: 5fd385b3c145270bb9a6388d998a870bf3f79b54
      https://github.com/llvm/llvm-project/commit/5fd385b3c145270bb9a6388d998a870bf3f79b54
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M libcxx/include/string
    M libcxx/include/string_view

  Log Message:
  -----------
  [libc++][NFC] Simplify the implementation of string and string_views operator== (#117184)


  Commit: 7c9404c279cfa13e24a043e6357cc85bd12f55f1
      https://github.com/llvm/llvm-project/commit/7c9404c279cfa13e24a043e6357cc85bd12f55f1
  Author: Ivan R. Ivanov <ivanov.i.aa at m.titech.ac.jp>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/lib/Parse/ParseOpenMP.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    A flang/test/Lower/OpenMP/KernelLanguage/bare-clause.f90
    A flang/test/Semantics/OpenMP/ompx-bare.f90
    M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp

  Log Message:
  -----------
  [flang][OpenMP] Add frontend support for ompx_bare clause (#111106)


  Commit: a21f9bfe29c2b9f1967952d12a5b7cb8f8b75202
      https://github.com/llvm/llvm-project/commit/a21f9bfe29c2b9f1967952d12a5b7cb8f8b75202
  Author: Danial Klimkin <dklimkin at google.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [bazel]Fix Bazel build past bc29fc937c6cb4a210f80c93c79fc6ed97c801f8 (#119874)


  Commit: d098ce0ec9e4dddb494f1f61ff36921dd4ce5f8e
      https://github.com/llvm/llvm-project/commit/d098ce0ec9e4dddb494f1f61ff36921dd4ce5f8e
  Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/lib/Support/Windows/Path.inc

  Log Message:
  -----------
  [llvm][Support][Windows] Refactored remove_directories() w/o CComPtr and atlbase.h (#119843)

This is the update of #118677. This patch fixes building with mingw.


  Commit: 12a42a60f9e63fab5699b210248b5b51bd21b6e3
      https://github.com/llvm/llvm-project/commit/12a42a60f9e63fab5699b210248b5b51bd21b6e3
  Author: VScigolevs <vladimirs.scigolevs at zimperium.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/test/SemaCXX/msvc-pragma-function-no-builtin-attr.cpp

  Log Message:
  -----------
  Fix SemaCXX/msvc-pragma-function-no-builtin-attr.cpp test (#119719)

Fix test failure from #119719
84b0f0145887bbfe49fd4dc85490b14108a72cee


  Commit: fb8df8cb658278ceba9ef4b96e0b448aed32c1f6
      https://github.com/llvm/llvm-project/commit/fb8df8cb658278ceba9ef4b96e0b448aed32c1f6
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M lldb/include/lldb/Core/dwarf.h
    M lldb/source/Plugins/SymbolFile/DWARF/DIERef.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp

  Log Message:
  -----------
  [lldb/DWARF] s/DWARFRangeList/llvm::DWARFAddressRangeVector (#116620)

The main difference is that the llvm class (just a std::vector in
disguise) is not sorted. It turns out this isn't an issue because the
callers either:
- ignore the range list;
- convert it to a different format (which is then sorted);
- or query the minimum value (which is faster than sorting)

The last case is something I want to get rid of in a followup as a part
of removing the assumption that function's entry point is also its
lowest address.


  Commit: ea8e328ae2bea9d9a7d556ef4d791fa116f7de18
      https://github.com/llvm/llvm-project/commit/ea8e328ae2bea9d9a7d556ef4d791fa116f7de18
  Author: Kristóf Umann <dkszelethus at gmail.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
    M clang/test/Analysis/analyzer-config.c
    M clang/unittests/StaticAnalyzer/Z3CrosscheckOracleTest.cpp

  Log Message:
  -----------
  [analyzer][Z3] Restore the original timeout of 15s (#118291)

Discussion here:

https://discourse.llvm.org/t/analyzer-rfc-taming-z3-query-times/79520/15?u=szelethus

The original patch, #97298 introduced new timeouts backed by thorough
testing and measurements to keep the running time of Z3 within
reasonable limits. The measurements also showed that only certain
reports and certain TUs were responsible for the poor performance of Z3
refutation.

Unfortunately, it seems like that on machines with different
characteristics (slower machines) the current timeouts don't just axe
0.01% of reports, but many more as well. Considering that timeouts are
inherently nondeterministic as a cutoff point, this lead reports sets
being vastly different on the same projects with the same configuration.
The discussion link shows that all configurations introduced in the
patch with their default values lead to severa nondeterminism of the
analyzer. As we, and others use the analyzer as a gating tool for PRs,
we should revert to the original defaults.

We should respect that
* There are still parts of the analyzer that are either proven or
suspected to contain nondeterministic code (like pointer sets),
* A 15s timeout is more likely to hit the same reports every time on a
wider range of machines, but is still inherently nondeterministic, but
an infinite timeout leads to the tool hanging,
* If you measure the performance of the analyzer on your machines, you
can and should achieve some speedup with little or no observable
nondeterminism.

---------

Co-authored-by: Balazs Benics <benicsbalazs at gmail.com>


  Commit: 75e6d0eb4d6ad1b58e5eb5c4d25371e6062cee44
      https://github.com/llvm/llvm-project/commit/75e6d0eb4d6ad1b58e5eb5c4d25371e6062cee44
  Author: Mats Petersson <mats.petersson at arm.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    A flang/test/Lower/OpenMP/Todo/error.f90
    A flang/test/Parser/OpenMP/error-unparse.f90
    M llvm/include/llvm/Frontend/OpenMP/OMP.td

  Log Message:
  -----------
  [flang][OpenMP]Add support for OpenMP ERROR directive (#119582)

Lowering leads to a TODO, with a test to confirm.

Also testing unparse.

---------

Co-authored-by: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>


  Commit: c2172431c72c9b249bf5bdfcc0c239fbfe64fa9b
      https://github.com/llvm/llvm-project/commit/c2172431c72c9b249bf5bdfcc0c239fbfe64fa9b
  Author: Momchil Velikov <momchil.velikov at arm.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/include/clang/Basic/arm_sve.td
    M clang/include/clang/Basic/arm_sve_sme_incl.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    A clang/test/CodeGen/AArch64/fp8-intrinsics/acle_sve2_fp8_fdot.c
    M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_fp8.c
    M clang/utils/TableGen/SveEmitter.cpp
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    A llvm/test/CodeGen/AArch64/fp8-sve-fdot.ll

  Log Message:
  -----------
  [AArch64] Implements FP8 SVE intrinsics for dot-product (#118125)

This patch adds the following intrinsics:

* 8-bit floating-point dot product to single-precision.

// Only if (__ARM_FEATURE_SVE2 && __ARM_FEATURE_FP8DOT4) ||
__ARM_FEATURE_SSVE_FP8DOT4
svfloat32_t svdot[_f32_mf8]_fpm(svfloat32_t zda, svmfloat8_t zn,
svmfloat8_t zm, fpm_t fpm);
svfloat32_t svdot[_n_f32_mf8]_fpm(svfloat32_t zda, svmfloat8_t zn,
mfloat8_t zm, fpm_t fpm);

* 8-bit floating-point indexed dot product to single-precision.

// Only if (__ARM_FEATURE_SVE2 && __ARM_FEATURE_FP8DOT4) ||
__ARM_FEATURE_SSVE_FP8DOT4
svfloat32_t svdot_lane[_f32_mf8]_fpm(svfloat32_t zda, svmfloat8_t zn,
svmfloat8_t zm,
                                       uint64_t imm0_3, fpm_t fpm);

* 8-bit floating-point dot product to half-precision.

// Only if (__ARM_FEATURE_SVE2 && __ARM_FEATURE_FP8DOT2) ||
__ARM_FEATURE_SSVE_FP8DOT2
svfloat16_t svdot[_f16_mf8]_fpm(svfloat16_t zda, svmfloat8_t zn,
svmfloat8_t zm, fpm_t fpm);
svfloat16_t svdot[_n_f16_mf8]_fpm(svfloat16_t zda, svmfloat8_t zn,
mfloat8_t zm, fpm_t fpm);

* 8-bit floating-point indexed dot product to half-precision.

// Only if (__ARM_FEATURE_SVE2 && __ARM_FEATURE_FP8DOT2) ||
__ARM_FEATURE_SSVE_FP8DOT2
svfloat16_t svdot_lane[_f16_mf8]_fpm(svfloat16_t zda, svmfloat8_t zn,
svmfloat8_t zm,
                                       uint64_t imm0_7, fpm_t fpm);


  Commit: 89f1f32bff76c8cf4545ada34663c6a758214cf0
      https://github.com/llvm/llvm-project/commit/89f1f32bff76c8cf4545ada34663c6a758214cf0
  Author: Durgadoss R <durgadossr at nvidia.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    A mlir/test/Target/LLVMIR/nvvm/tma_prefetch.mlir
    M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
    M mlir/test/Target/LLVMIR/nvvmir.mlir

  Log Message:
  -----------
  [MLIR][NVVM] Refactor tests in nvvmir.mlir (#119731)

* Move the negative tests from nvvmir.mlir to nvvm-invalid.mlir. With
   this, all the error-handling tests are moved to the nvvm-invalid.mlir file.
* Move the tma_prefetch tests to a separate file, as there are many
   tests, and fix the FileCheck prefix for these.
* Since undef is discouraged, we use an 'i64 0' as the placeholder value
   for cache-hint when unused.

Signed-off-by: Durgadoss R <durgadossr at nvidia.com>


  Commit: 4a0d53a0b0a58a3c6980a7c551357ac71ba3db10
      https://github.com/llvm/llvm-project/commit/4a0d53a0b0a58a3c6980a7c551357ac71ba3db10
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/include/llvm/IR/CmpPredicate.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/OverflowInstAnalysis.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/ExpandMemCmp.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Scalar/CallSiteSplitting.cpp
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/EarlyCSE.cpp
    M llvm/lib/Transforms/Scalar/GuardWidening.cpp
    M llvm/lib/Transforms/Scalar/JumpThreading.cpp
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/lib/Transforms/Scalar/LoopBoundSplit.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
    M llvm/lib/Transforms/Utils/LoopPeel.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/unittests/IR/PatternMatch.cpp

  Log Message:
  -----------
  PatternMatch: migrate to CmpPredicate (#118534)

With the introduction of CmpPredicate in 51a895a (IR: introduce struct
with CmpInst::Predicate and samesign), PatternMatch is one of the first
key pieces of infrastructure that must be updated to match a CmpInst
respecting samesign information. Implement this change to Cmp-matchers.

This is a preparatory step in migrating the codebase over to
CmpPredicate. Since we no functional changes are desired at this stage,
we have chosen not to migrate CmpPredicate::operator==(CmpPredicate)
calls to use CmpPredicate::getMatching(), as that would have visible
impact on tests that are not yet written: instead, we call
CmpPredicate::operator==(Predicate), preserving the old behavior, while
also inserting a few FIXME comments for follow-ups.


  Commit: 7a3504a133437525f3e56f5811e313e4695f932f
      https://github.com/llvm/llvm-project/commit/7a3504a133437525f3e56f5811e313e4695f932f
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenACC.cpp
    A clang/test/SemaOpenACC/data-construct-copy-ast.cpp
    A clang/test/SemaOpenACC/data-construct-copy-clause.c
    M clang/test/SemaOpenACC/data-construct.cpp

  Log Message:
  -----------
  [OpenACC] Enable 'copy' clause sema for data clause

'copy' is another that is identical in behavior on 'data' as far as
semantic analysis is concerned as the compute constructs, so this patch
adds tests and enables 'copy'.


  Commit: 979e9361f0e0426e555c94cb8b1a64c655805765
      https://github.com/llvm/llvm-project/commit/979e9361f0e0426e555c94cb8b1a64c655805765
  Author: Peng Liu <winner245 at hotmail.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M libcxx/include/__split_buffer
    M libcxx/include/deque

  Log Message:
  -----------
  [libc++] Fix improper static_cast in std::deque and __split_buffer (#119106)

This PR addresses the improper use of `static_cast` to `size_t` where
`size_type` is intended. Although the `size_type` member type of STL
containers is usually a synonym of `std::size_t`, there is no guarantee
that they are always equivalent. The C++ standard does not mandate this
equivalence.

In libc++'s implementations of `std::deque`, `std::vector`, and
`__split_buffer`, the `size_type` member type is defined as
`std::allocator_traits<allocator_type>::size_type`, which is either
`allocator_type::size_type` if available or
`std::make_unsigned<difference_type>::type`. While it is true for
`std::allocator` that the `size_type` member type is `std::size_t`, for
user-defined allocator types, they may mismatch. This justifies the need
to replace `static_cast<size_t>` with `static_cast<size_type>` in this
PR.


  Commit: 4eec286b51524d385524a9f7cee4b9c4f8153570
      https://github.com/llvm/llvm-project/commit/4eec286b51524d385524a9f7cee4b9c4f8153570
  Author: lntue <lntue at google.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M libc/src/__support/complex_type.h
    M libc/src/__support/macros/properties/complex_types.h
    M libc/src/__support/macros/properties/types.h
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/sqrtf128_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp

  Log Message:
  -----------
  [libc] Add MPFR testing infra for float128. (#119499)


  Commit: 55154d6896e31dd707ac90dd15ed09bec446b4cf
      https://github.com/llvm/llvm-project/commit/55154d6896e31dd707ac90dd15ed09bec446b4cf
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenACC.cpp
    A clang/test/SemaOpenACC/data-construct-no_create-ast.cpp
    A clang/test/SemaOpenACC/data-construct-no_create-clause.c
    M clang/test/SemaOpenACC/data-construct.cpp

  Log Message:
  -----------
  [OpenACC] Enable 'no_create' sema for data construct

Adds tests and enables the 'no_create' clause semantic analysis for the
'data' constuct, so it will no longer report 'not yet implemented'.


  Commit: 62bdb85f9b293180a2cf402fc2fa7c242d01ef3f
      https://github.com/llvm/llvm-project/commit/62bdb85f9b293180a2cf402fc2fa7c242d01ef3f
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M libcxx/test/std/containers/sequences/vector/vector.cons/assign_iter_iter.pass.cpp

  Log Message:
  -----------
  [libc++][NFC] Fix incorrect comment for vector::assign(iter, iter) test


  Commit: 9359625ba99dfbce8d8c27373ade544df16bee34
      https://github.com/llvm/llvm-project/commit/9359625ba99dfbce8d8c27373ade544df16bee34
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenACC.cpp
    A clang/test/SemaOpenACC/data-construct-create-ast.cpp
    A clang/test/SemaOpenACC/data-construct-create-clause.c
    M clang/test/SemaOpenACC/data-construct.cpp

  Log Message:
  -----------
  [OpenACC] 'create' clause sema for data/enter data constructs

Enable and add tests for 'create' on a data or enter data construct.


  Commit: 1cc71197550b92fc23624d81f2474244772bfcfb
      https://github.com/llvm/llvm-project/commit/1cc71197550b92fc23624d81f2474244772bfcfb
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.PutenvStackArray.rst
    M clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.SetgidSetuidOrder.rst
    R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/valist.CopyToSelf.rst
    R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/valist.Uninitialized.rst
    R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/valist.Unterminated.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst

  Log Message:
  -----------
  [clang-tidy][NFC][doc] clean out-dated clang-static-analyzer checks documents and update check list (#119887)

The missing part of #119580


  Commit: 019948647ebdb9f4d5cfce5a8f4afe9d4eafb14e
      https://github.com/llvm/llvm-project/commit/019948647ebdb9f4d5cfce5a8f4afe9d4eafb14e
  Author: WANG Rui <wangrui at loongson.cn>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/test/CodeGen/LoongArch/sextw-removal.ll

  Log Message:
  -----------
  [LoongArch][NFC] Pre-commit tests for sign-extension removal with vectors


  Commit: b2b1eec2b249698337d90a77c000340f0248c9cd
      https://github.com/llvm/llvm-project/commit/b2b1eec2b249698337d90a77c000340f0248c9cd
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/test/AST/ast-print-openacc-data-construct.cpp
    M clang/test/SemaOpenACC/data-construct-ast.cpp
    M clang/test/SemaOpenACC/data-construct-async-clause.c
    A clang/test/SemaOpenACC/data-construct-copyin-ast.cpp
    A clang/test/SemaOpenACC/data-construct-copyin-clause.c
    M clang/test/SemaOpenACC/data-construct-if-ast.cpp
    M clang/test/SemaOpenACC/data-construct-if-clause.c
    M clang/test/SemaOpenACC/data-construct-wait-ast.cpp
    M clang/test/SemaOpenACC/data-construct-wait-clause.c
    M clang/test/SemaOpenACC/data-construct.cpp

  Log Message:
  -----------
  [OpenACC] enable 'copyin' clause sema for 'data'/'enter data'

stop reporting 'copyin' as not implemented on a data/enter data
construct, and enforce sema rules.


  Commit: 1da0730ba5994537119ed61205a599cb3929c43a
      https://github.com/llvm/llvm-project/commit/1da0730ba5994537119ed61205a599cb3929c43a
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/test/AST/ast-print-openacc-data-construct.cpp
    M clang/test/SemaOpenACC/data-construct-ast.cpp
    M clang/test/SemaOpenACC/data-construct-async-clause.c
    A clang/test/SemaOpenACC/data-construct-copyout-ast.cpp
    A clang/test/SemaOpenACC/data-construct-copyout-clause.c
    M clang/test/SemaOpenACC/data-construct-if-ast.cpp
    M clang/test/SemaOpenACC/data-construct-if-clause.c
    M clang/test/SemaOpenACC/data-construct-wait-ast.cpp
    M clang/test/SemaOpenACC/data-construct-wait-clause.c
    M clang/test/SemaOpenACC/data-construct.cpp

  Log Message:
  -----------
  [OpenACC] enable 'copyout' clause sema for data constructs

Same as the previous few, this just enables copyout for data constructs
and ensures we have sufficient test coverage.


  Commit: fcb1591b46f12b8908a8cdb252611708820102f8
      https://github.com/llvm/llvm-project/commit/fcb1591b46f12b8908a8cdb252611708820102f8
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M mlir/lib/IR/AffineMap.cpp
    M mlir/lib/IR/Builders.cpp
    M mlir/lib/IR/OperationSupport.cpp
    M mlir/lib/IR/Region.cpp
    M mlir/lib/IR/SymbolTable.cpp
    M mlir/lib/IR/TypeRange.cpp
    M mlir/lib/IR/Verifier.cpp

  Log Message:
  -----------
  [IR] Migrate away from PointerUnion::{is,get} (NFC) (#119802)

Note that PointerUnion::{is,get} have been soft deprecated in
PointerUnion.h:

  // FIXME: Replace the uses of is(), get() and dyn_cast() with
  //        isa<T>, cast<T> and the llvm::dyn_cast<T>

I'm not touching PointerUnion::dyn_cast for now because it's a bit
complicated; we could blindly migrate it to dyn_cast_if_present, but
we should probably use dyn_cast when the operand is known to be
non-null.


  Commit: 331f3cc94b3c66eebf5ec462a8f1ee0d7704dd26
      https://github.com/llvm/llvm-project/commit/331f3cc94b3c66eebf5ec462a8f1ee0d7704dd26
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/test/AST/ast-print-openacc-data-construct.cpp
    M clang/test/SemaOpenACC/data-construct-no_create-ast.cpp
    A clang/test/SemaOpenACC/data-construct-present-ast.cpp
    A clang/test/SemaOpenACC/data-construct-present-clause.c
    M clang/test/SemaOpenACC/data-construct.cpp

  Log Message:
  -----------
  [OpenACC] enable 'present' clause for 'data' construct

No additional sema is required once again, so this patch adds testing
and enables the clause.


  Commit: 5225f1b4355e4ad9fb0939fded88dc6189be29fd
      https://github.com/llvm/llvm-project/commit/5225f1b4355e4ad9fb0939fded88dc6189be29fd
  Author: Tibor Dusnoki <tdusnoki at inf.u-szeged.hu>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    A bolt/test/merge-fdata-bat-no-lbr.test
    A bolt/test/merge-fdata-lbr-mode.test
    A bolt/test/merge-fdata-mixed-bat-no-lbr.test
    A bolt/test/merge-fdata-mixed-mode.test
    A bolt/test/merge-fdata-no-lbr-mode.test
    M bolt/tools/merge-fdata/merge-fdata.cpp

  Log Message:
  -----------
  [BOLT][merge-fdata] Fix basic sample profile aggregation without LBR info (#118481)

When a basic sample profile is gathered without LBR info, the generated
profile contains a "no-lbr" tag in the first line of the fdata file.
This PR fixes merge-fdata to recognize and save this tag to the output
file.


  Commit: 754499c1e9410d51a4c41e71388c304de61366a0
      https://github.com/llvm/llvm-project/commit/754499c1e9410d51a4c41e71388c304de61366a0
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/test/AST/ast-print-openacc-data-construct.cpp
    A clang/test/SemaOpenACC/data-construct-deviceptr-ast.cpp
    A clang/test/SemaOpenACC/data-construct-deviceptr-clause.c
    M clang/test/SemaOpenACC/data-construct.cpp

  Log Message:
  -----------
  [OpenACC] Enable 'deviceptr' clause sema on data construct

Another simple implementation, as it uses the same work as the previous
implementation, just enabling it for this construct.


  Commit: ce25bd20dc56cef651170f1ee5820758dee415a2
      https://github.com/llvm/llvm-project/commit/ce25bd20dc56cef651170f1ee5820758dee415a2
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/test/SemaOpenACC/data-construct-deviceptr-clause.c

  Log Message:
  -----------
  [OpenACC] Fixup test to be more consistent


  Commit: 4a6586140211cc9aed02d9177dba0c01622139f4
      https://github.com/llvm/llvm-project/commit/4a6586140211cc9aed02d9177dba0c01622139f4
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    M llvm/include/llvm/Transforms/Instrumentation/RealtimeSanitizer.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/Instrumentation/RealtimeSanitizer.cpp
    M llvm/test/Instrumentation/RealtimeSanitizer/rtsan.ll

  Log Message:
  -----------
  [rtsan][llvm] Remove function pass, only support module pass (#119739)

Most of the other sanitizers are now only module level passes. This
moves all functionality into the module pass, and removes the function
pass.


  Commit: fb02c33605bd988e9c6bb3a18cd7f0c3b1f20d5c
      https://github.com/llvm/llvm-project/commit/fb02c33605bd988e9c6bb3a18cd7f0c3b1f20d5c
  Author: Dhruv Srivastava <dhruv.srivastava at ibm.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/XCOFF/ObjectFileXCOFF.cpp
    M lldb/source/Plugins/ObjectFile/XCOFF/ObjectFileXCOFF.h

  Log Message:
  -----------
  [lldb][AIX] XCOFF clang-format and other minor changes (#119892)

Added some clang-format and other minor changes, Ref:
https://github.com/llvm/llvm-project/pull/116338#discussion_r1884069848

Review Request: @DavidSpickett


  Commit: c9070cce09e1aef1c4bf1cb8c0000294b533dcd7
      https://github.com/llvm/llvm-project/commit/c9070cce09e1aef1c4bf1cb8c0000294b533dcd7
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/test/TableGen/MixedCasedMnemonic.td
    M llvm/utils/TableGen/Basic/SequenceToOffsetTable.h
    M llvm/utils/TableGen/DFAEmitter.cpp
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [TableGen] Allow empty terminator in SequenceToOffsetTable (#119751)

Some clients do not want to emit a terminator after each sub-sequence
(they have other means of determining the length of sub-sequences).

This moves `Term` argument from `emit` method to the constructor and
makes it optional. It couldn't be made optional while still on the
`emit` method because if the terminator wasn't specified, it has to be
taken into account in `layout` method as well.

The fact that `layout` method was called is now recorded in a dedicated
member variable, `IsLaidOut`. `Entries != 0` can no longer be used to
reliably check if `layout` method was called because it may be zero for
a different reason: the terminator wasn't specified and all added
sequences (if any) were empty.

This reduces the size of `*LaneMaskLists` and `*SubRegIdxLists` a bit
and resolves the removed TODO.


  Commit: c57a8f5b3fa7a7524346595cdc1ddd5eec4a41ae
      https://github.com/llvm/llvm-project/commit/c57a8f5b3fa7a7524346595cdc1ddd5eec4a41ae
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp

  Log Message:
  -----------
  [flang][OpenMP] Remove redundant `Fortran::` from namespaces, NFC

Apply clang-format after the changes.


  Commit: 7db20a026b71797975f277a406b604def1da6219
      https://github.com/llvm/llvm-project/commit/7db20a026b71797975f277a406b604def1da6219
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp8.s

  Log Message:
  -----------
  [AMDGPU][True16][MC] update vop1 mc test with update script (#119778)

This is a NFC change. Update gfx11/gfx12 vop1 test file with the latest
update_mc_test_script.py.

Changing the runline of gfx12_asm_vop1.s since llvm.cfg cannot be read
by the update script.

This is also preparing for the up-coming true16 change.


  Commit: 939c94bbb4731aa1c7dda47b0e4497a82ae6f46a
      https://github.com/llvm/llvm-project/commit/939c94bbb4731aa1c7dda47b0e4497a82ae6f46a
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M .github/workflows/containers/github-action-ci/Dockerfile

  Log Message:
  -----------
  [Github] Bump CI container to LLVM 19.1.5 (#119809)

Bump the CI container version to the latest release.


  Commit: 0d9fc1743378c73012828698122c46dc580d29eb
      https://github.com/llvm/llvm-project/commit/0d9fc1743378c73012828698122c46dc580d29eb
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/LowLevelTypeUtils.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp
    M llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp
    M llvm/lib/CodeGen/LowLevelTypeUtils.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp

  Log Message:
  -----------
  [GISel] Remove unused DataLayout operand from getApproximateEVTForLLT (#119833)


  Commit: 3fcc302af34f648fb7a56557b6a504fcbf49a115
      https://github.com/llvm/llvm-project/commit/3fcc302af34f648fb7a56557b6a504fcbf49a115
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M lldb/source/Expression/FunctionCaller.cpp
    M lldb/source/Expression/UserExpression.cpp
    A lldb/test/Shell/Expr/TestExecProgress.test

  Log Message:
  -----------
  [lldb] Add a progress event for executing an expression (#119757)

Expressions can take arbitrary amounts of time to run, so IDEs might
want to be informed about the fact that an expression is currently being
executed.

rdar://141253078


  Commit: 003a721c1c9e3a99d6d0c1a6755443b260235537
      https://github.com/llvm/llvm-project/commit/003a721c1c9e3a99d6d0c1a6755443b260235537
  Author: Ian Wood <ianwood2024 at u.northwestern.edu>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M llvm/include/llvm/Support/TypeName.h

  Log Message:
  -----------
  [NFC] Don't recompute type name (#119631)

This change uses a local static variable to cache the computed
`StringRef` containing the type's name.


I found that `RelWithDebInfo` builds of MLIR were spending a relatively
large amount of time in `StringRef::find` and I tracked it down to
`getTypeName` which utilizes `StringRef` methods that are defined in a
separate translation unit. This is especially impactful on perf because
`getTypeName` is supposed to be used for debug logging. See an example
here:
https://github.com/llvm/llvm-project/blob/4b825c7417f72ee88ee3e4316d0c01ed463f1241/mlir/include/mlir/IR/Types.h#L294-L300


  Commit: 6d69d18437adc79ada8fbc852b3ffb4d797cebb4
      https://github.com/llvm/llvm-project/commit/6d69d18437adc79ada8fbc852b3ffb4d797cebb4
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/test/AST/ast-print-openacc-data-construct.cpp
    A clang/test/SemaOpenACC/data-construct-attach-ast.cpp
    A clang/test/SemaOpenACC/data-construct-attach-clause.c
    M clang/test/SemaOpenACC/data-construct.cpp

  Log Message:
  -----------
  [OpenACC] enable 'attach' clause sema for 'data' and 'enter data'

This is very similar to deviceptr, and is the same implementation as for
combined/compute constructs, so this just enables that, and adds tests.


  Commit: bc627a46a858ab1abf7a72a524ef1059b27cfa37
      https://github.com/llvm/llvm-project/commit/bc627a46a858ab1abf7a72a524ef1059b27cfa37
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    M clang-tools-extra/test/clang-doc/templates.cpp

  Log Message:
  -----------
  [clang-doc][NFC] Rename CHECK prefix for YAML

We plan to introduce checks for other backends, like markdown.

Reviewers: PeterChou1, petrhosek

Reviewed By: petrhosek

Pull Request: https://github.com/llvm/llvm-project/pull/119810


  Commit: 2cfd586360412a9cbf6118aaa09b33e649bce662
      https://github.com/llvm/llvm-project/commit/2cfd586360412a9cbf6118aaa09b33e649bce662
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2024-12-13 (Fri, 13 Dec 2024)

  Changed paths:
    A .ci/compute-projects.sh
    M .ci/generate-buildkite-pipeline-premerge
    M .github/workflows/containers/github-action-ci/Dockerfile
    A bolt/test/merge-fdata-bat-no-lbr.test
    A bolt/test/merge-fdata-lbr-mode.test
    A bolt/test/merge-fdata-mixed-bat-no-lbr.test
    A bolt/test/merge-fdata-mixed-mode.test
    A bolt/test/merge-fdata-no-lbr-mode.test
    M bolt/test/unreadable-profile.test
    M bolt/tools/merge-fdata/merge-fdata.cpp
    R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/cplusplus.PureVirtualCall.rst
    A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/cplusplus.SelfAssignment.rst
    R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/optin.osx.OSObjectCStyleCast.rst
    R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/osx.MIG.rst
    R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/osx.OSObjectRetainCount.rst
    M clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.PutenvStackArray.rst
    M clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.SetgidSetuidOrder.rst
    R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/valist.CopyToSelf.rst
    R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/valist.Uninitialized.rst
    R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/valist.Unterminated.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/unused-parameters.rst
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/tools/dump_format_help.py
    M clang/docs/tools/dump_format_style.py
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/FileEntry.h
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Basic/arm_sme.td
    M clang/include/clang/Basic/arm_sve.td
    M clang/include/clang/Basic/arm_sve_sme_incl.td
    M clang/include/clang/Sema/ParsedAttr.h
    M clang/include/clang/Sema/SemaConcept.h
    M clang/include/clang/Sema/SemaInternal.h
    M clang/include/clang/Sema/Template.h
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
    M clang/lib/APINotes/APINotesManager.cpp
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
    M clang/lib/AST/ByteCode/InterpBuiltinBitCast.h
    M clang/lib/Analysis/ThreadSafetyCommon.cpp
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Index/IndexDecl.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
    M clang/test/AST/ast-print-openacc-data-construct.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args-checked-const-member.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args-checked-ptr.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args-counted-const-member.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args.cpp
    M clang/test/Analysis/Checkers/WebKit/local-vars-checked-const-member.cpp
    M clang/test/Analysis/Checkers/WebKit/local-vars-counted-const-member.cpp
    M clang/test/Analysis/Checkers/WebKit/mock-types.h
    M clang/test/Analysis/analyzer-config.c
    M clang/test/CXX/dcl.decl/dcl.meaning/dcl.fct/p13.cpp
    A clang/test/CodeGen/AArch64/fp8-intrinsics/acle_sve2_fp8_fdot.c
    A clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_fp8_fdot.c
    M clang/test/CodeGen/SystemZ/zos-mixed-ptr-sizes-malloc.c
    M clang/test/CodeGenOpenCL/opencl_types.cl
    M clang/test/Driver/freebsd.c
    M clang/test/Format/docs_updated.test
    M clang/test/Parser/cxx0x-decl.cpp
    M clang/test/Parser/cxx2c-pack-indexing.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/Sema/Inputs/lifetime-analysis.h
    A clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_fp8_fdot.c
    M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_fp8.c
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/SemaCXX/cxx2c-pack-indexing-ext-diags.cpp
    A clang/test/SemaCXX/msvc-pragma-function-no-builtin-attr.cpp
    M clang/test/SemaOpenACC/combined-construct-default-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-default-clause.c
    M clang/test/SemaOpenACC/compute-construct-default-clause.c
    M clang/test/SemaOpenACC/data-construct-ast.cpp
    A clang/test/SemaOpenACC/data-construct-async-ast.cpp
    A clang/test/SemaOpenACC/data-construct-async-clause.c
    A clang/test/SemaOpenACC/data-construct-attach-ast.cpp
    A clang/test/SemaOpenACC/data-construct-attach-clause.c
    A clang/test/SemaOpenACC/data-construct-copy-ast.cpp
    A clang/test/SemaOpenACC/data-construct-copy-clause.c
    A clang/test/SemaOpenACC/data-construct-copyin-ast.cpp
    A clang/test/SemaOpenACC/data-construct-copyin-clause.c
    A clang/test/SemaOpenACC/data-construct-copyout-ast.cpp
    A clang/test/SemaOpenACC/data-construct-copyout-clause.c
    A clang/test/SemaOpenACC/data-construct-create-ast.cpp
    A clang/test/SemaOpenACC/data-construct-create-clause.c
    A clang/test/SemaOpenACC/data-construct-default-ast.cpp
    A clang/test/SemaOpenACC/data-construct-default-clause.c
    M clang/test/SemaOpenACC/data-construct-device_type-clause.c
    A clang/test/SemaOpenACC/data-construct-deviceptr-ast.cpp
    A clang/test/SemaOpenACC/data-construct-deviceptr-clause.c
    M clang/test/SemaOpenACC/data-construct-if-ast.cpp
    M clang/test/SemaOpenACC/data-construct-if-clause.c
    A clang/test/SemaOpenACC/data-construct-no_create-ast.cpp
    A clang/test/SemaOpenACC/data-construct-no_create-clause.c
    A clang/test/SemaOpenACC/data-construct-present-ast.cpp
    A clang/test/SemaOpenACC/data-construct-present-clause.c
    A clang/test/SemaOpenACC/data-construct-wait-ast.cpp
    A clang/test/SemaOpenACC/data-construct-wait-clause.c
    M clang/test/SemaOpenACC/data-construct.cpp
    M clang/unittests/Frontend/CompilerInvocationTest.cpp
    M clang/unittests/StaticAnalyzer/Z3CrosscheckOracleTest.cpp
    M clang/utils/TableGen/SveEmitter.cpp
    M clang/utils/perf-training/bolt.lit.cfg
    M clang/utils/perf-training/lit.cfg
    M clang/utils/perf-training/llvm-support/build.test
    M compiler-rt/lib/orc/macho_tlv.x86-64.S
    M compiler-rt/lib/orc/sysv_reenter.arm64.S
    M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
    M flang/examples/FeatureList/FeatureList.cpp
    M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
    M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree-visitor.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Semantics/openmp-modifiers.h
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
    M flang/lib/Optimizer/Transforms/CUFDeviceGlobal.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/lib/Semantics/openmp-modifiers.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Fir/CUDA/cuda-implicit-device-global.f90
    M flang/test/HLFIR/shapeof.fir
    A flang/test/Lower/OpenMP/KernelLanguage/bare-clause.f90
    A flang/test/Lower/OpenMP/Todo/error.f90
    A flang/test/Parser/OpenMP/error-unparse.f90
    M flang/test/Parser/OpenMP/in-reduction-clause.f90
    A flang/test/Parser/OpenMP/linear-clause.f90
    M flang/test/Parser/OpenMP/reduction-modifier.f90
    A flang/test/Parser/OpenMP/task-reduction-clause.f90
    M flang/test/Preprocessing/directive-contin-with-pp.F90
    M flang/test/Semantics/OpenMP/clause-validity01.f90
    A flang/test/Semantics/OpenMP/in-reduction.f90
    M flang/test/Semantics/OpenMP/linear-clause01.f90
    A flang/test/Semantics/OpenMP/linear-clause02.f90
    M flang/test/Semantics/OpenMP/linear-iter.f90
    A flang/test/Semantics/OpenMP/ompx-bare.f90
    M flang/test/Semantics/OpenMP/symbol08.f90
    A flang/test/Semantics/OpenMP/task-reduction.f90
    M flang/test/Semantics/OpenMP/taskgroup01.f90
    M flang/test/Semantics/modfile55.cuf
    M libc/docs/headers/assert.rst
    M libc/docs/headers/ctype.rst
    M libc/docs/headers/errno.rst
    M libc/docs/headers/fenv.rst
    M libc/docs/headers/float.rst
    M libc/docs/headers/inttypes.rst
    M libc/docs/headers/locale.rst
    M libc/docs/headers/signal.rst
    M libc/docs/headers/stdlib.rst
    M libc/docs/headers/string.rst
    M libc/docs/headers/strings.rst
    M libc/docs/headers/threads.rst
    M libc/docs/headers/uchar.rst
    M libc/docs/headers/wchar.rst
    M libc/docs/headers/wctype.rst
    M libc/hdr/types/CMakeLists.txt
    M libc/src/__support/complex_type.h
    M libc/src/__support/macros/properties/complex_types.h
    M libc/src/__support/macros/properties/types.h
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/sqrtf128_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp
    R libc/utils/docgen/arpa/inet.json
    A libc/utils/docgen/arpa/inet.yaml
    R libc/utils/docgen/assert.json
    A libc/utils/docgen/assert.yaml
    R libc/utils/docgen/ctype.json
    A libc/utils/docgen/ctype.yaml
    M libc/utils/docgen/docgen.py
    R libc/utils/docgen/errno.json
    A libc/utils/docgen/errno.yaml
    R libc/utils/docgen/fenv.json
    A libc/utils/docgen/fenv.yaml
    R libc/utils/docgen/float.json
    A libc/utils/docgen/float.yaml
    M libc/utils/docgen/header.py
    R libc/utils/docgen/inttypes.json
    A libc/utils/docgen/inttypes.yaml
    R libc/utils/docgen/locale.json
    A libc/utils/docgen/locale.yaml
    R libc/utils/docgen/setjmp.json
    A libc/utils/docgen/setjmp.yaml
    R libc/utils/docgen/signal.json
    A libc/utils/docgen/signal.yaml
    R libc/utils/docgen/stdbit.json
    A libc/utils/docgen/stdbit.yaml
    R libc/utils/docgen/stdlib.json
    A libc/utils/docgen/stdlib.yaml
    R libc/utils/docgen/string.json
    A libc/utils/docgen/string.yaml
    R libc/utils/docgen/strings.json
    R libc/utils/docgen/sys/mman.json
    A libc/utils/docgen/sys/mman.yaml
    R libc/utils/docgen/threads.json
    A libc/utils/docgen/threads.yaml
    R libc/utils/docgen/uchar.json
    A libc/utils/docgen/uchar.yaml
    R libc/utils/docgen/wchar.json
    A libc/utils/docgen/wchar.yaml
    R libc/utils/docgen/wctype.json
    A libc/utils/docgen/wctype.yaml
    M libclc/clc/include/clc/clcmacro.h
    M libclc/clc/include/clc/math/clc_ceil.h
    M libclc/clc/include/clc/math/clc_fabs.h
    M libclc/clc/include/clc/math/clc_floor.h
    M libclc/clc/include/clc/math/clc_rint.h
    M libclc/clc/include/clc/math/clc_trunc.h
    A libclc/clc/include/clc/math/unary_builtin.inc
    M libclc/clc/lib/clspv/SOURCES
    R libclc/clc/lib/clspv/dummy.cl
    M libclc/clc/lib/generic/SOURCES
    A libclc/clc/lib/generic/math/clc_ceil.cl
    A libclc/clc/lib/generic/math/clc_fabs.cl
    A libclc/clc/lib/generic/math/clc_floor.cl
    A libclc/clc/lib/generic/math/clc_rint.cl
    A libclc/clc/lib/generic/math/clc_trunc.cl
    M libclc/clc/lib/spirv/SOURCES
    M libclc/clc/lib/spirv64/SOURCES
    M libclc/generic/lib/math/ceil.cl
    M libclc/generic/lib/math/fabs.cl
    M libclc/generic/lib/math/floor.cl
    M libclc/generic/lib/math/rint.cl
    M libclc/generic/lib/math/round.cl
    M libclc/generic/lib/math/sqrt.cl
    M libclc/generic/lib/math/trunc.cl
    R libclc/generic/lib/math/unary_builtin.inc
    M libcxx/include/__split_buffer
    M libcxx/include/deque
    M libcxx/include/string
    M libcxx/include/string_view
    A libcxx/test/configs/stdlib-libstdc++.cfg.in
    A libcxx/test/configs/stdlib-native.cfg.in
    M libcxx/test/std/containers/sequences/vector/vector.cons/assign_iter_iter.pass.cpp
    M libcxxabi/CMakeLists.txt
    M lld/COFF/PDB.cpp
    M lld/COFF/Writer.cpp
    M lld/test/ELF/tls-opt.s
    M lld/test/ELF/x86-64-tls-ie-local.s
    M lldb/include/lldb/Core/dwarf.h
    M lldb/include/lldb/Target/StackFrameList.h
    M lldb/source/Expression/FunctionCaller.cpp
    M lldb/source/Expression/UserExpression.cpp
    M lldb/source/Plugins/ObjectFile/XCOFF/ObjectFileXCOFF.cpp
    M lldb/source/Plugins/ObjectFile/XCOFF/ObjectFileXCOFF.h
    M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_loongarch64.cpp
    M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_loongarch64.h
    M lldb/source/Plugins/Process/Utility/CMakeLists.txt
    A lldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_loongarch.cpp
    A lldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_loongarch.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DIERef.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/test/API/api/multithreaded/TestMultithreaded.py
    A lldb/test/API/api/multithreaded/deep_stack.cpp
    A lldb/test/API/api/multithreaded/test_concurrent_unwind.cpp.template
    A lldb/test/Shell/Expr/TestExecProgress.test
    M llvm/include/llvm/Analysis/DomTreeUpdater.h
    M llvm/include/llvm/Analysis/GenericDomTreeUpdater.h
    M llvm/include/llvm/Analysis/GenericDomTreeUpdaterImpl.h
    M llvm/include/llvm/Analysis/PtrUseVisitor.h
    A llvm/include/llvm/Analysis/ScalarEvolutionPatternMatch.h
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
    M llvm/include/llvm/CodeGen/LowLevelTypeUtils.h
    M llvm/include/llvm/CodeGen/MachineBasicBlock.h
    M llvm/include/llvm/CodeGen/MachineDomTreeUpdater.h
    M llvm/include/llvm/CodeGen/MachineDominators.h
    M llvm/include/llvm/CodeGen/MachineSSAContext.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/ExecutionEngine/JITLink/aarch64.h
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/IR/CmpPredicate.h
    M llvm/include/llvm/IR/DataLayout.h
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/Support/TypeName.h
    M llvm/include/llvm/Transforms/Instrumentation/RealtimeSanitizer.h
    M llvm/include/llvm/Transforms/Utils/SSAUpdater.h
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    M llvm/lib/Analysis/DomTreeUpdater.cpp
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/OverflowInstAnalysis.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/ExpandMemCmp.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp
    M llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp
    M llvm/lib/CodeGen/LazyMachineBlockFrequencyInfo.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.cpp
    M llvm/lib/CodeGen/LowLevelTypeUtils.cpp
    M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp
    M llvm/lib/CodeGen/MachineBasicBlock.cpp
    M llvm/lib/CodeGen/MachineDomTreeUpdater.cpp
    M llvm/lib/CodeGen/MachineDominanceFrontier.cpp
    M llvm/lib/CodeGen/MachineDominators.cpp
    M llvm/lib/CodeGen/MachineLICM.cpp
    M llvm/lib/CodeGen/MachineLoopInfo.cpp
    M llvm/lib/CodeGen/MachineSink.cpp
    M llvm/lib/CodeGen/MachineUniformityAnalysis.cpp
    M llvm/lib/CodeGen/PHIElimination.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/CodeGen/XRayInstrumentation.cpp
    M llvm/lib/ExecutionEngine/Orc/JITLinkReentryTrampolines.cpp
    M llvm/lib/IR/DataLayout.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/IntrinsicInst.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Support/Windows/Path.inc
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/SMEInstrFormats.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SILateBranchLowering.cpp
    M llvm/lib/Target/AMDGPU/SILowerI1Copies.cpp
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
    M llvm/lib/Target/RISCV/RISCVGISel.td
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86FixupKinds.h
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp
    M llvm/lib/Target/X86/X86FlagsCopyLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86WinEHState.cpp
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/Transforms/IPO/SampleProfile.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/RealtimeSanitizer.cpp
    M llvm/lib/Transforms/Scalar/CallSiteSplitting.cpp
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/EarlyCSE.cpp
    M llvm/lib/Transforms/Scalar/GuardWidening.cpp
    M llvm/lib/Transforms/Scalar/JumpThreading.cpp
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/lib/Transforms/Scalar/LoopBoundSplit.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
    M llvm/lib/Transforms/Utils/LoopPeel.cpp
    M llvm/lib/Transforms/Utils/SSAUpdater.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Analysis/BasicAA/smaller-index-size-overflow.ll
    M llvm/test/Assembler/aggregate-constant-values.ll
    A llvm/test/Assembler/pr119818.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-ext-debugloc.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-build-vector.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-concat-vectors.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-inserts.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-hoist-same-hands.mir
    A llvm/test/CodeGen/AArch64/fp8-sve-fdot.ll
    A llvm/test/CodeGen/AArch64/sme2-intrinsics-fp8-fdot.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu.private-memory.ll
    M llvm/test/CodeGen/AMDGPU/bypass-div.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-regalloc-flags.ll
    M llvm/test/CodeGen/AMDGPU/udiv64.ll
    M llvm/test/CodeGen/AMDGPU/urem64.ll
    M llvm/test/CodeGen/LoongArch/sextw-removal.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/render-vlop-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/render-vlop-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/vmclr-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/vmclr-rv64.mir
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.mir
    A llvm/test/CodeGen/WinEH/wineh-musttail-call.ll
    M llvm/test/Instrumentation/RealtimeSanitizer/rtsan.ll
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp8.s
    M llvm/test/MC/Disassembler/M68k/control.txt
    M llvm/test/MC/ELF/relocation.s
    A llvm/test/MachineVerifier/AMDGPU/unsupported-subreg-index-aligned-vgpr-check.mir
    M llvm/test/TableGen/MixedCasedMnemonic.td
    A llvm/test/Transforms/InstCombine/vec_shuffle-phi-multiuse.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/fully-unrolled-cost.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-icmpcost.ll
    A llvm/test/Transforms/PGOProfile/memprof_annotate_yaml.test
    M llvm/test/Transforms/SLPVectorizer/RISCV/revec.ll
    M llvm/test/Transforms/SROA/non-capturing-call-readonly.ll
    M llvm/test/Transforms/SROA/readonlynocapture.ll
    M llvm/test/Transforms/SampleProfile/pseudo-probe-profile.ll
    M llvm/test/Transforms/SimplifyCFG/X86/switch_to_lookup_table.ll
    M llvm/test/Transforms/SimplifyCFG/switch-dup-bbs.ll
    M llvm/tools/llvm-reduce/deltas/ReduceInstructionsMIR.cpp
    M llvm/unittests/Analysis/DomTreeUpdaterTest.cpp
    M llvm/unittests/Frontend/OpenMPDecompositionTest.cpp
    M llvm/unittests/IR/PatternMatch.cpp
    M llvm/unittests/Target/WebAssembly/WebAssemblyExceptionInfoTest.cpp
    M llvm/unittests/TargetParser/Host.cpp
    M llvm/utils/TableGen/Basic/SequenceToOffsetTable.h
    M llvm/utils/TableGen/DFAEmitter.cpp
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp
    M mlir/include/mlir/Conversion/GPUCommon/GPUCommonPass.h
    M mlir/include/mlir/Dialect/GPU/Transforms/Passes.h
    R mlir/include/mlir/Dialect/GPU/Transforms/Utils.h
    A mlir/include/mlir/Dialect/GPU/Utils/DistributionUtils.h
    A mlir/include/mlir/Dialect/GPU/Utils/GPUUtils.h
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
    M mlir/lib/Dialect/GPU/CMakeLists.txt
    M mlir/lib/Dialect/GPU/Transforms/AsyncRegionRewriter.cpp
    M mlir/lib/Dialect/GPU/Transforms/KernelOutlining.cpp
    M mlir/lib/Dialect/GPU/Transforms/SubgroupReduceLowering.cpp
    R mlir/lib/Dialect/GPU/Transforms/Utils.cpp
    A mlir/lib/Dialect/GPU/Utils/CMakeLists.txt
    A mlir/lib/Dialect/GPU/Utils/DistributionUtils.cpp
    A mlir/lib/Dialect/GPU/Utils/Utils.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Dialect/Vector/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
    M mlir/lib/IR/AffineMap.cpp
    M mlir/lib/IR/Builders.cpp
    M mlir/lib/IR/OperationSupport.cpp
    M mlir/lib/IR/Region.cpp
    M mlir/lib/IR/SymbolTable.cpp
    M mlir/lib/IR/TypeRange.cpp
    M mlir/lib/IR/Verifier.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Conversion/VectorToXeGPU/load-to-xegpu.mlir
    M mlir/test/Conversion/VectorToXeGPU/store-to-xegpu.mlir
    M mlir/test/Conversion/VectorToXeGPU/transfer-read-to-xegpu.mlir
    M mlir/test/Conversion/VectorToXeGPU/transfer-write-to-xegpu.mlir
    A mlir/test/Target/LLVMIR/nvvm/tma_prefetch.mlir
    M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
    M mlir/test/Target/LLVMIR/nvvmir.mlir
    M mlir/unittests/Bytecode/BytecodeTest.cpp
    M polly/lib/Analysis/ScopBuilder.cpp
    M polly/lib/Analysis/ScopDetection.cpp
    M polly/lib/Analysis/ScopInfo.cpp
    M polly/lib/Support/SCEVAffinator.cpp
    M polly/lib/Support/SCEVValidator.cpp
    M polly/lib/Support/ScopHelper.cpp
    M polly/lib/Support/VirtualInstruction.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.6-beta.1

[skip ci]


Compare: https://github.com/llvm/llvm-project/compare/8e8405998119...2cfd58636041

To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list