[all-commits] [llvm/llvm-project] 63a778: [builtins] Fix divtc3.c etc. compilation on Solari...

Vitaly Buka via All-commits all-commits at lists.llvm.org
Wed Aug 7 16:33:47 PDT 2024


  Branch: refs/heads/users/vitalybuka/spr/asan-optimize-initialization-order-checking
  Home:   https://github.com/llvm/llvm-project
  Commit: 63a7786111c501920afc4cc27a4633f76cdaf803
      https://github.com/llvm/llvm-project/commit/63a7786111c501920afc4cc27a4633f76cdaf803
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-08-03 (Sat, 03 Aug 2024)

  Changed paths:
    M compiler-rt/lib/builtins/divtc3.c
    M compiler-rt/lib/builtins/multc3.c

  Log Message:
  -----------
  [builtins] Fix divtc3.c etc. compilation on Solaris/SPARC with gcc (#101662)

`compiler-rt/lib/builtins/divtc3.c` and `multc3.c` don't compile on
Solaris/sparcv9 with `gcc -m32`:
```
FAILED: projects/compiler-rt/lib/builtins/CMakeFiles/clang_rt.builtins-sparc.dir/divtc3.c.o
[...]
compiler-rt/lib/builtins/divtc3.c: In function ‘__divtc3’:
compiler-rt/lib/builtins/divtc3.c:22:18: error: implicit declaration of function ‘__compiler_rt_logbtf’ [-Wimplicit-function-declaration]
   22 |   fp_t __logbw = __compiler_rt_logbtf(
      |                  ^~~~~~~~~~~~~~~~~~~~
```
and many more. It turns out that while the definition of `__divtc3` is
guarded with `CRT_HAS_F128`, the `__compiler_rt_logbtf` and other
declarations use `CRT_HAS_128BIT && CRT_HAS_F128` as guard. This only
shows up with `gcc` since, as documented in Issue #41838, `clang`
violates the SPARC psABI in not using 128-bit `long double`, so this
code path isn't used.

Fixed by changing the guards to match.

Tested on `sparcv9-sun-solaris2.11`.


  Commit: 3368a3245ce5049b090d7c1081c2d52a6b6fda68
      https://github.com/llvm/llvm-project/commit/3368a3245ce5049b090d7c1081c2d52a6b6fda68
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-08-03 (Sat, 03 Aug 2024)

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

  Log Message:
  -----------
  [sanitizer_common] Fix UnwindFast on SPARC (#101634)

```
  UBSan-Standalone-sparc :: TestCases/Misc/Linux/diag-stacktrace.cpp
```
`FAIL`s on 32 and 64-bit Linux/sparc64 (and on Solaris/sparcv9, too: the
test isn't Linux-specific at all). With
`UBSAN_OPTIONS=fast_unwind_on_fatal=1`, the stack trace shows a
duplicate innermost frame:
```
compiler-rt/test/ubsan/TestCases/Misc/Linux/diag-stacktrace.cpp:14:31: runtime error: execution reached the end of a value-returning function without returning a value
    #0 0x7003a708 in f() compiler-rt/test/ubsan/TestCases/Misc/Linux/diag-stacktrace.cpp:14:35
    #1 0x7003a708 in f() compiler-rt/test/ubsan/TestCases/Misc/Linux/diag-stacktrace.cpp:14:35
    #2 0x7003a714 in g() compiler-rt/test/ubsan/TestCases/Misc/Linux/diag-stacktrace.cpp:17:38
```
which isn't seen with `fast_unwind_on_fatal=0`.

This turns out to be another fallout from fixing
`__builtin_return_address`/`__builtin_extract_return_addr` on SPARC. In
`sanitizer_stacktrace_sparc.cpp` (`BufferedStackTrace::UnwindFast`) the
`pc` arg is the return address, while `pc1` from the stack frame
(`fr_savpc`) is the address of the `call` insn, leading to a double
entry for the innermost frame in `trace_buffer[]`.

This patch fixes this by moving the adjustment before all uses.

Tested on `sparc64-unknown-linux-gnu` and `sparcv9-sun-solaris2.11`
(with the `ubsan/TestCases/Misc/Linux` tests enabled).


  Commit: 1a9acd786d493b00c08d1611f51420d421b74cf1
      https://github.com/llvm/llvm-project/commit/1a9acd786d493b00c08d1611f51420d421b74cf1
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-03 (Sat, 03 Aug 2024)

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

  Log Message:
  -----------
  [RISCV] Capitalize some variable names. NFC


  Commit: b7146aed5b99e6f858f6c7243a2a38406bb41d1c
      https://github.com/llvm/llvm-project/commit/b7146aed5b99e6f858f6c7243a2a38406bb41d1c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-03 (Sat, 03 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/IPO/PartialInlining.cpp
    M llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
    M llvm/lib/Transforms/Utils/LoopVersioning.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp

  Log Message:
  -----------
  [Transforms] Construct SmallVector with ArrayRef (NFC) (#101851)


  Commit: 766f68d17ab1b12a46324d8b526f753cd1a353d3
      https://github.com/llvm/llvm-project/commit/766f68d17ab1b12a46324d8b526f753cd1a353d3
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-03 (Sat, 03 Aug 2024)

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

  Log Message:
  -----------
  [RISCV] Invert if conditions in the switch in RISCVDAGToDAGISel::hasAllNBitUsers. NFC

Make "break" consistently the "if" body and the "return false" the
last thing in each case.

This makes it easier to add different conditions for different operands
of some instructions and makes everything more consistent.


  Commit: c03bf2c41bd3b89a8ed455b7f48cf95cf131656c
      https://github.com/llvm/llvm-project/commit/c03bf2c41bd3b89a8ed455b7f48cf95cf131656c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-03 (Sat, 03 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVOptWInstrs.cpp
    M llvm/test/CodeGen/RISCV/imm.ll
    M llvm/test/CodeGen/RISCV/rv64-legal-i32/imm.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vector-i8-index-cornercase.ll

  Log Message:
  -----------
  [RISCV] Improve hasAllNBitUsers for users of SLLI.

We can increase the number of Bits passes to the users by adding
the shift amount.


  Commit: 899055f20bf5a17e63544892794982e4a6ef2822
      https://github.com/llvm/llvm-project/commit/899055f20bf5a17e63544892794982e4a6ef2822
  Author: ZhangYin <zhangyin2018 at iscas.ac.cn>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/ParallelismProjects.csv
    M libcxx/include/experimental/__simd/reference.h
    A libcxx/test/std/experimental/simd/simd.reference/reference_arith_operators.pass.cpp
    A libcxx/test/std/experimental/simd/simd.reference/reference_bitwise_operators.pass.cpp
    M libcxx/test/std/experimental/simd/test_utils.h

  Log Message:
  -----------
  [libc++] <experimental/simd> Add compound assignment operators for simd reference (#86761)


  Commit: b024fd267b813149f7bd5ba88731673b9a29258d
      https://github.com/llvm/llvm-project/commit/b024fd267b813149f7bd5ba88731673b9a29258d
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-08-03 (Sat, 03 Aug 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt

  Log Message:
  -----------
  [libc] disable strfroml entrypoint on aarch64 (#101854)

Disable `strfroml` entrypoint on aarch64 to please clang-11 buildbots.
Detailed in https://github.com/llvm/llvm-project/issues/101846. This is
not a fix for #101846 so I will keep the issue open until our buildbot
is updated or other mitigation is applied.


  Commit: f2f410ca1317e7d2da89be0729a63a26ca83e7d7
      https://github.com/llvm/llvm-project/commit/f2f410ca1317e7d2da89be0729a63a26ca83e7d7
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-08-03 (Sat, 03 Aug 2024)

  Changed paths:
    M libc/newhdrgen/class_implementation/classes/enumeration.py
    M libc/newhdrgen/class_implementation/classes/function.py
    M libc/newhdrgen/class_implementation/classes/macro.py
    M libc/newhdrgen/class_implementation/classes/object.py
    M libc/newhdrgen/class_implementation/classes/type.py
    M libc/newhdrgen/gpu_headers.py
    M libc/newhdrgen/header.py
    M libc/newhdrgen/yaml_to_classes.py

  Log Message:
  -----------
  [libc][newhdrgen] Remove shebangs in files other than yaml_to_classes.py (#101816)

None of the Python files were committed with the executable bit set, and
only yaml_to_classes.py was intended to be executed.

Also sets the executable bit on yaml_to_classes.py and changes the
shebang to run python3 instead of python.


  Commit: 4aff3f6967eba11aced705e2772f3ad86f2adeef
      https://github.com/llvm/llvm-project/commit/4aff3f6967eba11aced705e2772f3ad86f2adeef
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/test/AST/Interp/eval-order.cpp

  Log Message:
  -----------
  [clang][Interp] Fix assignment operator call eval order (#101845)


  Commit: 533190acdb9d2ed774f96a998b5c03be3df4f857
      https://github.com/llvm/llvm-project/commit/533190acdb9d2ed774f96a998b5c03be3df4f857
  Author: mskamp <msk at posteo.org>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/icmp-and-shift.ll
    M llvm/test/Transforms/InstCombine/load-cmp.ll

  Log Message:
  -----------
  [InstCombine] Canonicalize Bit Testing by Shifting to Bit 0 (#101838)

Implement a new transformation that fold the bit-testing expression
(icmp ne (and (lshr V B) 1) 0) to (icmp ne (and V (shl 1 B)) 0) for
constant V. This rule already existed for non-constant V and constants
other than 1; this restriction to non-constant V has been added in
commit c3b2111d975a39d19f0c5d635e2961a4449c5a71 to fix an infinite loop.
Avoid the infinite loop by allowing constant V only if the shift
instruction is an lshr and the constant is 1. Also fold the negated
variant of the LHS.
    
This transformation necessitates an adaption of existing tests in
`icmp-and-shift.ll` and `load-cmp.ll`. One test in `icmp-and-shift.ll`,
which previously was a negative test, now gets folded. Rename it to
indicate that it is a positive test.
    
Alive proof: https://alive2.llvm.org/ce/z/vcJJTx
    
Relates to issue #86813.


  Commit: 8d1b17b6623742ec4454f5bae2e23f8b30124314
      https://github.com/llvm/llvm-project/commit/8d1b17b6623742ec4454f5bae2e23f8b30124314
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/CallLowering.h
    M llvm/include/llvm/CodeGen/GlobalISel/GISelChangeObserver.h
    M llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp
    M llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h
    M llvm/lib/CodeGen/GlobalISel/CallLowering.cpp
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/LiveIntervals.cpp
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/ShrinkWrap.cpp

  Log Message:
  -----------
  [CodeGen] Construct SmallVector with ArrayRef (NFC) (#101841)


  Commit: d07fdf9779f7dead2828cfb18bafbd9a2c085920
      https://github.com/llvm/llvm-project/commit/d07fdf9779f7dead2828cfb18bafbd9a2c085920
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/include/__algorithm/comp.h
    M libcxx/include/__algorithm/lexicographical_compare.h
    M libcxx/include/__algorithm/ranges_lexicographical_compare.h
    M libcxx/include/__algorithm/ranges_minmax.h
    M libcxx/include/__functional/operations.h
    M libcxx/include/__functional/ranges_operations.h
    M libcxx/include/__string/constexpr_c_functions.h
    M libcxx/include/__type_traits/desugars_to.h
    M libcxx/include/__type_traits/is_trivially_lexicographically_comparable.h
    M libcxx/test/benchmarks/CMakeLists.txt
    A libcxx/test/benchmarks/algorithms/lexicographical_compare.bench.cpp
    M libcxx/test/libcxx/transitive_includes/cxx03.csv
    M libcxx/test/libcxx/transitive_includes/cxx11.csv
    M libcxx/test/libcxx/transitive_includes/cxx14.csv
    M libcxx/test/libcxx/transitive_includes/cxx17.csv
    M libcxx/test/libcxx/transitive_includes/cxx20.csv
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    M libcxx/test/std/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare.pass.cpp
    M libcxx/test/std/containers/sequences/array/compare.verify.cpp

  Log Message:
  -----------
  [libc++] Optimize lexicographical_compare (#65279)

If the comparison operation is equivalent to < and that is a total
order, we know that we can use equality comparison on that type instead
to extract some information. Furthermore, if equality comparison on that
type is trivial, the user can't observe that we're calling it. So
instead of using the user-provided total order, we use std::mismatch,
which uses equality comparison (and is vertorized). Additionally, if the
type is trivially lexicographically comparable, we can go one step
further and use std::memcmp directly instead of calling std::mismatch.

Benchmarks:
```
-------------------------------------------------------------------------------------
Benchmark                                                         old             new
-------------------------------------------------------------------------------------
bm_lexicographical_compare<unsigned char>/1                   1.17 ns         2.34 ns
bm_lexicographical_compare<unsigned char>/2                   1.64 ns         2.57 ns
bm_lexicographical_compare<unsigned char>/3                   2.23 ns         2.58 ns
bm_lexicographical_compare<unsigned char>/4                   2.82 ns         2.57 ns
bm_lexicographical_compare<unsigned char>/5                   3.34 ns         2.11 ns
bm_lexicographical_compare<unsigned char>/6                   3.94 ns         2.21 ns
bm_lexicographical_compare<unsigned char>/7                   4.56 ns         2.11 ns
bm_lexicographical_compare<unsigned char>/8                   5.25 ns         2.11 ns
bm_lexicographical_compare<unsigned char>/16                  9.88 ns         2.11 ns
bm_lexicographical_compare<unsigned char>/64                  38.9 ns         2.36 ns
bm_lexicographical_compare<unsigned char>/512                  317 ns         6.54 ns
bm_lexicographical_compare<unsigned char>/4096                2517 ns         41.4 ns
bm_lexicographical_compare<unsigned char>/32768              20052 ns          488 ns
bm_lexicographical_compare<unsigned char>/262144            159579 ns         4409 ns
bm_lexicographical_compare<unsigned char>/1048576           640456 ns        20342 ns
bm_lexicographical_compare<signed char>/1                     1.18 ns         2.37 ns
bm_lexicographical_compare<signed char>/2                     1.65 ns         2.60 ns
bm_lexicographical_compare<signed char>/3                     2.23 ns         2.83 ns
bm_lexicographical_compare<signed char>/4                     2.81 ns         3.06 ns
bm_lexicographical_compare<signed char>/5                     3.35 ns         3.30 ns
bm_lexicographical_compare<signed char>/6                     3.90 ns         3.99 ns
bm_lexicographical_compare<signed char>/7                     4.56 ns         3.78 ns
bm_lexicographical_compare<signed char>/8                     5.20 ns         4.02 ns
bm_lexicographical_compare<signed char>/16                    9.80 ns         6.21 ns
bm_lexicographical_compare<signed char>/64                    39.0 ns         3.16 ns
bm_lexicographical_compare<signed char>/512                    318 ns         7.58 ns
bm_lexicographical_compare<signed char>/4096                  2514 ns         47.4 ns
bm_lexicographical_compare<signed char>/32768                20096 ns          504 ns
bm_lexicographical_compare<signed char>/262144              156617 ns         4146 ns
bm_lexicographical_compare<signed char>/1048576             624265 ns        19810 ns
bm_lexicographical_compare<int>/1                             1.15 ns         2.12 ns
bm_lexicographical_compare<int>/2                             1.60 ns         2.36 ns
bm_lexicographical_compare<int>/3                             2.21 ns         2.59 ns
bm_lexicographical_compare<int>/4                             2.74 ns         2.83 ns
bm_lexicographical_compare<int>/5                             3.26 ns         3.06 ns
bm_lexicographical_compare<int>/6                             3.81 ns         4.53 ns
bm_lexicographical_compare<int>/7                             4.41 ns         4.72 ns
bm_lexicographical_compare<int>/8                             5.08 ns         2.36 ns
bm_lexicographical_compare<int>/16                            9.54 ns         3.08 ns
bm_lexicographical_compare<int>/64                            37.8 ns         4.71 ns
bm_lexicographical_compare<int>/512                            309 ns         24.6 ns
bm_lexicographical_compare<int>/4096                          2422 ns          204 ns
bm_lexicographical_compare<int>/32768                        19362 ns         1947 ns
bm_lexicographical_compare<int>/262144                      155727 ns        19793 ns
bm_lexicographical_compare<int>/1048576                     623614 ns        80180 ns
bm_ranges_lexicographical_compare<unsigned char>/1            1.07 ns         2.35 ns
bm_ranges_lexicographical_compare<unsigned char>/2            1.72 ns         2.13 ns
bm_ranges_lexicographical_compare<unsigned char>/3            2.46 ns         2.12 ns
bm_ranges_lexicographical_compare<unsigned char>/4            3.17 ns         2.12 ns
bm_ranges_lexicographical_compare<unsigned char>/5            3.86 ns         2.12 ns
bm_ranges_lexicographical_compare<unsigned char>/6            4.55 ns         2.12 ns
bm_ranges_lexicographical_compare<unsigned char>/7            5.25 ns         2.12 ns
bm_ranges_lexicographical_compare<unsigned char>/8            5.95 ns         2.13 ns
bm_ranges_lexicographical_compare<unsigned char>/16           11.7 ns         2.13 ns
bm_ranges_lexicographical_compare<unsigned char>/64           45.5 ns         2.36 ns
bm_ranges_lexicographical_compare<unsigned char>/512           366 ns         6.35 ns
bm_ranges_lexicographical_compare<unsigned char>/4096         2886 ns         40.9 ns
bm_ranges_lexicographical_compare<unsigned char>/32768       23054 ns          489 ns
bm_ranges_lexicographical_compare<unsigned char>/262144     185302 ns         4339 ns
bm_ranges_lexicographical_compare<unsigned char>/1048576    741576 ns        19430 ns
bm_ranges_lexicographical_compare<signed char>/1              1.10 ns         2.12 ns
bm_ranges_lexicographical_compare<signed char>/2              1.66 ns         2.35 ns
bm_ranges_lexicographical_compare<signed char>/3              2.23 ns         2.58 ns
bm_ranges_lexicographical_compare<signed char>/4              2.82 ns         2.82 ns
bm_ranges_lexicographical_compare<signed char>/5              3.34 ns         3.06 ns
bm_ranges_lexicographical_compare<signed char>/6              3.92 ns         3.99 ns
bm_ranges_lexicographical_compare<signed char>/7              4.64 ns         4.10 ns
bm_ranges_lexicographical_compare<signed char>/8              5.21 ns         4.61 ns
bm_ranges_lexicographical_compare<signed char>/16             9.79 ns         7.42 ns
bm_ranges_lexicographical_compare<signed char>/64             38.9 ns         2.93 ns
bm_ranges_lexicographical_compare<signed char>/512             317 ns         7.31 ns
bm_ranges_lexicographical_compare<signed char>/4096           2500 ns         47.5 ns
bm_ranges_lexicographical_compare<signed char>/32768         19940 ns          496 ns
bm_ranges_lexicographical_compare<signed char>/262144       159166 ns         4393 ns
bm_ranges_lexicographical_compare<signed char>/1048576      638206 ns        19786 ns
bm_ranges_lexicographical_compare<int>/1                      1.10 ns         2.12 ns
bm_ranges_lexicographical_compare<int>/2                      1.64 ns         3.04 ns
bm_ranges_lexicographical_compare<int>/3                      2.23 ns         2.58 ns
bm_ranges_lexicographical_compare<int>/4                      2.81 ns         2.81 ns
bm_ranges_lexicographical_compare<int>/5                      3.35 ns         3.05 ns
bm_ranges_lexicographical_compare<int>/6                      3.94 ns         4.60 ns
bm_ranges_lexicographical_compare<int>/7                      4.60 ns         4.81 ns
bm_ranges_lexicographical_compare<int>/8                      5.19 ns         2.35 ns
bm_ranges_lexicographical_compare<int>/16                     9.85 ns         2.87 ns
bm_ranges_lexicographical_compare<int>/64                     38.9 ns         4.70 ns
bm_ranges_lexicographical_compare<int>/512                     318 ns         24.5 ns
bm_ranges_lexicographical_compare<int>/4096                   2494 ns          202 ns
bm_ranges_lexicographical_compare<int>/32768                 20000 ns         1939 ns
bm_ranges_lexicographical_compare<int>/262144               160433 ns        19730 ns
bm_ranges_lexicographical_compare<int>/1048576              642636 ns        80760 ns
```


  Commit: 0dd8c0ddd0bef1753f7bcbd6709a8e99af507ed5
      https://github.com/llvm/llvm-project/commit/0dd8c0ddd0bef1753f7bcbd6709a8e99af507ed5
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M libcxx/include/__hash_table
    M libcxx/include/unordered_map
    M libcxx/include/unordered_set
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv

  Log Message:
  -----------
  [libc++] Remove a few includes from <__hash_table> (#99738)


  Commit: eccc6487c1fc5925ea2e595b5b07a31976c3232e
      https://github.com/llvm/llvm-project/commit/eccc6487c1fc5925ea2e595b5b07a31976c3232e
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/test/SemaCXX/type-traits.cpp

  Log Message:
  -----------
  [Clang] Remove __is_nullptr (#99038)

`is_null_pointer` can be implemented very efficiently as
`__is_same(__remove_cv(T), decltype(nullptr))`. Since GCC supports both
of these builtins as well, libc++ has no interest in using
`__is_nullptr` instead. Furthermore, I could find only a single use in
the wild
(https://sourcegraph.com/search?q=context:global+__is_nullptr%28+-file:clang&patternType=keyword&sm=0).
Because of these reasons I don't think it's worth keeping this builtin
around.


  Commit: 4377656f2419a8eb18c01e86929b689dcf22b5d6
      https://github.com/llvm/llvm-project/commit/4377656f2419a8eb18c01e86929b689dcf22b5d6
  Author: DianQK <dianqk at dianqk.net>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/lib/IR/Metadata.cpp
    A llvm/test/Transforms/GVN/merge-range.ll

  Log Message:
  -----------
  [Metadata] Try to merge the first and last ranges. (#101860)

Fixes #101859.

If we have at least 2 ranges, we have to try to merge the last and first
ones to handle the wrap range.


  Commit: 8ab5af603995ba45c77dafa9acf43bde379e81a9
      https://github.com/llvm/llvm-project/commit/8ab5af603995ba45c77dafa9acf43bde379e81a9
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M libcxx/test/std/re/re.traits/transform.pass.cpp

  Log Message:
  -----------
  [libc++] Fixes an AIX CI failure.

The test now seems to pass so remove the XFAIL.


  Commit: 2fe08ed35a968dcfd797cbd31ae56bb0b1447faf
      https://github.com/llvm/llvm-project/commit/2fe08ed35a968dcfd797cbd31ae56bb0b1447faf
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M libcxx/test/std/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.class.general/equality.pass.cpp

  Log Message:
  -----------
  [libc++][test] Adds a TODO.

This addresses the post-commit review comment in
https://github.com/llvm/llvm-project/pull/100775


  Commit: b32aac4358c1f6639de7c453656cd74fbab75d71
      https://github.com/llvm/llvm-project/commit/b32aac4358c1f6639de7c453656cd74fbab75d71
  Author: John Brawn <john.brawn at arm.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M libunwind/CMakeLists.txt
    M libunwind/src/Registers.hpp
    M libunwind/src/UnwindCursor.hpp
    M libunwind/src/UnwindLevel1.c
    M libunwind/src/UnwindRegistersRestore.S
    M libunwind/src/cet_unwind.h
    M libunwind/test/CMakeLists.txt
    M libunwind/test/configs/llvm-libunwind-merged.cfg.in
    M libunwind/test/configs/llvm-libunwind-shared.cfg.in
    M libunwind/test/configs/llvm-libunwind-static.cfg.in

  Log Message:
  -----------
  [libunwind] Add GCS support for AArch64 (#99335)

AArch64 GCS (Guarded Control Stack) is similar enough to CET that we can
re-use the existing code that is guarded by _LIBUNWIND_USE_CET, so long
as we also add defines to locate the GCS stack and pop the entries from
it. We also need the jumpto function to exit using br instead of ret, to
prevent it from popping the GCS stack.

GCS support is enabled using the LIBUNWIND_ENABLE_GCS cmake option. This
enables -mbranch-protection=standard, which enables GCS. For the places
we need to use GCS instructions we use the target attribute, as there's
not a command-line option to enable a specific architecture extension.


  Commit: 3c483b887e5a32a0ddc0a52a467b31f74aad25bb
      https://github.com/llvm/llvm-project/commit/3c483b887e5a32a0ddc0a52a467b31f74aad25bb
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    A llvm/test/Transforms/InferAddressSpaces/AMDGPU/store-pointer-to-self.ll

  Log Message:
  -----------
  InferAddressSpaces: Fix mishandling stores of pointers to themselves (#101877)


  Commit: 0dba5381d8c8e4cadc32a067bf2fe5e3486ae53d
      https://github.com/llvm/llvm-project/commit/0dba5381d8c8e4cadc32a067bf2fe5e3486ae53d
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/avx10_2niintrin.h
    M clang/lib/Sema/SemaX86.cpp
    M clang/test/CodeGen/X86/avx10_2ni-builtins.c
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
    M llvm/lib/Target/X86/X86InstrAVX10.td
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrFMA3Info.cpp
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    M llvm/test/CodeGen/X86/avx10_2ni-intrinsics.ll
    M llvm/test/MC/Disassembler/X86/avx10_2ni-32.txt
    M llvm/test/MC/Disassembler/X86/avx10_2ni-64.txt
    M llvm/test/MC/X86/avx10_2ni-32-intel.s
    M llvm/test/MC/X86/avx10_2ni-64-att.s
    M llvm/utils/TableGen/X86DisassemblerTables.cpp

  Log Message:
  -----------
  [X86][AVX10.2] Support YMM rounding new instructions (#101825)

Ref.: https://cdrdv2.intel.com/v1/dl/getContent/828965


  Commit: 5c48f6fa543e7d081354d3f6c1c2524eb8075223
      https://github.com/llvm/llvm-project/commit/5c48f6fa543e7d081354d3f6c1c2524eb8075223
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/test/Transforms/InstCombine/stpncpy-1.ll
    M llvm/test/Transforms/InstCombine/strncpy-1.ll
    M llvm/test/Transforms/InstCombine/strncpy-3.ll

  Log Message:
  -----------
  [InstCombine] Don't add extra 0 to string in str[np]cpy optimization (#101884)

It is unused by subsequent memcpy.


  Commit: bfe09685d7a6a472575fac4d6a8108a6e5c51390
      https://github.com/llvm/llvm-project/commit/bfe09685d7a6a472575fac4d6a8108a6e5c51390
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/test/std/diagnostics/syserr/syserr.syserr/syserr.syserr.members/ctor_error_code_string.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.syserr/syserr.syserr.members/ctor_int_error_category_string.pass.cpp
    M libcxx/test/std/input.output/filesystems/class.filesystem_error/filesystem_error.members.pass.cpp

  Log Message:
  -----------
  [NFC][libc++][exceptions] Adds tests for LWG3112. (#100881)

The tests kept being based on std::string instead of std::string_view to
allow testing with older C++ dialects.

Adds tests for:
- LWG3112 system_error and filesystem_error constructors taking a string
may not be able to meet their postconditions


  Commit: 0edafc461f5f98b2ed5d2d621e1d9de70ccbd4e5
      https://github.com/llvm/llvm-project/commit/0edafc461f5f98b2ed5d2d621e1d9de70ccbd4e5
  Author: h-vetinari <h.vetinari at gmx.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx20.rst

  Log Message:
  -----------
  [libc++] mark P0645 as complete (#101852)

Now that #98275 has been merged, the footnote for P0645 has become
outdated. This updates the status information.


  Commit: 2e9d2f183f1c4e458201d05e4dea96249f8a8f65
      https://github.com/llvm/llvm-project/commit/2e9d2f183f1c4e458201d05e4dea96249f8a8f65
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/include/llvm/TableGen/Record.h
    M llvm/lib/TableGen/Record.cpp
    M llvm/utils/TableGen/Common/DAGISelMatcher.h
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h

  Log Message:
  -----------
  [TableGen] Construct SmallVector with ArrayRef (NFC) (#101870)


  Commit: 7df9da7d780f1ece175020c5aef44b4b06df05b7
      https://github.com/llvm/llvm-project/commit/7df9da7d780f1ece175020c5aef44b4b06df05b7
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/DebugInfo/CodeView/TypeRecord.h
    M llvm/include/llvm/FuzzMutate/RandomIRBuilder.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/include/llvm/IR/Metadata.h
    M llvm/include/llvm/MC/MCFragment.h
    M llvm/include/llvm/ProfileData/MemProf.h
    M llvm/include/llvm/Support/GenericDomTree.h
    M llvm/include/llvm/Support/ScopedPrinter.h
    M llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/IR/DebugInfoMetadata.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/Object/BuildID.cpp
    M llvm/lib/Support/SourceMgr.cpp
    M llvm/lib/Support/VirtualFileSystem.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp
    M llvm/tools/dsymutil/MachODebugMapParser.cpp
    M llvm/tools/llvm-rc/ResourceScriptStmt.h
    M llvm/unittests/Analysis/VectorUtilsTest.cpp
    M llvm/unittests/Support/VirtualFileSystemTest.cpp

  Log Message:
  -----------
  [llvm] Construct SmallVector with ArrayRef (NFC) (#101872)


  Commit: da0e66e64c39bf43d143ef271c301e49a5a5d2f4
      https://github.com/llvm/llvm-project/commit/da0e66e64c39bf43d143ef271c301e49a5a5d2f4
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
    M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/ARM/ARMFastISel.cpp
    M llvm/lib/Target/Mips/MipsFastISel.cpp
    M llvm/lib/Target/PowerPC/PPCFastISel.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
    M llvm/lib/Target/X86/X86FastISel.cpp

  Log Message:
  -----------
  [CodeGen][NFC] Add wrapper method for MBBMap (#101893)

This is a preparation for changing the data structure of MBBMap.


  Commit: be031b17191efb32636a05d2e39433446c328d92
      https://github.com/llvm/llvm-project/commit/be031b17191efb32636a05d2e39433446c328d92
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/utils/llvm-locstats/llvm-locstats.py

  Log Message:
  -----------
  [llvm-locstats] Switch shebang from python to python3 (#101864)


  Commit: e525f91640770d4cb96c30398e0b21f5cbd03430
      https://github.com/llvm/llvm-project/commit/e525f91640770d4cb96c30398e0b21f5cbd03430
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Transforms/Utils/LoopSimplify.cpp
    M llvm/lib/Transforms/Utils/ValueMapper.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp

  Log Message:
  -----------
  [llvm] Use llvm::is_contained (NFC) (#101855)


  Commit: 5262865aac683b72f3e66de7a122e0c455ab6b9b
      https://github.com/llvm/llvm-project/commit/5262865aac683b72f3e66de7a122e0c455ab6b9b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/include/mlir/IR/DialectRegistry.h
    M mlir/include/mlir/TableGen/Class.h
    M mlir/lib/Analysis/Presburger/IntegerRelation.cpp
    M mlir/lib/Analysis/Presburger/Simplex.cpp
    M mlir/lib/Analysis/Presburger/Utils.cpp
    M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    M mlir/lib/Dialect/Affine/Utils/LoopUtils.cpp
    M mlir/lib/Dialect/Arith/Transforms/IntNarrowing.cpp
    M mlir/lib/Dialect/GPU/TransformOps/Utils.cpp
    M mlir/lib/Dialect/GPU/Transforms/NVVMAttachTarget.cpp
    M mlir/lib/Dialect/GPU/Transforms/ROCDLAttachTarget.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Interchange.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Loops.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
    M mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
    M mlir/lib/Dialect/SCF/Utils/Utils.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseBufferRewriting.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseVectorization.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorTilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Tensor/Utils/Utils.cpp
    M mlir/lib/Dialect/Transform/Interfaces/TransformInterfaces.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorScan.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorTransfer.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorUnroll.cpp
    M mlir/lib/IR/AffineExpr.cpp
    M mlir/lib/IR/AffineMap.cpp
    M mlir/lib/IR/OperationSupport.cpp
    M mlir/lib/Interfaces/FunctionInterfaces.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Transforms/Mem2Reg.cpp
    M mlir/lib/Transforms/SROA.cpp
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp

  Log Message:
  -----------
  [mlir] Construct SmallVector with ArrayRef (NFC) (#101896)


  Commit: fdb9f96fa2a926425bdf8315048db7623d63547d
      https://github.com/llvm/llvm-project/commit/fdb9f96fa2a926425bdf8315048db7623d63547d
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll

  Log Message:
  -----------
  [LV] Consider earlier stores to invariant reduction address as dead.

For invariant stores to an address of a reduction, only the latest store
will be generated outside the loop. Consider earlier stores as dead.

This fixes a difference between the legacy and VPlan-based cost model.

Fixes https://github.com/llvm/llvm-project/issues/96294.


  Commit: 8dd065d5bc81b0c8ab57f365bb169a5d92928f25
      https://github.com/llvm/llvm-project/commit/8dd065d5bc81b0c8ab57f365bb169a5d92928f25
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    A llvm/test/CodeGen/ARM/Windows/private-func.ll
    A llvm/test/MC/ARM/Windows/branch-reloc-offset.s

  Log Message:
  -----------
  [ARM] [Windows] Use IMAGE_SYM_CLASS_STATIC for private functions (#101828)

For functions with private linkage, pick
IMAGE_SYM_CLASS_STATIC rather than IMAGE_SYM_CLASS_EXTERNAL;
GlobalValue::isInternalLinkage() only checks for
InternalLinkage, while GlobalValue::isLocalLinkage() checks for both
InternalLinkage and PrivateLinkage.

This matches what the AArch64 target does, since commit
3406934e4db4bf95c230db072608ed062c13ad5b.

This activates a preexisting fix for the AArch64 target from
1e7f592a890aad860605cf5220530b3744e107ba, for the ARM target as well.

When a relocation points at a symbol, one usually can convey an offset
to the symbol by encoding it as an immediate in the instruction.
However, for the ARM and AArch64 branch instructions, the immediate
stored in the instruction is ignored by MS link.exe (and lld-link
matches this aspect). (It would be simple to extend lld-link to support
it - but such object files would be incompatible with MS link.exe.)

This was worked around by 1e7f592a890aad860605cf5220530b3744e107ba by
emitting symbols into the object file symbol table, for temporary
symbols that otherwise would have been omitted, if they have the class
IMAGE_SYM_CLASS_STATIC, in order to avoid needing an offset in the
relocated instruction.

This change gives the symbols generated from functions with the IR level
"private" linkage the right class, to activate that workaround.

This fixes https://github.com/llvm/llvm-project/issues/100101, fixing
code generation for coroutines for Windows on ARM. After the change in
f78688134026686288a8d310b493d9327753a022, coroutines generate a function
with private linkage, and calls to this function were previously broken
for this target.


  Commit: d34191102ae84352b047498825ab9dd9c8777f98
      https://github.com/llvm/llvm-project/commit/d34191102ae84352b047498825ab9dd9c8777f98
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

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

  Log Message:
  -----------
  [Metadata] Use const APInt &. NFC (#101865)

getValue returns a const APInt &. So using a const APInt & will avoid a
copy.


  Commit: 9e9d98aaf503171e2cb229e89966ec1c0adf3804
      https://github.com/llvm/llvm-project/commit/9e9d98aaf503171e2cb229e89966ec1c0adf3804
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/SemaConcept.h
    M clang/lib/Sema/SemaConcept.cpp
    A clang/test/Modules/GH60336-2.cpp
    M clang/test/Modules/GH60336.cpp

  Log Message:
  -----------
  [clang] concepts: perform parameter mapping substitution in correct context (#101745)

Prior to this patch, during constraint normalization we could forget
from which declaration an atomic constraint was normalized from.

Subsequently when performing parameter mapping substitution for that
atomic constraint with an incorrect context, we couldn't correctly
recognize which declarations are supposed to be visible.

Fixes #60336


  Commit: 8a26c6d9d4ca18b9906f3ec13d52fc0b2952a5f7
      https://github.com/llvm/llvm-project/commit/8a26c6d9d4ca18b9906f3ec13d52fc0b2952a5f7
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/test/SemaCXX/cxx1y-generic-lambdas-variadics.cpp
    M clang/test/SemaCXX/cxx1y-generic-lambdas.cpp

  Log Message:
  -----------
  [clang] remove unneeded template deduction canonicalizations (#101594)

This is mostly a cleanups patch, with some hard to observe sugar
preservation improvements.

Except for the function template deduction changes which improve some
pre-existing diagnostics a little bit.


  Commit: 22c06aa5e94e30fb1333ecaf46ce33c65d148634
      https://github.com/llvm/llvm-project/commit/22c06aa5e94e30fb1333ecaf46ce33c65d148634
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M clang/cmake/caches/Fuchsia-stage2.cmake

  Log Message:
  -----------
  [Fuchsia][CMake] Check correct triple to set -mcpu (#101910)

We use armv8m.main-none-eabi now, not armv8m.main-unknown-eabi.


  Commit: 748371183ae769bfb485f1e7466a864bf1db93d5
      https://github.com/llvm/llvm-project/commit/748371183ae769bfb485f1e7466a864bf1db93d5
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/Template.h
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/test/AST/ast-dump-concepts.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.req/compound-requirement.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.req/nested-requirement.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.req/simple-requirement.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.req/type-requirement.cpp
    M clang/test/CXX/temp/temp.constr/temp.constr.normal/p1.cpp
    M clang/test/CXX/temp/temp.param/p10-2a.cpp
    M clang/test/SemaTemplate/concepts-recursive-inst.cpp
    M clang/test/SemaTemplate/concepts.cpp
    M clang/test/SemaTemplate/instantiate-requires-expr.cpp
    M clang/test/SemaTemplate/pr52970.cpp
    M libcxx/test/libcxx/algorithms/cpp17_iterator_concepts.verify.cpp

  Log Message:
  -----------
  [clang] Reland: Instantiate concepts with sugared template arguments (#101782)


  Commit: 7f78f99fe5af82361d37adcbd2daa4d04afba13d
      https://github.com/llvm/llvm-project/commit/7f78f99fe5af82361d37adcbd2daa4d04afba13d
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M clang-tools-extra/clangd/unittests/HoverTests.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-local-non-trivial-variable.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/AST/ast-dump-template-decls.cpp
    M clang/test/CXX/temp/temp.deduct.guide/p3.cpp
    M clang/test/Misc/diag-template-diffing-cxx11.cpp
    M clang/test/SemaCXX/nullability.cpp
    M clang/test/SemaCXX/sizeless-1.cpp
    M clang/test/SemaHLSL/VectorOverloadResolution.hlsl
    M clang/test/SemaTemplate/deduction-guide.cpp
    M clang/test/SemaTemplate/make_integer_seq.cpp
    M clang/test/SemaTemplate/temp_arg_nontype.cpp
    M lldb/test/API/commands/expression/import-std-module/shared_ptr/TestSharedPtrFromStdModule.py
    M lldb/test/API/commands/expression/import-std-module/weak_ptr-dbg-info-content/TestDbgInfoContentWeakPtrFromStdModule.py
    M lldb/test/API/commands/expression/import-std-module/weak_ptr/TestWeakPtrFromStdModule.py

  Log Message:
  -----------
  [clang] Reland: Instantiate alias templates with sugar (#101858)

This makes use of the changes introduced in D134604, in order to
instantiate alias templates witn a final sugared substitution.

This comes at no additional relevant cost.
Since we don't track / unique them in specializations, we wouldn't be
able to resugar them later anyway.

Differential Revision: https://reviews.llvm.org/D136565


  Commit: 3d5cc7e1e632b74119af13824dabc346bd248c93
      https://github.com/llvm/llvm-project/commit/3d5cc7e1e632b74119af13824dabc346bd248c93
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/avx10_2_512minmaxintrin.h
    A clang/lib/Headers/avx10_2minmaxintrin.h
    M clang/lib/Headers/immintrin.h
    M clang/lib/Sema/SemaX86.cpp
    A clang/test/CodeGen/X86/avx10_2_512minmax-builtins.c
    A clang/test/CodeGen/X86/avx10_2_512minmax-error.c
    A clang/test/CodeGen/X86/avx10_2minmax-builtins.c
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86InstrAVX10.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    A llvm/test/CodeGen/X86/avx10_2_512minmax-intrinsics.ll
    A llvm/test/CodeGen/X86/avx10_2minmax-intrinsics.ll
    A llvm/test/MC/Disassembler/X86/avx10.2minmax-32.txt
    A llvm/test/MC/Disassembler/X86/avx10.2minmax-64.txt
    A llvm/test/MC/X86/avx10.2minmax-32-att.s
    A llvm/test/MC/X86/avx10.2minmax-32-intel.s
    A llvm/test/MC/X86/avx10.2minmax-64-att.s
    A llvm/test/MC/X86/avx10.2minmax-64-intel.s
    M llvm/test/TableGen/x86-fold-tables.inc

  Log Message:
  -----------
  [X86][AVX10.2] Support AVX10.2-MINMAX new instructions. (#101598)

Ref.: https://cdrdv2.intel.com/v1/dl/getContent/828965


  Commit: a4b429f9e4175a06cc95f054c5dab3d4bc8fa690
      https://github.com/llvm/llvm-project/commit/a4b429f9e4175a06cc95f054c5dab3d4bc8fa690
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 3d5cc7e1e632


  Commit: 5f7e921fe3b5402127868faf5855a835cf238196
      https://github.com/llvm/llvm-project/commit/5f7e921fe3b5402127868faf5855a835cf238196
  Author: WANG Rui <wangrui at loongson.cn>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    A llvm/test/CodeGen/LoongArch/float-imm-vldi.ll

  Log Message:
  -----------
  [LoongArch] Pre-commit test for load floating-point immediate using VLDI. NFC


  Commit: c566769d7c097e3956c6b36c2040bd8baa2e9929
      https://github.com/llvm/llvm-project/commit/c566769d7c097e3956c6b36c2040bd8baa2e9929
  Author: yonghong-song <yhs at fb.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/lib/Target/BPF/BPF.h
    M llvm/lib/Target/BPF/BPFInstrInfo.td
    R llvm/lib/Target/BPF/BPFMIChecking.cpp
    M llvm/lib/Target/BPF/BPFTargetMachine.cpp
    M llvm/lib/Target/BPF/CMakeLists.txt
    M llvm/test/CodeGen/BPF/atomics.ll
    M llvm/test/CodeGen/BPF/atomics_2.ll
    M llvm/test/CodeGen/BPF/objdump_atomics.ll
    R llvm/test/CodeGen/BPF/xadd.ll
    M llvm/test/CodeGen/BPF/xadd_legal.ll

  Log Message:
  -----------
  BPF: Ensure __sync_fetch_and_add() always generate atomic_fetch_add insn (#101428)

Peilen Ye reported an issue ([1]) where for __sync_fetch_and_add(...)
without return value like
  __sync_fetch_and_add(&foo, 1);
llvm BPF backend generates locked insn e.g.
  lock *(u32 *)(r1 + 0) += r2

If __sync_fetch_and_add(...) returns a value like
  res = __sync_fetch_and_add(&foo, 1);
llvm BPF backend generates like
  r2 = atomic_fetch_add((u32 *)(r1 + 0), r2)

The above generation of 'lock *(u32 *)(r1 + 0) += r2' caused a problem
in jit since proper barrier is not inserted.

The above discrepancy is due to commit [2] where it tries to maintain
backward compatability since before commit [2],
__sync_fetch_and_add(...) generates lock insn in BPF backend.

Based on discussion in [1], now it is time to fix the above discrepancy
so we can have proper barrier support in jit. This patch made sure that
__sync_fetch_and_add(...) always generates atomic_fetch_add(...) insns.
Now 'lock *(u32 *)(r1 + 0) += r2' can only be generated by inline asm. I
also removed the whole BPFMIChecking.cpp file whose original purpose is
to detect and issue errors if XADD{W,D,W32} may return a value used
subsequently. Since insns XADD{W,D,W32} are all inline asm only now,
such error detection is not needed.

[1]
https://lore.kernel.org/bpf/ZqqiQQWRnz7H93Hc@google.com/T/#mb68d67bc8f39e35a0c3db52468b9de59b79f021f
[2]
https://github.com/llvm/llvm-project/commit/286daafd65129228e08a1d07aa4ca74488615744

Co-authored-by: Yonghong Song <yonghong.song at linux.dev>


  Commit: a5b65399a7e0ba5865c27a7255ae0e51a5e27a3e
      https://github.com/llvm/llvm-project/commit/a5b65399a7e0ba5865c27a7255ae0e51a5e27a3e
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXSf.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td

  Log Message:
  -----------
  [RISCV] Move ActiveElementsAffectResult to TSFlags. NFC (#101123)

As noted in
https://github.com/llvm/llvm-project/pull/100367/files#r1695442138,
RISCVMaskedPseudoInfo currently stores two things, whether or not a
masked pseudo has an unmasked variant, and whether or not it's
element-wise.

These are separate things, so this patch splits the latter out into the
underlying instruction's TSFlags to help make the semantics of #100367
more clear.

To the best of my knowledge the only non-element-wise instructions in V
are:

- vredsum.vs and other reductions
- vcompress.vm
- vms*f.m
- vcpop.m and vfirst.m
- viota.m

In vector crypto the instructions that operate on element groups are
conservatively marked (this might be fine to relax later given since
non-EGS multiple vls are reserved), as well as the SiFive extensions and
XTHeadVdot.


  Commit: d86a995ab78905cd055f8a93812c3b94cf042499
      https://github.com/llvm/llvm-project/commit/d86a995ab78905cd055f8a93812c3b94cf042499
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/include/clang/Format/Format.h

  Log Message:
  -----------
  [clang-format][doc] Fix a typo.


  Commit: ebeb6b27294ab63eed1c54062170d3feb0c74533
      https://github.com/llvm/llvm-project/commit/ebeb6b27294ab63eed1c54062170d3feb0c74533
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/BPF/BUILD.gn

  Log Message:
  -----------
  [gn build] Port c566769d7c09


  Commit: 35b4f8374586e099215f1275c8d840f54b20869d
      https://github.com/llvm/llvm-project/commit/35b4f8374586e099215f1275c8d840f54b20869d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

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

  Log Message:
  -----------
  InferAddressSpaces: Simplify check of volatile allowed

Avoid redundant dyn_cast to instruction before chain of dyn_cast
to specific instructions.


  Commit: 5bc99fb515f2411e458517f902435c28f2de94c3
      https://github.com/llvm/llvm-project/commit/5bc99fb515f2411e458517f902435c28f2de94c3
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/test/CodeGen/RISCV/lack-of-signed-truncation-check.ll
    M llvm/test/CodeGen/RISCV/selectcc-to-shiftand.ll
    M llvm/test/CodeGen/RISCV/signed-truncation-check.ll

  Log Message:
  -----------
  [RISCV] Select (and (sra x, c2), c1) as (srli (srai x, c2-c3), c3). (#101868)

If c1 is a mask with c3 leading zeros and c3 is larger than c2.

Fixes regression reported in #101751.


  Commit: 120740b16c27c12ce989793c2e1a95ac564f25b8
      https://github.com/llvm/llvm-project/commit/120740b16c27c12ce989793c2e1a95ac564f25b8
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/Opcodes.td
    M clang/test/AST/Interp/codegen.cpp

  Log Message:
  -----------
  [clang][Interp] reinterpret casts aren't always fatal (#101900)

The current interpreter emits the diagnostic and continues, so do the
same.


  Commit: 1fa7f05b709748e8a36936cbb5508070c8214354
      https://github.com/llvm/llvm-project/commit/1fa7f05b709748e8a36936cbb5508070c8214354
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M clang/include/clang/AST/ASTConcept.h
    M clang/include/clang/Index/DeclOccurrence.h
    M clang/include/clang/Tooling/Refactoring/ASTSelection.h
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Format/AffectedRangeManager.h
    M clang/lib/Format/TokenAnalyzer.cpp
    M clang/lib/Format/UnwrappedLineParser.h
    M clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
    M clang/lib/Frontend/DiagnosticRenderer.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Support/RISCVVIntrinsicUtils.cpp
    M clang/unittests/Format/MacroCallReconstructorTest.cpp
    M clang/utils/TableGen/SveEmitter.cpp

  Log Message:
  -----------
  [clang] Construct SmallVector with ArrayRef (NFC) (#101898)


  Commit: 4cfbd494b03427e5a7c1b7447382aa77a7e47b17
      https://github.com/llvm/llvm-project/commit/4cfbd494b03427e5a7c1b7447382aa77a7e47b17
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-variadics.td

  Log Message:
  -----------
  [GlobalISel][TableGen] Fix match-table-variadics tests label checking (#101625)

We don't really care about the precise label values for specific tests
like this, so just match any number.

The comments are enough to say where we jump in every case, and we have
plenty of tests that check basic match table features (on top of being
just tested by the fact GlobalISel CodeGen isn't broken).


  Commit: 42bae9c542c2995ed2b4555d9e25c5ea0b5dc99f
      https://github.com/llvm/llvm-project/commit/42bae9c542c2995ed2b4555d9e25c5ea0b5dc99f
  Author: Pankaj Dwivedi <pankajkumar.divedi at amd.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-mov-b32.mir
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll

  Log Message:
  -----------
  [AMDGPU] Optimize the register uses if offset inlinable (#101676)

Fold the frame index offset into v_mad if inlinable.


  Commit: bf540ce55bdcf49f74639d9fe8d7dff9e21c24c9
      https://github.com/llvm/llvm-project/commit/bf540ce55bdcf49f74639d9fe8d7dff9e21c24c9
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-fp.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll

  Log Message:
  -----------
  [RISCV] Remove extraneous attribute groups from tests. NFC


  Commit: 86f7374078288e2b3d3d0fd66428f7752e2319e6
      https://github.com/llvm/llvm-project/commit/86f7374078288e2b3d3d0fd66428f7752e2319e6
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.h
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.h
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
    M lldb/source/Plugins/ObjectFile/PECOFF/WindowsMiniDump.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/WindowsMiniDump.h
    M lldb/test/API/functionalities/process_save_core/TestProcessSaveCore.py

  Log Message:
  -----------
  Revert "[LLDB][SBSaveCore] Fix bug where default values are not propagated. (#101770)"

This reverts commit 34766d0d488ba2fbefa80dcd0cc8720a0e753448 which
caused a msan failure, see comment https://github.com/llvm/llvm-project/pull/101770#issuecomment-2268373325 for details.


  Commit: 0361c415e17f45b480be5befdb12175e8899357d
      https://github.com/llvm/llvm-project/commit/0361c415e17f45b480be5befdb12175e8899357d
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/utils/chunk-print-before-all.py

  Log Message:
  -----------
  [utils] avoid splitting pass names with spaces (#97371)

Machine function pass names can contain spaces but have an alternative
CLI friendly name within parentheses. This changes
chunk-print-before-all.py to use this name instead of only the first
word in the pretty printed name.


  Commit: c04857cb2c9f6f2e8add61192c62e48a83938efd
      https://github.com/llvm/llvm-project/commit/c04857cb2c9f6f2e8add61192c62e48a83938efd
  Author: Abinaya Saravanan <quic_asaravan at quicinc.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Target/Hexagon/CMakeLists.txt
    A llvm/lib/Target/Hexagon/HexagonMask.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    A llvm/test/CodeGen/Hexagon/mask.ll

  Log Message:
  -----------
  [HEXAGON] Utilize new mask instruction (#92365)

This pass utilizes the new Hexagon Mask Instruction.
Authored by : Harsha Jagasia, Krzysztof Parzyszek

Co-authored-by: Harsha Jagasia <harsha.jagasia at gmail.com>
Co-authored-by: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>


  Commit: fc83e97f6ebfdd67a3eda5fbff61190d92497ce9
      https://github.com/llvm/llvm-project/commit/fc83e97f6ebfdd67a3eda5fbff61190d92497ce9
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/Hexagon/BUILD.gn

  Log Message:
  -----------
  [gn build] Port c04857cb2c9f


  Commit: 0886440ef0ed0ad553522b731c841b81dc36944c
      https://github.com/llvm/llvm-project/commit/0886440ef0ed0ad553522b731c841b81dc36944c
  Author: Amit Kumar Pandey <137622562+ampandey-1995 at users.noreply.github.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M lld/Common/DWARF.cpp
    M llvm/docs/CommandGuide/llvm-symbolizer.rst
    M llvm/include/llvm/DebugInfo/DIContext.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h
    M llvm/include/llvm/DebugInfo/Symbolize/Symbolize.h
    M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
    M llvm/lib/DebugInfo/Symbolize/DIPrinter.cpp
    M llvm/lib/DebugInfo/Symbolize/Symbolize.cpp
    A llvm/test/tools/llvm-symbolizer/skip-line-zero.s
    M llvm/tools/llvm-symbolizer/Opts.td
    M llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp

  Log Message:
  -----------
  [Symbolizer] Support for Missing Line Numbers. (#82240)

LLVM Symbolizer attempt to symbolize addresses of optimized binaries
reports missing line numbers for some cases. It maybe due to compiler
which sometimes cannot map an instruction to line number due to
optimizations. Symbolizer should handle those cases gracefully.

Adding an option '--skip-line-zero' to symbolizer so as to report the
nearest non-zero line number.

---------

Co-authored-by: Amit Pandey <amit.pandey at amd.com>


  Commit: c24fb452651f53bb4d2730703ed7304c6ef71cc2
      https://github.com/llvm/llvm-project/commit/c24fb452651f53bb4d2730703ed7304c6ef71cc2
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/Use.h

  Log Message:
  -----------
  [llvm][SandboxIR] Fix some clang-cl warnings on Windows (#101660)

```
[4958/6355] Building CXX object lib\SandboxIR\CMakeFiles\LLVMSandboxIR.dir\Tracker.cpp.obj In file included from C:\Work\david.spickett\llvm-project\llvm\lib\SandboxIR\Tracker.cpp:9: In file included from C:\Work\david.spickett\llvm-project\llvm\include\llvm/SandboxIR/Tracker.h:48: C:\Work\david.spickett\llvm-project\llvm\include\llvm/SandboxIR/Use.h(46,16): warning: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]
   46 |   friend class CallBrInst;         // For constructor
      |                ^
      |                ::llvm::
In file included from C:\Work\david.spickett\llvm-project\llvm\lib\SandboxIR\Tracker.cpp:13:
C:\Work\david.spickett\llvm-project\llvm\include\llvm/SandboxIR/SandboxIR.h(1433,16): warning:
unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]
 1433 |   friend class PtrToInt; // For constructor.
      |                ^
      |                ::llvm::
```

First one I think is a missing forward declaration and I couldn't find
the right class for the second one but it appears to be unused anyway.


  Commit: 7536ebf0ea8e2d09f47ee77e0d60470b5eeb2743
      https://github.com/llvm/llvm-project/commit/7536ebf0ea8e2d09f47ee77e0d60470b5eeb2743
  Author: Mital Ashok <mital at mitalashok.co.uk>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/test/SemaCXX/lambda-pack-expansion.cpp

  Log Message:
  -----------
  [Clang][SemaCXX] Fix bug where unexpanded lambda captures where assumed to have size 1 (#101385)

Fixes #63677


  Commit: 1fec981b67ac57abd4d8defd73beb5a9433c602f
      https://github.com/llvm/llvm-project/commit/1fec981b67ac57abd4d8defd73beb5a9433c602f
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/lib/AST/DeclBase.cpp
    M clang/test/Modules/skip-odr-check-in-gmf.cppm

  Log Message:
  -----------
  [C++20] [Modules] Skip ODR checks in implicit global modules

Previously we skipped the ODR checks in explicit global modules. And due
to similar reasons, we should skip the ODR checks in implicit global
modules too.


  Commit: 72fb1889424fc371ef7d630009e4e579d18b9247
      https://github.com/llvm/llvm-project/commit/72fb1889424fc371ef7d630009e4e579d18b9247
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Pointer.cpp
    M clang/test/AST/Interp/codegen.cpp
    M clang/test/AST/Interp/new-delete.cpp

  Log Message:
  -----------
  [clang][Interp] Handle Pointer::toAPValue() for expr bases (#101937)

No reason to return early for them anymore.


  Commit: dd8a9e2b8c91d586fb9421e7bc24b3e153707caa
      https://github.com/llvm/llvm-project/commit/dd8a9e2b8c91d586fb9421e7bc24b3e153707caa
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/Vector/invalid.mlir
    M mlir/test/Dialect/Vector/ops.mlir

  Log Message:
  -----------
  [mlir][vector] Remove `vector.reshape` operation (#101645)

This operation was added five years ago and has no lowerings or uses
within upstream MLIR (and no reported uses downstream). There’s only a
handful of round-trip tests.

See related RFC:

https://discourse.llvm.org/t/rfc-should-vector-reshape-be-removed/80478/3


  Commit: 710590e33d19649f08c716d827eb465e3a132d23
      https://github.com/llvm/llvm-project/commit/710590e33d19649f08c716d827eb465e3a132d23
  Author: Daniel Kiss <daniel.kiss at arm.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libunwind/src/UnwindCursor.hpp

  Log Message:
  -----------
  [libunwind] Undefined behaviour pointer arithmetic with null pointer (#98648)

Fixes #91144


  Commit: 3276ee30226de1572bde5bd3716a1d343bbb3657
      https://github.com/llvm/llvm-project/commit/3276ee30226de1572bde5bd3716a1d343bbb3657
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512.s
    M llvm/test/tools/llvm-mca/X86/SapphireRapids/resources-avx512.s
    M llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512.s
    M llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512.s

  Log Message:
  -----------
  [llvm-mca][x86] Add test coverage for evex variant of vextractps


  Commit: 888ef0f0fc2a01bf56002060b9b55b61b4e3a5b7
      https://github.com/llvm/llvm-project/commit/888ef0f0fc2a01bf56002060b9b55b61b4e3a5b7
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86SchedIceLake.td
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bw.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dq.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse1.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse2.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse41.s

  Log Message:
  -----------
  [X86] Fix pipe resources for INT (V)PEXTR* instructions

IceLakeServer can use ICXPort15 for (V)PEXTR* (but only ICXPort5 for (V)EXTRACTPS)

Confirmed with uops.info + Agner


  Commit: d808f15828d0685fb65f140c49d6f7e7142d2503
      https://github.com/llvm/llvm-project/commit/d808f15828d0685fb65f140c49d6f7e7142d2503
  Author: Kai Yan <aklkaiyan at tencent.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/WindowScheduler.cpp
    A llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir

  Log Message:
  -----------
  [llvm][CodeGen] Address the issue of multiple resource reservations In window scheduling (#101665)

Address the issue of multiple resource reservations in window
scheduling.


  Commit: f231d3dab3da9966621ed4e72847f1292db54ede
      https://github.com/llvm/llvm-project/commit/f231d3dab3da9966621ed4e72847f1292db54ede
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    A llvm/test/CodeGen/Generic/extractelement-shuffle.ll
    M llvm/test/CodeGen/X86/2006-10-02-BoolRetCrash.ll
    M llvm/test/CodeGen/X86/2010-07-06-DbgCrash.ll
    R llvm/test/CodeGen/X86/extractelement-shuffle.ll

  Log Message:
  -----------
  Fix some X86 tests (#101944)

extractelement-shuffle.ll: Test for bugfix in DAGCombiner, moved to
Generic.

2010-07-06-DbgCrash.ll and 2006-10-02-BoolRetCrash.ll: Bugfixes in X86,
run tests with X86 backend.


  Commit: fe855666ee27ad95e4a23fe80d735d0484a4ed13
      https://github.com/llvm/llvm-project/commit/fe855666ee27ad95e4a23fe80d735d0484a4ed13
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M mlir/docs/Dialects/Vector.md

  Log Message:
  -----------
  [mlir][vector][docs] Fix broken markdown link (#101813)

The link has been "broken" since #73792 that updated
"## DeeperDive" to "## LLVM Lowering Tradeoffs".

This patch fixes the MD link for the affected sub-section:
* Before: [deeper dive section](#DeeperDive)
* After: [LLVM Lowering Tradeoffs](#llvm-lowering-tradeoffs)

I've also rephrased the surrounding comment a
bit - to better match the updated section name.


  Commit: 7775a4882d7105fde7f7a81f3c72567d39afce45
      https://github.com/llvm/llvm-project/commit/7775a4882d7105fde7f7a81f3c72567d39afce45
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    A llvm/test/Transforms/LoopVectorize/AArch64/streaming-vectorization.ll

  Log Message:
  -----------
  [LLVM][TTI][SME] Allow optional auto-vectorisation for streaming functions. (#101679)

The command line option enable-scalable-autovec-in-streaming-mode is
used to enable scalable vectors but the same check is missing from
enableScalableVectorization, which is blocking auto-vectorisation.


  Commit: 69fe7dad158fbb06dac010f091a671edc425f571
      https://github.com/llvm/llvm-project/commit/69fe7dad158fbb06dac010f091a671edc425f571
  Author: Tuan Chuong Goh <chuong.goh at arm.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/neon-shift-left-long.ll

  Log Message:
  -----------
  [AArch64][NFC] Pre-commit tests for Shift Left Long (#96782)


  Commit: 29763aa47103ad039544fc93fe5693b1a7f27691
      https://github.com/llvm/llvm-project/commit/29763aa47103ad039544fc93fe5693b1a7f27691
  Author: Marina Taylor <marina_taylor at apple.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
    M llvm/test/CodeGen/AArch64/peephole-csel.ll
    M llvm/test/CodeGen/AArch64/peephole-csel.mir

  Log Message:
  -----------
  [AArch64] Peephole optimization to remove redundant csel instructions (#101483)

Given a sequence such as

  %8:gpr64 = COPY $xzr
  %10:gpr64 = COPY $xzr
  %11:gpr64 = CSELXr %8:gpr64, %10:gpr64, 0, implicit $nzcv

`PeepholeOptimizer::foldRedundantCopy` led to the creation of select
instructions where both inputs were the same register:

  %11:gpr64 = CSELXr %8:gpr64, %8:gpr64, 0, implicit $nzcv

This change adds a later peephole optimization that replaces such
selects with unconditional moves.


  Commit: 832203545d4e2157ca29f99b18e3360ffa180183
      https://github.com/llvm/llvm-project/commit/832203545d4e2157ca29f99b18e3360ffa180183
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/test/Analysis/CostModel/RISCV/rvv-intrinsics.ll

  Log Message:
  -----------
  [TTI] Use element alignment in vp.strided.{load,store} cost (#101940)

In SelectionDAGBuilder, a vp.strided.{load,store} uses the datalayout
alignment of the element type if an align attribute isn't specified on
the pointer operand. This updates BasicTTIImpl to use said element
alignment instead of defaulting to one when costing it.

This mainly just fixes the output of the cost model tests on RISC-V,
since as far as I'm aware nothing uses the cost of these, e.g. SLP calls
getStridedMemoryOpCost directly


  Commit: 77011b00ad5f7f1789e788e85aed1babeb540213
      https://github.com/llvm/llvm-project/commit/77011b00ad5f7f1789e788e85aed1babeb540213
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/test/CodeGenObjC/ubsan-bool.m

  Log Message:
  -----------
  [Clang] Fix path-sensitivity in ubsan-bool.m test (NFC)

This test was failing whenever the path contained the string "f1",
e.g. as part of a commit hash.

Double-fix the issue by both not embedding the path in the IR at
all, and making the CHECK-LABELs more specific.


  Commit: b0329206db8e66fe180c504115103b27ca50f64e
      https://github.com/llvm/llvm-project/commit/b0329206db8e66fe180c504115103b27ca50f64e
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/lib/Headers/avx10_2_512niintrin.h
    M clang/lib/Headers/avx10_2niintrin.h
    M clang/lib/Headers/avxvnniint16intrin.h
    M clang/lib/Headers/avxvnniint8intrin.h
    M clang/test/CodeGen/X86/avx10_2_512ni-builtins.c
    M clang/test/CodeGen/X86/avx10_2ni-builtins.c
    M clang/test/CodeGen/X86/avxvnniint16-builtins.c
    M clang/test/CodeGen/X86/avxvnniint8-builtins.c
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86InstrAVX10.td
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    M llvm/test/CodeGen/X86/avx10_2_512ni-intrinsics.ll
    M llvm/test/CodeGen/X86/avx10_2ni-intrinsics.ll
    M llvm/test/CodeGen/X86/avxvnniint16-intrinsics.ll
    M llvm/test/CodeGen/X86/avxvnniint8-intrinsics.ll
    M llvm/test/MC/Disassembler/X86/avx10_2ni-32.txt
    M llvm/test/MC/Disassembler/X86/avx10_2ni-64.txt
    M llvm/test/MC/X86/avx10_2ni-32-intel.s
    M llvm/test/MC/X86/avx10_2ni-64-att.s
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/utils/TableGen/X86InstrMappingEmitter.cpp

  Log Message:
  -----------
  [X86][AVX10.2] Support AVX10.2 VNNI FP16/INT8/INT16 new instructions (#101783)

Ref.: https://cdrdv2.intel.com/v1/dl/getContent/828965


  Commit: 6676f794dcdab9ad78d59e044dfdc355dc0916a2
      https://github.com/llvm/llvm-project/commit/6676f794dcdab9ad78d59e044dfdc355dc0916a2
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/include/llvm/IR/PredIteratorCache.h

  Log Message:
  -----------
  [IR] Use single map in PredIteratorCache (NFC) (#101950)

Use a single map storing ArrayRef instead of two separate maps for the
base pointer and size. This saves one map lookup per cache accesses.

This is an alternative to
https://github.com/llvm/llvm-project/pull/101885 with a similar
compile-time improvement.


  Commit: 6f8ef5ad2f35321257adbe353f86027bf5209023
      https://github.com/llvm/llvm-project/commit/6f8ef5ad2f35321257adbe353f86027bf5209023
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M flang/include/flang/Lower/CallInterface.h
    M flang/include/flang/Lower/IterationSpace.h
    M flang/include/flang/Optimizer/Builder/BoxValue.h
    M flang/include/flang/Optimizer/Support/InternalNames.h
    M flang/lib/Lower/ConvertArrayConstructor.cpp
    M flang/lib/Lower/IterationSpace.cpp
    M flang/lib/Optimizer/Transforms/AffineDemotion.cpp
    M flang/unittests/Optimizer/InternalNamesTest.cpp

  Log Message:
  -----------
  [flang] Construct SmallVector with ArrayRef (NFC) (#101901)


  Commit: 8370ba4d15c6726ed82bcd0d42a3ea9c94cc56b0
      https://github.com/llvm/llvm-project/commit/8370ba4d15c6726ed82bcd0d42a3ea9c94cc56b0
  Author: Kristóf Umann <dkszelethus at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/NoOwnershipChangeVisitor.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp

  Log Message:
  -----------
  [analyzer][NFC] Eliminate a dyn_cast (#100719)

Response to the catch in this comment:
https://github.com/llvm/llvm-project/pull/94357/files/07f6daf2cf0f5d5bd4fc9950f2585a3f52b4ad2f#r1692084074


  Commit: a42e515e3a9f3bb4e44389c097b89104d95b9b29
      https://github.com/llvm/llvm-project/commit/a42e515e3a9f3bb4e44389c097b89104d95b9b29
  Author: Julian Brown <julian.brown at amd.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang-c/Index.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/StmtOpenMP.h
    M clang/include/clang/Basic/OpenMPKinds.h
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/StmtOpenMP.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    A clang/test/OpenMP/assume_lambda.cpp
    A clang/test/OpenMP/assume_messages.c
    A clang/test/OpenMP/assume_messages_attr.c
    A clang/test/OpenMP/assume_nesting.cpp
    A clang/test/OpenMP/assume_nesting_tmpl.cpp
    A clang/test/OpenMP/assume_serialize_deserialize.cpp
    A clang/test/OpenMP/assume_serialize_deserialize_tmpl.cpp
    A clang/test/OpenMP/assume_template.cpp
    M clang/tools/libclang/CIndex.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMP.td

  Log Message:
  -----------
  [OpenMP] OpenMP 5.1 "assume" directive parsing support (#92731)

This is a minimal patch to support parsing for "omp assume" directives.
These are meant to be hints to a compiler's optimisers: as such, it is
legitimate (if not very useful) to ignore them. The patch builds on top
of the existing support for "omp assumes" directives (note spelling!).

Unlike the "omp [begin/end] assumes" directives, "omp assume" is
associated with a compound statement, i.e. it can appear within a
function. The "holds" assumption could (theoretically) be mapped onto
the existing builtin "__builtin_assume", though the latter applies to a
single point in the program, and the former to a range (i.e. the whole
of the associated compound statement).

This patch fixes sollve's OpenMP 5.1 "omp assume"-based tests.


  Commit: e60ee1f2d70bdb0ac87b09ae685d669d8543b7bd
      https://github.com/llvm/llvm-project/commit/e60ee1f2d70bdb0ac87b09ae685d669d8543b7bd
  Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td

  Log Message:
  -----------
  [Driver] Restrict Ofast deprecation help message to Clang (#101682)

The discussion about this in Flang
(https://discourse.llvm.org/t/rfc-deprecate-ofast-in-flang/80243) has
not concluded hence restricting the deprecation only to Clang.


  Commit: c65afad9c58474a784633314e945c874ed06584a
      https://github.com/llvm/llvm-project/commit/c65afad9c58474a784633314e945c874ed06584a
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/test/Lexer/cxx-features.cpp

  Log Message:
  -----------
  [Clang] Define __cpp_pack_indexing (#101956)

Following the discussion on #101448 this defines 
`__cpp_pack_indexing`. Since pack indexing is currently
supported in all language modes, the feature test macro 
is also defined in all language modes.


  Commit: 9ae24fca2522c70eaff6c3e9c5ea89675db7c213
      https://github.com/llvm/llvm-project/commit/9ae24fca2522c70eaff6c3e9c5ea89675db7c213
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libcxxabi/src/demangle/ItaniumDemangle.h
    M llvm/include/llvm/Demangle/ItaniumDemangle.h
    M llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h
    M llvm/lib/Demangle/RustDemangle.cpp

  Log Message:
  -----------
  Demangle: Fix comment typos to cycle bots


  Commit: 31bb759d78576bec4c5b844edd52686eb6cc9fc3
      https://github.com/llvm/llvm-project/commit/31bb759d78576bec4c5b844edd52686eb6cc9fc3
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaExceptionSpec.cpp

  Log Message:
  -----------
  Fix an unused variable and -Wswitch warning after a42e515e3a9f3bb4e44389c097b89104d95b9b29


  Commit: 9fea73110ecc0a13d18e5c52f8e7fa62a9de9ee9
      https://github.com/llvm/llvm-project/commit/9fea73110ecc0a13d18e5c52f8e7fa62a9de9ee9
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libc/src/math/amdgpu/CMakeLists.txt
    M libc/src/math/nvptx/CMakeLists.txt

  Log Message:
  -----------
  [libc] Use generic 'atan2' function for the GPU

Summary:
I forget to enable this one in the previous patch.


  Commit: 69c6a3faafe8fa3fa8d7554e0ebe64aae3c3d10b
      https://github.com/llvm/llvm-project/commit/69c6a3faafe8fa3fa8d7554e0ebe64aae3c3d10b
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CXCursor.cpp

  Log Message:
  -----------
  More -Wswitch warning fixes for a42e515e3a9f3bb4e44389c097b89104d95b9b29


  Commit: da380b26e4748ade5a8dba85b7df5e1c4eded8bc
      https://github.com/llvm/llvm-project/commit/da380b26e4748ade5a8dba85b7df5e1c4eded8bc
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/lib/Sema/SemaConcept.cpp
    M clang/test/SemaCXX/cxx2c-fold-exprs.cpp

  Log Message:
  -----------
  [Clang] SFINAE on mismatching pack length during constraint satisfaction checking (#101879)

If a fold expanded constraint would expand packs of different size, it
is not a valid pack expansion and it is not satisfied. This should not
produce an error.

Fixes #99430


  Commit: 23d6fc37170a8c1bb285cfae16fadefc49c6cdb1
      https://github.com/llvm/llvm-project/commit/23d6fc37170a8c1bb285cfae16fadefc49c6cdb1
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/abds.ll
    M llvm/test/CodeGen/X86/abdu.ll

  Log Message:
  -----------
  [X86] Add i128 abds/abdu test coverage - based off #100810


  Commit: 96602c3ad504a26d4fb8b5ca73e878a7206ab26c
      https://github.com/llvm/llvm-project/commit/96602c3ad504a26d4fb8b5ca73e878a7206ab26c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    A llvm/test/CodeGen/X86/abds-neg.ll
    A llvm/test/CodeGen/X86/abdu-neg.ll

  Log Message:
  -----------
  [X86] Add negated abds/abdu test coverage - based off #100810


  Commit: 04f65043bc8711996a4ade05c67ae2d087ae8be5
      https://github.com/llvm/llvm-project/commit/04f65043bc8711996a4ade05c67ae2d087ae8be5
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    A llvm/test/CodeGen/AArch64/abds-neg.ll
    A llvm/test/CodeGen/AArch64/abds.ll
    A llvm/test/CodeGen/AArch64/abdu-neg.ll
    A llvm/test/CodeGen/AArch64/abdu.ll
    A llvm/test/CodeGen/RISCV/abds-neg.ll
    A llvm/test/CodeGen/RISCV/abds.ll
    A llvm/test/CodeGen/RISCV/abdu-neg.ll
    A llvm/test/CodeGen/RISCV/abdu.ll

  Log Message:
  -----------
  [AArch64][RISCV] Add scalar abds/abdu test coverage - based off #100810

Extend test coverage for #92576 - copied from existing x86 tests


  Commit: 7b9fcf5c44aa52a8daea304723d82e7dd2b5b74f
      https://github.com/llvm/llvm-project/commit/7b9fcf5c44aa52a8daea304723d82e7dd2b5b74f
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
    M llvm/test/tools/llvm-dwarfdump/X86/prettyprint_type_units.s

  Log Message:
  -----------
  [DWARF] Teach getAttributeValueAsReferencedDie to resolve DW_FORM_ref… (#101197)

…_sig8

Splitting from #99495.

I've extended the type unit test case to feature more kinds of
references, including the gcc-style DW_AT_type[DW_FORM_ref_sig8]
reference, which this patch fixes.


  Commit: 05b26ef9915972c586619795726ef948e2e54899
      https://github.com/llvm/llvm-project/commit/05b26ef9915972c586619795726ef948e2e54899
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/abds-neg.ll
    M llvm/test/CodeGen/AArch64/abds.ll
    M llvm/test/CodeGen/AArch64/abdu-neg.ll
    M llvm/test/CodeGen/AArch64/abdu.ll

  Log Message:
  -----------
  [AArch64] Regenerate abds/abdu tests to remove x86 copy+pasta. NFC


  Commit: 39826b10306ea05fe79d7af3420ffd4a93718ec4
      https://github.com/llvm/llvm-project/commit/39826b10306ea05fe79d7af3420ffd4a93718ec4
  Author: jameshu15869 <55058507+jameshu15869 at users.noreply.github.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libc/benchmarks/gpu/LibcGpuBenchmark.cpp

  Log Message:
  -----------
  [libc] [gpu] Change Time To Be Per Iteration (#101919)

Previously, the time field was the total time take to run all iterations
of the benchmark. This PR changes the value displayed to be the average
time take by each iteration.


  Commit: 30e5d7190d39fe4f0982435d4fb5043e64acdc9f
      https://github.com/llvm/llvm-project/commit/30e5d7190d39fe4f0982435d4fb5043e64acdc9f
  Author: Mital Ashok <mital at mitalashok.co.uk>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/test/CXX/drs/cwg15xx.cpp
    M clang/test/CXX/drs/cwg7xx.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang][NFC] Add CWG713 test; add example from CWG1584 test (#100747)

https://cplusplus.github.io/CWG/issues/713.html
https://cplusplus.github.io/CWG/issues/1584.html


  Commit: dc95aa209b9a64ed4cce9c47ed53a26376cca0be
      https://github.com/llvm/llvm-project/commit/dc95aa209b9a64ed4cce9c47ed53a26376cca0be
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/basic-pic.ll
    M llvm/test/CodeGen/AArch64/elf-globals-pic.ll
    M llvm/test/CodeGen/AArch64/extern-weak.ll
    M llvm/test/CodeGen/AArch64/got-abuse.ll
    M llvm/test/CodeGen/AArch64/tagged-globals-pic.ll

  Log Message:
  -----------
  [test][AArch64][CodeGen] Enhance GOT-related tests (#101968)

- use `-NEXT` for check lines where applicable (as discussed in
  https://github.com/llvm/llvm-project/pull/96164#discussion_r1673889562);

- move to shorter check prefixes where applicable (e.g. `CHECK` instead
  of `CHECK-PIC` if it's the only prefix used in the file);

- minor formatting.


  Commit: 3364284d87035eaac9662d345d4ddee2714f8fd7
      https://github.com/llvm/llvm-project/commit/3364284d87035eaac9662d345d4ddee2714f8fd7
  Author: chuongg3 <chuong.goh at arm.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/neon-shift-left-long.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Select SHL({Z|S}EXT, DUP Imm) into {U|S}HLL Imm (#96782)

First commit's PR is #96780

Combines the following instructions:
`ushll r0, r0, #0`
`shl r0, r0, #3`

Into:
`ushll r0, r0, #3`


  Commit: 9884fd33dbfe6dc8808a6047f29d8166a6ccb7be
      https://github.com/llvm/llvm-project/commit/9884fd33dbfe6dc8808a6047f29d8166a6ccb7be
  Author: Anton Sidorenko <anton.sidorenko at syntacore.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/test/Driver/riscv-cpus.c
    M clang/test/Misc/target-invalid-cpu-note.c
    M llvm/docs/ReleaseNotes.rst
    M llvm/lib/Target/RISCV/RISCVProcessors.td

  Log Message:
  -----------
  [RISCV] Add Syntacore SCR4 RV32/64 processors definition (#101321)

Syntacore SCR4 is a microcontroller-class processor core that has much
in common with SCR3. The most significant difference for compilers is F
and D extensions support. Overview: https://syntacore.com/products/scr4

Two CPUs are added:
  * 'syntacore-scr4-rv32' -- rv32imfdc
  * 'syntacore-scr4-rv64' -- rv64imafdc

Scheduling model will be added in a separate PR.

Co-authored-by: Dmitrii Petrov <dmitrii.petrov at syntacore.com>
Co-authored-by: Anton Afanasyev <anton.afanasyev at syntacore.com>


  Commit: 0e4c7fabd3587c7d95fa4733e4a9001a0bae737f
      https://github.com/llvm/llvm-project/commit/0e4c7fabd3587c7d95fa4733e4a9001a0bae737f
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/test/CodeGen/X86/dwarf-headers.ll
    M llvm/test/DebugInfo/COFF/fission-cu.ll
    M llvm/test/DebugInfo/COFF/fission-sections.ll
    M llvm/test/DebugInfo/WebAssembly/dwarf-headers.ll
    M llvm/test/DebugInfo/WebAssembly/fission-cu.ll
    M llvm/test/DebugInfo/X86/convert-debugloc.ll
    M llvm/test/DebugInfo/X86/convert-loclist.ll
    M llvm/test/DebugInfo/X86/fission-cu.ll
    M llvm/test/DebugInfo/X86/fission-hash-local.ll
    M llvm/test/DebugInfo/X86/fission-hash.ll
    A llvm/test/DebugInfo/X86/split-dwarf-dwo-hash.ll
    R llvm/test/DebugInfo/X86/split-dwarf-multiple-cu-hash.ll
    M llvm/test/DebugInfo/X86/sret.ll
    M llvm/test/MC/WebAssembly/dwarfdump.ll

  Log Message:
  -----------
  [DebugInfo] (Always) include the dwo name in the hash (#100375)

Since ce0c205813c74b4225180ac8a6e40fd52ea88229, we are doing that if a
single (LTO) compilation contains more than one compile unit, but the
same thing can happen if the non-lto and single-cu lto compilations,
typically when the CU ends up (nearly) empty. In my case, this happened
when LTO emptied two compile units.

Note that the source file name is already a part of the hash, so this
can only happen when a single file is compiled and linked twice into the
same application (most likely with different preprocessor defintiions).
While not exactly common, this pattern is used by some C code to
implement "templates".

The 2017 patch already hinted at the possibility of doing this
unconditionally, and this patch implements that. While the DWARF spec
hints at the option of using the type signature hashing algorithm for
the DWO_id purposes, AFAICT it does not actually require it, so I
believe this change is still conforming.

The relevant section of the spec is in Section 3.1.2 "Skeleton
Compilation Unit Entries" (in non-normative text):

```
The means of determining a compilation unit ID does not need to be
similar or related to the means of determining a type unit signature.
However, it should be suitable for detecting file version skew or other
kinds of mismatched files and for looking up a full split unit in a
DWARF package file (see Section 7.3.5 on page 190).
```


  Commit: 337c8b1a4f88bdb58ba17712e05307cc2532dc00
      https://github.com/llvm/llvm-project/commit/337c8b1a4f88bdb58ba17712e05307cc2532dc00
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/unittests/Analysis/ScalarEvolutionTest.cpp

  Log Message:
  -----------
  [SCEV] Add additional computeConstantDifference() tests (NFC)

And some tweaks to make this test easier to update. Use raw
string literals and print parse and verifier errors.


  Commit: 6848b99d170e9ac59ce2007c817bc579536d8e8e
      https://github.com/llvm/llvm-project/commit/6848b99d170e9ac59ce2007c817bc579536d8e8e
  Author: jyu2-git <jennifer.yu at intel.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    A clang/test/OpenMP/target_map_pointer_defalut_mapper_codegen.cpp

  Log Message:
  -----------
  [OpenMP][Map][NFC] improve map chain. (#101903)

This is for mapping structure has data members, which have 'default'
mappers, where needs to map these members individually using
their 'default' mappers.

example map(tofrom: spp[0][0]), look at test case.

currently create 6 maps:
1>&spp, &spp[0],  size 8, maptype TARGET_PARAM | FROM | TO
2>&spp[0], &spp[0][0], size(D)with maptype OMP_MAP_NONE, nullptr
3>&spp[0], &spp[0][0].e, size(e) with maptype MEMBER_OF  | FROM  | TO
4>&spp[0], &spp[0][0].h, size(h) with maptype MEMBER_OF  | FROM  | TO
5>&spp, &spp[0],size(8), maptype MEMBER_OF | IMPLICIT | FROM  | TO
6>&spp[0], &spp[0][0].f size(D) with maptype MEMBER_OF |IMPLICIT
|PTR_AND_OBJ, @.omp_mapper._ZTS1C.default

maptype with/without OMP_MAP_PTR_AND_OBJ
   For "2" and "5", since it is mapping pointer and pointee pair,
   PTR_AND_OBJ should be set
   But for "6" the PTR_AND_OBJ should not set.
However, "5" is duplicate with "1" can be skip.

To fix "2", during the call to emitCombinEntry with false with
NotTargetParams
instead !PartialStruct.PreliminaryMapData.BasePointers.empty(), since
all captures need to be TARGET_PARAM
And inside emitCombineEntry:  check
!PartialStruct.PreliminaryMapData.BasePointers.empty() to set
PTR_AND_OBJ

For "5" and "6": the fix in generateInfoForComponentList:
Add new variable IsPartialMapped set with
!PartialStruct.PreliminaryMapData.BasePointers.empty();

When that is true, skip generate "5" and don"t set IsExpressionFirstInfo
to false, so that PTR_AND_OBJ would be set.

After fix: will have 5 maps instead 6
1>&spp, &spp[0],  size 8, maptype TARGET_PARAM | FROM | TO
2>&spp[0], &spp[0][0], size(D), maptype PTR_AND_OBJ, nullptr
3>&spp[0], &spp[0][0].e, size(e), maptype MEMBER_OF_2  | FROM  | TO
4>&spp[0], &spp[0][0].h, size(h), maptype MEMBER_OF_2  | FROM  | TO
5>&spp[0], &spp[0][0].f size(32), maptype MEMBER_OF_2 | IMPLICIT,
@.omp_mapper._ZTS1C.default

For map(sppp[0][0][0]):
after fix: will have 6 maps instead 8.

https://github.com/llvm/llvm-project/pull/101903


  Commit: 212950fbcec3b71fa15ee49e0539333a30159c32
      https://github.com/llvm/llvm-project/commit/212950fbcec3b71fa15ee49e0539333a30159c32
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M lldb/include/lldb/Symbol/Type.h
    M lldb/include/lldb/lldb-private-enumerations.h
    M lldb/source/Symbol/Type.cpp
    M lldb/test/Shell/SymbolFile/DWARF/clang-gmodules-type-lookup.c
    M lldb/test/Shell/SymbolFile/DWARF/x86/compilercontext.ll
    M lldb/tools/lldb-test/lldb-test.cpp
    M lldb/unittests/Symbol/TestType.cpp

  Log Message:
  -----------
  [lldb] Refactor TypeQuery::ContextMatches, take 2 (#101333)

This is an alternative, much simpler implementation of #99305. In this
version I replace the AnyModule wildcard match with a special TypeQuery
flag which achieves (mostly) the same thing.

It is a preparatory step for teaching ContextMatches about anonymous
namespaces. It started out as a way to remove the assumption that the
pattern and target contexts must be of the same length -- that's will
not be correct with anonymous namespaces, and probably isn't even
correct right now for AnyModule matches.


  Commit: 13dd795ef108c75b1b6240832f77ca5282a2e629
      https://github.com/llvm/llvm-project/commit/13dd795ef108c75b1b6240832f77ca5282a2e629
  Author: macurtis-amd <macurtis at amd.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/include/clang/Driver/Driver.h
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp

  Log Message:
  -----------
  [clang][NFC] Make OffloadLTOMode getter a separate method (#101200)

Minor readability improvement (IMHO). Also makes it easier to find the
places where we are getting the offload lto mode.


  Commit: 0b2d50c08d2eadf32f685fcd5b5468bc2ec7a16d
      https://github.com/llvm/llvm-project/commit/0b2d50c08d2eadf32f685fcd5b5468bc2ec7a16d
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/lib/Sema/SemaExpr.cpp

  Log Message:
  -----------
  [Clang][NFC] Remove trailing whitespace from SemaExpr.cpp (#102001)

This patch removes trailing whitespace from `SemaExpr.cpp` added by
#70307


  Commit: 257831582c759048ecce5c393993268b71a602e0
      https://github.com/llvm/llvm-project/commit/257831582c759048ecce5c393993268b71a602e0
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libcxx/include/__algorithm/equal_range.h
    M libcxx/include/__algorithm/includes.h
    M libcxx/include/__algorithm/is_permutation.h
    M libcxx/include/__algorithm/lower_bound.h
    M libcxx/include/__algorithm/max_element.h
    M libcxx/include/__algorithm/min_element.h
    M libcxx/include/__algorithm/minmax.h
    M libcxx/include/__algorithm/minmax_element.h
    M libcxx/include/__algorithm/partial_sort_copy.h
    M libcxx/include/__algorithm/search.h
    M libcxx/include/__algorithm/search_n.h
    M libcxx/include/__algorithm/upper_bound.h
    M libcxx/src/regex.cpp
    A libcxx/test/libcxx/algorithms/callable-requirements-rvalue.compile.pass.cpp
    A libcxx/test/libcxx/algorithms/callable-requirements.verify.cpp
    R libcxx/test/libcxx/algorithms/callable.verify.cpp
    M libcxx/test/libcxx/algorithms/ranges_robust_against_copying_projections.pass.cpp
    M libcxx/test/libcxx/algorithms/robust_against_cpp20_hostile_iterators.compile.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_n_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.binary.search/upper.bound/upper_bound_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort_comp.pass.cpp

  Log Message:
  -----------
  [libc++] Check correctly ref-qualified __is_callable in algorithms (#101553)

We were only checking that the comparator was rvalue callable,
when in reality the algorithms always call comparators as lvalues.
This patch also refactors the tests for callable requirements and
expands it to a few missing algorithms.

This is take 2 of #73451, which was reverted because it broke some
CI bots. The issue was that we checked __is_callable with arguments
in the wrong order inside std::upper_bound. This has now been fixed
and a test was added.

Fixes #69554


  Commit: d77f07d166618d0f33500b518144ada99be2f13f
      https://github.com/llvm/llvm-project/commit/d77f07d166618d0f33500b518144ada99be2f13f
  Author: Shimin Cui <scui at ca.ibm.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
    A llvm/test/Transforms/TailCallElim/stackrestore.ll

  Log Message:
  -----------
  [TailCallElim] Don’t mark llvm.stackrestore with tail-call  (#101352)

This is to teach tailcallelim transformation not to mark
llvm.stackrestore with tail-call, as the intrinsic call can modify
unescaped allocas from the caller.
 
This fixes a problem found with our downstream testing. The problem can
also be shown when running the test case
llvm/test/Transforms/MemCpyOpt/stackrestore with passes=”tailcallelim,
memcpyopt”.


  Commit: 8fda5ba0ce0f4fd2854c2b0daec0c6c1fbe44e4e
      https://github.com/llvm/llvm-project/commit/8fda5ba0ce0f4fd2854c2b0daec0c6c1fbe44e4e
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    A llvm/test/Transforms/InstCombine/icmp-or-of-select-with-zero.ll

  Log Message:
  -----------
  [InstCombine] Add tests for folding `(icmp eq/ne (or (select cond, 0/NZ, 0/NZ), X), 0)`; NFC


  Commit: b4ac7f4fc91ee5c8a192bcf15fffa69cb30d1912
      https://github.com/llvm/llvm-project/commit/b4ac7f4fc91ee5c8a192bcf15fffa69cb30d1912
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/icmp-or-of-select-with-zero.ll

  Log Message:
  -----------
  [InstCombine] Fold `(icmp eq/ne (or (select cond, 0/NZ, 0/NZ), X), 0)`

Four cases:
`(icmp eq (or (select cond, 0, NonZero), Other))`
 -> `(and cond, (icmp eq Other, 0))`
`(icmp ne (or (select cond, NonZero, 0), Other))`
 -> `(or cond, (icmp ne Other, 0))`
`(icmp ne (or (select cond, 0, NonZero), Other))`
 -> `(or (not cond), (icmp ne Other, 0))`
`(icmp eq (or (select cond, NonZero, 0), Other))`
 -> `(and (not cond), (icmp eq Other, 0))`

These cases came up in tests on: #88088

Proofs: https://alive2.llvm.org/ce/z/ojGo_J

Closes #88183


  Commit: a113b4e52736b8d32499edf391b8ca53268a641f
      https://github.com/llvm/llvm-project/commit/a113b4e52736b8d32499edf391b8ca53268a641f
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/lib/AST/Interp/Compiler.h
    M clang/lib/AST/Interp/Context.cpp
    M clang/lib/AST/Interp/Descriptor.cpp
    M clang/test/AST/Interp/codegen.cpp

  Log Message:
  -----------
  [clang][Interp] Remove GlobalDecl flag (#101995)

When initializing global variables, we still need to create local
variables for temporaries created in the process. Otherwise, we will
never call their destructors.


  Commit: 72c9e24ed92149e853fc215cdf07e3afe34ae146
      https://github.com/llvm/llvm-project/commit/72c9e24ed92149e853fc215cdf07e3afe34ae146
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libc/startup/linux/do_start.cpp

  Log Message:
  -----------
  [libc][startup] fix main thread TLS unmapped with wrong value (#102009)

We have been unmapping a wrong address all the time.
```c
munmap(0x704cffebb000, 41048)           = 0
munmap(0x704cffec6000, 69632)           = 0
munmap(0x704cffe9f000, 41048)           = 0
munmap(0x704cffeaa000, 69632)           = 0
munmap(0x704cffe83000, 41048)           = 0
munmap(0x704cffe8e000, 69632)           = 0
munmap(0x704cffe67000, 41048)           = 0
munmap(0x704cffe72000, 69632)           = 0
munmap(0x704cffe4b000, 41048)           = 0
munmap(0x704cffe56000, 69632)           = 0
munmap(0x704cffe2f000, 41048)           = 0
munmap(0x704cffe3a000, 69632)           = 0
munmap(0x704cfff51028, 41048)           = -1 EINVAL (Invalid argument)
```


  Commit: 5689cccead7b70d8eeae4c641e8078e6d3c50b9a
      https://github.com/llvm/llvm-project/commit/5689cccead7b70d8eeae4c641e8078e6d3c50b9a
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M lldb/source/Commands/CommandObjectScripting.cpp
    M lldb/source/Commands/Options.td
    A lldb/test/Shell/Commands/command-scripting-extension-list.test
    R lldb/test/Shell/Commands/command-scripting-template-list.test

  Log Message:
  -----------
  [lldb] Rename `scripting template` to `scripting extension` (NFC) (#101935)

This patch renames the `scripting template` subcommand to be `scripting
extension` instead since that would make more sense for upcoming
commands.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 799fd3d87bb15c37027c9c4451ab8c4dac3ca437
      https://github.com/llvm/llvm-project/commit/799fd3d87bb15c37027c9c4451ab8c4dac3ca437
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

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

  Log Message:
  -----------
  [SLP]Support vectorization of small strided loads only graph.

If the graph includes only strided loads node, the compiler should still
try to vectorize it.

Reviewers: RKSimon, preames, topperc

Reviewed By: RKSimon

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


  Commit: 1fdc553e9734dd0655778e67ba02823f8647bd9b
      https://github.com/llvm/llvm-project/commit/1fdc553e9734dd0655778e67ba02823f8647bd9b
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/test/CXX/drs/cwg20xx.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Add test for CWG2091 "Deducing reference non-type template arguments" (#100765)

https://cplusplus.github.io/CWG/issues/2091.html


  Commit: 2b17366207f4906616e9e46a17f675ec7ac93bcd
      https://github.com/llvm/llvm-project/commit/2b17366207f4906616e9e46a17f675ec7ac93bcd
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Object/ELFObjectFile.h
    M llvm/test/tools/llvm-nm/data.test
    M llvm/test/tools/llvm-nm/readonly.test
    M llvm/test/tools/llvm-objdump/section-headers.test

  Log Message:
  -----------
  [Object] Refine isData/isBSS criteria

In GNU, DATA applies to not only SHT_PROGBITS, but also other non-NOBITS
types. BSS doesn't require the SHF_WRITE flag.

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


  Commit: 1569e0edf3ea5ecc17e3827c07c939a7a2fe2604
      https://github.com/llvm/llvm-project/commit/1569e0edf3ea5ecc17e3827c07c939a7a2fe2604
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/TextAPI/InterfaceFile.cpp

  Log Message:
  -----------
  [TextAPI] Add an assertion for adding duplicate libraries into a single TBD file (#101744)

This would lead to a malformed TBD file.


  Commit: 9f6b440adf27056f9c9b7772c52c6d01dfcf2f13
      https://github.com/llvm/llvm-project/commit/9f6b440adf27056f9c9b7772c52c6d01dfcf2f13
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/src/math/amdgpu/CMakeLists.txt
    R libc/src/math/amdgpu/pow.cpp
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/pow.cpp
    M libc/src/math/nvptx/CMakeLists.txt
    R libc/src/math/nvptx/pow.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/pow_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/pow_test.cpp

  Log Message:
  -----------
  [libc][math] Implement fast pass for double precision pow function with up to 1ULP error. (#101926)


  Commit: d6b5b98f5568f90950020af577fc1fb48b775b74
      https://github.com/llvm/llvm-project/commit/d6b5b98f5568f90950020af577fc1fb48b775b74
  Author: tcwzxx <tcwzxx at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/stores_mix_sizes.ll

  Log Message:
  -----------
  [SLP][NFC] Add a new test for store chains that mix different sizes of values (#101979)


  Commit: 834ad102c377a4d1cdc6c601d9899b5dc0a1858b
      https://github.com/llvm/llvm-project/commit/834ad102c377a4d1cdc6c601d9899b5dc0a1858b
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll

  Log Message:
  -----------
  [SLP][NFC]ADd a test version with threshold=-15, NFC.


  Commit: 0319711f89ed815b92ab581ed98cc4ace5178135
      https://github.com/llvm/llvm-project/commit/0319711f89ed815b92ab581ed98cc4ace5178135
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/DirectX/length_error.ll

  Log Message:
  -----------
  [test] Fix DirectX/length_error.ll after #101256


  Commit: accf5c9bb3b5fe88628a44062a5c0c2f903fca2c
      https://github.com/llvm/llvm-project/commit/accf5c9bb3b5fe88628a44062a5c0c2f903fca2c
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M lldb/include/lldb/API/SBProcess.h
    M lldb/include/lldb/API/SBSaveCoreOptions.h
    M lldb/include/lldb/API/SBThread.h
    M lldb/include/lldb/Symbol/SaveCoreOptions.h
    M lldb/include/lldb/Target/Process.h
    M lldb/source/API/SBSaveCoreOptions.cpp
    M lldb/source/API/SBThread.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
    M lldb/source/Symbol/SaveCoreOptions.cpp
    M lldb/source/Target/Process.cpp
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
    M lldb/test/API/python_api/sbsavecoreoptions/TestSBSaveCoreOptions.py
    R lldb/test/API/python_api/sbsavecoreoptions/basic_minidump.yaml
    R lldb/test/API/python_api/sbsavecoreoptions/basic_minidump_different_pid.yaml

  Log Message:
  -----------
  Revert "[LLDB][SBSaveCore] Implement a selectable threadlist for Core… (#102018)

… Options.  (#100443)"

This reverts commit 3e4af616334eae532f308605b89ff158dd195180.

@adrian-prantl FYI

Reverts #100443


  Commit: 0959e58fbe08a5333333100b367587cc04673eb8
      https://github.com/llvm/llvm-project/commit/0959e58fbe08a5333333100b367587cc04673eb8
  Author: vporpo <vporpodas at google.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/SandboxIR/Tracker.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp

  Log Message:
  -----------
  [SandboxIR][Tracker] Track creation of instructions (#102013)

This patch adds tracking support for the creation of SandboxIR
instructions. This allows us to undo the creation of instructions during
revert().

Please note that we don't allow creation of detached instructions,
meaning that the instructions need to be inserted into a block upon
creation. This is why the tracker class combines creation and insertion.


  Commit: 044aba4bd7575f4c6224efe81f754848eb199dd4
      https://github.com/llvm/llvm-project/commit/044aba4bd7575f4c6224efe81f754848eb199dd4
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/promote-kernel-arguments.ll

  Log Message:
  -----------
  AMDGPU: Regenerate baseline test checks


  Commit: 6d688601bc1235c04053b1d5eac75fdf5851de9c
      https://github.com/llvm/llvm-project/commit/6d688601bc1235c04053b1d5eac75fdf5851de9c
  Author: Julian Brown <julian.brown at amd.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/Clauses.h
    M flang/lib/Semantics/check-omp-structure.cpp

  Log Message:
  -----------
  [flang][OpenMP] Minimal fix for flang build after 'omp assume' patch (#102008)

This patch restores the flang build, which was inadvertently broken by
the patch to implement 'omp assume' support
(a42e515e3a9f3bb4e44389c097b89104d95b9b29).

Thanks to Maxim Kuvyrkov and the Linaro auto-tester for the heads-up.


  Commit: 536486fb4f45bffc2f4de5ae13e0cd825e8178a9
      https://github.com/llvm/llvm-project/commit/536486fb4f45bffc2f4de5ae13e0cd825e8178a9
  Author: Abhishek Varma <avarma094 at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
    M mlir/test/Dialect/Linalg/data-layout-propagation.mlir

  Log Message:
  -----------
  [MLIR][Linalg] Fix DataLayoutPropagation for tensor.unpack + linalg.generic (#101755)

-- While pushing down tensor.unpack through linalg.generic we should
take into account DPS. The current implementation was enforcing creating
a tensor.empty() for the final output value. This should've just been
the outs operand of the original linalg.generic.
-- This commit thus adds a fix for the same.

Signed-off-by: Abhishek Varma <abhvarma at amd.com>


  Commit: ca409892c5396fa3fbb8ea4dbf53d0e952f36d09
      https://github.com/llvm/llvm-project/commit/ca409892c5396fa3fbb8ea4dbf53d0e952f36d09
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-scalar-bit-ops.mir
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir

  Log Message:
  -----------
  AMDGPU: Permit more frame index operands in verifier (#101691)

Treat FI operands more like a register. When it gets materialized,
we will typically need to introduce a scavenged register anyway.
Add baseline tests for folding frame indexes into add/or.


  Commit: dac9042cc6a4dcb23e85b13232e2b233d55eda57
      https://github.com/llvm/llvm-project/commit/dac9042cc6a4dcb23e85b13232e2b233d55eda57
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

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

  Log Message:
  -----------
  [RISCV] Use uint64_t operations instead of APInt operations. NFC

We already know the type is i64 here. Just extract the uint64_t.


  Commit: 039cfe812c15c8f9e52ddb8cfc183fd8c927dba5
      https://github.com/llvm/llvm-project/commit/039cfe812c15c8f9e52ddb8cfc183fd8c927dba5
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    A lldb/include/lldb/Target/ScriptedThreadPlan.h
    R lldb/include/lldb/Target/ThreadPlanPython.h
    M lldb/source/API/SBThreadPlan.cpp
    M lldb/source/Target/CMakeLists.txt
    A lldb/source/Target/ScriptedThreadPlan.cpp
    M lldb/source/Target/Thread.cpp
    R lldb/source/Target/ThreadPlanPython.cpp

  Log Message:
  -----------
  [lldb/Target] Rename ThreadPlanPython into ScriptedThreadPlan (#101931)

Following 9a9ec228cdcf, since the ThreadPlanPython class started making
use of the Scripted Interface instead of calling directly into the
python methods, this class can work with other scripting languages (as
long as someone add the interfact for that language ;p).

So it doesn't make sense anymore for it to keep this name and also we
should avoid having language specific related classes outside the plugin
directory.

This patch renames the internal class from `ThreadPlanPython` to
`ScriptedThreadPlan` as its advertised externally, and also updates the
various log messages.

This should hopefully make the codebase more coherent.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: cec341b1423346e783b150bd71cf9f57fe8d7051
      https://github.com/llvm/llvm-project/commit/cec341b1423346e783b150bd71cf9f57fe8d7051
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Target/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 039cfe812c15


  Commit: 52956b0f705499ae4a268d3629b402ecdc2cbbab
      https://github.com/llvm/llvm-project/commit/52956b0f705499ae4a268d3629b402ecdc2cbbab
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/include/clang-c/Index.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/AST/TypeProperties.td
    A clang/include/clang/Basic/HLSLIntangibleTypes.def
    M clang/include/clang/Basic/Specifiers.h
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Sema/DeclSpec.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/include/module.modulemap
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/NSAPI.cpp
    M clang/lib/AST/PrintfFormatString.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypeLoc.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/TargetInfo.h
    M clang/lib/Index/USRGeneration.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseTentative.cpp
    M clang/lib/Sema/DeclSpec.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Serialization/ASTCommon.cpp
    M clang/lib/Serialization/ASTReader.cpp
    A clang/test/AST/HLSL/hlsl_resource_t.hlsl
    M clang/test/Modules/no-external-type-id.cppm
    A clang/test/SemaHLSL/BuiltIns/hlsl_resource_t.hlsl
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CXType.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  [HLSL] Implement intangible AST type (#97362)

HLSL has a set of intangible types which are described in in the
[draft HLSL Specification
(**[Basic.types]**)](https://microsoft.github.io/hlsl-specs/specs/hlsl.pdf):
  There are special implementation-defined types such as handle types,
  which fall into a category of standard intangible types. Intangible
  types are types that have no defined object representation or value
  representation, as such the size is unknown at compile time.
    
  A class type T is an intangible class type if it contains an base
  classes or members of intangible class type, standard intangible type,
  or arrays of such types. Standard intangible types and intangible class
  types are collectively called intangible
  types([9](https://microsoft.github.io/hlsl-specs/specs/hlsl.html#Intangible)).

This PR implements one standard intangible type `__hlsl_resource_t`
and sets up the infrastructure that will make it easier to add more
in the future, such as samplers or raytracing payload handles. The
HLSL intangible types are declared in
`clang/include/clang/Basic/HLSLIntangibleTypes.def` and this file is
included with related macro definition in most places that require edits
when a new type is added.

The new types are added as keywords and not typedefs to make sure they
cannot be redeclared, and they can only be declared in builtin implicit
headers. The `__hlsl_resource_t` type represents a handle to a memory
resource and it is going to be used in builtin HLSL buffer types like this:

        template <typename T>
        class RWBuffer {
          [[hlsl::contained_type(T)]]
          [[hlsl::is_rov(false)]]
          [[hlsl::resource_class(uav)]]  
          __hlsl_resource_t Handle;
        };

Part 1/3 of llvm/llvm-project#90631.

---------

Co-authored-by: Justin Bogner <mail at justinbogner.com>


  Commit: 83d9ed29c1401268266e0c0fc012c1b180f70218
      https://github.com/llvm/llvm-project/commit/83d9ed29c1401268266e0c0fc012c1b180f70218
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    A llvm/test/CodeGen/NVPTX/dynamic-stackalloc-regression.ll

  Log Message:
  -----------
  [NVPTX] Emit `NVPTXISD::DYNAMIC_STACKALLOC`'s chain (#101714)

`LowerDYNAMIC_STACKALLOC()` emits the `dynamic_stackalloc` chain operand
instead of the chain produced by the `NVPTXISD::DYNAMIC_STACKALLOC`. Fix
this behavior and don't produce an unnecessary `ISD::MERGE_VALUES`.


  Commit: c649194a71b47431f2eb2e041435d564e3b51072
      https://github.com/llvm/llvm-project/commit/c649194a71b47431f2eb2e041435d564e3b51072
  Author: John Brawn <john.brawn at arm.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libunwind/src/cet_unwind.h

  Log Message:
  -----------
  [libunwind] Be more careful about enabling GCS (#101973)

We need both GCS to be enabled by the compiler (which we do by checking
if __ARM_FEATURE_GCS_DEFAULT is defined) and for arm_acle.h to define
the GCS intrinsics. Check the latter by checking if _CHKFEAT_GCS is
defined.


  Commit: dcd246cbde09feda6b9c81b0520e5911644ec5db
      https://github.com/llvm/llvm-project/commit/dcd246cbde09feda6b9c81b0520e5911644ec5db
  Author: David Green <david.green at arm.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/ARM/arith-ssat.ll
    M llvm/test/Analysis/CostModel/ARM/arith-usat.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-saddsatcost.ll

  Log Message:
  -----------
  [ARM] Add scalar add_sat costs. (#100988)

These can usually generate:
 - qadd / qsub for signed i32 scalars
- uqadd16 / qadd16 / uqsub16 / qsub16 with an extend for signed/unsigned
i8/i16
 - Are expanded to an add + cmp + sel otherwise

This can lead to differences in unrolling etc, but should be a better
cost for the instructions.


  Commit: 946e086eeee046f5ed9dd6c5dfafff1bb9a01676
      https://github.com/llvm/llvm-project/commit/946e086eeee046f5ed9dd6c5dfafff1bb9a01676
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt

  Log Message:
  -----------
  [libc] Include pow in baremetal entrypoints (#102021)


  Commit: badf34a063853803dbcf9fe734db16c62e3eeb62
      https://github.com/llvm/llvm-project/commit/badf34a063853803dbcf9fe734db16c62e3eeb62
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/tail-folding-alloca-in-loop.ll

  Log Message:
  -----------
  [LV]Process alloca in isPredicatedInst for tail-folded analysis.

Patch fixes the compiler crash when it tries to check is alloca in the
loop is a predicated instruction.

Reviewers: fhahn

Reviewed By: fhahn

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


  Commit: ddb9869dd2b5c54fc2369287299e11b9a618d71a
      https://github.com/llvm/llvm-project/commit/ddb9869dd2b5c54fc2369287299e11b9a618d71a
  Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M lldb/include/lldb/Host/PipeBase.h
    M lldb/include/lldb/Host/posix/PipePosix.h
    M lldb/include/lldb/Host/windows/PipeWindows.h
    M lldb/source/Host/common/PipeBase.cpp
    M lldb/source/Host/posix/PipePosix.cpp
    M lldb/source/Host/windows/PipeWindows.cpp
    M lldb/unittests/Host/PipeTest.cpp

  Log Message:
  -----------
  [lldb] Fixed PipeWindows bugs; added Pipe::WriteWithTimeout() (#101383)

Added also the test for async read/write.


  Commit: 248c53429427034f45705af60d47f3b1090c4799
      https://github.com/llvm/llvm-project/commit/248c53429427034f45705af60d47f3b1090c4799
  Author: sedymrak <99839051+sedymrak at users.noreply.github.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M lldb/source/Commands/CommandObjectThread.cpp

  Log Message:
  -----------
  [lldb] Delete StepScope enum whose values are ignored. (#101981)

StepScope enum is a type whose values are passed around, but they are
ultimately ignored.

---------

Co-authored-by: Matej Košík <matej.kosik at codasip.com>


  Commit: 08a61eb01172054fc5f8c78ff527f01d9768569b
      https://github.com/llvm/llvm-project/commit/08a61eb01172054fc5f8c78ff527f01d9768569b
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libcxxabi/src/demangle/ItaniumDemangle.h

  Log Message:
  -----------
  [libcxxabi/demangle] Remove __cxxabi_config.h include (#101971)

The demangler is shared between libcxxabi and llvm/lib/Demangle, see
libcxxabi/src/demangle/README.txt. The copy in llvm/lib/Demangle cannot
use __cxxabi_config.h. Remove the include. It was only used to identify
clang, which can easily be done without the include as well.

No intended behavior change.


  Commit: 8866fa15de2cf17bae3fe0b273d6b51daa9e37fd
      https://github.com/llvm/llvm-project/commit/8866fa15de2cf17bae3fe0b273d6b51daa9e37fd
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libc/src/__support/block.h
    M libc/src/__support/freelist_heap.h
    M libc/test/src/__support/block_test.cpp
    M libc/test/src/__support/freelist_heap_test.cpp
    M libc/test/src/__support/freelist_malloc_test.cpp

  Log Message:
  -----------
  [libc][malloc] Reuse the prev_ field for allocated blocks (#101265)

This applies a standard trick from Knuth for storing boundary tags with
only one word of overhead for allocated blocks. The prev_ block is now
only valid if the previous block is free.

This is safe, since only coalescing with a free node requires walking
the blocks backwards. To allow determining whether it's safe to traverse
backwards, the used flag is changed to a prev_free flag. Since it's
still possible to unconditionally traverse forward, the prev_free flag
for the next block can be used wherever the old used flag is, so long as
there is always a next block.

To ensure there is always a next block, a sentinel last block is added
at the end of the range of blocks. Due to the above, this costs only a
single word per heap. This sentinel essentially just stores whether the
last real block of the heap is free. The sentinel is always considered
used and to have a zero inner size.

This completes the block optimizations needed to address #98086. The
block structure should now be size-competitive with dlmalloc, although
there are still a couple of broader fragmentation concerns to address.


  Commit: f1fd9d716decf3513c8ae54df1d60462eb878fb5
      https://github.com/llvm/llvm-project/commit/f1fd9d716decf3513c8ae54df1d60462eb878fb5
  Author: Tacet <advenam.tacet at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_errors.cpp
    M compiler-rt/test/asan/TestCases/contiguous_container_crash.cpp

  Log Message:
  -----------
  [compiler-rt][ASan] Remove alignment message in ASan error reporting (#94103)

This commit removes unnecessary alignment check and message in ASan
error reporting functions (like
`ErrorBadParamsToAnnotateContiguousContainer::Print()`), as alignment is
no longer required starting from LLVM 16.

Without that commit, this message can be observed only when arguments
are truly incorrect and `beg` is unaligned. Just unaligned `beg` does
not result in any message being printed.

Related commits:
-
https://github.com/llvm/llvm-project/commit/dd1b7b797a116eed588fd752fbe61d34deeb24e4
-
https://github.com/llvm/llvm-project/commit/1c5ad6d2c01294a0decde43a88e9c27d7437d157


  Commit: cc25748d07b0adb1a0223e836e9cae22af150496
      https://github.com/llvm/llvm-project/commit/cc25748d07b0adb1a0223e836e9cae22af150496
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/lib/MC/MCExpr.cpp

  Log Message:
  -----------
  [MC] Check RelaxFixupKind instead of hard coding RISC-V/LoongArch


  Commit: 241349fff2e1e99617124339a4c56a9b959f2f71
      https://github.com/llvm/llvm-project/commit/241349fff2e1e99617124339a4c56a9b959f2f71
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

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

  Log Message:
  -----------
  [VPlan] Move VPWidenPointerInductionR::execute to VPlanRecipes. (NFC)

Move VPWidenPointerInductionRecipe::execute to VPlanRecipes.cpp in line
with other ::execute implementations that don't depend on anything
defined in LoopVectorization.cpp


  Commit: c469540010af60c2e3d19d40f1ead16489176e21
      https://github.com/llvm/llvm-project/commit/c469540010af60c2e3d19d40f1ead16489176e21
  Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libc/newhdrgen/CMakeLists.txt
    M libc/newhdrgen/tests/input/test_small.yaml
    M libc/newhdrgen/yaml/arpa/inet.yaml
    M libc/newhdrgen/yaml/assert.yaml
    M libc/newhdrgen/yaml/ctype.yaml
    M libc/newhdrgen/yaml/dirent.yaml
    M libc/newhdrgen/yaml/errno.yaml
    M libc/newhdrgen/yaml/fcntl.yaml
    M libc/newhdrgen/yaml/features.yaml
    M libc/newhdrgen/yaml/fenv.yaml
    M libc/newhdrgen/yaml/float.yaml
    M libc/newhdrgen/yaml/gpu/rpc.yaml
    M libc/newhdrgen/yaml/inttypes.yaml
    M libc/newhdrgen/yaml/limits.yaml
    M libc/newhdrgen/yaml/math.yaml
    M libc/newhdrgen/yaml/pthread.yaml
    M libc/newhdrgen/yaml/sched.yaml
    M libc/newhdrgen/yaml/search.yaml
    M libc/newhdrgen/yaml/setjmp.yaml
    M libc/newhdrgen/yaml/signal.yaml
    M libc/newhdrgen/yaml/spawn.yaml
    M libc/newhdrgen/yaml/stdbit.yaml
    M libc/newhdrgen/yaml/stdckdint.yaml
    M libc/newhdrgen/yaml/stdfix.yaml
    M libc/newhdrgen/yaml/stdint.yaml
    M libc/newhdrgen/yaml/stdio.yaml
    M libc/newhdrgen/yaml/stdlib.yaml
    M libc/newhdrgen/yaml/string.yaml
    M libc/newhdrgen/yaml/strings.yaml
    M libc/newhdrgen/yaml/sys/auxv.yaml
    M libc/newhdrgen/yaml/sys/epoll.yaml
    M libc/newhdrgen/yaml/sys/mman.yaml
    M libc/newhdrgen/yaml/sys/random.yaml
    M libc/newhdrgen/yaml/sys/resource.yaml
    M libc/newhdrgen/yaml/sys/select.yaml
    M libc/newhdrgen/yaml/sys/sendfile.yaml
    M libc/newhdrgen/yaml/sys/socket.yaml
    M libc/newhdrgen/yaml/sys/stat.yaml
    M libc/newhdrgen/yaml/sys/statvfs.yaml
    M libc/newhdrgen/yaml/sys/utsname.yaml
    M libc/newhdrgen/yaml/sys/wait.yaml
    M libc/newhdrgen/yaml/termios.yaml
    M libc/newhdrgen/yaml/threads.yaml
    M libc/newhdrgen/yaml/time.yaml
    M libc/newhdrgen/yaml/uchar.yaml
    M libc/newhdrgen/yaml/unistd.yaml
    M libc/newhdrgen/yaml/wchar.yaml

  Log Message:
  -----------
  [libc][newhdrgen] removing trailing spaces -- yaml (#102043)

Co-authored-by: OverMighty <its.overmighty at gmail.com>


  Commit: d1b294029004e7c3220ed46e2b06addd32490745
      https://github.com/llvm/llvm-project/commit/d1b294029004e7c3220ed46e2b06addd32490745
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libc/utils/gpu/loader/Main.cpp

  Log Message:
  -----------
  [libc] Add loader option to force serial execution of GPU region (#101601)

Summary:
The loader is used as a test utility to run traditionally CPU based unit
tests on the GPU. This has issues when used with something like
`llvm-lit` because the GPU runtimes have a nasty habit of either running
out of resources or hanging when they are overloaded. To combat this, I
added this option to force each process to perform the GPU part
serially.

This is done right now with a simple file lock on the executing file. I
was originally thinking about using more complex IPC to allow N
processes to share execution, but that seemed overly complicated given
the incredibly large number of failure modes it introduces. File locks
are nice here because if the process crashes or is killed it will
release the lock automatically (at least on Linux). This is in contrast
to something like POSIX shared memory which will stick around until it's
unlinked, meaning that if someone did `sigkill` on the program it would
never get cleaned up and other threads might wait on a mutex that never
occurs.

Restricting this to one thread isn't overly ideal, given the fact that
the runtime can likely handle at least a *few* separate processes, but
this was easy and it works, so might as well start here. This will
hopefully unblock me on running `libcxx` tests, as those ran with so
much parallelism spurious failures were very common.


  Commit: bde51232baa4c94ef060df9c7a7d2b6de6b09dae
      https://github.com/llvm/llvm-project/commit/bde51232baa4c94ef060df9c7a7d2b6de6b09dae
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libc/config/gpu/headers.txt
    M libc/include/llvm-libc-macros/gpu/CMakeLists.txt
    A libc/include/llvm-libc-macros/gpu/signal-macros.h
    M libc/include/llvm-libc-macros/signal-macros.h
    M libc/include/llvm-libc-types/struct_sigaction.h

  Log Message:
  -----------
  [libc] Provide 'signal.h' header for the GPU (#101996)

Summary:
This header is practically useless, but we provide it mostly for the
macros so that applications can compile. I'm only doing this for the
`libc++` unittests that want it, and it is part of the C standard
technically. I just made an RPC call to do `raise`. Anything more isn't
going to work since it'd be way too annoying to make the CPU call into
some signal handler the GPU registered.


  Commit: c4ec19b985815b664cc598a608acc0906d29d902
      https://github.com/llvm/llvm-project/commit/c4ec19b985815b664cc598a608acc0906d29d902
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libc/config/gpu/headers.txt

  Log Message:
  -----------
  [libc] Add support for 'features.h' when targeting the GPU (#102037)

Summary:
`features.h` provides some information about the C library, provide this
on the GPU so external users can tell if it's the LLVM C library.


  Commit: 88d288489e09a261f6740972dcaf6fedaf87a762
      https://github.com/llvm/llvm-project/commit/88d288489e09a261f6740972dcaf6fedaf87a762
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libc/config/gpu/entrypoints.txt
    M libc/newhdrgen/yaml/math.yaml
    M libc/spec/gnu_ext.td
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    M libc/src/math/amdgpu/CMakeLists.txt
    M libc/src/math/amdgpu/declarations.h
    A libc/src/math/amdgpu/lgamma.cpp
    A libc/src/math/amdgpu/lgamma_r.cpp
    A libc/src/math/lgamma.h
    A libc/src/math/lgamma_r.h
    M libc/src/math/nvptx/CMakeLists.txt
    M libc/src/math/nvptx/declarations.h
    A libc/src/math/nvptx/lgamma.cpp
    A libc/src/math/nvptx/lgamma_r.cpp

  Log Message:
  -----------
  [libc] Add `lgamma` and `lgamma_r` stubs for the GPU (#102019)

Summary:
These functions are used by the <random> implementation in libc++ and
cause a lot of tests to fail. For now we provide these through the
vendor abstraction until we have a real version. The NVPTX version
doesn't even update the output correctly so these are just temporary.


  Commit: 7e8a9020b1ae3dea28c19f0cd68743482dca13d9
      https://github.com/llvm/llvm-project/commit/7e8a9020b1ae3dea28c19f0cd68743482dca13d9
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/LinkerScript.h
    M lld/ELF/MapFile.cpp
    M lld/ELF/OutputSections.h
    M lld/ELF/ScriptParser.cpp
    M lld/docs/ELF/linker_script.rst
    M lld/docs/ReleaseNotes.rst
    A lld/test/ELF/linkerscript/section-class.test

  Log Message:
  -----------
  [LLD] Add CLASS syntax to SECTIONS (#95323)

This allows the input section matching algorithm to be separated from
output section descriptions. This allows a group of sections to be
assigned to multiple output sections, providing an explicit version of
--enable-non-contiguous-regions's spilling that doesn't require altering
global linker script matching behavior with a flag. It also makes the
linker script language more expressive even if spilling is not intended,
since input section matching can be done in a different order than
sections are placed in an output section.

The implementation reuses the backend mechanism provided by
--enable-non-contiguous-regions, so it has roughly similar semantics and
limitations. In particular, sections cannot be spilled into or out of
INSERT, OVERWRITE_SECTIONS, or /DISCARD/. The former two aren't
intrinsic, so it may be possible to relax those restrictions later.


  Commit: 72825fde03aab3ce9eba2635b872144d1fb6b6b2
      https://github.com/llvm/llvm-project/commit/72825fde03aab3ce9eba2635b872144d1fb6b6b2
  Author: PaulXiCao <paulxicao7 at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libcxx/include/__math/hypot.h
    M libcxx/include/cmath
    M libcxx/test/libcxx/transitive_includes/cxx03.csv
    M libcxx/test/libcxx/transitive_includes/cxx11.csv
    M libcxx/test/libcxx/transitive_includes/cxx14.csv
    M libcxx/test/libcxx/transitive_includes/cxx17.csv
    M libcxx/test/libcxx/transitive_includes/cxx20.csv
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    M libcxx/test/std/numerics/c.math/cmath.pass.cpp
    M libcxx/test/support/fp_compare.h

  Log Message:
  -----------
  [libc++][math] Fix undue overflowing of `std::hypot(x,y,z)` (#100820)

This is in relation to mr #93350. It was merged to main, but reverted
because of failing sanitizer builds on PowerPC.

The fix includes replacing the hard-coded threshold constants (e.g.
`__overflow_threshold`) for different floating-point sizes by a general
computation using `std::ldexp`. Thus, it should now work for all architectures.
This has the drawback of not being `constexpr` anymore as `std::ldexp`
is not implemented as `constexpr` (even though the standard mandates it
for C++23).

Closes #92782


  Commit: f01a6f5ecb6c6969ee4ac4fdf6e1ab3d98c31309
      https://github.com/llvm/llvm-project/commit/f01a6f5ecb6c6969ee4ac4fdf6e1ab3d98c31309
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    A llvm/test/Transforms/InferAddressSpaces/AMDGPU/prefetch.ll

  Log Message:
  -----------
  InferAddressSpaces: Handle prefetch intrinsic (#101982)


  Commit: 47fc4c37bb6c526444836b23090cdf0916b3058b
      https://github.com/llvm/llvm-project/commit/47fc4c37bb6c526444836b23090cdf0916b3058b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    A llvm/test/Transforms/InferAddressSpaces/AMDGPU/masked-load-store.ll

  Log Message:
  -----------
  InferAddressSpaces: Handle masked load and store intrinsics (#102007)


  Commit: 2ef553c05ffe274d6910e3d11f52ed6417cc5061
      https://github.com/llvm/llvm-project/commit/2ef553c05ffe274d6910e3d11f52ed6417cc5061
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    A llvm/test/Transforms/InferAddressSpaces/AMDGPU/is.constant.ll

  Log Message:
  -----------
  InferAddressSpaces: Handle llvm.is.constant (#102010)


  Commit: 4b3bc46d1d794b8ed78b75ccd35a6cc30235bf31
      https://github.com/llvm/llvm-project/commit/4b3bc46d1d794b8ed78b75ccd35a6cc30235bf31
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/test/Frontend/optimization-remark-analysis.c

  Log Message:
  -----------
  [Remarks] Update LV analysis remark frontend test to avoid switch.

Support for vectorizing switch statements will be added in
https://github.com/llvm/llvm-project/pull/99808.

Update the loop to use a call that cannot be vectorized to preserve
testing surfacing analysis remarks via the frontend.


  Commit: dc349a3f47882cdac7112c763d2964b59e77356a
      https://github.com/llvm/llvm-project/commit/dc349a3f47882cdac7112c763d2964b59e77356a
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M .github/workflows/release-tasks.yml

  Log Message:
  -----------
  workflows/release-tasks: Add missing permissions for release binaries (#102023)

Now that the release binaries create artifact attestations, we need to
ensure that we call the workflow with the correct permissions.


  Commit: 1b9d7dd9eb31974077b64d66404193bd7c4ad65e
      https://github.com/llvm/llvm-project/commit/1b9d7dd9eb31974077b64d66404193bd7c4ad65e
  Author: Augie Fackler <augie at google.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/X86/avx10_2_512minmax-error.c

  Log Message:
  -----------
  tests: fix clang flags in avx10_2_512minmax-error test

Introduced in 3d5cc7e1e632b74119af13824dabc346bd248c93, caught by a
sandboxed test run.


  Commit: 0759508ff4b20704305b0f1ddb23647f9caf9bbf
      https://github.com/llvm/llvm-project/commit/0759508ff4b20704305b0f1ddb23647f9caf9bbf
  Author: RoseZhang03 <rosezhang at google.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

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

  Log Message:
  -----------
  [libc] add sin/cos/tan functions to bazel build file (#101756)

Needed to add sin/cos/tan fuzz tests to google3


  Commit: bacb534e583ef439bcaf6627dab96945d43cdbf6
      https://github.com/llvm/llvm-project/commit/bacb534e583ef439bcaf6627dab96945d43cdbf6
  Author: Augie Fackler <augie at google.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/test/tools/llvm-symbolizer/skip-line-zero.s

  Log Message:
  -----------
  tests: fix over-constrained ModuleName in skip-line-zero

In our bazel testing environment the ModuleName isn't as simple as it is with
cmake, so relax the constraint in this test from
0886440ef0ed0ad553522b731c841b81dc36944c.


  Commit: 934dd20327a210a7c3e0e597e1c24d6d0b6fccfd
      https://github.com/llvm/llvm-project/commit/934dd20327a210a7c3e0e597e1c24d6d0b6fccfd
  Author: mleair <leairmark at gmail.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M flang/include/flang/ISO_Fortran_binding.h

  Log Message:
  -----------
  Allow overriding of CFI_MAX_RANK by conditionally setting it to 15 if… (#102048)

it has not already been defined.


  Commit: 76c4529515c30626aa91ad63ee5a09bc6d6e7bb6
      https://github.com/llvm/llvm-project/commit/76c4529515c30626aa91ad63ee5a09bc6d6e7bb6
  Author: Sam Parker <sam.parker at arm.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/test/CodeGen/WebAssembly/simd-build-vector.ll

  Log Message:
  -----------
  [WebAssembly] Fix assertion in LowerBUILD_VECTOR (#101961)

The assertion was failing in the case where we were trying to lower to
loadxx_zero, but lane zero was undef.


  Commit: 3c8dadda3aa20b89fb5ad29ae31380d9594c3430
      https://github.com/llvm/llvm-project/commit/3c8dadda3aa20b89fb5ad29ae31380d9594c3430
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M .github/workflows/release-binaries.yml

  Log Message:
  -----------
  workflows/release-binaries: Give attestation artifacts a unique name (#102041)

We need a different attestation for each supported architecture, so
there artifacts all need to have a different name.

The upload step is run on a Linux runner, so no matter which
architecture's binary is being uploaded the runner.os and runner.arch
variables would always be 'Linux' and 'X64' and so we can't use them for
naming the artifact.


  Commit: 1fb1a5d8e2c5a0cbaeb39ead68352e5e55752a6d
      https://github.com/llvm/llvm-project/commit/1fb1a5d8e2c5a0cbaeb39ead68352e5e55752a6d
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M .github/workflows/release-binaries-all.yml
    M .github/workflows/release-binaries.yml

  Log Message:
  -----------
  workflows/release-binaries-all: Pass secrets on to release-binaries workflow (#101866)

A called workflow does not have access to secrets by default, so we need
to explicitly pass any secret that we want to use.


  Commit: bbe06631fa18e0a9de98f001f01e74aec9539b23
      https://github.com/llvm/llvm-project/commit/bbe06631fa18e0a9de98f001f01e74aec9539b23
  Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/test/Analysis/UniformityAnalysis/AMDGPU/always_uniform.ll

  Log Message:
  -----------
  [AMDGPU] Mark workgroup_id intrinsics always uniform (#102042)


  Commit: 4745bb3e7db6d9cf5588171a433f534e5b488c70
      https://github.com/llvm/llvm-project/commit/4745bb3e7db6d9cf5588171a433f534e5b488c70
  Author: Rahul Joshi <65194503+jurahul at users.noreply.github.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/docs/Contributing.rst

  Log Message:
  -----------
  [NFC] Remove reference to Differential. (#101587)

Remove reference to Differential since Phabricator is not used
anymore.


  Commit: cfd13cbac12b73069c79c89bb37294f77938bb3f
      https://github.com/llvm/llvm-project/commit/cfd13cbac12b73069c79c89bb37294f77938bb3f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

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

  Log Message:
  -----------
  [RISCV] Improve variable scoping in custom isel for ISD::AND.

Give the (and (srl/shl X, C2), C1) handling its owns private `C1` variable
it can modify using known zeros. This may be out of sync with
N1C->getZExtValue().

Add a separate const C1 for (and (sra X, C2), C1) and (and X, C).
This copy will always be in sync with N1C->getZExtValue().

Remove the IsC1Mask and IsC1ANDI variables and compute them at their
usage.

Use N1C->getSExtValue() when calling isInt. This shouldn't be a
functional change since we already checked that it was a mask. In
order for it to be a mask and a negative number, it would need to be -1
which should have been removed by DAG combine.


  Commit: 8b68e06731e0033ed3f8d6fe6292ae671611cfa1
      https://github.com/llvm/llvm-project/commit/8b68e06731e0033ed3f8d6fe6292ae671611cfa1
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/include/clang-c/Index.h

  Log Message:
  -----------
  [clang] Remove commas at the end of enumerator lists [NFC]

/llvm-project/clang/include/clang-c/Index.h:2984:28:
error: commas at the end of enumerator lists are a C99-specific feature [-Werror,-Wc99-extensions]
  CXType_HLSLResource = 179,
                           ^
1 error generated.


  Commit: 2fd2fd2c46719c2020e09ce0bd43c4af56caa0ba
      https://github.com/llvm/llvm-project/commit/2fd2fd2c46719c2020e09ce0bd43c4af56caa0ba
  Author: Jim Ingham <jingham at apple.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M lldb/test/API/macosx/abort_with_payload/TestAbortWithPayload.py

  Log Message:
  -----------
  Skip the abort_with_payload test on x86_64 till I can see if it can
be made to work there.


  Commit: 84cc1865ef9202af39404ff4524a9b13df80cfc1
      https://github.com/llvm/llvm-project/commit/84cc1865ef9202af39404ff4524a9b13df80cfc1
  Author: Nikhil Kalra <nikhil.kalra at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M mlir/examples/transform/Ch2/lib/MyExtension.cpp
    M mlir/examples/transform/Ch3/lib/MyExtension.cpp
    M mlir/examples/transform/Ch4/lib/MyExtension.cpp
    M mlir/include/mlir/IR/DialectRegistry.h
    M mlir/lib/Conversion/ConvertToLLVM/ConvertToLLVMPass.cpp
    M mlir/lib/Dialect/Affine/TransformOps/AffineTransformOps.cpp
    M mlir/lib/Dialect/Bufferization/TransformOps/BufferizationTransformOps.cpp
    M mlir/lib/Dialect/Func/TransformOps/FuncTransformOps.cpp
    M mlir/lib/Dialect/GPU/TransformOps/GPUTransformOps.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/DialectExtension.cpp
    M mlir/lib/Dialect/MemRef/TransformOps/MemRefTransformOps.cpp
    M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
    M mlir/lib/Dialect/SCF/TransformOps/SCFTransformOps.cpp
    M mlir/lib/Dialect/SparseTensor/TransformOps/SparseTensorTransformOps.cpp
    M mlir/lib/Dialect/Tensor/TransformOps/TensorTransformOps.cpp
    M mlir/lib/Dialect/Transform/DebugExtension/DebugExtension.cpp
    M mlir/lib/Dialect/Transform/IRDLExtension/IRDLExtension.cpp
    M mlir/lib/Dialect/Transform/LoopExtension/LoopExtension.cpp
    M mlir/lib/Dialect/Transform/PDLExtension/PDLExtension.cpp
    M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
    M mlir/lib/IR/Dialect.cpp
    M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
    M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
    M mlir/unittests/Dialect/Transform/BuildOnlyExtensionTest.cpp
    M mlir/unittests/IR/DialectTest.cpp

  Log Message:
  -----------
  [mlir] Support DialectRegistry extension comparison (#101119)

`PassManager::run` loads the dependent dialects for each pass into the
current context prior to invoking the individual passes. If the
dependent dialect is already loaded into the context, this should be a
no-op. However, if there are extensions registered in the
`DialectRegistry`, the dependent dialects are unconditionally registered
into the context.

This poses a problem for dynamic pass pipelines, however, because they
will likely be executing while the context is in an immutable state
(because of the parent pass pipeline being run).

To solve this, we'll update the extension registration API on
`DialectRegistry` to require a type ID for each extension that is
registered. Then, instead of unconditionally registered dialects into a
context if extensions are present, we'll check against the extension
type IDs already present in the context's internal `DialectRegistry`.
The context will only be marked as dirty if there are net-new extension
types present in the `DialectRegistry` populated by
`PassManager::getDependentDialects`.

Note: this PR removes the `addExtension` overload that utilizes
`std::function` as the parameter. This is because `std::function` is
copyable and potentially allocates memory for the contained function so
we can't use the function pointer as the unique type ID for the
extension.

Downstream changes required:
- Existing `DialectExtension` subclasses will need a type ID to be
registered for each subclass. More details on how to register a type ID
can be found here:
https://github.com/llvm/llvm-project/blob/8b68e06731e0033ed3f8d6fe6292ae671611cfa1/mlir/include/mlir/Support/TypeID.h#L30
- Existing uses of the `std::function` overload of `addExtension` will
need to be refactored into dedicated `DialectExtension` classes with
associated type IDs. The attached `std::function` can either be inlined
into or called directly from `DialectExtension::apply`.

---------

Co-authored-by: Mehdi Amini <joker.eph at gmail.com>


  Commit: f838fa820f9271008617c345c477122d9e29a05c
      https://github.com/llvm/llvm-project/commit/f838fa820f9271008617c345c477122d9e29a05c
  Author: jeffreytan81 <jeffreytan at meta.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/Target/StopInfo.h
    M lldb/include/lldb/Target/Thread.h
    M lldb/include/lldb/Target/ThreadPlan.h
    A lldb/include/lldb/Target/ThreadPlanSingleThreadTimeout.h
    M lldb/include/lldb/Target/ThreadPlanStepOut.h
    M lldb/include/lldb/Target/ThreadPlanStepOverRange.h
    M lldb/include/lldb/Target/ThreadPlanStepRange.h
    A lldb/include/lldb/Target/TimeoutResumeAll.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/source/API/SBThread.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
    M lldb/source/Target/CMakeLists.txt
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Target/TargetProperties.td
    M lldb/source/Target/Thread.cpp
    M lldb/source/Target/ThreadPlan.cpp
    A lldb/source/Target/ThreadPlanSingleThreadTimeout.cpp
    M lldb/source/Target/ThreadPlanStepInRange.cpp
    M lldb/source/Target/ThreadPlanStepOverRange.cpp
    M lldb/source/Target/ThreadPlanStepRange.cpp
    A lldb/test/API/functionalities/single-thread-step/Makefile
    A lldb/test/API/functionalities/single-thread-step/TestSingleThreadStepTimeout.py
    A lldb/test/API/functionalities/single-thread-step/main.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp

  Log Message:
  -----------
  New ThreadPlanSingleThreadTimeout to resolve potential deadlock in single thread stepping (#90930)

This PR introduces a new `ThreadPlanSingleThreadTimeout` that will be
used to address potential deadlock during single-thread stepping.

While debugging a target with a non-trivial number of threads (around
5000 threads in one example target), we noticed that a simple step over
can take as long as 10 seconds. Enabling single-thread stepping mode
significantly reduces the stepping time to around 3 seconds. However,
this can introduce deadlock if we try to step over a method that depends
on other threads to release a lock.

To address this issue, we introduce a new
`ThreadPlanSingleThreadTimeout` that can be controlled by the
`target.process.thread.single-thread-plan-timeout` setting during
single-thread stepping mode. The concept involves counting the elapsed
time since the last internal stop to detect overall stepping progress.
Once a timeout occurs, we assume the target is not making progress due
to a potential deadlock, as mentioned above. We then send a new async
interrupt, resume all threads, and `ThreadPlanSingleThreadTimeout`
completes its task.

To support this design, the major changes made in this PR are:
1. `ThreadPlanSingleThreadTimeout` is popped during every internal stop
and reset (re-pushed) to the top of the stack (as a leaf node) during
resume. This is achieved by always returning `true` from
`ThreadPlanSingleThreadTimeout::DoPlanExplainsStop()` and
`ThreadPlanSingleThreadTimeout::MischiefManaged()`.
2. A new thread-specific async interrupt stop is introduced, which can
be detected/consumed by `ThreadPlanSingleThreadTimeout`.
3. The clearing of branch breakpoints in the range thread plan has been
moved from `DoPlanExplainsStop()` to `ShouldStop()`, as it is not
guaranteed that it will be called.

The detailed design is discussed in the RFC below:

[https://discourse.llvm.org/t/improve-single-thread-stepping/74599](https://discourse.llvm.org/t/improve-single-thread-stepping/74599)

---------

Co-authored-by: jeffreytan81 <jeffreytan at fb.com>


  Commit: d1d3e22b688f01cfbe401be1e161373572b68ae8
      https://github.com/llvm/llvm-project/commit/d1d3e22b688f01cfbe401be1e161373572b68ae8
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Target/BUILD.gn

  Log Message:
  -----------
  [gn build] Port f838fa820f92


  Commit: 8ec3049e67a830cd35b46d4a33e8305569c5312f
      https://github.com/llvm/llvm-project/commit/8ec3049e67a830cd35b46d4a33e8305569c5312f
  Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/CMakeLists.txt
    R compiler-rt/lib/scudo/standalone/benchmarks/CMakeLists.txt
    R compiler-rt/lib/scudo/standalone/benchmarks/malloc_benchmark.cpp

  Log Message:
  -----------
  [scudo] Remove benchmarks file. (#102077)

The benchmarks have never been used, and don't really provide much
useful information. So remove them completely.


  Commit: f30188797453fc9bccb0ba9e8bdb8fd47369dfa7
      https://github.com/llvm/llvm-project/commit/f30188797453fc9bccb0ba9e8bdb8fd47369dfa7
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/lib/Target/X86/X86DomainReassignment.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/test/CodeGen/X86/apx/and.ll
    M llvm/test/CodeGen/X86/apx/cmov.ll
    M llvm/test/CodeGen/X86/apx/mul-i1024.ll
    M llvm/test/CodeGen/X86/apx/or.ll
    M llvm/test/CodeGen/X86/apx/shift-eflags.ll
    M llvm/test/CodeGen/X86/apx/sub.ll
    M llvm/test/CodeGen/X86/apx/xor.ll
    M llvm/test/CodeGen/X86/cmp.ll
    M llvm/test/CodeGen/X86/popcnt.ll
    M llvm/test/CodeGen/X86/select_const_i128.ll
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [X86][RA] Add two address hints for compressible NDD instructions. (#98603)

To address @topperc 's comment at
https://discourse.llvm.org/t/rfc-design-for-apx-feature-egpr-and-ndd-support/73031/5?u=kanrobert


  Commit: 5e1a5ffc2a464bc472ad92852e90de2f75c90eed
      https://github.com/llvm/llvm-project/commit/5e1a5ffc2a464bc472ad92852e90de2f75c90eed
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCELFObjectWriter.h
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/MCELFObjectTargetWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp

  Log Message:
  -----------
  [MC,ARM] Move SHF_ARM_PUECODE change for .text to ARMTargetELFStreamer::finish

and remove MCELFObjectWriter::addTargetSectionFlags.


  Commit: 7f76287ed1a0da3e586696befe0ad77310ceb15b
      https://github.com/llvm/llvm-project/commit/7f76287ed1a0da3e586696befe0ad77310ceb15b
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M libc/newhdrgen/yaml_to_classes.py

  Log Message:
  -----------
  [libc] undo execution bit change (#102083)

CI seems to stop running after the execution bit is set. Undo the change
to see if it recovers CI.


  Commit: 5c56b46a32a8856a022a54291bc9294068f7ddbd
      https://github.com/llvm/llvm-project/commit/5c56b46a32a8856a022a54291bc9294068f7ddbd
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/tool/CMakeLists.txt
    M clang/tools/clang-linker-wrapper/CMakeLists.txt
    M clang/tools/clang-repl/CMakeLists.txt
    M clang/tools/driver/CMakeLists.txt
    M clang/unittests/Interpreter/CMakeLists.txt
    M clang/unittests/Interpreter/ExceptionTests/CMakeLists.txt
    M flang/tools/flang-driver/CMakeLists.txt
    M lld/tools/lld/CMakeLists.txt
    M llvm/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/examples/ExceptionDemo/CMakeLists.txt
    M llvm/examples/HowToUseLLJIT/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter1/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter2/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter4/CMakeLists.txt
    M llvm/examples/Kaleidoscope/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter4/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter5/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter6/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter7/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter8/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter9/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITDumpObjects/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITRemovableCode/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithCustomObjectLinkingLayer/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithExecutorProcessControl/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithGDBRegistrationListener/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithInitializers/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithLazyReexports/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithObjectCache/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithObjectLinkingLayerPlugin/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithOptimizingIRTransform/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithRemoteDebugging/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithThinLTOSummaries/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsAddObjectFile/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsBasicUsage/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsDumpObjects/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsIRTransforms/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsLazy/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsRemovableCode/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsVeryLazy/CMakeLists.txt
    M llvm/tools/bugpoint/CMakeLists.txt
    M llvm/tools/llc/CMakeLists.txt
    M llvm/tools/lli/CMakeLists.txt
    M llvm/tools/lli/ChildTarget/CMakeLists.txt
    M llvm/tools/llvm-jitlink/CMakeLists.txt
    M llvm/tools/llvm-jitlink/llvm-jitlink-executor/CMakeLists.txt
    M llvm/tools/llvm-lto2/CMakeLists.txt
    M llvm/tools/opt/CMakeLists.txt
    M llvm/unittests/Analysis/CMakeLists.txt
    M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
    M llvm/unittests/Passes/Plugins/CMakeLists.txt
    M llvm/unittests/Support/DynamicLibrary/CMakeLists.txt
    M mlir/tools/mlir-cpu-runner/CMakeLists.txt
    M mlir/tools/mlir-opt/CMakeLists.txt

  Log Message:
  -----------
  [CMake] Fold export_executable_symbols_* into function args. (#101741)

`LLVM_ENABLE_EXPORTED_SYMBOLS_IN_EXECUTABLES` is not completely
compatible with `export_executable_symbols` as the later will be ignored
if the previous is set to NO.

 Fix the issue by passing if symbols need to be exported to
`llvm_add_exectuable` so the link flag can be determined directly
without calling `export_executable_symbols_*` later.


  Commit: fbee8d5a65defae402f98794d778fe724d24cc51
      https://github.com/llvm/llvm-project/commit/fbee8d5a65defae402f98794d778fe724d24cc51
  Author: Ivan R. Ivanov <ivanov.i.aa at m.titech.ac.jp>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Target/LLVMIR/Import/global-variables.ll

  Log Message:
  -----------
  [MLIR][LLVM] Allow importing of nameless globals (#101918)

LLVM allows nameless globals for private global variables whereas in
MLIR globals must be addressed using symbols. We attach symbols to
nameless globals in order to enable their import.

---------

Co-authored-by: Christian Ulmann <christianulmann at gmail.com>


  Commit: c41da1457051f239b153b798017938ce8e3d2405
      https://github.com/llvm/llvm-project/commit/c41da1457051f239b153b798017938ce8e3d2405
  Author: zhongyunde 00443407 <zhongyunde at huawei.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    A llvm/test/Transforms/InstSimplify/select-icmp.ll

  Log Message:
  -----------
  [tests] precommit tests for ValueTracking

x-y+1 is positive when x > y, so abs (x-y+1) --> x-y+1

Fixes https://github.com/llvm/llvm-project/issues/54735


  Commit: 30237130145d33be18ffa85b2145110c09d6cb1f
      https://github.com/llvm/llvm-project/commit/30237130145d33be18ffa85b2145110c09d6cb1f
  Author: zhongyunde 00443407 <zhongyunde at huawei.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstSimplify/select-icmp.ll

  Log Message:
  -----------
  [ValueTracking] Infer relationship for the select with ICmp

x -nsw y < -C is false when x > y and C >= 0
Alive2 proof for sgt, sge : https://alive2.llvm.org/ce/z/tupvfi
Note: It only really makes sense in the context of signed comparison for
      "X - Y must be positive if X >= Y and no overflow".

Fixes https://github.com/llvm/llvm-project/issues/54735


  Commit: 2bd568feccff9760938849e79289af67c3e6c231
      https://github.com/llvm/llvm-project/commit/2bd568feccff9760938849e79289af67c3e6c231
  Author: zhongyunde 00443407 <zhongyunde at huawei.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstSimplify/select-icmp.ll

  Log Message:
  -----------
  [ValueTracking] Infer relationship for the select with SLT


  Commit: 7a0d5bd6df332f08faea64f0ee621eae4e791419
      https://github.com/llvm/llvm-project/commit/7a0d5bd6df332f08faea64f0ee621eae4e791419
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_errors.cpp

  Log Message:
  -----------
  asan: Fix warnings in #94103 [-Wunused-variable]


  Commit: 33fc322696f438901d4b9a8717317bccfbd37040
      https://github.com/llvm/llvm-project/commit/33fc322696f438901d4b9a8717317bccfbd37040
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AArch64/srem-seteq-vec-splat.ll
    A llvm/test/CodeGen/RISCV/rvv/vp-select.ll
    M llvm/test/CodeGen/X86/combine-srem.ll
    M llvm/test/CodeGen/X86/srem-seteq-vec-splat.ll

  Log Message:
  -----------
  [SelectionDAG] Simplify vselect true, T, F -> T (#100992)

This addresses a TODO where we can fold a vselect to it's true operand
if the boolean is known to be all trues, by factoring out the logic from
extractBooleanFlip which checks TLI.getBooleanContents.


  Commit: 874067a22f0f483dbe210d8547c06d564bfa7848
      https://github.com/llvm/llvm-project/commit/874067a22f0f483dbe210d8547c06d564bfa7848
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/TreeTransform.h
    A clang/test/SemaCXX/fold_lambda_with_variadics.cpp

  Log Message:
  -----------
  [Sema] Preserve ContainsUnexpandedParameterPack in TransformLambdaExpr (#86265)

The lambda `ContainsUnexpandedParameterPack` flag is used for the
expressions' dependency computing and is therefore essential for pack
expansion. We previously lost the flag's preservation during the
lambda's transform, which caused some issues, e.g. a fold expression
couldn't properly expand inside a template.

This patch alleviates the issue by retaining the flag in more scenarios.
Note that we still have problems with constraints involving packs
regarding lambdas, and dealing with that would take more effort, and
we'd like to fix them in the future.

Fixes https://github.com/llvm/llvm-project/issues/56852
Fixes https://github.com/llvm/llvm-project/issues/85667
Mitigates https://github.com/llvm/llvm-project/issues/99877 because the
attributes were not handled in this patch.

---------

Co-authored-by: Ilya Biryukov <809452+ilya-biryukov at users.noreply.github.com>
Co-authored-by: cor3ntin <corentinjabot at gmail.com>


  Commit: 396343f17b1182ff8ed698beac3f9b93b1d9dabd
      https://github.com/llvm/llvm-project/commit/396343f17b1182ff8ed698beac3f9b93b1d9dabd
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/utils/extract_symbols.py

  Log Message:
  -----------
  [AIX]export function descriptor symbols related to template functions. (#101920)

This fixes regressions caused by
https://github.com/llvm/llvm-project/pull/97526

After that patch, all undefined references to DS symbol are removed.
This makes DS symbols(for template functions) have no reference in some
cases. So extract_symbols.py does not export these DS symbols for these
cases.

On AIX, exporting the function descriptor depends on references to the
function descriptor itself and the function entry symbol.

Without this fix, on AIX, we get:
```
rtld: 0712-001 Symbol _ZN4llvm15SmallVectorBaseIjE13mallocForGrowEPvmmRm was referenced
      from module llvm-project/build/unittests/Passes/Plugins/TestPlugin.so(), but a runtime definition
            of the symbol was not found. 
```


  Commit: 265fbfa063d0b31b57e7945f5be061b2a4f5baff
      https://github.com/llvm/llvm-project/commit/265fbfa063d0b31b57e7945f5be061b2a4f5baff
  Author: Ahmed Bougacha <ahmed at bougacha.org>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-a15.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-a16.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-a17.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-m4.c
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [AArch64] Add FPAC to apple- processors that have it. (#102072)

We added FPAC recently in d7e8a7487cd7 to allow ptrauth codegen to rely
on the cpu auth failure checks rather than emitting its own auth failure
check/brk sequence.

Add it to the Apple processors that do have it: A15, A16, A17, M4.

While there, tweak the description to refer to Armv8.3-A rather than
v8.3-A, matching the other features.


  Commit: 421c3fe54b56608bc6b23716d1cac96c8b3c38c5
      https://github.com/llvm/llvm-project/commit/421c3fe54b56608bc6b23716d1cac96c8b3c38c5
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Interp.cpp
    M clang/test/AST/Interp/cxx20.cpp

  Log Message:
  -----------
  [clang][Interp] Point 'declared here' note of invalid fns to definition (#102031)


  Commit: 1745c8e08dde9f32d0f0b701d3a6a271697458eb
      https://github.com/llvm/llvm-project/commit/1745c8e08dde9f32d0f0b701d3a6a271697458eb
  Author: Ryotaro KASUGA <kasuga.ryotaro at fujitsu.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachinePipeliner.cpp
    A llvm/test/CodeGen/AArch64/sms-order-physreg-deps.mir

  Log Message:
  -----------
  [MachinePipeliner] Fix instruction order with physical register (#99264)

dependencies in same cycle

Dependency checks were insufficient when reordering instructions with
physical register dependencies (i.e. Anti/Output dependencies). This
could result in generating incorrect code.


  Commit: 6e45fa95be9db5318ac7037c673c9b18a48ac5b1
      https://github.com/llvm/llvm-project/commit/6e45fa95be9db5318ac7037c673c9b18a48ac5b1
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/Features.def
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/PointerAuthOptions.h
    M clang/include/clang/Driver/Options.td
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Headers/ptrauth.h
    M clang/test/CodeGen/aarch64-elf-pauthabi.c
    A clang/test/CodeGen/ptrauth-init-fini.c
    M clang/test/Driver/aarch64-ptrauth.c
    M clang/test/Preprocessor/ptrauth_feature.c
    M compiler-rt/lib/builtins/crtbegin.c
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/include/llvm/IR/Constants.h
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/test/CodeGen/AArch64/note-gnu-property-elf-pauthabi.ll
    A llvm/test/CodeGen/AArch64/ptrauth-init-fini.ll
    M llvm/test/tools/llvm-readobj/ELF/AArch64/aarch64-feature-pauth.s
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [PAC][AArch64] Support init/fini array signing (#96478)

If both `-fptrauth-init-fini` and `-fptrauth-calls` are passed, sign
function pointers in `llvm.global_ctors` and `llvm.global_dtors` with
constant discriminator 0xD9D4
(`ptrauth_string_discriminator("init_fini")`). Additionally, if
`-fptrauth-init-fini-address-discrimination` is passed, address
discrimination is used for signing (otherwise, just constant
discriminator is used).

For address discrimination, we use it's special form since uses of
`llvm.global_{c|d}tors` are disallowed (see
`Verifier::visitGlobalVariable`) and we can't emit `getelementptr`
expressions referencing these special arrays. A signed ctor/dtor pointer
with special address discrimination applied looks like the following:

```
ptr ptrauth (ptr @foo, i32 0, i64 55764, ptr inttoptr (i64 1 to ptr))
```


  Commit: c10b736931a376b86b5344cf79a148a9d1900561
      https://github.com/llvm/llvm-project/commit/c10b736931a376b86b5344cf79a148a9d1900561
  Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/merge-sbuffer-load.mir

  Log Message:
  -----------
  [AMDGPU] Auto-generate lit pattern for test CodeGen/AMDGPU/merge-sbuffer-load.mir. (#101618)


  Commit: 19f379420b7ca5870931c10dd692aa5191878038
      https://github.com/llvm/llvm-project/commit/19f379420b7ca5870931c10dd692aa5191878038
  Author: Harini0924 <79345568+Harini0924 at users.noreply.github.com>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M lld/test/MachO/lto-object-path.ll

  Log Message:
  -----------
  [llvm-lit] Fix LLD Test when using lit internal shell (#102063)

Resolved the issue in MachO/lto-object-path.ll test where
'ZERO_AR_DATE=0' was not recognized as a command. Changed the test
command to set the environment variable correctly using 'env'. This
allows that the environment variable is set properly, allowing the test
to pass.


  Commit: 37d7b06da03a46e7bbd700e3d247fdb70e97f933
      https://github.com/llvm/llvm-project/commit/37d7b06da03a46e7bbd700e3d247fdb70e97f933
  Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/merge-sbuffer-load.mir

  Log Message:
  -----------
  [AMDGPU][SILoadStoreOptimizer] Include constrained buffer load variants (#101619)

Use the constrained buffer load opcodes while combining under-aligned
loads for XNACK enabled subtargets.


  Commit: 6e4c58052aa79048a8b18099315c7e7c8b1ca46a
      https://github.com/llvm/llvm-project/commit/6e4c58052aa79048a8b18099315c7e7c8b1ca46a
  Author: David Green <david.green at arm.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/abds.ll
    M llvm/test/CodeGen/AArch64/abdu.ll

  Log Message:
  -----------
  [AArch64] Guard against non-vector abd long nodes. (#102026)

This fixes a problem if abd nodes are generated more readily (#92576).
The folding of abd nodes into abdl needs to check that the inputs are
the correct form of vector. The added test requires vector legalization
to occur in order to hit the combine at the wrong time.


  Commit: 3a226dbe27ac7c7d935bc0968e84e31798a01207
      https://github.com/llvm/llvm-project/commit/3a226dbe27ac7c7d935bc0968e84e31798a01207
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/unittests/BinaryFormat/MachOTest.cpp

  Log Message:
  -----------
  [BinaryFormat] Disable MachOTest.UnalignedLC on SPARC (#100086)

As discussed in Issue #86793, the `MachOTest.UnalignedLC` test dies with
`SIGBUS` on SPARC, a strict-alignment target. It simply cannot work
there. Besides, the test invokes undefined behaviour on big-endian
targets, so this patch disables it on all of those.

Tested on `sparcv9-sun-solaris2.11` and `amd64-pc-solaris2.11`.


  Commit: 41b83ca559c402d238e303c0ac233180d60dcd57
      https://github.com/llvm/llvm-project/commit/41b83ca559c402d238e303c0ac233180d60dcd57
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M compiler-rt/lib/builtins/crtbegin.c

  Log Message:
  -----------
  [compiler-rt] Fix build errors with gcc

This patch fixes:

  compiler-rt/lib/builtins/crtbegin.c:11:18: error: missing binary
  operator before token "("

  compiler-rt/lib/builtins/crtbegin.c:53:18: error: missing binary
  operator before token "("

  compiler-rt/lib/builtins/crtbegin.c:124:18: error: missing binary
  operator before token "("


  Commit: c2f92fa3ab496a5a8edfe73297ad4f593413af27
      https://github.com/llvm/llvm-project/commit/c2f92fa3ab496a5a8edfe73297ad4f593413af27
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ADT/GraphTraits.h
    M llvm/include/llvm/Support/GenericDomTree.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h
    M llvm/unittests/Support/CMakeLists.txt
    A llvm/unittests/Support/GenericDomTreeTest.cpp

  Log Message:
  -----------
  [Support] Store dominator tree nodes in a vector (#101705)

Use basic block numbers to store dominator tree nodes in a vector. This
avoids frequent map lookups. Use block number epochs to validate that no
renumbering occured since the tree was created; after a renumbering, the
dominator tree can be updated with updateBlockNumbers().

Block numbers, block number epoch, and max block number are fetched via
newly added GraphTraits methods. Graphs which do not implement
getNumber() for blocks will use a DenseMap for an ad-hoc numbering.


  Commit: fa92d51f9e609270bf14c4bc16eb42a98183d27f
      https://github.com/llvm/llvm-project/commit/fa92d51f9e609270bf14c4bc16eb42a98183d27f
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/ExpandVectorPredication.h
    M llvm/include/llvm/CodeGen/Passes.h
    M llvm/include/llvm/LinkAllPasses.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/CodeGen/ExpandVectorPredication.cpp
    M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/test/CodeGen/AArch64/O0-pipeline.ll
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/ARM/O3-pipeline.ll
    R llvm/test/CodeGen/Generic/expand-vp-fp-intrinsics.ll
    R llvm/test/CodeGen/Generic/expand-vp-gather-scatter.ll
    R llvm/test/CodeGen/Generic/expand-vp-load-store.ll
    R llvm/test/CodeGen/Generic/expand-vp.ll
    M llvm/test/CodeGen/LoongArch/O0-pipeline.ll
    M llvm/test/CodeGen/LoongArch/opt-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O0-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/O0-pipeline.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/X86/O0-pipeline.ll
    M llvm/test/CodeGen/X86/opt-pipeline.ll
    A llvm/test/Transforms/PreISelIntrinsicLowering/expand-vp-fp-intrinsics.ll
    A llvm/test/Transforms/PreISelIntrinsicLowering/expand-vp-gather-scatter.ll
    A llvm/test/Transforms/PreISelIntrinsicLowering/expand-vp-load-store.ll
    A llvm/test/Transforms/PreISelIntrinsicLowering/expand-vp.ll
    M llvm/tools/llc/llc.cpp
    M llvm/tools/opt/optdriver.cpp

  Log Message:
  -----------
  [VP] Merge ExpandVP pass into PreISelIntrinsicLowering (#101652)

Similar to #97727; avoid an extra pass over the entire IR by performing
the lowering as part of the pre-isel-intrinsic-lowering pass.


  Commit: d337f5aa59fecd2413b076ed9573e378c57c1307
      https://github.com/llvm/llvm-project/commit/d337f5aa59fecd2413b076ed9573e378c57c1307
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/Support/BUILD.gn

  Log Message:
  -----------
  [gn build] Port c2f92fa3ab49


  Commit: b7730a23efb222944b732bbdb3a7b965b7bffd98
      https://github.com/llvm/llvm-project/commit/b7730a23efb222944b732bbdb3a7b965b7bffd98
  Author: Karl-Johan Karlsson <karl-johan.karlsson at ericsson.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/test/SemaHLSL/BuiltIns/length-errors.hlsl

  Log Message:
  -----------
  [test] Avoid writing to a potentially write-protected dir (#102073)

The test length-errors.hlsl don't check the output written to the
current directory. The current directory may be write protected e.g. in
a sandboxed environment.

This patch simply remove the -emit-llvm option as this testcase don't
care about the outputed llvm IR.

Co-authored-by: Chris B <cbieneman at microsoft.com>


  Commit: 37e75cdf9f432940cfbdcab3a3d8d93eba15bca4
      https://github.com/llvm/llvm-project/commit/37e75cdf9f432940cfbdcab3a3d8d93eba15bca4
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp

  Log Message:
  -----------
  [CodeGen] Use BasicBlock numbers to map to MBBs (#101883)

Now that basic blocks have numbers, we can replace the BB-to-MBB maps
and the visited set during ISel with vectors for faster lookup.


  Commit: 4c23c1b93d8a1e9f7c0eb848d2fe4680650ad999
      https://github.com/llvm/llvm-project/commit/4c23c1b93d8a1e9f7c0eb848d2fe4680650ad999
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/RegionInfoImpl.h
    M llvm/include/llvm/CodeGen/MachineBasicBlock.h
    M llvm/lib/CodeGen/MIRSampleProfile.cpp
    M llvm/lib/Target/Hexagon/HexagonCopyHoisting.cpp

  Log Message:
  -----------
  [CodeGen] Use SmallVector for MBB preds/succs (#101948)

Avoid extra heap allocations for typical predecessor/successor counts.


  Commit: f57a3a0d9d4817d2ca7c3152dda331a796bebe13
      https://github.com/llvm/llvm-project/commit/f57a3a0d9d4817d2ca7c3152dda331a796bebe13
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M mlir/docs/DefiningDialects/AttributesAndTypes.md

  Log Message:
  -----------
  [mlir][docs] Fix return type in Type/Attr printer docs (#101958)

These return `void`, not `Type` or `Attribute` respectively.


  Commit: 1b8593545316971ac3f922dcb7178623b5820003
      https://github.com/llvm/llvm-project/commit/1b8593545316971ac3f922dcb7178623b5820003
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

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

  Log Message:
  -----------
  Fix MSVC "not all control paths return a value" warning. NFC.


  Commit: bb59f04e7e75dcbe39f1bf952304a157f0035314
      https://github.com/llvm/llvm-project/commit/bb59f04e7e75dcbe39f1bf952304a157f0035314
  Author: Sam James <sam at gentoo.org>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M lldb/include/lldb/Utility/AddressableBits.h

  Log Message:
  -----------
  [LLDB] Add `<cstdint>` to AddressableBits (#102110)


  Commit: b1234ddbe2652aa7948242a57107ca7ab12fd2f8
      https://github.com/llvm/llvm-project/commit/b1234ddbe2652aa7948242a57107ca7ab12fd2f8
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AArch64/abds-neg.ll
    M llvm/test/CodeGen/AArch64/abds.ll
    M llvm/test/CodeGen/AArch64/abdu-neg.ll
    M llvm/test/CodeGen/AArch64/abdu.ll
    M llvm/test/CodeGen/AArch64/arm64-vabs.ll
    M llvm/test/CodeGen/AArch64/neon-abd.ll
    M llvm/test/CodeGen/AArch64/sve-aba.ll
    M llvm/test/CodeGen/AArch64/sve-abd.ll
    M llvm/test/CodeGen/AMDGPU/sad.ll
    M llvm/test/CodeGen/ARM/neon_vabd.ll
    M llvm/test/CodeGen/PowerPC/ppc64-P9-vabsd.ll
    M llvm/test/CodeGen/PowerPC/vec-zext-abdu.ll
    M llvm/test/CodeGen/RISCV/abds-neg.ll
    M llvm/test/CodeGen/RISCV/abds.ll
    M llvm/test/CodeGen/RISCV/abdu-neg.ll
    M llvm/test/CodeGen/RISCV/abdu.ll
    M llvm/test/CodeGen/RISCV/rvv/abd.ll
    M llvm/test/CodeGen/Thumb2/mve-vabdus.ll
    M llvm/test/CodeGen/X86/abds-neg.ll
    M llvm/test/CodeGen/X86/abds.ll
    M llvm/test/CodeGen/X86/abdu-neg.ll
    M llvm/test/CodeGen/X86/abdu.ll

  Log Message:
  -----------
  [DAG] Add legalization handling for ABDS/ABDU (#92576)

Always match ABD patterns pre-legalization, and use TargetLowering::expandABD to expand again during legalization.

abdu(lhs, rhs) -> sub(xor(sub(lhs, rhs), usub_overflow(lhs, rhs)), usub_overflow(lhs, rhs))
Alive2: https://alive2.llvm.org/ce/z/dVdMyv


  Commit: 8868c02cda875d1efe1646affa01656ef268ffed
      https://github.com/llvm/llvm-project/commit/8868c02cda875d1efe1646affa01656ef268ffed
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/test/Dialect/Linalg/vectorize-tensor-extract.mlir

  Log Message:
  -----------
  [mlir][linalg] Relax tensor.extract vectorization (#99299)

Simplifies the vectorization of tensor.extract so that:
* all cases that read into a genuinely multi-dim vector (*) are
  considered a gather load,
* all other cases are considered as potential contiguous loads.

This change means that the following extraction from a "column" tensor
will be correctly identified as a scalar load followed by a broadcast (rather
than a gather load).

```mlir
func.func @vectorize_scalar_broadcast_column_tensor(%in: tensor<1x1x4xi32>) -> tensor<1x1x4xi32> {
  %c4 = arith.constant 4 : index
  %c0 = arith.constant 0 : index
  %cst = arith.constant dense<[...]> : tensor<15x1xi32>

  %out = linalg.generic {
    indexing_maps = [affine_map<(d0, d1, d2) -> (d0, d1, d2)>],
    iterator_types = ["parallel", "parallel", "parallel"]}
    outs(%in : tensor<1x1x4xi32>) {

  ^bb0(%out: i32):
    %idx_0 = linalg.index 0 : index
    %extracted = tensor.extract %cst[%idx_0, %c0] : tensor<15x1xi32>
    linalg.yield %extracted : i32
  } -> tensor<1x1x4xi32>

  return %out:tensor<1x1x4xi32>
}
```

(*) `vector<1x4x1xf32>` is considered as 1D vector in this context.


  Commit: 3027688a77b5511447b3f060aaecbf30e4b9e63e
      https://github.com/llvm/llvm-project/commit/3027688a77b5511447b3f060aaecbf30e4b9e63e
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/riscv_vector.td
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vmv.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vmv.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vmv.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vmv.c
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td

  Log Message:
  -----------
  [RISCV] Support bf16 vmv.v.v and vmerge.vvm intrinsics with `zvfbfmin` (#101611)

These two intrinsics are supported for f16 with `zvfhmin`, also support
them in bf16 to make it aligned to f16.

This resolve:
https://github.com/riscv-non-isa/rvv-intrinsic-doc/issues/349


  Commit: 6a59deafde742e30daf3bf886f98afc37f00d75b
      https://github.com/llvm/llvm-project/commit/6a59deafde742e30daf3bf886f98afc37f00d75b
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/riscv_vector.td
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vcompress.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vrgather.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vcompress.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vrgather.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vcompress.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vrgather.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vcompress.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vrgather.c
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/test/CodeGen/RISCV/rvv/vcompress.ll
    M llvm/test/CodeGen/RISCV/rvv/vrgather.ll

  Log Message:
  -----------
  [RISCV] Support `vrgather` and `vcompress` for `zvfhmin` and `zvfbfmin` (#101633)

Support these in both C intrinsics and CodeGen, they can work with other
intrinsics in `zvfhmin` or `zvfbfmin`.

This resolve:
https://github.com/riscv-non-isa/rvv-intrinsic-doc/issues/350


  Commit: 40c2aaf54e9a7b5c560bb68796d444180ad67b5d
      https://github.com/llvm/llvm-project/commit/40c2aaf54e9a7b5c560bb68796d444180ad67b5d
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/riscv_vector.td
    M clang/include/clang/Basic/riscv_vector_common.td
    M clang/include/clang/Support/RISCVVIntrinsicUtils.h
    M clang/lib/Sema/SemaRISCV.cpp
    M clang/utils/TableGen/RISCVVEmitter.cpp

  Log Message:
  -----------
  [RISCV][sema] Correct the requirement of `vf[n|w]cvt.x[|u].f` intrinsics (#101811)

Fix https://github.com/llvm/llvm-project/issues/101526

`vf[n|w]cvt.x[|u].f` for f16 needs `zvfh` instead of `zvfhmin`, current
approach
is not able to detect this. Ultimately we need to add `zvfh` to
RequiredFeatures
to check other intrinsics instead, the type check should be done in
checkRVVTypeSupport.


  Commit: a98a0dcf63f54c54c5601a34c9f8c10cde0162d6
      https://github.com/llvm/llvm-project/commit/a98a0dcf63f54c54c5601a34c9f8c10cde0162d6
  Author: Hari Limaye <hari.limaye at arm.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetFrameLowering.h
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.h
    A llvm/test/CodeGen/AArch64/ssve-stack-hazard-remarks.ll
    M llvm/test/CodeGen/AArch64/sve-stack-frame-layout.ll

  Log Message:
  -----------
  [AArch64] Add streaming-mode stack hazard optimization remarks (#101695)

Emit an optimization remark when objects in the stack frame may cause
hazards in a streaming mode function. The analysis requires either the
`aarch64-stack-hazard-size` or `aarch64-stack-hazard-remark-size` flag
to be set by the user, with the former flag taking precedence.


  Commit: 673604a5398dd1732d23bcd8025987dd66b10947
      https://github.com/llvm/llvm-project/commit/673604a5398dd1732d23bcd8025987dd66b10947
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M mlir/docs/Dialects/Vector.md
    M mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp
    M mlir/test/Dialect/LLVMIR/types.mlir
    M mlir/test/Target/LLVMIR/llvmir-types.mlir

  Log Message:
  -----------
  [mlir][vector] Update docs for scalable vectors (#101842)

Adds a few notes on scalable vectors in the docs for the Vector dialect.
This is mostly "repeating" things from LLVM's LangRef. 

Additionally:

* Adds a few basic tests with scalable vectors (those should've been
  added long time ago),
* Updates a comment in "TypeConverter.cpp" (the current comment is
out-of-date),
* Includes small formatting edits in Vector.md.

**NOTE** Depends on #101813 - only review the top commit


  Commit: c3c2370c9a2465f57849861b13c59566b6f26daf
      https://github.com/llvm/llvm-project/commit/c3c2370c9a2465f57849861b13c59566b6f26daf
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/LoopIdiom/basic.ll
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/multiple-strides-vectorization.ll

  Log Message:
  -----------
  [Tests] Regenerate test checks (NFC)


  Commit: 59e13666dd2e81e58253488a29635fb2992ed741
      https://github.com/llvm/llvm-project/commit/59e13666dd2e81e58253488a29635fb2992ed741
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/Pointer.cpp
    M clang/lib/AST/Interp/Pointer.h
    M clang/test/AST/Interp/c.c

  Log Message:
  -----------
  [clang][Interp] Fix getField() for integral pointers (#102120)

Instead of just adding the Record::Field offset, instead get the
FieldDecl offset in the RecordLayout.

Unfortunately, the offset we pass to the ops here is not made to easily
go back to a FieldDecl, so we have to iterate over the parent Record.


  Commit: 80721e0d6c7793eec699b5846dcf5d3ffff331a8
      https://github.com/llvm/llvm-project/commit/80721e0d6c7793eec699b5846dcf5d3ffff331a8
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/avx10_2_512satcvtintrin.h
    A clang/lib/Headers/avx10_2satcvtintrin.h
    M clang/lib/Headers/immintrin.h
    M clang/lib/Sema/SemaX86.cpp
    A clang/test/CodeGen/X86/avx10_2_512satcvt-builtins-error.c
    A clang/test/CodeGen/X86/avx10_2_512satcvt-builtins.c
    A clang/test/CodeGen/X86/avx10_2satcvt-builtins.c
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86InstrAVX10.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrUtils.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    A llvm/test/CodeGen/X86/avx10_2_512satcvt-intrinsics.ll
    A llvm/test/CodeGen/X86/avx10_2satcvt-intrinsics.ll
    A llvm/test/MC/Disassembler/X86/avx10.2-satcvt-32.txt
    A llvm/test/MC/Disassembler/X86/avx10.2-satcvt-64.txt
    A llvm/test/MC/X86/avx10.2satcvt-32-att.s
    A llvm/test/MC/X86/avx10.2satcvt-32-intel.s
    A llvm/test/MC/X86/avx10.2satcvt-64-att.s
    A llvm/test/MC/X86/avx10.2satcvt-64-intel.s
    M llvm/test/TableGen/x86-fold-tables.inc

  Log Message:
  -----------
  [X86][AVX10.2] Support AVX10.2-SATCVT new instructions. (#101599)

Ref.: https://cdrdv2.intel.com/v1/dl/getContent/828965


  Commit: d871b2e0d09b872c57139ee0e24f966d58b92d33
      https://github.com/llvm/llvm-project/commit/d871b2e0d09b872c57139ee0e24f966d58b92d33
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineBasicBlock.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/lib/CodeGen/BasicBlockSections.cpp
    M llvm/lib/CodeGen/MIRSampleProfile.cpp
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/CodeGen/UnreachableBlockElim.cpp
    M llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
    M llvm/lib/Target/CSKY/CSKYConstantIslandPass.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp

  Log Message:
  -----------
  [CodeGen] Use optimized domtree for MachineFunction (#102107)

The dominator tree gained an optimization to use block numbers instead
of a DenseMap to store blocks. Given that machine basic blocks already
have numbers, expose these via appropriate GraphTraits. For debugging,
block number epochs are added to MachineFunction -- this greatly helps
in finding uses of block numbers after RenumberBlocks().

In a few cases where dominator trees are preserved across renumberings,
the dominator tree is updated to use the new numbers.


  Commit: aebf0855b627ab0b27b6e1d36d370ff70e72fb4e
      https://github.com/llvm/llvm-project/commit/aebf0855b627ab0b27b6e1d36d370ff70e72fb4e
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/cmp-diff-sized.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with comparison for different sized integer types, NFC.


  Commit: 3b050e89a21d9de48c06636bf8225988685184bd
      https://github.com/llvm/llvm-project/commit/3b050e89a21d9de48c06636bf8225988685184bd
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 80721e0d6c77


  Commit: d798d3b65e018977d5478685e53af85117027874
      https://github.com/llvm/llvm-project/commit/d798d3b65e018977d5478685e53af85117027874
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M libc/spec/gnu_ext.td

  Log Message:
  -----------
  [libc] Fix incorrect tablegen for lgamma


  Commit: 6e60d549d41f5651e9e0eded978810a170d0e42c
      https://github.com/llvm/llvm-project/commit/6e60d549d41f5651e9e0eded978810a170d0e42c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAG] Add foldSelectToABD helper. NFC.

Pull out of visitVSELECT to allow reuse in the future.


  Commit: 617cf8a72d2ab568bf0e84452faf4e35a322b32f
      https://github.com/llvm/llvm-project/commit/617cf8a72d2ab568bf0e84452faf4e35a322b32f
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/tools/clang-formatted-files.txt
    M clang/lib/Basic/CMakeLists.txt
    M clang/lib/Basic/Targets.cpp
    R clang/lib/Basic/Targets/Le64.cpp
    R clang/lib/Basic/Targets/Le64.h
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/CodeGen/bitfield-access-pad.c
    M clang/test/CodeGen/bitfield-access-unit.c
    M clang/test/CodeGenCXX/bitfield-access-empty.cpp
    M clang/test/CodeGenCXX/bitfield-access-tail.cpp
    M clang/test/Preprocessor/predefined-macros-no-warnings.c
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn

  Log Message:
  -----------
  Reapply "Finish deleting the le32/le64 targets" (#99079) (#101983)

This reverts commit d3f8105c65046173e20c4c59394b4a7f1bbe7627.

Halide no longer relies on this target:
https://github.com/llvm/llvm-project/pull/98497#issuecomment-2253358685


  Commit: d56d808fdcae06af5d704b42b0c237d93aee3857
      https://github.com/llvm/llvm-project/commit/d56d808fdcae06af5d704b42b0c237d93aee3857
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    M llvm/test/Analysis/BasicAA/struct-geps.ll

  Log Message:
  -----------
  [BasicAA] Check nusw instead of inbounds

For the offset scaling, this is sufficient to guarantee nsw. The
other checks for inbounds in this file do need proper inbounds.


  Commit: 4c6a89710a2580f9784408aae81f73d607d9942d
      https://github.com/llvm/llvm-project/commit/4c6a89710a2580f9784408aae81f73d607d9942d
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/landing_pad.ll

  Log Message:
  -----------
  [SLP][NFC]Update test checks.


  Commit: 936515c7a5607f83aa0684586c7e34ab4b8387ff
      https://github.com/llvm/llvm-project/commit/936515c7a5607f83aa0684586c7e34ab4b8387ff
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    A libc/src/math/exp2f16.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/exp2f16.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/exp2f16_test.cpp
    M libc/test/src/math/performance_testing/CMakeLists.txt
    A libc/test/src/math/performance_testing/exp2f16_perf.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/exp2f16_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add exp2f16 C23 math function (#101217)

Part of #95250.


  Commit: df0f31315ec1a14f24746d5fbcea99aa67a4846d
      https://github.com/llvm/llvm-project/commit/df0f31315ec1a14f24746d5fbcea99aa67a4846d
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/PR32086.ll

  Log Message:
  -----------
  [SLP][NFC]Update test checks.


  Commit: 295e4f49aefb2b07501be9f845df598b3ee280f1
      https://github.com/llvm/llvm-project/commit/295e4f49aefb2b07501be9f845df598b3ee280f1
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/include/clang/Lex/Preprocessor.h
    M clang/lib/Sema/SemaExpr.cpp

  Log Message:
  -----------
  Correct a comment and update a return type; NFC

These changes were inspired by a post-commit review comment:
https://github.com/llvm/llvm-project/pull/97274#pullrequestreview-2220175564


  Commit: a0fa9a308d20786ceb63b5d021c7f643ea2ef1c2
      https://github.com/llvm/llvm-project/commit/a0fa9a308d20786ceb63b5d021c7f643ea2ef1c2
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules

  Log Message:
  -----------
  [LLDB][test] Update Makefile.rules to support Windows host+Linux target (#99266)

These changes aim to support cross-compilation build on Windows host for
Linux target for API tests execution. They're not final: changes will
follow for refactoring and adjustments to make all tests pass.

Chocolatey make is recommended to be used since it is maintained better
than GnuWin32 mentioned here
https://lldb.llvm.org/resources/build.html#windows (latest GnuWin32
release is dated by 2010) and helps to avoid problems with building
tests (for example, GnuWin32 make doesn't support long paths and there
are some other failures with building for Linux with it).

Co-authored-by: Pavel Labath <pavel at labath.sk>


  Commit: f9b69a378cb1acfedab7252b4d4dc3d0af282d0b
      https://github.com/llvm/llvm-project/commit/f9b69a378cb1acfedab7252b4d4dc3d0af282d0b
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/tool/CMakeLists.txt
    M clang/tools/clang-linker-wrapper/CMakeLists.txt
    M clang/tools/clang-repl/CMakeLists.txt
    M clang/tools/driver/CMakeLists.txt
    M clang/unittests/Interpreter/CMakeLists.txt
    M clang/unittests/Interpreter/ExceptionTests/CMakeLists.txt
    M flang/tools/flang-driver/CMakeLists.txt
    M lld/tools/lld/CMakeLists.txt
    M llvm/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/examples/ExceptionDemo/CMakeLists.txt
    M llvm/examples/HowToUseLLJIT/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter1/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter2/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter4/CMakeLists.txt
    M llvm/examples/Kaleidoscope/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter4/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter5/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter6/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter7/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter8/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter9/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITDumpObjects/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITRemovableCode/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithCustomObjectLinkingLayer/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithExecutorProcessControl/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithGDBRegistrationListener/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithInitializers/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithLazyReexports/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithObjectCache/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithObjectLinkingLayerPlugin/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithOptimizingIRTransform/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithRemoteDebugging/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithThinLTOSummaries/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsAddObjectFile/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsBasicUsage/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsDumpObjects/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsIRTransforms/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsLazy/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsRemovableCode/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsVeryLazy/CMakeLists.txt
    M llvm/tools/bugpoint/CMakeLists.txt
    M llvm/tools/llc/CMakeLists.txt
    M llvm/tools/lli/CMakeLists.txt
    M llvm/tools/lli/ChildTarget/CMakeLists.txt
    M llvm/tools/llvm-jitlink/CMakeLists.txt
    M llvm/tools/llvm-jitlink/llvm-jitlink-executor/CMakeLists.txt
    M llvm/tools/llvm-lto2/CMakeLists.txt
    M llvm/tools/opt/CMakeLists.txt
    M llvm/unittests/Analysis/CMakeLists.txt
    M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
    M llvm/unittests/Passes/Plugins/CMakeLists.txt
    M llvm/unittests/Support/DynamicLibrary/CMakeLists.txt
    M mlir/tools/mlir-cpu-runner/CMakeLists.txt
    M mlir/tools/mlir-opt/CMakeLists.txt

  Log Message:
  -----------
  Revert "[CMake] Fold export_executable_symbols_* into function args. (#101741)"

This reverts commit 5c56b46a32a8856a022a54291bc9294068f7ddbd. This break
lld build when using GENERATE_DRIVER.


  Commit: daf4a06e5c5531005b275b72681e04bd08e58fe4
      https://github.com/llvm/llvm-project/commit/daf4a06e5c5531005b275b72681e04bd08e58fe4
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/strided-loads-with-external-use-ptr.ll

  Log Message:
  -----------
  [SLP]Try detect strided loads, if any pointer op require extraction.

If any pointer operand of the non-cosencutive loads is an instructions
with the user, which is not part of the current graph, and, thus,
requires emission of the extractelement instruction, better to try to
detect if the load sequence can be repsented as strided load and
extractelement instructions for pointers are not required.

Reviewers: preames, RKSimon, topperc

Reviewed By: RKSimon

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


  Commit: 4f067dc467a1f97a1b6ac420926da8bab5f243bf
      https://github.com/llvm/llvm-project/commit/4f067dc467a1f97a1b6ac420926da8bab5f243bf
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
    M llvm/test/Analysis/CostModel/ARM/arith-ssat.ll
    M llvm/test/Analysis/CostModel/ARM/arith-usat.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/intrinsiccost.ll

  Log Message:
  -----------
  TTI: Fix special casing vectorization costs of saturating add/sub (#97463)


  Commit: 2499978aae8398023363a157185c8021c32ea363
      https://github.com/llvm/llvm-project/commit/2499978aae8398023363a157185c8021c32ea363
  Author: Nuno Lopes <nuno.lopes at tecnico.ulisboa.pt>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/IntrinsicLowering.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/test/DebugInfo/Generic/assignment-tracking/dse/dse-after-memcpyopt-merge.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/dse/shorten-offset.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/dse/shorten.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/salvage-value.ll

  Log Message:
  -----------
  Convert a couple of undef placeholders to poison [NFC]


  Commit: 6def5170e80c0909206c87bdffa8c6e9e760f5c5
      https://github.com/llvm/llvm-project/commit/6def5170e80c0909206c87bdffa8c6e9e760f5c5
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/select-icmp-and.ll

  Log Message:
  -----------
   [InstCombine] Fold `(X & Mask) == 0 ? TC : FC -> TC binop (X & Mask)` (#100437)

Alive2: https://alive2.llvm.org/ce/z/d9wV7N


  Commit: 9fb196b469c9cdc5f44c0621b44289137cdd654a
      https://github.com/llvm/llvm-project/commit/9fb196b469c9cdc5f44c0621b44289137cdd654a
  Author: Yeting Kuo <46629943+yetingk at users.noreply.github.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/CMakeLists.txt
    M llvm/lib/Target/RISCV/RISCV.h
    A llvm/lib/Target/RISCV/RISCVIndirectBranchTracking.cpp
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/test/CodeGen/RISCV/O0-pipeline.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/jumptable-swguarded.ll
    A llvm/test/CodeGen/RISCV/lpad.ll

  Log Message:
  -----------
  [RISCV] Insert simple landing pad for taken address labels. (#91855)

This patch implements simple landing pad labels ([pr]). When Zicfilp
enabled, this patch inserts `lpad 0` at the beginning of basic blocks
which are possible to be landed by indirect jumps.
This patch also supports option riscv-landing-pad-label to make users
cpable to set nonzero fixed labels. Using nonzero fixed label force
setting t2 before indirect jumps. It's less portable but more strict
than original implementation.

[pr]: https://github.com/riscv-non-isa/riscv-elf-psabi-doc/pull/417


  Commit: de5081c15a2c48d7824b050c5f9cca6ce8ba7c97
      https://github.com/llvm/llvm-project/commit/de5081c15a2c48d7824b050c5f9cca6ce8ba7c97
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 9fb196b469c9


  Commit: e958456840c1663b496e5ee4a44ce73ae780f50d
      https://github.com/llvm/llvm-project/commit/e958456840c1663b496e5ee4a44ce73ae780f50d
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/test/AST/Interp/objc.mm

  Log Message:
  -----------
  [clang][Interp] Ignore ObjCBoxedExpr subexpr... (#102136)

... if it can't be expressed as a constant initializer.


  Commit: a4837fe3c1b3507254b2ce643f9e74db02a56f4b
      https://github.com/llvm/llvm-project/commit/a4837fe3c1b3507254b2ce643f9e74db02a56f4b
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/PreISelIntrinsicLowering.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
    M llvm/lib/Passes/PassRegistry.def

  Log Message:
  -----------
  [CodeGen] Allow PreISel lowering to run without TM (#102150)

Fixes #101652 after build bot failures where TM in the opt pass builder
is nullptr.


  Commit: f0178d881ce61e82b49fa63dcd023eed57c0804b
      https://github.com/llvm/llvm-project/commit/f0178d881ce61e82b49fa63dcd023eed57c0804b
  Author: Andrey Timonin <112198242+EtoAndruwa at users.noreply.github.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ADT/STLExtras.h

  Log Message:
  -----------
  [NFC][stlextras] Delete repetition of are (#101977)


  Commit: cee594cf36dc6c737df61e5417a98e09d807bd06
      https://github.com/llvm/llvm-project/commit/cee594cf36dc6c737df61e5417a98e09d807bd06
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/test/OpenMP/target_teams_ast_print.cpp
    M clang/test/OpenMP/target_teams_distribute_num_teams_messages.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_num_teams_messages.cpp
    M clang/test/OpenMP/teams_num_teams_messages.cpp
    M clang/tools/libclang/CIndex.cpp

  Log Message:
  -----------
  [Clang][Sema][OpenMP] Allow `num_teams` to accept multiple expressions (#99732)

By the OpenMP standard, `num_teams` clause can only accept one
expression (for now). In this patch, we extend it to allow to accept
multiple expressions when it is used with `target teams ompx_bare`
construct. This will allow to launch a multi-dim grid, same as CUDA/HIP.


  Commit: 3c3ea7e751bc18cc8598955bcd853d3c34ffee2d
      https://github.com/llvm/llvm-project/commit/3c3ea7e751bc18cc8598955bcd853d3c34ffee2d
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/cmp-diff-sized.ll

  Log Message:
  -----------
  [SLP]Better sorting of cmp instructions by comparing type sizes.

Currently SLP vectorizer compares cmp instructions by the type id of the
compared operands, which may failed in case of different integer types,
for example, which have same type id, but different sizes. Patch adds
  comparison by type sizes to fix this.

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: bd576fe34285c4dcd04837bf07a89a9c00e3cd5e
      https://github.com/llvm/llvm-project/commit/bd576fe34285c4dcd04837bf07a89a9c00e3cd5e
  Author: Sharadh Rajaraman <r.sharadh at outlook.sg>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/docs/StandardCPlusPlusModules.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang/Driver/Options.td
    A clang/test/Driver/cl-cxx20-modules.cppm

  Log Message:
  -----------
  [clang][driver][clang-cl] Support `--precompile` and `-fmodule-*` options in Clang-CL (#98761)

This PR is the first step in improving the situation for `clang-cl`
detailed in [this LLVM Discourse
thread](https://discourse.llvm.org/t/clang-cl-exe-support-for-c-modules/72257/28).
There has been some work done in #89772. I believe this is somewhat
orthogonal.

This is a work-in-progress; the functionality has only been tested with
the [basic 'Hello World'
example](https://clang.llvm.org/docs/StandardCPlusPlusModules.html#quick-start),
and proper test cases need to be written. I'd like some thoughts on
this, thanks!

Partially resolves #64118.


  Commit: 92a01683cb6633fa8b0b29128ab5937f022dd17c
      https://github.com/llvm/llvm-project/commit/92a01683cb6633fa8b0b29128ab5937f022dd17c
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M libc/config/linux/riscv/entrypoints.txt
    M libc/test/src/math/smoke/SetPayloadTest.h

  Log Message:
  -----------
  [libc] Enable more entrypoints for riscv (#102055)

This patch enables more entrypoints for riscv. The changes to the test cases are introduced to support rv32 which has long double but doesn't have int128


  Commit: 048f35037779763963c4b4478a0884e828ea9538
      https://github.com/llvm/llvm-project/commit/048f35037779763963c4b4478a0884e828ea9538
  Author: Siu Chi Chan <siuchi.chan at amd.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M lld/ELF/Writer.cpp
    A lld/test/ELF/hip-section-layout.s

  Log Message:
  -----------
  Move HIP fatbin sections farther away from .text

This would avoid wasting relocation range to jump over the HIP fatbin
sections and therefore alleviate relocation overflow pressure.


  Commit: b809671a4184fb279abf7ae2f75ee9117c13dd60
      https://github.com/llvm/llvm-project/commit/b809671a4184fb279abf7ae2f75ee9117c13dd60
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/lib/Serialization/ASTReader.cpp

  Log Message:
  -----------
  [Serialization] Fix a warning

This patch fixes:

  clang/lib/Serialization/ASTReader.cpp:11426:13: error: unused
  variable '_' [-Werror,-Wunused-variable]


  Commit: 9684c87d1402ea9327c1abd7f56bafed8e751f51
      https://github.com/llvm/llvm-project/commit/9684c87d1402ea9327c1abd7f56bafed8e751f51
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M flang/runtime/copy.cpp

  Log Message:
  -----------
  [flang][runtime] Fixed performance regression in CopyElement. (#102081)

Polyhedron/capacita,protein and CPU2000/facerec,wupwise showed up to
60% regression on x86 after #101421. The memcpy loops of the toAt and
fromAt arrays that are run to create the initial work item end up
being encoded as 'rep mov', and they add noticeable overhead
comparing to the total amount of work. 'rep mov' is not the best
choise for small size memcpy (e.g. when the array rank is 1 or 2,
it would be quite slow). Moreover, the rest of the stack related
setup is also noticeable for the simple cases.

I added a shortcut for the simple copy case, and also got rid
of the initial toAt/fromAt copies by allowing the CopyDescriptor
to use the external subscript storages.


  Commit: 15d4a84e7977725dc0661995963a12ff8605b03c
      https://github.com/llvm/llvm-project/commit/15d4a84e7977725dc0661995963a12ff8605b03c
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/LangOptions.def
    M clang/lib/CodeGen/CodeGenModule.cpp
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/test/CodeGen/AArch64/note-gnu-property-elf-pauthabi.ll
    M llvm/test/tools/llvm-readobj/ELF/AArch64/aarch64-feature-pauth.s
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [PAC][ELF][AArch64] Encode signed GOT flag in PAuth core info (#96159)

Treat 8th bit of version value for llvm_linux platform as signed GOT
flag.

- clang: define `PointerAuthELFGOT` LangOption and set 8th bit of
  `aarch64-elf-pauthabi-version` LLVM module flag correspondingly;

- llvm-readobj: print `PointerAuthELFGOT` or `!PointerAuthELFGOT` in
  version description of llvm_linux platform depending on whether the flag
  is set.


  Commit: 6250313291c9541abe74142be86a9bb7c0d30974
      https://github.com/llvm/llvm-project/commit/6250313291c9541abe74142be86a9bb7c0d30974
  Author: Mike Rice <michael.p.rice at intel.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/AttributeCommonInfo.h
    M clang/lib/Basic/Attributes.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/test/TableGen/attrs-parser-string-switches.td
    M clang/utils/TableGen/ClangAttrEmitter.cpp

  Log Message:
  -----------
  [clang] Fix compile-time regression from attribute arg checking change (#101768)

In 2acf77f987331c05520c5bfd849326909ffce983 code was added to use the
'full' name including syntax and scope.

Instead of building up a large string for each name, add syntax and
scope checks to the value expression in tablegen.

There is already code to generate expressions for target specific
attributes. This change refactors and adds to that code to include
syntax and scope checks.

The tablegen avoids generating the complicated expression unless there
are two attributes using the same name, otherwise the case values will
be as simple as before.

Removes the currently unused attributeHasStrictIdentifierArgAtIndex
function and the related tablegen.


  Commit: b9183d0d0e24d164d3b57bf81ae911a22094e897
      https://github.com/llvm/llvm-project/commit/b9183d0d0e24d164d3b57bf81ae911a22094e897
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p14-23.cpp

  Log Message:
  -----------
  [Clang][Sema] Ensure that the selected candidate for a member function explicit specialization is more constrained than all others (#101721)

The selection of the most constrained candidate for member function
explicit specializations introduced in #88963 does not check whether the
selected candidate is more constrained than all other candidates, which
can result in ambiguities being undiagnosed. This patch addresses the
issue.


  Commit: 2f28378317827afed81db1c2ce33c187ee6582a0
      https://github.com/llvm/llvm-project/commit/2f28378317827afed81db1c2ce33c187ee6582a0
  Author: Sirui Mu <msrlancern at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/config/windows/entrypoints.txt
    M libc/docs/overlay_mode.rst

  Log Message:
  -----------
  [libc] Fix builds on Windows (#102162)

This PR changes several places in the CMake scripts to make libc build
on Windows. It adds the `errno` entrypoint to the Windows target.

A mistake in the overlay build doc is also fixed.

Tests still cannot be built on Windows because of the lack of osutils.


  Commit: 2336ef96b3472982cd5709277375395e45910db1
      https://github.com/llvm/llvm-project/commit/2336ef96b3472982cd5709277375395e45910db1
  Author: Joshua Baehring <98630690+JoshuaMBa at users.noreply.github.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/secondary.h

  Log Message:
  -----------
  [scudo] Refactor store() and retrieve(). (#102024)

store() and retrieve() have been refactored so that the scudo headers
are abstracted away from cache operations.


  Commit: 8c6a6f1a707af5bd1afd79d8aa62570b7091801a
      https://github.com/llvm/llvm-project/commit/8c6a6f1a707af5bd1afd79d8aa62570b7091801a
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
    M libc/utils/gpu/loader/nvptx/nvptx-loader.cpp

  Log Message:
  -----------
  [libc] Make RPC malloc implementation return 'nullptr' on alloc failure

Summary:
`malloc` is supposed to return `nullptr` if it fails, not exit with an
error code.


  Commit: f949b036610afe56fddde724ee01f64dd79814d3
      https://github.com/llvm/llvm-project/commit/f949b036610afe56fddde724ee01f64dd79814d3
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/tools/llvm-readobj/ObjDumper.cpp

  Log Message:
  -----------
  [llvm-readobj][NFC] Don't use startLine in a middle of a line in ObjDumper. (#102071)


  Commit: 1d2b6d9d4d1074bac4a6ec48dd0ff4253590e34a
      https://github.com/llvm/llvm-project/commit/1d2b6d9d4d1074bac4a6ec48dd0ff4253590e34a
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ADT/GraphTraits.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h

  Log Message:
  -----------
  [Support] Use block numbers for DomTree construction (#101706)

Similar to #101705, do the same optimization for dominator tree
construction.


  Commit: b7cd564fa3ecc2a9ed0fded98c24f68e2dad63ad
      https://github.com/llvm/llvm-project/commit/b7cd564fa3ecc2a9ed0fded98c24f68e2dad63ad
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

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

  Log Message:
  -----------
  [IR] Don't verify module flags on every access (#102153)

8b4306ce050bd5 introduced validity checks for every module flag access,
because the auto-upgrader uses named metadata before verifying the
module.

This causes overhead for all other accesses, and the check is, in fact,
only need at that single place. Change the upgrader to be careful when
accessing module flags before the module is verified and remove the
checks on all other occasions.

There are two tangential optimizations included: first, when querying a
specific flag, don't enumerate all other flags into a vector as well.
Second, don't use a Twine for getNamedMetadata(), which has
materialization overhead -- all call sites use simple strings that can
be implicitly converted to a StringRef.


  Commit: 55ea36002bd364518c20b3ce282640c920697bf7
      https://github.com/llvm/llvm-project/commit/55ea36002bd364518c20b3ce282640c920697bf7
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/include/clang/AST/ExprCXX.h
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/Sema/SemaCoroutine.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/test/SemaCXX/decltype.cpp

  Log Message:
  -----------
  [Clang][Sema] Make UnresolvedLookupExprs in class scope explicit specializations instantiation dependent (#100392)

A class member named by an expression in a member function that may instantiate to a static _or_ non-static member is represented by a `UnresolvedLookupExpr` in order to defer the implicit transformation to a class member access expression until instantiation. Since `ASTContext::getDecltypeType` only creates a `DecltypeType` that has a `DependentDecltypeType` as its canonical type when the operand is instantiation dependent, and since we do not transform types unless they are instantiation dependent, we need to mark the `UnresolvedLookupExpr` as instantiation dependent in order to correctly build a `DecltypeType` using the expression as its operand with a `DependentDecltypeType` canonical type. Fixes #99873.


  Commit: 0c2ded670652c73cb0245b2a8ec065cd1b4f0c6f
      https://github.com/llvm/llvm-project/commit/0c2ded670652c73cb0245b2a8ec065cd1b4f0c6f
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Serialization/ASTReader.cpp

  Log Message:
  -----------
  [NFC] Fix compile warning introduced in #99732


  Commit: 1119a0805009501691538a28aeb9bb18b3ff911f
      https://github.com/llvm/llvm-project/commit/1119a0805009501691538a28aeb9bb18b3ff911f
  Author: Yeoul Na <yeoul_na at apple.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaBoundsSafety.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp

  Log Message:
  -----------
  [BoundsSafety][NFC] Remove the unused parameter 'Decls' from 'Sema::C… (#102076)

…heckCountedByAttrOnField'

llvm::SmallVectorImpl<TypeCoupledDeclRefInfo> &Decls is a vector of
declarations referred to by the argument of 'counted_by' attributes and
fields. 'BuildCountAttributedArrayOrPointerType' had been made
self-contained to produce the 'Decls' within itself to allow
'TreeTransform' to invoke the function without having to call
'Sema::CheckCountedByAttrOnField' again. Thus, 'Decls' produced by
`Sema::CheckCountedByAttrOnField` is never used.


  Commit: c826c074813a668de87d4aa8bfc95f9f8adf1e5f
      https://github.com/llvm/llvm-project/commit/c826c074813a668de87d4aa8bfc95f9f8adf1e5f
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/test/Modules/crash-vfs-include-pch.m

  Log Message:
  -----------
  [Test] Update clang/test/Modules/crash-vfs-include-pch.m (#102080)

Avoid the driver error for mis-using a clang cc1 flag as driver flag in
the crash test.


  Commit: 3e3ea54aada44212b4e273f2fc879a419dea053f
      https://github.com/llvm/llvm-project/commit/3e3ea54aada44212b4e273f2fc879a419dea053f
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/test/Analysis/UniformityAnalysis/AMDGPU/always_uniform.ll

  Log Message:
  -----------
  AMDGPU: Add some leaf intrinsics to isAlwaysUniform (#101925)

These would always be uniform anyway, but it shouldn't hurt to
mark them as always uniform. This will help use TTI::isAlwaysUniform
in place of proper uniformity analysis in trivial situations.


  Commit: 0395bf7636bf0d07f662618107724c28b66c674c
      https://github.com/llvm/llvm-project/commit/0395bf7636bf0d07f662618107724c28b66c674c
  Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/darwin/x86_64/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/newhdrgen/yaml/math.yaml
    M libc/spec/llvm_libc_ext.td
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    A libc/src/math/fdiv.h
    A libc/src/math/fdivf128.h
    A libc/src/math/fdivl.h
    A libc/src/math/ffma.h
    A libc/src/math/ffmaf128.h
    A libc/src/math/ffmal.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/fdiv.cpp
    A libc/src/math/generic/fdivf128.cpp
    A libc/src/math/generic/fdivl.cpp
    A libc/src/math/generic/ffma.cpp
    A libc/src/math/generic/ffmaf128.cpp
    A libc/src/math/generic/ffmal.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/fdiv_test.cpp
    A libc/test/src/math/fdivl_test.cpp
    A libc/test/src/math/ffma_test.cpp
    A libc/test/src/math/ffmal_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/math/smoke/DivTest.h
    A libc/test/src/math/smoke/fdiv_test.cpp
    A libc/test/src/math/smoke/fdivf128_test.cpp
    A libc/test/src/math/smoke/fdivl_test.cpp
    A libc/test/src/math/smoke/ffma_test.cpp
    A libc/test/src/math/smoke/ffmaf128_test.cpp
    A libc/test/src/math/smoke/ffmal_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp

  Log Message:
  -----------
  [libc][math][c23] Add ffma{,l,f128} and fdiv{,l,f128} C23 math functions #101089 (#101253)

- added all variations of ffma and fdiv 
- will add all new headers into yaml  for next patch 
- only fsub is left then all basic operations for float is complete

---------

Co-authored-by: OverMighty <its.overmighty at gmail.com>


  Commit: 31a999c1ad2e24e16b85915b2a47b91627644a9e
      https://github.com/llvm/llvm-project/commit/31a999c1ad2e24e16b85915b2a47b91627644a9e
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/docs/OpenMPSupport.rst

  Log Message:
  -----------
  [Clang][Doc] Fix an error in `OpenMPSupport.rst`


  Commit: 85bf0a6b44b9fd375027f5643fa6698001badcf4
      https://github.com/llvm/llvm-project/commit/85bf0a6b44b9fd375027f5643fa6698001badcf4
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

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

  Log Message:
  -----------
  [CodeGen] Fix PreISelLowering not reporting changes (#102184)

expandVectorPredication may change code, even if the intrinsic itself
remains in the code. Report changes whenever such an intrinsic is
encountered, because code could have been changed.

Another follow-up fix for #101652 to fix expensive-checks-only failure.


  Commit: f55abd545d9ec26e14c7a45727c16fc97b46db3c
      https://github.com/llvm/llvm-project/commit/f55abd545d9ec26e14c7a45727c16fc97b46db3c
  Author: gonzalobg <65027571+gonzalobg at users.noreply.github.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTX.h
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXUtilities.h
    M llvm/test/CodeGen/NVPTX/load-store-sm-70.ll
    M llvm/test/CodeGen/NVPTX/load-store.ll

  Log Message:
  -----------
  [NVPTX] Add Volta Atomic SequentiallyConsistent Load and Store Operations (#98551)

This PR Builds on #98022 .
It adds support for Volta's SequentiallyConsistent Load and Store
operations at system scope.


  Commit: 642259a2f21feffb0dc048162b4ce40b1e5a303d
      https://github.com/llvm/llvm-project/commit/642259a2f21feffb0dc048162b4ce40b1e5a303d
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.nonmembers/comparisons.pass.cpp

  Log Message:
  -----------
  [libc++][chrono][test] Fixes bogus loops. (#101890)

Changes the loop range to match similar tests and avoids zero
iterations. The original motivation to reduce the number of iterations
was to allow the test to be executed during constant evaluation.

Fixes: https://github.com/llvm/llvm-project/issues/100502


  Commit: 66f4e3f8dbab78d784f776914ac30db09e431b49
      https://github.com/llvm/llvm-project/commit/66f4e3f8dbab78d784f776914ac30db09e431b49
  Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement missing PHINode functions (#101734)

replaceIncomingBlockWith and removeIncomingValueIf are both
straightforward and done.

I'll defer copyIncomingBlocks until a couple of other changes that also
handle blocks go in.


  Commit: 4dee6411e0d993fd17099bd7564276474412383e
      https://github.com/llvm/llvm-project/commit/4dee6411e0d993fd17099bd7564276474412383e
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/include/fstream
    M libcxx/include/ios
    M libcxx/include/sstream
    M libcxx/include/string
    M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/default.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/move.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/path.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/pointer.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/string.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/default.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/move.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/path.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/pointer.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/string.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/default.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/move.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/path.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/pointer.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/string.pass.cpp
    M libcxx/test/std/input.output/iostreams.base/ios/basic.ios.members/copyfmt.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/default.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/mode.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/move.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string-alloc.mode.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.mode.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.move.mode.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/default.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/mode.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/move.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string-alloc.mode.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.mode.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.move.mode.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/default.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/mode.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/move.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string-alloc.mode.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.mode.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.move.mode.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.pass.cpp
    M libcxx/test/std/strings/basic.string/string.cons/move_alloc.pass.cpp
    M libcxx/test/std/strings/basic.string/string.cons/substr_rvalue.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_swap/swap.pass.cpp
    M libcxx/test/support/operator_hijacker.h

  Log Message:
  -----------
  [libc++] Implements LWG3130. (#101889)

This adds addressof at the required places in [input.output]. Some of
the new tests failed since string used operator& internally. These have
been fixed too.

Note the new fstream tests perform output to a basic_string instead of a
double. Using a double requires num_get specialization

num_get<CharT, istreambuf_iterator<CharT,
char_traits_operator_hijacker<CharT>>

This facet is not present in the locale database so the conversion would
fail due to a missing locale facet. Using basic_string avoids using the
locale.

As a drive-by fixes several bugs in the ofstream.cons tests. These
tested ifstream instead of ofstream with an open mode.

Implements:
- LWG3130 [input.output] needs many addressof

Closes #100246.


  Commit: 07b29fc808ca0842d02cf4e973381b974bfdf19f
      https://github.com/llvm/llvm-project/commit/07b29fc808ca0842d02cf4e973381b974bfdf19f
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/IR/ConstantRange.cpp
    M llvm/test/Transforms/CorrelatedValuePropagation/shl.ll
    M llvm/unittests/IR/ConstantRangeTest.cpp

  Log Message:
  -----------
  [ConstantRange] Improve `shlWithNoWrap` (#101800)

Closes https://github.com/dtcxzyw/llvm-tools/issues/22.


  Commit: 5e6d5c01e0ec3a2bc104cba78e9fe8e58360fb6a
      https://github.com/llvm/llvm-project/commit/5e6d5c01e0ec3a2bc104cba78e9fe8e58360fb6a
  Author: Natan-GabrielTiutiuIntel <101411449+Natan-GabrielTiutiuIntel at users.noreply.github.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Pass/PassRegistry.h
    M mlir/include/mlir/Tools/mlir-opt/MlirOptMain.h
    M mlir/lib/Pass/PassRegistry.cpp
    M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp

  Log Message:
  -----------
  [mlir] Add --list-passes option to mlir-opt (#100420)

Currently, the only way to see the passes that were registered is by
calling “mlir-opt --help”. However, for compilers with 500+ passes, the
help message becomes too long and sometimes hard to understand. In this
PR I add a new "--list-passes" option to mlir-opt, which can be used for
printing only the registered passes, a feature that would be extremely
useful.


  Commit: 3983bf6040d4a9f477290b1f43fdd1938a4261fe
      https://github.com/llvm/llvm-project/commit/3983bf6040d4a9f477290b1f43fdd1938a4261fe
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M libc/utils/gpu/loader/Loader.h

  Log Message:
  -----------
  [libc] Fix GPU argument vector writing `nullptr` to string

Summary:
The intention behind this code was to null terminate the `envp` string,
but it accidentally went into the string data.


  Commit: e77ac42bccb8c26bbf4b74d8e92eb09e7fa1b218
      https://github.com/llvm/llvm-project/commit/e77ac42bccb8c26bbf4b74d8e92eb09e7fa1b218
  Author: Kevin Frei <freik at meta.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M lldb/include/lldb/Host/Config.h.cmake
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
    M lldb/source/API/SBDebugger.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
    M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
    A lldb/test/API/debuginfod/Normal/Makefile
    A lldb/test/API/debuginfod/Normal/TestDebuginfod.py
    A lldb/test/API/debuginfod/Normal/main.c
    A lldb/test/API/debuginfod/SplitDWARF/Makefile
    A lldb/test/API/debuginfod/SplitDWARF/TestDebuginfodDWP.py
    A lldb/test/API/debuginfod/SplitDWARF/main.c

  Log Message:
  -----------
  [lldb][debuginfod] Fix the DebugInfoD PR that caused issues when working with stripped binaries (#99362)

@walter-erquinigo found the the [PR with testing and a fix for
DebugInfoD](https://github.com/llvm/llvm-project/pull/98344) caused an
issue when working with stripped binaries.

The issue is that when you're working with split-dwarf, there are *3*
possible files: The stripped binary the user is debugging, the
"only-keep-debug" *or* unstripped binary, plus the `.dwp` file. The
debuginfod plugin should provide the unstripped/OKD binary. However, if
the debuginfod plugin fails, the default symbol locator plugin will just
return the stripped binary, which doesn't help. So, to address that, the
SymbolVendorELF code checks to see if the SymbolLocator's
ExecutableObjectFile request returned the same file, and bails if that's
the case. You can see the specific diff as the second commit in the PR.

I'm investigating adding a test: I can't quite get a simple repro, and
I'm unwilling to make any additional changes to Makefile.rules to this
diff, for Pavlovian reasons.


  Commit: f133dd92f82238b978d64545302ea753a836f8fb
      https://github.com/llvm/llvm-project/commit/f133dd92f82238b978d64545302ea753a836f8fb
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M libc/src/math/generic/pow.cpp
    M libc/test/src/math/pow_test.cpp

  Log Message:
  -----------
  [libc][math] Improve the error analysis and accuracy for pow function. (#102098)


  Commit: a3ccaed3b9f6a1fe9b7f2ef019259f88072639b2
      https://github.com/llvm/llvm-project/commit/a3ccaed3b9f6a1fe9b7f2ef019259f88072639b2
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    A flang/include/flang/Runtime/CUDA/descriptor.h
    M flang/lib/Optimizer/Transforms/CufOpConversion.cpp
    M flang/runtime/CUDA/CMakeLists.txt
    A flang/runtime/CUDA/descriptor.cpp
    M flang/test/Fir/CUDA/cuda-allocate.fir
    M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp

  Log Message:
  -----------
  [flang][cuda] Allocate local descriptor in managed memory (#102060)

This patch adds entry point in the runtime to be able to allocate
descriptors in managed memory. These entry points currently only call
`CUFAllocManaged` and `CUFFreeManaged` but could be more complicated in
the future.

`cuf.alloc` and `cuf.free` related to local descriptors are converted
into runtime calls.


  Commit: 36f0d64818b39973ef74e1ce49e2f234340ccd1a
      https://github.com/llvm/llvm-project/commit/36f0d64818b39973ef74e1ce49e2f234340ccd1a
  Author: vporpo <vporpodas at google.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/SandboxIR/Tracker.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement AllocaInst (#102027)

This patch implements sandboxir::AllocaInst which mirrors
llvm::AllocaInst.


  Commit: ec1981f4ed86a6f954a5ea0bbfaba1c6cd19d807
      https://github.com/llvm/llvm-project/commit/ec1981f4ed86a6f954a5ea0bbfaba1c6cd19d807
  Author: Andrzej Warzynski <andrzej.warzynski at arm.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M mlir/docs/Dialects/Vector.md

  Log Message:
  -----------
  [mlir][vector] Fix link in docs (nfc)


  Commit: a1af1de4380f9c4fa3b5229e9f4a41af93955c38
      https://github.com/llvm/llvm-project/commit/a1af1de4380f9c4fa3b5229e9f4a41af93955c38
  Author: Michael Liao <michael.hliao at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/M68k/pipeline.ll

  Log Message:
  -----------
  [M68k] Fix compilation pipeline check

- After ExpandVP pass is merged into PreISelIntrinsicLowering


  Commit: 2e9f15e1dfd8bc90d0cd91157c8b3b036cee981e
      https://github.com/llvm/llvm-project/commit/2e9f15e1dfd8bc90d0cd91157c8b3b036cee981e
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M libc/utils/gpu/loader/Loader.h

  Log Message:
  -----------
  [libc] Fix index into argument vector


  Commit: a0afcbfb5dd1b65459324aed0a06aed36affa67a
      https://github.com/llvm/llvm-project/commit/a0afcbfb5dd1b65459324aed0a06aed36affa67a
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch-init.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-sgprs-fixed-abi.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll

  Log Message:
  -----------
  [AMDGPU] Enable `AAAddressSpace` in `AMDGPUAttributor` (#101593)


  Commit: 4b6e3e38c46f8fedb92a30b29cc9654450244e2d
      https://github.com/llvm/llvm-project/commit/4b6e3e38c46f8fedb92a30b29cc9654450244e2d
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp

  Log Message:
  -----------
  [Attributor] Improve debug string of `AAUnderlyingObjects` (#101861)


  Commit: 2601d6f189cf1d4e4e77a7cba83e5d32c87bf079
      https://github.com/llvm/llvm-project/commit/2601d6f189cf1d4e4e77a7cba83e5d32c87bf079
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/extractelement-phi-in-landingpad.ll

  Log Message:
  -----------
  [SLP]Fix PR102187: do not insert extractelement before landingpad instruction.

Landingpad instruction must be the very first instruction after the phi
nodes, so need to inser extractelement/shuffles after this instruction.

Fixes https://github.com/llvm/llvm-project/issues/102187


  Commit: 0371dff99529e93b8650281801e89bc015dc2703
      https://github.com/llvm/llvm-project/commit/0371dff99529e93b8650281801e89bc015dc2703
  Author: Shoaib Meenai <smeenai at fb.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/test/CodeGenCXX/OmitRTTIComponentABI/simple-vtable-definition.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/child-inheritted-from-parent-in-comdat.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/cross-translation-unit-1.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/cross-translation-unit-2.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/diamond-inheritance.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/diamond-virtual-inheritance.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/inheritted-virtual-function.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/inline-virtual-function.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/multiple-inheritance.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/no-alias-when-dso-local.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/override-pure-virtual-method.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/overriden-virtual-function.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/relative-vtables-flag.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/relative-vtables-hwasan.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/simple-vtable-definition.cpp

  Log Message:
  -----------
  [CodeGen] Make non-COMDAT relative vtable internal instead of private (#102056)

When using the relative vtable ABI, if a vtable is not dso_local, it's
given private linkage (if not COMDAT) or hidden visibility (if COMDAT)
to make it dso_local (to place it in rodata instead of data.rel.ro), and
an alias generated with the original linkage and visibility. This alias
could later be removed from the symbol table, e.g. if using a version
script, at which point we lose all symbol information about the vtable.
Use internal linkage instead of private linkage to avoid this.

While I'm here, clarify the comment about why COMDAT vtables can't use
internal (or private) linkage, and associate it with the else block
where hidden visibility is applied instead of internal linkage.


  Commit: 94d53984008bc83083fdc5b2edcd1ea4b8a9b8be
      https://github.com/llvm/llvm-project/commit/94d53984008bc83083fdc5b2edcd1ea4b8a9b8be
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/COFF.h
    M llvm/include/llvm/Object/COFF.h
    M llvm/lib/Object/COFFObjectFile.cpp
    A llvm/test/tools/llvm-readobj/COFF/arm64x-reloc-invalid.yaml
    A llvm/test/tools/llvm-readobj/COFF/arm64x-reloc.yaml
    M llvm/test/tools/yaml2obj/COFF/load-config.yaml
    M llvm/tools/llvm-readobj/COFFDumper.cpp

  Log Message:
  -----------
  [Object][COFF][llvm-readobj] Add support for ARM64X dynamic relocations. (#97229)


  Commit: af80d3a248101d6f5d9d5e229c7899136b8ce0b8
      https://github.com/llvm/llvm-project/commit/af80d3a248101d6f5d9d5e229c7899136b8ce0b8
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/landing_pad.ll

  Log Message:
  -----------
  [SLP]Better sorting of phi instructions by comparing type sizes (#102188)

Currently SLP vectorizer compares phi instructions by the type id of the
compared instructions, which may failed in case of different integer
types,
with the different sizes. Patch adds comparison by type sizes to fix
this.


  Commit: f9060f1b7ee45ee770d3a7acdeed9f016dcc9931
      https://github.com/llvm/llvm-project/commit/f9060f1b7ee45ee770d3a7acdeed9f016dcc9931
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/Attributor/heap_to_stack_gpu.ll
    M llvm/test/Transforms/Attributor/value-simplify-gpu.ll
    M llvm/test/Transforms/OpenMP/barrier_removal.ll
    M llvm/test/Transforms/PhaseOrdering/varargs.ll

  Log Message:
  -----------
  AMDGPU: Fix using wrong alloca address space in test (#102108)


  Commit: 735edd98d732a492d9c55f137ee50d20e32444d1
      https://github.com/llvm/llvm-project/commit/735edd98d732a492d9c55f137ee50d20e32444d1
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Object/COFFObjectFile.cpp

  Log Message:
  -----------
  [Object][COFF] Use uintptr_t for getRvaPtr call in Arm64XRelocRef::validate.

Fixes #97229.


  Commit: 0182334e7b9fc472b3f7c9e059c3743301d487d5
      https://github.com/llvm/llvm-project/commit/0182334e7b9fc472b3f7c9e059c3743301d487d5
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    M llvm/test/MC/ARM/Windows/branch-reloc-offset.s

  Log Message:
  -----------
  [ARM] [Windows] Error out on branch relocations that require a symbol offset (#101906)

This adds the same kind of verification for ARM, as was added for
AArch64 in 1e7f592a890aad860605cf5220530b3744e107ba. This allows
catching issues at assembly time, instead of having the linker
misinterpret the relocations (as the linker ignores the symbol offset).
This verifies that the issue fixed by
8dd065d5bc81b0c8ab57f365bb169a5d92928f25 really is fixed, and points out
explicitly if the same issue appears elsewhere.

Note that the parameter Value in the adjustFixupValue function is offset
by 4 from the value that is stored as immediate in the instructions, so
we compare with 4, when we want to make sure that the written immediate
will be zero.


  Commit: 278c0ad99ef59f227fee3675cdac5bb581e1d6bf
      https://github.com/llvm/llvm-project/commit/278c0ad99ef59f227fee3675cdac5bb581e1d6bf
  Author: Rose Silicon <gfunni234 at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp

  Log Message:
  -----------
  [InstCombine] (NFC) Remove improper TODO for a - UMIN (#101076)

It is already handled in a different method, especially as a - UMIN(a,
b) cannot be handled by a select statement, unless it means something
like: "(c < b) ? b - ((b > c) ? c : b) : 0;" but LLVM handles that case
as well.


  Commit: f9f0ae1bc47fbe76141cce63a6e92e3f3546ec9b
      https://github.com/llvm/llvm-project/commit/f9f0ae1bc47fbe76141cce63a6e92e3f3546ec9b
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/unittests/Symbol/TestClangASTImporter.cpp

  Log Message:
  -----------
  [lldb][TypeSystemClang] Pass ClangASTMetadata around by value (#102161)

This patch changes the return type of `GetMetadata` from a
`ClangASTMetadata*` to a `std::optional<ClangASTMetadata>`. Except for
one call-site (`SetDeclIsForcefullyCompleted`), we never actually make
use of the mutability of the returned metadata. And we never make use of
the pointer-identity. By passing `ClangASTMetadata` by-value (the type
is fairly small, size of 2 64-bit pointers) we'll avoid some questions
surrounding the lifetimes/ownership/mutability of this metadata.

For consistency, we also change the parameter to `SetMetadata` from
`ClangASTMetadata&` to `ClangASTMetadata` (which is an NFC since we copy
the data anyway).

This came up during some changes we plan to make where we [create
redeclaration chains for decls in the LLDB
AST](https://github.com/llvm/llvm-project/pull/95100). We want to avoid
having to dig out the canonical decl of the declaration chain for
retrieving/setting the metadata. It should just be copied across all
decls in the chain. This is easier to guarantee when everything is done
by-value.


  Commit: 10d7805c4f8f2226bee23c4cc021cebc2c56727e
      https://github.com/llvm/llvm-project/commit/10d7805c4f8f2226bee23c4cc021cebc2c56727e
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/include/flang/Runtime/CUDA/descriptor.h
    M flang/lib/Optimizer/Transforms/CufOpConversion.cpp
    M flang/runtime/CUDA/allocator.cpp
    M flang/runtime/CUDA/descriptor.cpp
    M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp

  Log Message:
  -----------
  [flang][cuda][NFC] Disambiguate namespace with cuf dialect (#102194)

Rename namespace `Fortran::runtime::cuf` to `Fortran::runtime::cuda` to
avoid embiguity with the namespace `::cuf` that is defined in the CUF
dialect.


  Commit: 388b63243c6846d3bb2e9f4d8cec228756ad1d1b
      https://github.com/llvm/llvm-project/commit/388b63243c6846d3bb2e9f4d8cec228756ad1d1b
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/include/flang/Runtime/allocator-registry.h
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/runtime/CUDA/allocator.cpp

  Log Message:
  -----------
  [flang][cuda] Defined allocator for unified data (#102189)

CUDA unified variable where set to use the same allocator than managed
variable. This patch adds a specific allocator for the unified
variables. Currently it will call the managed allocator underneath but
we want to have the flexibility to change that in the future.


  Commit: 28fa83f8d4c0bdd11ba9687a7ffbf50c774a279f
      https://github.com/llvm/llvm-project/commit/28fa83f8d4c0bdd11ba9687a7ffbf50c774a279f
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/test/Dialect/Linalg/vectorize-tensor-extract.mlir

  Log Message:
  -----------
  Revert "[mlir][linalg] Relax tensor.extract vectorization" (#102232)

Reverts llvm/llvm-project#99299 because it breaks the lowering. To
repro: `mlir-opt -transform-interpreter ~/repro.mlir`

```mlir
#map = affine_map<(d0, d1) -> (d0)>
#map1 = affine_map<(d0, d1) -> (d1)>
#map2 = affine_map<(d0, d1) -> (d0, d1)>
#map3 = affine_map<(d0, d1) -> (d0 + d1)>
module {
  func.func @foo(%arg0: index, %arg1: tensor<2xf32>, %arg2: tensor<4xf32>, %arg3: tensor<1xf32>) -> tensor<4x1xf32> {
    %c0 = arith.constant 0 : index
    %cst = arith.constant 1.000000e+00 : f32
    %cst_0 = arith.constant 0.000000e+00 : f32
    %0 = tensor.empty() : tensor<4x1xf32>
    %1 = linalg.generic {indexing_maps = [#map, #map1, #map2], iterator_types = ["parallel", "parallel"]} ins(%arg2, %arg3 : tensor<4xf32>, tensor<1xf32>) outs(%0 : tensor<4x1xf32>) {
    ^bb0(%in: f32, %in_1: f32, %out: f32):
      %2 = linalg.index 0 : index
      %3 = linalg.index 1 : index
      %4 = affine.apply #map3(%3, %arg0)
      %extracted = tensor.extract %arg1[%c0] : tensor<2xf32>
      %5 = arith.cmpi eq, %2, %c0 : index
      %6 = arith.cmpi ult, %2, %c0 : index
      %7 = arith.select %5, %cst, %in : f32
      %8 = arith.select %6, %cst_0, %7 : f32
      %9 = arith.cmpi eq, %4, %c0 : index
      %10 = arith.cmpi ult, %4, %c0 : index
      %11 = arith.select %9, %cst, %in_1 : f32
      %12 = arith.select %10, %cst_0, %11 : f32
      %13 = arith.mulf %8, %12 : f32
      %14 = arith.mulf %13, %extracted : f32
      %15 = arith.cmpi eq, %2, %4 : index
      %16 = arith.select %15, %cst, %cst_0 : f32
      %17 = arith.subf %16, %14 : f32
      linalg.yield %17 : f32
    } -> tensor<4x1xf32>
    return %1 : tensor<4x1xf32>
  }
}

module attributes {transform.with_named_sequence} {
  transform.named_sequence @__transform_main(%arg1: !transform.any_op {transform.readonly}) {
    %0 = transform.structured.match ops{["linalg.generic"]} in %arg1 : (!transform.any_op) -> !transform.any_op
    transform.structured.vectorize %0 : !transform.any_op
    transform.yield
  }
}
```


  Commit: 4c97c52fe05bb2fda4584cea4738d59db31329dc
      https://github.com/llvm/llvm-project/commit/4c97c52fe05bb2fda4584cea4738d59db31329dc
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    A llvm/test/TableGen/SubtargetFeatureUniqueNames.td
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  [TableGen] Emit better error message for duplicate Subtarget features. (#102090)

- Keep track of last definition of a feature in a `DenseMap` and use 
  it to report a better error message when a duplicate feature is found.
- Use StringMap instead of a std::map in `EmitStageAndOperandCycleData`
- Add a unit test to check if duplicate names are flagged.


  Commit: 6b47772a4bb5d11f881afcae5f4ef0fd597cd8d8
      https://github.com/llvm/llvm-project/commit/6b47772a4bb5d11f881afcae5f4ef0fd597cd8d8
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ProfileData/PGOCtxProfReader.h
    M llvm/lib/ProfileData/PGOCtxProfReader.cpp
    M llvm/unittests/ProfileData/PGOCtxProfReaderWriterTest.cpp

  Log Message:
  -----------
  [nfc][ctx_prof] Rename `PGOContextualProfile` to `PGOCtxProfContext` (#102209)


  Commit: e7efa323be30dcb604847159817f6c67c657f1a5
      https://github.com/llvm/llvm-project/commit/e7efa323be30dcb604847159817f6c67c657f1a5
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M lld/test/wasm/lto/stub-library.s
    M lld/wasm/Driver.cpp
    M lld/wasm/InputFiles.cpp

  Log Message:
  -----------
  [lld][WebAssembly] Fix stub library deps causing LTO archive members to be required post-LTO (#101894)

Fixes: https://github.com/emscripten-core/emscripten/issues/16836


  Commit: ce2a3d9042c95630f12b790bf201c4daf8941afb
      https://github.com/llvm/llvm-project/commit/ce2a3d9042c95630f12b790bf201c4daf8941afb
  Author: Kelvin Li <kkwli at users.noreply.github.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M flang/lib/Optimizer/CodeGen/FIROpPatterns.cpp
    M flang/test/Fir/box-typecode.fir
    M flang/test/Fir/convert-to-llvm.fir
    M flang/test/Fir/polymorphic.fir
    M flang/test/Fir/tbaa.fir
    M flang/test/Lower/allocatable-polymorphic.f90

  Log Message:
  -----------
  [flang] Match the type of the element size in the box in getValueFromBox (#100512)

Currently, `%17 = fir.box_elesize %16 :
(!fir.class<!fir.ptr<!fir.type<_QFTt{a:i32,b:i32}>>>) -> i32`
is translated to
```
  %4 = getelementptr { ptr, i64, i32, i8, i8, i8, i8, ptr, [1 x i64] }, ptr %1, i32 0, i32 1
  %5 = load i32, ptr %4, align 4
```
The type of the element size is `i64`. The load essentially truncates
the value and yields incorrect result in the big endian environment. The
problem occurs in the `storage_size` intrinsic on a polymorphic
variable.


  Commit: 0d471b3f64d3116bd57c79d872f7384fff80daa5
      https://github.com/llvm/llvm-project/commit/0d471b3f64d3116bd57c79d872f7384fff80daa5
  Author: weiguozhi <57237827+weiguozhi at users.noreply.github.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetFrameLowering.h
    M llvm/lib/CodeGen/CFIInstrInserter.cpp
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/Target/X86/X86FrameLowering.cpp
    M llvm/lib/Target/X86/X86FrameLowering.h
    M llvm/test/CodeGen/X86/apx/push2-pop2-vector-register.ll
    M llvm/test/CodeGen/X86/apx/push2-pop2.ll
    M llvm/test/CodeGen/X86/apx/pushp-popp.ll
    M llvm/test/CodeGen/X86/avx512-intel-ocl.ll
    A llvm/test/CodeGen/X86/clobber_base_ptr.ll
    A llvm/test/CodeGen/X86/clobber_frame_ptr.ll
    A llvm/test/CodeGen/X86/clobber_frame_ptr_x32.ll
    M llvm/test/CodeGen/X86/i386-baseptr.ll
    M llvm/test/CodeGen/X86/inline-asm-function-call-pic.ll
    M llvm/test/CodeGen/X86/x86-32-intrcc.ll
    M llvm/test/CodeGen/X86/x86-64-baseptr.ll
    M llvm/test/CodeGen/X86/x86-64-flags-intrinsics.ll

  Log Message:
  -----------
  Spill/restore FP/BP around instructions in which they are clobbered (#81048)

This patch fixes https://github.com/llvm/llvm-project/issues/17204.

If a base pointer is used in a function, and it is clobbered by an
instruction (typically an inline asm), current register allocator can't
handle this situation, so BP becomes garbage after those instructions.
It can also occur to FP in theory.

We can spill and reload FP/BP registers around those instructions. But
normal spill/reload instructions also use FP/BP, so we can't spill them
into normal spill slots, instead we spill them into the top of stack by
using SP register.


  Commit: e76028a11fd3195a3170c1b0cb308e62e73a05a3
      https://github.com/llvm/llvm-project/commit/e76028a11fd3195a3170c1b0cb308e62e73a05a3
  Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/test/MC/AMDGPU/gfx10_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx10_err_pos.s
    M llvm/test/MC/AMDGPU/gfx12_asm_smem.s

  Log Message:
  -----------
  [AMDGPU] Add parseStringOrIntWithPrefix helper in asm parser (#102213)

When we have a modifier with a value (like dst_sel:DWORD for example) we
only accept symbolic values. SP3 allows to use numberic constants as
well. Adding a helper function to allow both.

Besides the compatibility it is easier to use.


  Commit: f83a89c1b1ce78cfac1de1c72a03b234d2a844b6
      https://github.com/llvm/llvm-project/commit/f83a89c1b1ce78cfac1de1c72a03b234d2a844b6
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M bolt/lib/Core/BinaryFunction.cpp

  Log Message:
  -----------
  [BOLT] Turn non-empty CFI StateStack assert into a warning (#102216)

clang-15 can produce binaries with mismatched RememberState/RestoreState
CFIs. This is benign for unwinding, so replace an assert with a warning.


  Commit: 8dfa651a6325760ecd21618c762a1dad9ec79333
      https://github.com/llvm/llvm-project/commit/8dfa651a6325760ecd21618c762a1dad9ec79333
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/TreeTransform.h
    M clang/test/SemaTemplate/address_space-dependent.cpp

  Log Message:
  -----------
  [Clang] Fix crash when transforming a `DependentAddressSpaceType` (#102206)

We were forgetting to pass the `TypeLocBuilder` along to
`TransformType`, causing us to complain if we then tried to build a
`DependentAddressSpaceTypeLoc` because the inner `TypeLoc` was 
missing from the TLB.

Fixes #101685.


  Commit: 874890c68241f500501c42730c2829a5d51f2100
      https://github.com/llvm/llvm-project/commit/874890c68241f500501c42730c2829a5d51f2100
  Author: Snehasish Kumar <snehasishk at google.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/lib/Analysis/TargetLibraryInfo.cpp
    M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp

  Log Message:
  -----------
  Add __size_returning_new variant detection to TLI. (#101564)

Add support to detect __size_returning_new variants defined inproposal
P0901R5 to extend to operator new, see
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p0901r5.html for
details.

This PR matches the declarations exported by tcmalloc in
https://github.com/google/tcmalloc/blob/f2516691d01051defc558679f37720bba88d9862/tcmalloc/malloc_extension.h#L707-L711


  Commit: 128ef9eb533afd00da2d3d2cfeab16de6abf2640
      https://github.com/llvm/llvm-project/commit/128ef9eb533afd00da2d3d2cfeab16de6abf2640
  Author: jeffreytan81 <jeffreytan at meta.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M lldb/include/lldb/Target/ThreadPlanSingleThreadTimeout.h
    M lldb/include/lldb/Target/TimeoutResumeAll.h
    M lldb/source/Target/ThreadPlanSingleThreadTimeout.cpp

  Log Message:
  -----------
  Fix ASAN failure in TestSingleThreadStepTimeout.py (#102208)

This PR fixes the ASAN failure in
https://github.com/llvm/llvm-project/pull/90930.

The original PR made the assumption that parent
`ThreadPlanStepOverRange`'s lifetime will always be longer than
`ThreadPlanSingleThreadTimeout` leaf plan so it passes the
`m_timeout_info` as reference to it.
>From the ASAN failure, it seems that this assumption may not be true
(likely the thread stack is holding a strong reference to the leaf
plan).

This PR fixes this lifetime issue by using shared pointer instead of
passing by reference.

---------

Co-authored-by: jeffreytan81 <jeffreytan at fb.com>


  Commit: 03958680b23dafd961ea0606c77d8e6bc8d80781
      https://github.com/llvm/llvm-project/commit/03958680b23dafd961ea0606c77d8e6bc8d80781
  Author: yonghong-song <yhs at fb.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Object/ELFObjectFile.cpp
    M llvm/test/CodeGen/BPF/objdump_atomics.ll
    M llvm/test/CodeGen/BPF/objdump_cond_op.ll
    M llvm/test/CodeGen/BPF/objdump_imm_hex.ll
    M llvm/test/CodeGen/BPF/objdump_static_var.ll
    M llvm/test/MC/BPF/insn-unit.s
    M llvm/test/MC/BPF/load-store-32.s

  Log Message:
  -----------
  [BPF] Make llvm-objdump disasm default cpu v4 (#102166)

Currently, with the following example,
  $ cat t.c
  void foo(int a, _Atomic int *b)
  {
   *b &= a;
  }
  $ clang --target=bpf -O2 -c -mcpu=v3 t.c
  $ llvm-objdump -d t.o
  t.o:    file format elf64-bpf

  Disassembly of section .text:

  0000000000000000 <foo>:
       0:       c3 12 00 00 51 00 00 00 <unknown>
       1:       95 00 00 00 00 00 00 00 exit

Basically, the default cpu for llvm-objdump is v1 and it won't be able
to decode insn properly.

If we add --mcpu=v3 to llvm-objdump command line, we will have
  $ llvm-objdump -d --mcpu=v3 t.o

  t.o:    file format elf64-bpf

  Disassembly of section .text:

  0000000000000000 <foo>:
0: c3 12 00 00 51 00 00 00 w1 = atomic_fetch_and((u32 *)(r2 + 0x0), w1)
       1:       95 00 00 00 00 00 00 00 exit

The atomic_fetch_and insn can be decoded properly. Using latest cpu
version --mcpu=v4 can also decode properly like the above --mcpu=v3.

To avoid the above '<unknown>' decoding with common 'llvm-objdump -d
t.o', this patch marked the default cpu for llvm-objdump with the
current highest cpu number v4 in ELFObjectFileBase::tryGetCPUName(). The
cpu number in ELFObjectFileBase::tryGetCPUName() will be adjusted in the
future if cpu number is increased e.g. v5 etc. Such an approach also
aligns with gcc-bpf as discussed in [1].

Six bpf unit tests are affected with this change. I changed test output
for three unit tests and added --mcpu=v1 for the other three unit tests,
to demonstrate the default (cpu v4) behavior and explicit --mcpu=v1
behavior.

[1]
https://lore.kernel.org/bpf/6f32c0a1-9de2-4145-92ea-be025362182f@linux.dev/T/#m0f7e63c390bc8f5a5523e7f2f0537becd4205200

Co-authored-by: Yonghong Song <yonghong.song at linux.dev>


  Commit: 53d33d3ba5eedac8fccb9d36576cd667800a4a38
      https://github.com/llvm/llvm-project/commit/53d33d3ba5eedac8fccb9d36576cd667800a4a38
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    A llvm/test/CodeGen/AMDGPU/indirect-call-set-from-other-function.ll

  Log Message:
  -----------
  [Attributor] Fix an issue that an access is skipped by mistake (#101862)

When we check if an access can be skipped, there is a case that an
inter-procedural interference access exists after a dominant write.
Currently we
rely on `AAInterFnReachability` to tell if the access can be reachable.
If it is
not, we can safely skip the access. However, it is based on an
assumption that
the AA exists. It is possible that the AA doesn't exist. In this case,
we can't
safely assume the acess can be skipped because we have to assume the
access can
reach. This can happen when `AAInterFnReachability` is not in the
allowed AA
list when creating the attributor, such as AMDGPUAttributor.

Co-authored-by: Mark de Wever <koraq at xs4all.nl>


  Commit: 030ee841a9c9fbbd6e7c001e751737381da01f7b
      https://github.com/llvm/llvm-project/commit/030ee841a9c9fbbd6e7c001e751737381da01f7b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    R clang/test/Driver/linker-wrapper-passes.c
    M clang/test/lit.cfg.py
    M clang/test/lit.site.cfg.py.in

  Log Message:
  -----------
  Revert "[LinkerWrapper] Extend with usual pass options (#96704)" (#102226)

This reverts commit 90ccf2187332ff900d46a58a27cb0353577d37cb.

Fixes: https://github.com/llvm/llvm-project/issues/100212


  Commit: 5120c5161aaa96fff4a31bef584d4ada55cd789f
      https://github.com/llvm/llvm-project/commit/5120c5161aaa96fff4a31bef584d4ada55cd789f
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/include/lldb/Host/BUILD.gn

  Log Message:
  -----------
  [gn] port e77ac42bccb8


  Commit: 47bf996abe4fafa8192c78c472d68c6519349e90
      https://github.com/llvm/llvm-project/commit/47bf996abe4fafa8192c78c472d68c6519349e90
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang/test/BUILD.gn

  Log Message:
  -----------
  Revert "[gn build] Manually port 90ccf21"

This reverts commit 46307f1a84bf832f32938c8ad2dc0605441a5319.
90ccf21 was reverted in 030ee841a9c.


  Commit: 7a68449a82ab1c1ab005caa72c1d986ca5deca36
      https://github.com/llvm/llvm-project/commit/7a68449a82ab1c1ab005caa72c1d986ca5deca36
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
    A llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll

  Log Message:
  -----------
  Reapply "[Attributor][AMDGPU] Enable AAIndirectCallInfo for AMDAttributor (#100952)"

This reverts commit 874cd100a076f3b98aaae09f90ef224682501538.


  Commit: b64ec3c9faf0adce6e92c69fb48a7c7473c57200
      https://github.com/llvm/llvm-project/commit/b64ec3c9faf0adce6e92c69fb48a7c7473c57200
  Author: tcwzxx <tcwzxx at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/stores_mix_sizes.ll

  Log Message:
  -----------
  [SLP] The order of store chains needs to consider the size of the values. (#101810)

When store chains have the same value type ID and pointer type ID, they
may mix different sizes of values, such as i8 and i64. This can lead to
missed vectorization opportunities.


  Commit: 15895daa6862ad15bfac18b03811d066d4550713
      https://github.com/llvm/llvm-project/commit/15895daa6862ad15bfac18b03811d066d4550713
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/test/CodeGen/RISCV/selectcc-to-shiftand.ll

  Log Message:
  -----------
  [RISCV] Limit (and (sra x, c2), c1) -> (srli (srai x, c2-c3), c3) isel in some cases. (#102034)

If x is a shl by 32 and c1 is an simm12, we would prefer to use a
SRAIW+ANDI. This prevents selecting the slli to a separate slli
instruction.

Fixes regression from #101868


  Commit: 5518b46c128e344a6b67c72965f229ab3e625c34
      https://github.com/llvm/llvm-project/commit/5518b46c128e344a6b67c72965f229ab3e625c34
  Author: Ding Fei <fding at feysh.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/lib/AST/ASTImporter.cpp
    M clang/unittests/AST/ASTImporterTest.cpp

  Log Message:
  -----------
  [clang][ASTImporter] Remove trailing return testing on lambda proto (#101031)

Lambdas without trailing return could also have return type defined
inside its body.

This fixes crashes (infinite recursion) on lambda expr without
parameters (no parentheses).


  Commit: a58f20b5ca41dacd51c2157ac7eec99b93013087
      https://github.com/llvm/llvm-project/commit/a58f20b5ca41dacd51c2157ac7eec99b93013087
  Author: Ding Fei <fding at feysh.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/lib/AST/ASTImporter.cpp
    M clang/unittests/AST/ASTImporterTest.cpp

  Log Message:
  -----------
  [clang][ASTImporter] support import return with UnaryTransformType (#101517)

This fixes infinite recursion crash on return with UnaryTransformType,
whose underlying type is a SubstTemplateTypeParmType which is
associated with current imported function.


  Commit: ee870e593a82a6478ff1d8b3f1bd8a45aa1bf650
      https://github.com/llvm/llvm-project/commit/ee870e593a82a6478ff1d8b3f1bd8a45aa1bf650
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M compiler-rt/lib/hwasan/hwasan.h

  Log Message:
  -----------
  [compiler-rt] [HWASan] leave BufferedStackTrace uninit (#102247)

Otherwise we have to memset 2040 bytes (255 * 8) for each call to a
malloc-like function.

This caused noticable slowdown on AOSP.


  Commit: 81d8273978ace8b9a2b8cfd811b94e95f9560ac5
      https://github.com/llvm/llvm-project/commit/81d8273978ace8b9a2b8cfd811b94e95f9560ac5
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M libc/src/time/mktime.cpp
    M libc/test/src/time/mktime_test.cpp

  Log Message:
  -----------
  [libc] Fix overflow check for 32-bit mktime. (#101993)

The 32-bit time_t rolls over to a value with its high bit set at
2038-01-19 03:14:07. The overflow check for this in mktime() was
checking each individual component of the time: reject if year>2038, or
if month>1, or if day>19, etc. As a result it would reject valid times
before the overflow point, because a low-order component was out of
range even though a higher-order one makes the time as a whole safe. The
earliest failing value is 2145916808 == 2038-01-01 00:00:08, in which
only the seconds field 'overflows'.

Fixed so that if any component is _less_ than its threshold value, we
don't check the lower-order components.


  Commit: 03841e7ab847b279d65be707a8e0f2799fd69f50
      https://github.com/llvm/llvm-project/commit/03841e7ab847b279d65be707a8e0f2799fd69f50
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/api.td
    M libc/docs/dev/undefined_behavior.rst
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/pthread_spinlock_t.h
    M libc/newhdrgen/yaml/pthread.yaml
    M libc/spec/posix.td
    M libc/src/__support/threads/spin_lock.h
    M libc/src/pthread/CMakeLists.txt
    A libc/src/pthread/pthread_spin_destroy.cpp
    A libc/src/pthread/pthread_spin_destroy.h
    A libc/src/pthread/pthread_spin_init.cpp
    A libc/src/pthread/pthread_spin_init.h
    A libc/src/pthread/pthread_spin_lock.cpp
    A libc/src/pthread/pthread_spin_lock.h
    A libc/src/pthread/pthread_spin_trylock.cpp
    A libc/src/pthread/pthread_spin_trylock.h
    A libc/src/pthread/pthread_spin_unlock.cpp
    A libc/src/pthread/pthread_spin_unlock.h
    M libc/test/integration/src/pthread/CMakeLists.txt
    M libc/test/integration/src/pthread/pthread_rwlock_test.cpp
    A libc/test/integration/src/pthread/pthread_spinlock_test.cpp

  Log Message:
  -----------
  [libc] add spin lock family functions (#100509)

This PR:
- add entrypoints for `pthread_spin_*`
- additionally, the fixes a typo that has been disabling lock related
tests


  Commit: e546430959dfe2bc02685eb1d3601bd3f2e5321c
      https://github.com/llvm/llvm-project/commit/e546430959dfe2bc02685eb1d3601bd3f2e5321c
  Author: Julius Alexandre <juliuswoosebert at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement UnreachableInst (#101856)

This patch implements the `UnreachableInst` instruction in SandboxIR. Mirroring `llvm::UnreachableInst`.


  Commit: 90e1c292e3745acdd2b89ac9aafdfdaaa7f13f6c
      https://github.com/llvm/llvm-project/commit/90e1c292e3745acdd2b89ac9aafdfdaaa7f13f6c
  Author: Julius Alexandre <juliuswoosebert at gmail.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M llvm/lib/SandboxIR/SandboxIR.cpp

  Log Message:
  -----------
  [SandboxIR][NFC] Add missing getTopmostLLVMInstruction() (#102266)

`getTopmostLLVMInstruction()` was missing in a couple of places, this patch made sure to add them.


  Commit: 41491c77231e9d389ef18593be1fab4f4e810e88
      https://github.com/llvm/llvm-project/commit/41491c77231e9d389ef18593be1fab4f4e810e88
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineRegisterInfo.h
    M llvm/lib/CodeGen/MachineRegisterInfo.cpp
    M llvm/lib/CodeGen/TargetRegisterInfo.cpp
    M llvm/tools/llvm-reduce/ReducerWorkItem.cpp
    M llvm/tools/llvm-reduce/deltas/ReduceVirtualRegisters.cpp

  Log Message:
  -----------
  [CodeGen] Allocate RegAllocHints map lazily (#102186)

This hint map is not required whenever a new register is added, in fact,
at -O0, it is not used at all. Growing this map is quite expensive, as
SmallVectors are not trivially copyable.

Grow this map only when hints are actually added to avoid multiple grows
and grows when no hints are added at all.


  Commit: 89db3bbd27ddc5ec980799c987dafd167c5a4564
      https://github.com/llvm/llvm-project/commit/89db3bbd27ddc5ec980799c987dafd167c5a4564
  Author: cceerczw <chengzhiwei6 at huawei.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-shuffle-splat.mir

  Log Message:
  -----------
  [AArch64] Fix MatchDup Lane Out Of Range In AArch64 (#101275)

The original code is intended to process pattern which ISEL generated.
The purpose of this pattern is duplicate a scalar value to vector
register which behavior like AArch64's Dup Inst.

See Url https://reviews.llvm.org/D81979 &&
https://reviews.llvm.org/D81221

The current code considers only the preceding situation which just
duplicate from Shuffle's LHS but does not consider the user code. RHS
should be considered.


  Commit: 0564d0665b302d1c7861e03d2995612f46613a0f
      https://github.com/llvm/llvm-project/commit/0564d0665b302d1c7861e03d2995612f46613a0f
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/test/CodeGen/WebAssembly/offset.ll

  Log Message:
  -----------
  [SDAG] Transfer gep nusw/nuw to SDAG

The resulting add is nuw if either the gep was nuw or it was
nusw+nneg. Previously only inbounds+nneg was handled.

Test via wasm load offsets, which seems to most directly expose
these SDAG flags.


  Commit: 734c0488b6e69300adaf568f880f40b113ae02ca
      https://github.com/llvm/llvm-project/commit/734c0488b6e69300adaf568f880f40b113ae02ca
  Author: sinan <sinan.lin at linux.alibaba.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M bolt/lib/Rewrite/RewriteInstance.cpp
    A bolt/test/X86/dynamic-relocs-on-entry.s

  Log Message:
  -----------
  [BOLT] Support map other function entry address (#101466)

Allow BOLT to map the old address to a new binary address if the old
address is the entry of the function.


  Commit: 441b672bbdc68ad88036f3e258759854c8283adb
      https://github.com/llvm/llvm-project/commit/441b672bbdc68ad88036f3e258759854c8283adb
  Author: Giuseppe Rossini <giuseppe.rossini at amd.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/Bufferization/Transforms/BufferDeallocationSimplification.cpp
    M mlir/lib/Transforms/Utils/RegionUtils.cpp
    M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/dealloc-branchop-interface.mlir
    M mlir/test/Dialect/Linalg/detensorize_entry_block.mlir
    M mlir/test/Dialect/Linalg/detensorize_if.mlir
    M mlir/test/Dialect/Linalg/detensorize_while.mlir
    M mlir/test/Dialect/Linalg/detensorize_while_impure_cf.mlir
    M mlir/test/Dialect/Linalg/detensorize_while_pure_cf.mlir
    M mlir/test/Transforms/canonicalize-block-merge.mlir
    M mlir/test/Transforms/canonicalize-dce.mlir
    M mlir/test/Transforms/make-isolated-from-above.mlir
    A mlir/test/Transforms/test-canonicalize-merge-large-blocks.mlir

  Log Message:
  -----------
  [mlir] Fix block merging (#102038)

With this PR I am trying to address:
https://github.com/llvm/llvm-project/issues/63230.

What changed:
- While merging identical blocks, don't add a block argument if it is
"identical" to another block argument. I.e., if the two block arguments
refer to the same `Value`. The operations operands in the block will
point to the argument we already inserted. This needs to happen to all
the arguments we pass to the different successors of the parent block
- After merged the blocks, get rid of "unnecessary" arguments. I.e., if
all the predecessors pass the same block argument, there is no need to
pass it as an argument.
- This last simplification clashed with
`BufferDeallocationSimplification`. The reason, I think, is that the two
simplifications are clashing. I.e., `BufferDeallocationSimplification`
contains an analysis based on the block structure. If we simplify the
block structure (by merging and/or dropping block arguments) the
analysis is invalid . The solution I found is to do a more prudent
simplification when running that pass.

**Note-1**: I ran all the integration tests
(`-DMLIR_INCLUDE_INTEGRATION_TESTS=ON`) and they passed.
**Note-2**: I fixed a bug found by @Dinistro in #97697 . The issue was
that, when looking for redundant arguments, I was not considering that
the block might have already some arguments. So the index (in the block
args list) of the i-th `newArgument` is `i+numOfOldArguments`.


  Commit: efd71d921396c71adb2362d91fd9cdfbac21abc2
      https://github.com/llvm/llvm-project/commit/efd71d921396c71adb2362d91fd9cdfbac21abc2
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/src/time/time_utils.h

  Log Message:
  -----------
  [libc] Allow time conversions to compile on bare metal (#102014)

The `<time.h>` functions `asctime`, `gmtime`, `mktime` and their `_r`
variants are purely computational functions which convert between well
defined time representations and/or strings. There's no reason these
shouldn't be available in bare-metal builds of the library as well as
hosted ones: even if the library has no way to find out the time in
POSIX format, it might still see POSIX-style `time_t` values in input
data (e.g. network protocols) and need to interpret them.

The only obstacle to this was that the `out_of_range()` helper function
set `errno` to `EOVERFLOW`, which fails in a bare-metal build because
the extra POSIX error values aren't defined, including `EOVERFLOW`. So
I've made that assignment conditional on `EOVERFLOW` being defined.

Fixes #85556.


  Commit: 199c400387a5492e021925ef42ea744ccf7812de
      https://github.com/llvm/llvm-project/commit/199c400387a5492e021925ef42ea744ccf7812de
  Author: Vladislav Khmelevsky <och95 at yandex.ru>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/aarch64.h
    M llvm/lib/ExecutionEngine/JITLink/ELF_aarch64.cpp
    M llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp
    M llvm/lib/ExecutionEngine/JITLink/aarch64.cpp
    M llvm/test/ExecutionEngine/JITLink/AArch64/ELF_relocations.s

  Log Message:
  -----------
  [JITLink][AArch64] Add LD64_GOTPAGE_LO15 rel support (#100854)

This relocation is used in order to address GOT entries using 15 bit
offset in ldr instruction. The offset is calculated relative to GOT
section page address.


  Commit: eb7da59588c5ea0ee2b3dea9a7b618adaf11a33c
      https://github.com/llvm/llvm-project/commit/eb7da59588c5ea0ee2b3dea9a7b618adaf11a33c
  Author: Nuno Lopes <nuno.lopes at tecnico.ulisboa.pt>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/test/DebugInfo/Generic/sroa-extract-bits.ll
    M llvm/test/Transforms/InstCombine/dbg-scalable-store-fixed-frag.ll
    M llvm/test/Transforms/InstCombine/debuginfo.ll
    M llvm/test/Transforms/Mem2Reg/dbg_declare_to_value_conversions.ll
    M llvm/test/Transforms/Mem2Reg/debug-alloca-vla-2.ll

  Log Message:
  -----------
  [debuginfo] replace usage of undef with poison as placeholder [NFC]


  Commit: 9c51e518034027061050b5c7faefc01900c070d4
      https://github.com/llvm/llvm-project/commit/9c51e518034027061050b5c7faefc01900c070d4
  Author: Ruiling, Song <ruiling.song at amd.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    A llvm/test/Transforms/StructurizeCFG/loop-break-phi.ll

  Log Message:
  -----------
  [Tests] Copy while-break test to StructurizeCFG (#102118)

Copied from AMDGPU tests to show IR changes in later PR.


  Commit: fc157522c5680b0ff982442bc8043c1e8c998161
      https://github.com/llvm/llvm-project/commit/fc157522c5680b0ff982442bc8043c1e8c998161
  Author: Ricardo Jesus <rjj at nvidia.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/test/CodeGen/PowerPC/common-chain.ll
    M llvm/test/Transforms/LICM/hoist-binop.ll

  Log Message:
  -----------
  [LICM] Prevent fold and hoist of binary ops with over 2 uses (#102114)

This limits folding and hoisting associative binary ops to cases where
the intermediate op has at most two uses.

The more uses the intermediate op has, the more new ops we have to
create to potentially reduce the loop's critical path. We keep the limit
to two uses to minimise undesirable increases in code size.


  Commit: 9dae7fcc927de7ae9878d4c32cb15770271fa8e3
      https://github.com/llvm/llvm-project/commit/9dae7fcc927de7ae9878d4c32cb15770271fa8e3
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64MCInstLower.cpp
    M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.cpp
    M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.h
    A llvm/test/CodeGen/AArch64/ptrauth-basic-pic.ll
    A llvm/test/CodeGen/AArch64/ptrauth-elf-globals-pic.ll
    A llvm/test/CodeGen/AArch64/ptrauth-extern-weak.ll
    A llvm/test/CodeGen/AArch64/ptrauth-got-abuse.ll
    A llvm/test/CodeGen/AArch64/ptrauth-tagged-globals-pic.ll
    A llvm/test/MC/AArch64/adrp-auth-relocation.s
    M llvm/test/MC/AArch64/arm64-elf-relocs.s
    M llvm/test/MC/AArch64/ilp32-diagnostics.s

  Log Message:
  -----------
  [PAC][CodeGen][ELF][AArch64] Support signed GOT (#96164)

Depends on #96158 and #96159

Support the following relocations and assembly operators:

- `R_AARCH64_AUTH_ADR_GOT_PAGE` (`:got_auth:` for `adrp`)
- `R_AARCH64_AUTH_LD64_GOT_LO12_NC` (`:got_auth_lo12:` for `ldr`)
- `R_AARCH64_AUTH_GOT_ADD_LO12_NC` (`:got_auth_lo12:` for `add`)

`LOADgotAUTH` pseudo-instruction is introduced which is later expanded
to actual instruction sequence like the following.

```
adrp x16, :got_auth:sym
add x16, x16, :got_auth_lo12:sym
ldr x0, [x16]
autia x0, x16
```

If a resign is requested, like below, `LOADgotPAC` pseudo is used, and
GOT load is lowered similarly to `LOADgotAUTH`.

```
@var = global i32 0
define ptr @resign_globalvar() {
  ret ptr ptrauth (ptr @var, i32 3, i64 43)
}
```

Both SelectionDAG and GlobalISel are suppported. For FastISel, we fall
back to SelectionDAG.

Tests starting with 'ptrauth-' have corresponding variants w/o this
prefix.

See also specification
https://github.com/ARM-software/abi-aa/blob/main/pauthabielf64/pauthabielf64.rst#appendix-signed-got


  Commit: cb89457ff825926f0004711bef3d534df1f5576d
      https://github.com/llvm/llvm-project/commit/cb89457ff825926f0004711bef3d534df1f5576d
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorContract.cpp
    M mlir/test/Dialect/Vector/vector-contract-to-matrix-intrinsics-transforms.mlir

  Log Message:
  -----------
  [nlir][vector] Constrain `ContractionOpToMatmulOpLowering` (#102225)

Disables `ContractionOpToMatmulOpLowering` for scalable vectors. This
pattern is meant to enable lowering to `llvm.matrix.multiply` - I'm not
aware of any use of that in the context of scalable vectors.


  Commit: a1c6467bd90905d52cf8f6162b60907f8e98a704
      https://github.com/llvm/llvm-project/commit/a1c6467bd90905d52cf8f6162b60907f8e98a704
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Config.h
    M lld/ELF/InputFiles.cpp
    A lld/test/ELF/arm-mixed-plts.s

  Log Message:
  -----------
  [lld][ARM] Fix assertion when mixing ARM and Thumb objects (#101985)

Previously, we selected the Thumb2 PLT sequences if any input object is
marked as not supporting the ARM ISA, which then causes assertion
failures when calls from ARM code in other objects are seen. I think the
intention here was to only use Thumb PLTs when the target does not have
the ARM ISA available, signalled by no objects being marked as having it
available. To do that we need to track which ISAs we have seen as we
parse the build attributes, and defer the decision about PLTs until all
input objects have been parsed.

This bug was triggered by real code in picolibc, which have some
versions of string.h functions built with Thumb2-only build attributes,
so that they are compatible with v7-A, v7-R and v7-M.

Fixes #99008.


  Commit: 96d824d935d631a4c28133f9f8f1f583eefd040d
      https://github.com/llvm/llvm-project/commit/96d824d935d631a4c28133f9f8f1f583eefd040d
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/lib/Driver/ToolChain.cpp
    M clang/test/Driver/fsanitize.c

  Log Message:
  -----------
  [ARM] Enable cfi-icall for thumb triples (#102126)

Support for this was added back in 2016
(https://reviews.llvm.org/D27499), but never enabled in the driver.
Since then, it's been possible to enable this with an arm triple and the
-mthumb option, but not with a thumb triple.

This also caused -fsanitise=cfi to enable cfi-icall for arm triple but
not thumb triples, which caused spurious sanitiser failures if mixing
the two ISAs in one program.


  Commit: d06303ffc1f3b2023532fd426734e9435f87d038
      https://github.com/llvm/llvm-project/commit/d06303ffc1f3b2023532fd426734e9435f87d038
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMInstrThumb2.td
    M llvm/test/CodeGen/ARM/setjmp-bti-basic.ll

  Log Message:
  -----------
  [ARM] t2CALL_BTI pseudo-inst clobbers LR (#102117)

The t2CALL_BTI pseudo-instruction expands to a tBL instruction, so needs
the same implicit uses and defs as it.


  Commit: 8fd5dafc748669a8e4116368fa08b0d1facedfd2
      https://github.com/llvm/llvm-project/commit/8fd5dafc748669a8e4116368fa08b0d1facedfd2
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Object/COFFObjectFile.cpp

  Log Message:
  -----------
  Fix MSVC "not all control paths return a value" warning. NFC.


  Commit: c84a936516228cabc08d1ae6da6b9c3830005c64
      https://github.com/llvm/llvm-project/commit/c84a936516228cabc08d1ae6da6b9c3830005c64
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Object/COFFObjectFile.cpp

  Log Message:
  -----------
  Remove unnecessary break to fix static analysis warning.


  Commit: 79daad3479fa4eb9d704ba2e6814c1b74302d740
      https://github.com/llvm/llvm-project/commit/79daad3479fa4eb9d704ba2e6814c1b74302d740
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Object/COFFObjectFile.cpp

  Log Message:
  -----------
  Fix MSVC "result of 32-bit shift implicitly converted to 64 bits" warning. NFC.


  Commit: 6c8933e1a095028d648a5a26aecee0f569304dd0
      https://github.com/llvm/llvm-project/commit/6c8933e1a095028d648a5a26aecee0f569304dd0
  Author: sinan <sinan.lin at linux.alibaba.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M bolt/lib/Rewrite/RewriteInstance.cpp
    A bolt/test/AArch64/update-weak-reference-symbol.s

  Log Message:
  -----------
  [BOLT] Skip PLT search for zero-value weak reference symbols (#69136)

Take a common weak reference pattern for example
```
    __attribute__((weak)) void undef_weak_fun();
    
      if (&undef_weak_fun)
        undef_weak_fun();
```
    
In this case, an undefined weak symbol `undef_weak_fun` has an address
of zero, and Bolt incorrectly changes the relocation for the
corresponding symbol to symbol at PLT, leading to incorrect runtime
behavior.


  Commit: e8429986c8f2b1e00fdc51187df9d434a093e9b4
      https://github.com/llvm/llvm-project/commit/e8429986c8f2b1e00fdc51187df9d434a093e9b4
  Author: Petar Avramovic <Petar.Avramovic at amd.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-fma.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: Add test for fma_mix with source from unmerge (#102129)

When selecting fma_mix with operand that comes from G_UNMERGE_VALUES,
there is a bug where folded register is operand 0 of G_UNMERGE_VALUES.
Source modifiers are correctly selected.
isExtractHiElt returns G_UNMERGE_VALUES that defines source register
but does not specify which operand.


  Commit: 269cefbc02986d460eee44a4e95024261be87656
      https://github.com/llvm/llvm-project/commit/269cefbc02986d460eee44a4e95024261be87656
  Author: Petar Avramovic <Petar.Avramovic at amd.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-fma.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: Fix isExtractHiElt when selecting fma_mix (#102130)

isExtractHiElt should return new source register instead of returning
instruction that defines it. Src = MI.getOperand(0).getReg() is not
correct when MI(for example G_UNMERGE_VALUES) defines multiple registers.
Refactor existing code to work with source registers only.


  Commit: 77534291fcbd2c784c54e39a60895e4f60f19742
      https://github.com/llvm/llvm-project/commit/77534291fcbd2c784c54e39a60895e4f60f19742
  Author: Vikram Hegde <115221833+vikramRH at users.noreply.github.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/Interp/State.h
    M clang/test/AST/Interp/arrays.cpp
    M clang/test/AST/Interp/builtin-functions.cpp
    M clang/test/AST/Interp/vectors.cpp
    M clang/test/CodeGenCXX/temporaries.cpp
    A clang/test/SemaCXX/constexpr-vectors-access-elements.cpp

  Log Message:
  -----------
  [clang][ExprConst] allow single element access of vector object to be constant expression (#101126)

This is a slightly updated version of https://github.com/llvm/llvm-project/pull/72607,

originally authored by @yuanfang-chen


  Commit: 3c87f66b7e642790cafd877ff6b1fcb8a712c66a
      https://github.com/llvm/llvm-project/commit/3c87f66b7e642790cafd877ff6b1fcb8a712c66a
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    A llvm/test/Analysis/BasicAA/nusw_nuw_nonneg.ll

  Log Message:
  -----------
  [BasicAA] Make use of nusw+nuw -> nneg implication (#102141)

If the GEP is both nuw and inbounds/nusw, the offset is non-negative.
Pass this information to CastedValue and make use of it when determining
the value range.

Proof for nusw+nuw->nneg: https://alive2.llvm.org/ce/z/a_CKAw
Proof for the test case: https://alive2.llvm.org/ce/z/yJ3ymP


  Commit: f7e1efe8bcea14686d1c303e058f687b6ca1c79f
      https://github.com/llvm/llvm-project/commit/f7e1efe8bcea14686d1c303e058f687b6ca1c79f
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/test/CodeGen/AArch64/sve-pred-selectop2.ll
    M llvm/test/CodeGen/AArch64/sve-pred-selectop3.ll

  Log Message:
  -----------
  [LLVM][ISel][SVE] Add patterns for merging reverse subtracts. (#101488)

vselect cond, ([f]sub b, a), a ==> [f]subr cond, a, b


  Commit: 441f94f4bdf6e2b9747ec12194c595098d9c3a5b
      https://github.com/llvm/llvm-project/commit/441f94f4bdf6e2b9747ec12194c595098d9c3a5b
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/reduced-value-replace-extractelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-gather-non-scheduled-extracts.ll

  Log Message:
  -----------
  [SLP]Fix PR102279: check the tracked values for extractelements, not the original values

If the reduced value was replaced by the extractelement instruction
during vectorization and we attempt to check if this is so, need to
check the tracked value, not the original (deleted) instruction.
Otherwise, the compiler may crash

Fixes https://github.com/llvm/llvm-project/issues/102279


  Commit: f05e8186a439cf538f383dfbde68eca364a5acec
      https://github.com/llvm/llvm-project/commit/f05e8186a439cf538f383dfbde68eca364a5acec
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/test/AST/Interp/vectors.cpp

  Log Message:
  -----------
  [clang][Interp] Fix BooleanToSignedIntegral casts for IntAP(S) (#102302)

We were not doing the final Neg here.


  Commit: 3ac5f5e1fc189d0cca169a409199fdaec13112d1
      https://github.com/llvm/llvm-project/commit/3ac5f5e1fc189d0cca169a409199fdaec13112d1
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp
    M lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/unittests/Symbol/TestTypeSystemClang.cpp

  Log Message:
  -----------
  [lldb][TypeSystem] Pass ClangASTMetadata by-value when creating record/objc types (#102296)

This is a follow-up to https://github.com/llvm/llvm-project/pull/102161
where we changed the `GetMetadata`/`SetMetadata` APIs to pass
`ClangASTMetadata` by-value, instead of `ClangASTMetadata *`, which
wasn't a very friendly API.

This patch continues from there and changes
`CreateRecordType`/`CreateObjCClass` to take the metadata by-value as
well.

As a drive-by change, I also changed `DelayedAddObjCClassProperty` to
store the metadata by-value, instead of in a `std::unique_ptr`, which
AFAICT, was done solely due to the TypeSystemClang APIs taking the
metadata by pointer. This meant we could also get rid of the
user-provided copy constructors.


  Commit: b74182edaeeddfb10930e44048bf6b16704c45d9
      https://github.com/llvm/llvm-project/commit/b74182edaeeddfb10930e44048bf6b16704c45d9
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/tools/llvm-reduce/ReducerWorkItem.cpp
    M llvm/tools/llvm-reduce/deltas/ReduceInstructionFlags.cpp

  Log Message:
  -----------
  [llvm-reduce] Handle new flags in complexity score

This has gotten out of sync with the actual flag reduction. It's
not particularly important though, as it only seems to be used to
determine whether to do another round of delta reduction.


  Commit: 8a5f33fd12621c8ac0def0481700246a34f4f674
      https://github.com/llvm/llvm-project/commit/8a5f33fd12621c8ac0def0481700246a34f4f674
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/ArmSME/IR/ArmSMEOps.td
    M mlir/include/mlir/Dialect/ArmSME/Transforms/Passes.td
    M mlir/lib/Dialect/ArmSME/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/ArmSME/Transforms/OuterProductFusion.cpp
    M mlir/test/Dialect/ArmSME/outer-product-fusion.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/multi-tile-matmul-mixed-types.mlir

  Log Message:
  -----------
  [mlir][ArmSME] Update `OuterProductFusion` to account for recent changes (#102125)

- Use vector.interleave rather than the LLVM intrinsic
- Remove dependency on LLVM dialect
- Remove manual outerproduct erases (these are now trivially dead)
- Remove comment explaining issues with previous tile allocator
- Update pipeline in `multi-tile-matmul-mixed-types.mlir`

Recent changes: #90448, #80965


  Commit: 750b12f06badc4cdf767139c70090db62358bb44
      https://github.com/llvm/llvm-project/commit/750b12f06badc4cdf767139c70090db62358bb44
  Author: Vladislav Khmelevsky <och95 at yandex.ru>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M bolt/lib/Rewrite/BinaryPassManager.cpp

  Log Message:
  -----------
  [BOLT] Move ADRRelaxationPass (#101371)

For non-simple functions we need nop instruction to be presented to
transform ADR to ADRP+ADD sequence, so run this pass before remove nops
pass.


  Commit: 25acc16fe29abe9a0310f63149732860b1bd9e07
      https://github.com/llvm/llvm-project/commit/25acc16fe29abe9a0310f63149732860b1bd9e07
  Author: Vladislav Khmelevsky <och95 at yandex.ru>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M bolt/CMakeLists.txt

  Log Message:
  -----------
  [BOLT][RUNTIME][NFC] Fix aarch64 match (#100866)

One of the problems related to #93151 is probably that aarch64 target
might have different names in different env, so extend aarch64 cmake cpu
match with different name aliases.


  Commit: 097ddd3565f830e6cb9d0bb8ca66844b7f3f3cbb
      https://github.com/llvm/llvm-project/commit/097ddd3565f830e6cb9d0bb8ca66844b7f3f3cbb
  Author: Vladislav Khmelevsky <och95 at yandex.ru>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M bolt/lib/Rewrite/RewriteInstance.cpp
    A bolt/test/AArch64/Inputs/build_id.ldscript
    A bolt/test/AArch64/build_id.c
    A bolt/test/X86/Inputs/build_id.yaml
    A bolt/test/X86/build_id.test

  Log Message:
  -----------
  [BOLT] Fix relocations handling (#100890)

After porting BOLT to RISCV some of the relocations were broken on both
AArch64 and X86.
On AArch64 the example of broken relocations would be GOT, during
handling them, we should replace the symbol to __BOLT_got_zero in order
to address GOT entry, not the symbol that addresses this entry. This is
done further in code, so it is too early to add rel here.
On X86 it is a mistake to add relocations without addend. This is the
exact problem that is raised on #97937. Due to different code generation
I had to use gcc-generated yaml test, since with clang I wasn't able to
reproduce problem.
Added tests for both architectures and made the problematic condition
riscV-specific.


  Commit: a4900f0d936f0e86bbd04bd9de4291e1795f1768
      https://github.com/llvm/llvm-project/commit/a4900f0d936f0e86bbd04bd9de4291e1795f1768
  Author: Vladislav Khmelevsky <och95 at yandex.ru>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    A bolt/test/AArch64/Inputs/got_end_of_section_symbol.lld_script
    A bolt/test/AArch64/got_end_of_section_symbol.s
    M bolt/test/X86/section-end-sym.s

  Log Message:
  -----------
  [BOLT] Abort on out-of-section symbols in GOT (#100801)

This patch aborts BOLT execution if it finds out-of-section (section
end) symbol in GOT table. In order to handle such situations properly in
future, we would need to have an arch-dependent way to analyze
relocations or its sequences, e.g., for ARM it would probably be ADRP +
LDR analysis in order to get GOT entry address. Currently, it is also
challenging because GOT-related relocation symbols are replaced to
__BOLT_got_zero. Anyway, it seems to be quite a rare case, which seems
to be only? related to static binaries. For the most part, it seems that
it should be handled on the linker stage, since static binary should not
have GOT table at all. LLD linker with relaxations enabled would replace
instruction addresses from GOT directly to target symbols, which
eliminates the problem.

Anyway, in order to achieve detection of such cases, this patch fixes a
few things in BOLT:
1. For the end symbols, we're now using the section provided by ELF
binary. Previously it would be tied with a wrong section found by symbol
address.
2. The end symbols would have limited registration we would only
add them in name->data GlobalSymbols map, since using address->data
BinaryDataMap map would likely be impossible due to address duality of
such symbols.
3. The outdated BD->getSection (currently returning refence, not
pointer) check in postProcessSymbolTable is replaced by getSize check in
order to allow zero-sized top-level symbols if they are located in
zero-sized sections. For the most part, such things could only be found
in tests, but I don't see a reason not to handle such cases.
4. Updated section-end-sym test and removed x86_64 requirement since
there is no reason for this (tested on aarch64 linux)

The test was provided by peterwaller-arm (thank you) in #100096 and
slightly modified by me.


  Commit: e3778a5d0ee78f3161f1d060c6db1c0dd0de6c4e
      https://github.com/llvm/llvm-project/commit/e3778a5d0ee78f3161f1d060c6db1c0dd0de6c4e
  Author: Job Henandez Lara <hj93 at protonmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/newhdrgen/yaml/math.yaml
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/getpayloadl.cpp
    A libc/src/math/getpayloadl.h
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/math/smoke/GetPayloadTest.h
    A libc/test/src/math/smoke/getpayloadl_test.cpp

  Log Message:
  -----------
  [libc][math] Add getpayloadl function. (#102214)


  Commit: 0c25f85e5b88102363c0cd55e1946053d5827e99
      https://github.com/llvm/llvm-project/commit/0c25f85e5b88102363c0cd55e1946053d5827e99
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/test/Driver/riscv-cpus.c
    M clang/test/Misc/target-invalid-cpu-note.c
    M llvm/docs/ReleaseNotes.rst
    M llvm/lib/Target/RISCV/RISCVProcessors.td

  Log Message:
  -----------
  [RISCV] Add sifive-p470 processor (#102022)

This is an OOO core that has a vector unit. For more information see
https://www.sifive.com/cores/performance-p450-470.

Use the existing P400 scheduler model. This model is missing accurate
vector scheduling support, but it will be added in a follow up patch.

Other tunings can come in future patches too.


  Commit: fca69838caf19854769ada21a71da91fcfcbde73
      https://github.com/llvm/llvm-project/commit/fca69838caf19854769ada21a71da91fcfcbde73
  Author: Frank Schlimbach <frank.schlimbach at intel.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Mesh/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Mesh/IR/MeshBase.td
    M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.h
    M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.td
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.h
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.td
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterfaceImpl.h
    A mlir/include/mlir/Dialect/Tensor/IR/ShardingInterfaceImpl.h
    M mlir/include/mlir/InitAllDialects.h
    M mlir/include/mlir/Interfaces/InferTypeOpInterface.h
    M mlir/lib/Dialect/Linalg/Transforms/MeshShardingInterfaceImpl.cpp
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp
    M mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
    M mlir/lib/Dialect/Mesh/Transforms/Spmdization.cpp
    M mlir/lib/Dialect/Tensor/IR/CMakeLists.txt
    A mlir/lib/Dialect/Tensor/IR/ShardingInterfaceImpl.cpp
    M mlir/test/Dialect/Linalg/mesh-sharding-propagation.mlir
    M mlir/test/Dialect/Linalg/mesh-spmdization.mlir
    M mlir/test/Dialect/Mesh/canonicalization.mlir
    M mlir/test/Dialect/Mesh/invalid.mlir
    M mlir/test/Dialect/Mesh/ops.mlir
    M mlir/test/Dialect/Mesh/resharding-spmdization.mlir
    M mlir/test/Dialect/Mesh/sharding-propagation.mlir
    M mlir/test/Dialect/Mesh/simplifications.mlir
    M mlir/test/Dialect/Mesh/spmdization.mlir
    A mlir/test/Dialect/Tensor/mesh-spmdization.mlir
    M mlir/test/lib/Dialect/Mesh/TestReshardingSpmdization.cpp

  Log Message:
  -----------
  [mlir][mesh] adding shard-size control (#98145)

- Replacing `#mesh.sharding` attribute with operation `mesh.sharding`
- extended semantics now allow providing optional `halo_sizes` and
`sharded_dims_sizes`
- internally a sharding is represented as a non-IR class
`mesh::MeshSharding`

What previously was
```mlir
%sharded0 = mesh.shard %arg0 <@mesh0, [[0]]> : tensor<4x8xf32>
%sharded1 = mesh.shard %arg1 <@mesh0, [[0]]> annotate_for_users : tensor<16x8xf32>
```
is now
```mlir
%sharding = mesh.sharding @mesh0, [[0]] : !mesh.sharding
%0 = mesh.shard %arg0 to %sharding : tensor<4x8xf32>
%1 = mesh.shard %arg1 to %sharding annotate_for_users : tensor<16x8xf32>
```
and allows additional annotations to control the shard sizes:
```mlir
mesh.mesh @mesh0 (shape = 4)
%sharding0 = mesh.sharding @mesh0, [[0]] halo_sizes = [1, 2] : !mesh.sharding
%0 = mesh.shard %arg0 to %sharding0 : tensor<4x8xf32>
%sharding1 = mesh.sharding @mesh0, [[0]] sharded_dims_sizes = [3, 5, 5, 3] : !mesh.sharding
%1 = mesh.shard %arg1 to %sharding1 annotate_for_users : tensor<16x8xf32>
```
- `mesh.shard` op accepts additional optional attribute `force`, useful
for halo updates
- Some initial spmdization support for the new semantics
- Support for `tensor.empty` reacting on `sharded_dims_sizes` and
`halo_sizes` in the sharding
- New collective operation `mesh.update_halo` as a spmdized target for
shardings with `halo_sizes`

@sogartar @yaochengji


  Commit: f05efd034c0993c7aa606bfbaaf575d94d75b43f
      https://github.com/llvm/llvm-project/commit/f05efd034c0993c7aa606bfbaaf575d94d75b43f
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp

  Log Message:
  -----------
  [lldb][ClangExpressionParser][NFC] Remove unused local vars

These got removed in `d6cbcf93b227befaad00957a56acd63c837c26ff` but
mistakenly added back when rebasing `12e3a06cb7615fbd91031420f3dec2a85d7877d6`


  Commit: 30a4e9e5bec9ea88bd63d5b69d90218b45b5fd65
      https://github.com/llvm/llvm-project/commit/30a4e9e5bec9ea88bd63d5b69d90218b45b5fd65
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/test/TableGen/SubtargetFeatureUniqueNames.td

  Log Message:
  -----------
  [NFC] Temporarily disable failing TableGen unit test. (#102308)

- This test was reported as failing in ASAN builds, with
non-deterministic order of the error message and note expected.
- This is due to llvm::sort() being unstable.
- Temporarily disable the test while its been fixed.


  Commit: baf77036f6244ee23f77e61f986f083dd2334b6a
      https://github.com/llvm/llvm-project/commit/baf77036f6244ee23f77e61f986f083dd2334b6a
  Author: Chinmay Deshpande <cddeshpa at uci.edu>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/include/llvm/MCA/Stages/InOrderIssueStage.h
    M llvm/lib/MCA/Stages/InOrderIssueStage.cpp

  Log Message:
  -----------
  `InOrderIssueStage` for llvm-mca should be generic over LSUnitBase (#101534)

Other HardwareUnits (such as the
[Scheduler](https://github.com/llvm/llvm-project/blob/main/llvm/include/llvm/MCA/HardwareUnits/Scheduler.h#L71))
and Stages (such as
[RetireStage](https://github.com/llvm/llvm-project/blob/main/llvm/include/llvm/MCA/Stages/RetireStage.h#L32))
are generic over `LSUnitBase` rather than the specialized `LSUnit`.


  Commit: fc66eaa24f8c594c340410847bc3e4a4b9c1f994
      https://github.com/llvm/llvm-project/commit/fc66eaa24f8c594c340410847bc3e4a4b9c1f994
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/lib/Basic/IdentifierTable.cpp

  Log Message:
  -----------
  [NFC] Format TokenKey enum (#101700)

This is to fix the white-space formatting of the TokenKey enum


  Commit: b209eda621bc53e58509d05fa392cb724fa6bd6e
      https://github.com/llvm/llvm-project/commit/b209eda621bc53e58509d05fa392cb724fa6bd6e
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libc/include/llvm-libc-macros/limits-macros.h

  Log Message:
  -----------
  [libc] Define `MB_LEN_MAX` in `limits.h` (#102246)

Summary:
This is supposed to define the maximum bytes required to store a char in
any locale. There's some question about what this should be set to. I
believe because the proposed solution for `locale.h` is to only support
the default locale, we should do what `musl` does and set it to `4`
which covers up to UTF-32.

Fixes https://github.com/llvm/llvm-project/issues/79358


  Commit: 6b6abf0556d73ba55526cf084f81246d8aa4d56b
      https://github.com/llvm/llvm-project/commit/6b6abf0556d73ba55526cf084f81246d8aa4d56b
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h

  Log Message:
  -----------
  [DAG][NFC] Remove unnecessary default arguments (#100737)


  Commit: 3c391a640dae1c9884cb564ef9d73d367ea4bf48
      https://github.com/llvm/llvm-project/commit/3c391a640dae1c9884cb564ef9d73d367ea4bf48
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libc/include/llvm-libc-macros/float-macros.h

  Log Message:
  -----------
  [libc] Add `*_HAS_SUBNORM` to `float.h` (#102182)

Summary:
These should be defined, since we provide `float.h` it will override the
Clang resource dir and not provide it.


  Commit: 3645ca58f4529bf7d0aefb6e6872f0e9cbe22fa4
      https://github.com/llvm/llvm-project/commit/3645ca58f4529bf7d0aefb6e6872f0e9cbe22fa4
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libc/config/gpu/entrypoints.txt

  Log Message:
  -----------
  [libc] Enable quick_exit routines on the GPU (#102242)

Summary:
We should be able to use these on the GPU just like exit.


  Commit: f343fee8c5c9526b3cf62ee6d450c44b69a47e87
      https://github.com/llvm/llvm-project/commit/f343fee8c5c9526b3cf62ee6d450c44b69a47e87
  Author: Zibi Sarbinowski <zibi at ca.ibm.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libcxx/test/std/numerics/c.math/hermite.pass.cpp

  Log Message:
  -----------
  [libcxx][test][z/OS] Fix hermite.pass.cpp for HEX float (#101019)

The HEX float on z/OS does not have infinity nor NaN. In addition, the
limits are smaller before the overflow occurs in mathematical
calculations. This PR accounts for this.

FYI, this LIT test was recently added in PR
[89982](https://github.com/llvm/llvm-project/pull/89982)


  Commit: 36467bfe89f231458eafda3edb916c028f1f0619
      https://github.com/llvm/llvm-project/commit/36467bfe89f231458eafda3edb916c028f1f0619
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
    R llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll

  Log Message:
  -----------
  Revert "Reapply "[Attributor][AMDGPU] Enable AAIndirectCallInfo for AMDAttributor (#100952)""

This reverts commit 7a68449a82ab1c1ab005caa72c1d986ca5deca36.

https://lab.llvm.org/buildbot/#/builders/123/builds/3205


  Commit: 53609b90815a323c532da244d57feed656178e0b
      https://github.com/llvm/llvm-project/commit/53609b90815a323c532da244d57feed656178e0b
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h

  Log Message:
  -----------
  [analyzer][NFC] Prune a very obsolete comment about CoreEngine (#101173)

Once upon a time, a long time (16 years) ago there were two classes
called `GREngineImpl` and `template <class CHECKER> GrEngine`. As the
years passed, they were merged into a single class that went through
several renames, but this comment still preserved the memory of their
old relationship... until now.


  Commit: fc737368fe6e27d6ecf76e522cb43a32aaca992a
      https://github.com/llvm/llvm-project/commit/fc737368fe6e27d6ecf76e522cb43a32aaca992a
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp

  Log Message:
  -----------
  [mlir] Fix -Wunused-variable in MeshOps.cpp (NFC)

/llvm-project/mlir/lib/Dialect/Mesh/IR/MeshOps.cpp:182:16:
error: unused variable 'inAxis' [-Werror,-Wunused-variable]
          auto inAxis = dimSz % inShape.size();
               ^


  Commit: 59338ad8c5154769ec8225db0386956161f99fce
      https://github.com/llvm/llvm-project/commit/59338ad8c5154769ec8225db0386956161f99fce
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    A libc/src/math/exp10f16.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/exp10f16.cpp
    M libc/src/math/generic/exp2f16.cpp
    A libc/src/math/generic/expxf16.h
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/exp10f16_test.cpp
    M libc/test/src/math/performance_testing/CMakeLists.txt
    A libc/test/src/math/performance_testing/exp10f16_perf.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/exp10f16_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add exp10f16 C23 math function (#101588)

Part of #95250.


  Commit: d07f106e512c08455b76cc1889ee48318e73c810
      https://github.com/llvm/llvm-project/commit/d07f106e512c08455b76cc1889ee48318e73c810
  Author: Zaara Syeda <syzaara at ca.ibm.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCFrameLowering.cpp
    M llvm/test/CodeGen/PowerPC/aix-base-pointer.ll

  Log Message:
  -----------
  [PPC][AIX] Save/restore r31 when using base pointer (#100182)

When the base pointer r30 is used to hold the stack pointer, r30 is
spilled in the prologue. On AIX registers are saved from highest to
lowest, so r31 also needs to be saved.

Fixes https://github.com/llvm/llvm-project/issues/96411


  Commit: 3968942f1046d59b4dc4529fddff6d75a5668c2e
      https://github.com/llvm/llvm-project/commit/3968942f1046d59b4dc4529fddff6d75a5668c2e
  Author: Renato Golin <rengolin at systemcall.eu>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Mesh/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Mesh/IR/MeshBase.td
    M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.h
    M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.td
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.h
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.td
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterfaceImpl.h
    R mlir/include/mlir/Dialect/Tensor/IR/ShardingInterfaceImpl.h
    M mlir/include/mlir/InitAllDialects.h
    M mlir/include/mlir/Interfaces/InferTypeOpInterface.h
    M mlir/lib/Dialect/Linalg/Transforms/MeshShardingInterfaceImpl.cpp
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp
    M mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
    M mlir/lib/Dialect/Mesh/Transforms/Spmdization.cpp
    M mlir/lib/Dialect/Tensor/IR/CMakeLists.txt
    R mlir/lib/Dialect/Tensor/IR/ShardingInterfaceImpl.cpp
    M mlir/test/Dialect/Linalg/mesh-sharding-propagation.mlir
    M mlir/test/Dialect/Linalg/mesh-spmdization.mlir
    M mlir/test/Dialect/Mesh/canonicalization.mlir
    M mlir/test/Dialect/Mesh/invalid.mlir
    M mlir/test/Dialect/Mesh/ops.mlir
    M mlir/test/Dialect/Mesh/resharding-spmdization.mlir
    M mlir/test/Dialect/Mesh/sharding-propagation.mlir
    M mlir/test/Dialect/Mesh/simplifications.mlir
    M mlir/test/Dialect/Mesh/spmdization.mlir
    R mlir/test/Dialect/Tensor/mesh-spmdization.mlir
    M mlir/test/lib/Dialect/Mesh/TestReshardingSpmdization.cpp

  Log Message:
  -----------
  Revert "[mlir][mesh] adding shard-size control (#98145)"

This reverts commit fca69838caf19854769ada21a71da91fcfcbde73.

Also reverts the fixup: "[mlir] Fix -Wunused-variable in MeshOps.cpp (NFC)"

This reverts commit fc737368fe6e27d6ecf76e522cb43a32aaca992a.


  Commit: beb37e2e22b549b361be7269a52a3715649e956a
      https://github.com/llvm/llvm-project/commit/beb37e2e22b549b361be7269a52a3715649e956a
  Author: Lucas Duarte Prates <lucas.prates at arm.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp
    A llvm/test/CodeGen/AArch64/Atomics/aarch64-atomic-exchange-fence.ll

  Log Message:
  -----------
  [AArch64] Don't replace dst of SWP instructions with (X|W)ZR (#102139)

This change updates the AArch64DeadRegisterDefinition pass to ensure it
does not replace the destination register of a SWP instruction with the
zero register when its value is unused. This is necessary to ensure that
the ordering of such instructions in relation to DMB.LD barries adheres
to the definitions of the AArch64 Memory Model.

The memory model states the following (ARMARM version DDI 0487K.a
§B2.3.7):
```
Barrier-ordered-before

An effect E1 is Barrier-ordered-before an effect E2 if one of the following applies:
[...]
* All of the following apply:
- E1 is a Memory Read effect.
- E1 is generated by an instruction whose destination register is not WZR or XZR.
- E1 appears in program order before E3.
- E3 is either a DMB LD effect or a DSB LD effect.
- E3 appears in program order before E2.
```

Prior to this change, by replacing the destination register of such SWP
instruction with WZR/XZR, the ordering relation described above was
incorrectly removed from the generated code.

The new behaviour is ensured in this patch by adding the relevant
`SWP[L](B|H|W|X)` instructions to list in the `atomicReadDroppedOnZero`
predicate, which already covered the `LD<Op>` instructions that are
subject to the same effect.

Fixes #68428.


  Commit: 06a808c4f4014edfeb2517bddd0bcb63eb4a260b
      https://github.com/llvm/llvm-project/commit/06a808c4f4014edfeb2517bddd0bcb63eb4a260b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libc/utils/gpu/server/CMakeLists.txt

  Log Message:
  -----------
  [libc] Fix bot accidentally picking up conflicting MB_LEN_MAX


  Commit: c31ac810910ac87531de636ea508abec6e29e8ff
      https://github.com/llvm/llvm-project/commit/c31ac810910ac87531de636ea508abec6e29e8ff
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/test/Transforms/InstSimplify/insertelement.ll

  Log Message:
  -----------
  [InstSimplify] Fold (insertelement Splat(C), C, X) -> Splat(C) (#102315)

The index doesn't matter here.


  Commit: 999bab711e19b897bb7d86433f72f1b8eeaa4891
      https://github.com/llvm/llvm-project/commit/999bab711e19b897bb7d86433f72f1b8eeaa4891
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/SimplifyCFG/X86/sink-common-code.ll

  Log Message:
  -----------
  [SimplifyCFG] Add tests for sinking of load/store + gep (NFC)


  Commit: bfef7ccf03dc072e5e076500743318b7db5b9a33
      https://github.com/llvm/llvm-project/commit/bfef7ccf03dc072e5e076500743318b7db5b9a33
  Author: Pradeep Kumar <pradeepku at nvidia.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/fence-proxy-tensormap.ll

  Log Message:
  -----------
  [LLVM][NVPTX] Add NVPTX codegen support for fence.proxy.tensormap (#100748)

This commit adds LLVM Intrinsics and NVPTX codegen support for
`fence.proxy.tensormap` with lit tests under fence-proxy-tensormap.ll.
Also, added Intrinsics documentation in NVPTXUsage.rst

---------

Co-authored-by: gonzalobg <65027571+gonzalobg at users.noreply.github.com>


  Commit: 12fa4b17dcededbd14abfc3ae72f1b798349e847
      https://github.com/llvm/llvm-project/commit/12fa4b17dcededbd14abfc3ae72f1b798349e847
  Author: royitaqi <royitaqi at users.noreply.github.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M lldb/source/Core/Progress.cpp
    M lldb/unittests/Core/ProgressReportTest.cpp

  Log Message:
  -----------
  [lldb] Make sure that a `Progress` "completed" update is always reported at destruction (#102097)

Make all `Progress` destructions to cause `progressEnd` events,
regardless of the value of `m_completed` before the destruction.

Currently, a `Progress` instance with `m_completed != 0 && m_complete !=
m_total` will cause a `progressUpdate` event (not `progressEnd`) at
destruction and. This contradicts with the classdoc: "a progress completed
update is reported even if the user doesn't explicitly cause one to be sent."


  Commit: 7634a96589637186b640a0441c0544a9868d9913
      https://github.com/llvm/llvm-project/commit/7634a96589637186b640a0441c0544a9868d9913
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M flang/lib/Lower/DirectivesCommon.h
    M flang/lib/Lower/OpenACC.cpp
    M flang/test/Lower/OpenACC/acc-bounds.f90

  Log Message:
  -----------
  [flang][acc] Improve lowering of Fortran optional in data clause (#102224)

Fortran optional arguments are effectively null references. To deal with
this possibility, flang lowering of OpenACC data clauses creates three
if-else regions when preparing the data pointer for the data clause:
1) Load box value from box reference
2) Load box addr from box value
3) Load box dims from box value

However, this pattern makes it more complicated to find the original box
reference. Effectively, the first if-else region to get the box value is
not needed - since the value can be loaded before the corresponding
`fir.box_addr` and `fir.box_dims` operations. Thus, reduce the number of
if-else regions by deferring the box load to the use sites.

For non-optional cases, the old functionality is left alone - which
preloads the box value.


  Commit: f126bc984ce4d17473f76d507e31c12a91e84b5b
      https://github.com/llvm/llvm-project/commit/f126bc984ce4d17473f76d507e31c12a91e84b5b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libc/utils/gpu/server/rpc_server.cpp

  Log Message:
  -----------
  [libc] Fix conflict values from internal `limits.h` when used externally


  Commit: d60008d861d2f5e6a73c4b5d403e1132e41e1704
      https://github.com/llvm/llvm-project/commit/d60008d861d2f5e6a73c4b5d403e1132e41e1704
  Author: Nhat Nguyen <hoangnhat2911 at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M mlir/python/requirements.txt

  Log Message:
  -----------
  [mlir] [python] Update PyYAML minimum version to 5.4 and limit ml_dtypes to 0.4.0 (#102178)

PyYAML 5.3.1 has a security vulnerability as described here:
https://nvd.nist.gov/vuln/detail/CVE-2020-14343. Update the minimum
PyYAML version to 5.4. Also limit ml_dtypes version to 0.4.0.


  Commit: 4859c46761f2278e9c4c45596a32bcec8109a3e7
      https://github.com/llvm/llvm-project/commit/4859c46761f2278e9c4c45596a32bcec8109a3e7
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp

  Log Message:
  -----------
  Fix gcc Wparentheses warning. NFC.


  Commit: 8b522992a94b7dd4a027bfc2c462f24aa93edbac
      https://github.com/llvm/llvm-project/commit/8b522992a94b7dd4a027bfc2c462f24aa93edbac
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp

  Log Message:
  -----------
  Fix gcc Wparentheses warning. NFC.


  Commit: 13c61ddc210b8743493d2f1450d0dbea0533b892
      https://github.com/llvm/llvm-project/commit/13c61ddc210b8743493d2f1450d0dbea0533b892
  Author: Mital Ashok <mital at mitalashok.co.uk>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [Clang][NFC] Restore "Non-comprehensive list of changes in this release" in ReleaseNotes (#102134)

This was removed in 10c6d6349e51bb245b9deec4aafca9885971135b


  Commit: 97743b8be86ab96afb26ba93e1876406c1f4d541
      https://github.com/llvm/llvm-project/commit/97743b8be86ab96afb26ba93e1876406c1f4d541
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

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

  Log Message:
  -----------
  [SLP][REVEC] Make ShuffleCostEstimator and ShuffleInstructionBuilder support vector instructions. (#99499)

1. When REVEC is enabled, we need to expand vector types into scalar
types.
2. When REVEC is enabled, CreateInsertVector (and CreateExtractVector)
is used because the scalar type may be a FixedVectorType.
3. Since the mask indices which are used by processBuildVector expect
the source is scalar type, we need to transform the mask indices into a
form which can be used when REVEC is enabled. The transform is only
called when the mask is really used.


  Commit: e4e96b3e26c0c9752869daea398bfb27af72e22f
      https://github.com/llvm/llvm-project/commit/e4e96b3e26c0c9752869daea398bfb27af72e22f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AArch64/abds-neg.ll
    M llvm/test/CodeGen/AArch64/abds.ll
    M llvm/test/CodeGen/AArch64/abdu-neg.ll
    M llvm/test/CodeGen/AArch64/abdu.ll
    M llvm/test/CodeGen/AArch64/arm64-vabs.ll
    M llvm/test/CodeGen/AArch64/neon-abd.ll
    M llvm/test/CodeGen/AArch64/sve-aba.ll
    M llvm/test/CodeGen/AArch64/sve-abd.ll
    M llvm/test/CodeGen/AMDGPU/sad.ll
    M llvm/test/CodeGen/ARM/neon_vabd.ll
    M llvm/test/CodeGen/PowerPC/ppc64-P9-vabsd.ll
    M llvm/test/CodeGen/PowerPC/vec-zext-abdu.ll
    M llvm/test/CodeGen/RISCV/abds-neg.ll
    M llvm/test/CodeGen/RISCV/abds.ll
    M llvm/test/CodeGen/RISCV/abdu-neg.ll
    M llvm/test/CodeGen/RISCV/abdu.ll
    M llvm/test/CodeGen/RISCV/rvv/abd.ll
    M llvm/test/CodeGen/Thumb2/mve-vabdus.ll
    M llvm/test/CodeGen/X86/abds-neg.ll
    M llvm/test/CodeGen/X86/abds.ll
    M llvm/test/CodeGen/X86/abdu-neg.ll
    M llvm/test/CodeGen/X86/abdu.ll

  Log Message:
  -----------
  Revert b1234ddbe2652aa7948242a57107ca7ab12fd2f8. "[DAG] Add legalization handling for ABDS/ABDU (#92576)"

Reverting #92576 while we identify a reported regression


  Commit: 01b488faabdfe9402c5b4d1f788038cc439acf90
      https://github.com/llvm/llvm-project/commit/01b488faabdfe9402c5b4d1f788038cc439acf90
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/tool/CMakeLists.txt
    M clang/cmake/modules/AddClang.cmake
    M clang/tools/clang-linker-wrapper/CMakeLists.txt
    M clang/tools/clang-repl/CMakeLists.txt
    M clang/tools/driver/CMakeLists.txt
    M clang/unittests/Interpreter/CMakeLists.txt
    M clang/unittests/Interpreter/ExceptionTests/CMakeLists.txt
    M flang/tools/flang-driver/CMakeLists.txt
    M lld/cmake/modules/AddLLD.cmake
    M lld/tools/lld/CMakeLists.txt
    M llvm/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/examples/ExceptionDemo/CMakeLists.txt
    M llvm/examples/HowToUseLLJIT/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter1/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter2/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter4/CMakeLists.txt
    M llvm/examples/Kaleidoscope/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter4/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter5/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter6/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter7/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter8/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter9/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITDumpObjects/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITRemovableCode/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithCustomObjectLinkingLayer/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithExecutorProcessControl/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithGDBRegistrationListener/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithInitializers/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithLazyReexports/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithObjectCache/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithObjectLinkingLayerPlugin/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithOptimizingIRTransform/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithRemoteDebugging/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithThinLTOSummaries/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsAddObjectFile/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsBasicUsage/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsDumpObjects/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsIRTransforms/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsLazy/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsRemovableCode/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsVeryLazy/CMakeLists.txt
    M llvm/tools/bugpoint/CMakeLists.txt
    M llvm/tools/llc/CMakeLists.txt
    M llvm/tools/lli/CMakeLists.txt
    M llvm/tools/lli/ChildTarget/CMakeLists.txt
    M llvm/tools/llvm-jitlink/CMakeLists.txt
    M llvm/tools/llvm-jitlink/llvm-jitlink-executor/CMakeLists.txt
    M llvm/tools/llvm-lto2/CMakeLists.txt
    M llvm/tools/opt/CMakeLists.txt
    M llvm/unittests/Analysis/CMakeLists.txt
    M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
    M llvm/unittests/Passes/Plugins/CMakeLists.txt
    M llvm/unittests/Support/DynamicLibrary/CMakeLists.txt
    M mlir/tools/mlir-cpu-runner/CMakeLists.txt
    M mlir/tools/mlir-opt/CMakeLists.txt

  Log Message:
  -----------
  Reapply "[CMake] Fold export_executable_symbols_* into function args. (#101741)" (#102138)

Fix the builds with LLVM_TOOL_LLVM_DRIVER_BUILD enabled.

LLVM_ENABLE_EXPORTED_SYMBOLS_IN_EXECUTABLES is not completely
compatible with export_executable_symbols as the later will be ignored
if the previous is set to NO.

Fix the issue by passing if symbols need to be exported to
llvm_add_exectuable so the link flag can be determined directly
without calling export_executable_symbols_* later.


  Commit: ad8a2e4ed40ff97e70dec0d044058b47ce90a12f
      https://github.com/llvm/llvm-project/commit/ad8a2e4ed40ff97e70dec0d044058b47ce90a12f
  Author: John McIver <john.mciver.iii at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/addsub.ll
    M llvm/test/Transforms/SLPVectorizer/X86/fmuladd.ll

  Log Message:
  -----------
  [SLP][NFC] Add freeze instruction tests for upcoming support (#102215)


  Commit: a0ed7d6c5fa1438983ee2c1ad25fbb53644d5eba
      https://github.com/llvm/llvm-project/commit/a0ed7d6c5fa1438983ee2c1ad25fbb53644d5eba
  Author: SpencerAbson <Spencer.Abson at arm.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/arm_sve.td
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_clamp.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_max.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_maxnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_min.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_minnm.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfadd.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfclamp.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmax.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmaxnm.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmin.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfminnm.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmla.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmla_lane.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmls.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmls_lane.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmul.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmul_lane.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfsub.c
    M clang/test/Driver/print-supported-extensions-aarch64.c
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_b16b16.cpp
    A clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_b16b16.cpp
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-max.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-min.ll
    M llvm/test/CodeGen/AArch64/sve2-min-max-clamp.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfadd.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfclamp.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmax.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmaxnm.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmin.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfminnm.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmla.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmla_lane.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmls.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmls_lane.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmul.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmul_lane.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfsub.ll
    M llvm/test/MC/AArch64/SME2/bfclamp-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfclamp.s
    M llvm/test/MC/AArch64/SME2/bfmax-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfmax.s
    M llvm/test/MC/AArch64/SME2/bfmaxnm-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfmaxnm.s
    M llvm/test/MC/AArch64/SME2/bfmin-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfmin.s
    M llvm/test/MC/AArch64/SME2/bfminnm-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfminnm.s
    M llvm/test/MC/AArch64/SME2p1/directive-arch-negative.s
    M llvm/test/MC/AArch64/SME2p1/directive-arch.s
    M llvm/test/MC/AArch64/SME2p1/directive-arch_extension-negative.s
    M llvm/test/MC/AArch64/SME2p1/directive-arch_extension.s
    M llvm/test/MC/AArch64/SVE2p1/bfadd-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfadd.s
    M llvm/test/MC/AArch64/SVE2p1/bfclamp-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfclamp.s
    M llvm/test/MC/AArch64/SVE2p1/bfmax-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfmax.s
    M llvm/test/MC/AArch64/SVE2p1/bfmaxnm-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfmaxnm.s
    M llvm/test/MC/AArch64/SVE2p1/bfmin-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfmin.s
    M llvm/test/MC/AArch64/SVE2p1/bfminnm-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfminnm.s
    M llvm/test/MC/AArch64/SVE2p1/bfmla-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfmla.s
    M llvm/test/MC/AArch64/SVE2p1/bfmls-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfmls.s
    M llvm/test/MC/AArch64/SVE2p1/bfmul-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfmul.s
    M llvm/test/MC/AArch64/SVE2p1/bfsub-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfsub.s
    M llvm/test/MC/AArch64/SVE2p1/directive-arch-negative.s
    M llvm/test/MC/AArch64/SVE2p1/directive-arch.s
    M llvm/test/MC/AArch64/SVE2p1/directive-arch_extension-negative.s
    M llvm/test/MC/AArch64/SVE2p1/directive-arch_extension.s
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [AArch64] Add updated FEAT_SVE_B16B16 and begin replacement of 'b16b16' flag (#101480)

This patch adds FeatureSVEB16B16 to the AArch64 backend in order to
represent the new behavior of FEAT_SVE_B16B16 (as described in the
latest [Armv9.4 extensions
documentation](https://developer.arm.com/documentation/109697/0100/Feature-descriptions/The-Armv9-4-architecture-extension?lang=en#md461-the-armv94-architecture-extension__FEAT_SVE_B16B16))
as well as a 'sve-b16b16' flag to enable it.

The predication of non-widening SVE BFloat16 instructions has changed to
require this feature, instead of the previously required and
soon-to-be-removed FeatureB16B16 which is enabled by the 'b16b16' flag.
Therefore, this change weakens the 'b16b16' flag in favour of
'sve-b16b16'. Existing tests that are effected by this have been
modified to use and/or expect 'sve-b16b16', and new tests have been
added to verify the behavior and implementation of 'sve-b16b16'.

This patch is in response to the response to the following changes.

The architecture features previously enabled by FEAT_SVE_B16B16 have
been relaxed such that it now implements:
      - With FEAT_SVE2 : SVE non-widening BFloat16 instructions in
Non-streaming SVE mode
      - With FEAT_SME2: SVE non-widening BFloat16 instructions when the
PE is in Streaming SVE mode and SME
        Z-targeting multi-vector non-widening BFloat16 instructions.
      - **It no longer implements** SME ZA-targeting non-widening
BFloat16 instructions.   

The SME ZA-targeting non-widening BFloat16 instructions are implemented
by the new FEAT_SME_B16B16, **this patch does not change how this
architecture feature is enabled** ('+b16b16+sme2'). Only those that are
implemented by FEAT_SVE_B16B16 have been changed to require 'sve-b16b16'
instead of 'b16b16'.

New flags must be created to represent FEAT_SVE_B16B16 and
FEAT_SME_B16B16:
      - 'sve-b16b16' enables the updated FEAT_SVE_B16B16 (described
here)
      - 'sme-b16b16' will enable the new FEAT_SME_B16B16
      - **This patch includes 'sve-b16b16' only**
   
A future patch will add 'sme-b16b16', SME ZA-targeting non-widening
BFloat16 instructions would then be guarded by '+sme-b16b16+sme2', and
'b16b16' can be removed.


  Commit: 62e894e0d76369c2a21ecd5aa88cb20bba1712af
      https://github.com/llvm/llvm-project/commit/62e894e0d76369c2a21ecd5aa88cb20bba1712af
  Author: Sayhaan Siddiqui <49014204+sayhaan at users.noreply.github.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Rewrite/MachORewriteInstance.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/unittests/Core/BinaryContext.cpp
    M bolt/unittests/Core/MCPlusBuilder.cpp

  Log Message:
  -----------
  [BOLT][DWARF][NFC] Move Arch assignment out of createBinaryContext (#102054)

Moves the assignment of Arch out of createBinaryContext to prevent data
races when parallelized.


  Commit: 445023f1739d3764f1dae6e6b7b0602328198a1e
      https://github.com/llvm/llvm-project/commit/445023f1739d3764f1dae6e6b7b0602328198a1e
  Author: Vladislav Khmelevsky <och95 at yandex.ru>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M bolt/lib/Rewrite/BinaryPassManager.cpp

  Log Message:
  -----------
  Revert "[BOLT] Move ADRRelaxationPass (#101371)" (#102333)

This reverts commit 750b12f06badc4cdf767139c70090db62358bb44.
The pass should run after splitting phase, but before nop removal


  Commit: 961639962251de7428c3fe93fa17cfa6ab3c561a
      https://github.com/llvm/llvm-project/commit/961639962251de7428c3fe93fa17cfa6ab3c561a
  Author: Ian Anderson <iana at apple.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Darwin.cpp
    A clang/test/Driver/Inputs/DriverKit23.0.sdk/SDKSettings.json
    A clang/test/Driver/Inputs/MacOSX15.0.sdk/SDKSettings.json
    R clang/test/Driver/Inputs/MacOSX99.0.sdk/SDKSettings.json
    M clang/test/Driver/darwin-builtin-modules.c

  Log Message:
  -----------
  [clang][modules] Enable built-in modules for the upcoming Apple releases (#102239)

The upcoming Apple SDK releases will support the clang built-in headers
being in the clang built-in modules: stop passing
-fbuiltin-headers-in-system-modules for those SDK versions.


  Commit: 704f3034b2346ca70cdea1e33366530c82edd607
      https://github.com/llvm/llvm-project/commit/704f3034b2346ca70cdea1e33366530c82edd607
  Author: Jun Wang <jwang86 at yahoo.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-copy.mir

  Log Message:
  -----------
  [AMDGPU] Set register bank for i1 register copies (#96155)

Set register bank in copies between a physical register and a virtual
register of s1 type.
---------

Co-authored-by: Jun Wang <jun.wang7 at amd.com>


  Commit: 64510c1411aff754e1b92659987846aba3a14d53
      https://github.com/llvm/llvm-project/commit/64510c1411aff754e1b92659987846aba3a14d53
  Author: Lei Huang <lei at ca.ibm.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsPPC.def
    M clang/lib/Basic/Targets/PPC.cpp
    M clang/lib/Sema/SemaPPC.cpp
    A clang/test/CodeGen/PowerPC/builtins-bcd-assist.c
    A clang/test/CodeGen/PowerPC/builtins-ppc-bcd-assist.c
    M llvm/include/llvm/IR/IntrinsicsPowerPC.td
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    A llvm/test/CodeGen/PowerPC/builtins-bcd-assist.ll
    A llvm/test/CodeGen/PowerPC/builtins-ppc-bcd-assist.ll

  Log Message:
  -----------
  [PPC] Implement BCD assist builtins (#101390)

Implement BCD assist builtins for XL and GCC compatibility.

GCC compat:
```
unsigned int __builtin_cdtbcd (unsigned int);
unsigned int __builtin_cbcdtd (unsigned int);
unsigned int __builtin_addg6s (unsigned int, unsigned int);
```

64BIT XL compat:
```
long long __cdtbcd (long long); 
long long __cbcdtd (long long); 
long long __addg6s (long long source1, long long source2)
```


  Commit: 6f8e8faa12daaf4dfd80039ccdeccda68e99850b
      https://github.com/llvm/llvm-project/commit/6f8e8faa12daaf4dfd80039ccdeccda68e99850b
  Author: cceerczw <chengzhiwei6 at huawei.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    A llvm/test/CodeGen/AArch64/emutls_alias.ll

  Log Message:
  -----------
  [TargetLowering] Fix the problem of emulated-TLS implementation witho… (#101490)

For a __thread variable x, when emulated TLS is enabled and there is an
access to x, the compiler first looks up the symbol __emutls_v.x within
the module. However, the issue arises with an alias y of x, the compiler
still tries to look up __emutls_v.y instead of __emutls_v.x. As a
result, the lookup returns a nullptr, causing the compiler to crash. The
purpose of this MR (Merge Request) is to ensure that in emulated TLS,
before checking __emutls_v.y, the compiler first identifies which global
value y is an alias of.


  Commit: f7b2c2e49fe524dd7920af0236c9da79fa0cac57
      https://github.com/llvm/llvm-project/commit/f7b2c2e49fe524dd7920af0236c9da79fa0cac57
  Author: arsnyder16 <arsnyder16 at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M openmp/runtime/src/kmp_os.h
    M openmp/runtime/src/kmp_platform.h
    M openmp/runtime/src/z_Linux_asm.S

  Log Message:
  -----------
  [openmp][WebAssembly] Allow openmp to compile and run under emscripten toolchain  (#95169)

* Separate wasi and emscripten as they have different constraints and
abilities
* Emscripten mimics Linux/POSIX by statically linking the musl runtime.
This allow nearly all KMP_OS_LINUX code paths to work correctly. There
are only a few places that need to be adjusted related to dynamic
linking (dl_open)
* Internally link openmp globals
* With CommonLinkage it is needed to emit them in an assembly file, now
they are defined and used within each compilation unit
* With ExternalLinkage they suffer from duplicate symbols during linking
for unnamed globals like reduction/critical
   * Interestingly this aligns with the TODO comment above this code


  Commit: 04e7eaf91f3e9b6830feb2e08bb5b0ddb14c3174
      https://github.com/llvm/llvm-project/commit/04e7eaf91f3e9b6830feb2e08bb5b0ddb14c3174
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir

  Log Message:
  -----------
  AMDGPU: Add more baseline tests for eliminateFrameIndex


  Commit: 585523750e2bbe374d1cb3bf4ff9d53de29b9593
      https://github.com/llvm/llvm-project/commit/585523750e2bbe374d1cb3bf4ff9d53de29b9593
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M lldb/source/API/SBStructuredData.cpp
    M lldb/test/API/python_api/sbstructureddata/TestStructuredDataAPI.py

  Log Message:
  -----------
  [lldb/API] Fix SBStructuredData support any JSON type (#101929)

This patch loosen the parsing requirement to allow parsing not only
JSON dictionaries but also valid JSON type (integer, float, string,
bool, array, null).

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: dbbf0762b6ee9611d80ba94fdbe3968b228b527a
      https://github.com/llvm/llvm-project/commit/dbbf0762b6ee9611d80ba94fdbe3968b228b527a
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    A llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/lib/Analysis/CMakeLists.txt
    A llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    A llvm/test/Analysis/CtxProfAnalysis/load.ll

  Log Message:
  -----------
  [ctx_prof] CtxProfAnalysis (#102084)

This is an immutable analysis that loads and makes the contextual profile available to other passes. This patch introduces the analysis and an analysis printer pass. Subsequent patches will introduce the APIs that IPO passes will call to modify the profile as result of their changes.


  Commit: fde7715f55eba6142360ca8eb5183dc74850970e
      https://github.com/llvm/llvm-project/commit/fde7715f55eba6142360ca8eb5183dc74850970e
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn

  Log Message:
  -----------
  [gn build] Port dbbf0762b6ee


  Commit: dd741fc1b1a2a809bedc71a704a6d702c3bc7c8a
      https://github.com/llvm/llvm-project/commit/dd741fc1b1a2a809bedc71a704a6d702c3bc7c8a
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/lib/scudo/standalone/mem_map_base.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/release.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/scudo/standalone/tests/common_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/map_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/memtag_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/strings_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/vector_test.cpp
    M compiler-rt/lib/scudo/standalone/vector.h

  Log Message:
  -----------
  [scudo][NFC] Add a default unmap() to unmap all pages (#102234)


  Commit: 8ccd4208bbea3f53b3335bd19f13fc11cbe3d7ba
      https://github.com/llvm/llvm-project/commit/8ccd4208bbea3f53b3335bd19f13fc11cbe3d7ba
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/test/Analysis/CtxProfAnalysis/load.ll

  Log Message:
  -----------
  Fix post #102084: restrict to linux to avoid formatting diffs.


  Commit: 172ccfeeb4a037f2f5e42aafd597f0f019ad6fc0
      https://github.com/llvm/llvm-project/commit/172ccfeeb4a037f2f5e42aafd597f0f019ad6fc0
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Support/Windows/WindowsSupport.h

  Log Message:
  -----------
  [Support] [Windows] Stop redefining _WIN32_IE (#102307)

This was added in 181fd8cd89ff97fe654fabbb2032e0ad6607b4d0, where the
shlobj.h header was taken into use. The shlobj.h header does have some
APIs conditionally visible based on the _WIN32_IE define, but none of
the calls added in that commit seem to need any specific version.

fd6cb64c4891301648e5ab814afdafa118977c3d and
6b129bd464831194da957b3462d7ddd27a0b2a08 further bumped the version it
is set to, while the latter also added a FIXME to check whether it still
is needed.

It doesn't seem to be needed currently; the code currently builds fine
without this define, both with mingw-w64 and MSVC.

Additionally, to show that the value of _WIN32_IE doesn't seem to be
relevant to our builds these days - if the current define is changed to
hardcode _WIN32_IE to an ancient value like 0x0400, our code still
builds fine, both with mingw-w64 and MSVC. Therefore, overriding this
define no longer seem to be relevant.


  Commit: bb82c79d3b6b3c062890c2cb01fcb183d4f50d27
      https://github.com/llvm/llvm-project/commit/bb82c79d3b6b3c062890c2cb01fcb183d4f50d27
  Author: John McIver <john.mciver.iii at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/addsub.ll
    M llvm/test/Transforms/SLPVectorizer/X86/fmuladd.ll

  Log Message:
  -----------
  [SLP] Enable optimization of freeze instructions (#102217)

Allow SLP optimization to progress in the presence of freeze
instructions. Prior
to this commit, freeze instructions blocked SLP optimization.
    
The following URL shows correctness of the addsub_freeze test:
https://alive2.llvm.org/ce/z/qm38oh


  Commit: ca7368d839c1b067bbb30b4c91dc4d5f79d30bda
      https://github.com/llvm/llvm-project/commit/ca7368d839c1b067bbb30b4c91dc4d5f79d30bda
  Author: Jinsong Ji <jinsong.ji at intel.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Target/TargetSelectionDAG.td

  Log Message:
  -----------
  TargetSelectionDAG: Add missing atomic fp opd classes (#102269)

The defs are missing after 5c9352eb0258d .


  Commit: 72b73e23b6c36537db730ebea00f92798108a6e5
      https://github.com/llvm/llvm-project/commit/72b73e23b6c36537db730ebea00f92798108a6e5
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/test/Driver/ftime-trace-sections.py
    M llvm/lib/IR/LegacyPassManager.cpp
    M llvm/lib/Passes/CMakeLists.txt
    M llvm/lib/Passes/StandardInstrumentations.cpp
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  Revert "demangle function names in trace files (#87626)"

This reverts commit 0fa20c55b58deb94090985a5c5ffda4d5ceb3cd1.

Storing raw symbol names is generally preferred in profile files.
Demangling might lose information. Language frontends might use
demangling schemes not supported by LLVMDemangle
(https://github.com/llvm/llvm-project/issues/45901#issuecomment-2008686663).
In addition, calling `demangle` for each function has a significant
performance overhead (#102222).

I believe that even if we decide to provide a producer-side demangling,
it would not be on by default.

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


  Commit: 863a2ed440bbeaade37a01c9480eaf9cfbd0a6d2
      https://github.com/llvm/llvm-project/commit/863a2ed440bbeaade37a01c9480eaf9cfbd0a6d2
  Author: Angel Zhang <angel.zhang at amd.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/GPU/CMakeLists.txt
    A mlir/lib/Dialect/GPU/Transforms/DecomposeMemRefs.cpp
    R mlir/lib/Dialect/GPU/Transforms/DecomposeMemrefs.cpp
    A mlir/test/Integration/Dialect/MemRef/cast-runtime-verification.mlir
    A mlir/test/Integration/Dialect/MemRef/load-runtime-verification.mlir
    A mlir/test/Integration/Dialect/MemRef/memref_abi.c
    A mlir/test/Integration/Dialect/MemRef/print-memref.mlir
    A mlir/test/Integration/Dialect/MemRef/reinterpret-cast-runtime-verification.mlir
    A mlir/test/Integration/Dialect/MemRef/subview-runtime-verification.mlir
    A mlir/test/Integration/Dialect/MemRef/verify-memref.mlir
    R mlir/test/Integration/Dialect/Memref/cast-runtime-verification.mlir
    R mlir/test/Integration/Dialect/Memref/load-runtime-verification.mlir
    R mlir/test/Integration/Dialect/Memref/memref_abi.c
    R mlir/test/Integration/Dialect/Memref/print-memref.mlir
    R mlir/test/Integration/Dialect/Memref/reinterpret-cast-runtime-verification.mlir
    R mlir/test/Integration/Dialect/Memref/subview-runtime-verification.mlir
    R mlir/test/Integration/Dialect/Memref/verify-memref.mlir

  Log Message:
  -----------
  [mlir][memref] Rename `MemRef` directories and files. NFC. (#102337)

This PR renames the `MemRef` integration test directory for and the
`DecomposeMemref.s.cpp` so that they can be found when doing a
case-sensitive search on file paths.


  Commit: 5fb20024e2eaef39d631f63fa82200bf55399090
      https://github.com/llvm/llvm-project/commit/5fb20024e2eaef39d631f63fa82200bf55399090
  Author: yingopq <115543042+yingopq at users.noreply.github.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    A llvm/test/CodeGen/Mips/llvm-ir/and-srl.ll

  Log Message:
  -----------
  [Mips] Add test for AND optimization (#102278)

See https://github.com/llvm/llvm-project/issues/42826


  Commit: 07ddf19438d20f0b9c5131288d278a5c786e662d
      https://github.com/llvm/llvm-project/commit/07ddf19438d20f0b9c5131288d278a5c786e662d
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/docs/CommandGuide/clang.rst
    M clang/include/clang/Driver/Options.td

  Log Message:
  -----------
  [clang][docs] Update Include Options Help (#101192)

This adds HelpTexts for some clang options that relate to include
directory handling, to sync them up with what's in clang.rst (and
therefore the man page).


  Commit: 2c74237c0fa5b5289b98c17209f4319b24406e08
      https://github.com/llvm/llvm-project/commit/2c74237c0fa5b5289b98c17209f4319b24406e08
  Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/darwin/x86_64/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/newhdrgen/yaml/math.yaml
    M libc/spec/llvm_libc_ext.td
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    A libc/src/math/fsub.h
    A libc/src/math/fsubf128.h
    A libc/src/math/fsubl.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/fsub.cpp
    A libc/src/math/generic/fsubf128.cpp
    A libc/src/math/generic/fsubl.cpp
    A libc/src/math/generic/remainderf128.cpp
    A libc/src/math/remainderf128.h
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/fsub_test.cpp
    A libc/test/src/math/fsubl_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/fsub_test.cpp
    A libc/test/src/math/smoke/fsubf128_test.cpp
    A libc/test/src/math/smoke/fsubl_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add fsub{,l,f128} and remainderf128 C23 math functions (#101576)

Co-authored-by: OverMighty <its.overmighty at gmail.com>


  Commit: 0f1361baf650641a59aaa1710d7a0b7b02f2e56d
      https://github.com/llvm/llvm-project/commit/0f1361baf650641a59aaa1710d7a0b7b02f2e56d
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Darwin.cpp

  Log Message:
  -----------
  [Driver] Fix a warning

This patch fixes:

  clang/lib/Driver/ToolChains/Darwin.cpp:2937:3: error: default label
  in switch which covers all enumeration values
  [-Werror,-Wcovered-switch-default]


  Commit: 4974257bad6126264ed0100f4eb1ca9f1e709551
      https://github.com/llvm/llvm-project/commit/4974257bad6126264ed0100f4eb1ca9f1e709551
  Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libc/spec/stdc.td

  Log Message:
  -----------
  [libc][math] fixing build broke for remainderf128 (#102362)


  Commit: 6a3604ef8592edf39fedd6af8100aefafd6d931d
      https://github.com/llvm/llvm-project/commit/6a3604ef8592edf39fedd6af8100aefafd6d931d
  Author: Peter Rong <peterrong96 at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M lld/MachO/Driver.cpp
    M lld/test/MachO/objc-category-conflicts.s
    M lld/test/MachO/objc-category-merging-complete-test.s
    M lld/test/MachO/objc-category-merging-erase-objc-name-test.s
    M lld/test/MachO/objc-category-merging-minimal.s
    M lld/test/MachO/objc-relative-method-lists-simple.s

  Log Message:
  -----------
  [LLD, MachO] Default objc_relative_method_lists on MacOS11+/iOS14+ (#101360)

This patch makes `objc_relative_method_lists` default on MacOS 11+ / iOS
14+. Manual override still work if command line argument is provided.

To test this change, many explicit arguments are removed from the test
files. Some explicit `no_objc_relative...` are also added for tests that
don't support this yet.

Signed-off-by: Peter Rong <PeterRong at meta.com>


  Commit: 2d95dee0c06687814eeb5c883e305a7197e26a95
      https://github.com/llvm/llvm-project/commit/2d95dee0c06687814eeb5c883e305a7197e26a95
  Author: RoseZhang03 <rosezhang at google.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libc/fuzzing/math/cos_fuzz.cpp
    M libc/fuzzing/math/sin_fuzz.cpp
    M libc/fuzzing/math/tan_fuzz.cpp

  Log Message:
  -----------
  [libc] math fuzzing MPFR include statement (#102358)

Updated the include statement for MPFR


  Commit: da140bc1e3be4dfd49e17c2f4cc496ae75ff8693
      https://github.com/llvm/llvm-project/commit/da140bc1e3be4dfd49e17c2f4cc496ae75ff8693
  Author: Rose <gfunni234 at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/saturating-add-sub.ll

  Log Message:
  -----------
  [InstCombine] Pre-commit tests for #100008 (NFC)


  Commit: ede49fa5f3f32796618a71880038e2564c9d4db9
      https://github.com/llvm/llvm-project/commit/ede49fa5f3f32796618a71880038e2564c9d4db9
  Author: Rose <gfunni234 at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/saturating-add-sub.ll

  Log Message:
  -----------
  [InstCombine] Canonicalize more saturated-add variants (#100008)

LLVM is not evaluating X u > C, a, b the same way it evaluates X <= C, b, a.

To fix this, let's move the folds to after the canonicalization of -1 to TrueVal.

Let's allow splat vectors with poison elements to be recognized too!

Finally, for completion, handle the one case that isn't caught by the above checks because it is canonicalized to eq:
X == -1 ? -1 : X + 1 -> uadd.sat(X, 1)

Alive2 Proof:
https://alive2.llvm.org/ce/z/WEcgYH


  Commit: 82c2259aeb87f5cb418decfb6a1961287055e5d2
      https://github.com/llvm/llvm-project/commit/82c2259aeb87f5cb418decfb6a1961287055e5d2
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M .github/workflows/release-tasks.yml

  Log Message:
  -----------
  workflows: Fix permissions for release-sources job (#100750)

For reusable workflows, the called workflow cannot upgrade it's
permissions, and since the default permission is none, we need to
explicitly declare 'contents: read' when calling the release-sources
workflow.

Fixes the error:
The workflow is requesting 'contents: read', but is only allowed
'contents: none'.


  Commit: 0ac9a659009d2090de57b04dae06e9c8c5fcb831
      https://github.com/llvm/llvm-project/commit/0ac9a659009d2090de57b04dae06e9c8c5fcb831
  Author: Sylvestre Ledru <sylvestre at debian.org>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/darwin/x86_64/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/newhdrgen/yaml/math.yaml
    M libc/spec/llvm_libc_ext.td
    M libc/spec/stdc.td
    M libc/test/src/math/smoke/CMakeLists.txt

  Log Message:
  -----------
  libc: remove trailing whitespaces


  Commit: 3210bce90f8678d52ea67f812bfe81d1c9de7597
      https://github.com/llvm/llvm-project/commit/3210bce90f8678d52ea67f812bfe81d1c9de7597
  Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libc/spec/llvm_libc_ext.td

  Log Message:
  -----------
  [libc][math] updated functionspec subf128 (#102372)


  Commit: b3b6f7cb0b31468078368f77118ab267b43d8628
      https://github.com/llvm/llvm-project/commit/b3b6f7cb0b31468078368f77118ab267b43d8628
  Author: Peter Rong <PeterRong at meta.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M lld/MachO/Driver.cpp

  Log Message:
  -----------
  [MachO] using std::size_t to fix build errors on arm-ubuntu

Fix build failure introduced by commit 6a3604ef8592edf39fedd6af8100aefafd6d931d

Signed-off-by: Peter Rong <PeterRong at meta.com>


  Commit: cb5dc1faa8b3702e0d03426ee5dfc5e1b903ec47
      https://github.com/llvm/llvm-project/commit/cb5dc1faa8b3702e0d03426ee5dfc5e1b903ec47
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/include/llvm/DebugInfo/GSYM/FunctionInfo.h
    M llvm/include/llvm/DebugInfo/GSYM/GsymCreator.h
    M llvm/include/llvm/DebugInfo/GSYM/GsymReader.h
    A llvm/include/llvm/DebugInfo/GSYM/MergedFunctionsInfo.h
    M llvm/lib/DebugInfo/GSYM/CMakeLists.txt
    M llvm/lib/DebugInfo/GSYM/FunctionInfo.cpp
    M llvm/lib/DebugInfo/GSYM/GsymCreator.cpp
    M llvm/lib/DebugInfo/GSYM/GsymReader.cpp
    A llvm/lib/DebugInfo/GSYM/MergedFunctionsInfo.cpp
    A llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-merged-funcs-dwarf.yaml
    M llvm/tools/llvm-gsymutil/Opts.td
    M llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp

  Log Message:
  -----------
  [gSYM] Add support merged functions in gSYM format (#101604)

This patch introduces support for storing debug info for merged
functions in the GSYM debug info. It allows GSYM to represent multiple
functions that share the same address range, which occur when multiple
functions are merged during linker ICF.

The core of this functionality is the new `MergedFunctionsInfo` class,
which is integrated into the existing `FunctionInfo` structure. During
GSYM creation, functions with identical address ranges are now grouped
together, with one function serving as the "master" and the others
becoming "merged" functions. This organization is preserved in the GSYM
format and can be read back and displayed when dumping GSYM information.

Old readers will only see the master function, and ther "merged"
functions will not be processed.

Note: This patch just adds the functionality to the gSYM format -
additional changes to the gsym format and algorithmic changes to logic
existing tooling are needed to take advantage of this data.

Exact output of `llvm-gsymutil --verify --verbose` for the included
test:
[gist](https://gist.github.com/alx32/b9c104d7f87c0b3e7b4171399fc2dca3)


  Commit: cece4ba5c2eebac414ad4d1028c3220e79403a7a
      https://github.com/llvm/llvm-project/commit/cece4ba5c2eebac414ad4d1028c3220e79403a7a
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/DebugInfo/GSYM/BUILD.gn

  Log Message:
  -----------
  [gn build] Port cb5dc1faa8b3


  Commit: cf416e0a1bd1b3ff6edc662116295f6fffe24be0
      https://github.com/llvm/llvm-project/commit/cf416e0a1bd1b3ff6edc662116295f6fffe24be0
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/limits.h
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc] Use proxy headers for `limits.h` values (#102378)

Summary:
This defines some constants that may conflict with the system when in
overlay mode. Use the proxy header instead.

Fixes: https://github.com/llvm/llvm-project/issues/102368


  Commit: aeb1989bb585e216a13fddeaf28887bdf8623075
      https://github.com/llvm/llvm-project/commit/aeb1989bb585e216a13fddeaf28887bdf8623075
  Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M lldb/include/lldb/API/SBDefines.h
    M lldb/include/lldb/lldb-types.h

  Log Message:
  -----------
  [lldb] Fully namespace SBType callback function parameters (#102375)

This commit fully namespaces callback function pointer parameters that
are SB types in `SBDefines` and `lldb-types`. We have a clang-based tool
that reads these headers and it would benefit from having the parameters
being fully namespaced here.


  Commit: c178fea62d3999acd42f3ddfcc8bd436b574cfed
      https://github.com/llvm/llvm-project/commit/c178fea62d3999acd42f3ddfcc8bd436b574cfed
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/unittests/Symbol/TestTypeSystemClang.cpp

  Log Message:
  -----------
  [lldb][TypeSystemClang][NFC] Remove redundant parameter to CreateObjCClass

This parameter used to be passed down to
`clang::ObjCInterfaceDecl::Create`. But that
parameter was removed in `dc9166c8e1120dc0df1859ba6e3d457a458fd20f`.
In LLDB the `isForwardDecl` stopped being used when it was
synced against Clang in `5b26f27f465676684f9440f02ac4e84a252f5bbb`.


  Commit: 34157f694ce45cd3bf14c8494e7581bfd2a9b4d2
      https://github.com/llvm/llvm-project/commit/34157f694ce45cd3bf14c8494e7581bfd2a9b4d2
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-08 (Thu, 08 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/ARM/machine-outliner-unoutlinable.mir

  Log Message:
  -----------
  [ARM] Fix operand order of tBLXr in a test (NFC) (#102312)

The $noreg should be a part of `pred` complex operand.


  Commit: e4104c0eeaaeb739298e865e007b9428d5fcb6c2
      https://github.com/llvm/llvm-project/commit/e4104c0eeaaeb739298e865e007b9428d5fcb6c2
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-08 (Thu, 08 Aug 2024)

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

  Log Message:
  -----------
  [DataLayout] Remove deprecated method (#101495)

The method has been deprecated for a year and a half now.


  Commit: 4cad17de794ccd186d50ff669e78215eccecaaa7
      https://github.com/llvm/llvm-project/commit/4cad17de794ccd186d50ff669e78215eccecaaa7
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M compiler-rt/lib/dfsan/dfsan.cpp
    M compiler-rt/lib/dfsan/dfsan_allocator.cpp
    M compiler-rt/lib/dfsan/dfsan_new_delete.cpp

  Log Message:
  -----------
  [DFSan] [compiler-rt] leave BufferedStackTrace uninit

Otherwise we have to memset 2040 bytes (255 * 8) for each call

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


  Commit: aacd1afa1ed2a72464cab8586edadbcd2c6bb47c
      https://github.com/llvm/llvm-project/commit/aacd1afa1ed2a72464cab8586edadbcd2c6bb47c
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M compiler-rt/lib/ubsan/ubsan_diag.cpp
    M compiler-rt/lib/ubsan/ubsan_diag_standalone.cpp

  Log Message:
  -----------
  [compiler-rt] [UBSan] leave BufferedStackTrace uninit

Otherwise we have to memset 2040 bytes (255 * 8) for each call

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


  Commit: 76248da8af6cf4b5968e79452e5fef9f5eaaafa5
      https://github.com/llvm/llvm-project/commit/76248da8af6cf4b5968e79452e5fef9f5eaaafa5
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M compiler-rt/lib/nsan/nsan.cpp

  Log Message:
  -----------
  [compiler-rt] [NSan] leave BufferedStackTrace uninit

Otherwise we have to memset 2040 bytes (255 * 8) for each call

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


  Commit: 21648d3228370fb6ca1838c084f7c6ced6df4307
      https://github.com/llvm/llvm-project/commit/21648d3228370fb6ca1838c084f7c6ced6df4307
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M compiler-rt/lib/tsan/dd/dd_rtl.cpp

  Log Message:
  -----------
  [compiler-rt] [TSan] leave BufferedStackTrace uninit

Otherwise we have to memset 2040 bytes (255 * 8) for each call

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


  Commit: 930ca768570fbe8789046a89478c995eb717c7c6
      https://github.com/llvm/llvm-project/commit/930ca768570fbe8789046a89478c995eb717c7c6
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M compiler-rt/lib/memprof/memprof_stack.h

  Log Message:
  -----------
  [compiler-rt] [Memprof] leave BufferedStackTrace uninit

Otherwise we have to memset 2040 bytes (255 * 8) for each call

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


  Commit: 5e5cce5643bdfdb27faf9cb48f75a3f2afe0993e
      https://github.com/llvm/llvm-project/commit/5e5cce5643bdfdb27faf9cb48f75a3f2afe0993e
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M compiler-rt/lib/asan/tests/asan_noinst_test.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_stacktrace_test.cpp

  Log Message:
  -----------
  [NFC] [sanitizers] leave BufferedStackTrace uninit in tests

This is for consistency with the production code

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


  Commit: 89c8d68eb71d6881fde21e49faa38e2b4a7d7233
      https://github.com/llvm/llvm-project/commit/89c8d68eb71d6881fde21e49faa38e2b4a7d7233
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_posix.h
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp

  Log Message:
  -----------
  [NFC] Fix typo in `REAL(pthread_join(th, ret))` (#102393)

Looks like the macro expands to the same,
but usually we do `REAL(pthread_join)(th, ret)`.


  Commit: e9c9fde3b766fd2c3904523a9be5e982ce56a825
      https://github.com/llvm/llvm-project/commit/e9c9fde3b766fd2c3904523a9be5e982ce56a825
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/secondary.h

  Log Message:
  -----------
  [scudo] Avoid accessing inaccessible pages in unmap() in secondary (#102367)


  Commit: 1cbcf74083e92021472ec9644b88418f377ce550
      https://github.com/llvm/llvm-project/commit/1cbcf74083e92021472ec9644b88418f377ce550
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M lldb/include/lldb/Utility/XcodeSDK.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M lldb/source/Utility/XcodeSDK.cpp

  Log Message:
  -----------
  [lldb][ClangExpressionParser] Set BuiltinHeadersInSystemModules depending on SDK version (#102309)

This patch changes the way we initialize `BuiltinHeadersInSystemModules`
which is one of the flags controlling Clang's behaviour when the Darwin
module is split into more fine-grained modules. The
ClangExpressionParser currently unconditionally sets
`-fbuiltin-headers-in-system-modules` when evaluating expressions with
the `target.import-std-module` setting. This flag should, however, be
set depending on the SDK version (which is what the Clang Darwin
toolchain does).

Unfortunately, the compiler instance that we create with
`ClangExpressionParser` never consults the Clang driver, and thus
doesn't correctly infer `BuiltinHeadersInSystemModules`. Note, this
isn't an issue with the `CompilerInstance` that the
`ClangModulesDeclVendor` creates because it uses the `createInovcation`
API, which calls into `Darwin::addClangTargetOptions`.

This patch mimicks how `sdkSupportsBuiltinModules` is used in
`Darwin::addClangTargetOptions`.

This ensures that the `import-std-module` API tests run cleanly
regardless of SDK version.

The plan is to eventually make the `CompilerInstance` construction in
`ClangExpressionParser` go through the driver, so we can avoid
duplicating the logic in LLDB. But we aren't there yet.

**Implementation**
* We look for the `SDKSettings.json` in the sysroot directory that we
found in DWARF (via `DW_AT_LLVM_sysroot`)
* Then parse this file and extract the SDK version number out of it
* Then mimick `sdkSupportsBuiltinModules` from `Toolchains/Darwin.cpp`
and set `BuiltinHeadersInSystemModules` based on it

rdar://116490281


  Commit: 8ce5a32f0221b301e4a74c2263d9cbd240114ee0
      https://github.com/llvm/llvm-project/commit/8ce5a32f0221b301e4a74c2263d9cbd240114ee0
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-08 (Thu, 08 Aug 2024)

  Changed paths:
    M llvm/include/llvm/TableGen/Record.h
    A llvm/test/TableGen/ProcessorUniqueNames.td
    M llvm/test/TableGen/SubtargetFeatureUniqueNames.td
    M llvm/utils/TableGen/Common/CMakeLists.txt
    M llvm/utils/TableGen/Common/CodeGenSchedule.cpp
    M llvm/utils/TableGen/Common/Types.h
    A llvm/utils/TableGen/Common/Utils.cpp
    A llvm/utils/TableGen/Common/Utils.h
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  [TableGen] Rework error reporting for duplicate Feature/Processor (#102257)

- Extract code for sorting and checking duplicate Records into a helper
  function and update `collectProcModels` to use the helper.
- Update `FeatureKeyValues` to:
  (a) Remove code for duplicate checks and use the helper.
  (b) Trim features with empty name explicitly to be able to use
      the helper.
- Make the sorting deterministic by using record name as a secondary
  key for sorting, and re-enable SubtargetFeatureUniqueNames.td test
  that was disabled due to the non-determinism of the error messages.
- Change wording of error message when duplicate records are found to
  be source code position agnostic, since `First` may not be before
  `Second` lexically.


  Commit: ccdce045e22b9d36cc4f41a5e35f6006c9c0fba5
      https://github.com/llvm/llvm-project/commit/ccdce045e22b9d36cc4f41a5e35f6006c9c0fba5
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/utils/TableGen/Common/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 8ce5a32f0221


  Commit: 37ec6e5f12afe4a37872bf28f280423696f39019
      https://github.com/llvm/llvm-project/commit/37ec6e5f12afe4a37872bf28f280423696f39019
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2024-08-08 (Thu, 08 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/AST/Decl.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/CXX/basic/basic.start/basic.start.main/p3.cpp

  Log Message:
  -----------
  [Clang] Strengthen checks for `main`  to meet `[basic.start.main]p3`’s requirements (#101853)

Fixes #101512.


  Commit: 61c0a6d72d53107b683b3c4d636df7b9be0d4d09
      https://github.com/llvm/llvm-project/commit/61c0a6d72d53107b683b3c4d636df7b9be0d4d09
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M clang/include/clang/Serialization/ObjectFilePCHContainerReader.h

  Log Message:
  -----------
  [Modules] Fix cyclic module dependencies in clang (#102348)

Breakup the cyclic dependency in module 'Clang_Frontend':
Clang_Frontend -> Clang_Serialization -> Clang_Frontend


  Commit: 3fa85262b3f16ac4874ffca1db38c6abc0cc54cd
      https://github.com/llvm/llvm-project/commit/3fa85262b3f16ac4874ffca1db38c6abc0cc54cd
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
    M .github/workflows/release-binaries-all.yml
    M .github/workflows/release-binaries.yml
    M .github/workflows/release-tasks.yml
    M bolt/CMakeLists.txt
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Rewrite/MachORewriteInstance.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    A bolt/test/AArch64/Inputs/build_id.ldscript
    A bolt/test/AArch64/Inputs/got_end_of_section_symbol.lld_script
    A bolt/test/AArch64/build_id.c
    A bolt/test/AArch64/got_end_of_section_symbol.s
    A bolt/test/AArch64/update-weak-reference-symbol.s
    A bolt/test/X86/Inputs/build_id.yaml
    A bolt/test/X86/build_id.test
    A bolt/test/X86/dynamic-relocs-on-entry.s
    M bolt/test/X86/section-end-sym.s
    M bolt/unittests/Core/BinaryContext.cpp
    M bolt/unittests/Core/MCPlusBuilder.cpp
    M clang-tools-extra/clang-tidy/tool/CMakeLists.txt
    M clang-tools-extra/clangd/unittests/HoverTests.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-local-non-trivial-variable.cpp
    M clang/cmake/caches/Fuchsia-stage2.cmake
    M clang/cmake/modules/AddClang.cmake
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/CommandGuide/clang.rst
    M clang/docs/LanguageExtensions.rst
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/StandardCPlusPlusModules.rst
    M clang/docs/UsersManual.rst
    M clang/docs/tools/clang-formatted-files.txt
    M clang/include/clang-c/Index.h
    M clang/include/clang/AST/ASTConcept.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/StmtOpenMP.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/AST/TypeProperties.td
    M clang/include/clang/Basic/AttributeCommonInfo.h
    M clang/include/clang/Basic/BuiltinsPPC.def
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/Features.def
    A clang/include/clang/Basic/HLSLIntangibleTypes.def
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/OpenMPKinds.h
    M clang/include/clang/Basic/PointerAuthOptions.h
    M clang/include/clang/Basic/Specifiers.h
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Basic/arm_sve.td
    M clang/include/clang/Basic/riscv_vector.td
    M clang/include/clang/Basic/riscv_vector_common.td
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Format/Format.h
    M clang/include/clang/Index/DeclOccurrence.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/DeclSpec.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaConcept.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Sema/Template.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ObjectFilePCHContainerReader.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/include/clang/Support/RISCVVIntrinsicUtils.h
    M clang/include/clang/Tooling/Refactoring/ASTSelection.h
    M clang/include/module.modulemap
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclBase.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/lib/AST/Interp/Compiler.h
    M clang/lib/AST/Interp/Context.cpp
    M clang/lib/AST/Interp/Descriptor.cpp
    M clang/lib/AST/Interp/Interp.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/Opcodes.td
    M clang/lib/AST/Interp/Pointer.cpp
    M clang/lib/AST/Interp/Pointer.h
    M clang/lib/AST/Interp/State.h
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/NSAPI.cpp
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/PrintfFormatString.cpp
    M clang/lib/AST/StmtOpenMP.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypeLoc.cpp
    M clang/lib/Basic/Attributes.cpp
    M clang/lib/Basic/CMakeLists.txt
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Basic/Targets.cpp
    R clang/lib/Basic/Targets/Le64.cpp
    R clang/lib/Basic/Targets/Le64.h
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/lib/Basic/Targets/PPC.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/TargetInfo.h
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Format/AffectedRangeManager.h
    M clang/lib/Format/TokenAnalyzer.cpp
    M clang/lib/Format/UnwrappedLineParser.h
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
    M clang/lib/Frontend/DiagnosticRenderer.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/avx10_2_512minmaxintrin.h
    M clang/lib/Headers/avx10_2_512niintrin.h
    A clang/lib/Headers/avx10_2_512satcvtintrin.h
    A clang/lib/Headers/avx10_2minmaxintrin.h
    M clang/lib/Headers/avx10_2niintrin.h
    A clang/lib/Headers/avx10_2satcvtintrin.h
    M clang/lib/Headers/avxvnniint16intrin.h
    M clang/lib/Headers/avxvnniint8intrin.h
    M clang/lib/Headers/immintrin.h
    M clang/lib/Headers/ptrauth.h
    M clang/lib/Index/USRGeneration.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Parse/ParseTentative.cpp
    M clang/lib/Sema/DeclSpec.cpp
    M clang/lib/Sema/SemaBoundsSafety.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaCoroutine.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaPPC.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/SemaX86.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTCommon.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/NoOwnershipChangeVisitor.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/Support/RISCVVIntrinsicUtils.cpp
    A clang/test/AST/HLSL/hlsl_resource_t.hlsl
    M clang/test/AST/Interp/arrays.cpp
    M clang/test/AST/Interp/builtin-functions.cpp
    M clang/test/AST/Interp/c.c
    M clang/test/AST/Interp/codegen.cpp
    M clang/test/AST/Interp/cxx20.cpp
    M clang/test/AST/Interp/eval-order.cpp
    M clang/test/AST/Interp/new-delete.cpp
    M clang/test/AST/Interp/objc.mm
    M clang/test/AST/Interp/vectors.cpp
    M clang/test/AST/ast-dump-concepts.cpp
    M clang/test/AST/ast-dump-template-decls.cpp
    M clang/test/CXX/basic/basic.start/basic.start.main/p3.cpp
    M clang/test/CXX/drs/cwg15xx.cpp
    M clang/test/CXX/drs/cwg20xx.cpp
    M clang/test/CXX/drs/cwg7xx.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.req/compound-requirement.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.req/nested-requirement.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.req/simple-requirement.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.req/type-requirement.cpp
    M clang/test/CXX/temp/temp.constr/temp.constr.normal/p1.cpp
    M clang/test/CXX/temp/temp.deduct.guide/p3.cpp
    M clang/test/CXX/temp/temp.param/p10-2a.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p14-23.cpp
    A clang/test/CodeGen/PowerPC/builtins-bcd-assist.c
    A clang/test/CodeGen/PowerPC/builtins-ppc-bcd-assist.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vcompress.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vmv.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vrgather.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vcompress.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vmv.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vrgather.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vcompress.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vmv.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vrgather.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vcompress.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vmv.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vrgather.c
    A clang/test/CodeGen/X86/avx10_2_512minmax-builtins.c
    A clang/test/CodeGen/X86/avx10_2_512minmax-error.c
    M clang/test/CodeGen/X86/avx10_2_512ni-builtins.c
    A clang/test/CodeGen/X86/avx10_2_512satcvt-builtins-error.c
    A clang/test/CodeGen/X86/avx10_2_512satcvt-builtins.c
    A clang/test/CodeGen/X86/avx10_2minmax-builtins.c
    M clang/test/CodeGen/X86/avx10_2ni-builtins.c
    A clang/test/CodeGen/X86/avx10_2satcvt-builtins.c
    M clang/test/CodeGen/X86/avxvnniint16-builtins.c
    M clang/test/CodeGen/X86/avxvnniint8-builtins.c
    M clang/test/CodeGen/aarch64-elf-pauthabi.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_clamp.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_max.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_maxnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_min.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_minnm.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfadd.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfclamp.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmax.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmaxnm.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmin.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfminnm.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmla.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmla_lane.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmls.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmls_lane.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmul.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfmul_lane.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_bfsub.c
    M clang/test/CodeGen/bitfield-access-pad.c
    M clang/test/CodeGen/bitfield-access-unit.c
    A clang/test/CodeGen/ptrauth-init-fini.c
    M clang/test/CodeGenCXX/OmitRTTIComponentABI/simple-vtable-definition.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/child-inheritted-from-parent-in-comdat.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/cross-translation-unit-1.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/cross-translation-unit-2.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/diamond-inheritance.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/diamond-virtual-inheritance.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/inheritted-virtual-function.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/inline-virtual-function.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/multiple-inheritance.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/no-alias-when-dso-local.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/override-pure-virtual-method.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/overriden-virtual-function.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/relative-vtables-flag.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/relative-vtables-hwasan.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/simple-vtable-definition.cpp
    M clang/test/CodeGenCXX/bitfield-access-empty.cpp
    M clang/test/CodeGenCXX/bitfield-access-tail.cpp
    M clang/test/CodeGenCXX/temporaries.cpp
    M clang/test/CodeGenObjC/ubsan-bool.m
    A clang/test/Driver/Inputs/DriverKit23.0.sdk/SDKSettings.json
    A clang/test/Driver/Inputs/MacOSX15.0.sdk/SDKSettings.json
    R clang/test/Driver/Inputs/MacOSX99.0.sdk/SDKSettings.json
    M clang/test/Driver/aarch64-ptrauth.c
    A clang/test/Driver/cl-cxx20-modules.cppm
    M clang/test/Driver/darwin-builtin-modules.c
    M clang/test/Driver/fsanitize.c
    M clang/test/Driver/ftime-trace-sections.py
    R clang/test/Driver/linker-wrapper-passes.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-a15.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-a16.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-a17.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-m4.c
    M clang/test/Driver/print-supported-extensions-aarch64.c
    M clang/test/Driver/riscv-cpus.c
    M clang/test/Frontend/optimization-remark-analysis.c
    M clang/test/Lexer/cxx-features.cpp
    M clang/test/Misc/diag-template-diffing-cxx11.cpp
    M clang/test/Misc/target-invalid-cpu-note.c
    A clang/test/Modules/GH60336-2.cpp
    M clang/test/Modules/GH60336.cpp
    M clang/test/Modules/crash-vfs-include-pch.m
    M clang/test/Modules/no-external-type-id.cppm
    M clang/test/Modules/skip-odr-check-in-gmf.cppm
    A clang/test/OpenMP/assume_lambda.cpp
    A clang/test/OpenMP/assume_messages.c
    A clang/test/OpenMP/assume_messages_attr.c
    A clang/test/OpenMP/assume_nesting.cpp
    A clang/test/OpenMP/assume_nesting_tmpl.cpp
    A clang/test/OpenMP/assume_serialize_deserialize.cpp
    A clang/test/OpenMP/assume_serialize_deserialize_tmpl.cpp
    A clang/test/OpenMP/assume_template.cpp
    A clang/test/OpenMP/target_map_pointer_defalut_mapper_codegen.cpp
    M clang/test/OpenMP/target_teams_ast_print.cpp
    M clang/test/OpenMP/target_teams_distribute_num_teams_messages.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_num_teams_messages.cpp
    M clang/test/OpenMP/teams_num_teams_messages.cpp
    M clang/test/Preprocessor/predefined-macros-no-warnings.c
    M clang/test/Preprocessor/ptrauth_feature.c
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_b16b16.cpp
    A clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_b16b16.cpp
    A clang/test/SemaCXX/constexpr-vectors-access-elements.cpp
    M clang/test/SemaCXX/cxx1y-generic-lambdas-variadics.cpp
    M clang/test/SemaCXX/cxx1y-generic-lambdas.cpp
    M clang/test/SemaCXX/cxx2c-fold-exprs.cpp
    M clang/test/SemaCXX/decltype.cpp
    A clang/test/SemaCXX/fold_lambda_with_variadics.cpp
    M clang/test/SemaCXX/lambda-pack-expansion.cpp
    M clang/test/SemaCXX/nullability.cpp
    M clang/test/SemaCXX/sizeless-1.cpp
    M clang/test/SemaCXX/type-traits.cpp
    A clang/test/SemaHLSL/BuiltIns/hlsl_resource_t.hlsl
    M clang/test/SemaHLSL/BuiltIns/length-errors.hlsl
    M clang/test/SemaHLSL/VectorOverloadResolution.hlsl
    M clang/test/SemaTemplate/address_space-dependent.cpp
    M clang/test/SemaTemplate/concepts-recursive-inst.cpp
    M clang/test/SemaTemplate/concepts.cpp
    M clang/test/SemaTemplate/deduction-guide.cpp
    M clang/test/SemaTemplate/instantiate-requires-expr.cpp
    M clang/test/SemaTemplate/make_integer_seq.cpp
    M clang/test/SemaTemplate/pr52970.cpp
    M clang/test/SemaTemplate/temp_arg_nontype.cpp
    M clang/test/TableGen/attrs-parser-string-switches.td
    M clang/test/lit.cfg.py
    M clang/test/lit.site.cfg.py.in
    M clang/tools/clang-linker-wrapper/CMakeLists.txt
    M clang/tools/clang-repl/CMakeLists.txt
    M clang/tools/driver/CMakeLists.txt
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CXCursor.cpp
    M clang/tools/libclang/CXType.cpp
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/unittests/Format/MacroCallReconstructorTest.cpp
    M clang/unittests/Interpreter/CMakeLists.txt
    M clang/unittests/Interpreter/ExceptionTests/CMakeLists.txt
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/RISCVVEmitter.cpp
    M clang/utils/TableGen/SveEmitter.cpp
    M clang/www/cxx_dr_status.html
    M compiler-rt/lib/asan/asan_errors.cpp
    M compiler-rt/lib/asan/asan_globals.cpp
    M compiler-rt/lib/asan/tests/asan_noinst_test.cpp
    M compiler-rt/lib/builtins/crtbegin.c
    M compiler-rt/lib/builtins/divtc3.c
    M compiler-rt/lib/builtins/multc3.c
    M compiler-rt/lib/dfsan/dfsan.cpp
    M compiler-rt/lib/dfsan/dfsan_allocator.cpp
    M compiler-rt/lib/dfsan/dfsan_new_delete.cpp
    M compiler-rt/lib/hwasan/hwasan.h
    M compiler-rt/lib/memprof/memprof_stack.h
    M compiler-rt/lib/nsan/nsan.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_posix.h
    M compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_sparc.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_stacktrace_test.cpp
    M compiler-rt/lib/scudo/standalone/CMakeLists.txt
    R compiler-rt/lib/scudo/standalone/benchmarks/CMakeLists.txt
    R compiler-rt/lib/scudo/standalone/benchmarks/malloc_benchmark.cpp
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/lib/scudo/standalone/mem_map_base.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/release.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/scudo/standalone/tests/common_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/map_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/memtag_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/strings_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/vector_test.cpp
    M compiler-rt/lib/scudo/standalone/vector.h
    M compiler-rt/lib/tsan/dd/dd_rtl.cpp
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
    M compiler-rt/lib/ubsan/ubsan_diag.cpp
    M compiler-rt/lib/ubsan/ubsan_diag_standalone.cpp
    M compiler-rt/test/asan/TestCases/contiguous_container_crash.cpp
    M flang/include/flang/ISO_Fortran_binding.h
    M flang/include/flang/Lower/CallInterface.h
    M flang/include/flang/Lower/IterationSpace.h
    M flang/include/flang/Optimizer/Builder/BoxValue.h
    M flang/include/flang/Optimizer/Support/InternalNames.h
    M flang/include/flang/Runtime/CUDA/allocator.h
    A flang/include/flang/Runtime/CUDA/descriptor.h
    M flang/include/flang/Runtime/allocator-registry.h
    M flang/lib/Lower/ConvertArrayConstructor.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/DirectivesCommon.h
    M flang/lib/Lower/IterationSpace.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/Clauses.h
    M flang/lib/Optimizer/CodeGen/FIROpPatterns.cpp
    M flang/lib/Optimizer/Transforms/AffineDemotion.cpp
    M flang/lib/Optimizer/Transforms/CufOpConversion.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/runtime/CUDA/CMakeLists.txt
    M flang/runtime/CUDA/allocator.cpp
    A flang/runtime/CUDA/descriptor.cpp
    M flang/runtime/copy.cpp
    M flang/test/Fir/CUDA/cuda-allocate.fir
    M flang/test/Fir/box-typecode.fir
    M flang/test/Fir/convert-to-llvm.fir
    M flang/test/Fir/polymorphic.fir
    M flang/test/Fir/tbaa.fir
    M flang/test/Lower/OpenACC/acc-bounds.f90
    M flang/test/Lower/allocatable-polymorphic.f90
    M flang/tools/flang-driver/CMakeLists.txt
    M flang/unittests/Optimizer/InternalNamesTest.cpp
    M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp
    M libc/benchmarks/gpu/LibcGpuBenchmark.cpp
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/darwin/x86_64/entrypoints.txt
    M libc/config/gpu/entrypoints.txt
    M libc/config/gpu/headers.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/api.td
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/docs/dev/undefined_behavior.rst
    M libc/docs/math/index.rst
    M libc/docs/overlay_mode.rst
    M libc/fuzzing/math/cos_fuzz.cpp
    M libc/fuzzing/math/sin_fuzz.cpp
    M libc/fuzzing/math/tan_fuzz.cpp
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-macros/float-macros.h
    M libc/include/llvm-libc-macros/gpu/CMakeLists.txt
    A libc/include/llvm-libc-macros/gpu/signal-macros.h
    M libc/include/llvm-libc-macros/limits-macros.h
    M libc/include/llvm-libc-macros/signal-macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/pthread_spinlock_t.h
    M libc/include/llvm-libc-types/struct_sigaction.h
    M libc/newhdrgen/CMakeLists.txt
    M libc/newhdrgen/class_implementation/classes/enumeration.py
    M libc/newhdrgen/class_implementation/classes/function.py
    M libc/newhdrgen/class_implementation/classes/macro.py
    M libc/newhdrgen/class_implementation/classes/object.py
    M libc/newhdrgen/class_implementation/classes/type.py
    M libc/newhdrgen/gpu_headers.py
    M libc/newhdrgen/header.py
    M libc/newhdrgen/tests/input/test_small.yaml
    M libc/newhdrgen/yaml/arpa/inet.yaml
    M libc/newhdrgen/yaml/assert.yaml
    M libc/newhdrgen/yaml/ctype.yaml
    M libc/newhdrgen/yaml/dirent.yaml
    M libc/newhdrgen/yaml/errno.yaml
    M libc/newhdrgen/yaml/fcntl.yaml
    M libc/newhdrgen/yaml/features.yaml
    M libc/newhdrgen/yaml/fenv.yaml
    M libc/newhdrgen/yaml/float.yaml
    M libc/newhdrgen/yaml/gpu/rpc.yaml
    M libc/newhdrgen/yaml/inttypes.yaml
    M libc/newhdrgen/yaml/limits.yaml
    M libc/newhdrgen/yaml/math.yaml
    M libc/newhdrgen/yaml/pthread.yaml
    M libc/newhdrgen/yaml/sched.yaml
    M libc/newhdrgen/yaml/search.yaml
    M libc/newhdrgen/yaml/setjmp.yaml
    M libc/newhdrgen/yaml/signal.yaml
    M libc/newhdrgen/yaml/spawn.yaml
    M libc/newhdrgen/yaml/stdbit.yaml
    M libc/newhdrgen/yaml/stdckdint.yaml
    M libc/newhdrgen/yaml/stdfix.yaml
    M libc/newhdrgen/yaml/stdint.yaml
    M libc/newhdrgen/yaml/stdio.yaml
    M libc/newhdrgen/yaml/stdlib.yaml
    M libc/newhdrgen/yaml/string.yaml
    M libc/newhdrgen/yaml/strings.yaml
    M libc/newhdrgen/yaml/sys/auxv.yaml
    M libc/newhdrgen/yaml/sys/epoll.yaml
    M libc/newhdrgen/yaml/sys/mman.yaml
    M libc/newhdrgen/yaml/sys/random.yaml
    M libc/newhdrgen/yaml/sys/resource.yaml
    M libc/newhdrgen/yaml/sys/select.yaml
    M libc/newhdrgen/yaml/sys/sendfile.yaml
    M libc/newhdrgen/yaml/sys/socket.yaml
    M libc/newhdrgen/yaml/sys/stat.yaml
    M libc/newhdrgen/yaml/sys/statvfs.yaml
    M libc/newhdrgen/yaml/sys/utsname.yaml
    M libc/newhdrgen/yaml/sys/wait.yaml
    M libc/newhdrgen/yaml/termios.yaml
    M libc/newhdrgen/yaml/threads.yaml
    M libc/newhdrgen/yaml/time.yaml
    M libc/newhdrgen/yaml/uchar.yaml
    M libc/newhdrgen/yaml/unistd.yaml
    M libc/newhdrgen/yaml/wchar.yaml
    M libc/newhdrgen/yaml_to_classes.py
    M libc/spec/gnu_ext.td
    M libc/spec/llvm_libc_ext.td
    M libc/spec/posix.td
    M libc/spec/stdc.td
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/limits.h
    M libc/src/__support/block.h
    M libc/src/__support/freelist_heap.h
    M libc/src/__support/threads/spin_lock.h
    M libc/src/math/CMakeLists.txt
    M libc/src/math/amdgpu/CMakeLists.txt
    M libc/src/math/amdgpu/declarations.h
    A libc/src/math/amdgpu/lgamma.cpp
    A libc/src/math/amdgpu/lgamma_r.cpp
    R libc/src/math/amdgpu/pow.cpp
    A libc/src/math/exp10f16.h
    A libc/src/math/exp2f16.h
    A libc/src/math/fdiv.h
    A libc/src/math/fdivf128.h
    A libc/src/math/fdivl.h
    A libc/src/math/ffma.h
    A libc/src/math/ffmaf128.h
    A libc/src/math/ffmal.h
    A libc/src/math/fsub.h
    A libc/src/math/fsubf128.h
    A libc/src/math/fsubl.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/exp10f16.cpp
    A libc/src/math/generic/exp2f16.cpp
    A libc/src/math/generic/expxf16.h
    A libc/src/math/generic/fdiv.cpp
    A libc/src/math/generic/fdivf128.cpp
    A libc/src/math/generic/fdivl.cpp
    A libc/src/math/generic/ffma.cpp
    A libc/src/math/generic/ffmaf128.cpp
    A libc/src/math/generic/ffmal.cpp
    A libc/src/math/generic/fsub.cpp
    A libc/src/math/generic/fsubf128.cpp
    A libc/src/math/generic/fsubl.cpp
    A libc/src/math/generic/getpayloadl.cpp
    A libc/src/math/generic/pow.cpp
    A libc/src/math/generic/remainderf128.cpp
    A libc/src/math/getpayloadl.h
    A libc/src/math/lgamma.h
    A libc/src/math/lgamma_r.h
    M libc/src/math/nvptx/CMakeLists.txt
    M libc/src/math/nvptx/declarations.h
    A libc/src/math/nvptx/lgamma.cpp
    A libc/src/math/nvptx/lgamma_r.cpp
    R libc/src/math/nvptx/pow.cpp
    A libc/src/math/remainderf128.h
    M libc/src/pthread/CMakeLists.txt
    A libc/src/pthread/pthread_spin_destroy.cpp
    A libc/src/pthread/pthread_spin_destroy.h
    A libc/src/pthread/pthread_spin_init.cpp
    A libc/src/pthread/pthread_spin_init.h
    A libc/src/pthread/pthread_spin_lock.cpp
    A libc/src/pthread/pthread_spin_lock.h
    A libc/src/pthread/pthread_spin_trylock.cpp
    A libc/src/pthread/pthread_spin_trylock.h
    A libc/src/pthread/pthread_spin_unlock.cpp
    A libc/src/pthread/pthread_spin_unlock.h
    M libc/src/time/mktime.cpp
    M libc/src/time/time_utils.h
    M libc/startup/linux/do_start.cpp
    M libc/test/integration/src/pthread/CMakeLists.txt
    M libc/test/integration/src/pthread/pthread_rwlock_test.cpp
    A libc/test/integration/src/pthread/pthread_spinlock_test.cpp
    M libc/test/src/__support/block_test.cpp
    M libc/test/src/__support/freelist_heap_test.cpp
    M libc/test/src/__support/freelist_malloc_test.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/exp10f16_test.cpp
    A libc/test/src/math/exp2f16_test.cpp
    A libc/test/src/math/fdiv_test.cpp
    A libc/test/src/math/fdivl_test.cpp
    A libc/test/src/math/ffma_test.cpp
    A libc/test/src/math/ffmal_test.cpp
    A libc/test/src/math/fsub_test.cpp
    A libc/test/src/math/fsubl_test.cpp
    M libc/test/src/math/performance_testing/CMakeLists.txt
    A libc/test/src/math/performance_testing/exp10f16_perf.cpp
    A libc/test/src/math/performance_testing/exp2f16_perf.cpp
    A libc/test/src/math/pow_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/math/smoke/DivTest.h
    M libc/test/src/math/smoke/GetPayloadTest.h
    M libc/test/src/math/smoke/SetPayloadTest.h
    A libc/test/src/math/smoke/exp10f16_test.cpp
    A libc/test/src/math/smoke/exp2f16_test.cpp
    A libc/test/src/math/smoke/fdiv_test.cpp
    A libc/test/src/math/smoke/fdivf128_test.cpp
    A libc/test/src/math/smoke/fdivl_test.cpp
    A libc/test/src/math/smoke/ffma_test.cpp
    A libc/test/src/math/smoke/ffmaf128_test.cpp
    A libc/test/src/math/smoke/ffmal_test.cpp
    A libc/test/src/math/smoke/fsub_test.cpp
    A libc/test/src/math/smoke/fsubf128_test.cpp
    A libc/test/src/math/smoke/fsubl_test.cpp
    A libc/test/src/math/smoke/getpayloadl_test.cpp
    A libc/test/src/math/smoke/pow_test.cpp
    M libc/test/src/time/mktime_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp
    M libc/utils/gpu/loader/Loader.h
    M libc/utils/gpu/loader/Main.cpp
    M libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
    M libc/utils/gpu/loader/nvptx/nvptx-loader.cpp
    M libc/utils/gpu/server/CMakeLists.txt
    M libc/utils/gpu/server/rpc_server.cpp
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/docs/Status/Cxx20.rst
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/docs/Status/ParallelismProjects.csv
    M libcxx/include/__algorithm/comp.h
    M libcxx/include/__algorithm/equal_range.h
    M libcxx/include/__algorithm/includes.h
    M libcxx/include/__algorithm/is_permutation.h
    M libcxx/include/__algorithm/lexicographical_compare.h
    M libcxx/include/__algorithm/lower_bound.h
    M libcxx/include/__algorithm/max_element.h
    M libcxx/include/__algorithm/min_element.h
    M libcxx/include/__algorithm/minmax.h
    M libcxx/include/__algorithm/minmax_element.h
    M libcxx/include/__algorithm/partial_sort_copy.h
    M libcxx/include/__algorithm/ranges_lexicographical_compare.h
    M libcxx/include/__algorithm/ranges_minmax.h
    M libcxx/include/__algorithm/search.h
    M libcxx/include/__algorithm/search_n.h
    M libcxx/include/__algorithm/upper_bound.h
    M libcxx/include/__functional/operations.h
    M libcxx/include/__functional/ranges_operations.h
    M libcxx/include/__hash_table
    M libcxx/include/__math/hypot.h
    M libcxx/include/__string/constexpr_c_functions.h
    M libcxx/include/__type_traits/desugars_to.h
    M libcxx/include/__type_traits/is_trivially_lexicographically_comparable.h
    M libcxx/include/cmath
    M libcxx/include/experimental/__simd/reference.h
    M libcxx/include/fstream
    M libcxx/include/ios
    M libcxx/include/sstream
    M libcxx/include/string
    M libcxx/include/unordered_map
    M libcxx/include/unordered_set
    M libcxx/src/regex.cpp
    M libcxx/test/benchmarks/CMakeLists.txt
    A libcxx/test/benchmarks/algorithms/lexicographical_compare.bench.cpp
    A libcxx/test/libcxx/algorithms/callable-requirements-rvalue.compile.pass.cpp
    A libcxx/test/libcxx/algorithms/callable-requirements.verify.cpp
    R libcxx/test/libcxx/algorithms/callable.verify.cpp
    M libcxx/test/libcxx/algorithms/cpp17_iterator_concepts.verify.cpp
    M libcxx/test/libcxx/algorithms/ranges_robust_against_copying_projections.pass.cpp
    M libcxx/test/libcxx/algorithms/robust_against_cpp20_hostile_iterators.compile.pass.cpp
    M libcxx/test/libcxx/transitive_includes/cxx03.csv
    M libcxx/test/libcxx/transitive_includes/cxx11.csv
    M libcxx/test/libcxx/transitive_includes/cxx14.csv
    M libcxx/test/libcxx/transitive_includes/cxx17.csv
    M libcxx/test/libcxx/transitive_includes/cxx20.csv
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_n_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.binary.search/upper.bound/upper_bound_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort_comp.pass.cpp
    M libcxx/test/std/containers/sequences/array/compare.verify.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.syserr/syserr.syserr.members/ctor_error_code_string.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.syserr/syserr.syserr.members/ctor_int_error_category_string.pass.cpp
    A libcxx/test/std/experimental/simd/simd.reference/reference_arith_operators.pass.cpp
    A libcxx/test/std/experimental/simd/simd.reference/reference_bitwise_operators.pass.cpp
    M libcxx/test/std/experimental/simd/test_utils.h
    M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/default.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/move.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/path.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/pointer.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/string.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/default.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/move.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/path.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/pointer.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/string.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/default.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/move.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/path.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/pointer.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/string.pass.cpp
    M libcxx/test/std/input.output/filesystems/class.filesystem_error/filesystem_error.members.pass.cpp
    M libcxx/test/std/input.output/iostreams.base/ios/basic.ios.members/copyfmt.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/default.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/mode.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/move.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string-alloc.mode.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.mode.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.move.mode.pass.cpp
    M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/default.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/mode.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/move.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string-alloc.mode.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.mode.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.move.mode.pass.cpp
    M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/default.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/mode.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/move.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string-alloc.mode.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.mode.alloc.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.move.mode.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.pass.cpp
    M libcxx/test/std/numerics/c.math/cmath.pass.cpp
    M libcxx/test/std/numerics/c.math/hermite.pass.cpp
    M libcxx/test/std/re/re.traits/transform.pass.cpp
    M libcxx/test/std/strings/basic.string/string.cons/move_alloc.pass.cpp
    M libcxx/test/std/strings/basic.string/string.cons/substr_rvalue.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_swap/swap.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.nonmembers/comparisons.pass.cpp
    M libcxx/test/std/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.class.general/equality.pass.cpp
    M libcxx/test/support/fp_compare.h
    M libcxx/test/support/operator_hijacker.h
    M libcxxabi/src/demangle/ItaniumDemangle.h
    M libunwind/CMakeLists.txt
    M libunwind/src/Registers.hpp
    M libunwind/src/UnwindCursor.hpp
    M libunwind/src/UnwindLevel1.c
    M libunwind/src/UnwindRegistersRestore.S
    M libunwind/src/cet_unwind.h
    M libunwind/test/CMakeLists.txt
    M libunwind/test/configs/llvm-libunwind-merged.cfg.in
    M libunwind/test/configs/llvm-libunwind-shared.cfg.in
    M libunwind/test/configs/llvm-libunwind-static.cfg.in
    M lld/Common/DWARF.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Config.h
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/LinkerScript.h
    M lld/ELF/MapFile.cpp
    M lld/ELF/OutputSections.h
    M lld/ELF/ScriptParser.cpp
    M lld/ELF/Writer.cpp
    M lld/MachO/Driver.cpp
    M lld/cmake/modules/AddLLD.cmake
    M lld/docs/ELF/linker_script.rst
    M lld/docs/ReleaseNotes.rst
    A lld/test/ELF/arm-mixed-plts.s
    A lld/test/ELF/hip-section-layout.s
    A lld/test/ELF/linkerscript/section-class.test
    M lld/test/MachO/lto-object-path.ll
    M lld/test/MachO/objc-category-conflicts.s
    M lld/test/MachO/objc-category-merging-complete-test.s
    M lld/test/MachO/objc-category-merging-erase-objc-name-test.s
    M lld/test/MachO/objc-category-merging-minimal.s
    M lld/test/MachO/objc-relative-method-lists-simple.s
    M lld/test/wasm/lto/stub-library.s
    M lld/tools/lld/CMakeLists.txt
    M lld/wasm/Driver.cpp
    M lld/wasm/InputFiles.cpp
    M lldb/include/lldb/API/SBDefines.h
    M lldb/include/lldb/API/SBProcess.h
    M lldb/include/lldb/API/SBSaveCoreOptions.h
    M lldb/include/lldb/API/SBThread.h
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Host/Config.h.cmake
    M lldb/include/lldb/Host/PipeBase.h
    M lldb/include/lldb/Host/posix/PipePosix.h
    M lldb/include/lldb/Host/windows/PipeWindows.h
    M lldb/include/lldb/Symbol/SaveCoreOptions.h
    M lldb/include/lldb/Symbol/Type.h
    M lldb/include/lldb/Target/Process.h
    A lldb/include/lldb/Target/ScriptedThreadPlan.h
    M lldb/include/lldb/Target/StopInfo.h
    M lldb/include/lldb/Target/Thread.h
    M lldb/include/lldb/Target/ThreadPlan.h
    R lldb/include/lldb/Target/ThreadPlanPython.h
    A lldb/include/lldb/Target/ThreadPlanSingleThreadTimeout.h
    M lldb/include/lldb/Target/ThreadPlanStepOut.h
    M lldb/include/lldb/Target/ThreadPlanStepOverRange.h
    M lldb/include/lldb/Target/ThreadPlanStepRange.h
    A lldb/include/lldb/Target/TimeoutResumeAll.h
    M lldb/include/lldb/Utility/AddressableBits.h
    M lldb/include/lldb/Utility/XcodeSDK.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/include/lldb/lldb-private-enumerations.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/include/lldb/lldb-types.h
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
    M lldb/source/API/SBDebugger.cpp
    M lldb/source/API/SBSaveCoreOptions.cpp
    M lldb/source/API/SBStructuredData.cpp
    M lldb/source/API/SBThread.cpp
    M lldb/source/API/SBThreadPlan.cpp
    M lldb/source/Commands/CommandObjectScripting.cpp
    M lldb/source/Commands/CommandObjectThread.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Core/Progress.cpp
    M lldb/source/Host/common/PipeBase.cpp
    M lldb/source/Host/posix/PipePosix.cpp
    M lldb/source/Host/windows/PipeWindows.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.h
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.h
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
    M lldb/source/Plugins/ObjectFile/PECOFF/WindowsMiniDump.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/WindowsMiniDump.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp
    M lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
    M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
    M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/source/Symbol/SaveCoreOptions.cpp
    M lldb/source/Symbol/Type.cpp
    M lldb/source/Target/CMakeLists.txt
    M lldb/source/Target/Process.cpp
    A lldb/source/Target/ScriptedThreadPlan.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Target/TargetProperties.td
    M lldb/source/Target/Thread.cpp
    M lldb/source/Target/ThreadPlan.cpp
    R lldb/source/Target/ThreadPlanPython.cpp
    A lldb/source/Target/ThreadPlanSingleThreadTimeout.cpp
    M lldb/source/Target/ThreadPlanStepInRange.cpp
    M lldb/source/Target/ThreadPlanStepOverRange.cpp
    M lldb/source/Target/ThreadPlanStepRange.cpp
    M lldb/source/Utility/XcodeSDK.cpp
    M lldb/test/API/commands/expression/import-std-module/shared_ptr/TestSharedPtrFromStdModule.py
    M lldb/test/API/commands/expression/import-std-module/weak_ptr-dbg-info-content/TestDbgInfoContentWeakPtrFromStdModule.py
    M lldb/test/API/commands/expression/import-std-module/weak_ptr/TestWeakPtrFromStdModule.py
    A lldb/test/API/debuginfod/Normal/Makefile
    A lldb/test/API/debuginfod/Normal/TestDebuginfod.py
    A lldb/test/API/debuginfod/Normal/main.c
    A lldb/test/API/debuginfod/SplitDWARF/Makefile
    A lldb/test/API/debuginfod/SplitDWARF/TestDebuginfodDWP.py
    A lldb/test/API/debuginfod/SplitDWARF/main.c
    M lldb/test/API/functionalities/process_save_core/TestProcessSaveCore.py
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
    A lldb/test/API/functionalities/single-thread-step/Makefile
    A lldb/test/API/functionalities/single-thread-step/TestSingleThreadStepTimeout.py
    A lldb/test/API/functionalities/single-thread-step/main.cpp
    M lldb/test/API/macosx/abort_with_payload/TestAbortWithPayload.py
    M lldb/test/API/python_api/sbsavecoreoptions/TestSBSaveCoreOptions.py
    R lldb/test/API/python_api/sbsavecoreoptions/basic_minidump.yaml
    R lldb/test/API/python_api/sbsavecoreoptions/basic_minidump_different_pid.yaml
    M lldb/test/API/python_api/sbstructureddata/TestStructuredDataAPI.py
    A lldb/test/Shell/Commands/command-scripting-extension-list.test
    R lldb/test/Shell/Commands/command-scripting-template-list.test
    M lldb/test/Shell/SymbolFile/DWARF/clang-gmodules-type-lookup.c
    M lldb/test/Shell/SymbolFile/DWARF/x86/compilercontext.ll
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-test/lldb-test.cpp
    M lldb/unittests/Core/ProgressReportTest.cpp
    M lldb/unittests/Host/PipeTest.cpp
    M lldb/unittests/Symbol/TestClangASTImporter.cpp
    M lldb/unittests/Symbol/TestType.cpp
    M lldb/unittests/Symbol/TestTypeSystemClang.cpp
    M llvm/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/docs/CommandGuide/llvm-symbolizer.rst
    M llvm/docs/Contributing.rst
    M llvm/docs/NVPTXUsage.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/examples/ExceptionDemo/CMakeLists.txt
    M llvm/examples/HowToUseLLJIT/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter1/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter2/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/CMakeLists.txt
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter4/CMakeLists.txt
    M llvm/examples/Kaleidoscope/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter4/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter5/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter6/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter7/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter8/CMakeLists.txt
    M llvm/examples/Kaleidoscope/Chapter9/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITDumpObjects/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITRemovableCode/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithCustomObjectLinkingLayer/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithExecutorProcessControl/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithGDBRegistrationListener/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithInitializers/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithLazyReexports/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithObjectCache/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithObjectLinkingLayerPlugin/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithOptimizingIRTransform/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithRemoteDebugging/CMakeLists.txt
    M llvm/examples/OrcV2Examples/LLJITWithThinLTOSummaries/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsAddObjectFile/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsBasicUsage/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsDumpObjects/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsIRTransforms/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsLazy/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsRemovableCode/CMakeLists.txt
    M llvm/examples/OrcV2Examples/OrcV2CBindingsVeryLazy/CMakeLists.txt
    M llvm/include/llvm/ADT/GraphTraits.h
    M llvm/include/llvm/ADT/STLExtras.h
    A llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/include/llvm/Analysis/RegionInfoImpl.h
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/BinaryFormat/COFF.h
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/ExpandVectorPredication.h
    M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/CallLowering.h
    M llvm/include/llvm/CodeGen/GlobalISel/GISelChangeObserver.h
    M llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
    M llvm/include/llvm/CodeGen/MachineBasicBlock.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/MachineRegisterInfo.h
    M llvm/include/llvm/CodeGen/Passes.h
    M llvm/include/llvm/CodeGen/PreISelIntrinsicLowering.h
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/TargetFrameLowering.h
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/include/llvm/DebugInfo/CodeView/TypeRecord.h
    M llvm/include/llvm/DebugInfo/DIContext.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h
    M llvm/include/llvm/DebugInfo/GSYM/FunctionInfo.h
    M llvm/include/llvm/DebugInfo/GSYM/GsymCreator.h
    M llvm/include/llvm/DebugInfo/GSYM/GsymReader.h
    A llvm/include/llvm/DebugInfo/GSYM/MergedFunctionsInfo.h
    M llvm/include/llvm/DebugInfo/Symbolize/Symbolize.h
    M llvm/include/llvm/Demangle/ItaniumDemangle.h
    M llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h
    M llvm/include/llvm/ExecutionEngine/JITLink/aarch64.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/FuzzMutate/RandomIRBuilder.h
    M llvm/include/llvm/IR/Constants.h
    M llvm/include/llvm/IR/DataLayout.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/IR/IntrinsicsPowerPC.td
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/include/llvm/IR/Metadata.h
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/PredIteratorCache.h
    M llvm/include/llvm/LinkAllPasses.h
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/include/llvm/MC/MCELFObjectWriter.h
    M llvm/include/llvm/MC/MCFragment.h
    M llvm/include/llvm/MCA/Stages/InOrderIssueStage.h
    M llvm/include/llvm/Object/COFF.h
    M llvm/include/llvm/Object/ELFObjectFile.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/include/llvm/ProfileData/MemProf.h
    M llvm/include/llvm/ProfileData/PGOCtxProfReader.h
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/include/llvm/SandboxIR/Use.h
    M llvm/include/llvm/Support/GenericDomTree.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h
    M llvm/include/llvm/Support/ScopedPrinter.h
    M llvm/include/llvm/Support/Windows/WindowsSupport.h
    M llvm/include/llvm/TableGen/Record.h
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    M llvm/lib/Analysis/CMakeLists.txt
    A llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/TargetLibraryInfo.cpp
    M llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp
    M llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/BasicBlockSections.cpp
    M llvm/lib/CodeGen/CFIInstrInserter.cpp
    M llvm/lib/CodeGen/ExpandVectorPredication.cpp
    M llvm/lib/CodeGen/GlobalISel/CallLowering.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
    M llvm/lib/CodeGen/IntrinsicLowering.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/LiveIntervals.cpp
    M llvm/lib/CodeGen/MIRSampleProfile.cpp
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/CodeGen/MachinePipeliner.cpp
    M llvm/lib/CodeGen/MachineRegisterInfo.cpp
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/ShrinkWrap.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/CodeGen/TargetRegisterInfo.cpp
    M llvm/lib/CodeGen/UnreachableBlockElim.cpp
    M llvm/lib/CodeGen/WindowScheduler.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
    M llvm/lib/DebugInfo/GSYM/CMakeLists.txt
    M llvm/lib/DebugInfo/GSYM/FunctionInfo.cpp
    M llvm/lib/DebugInfo/GSYM/GsymCreator.cpp
    M llvm/lib/DebugInfo/GSYM/GsymReader.cpp
    A llvm/lib/DebugInfo/GSYM/MergedFunctionsInfo.cpp
    M llvm/lib/DebugInfo/Symbolize/DIPrinter.cpp
    M llvm/lib/DebugInfo/Symbolize/Symbolize.cpp
    M llvm/lib/Demangle/RustDemangle.cpp
    M llvm/lib/ExecutionEngine/JITLink/ELF_aarch64.cpp
    M llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp
    M llvm/lib/ExecutionEngine/JITLink/aarch64.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/ConstantRange.cpp
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/DataLayout.cpp
    M llvm/lib/IR/DebugInfoMetadata.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/LegacyPassManager.cpp
    M llvm/lib/IR/Metadata.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/MCELFObjectTargetWriter.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/MCA/Stages/InOrderIssueStage.cpp
    M llvm/lib/Object/BuildID.cpp
    M llvm/lib/Object/COFFObjectFile.cpp
    M llvm/lib/Object/ELFObjectFile.cpp
    M llvm/lib/Passes/CMakeLists.txt
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Passes/StandardInstrumentations.cpp
    M llvm/lib/ProfileData/PGOCtxProfReader.cpp
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/SandboxIR/Tracker.cpp
    M llvm/lib/Support/SourceMgr.cpp
    M llvm/lib/Support/VirtualFileSystem.cpp
    M llvm/lib/TableGen/Record.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.h
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64MCInstLower.cpp
    M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
    M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.cpp
    M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
    M llvm/lib/Target/AArch64/AArch64Processors.td
    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/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.h
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    M llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
    M llvm/lib/Target/ARM/ARMFastISel.cpp
    M llvm/lib/Target/ARM/ARMInstrThumb2.td
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
    M llvm/lib/Target/BPF/BPF.h
    M llvm/lib/Target/BPF/BPFInstrInfo.td
    R llvm/lib/Target/BPF/BPFMIChecking.cpp
    M llvm/lib/Target/BPF/BPFTargetMachine.cpp
    M llvm/lib/Target/BPF/CMakeLists.txt
    M llvm/lib/Target/CSKY/CSKYConstantIslandPass.cpp
    M llvm/lib/Target/Hexagon/CMakeLists.txt
    M llvm/lib/Target/Hexagon/HexagonCopyHoisting.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    A llvm/lib/Target/Hexagon/HexagonMask.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
    M llvm/lib/Target/Mips/MipsFastISel.cpp
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTX.h
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXUtilities.h
    M llvm/lib/Target/PowerPC/PPCFastISel.cpp
    M llvm/lib/Target/PowerPC/PPCFrameLowering.cpp
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/RISCV/CMakeLists.txt
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCV.h
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/lib/Target/RISCV/RISCVIndirectBranchTracking.cpp
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXSf.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td
    M llvm/lib/Target/RISCV/RISCVOptWInstrs.cpp
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
    M llvm/lib/Target/X86/X86DomainReassignment.cpp
    M llvm/lib/Target/X86/X86FastISel.cpp
    M llvm/lib/Target/X86/X86FrameLowering.cpp
    M llvm/lib/Target/X86/X86FrameLowering.h
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86InstrAVX10.td
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrFMA3Info.cpp
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86InstrUtils.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/Target/X86/X86SchedIceLake.td
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/lib/TextAPI/InterfaceFile.cpp
    M llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/PartialInlining.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
    M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/LoopSimplify.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
    M llvm/lib/Transforms/Utils/LoopVersioning.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/lib/Transforms/Utils/ValueMapper.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    A llvm/test/Analysis/BasicAA/nusw_nuw_nonneg.ll
    M llvm/test/Analysis/BasicAA/struct-geps.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
    M llvm/test/Analysis/CostModel/ARM/arith-ssat.ll
    M llvm/test/Analysis/CostModel/ARM/arith-usat.ll
    M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-fp.ll
    M llvm/test/Analysis/CostModel/RISCV/rvv-intrinsics.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
    A llvm/test/Analysis/CtxProfAnalysis/load.ll
    M llvm/test/Analysis/UniformityAnalysis/AMDGPU/always_uniform.ll
    A llvm/test/CodeGen/AArch64/Atomics/aarch64-atomic-exchange-fence.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-shuffle-splat.mir
    M llvm/test/CodeGen/AArch64/O0-pipeline.ll
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    A llvm/test/CodeGen/AArch64/abds-neg.ll
    A llvm/test/CodeGen/AArch64/abds.ll
    A llvm/test/CodeGen/AArch64/abdu-neg.ll
    A llvm/test/CodeGen/AArch64/abdu.ll
    M llvm/test/CodeGen/AArch64/basic-pic.ll
    M llvm/test/CodeGen/AArch64/elf-globals-pic.ll
    A llvm/test/CodeGen/AArch64/emutls_alias.ll
    M llvm/test/CodeGen/AArch64/extern-weak.ll
    M llvm/test/CodeGen/AArch64/got-abuse.ll
    M llvm/test/CodeGen/AArch64/neon-shift-left-long.ll
    M llvm/test/CodeGen/AArch64/note-gnu-property-elf-pauthabi.ll
    M llvm/test/CodeGen/AArch64/peephole-csel.ll
    M llvm/test/CodeGen/AArch64/peephole-csel.mir
    A llvm/test/CodeGen/AArch64/ptrauth-basic-pic.ll
    A llvm/test/CodeGen/AArch64/ptrauth-elf-globals-pic.ll
    A llvm/test/CodeGen/AArch64/ptrauth-extern-weak.ll
    A llvm/test/CodeGen/AArch64/ptrauth-got-abuse.ll
    A llvm/test/CodeGen/AArch64/ptrauth-init-fini.ll
    A llvm/test/CodeGen/AArch64/ptrauth-tagged-globals-pic.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-max.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-min.ll
    A llvm/test/CodeGen/AArch64/sms-order-physreg-deps.mir
    M llvm/test/CodeGen/AArch64/srem-seteq-vec-splat.ll
    A llvm/test/CodeGen/AArch64/ssve-stack-hazard-remarks.ll
    M llvm/test/CodeGen/AArch64/sve-pred-selectop2.ll
    M llvm/test/CodeGen/AArch64/sve-pred-selectop3.ll
    M llvm/test/CodeGen/AArch64/sve-stack-frame-layout.ll
    M llvm/test/CodeGen/AArch64/sve2-min-max-clamp.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfadd.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfclamp.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmax.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmaxnm.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmin.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfminnm.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmla.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmla_lane.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmls.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmls_lane.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmul.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmul_lane.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfsub.ll
    M llvm/test/CodeGen/AArch64/tagged-globals-pic.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-fma.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch-init.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-copy.mir
    M llvm/test/CodeGen/AMDGPU/addrspacecast.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-sgprs-fixed-abi.ll
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-mov-b32.mir
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-scalar-bit-ops.mir
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir
    A llvm/test/CodeGen/AMDGPU/indirect-call-set-from-other-function.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll
    M llvm/test/CodeGen/AMDGPU/merge-sbuffer-load.mir
    M llvm/test/CodeGen/AMDGPU/promote-kernel-arguments.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
    M llvm/test/CodeGen/ARM/O3-pipeline.ll
    A llvm/test/CodeGen/ARM/Windows/private-func.ll
    M llvm/test/CodeGen/ARM/machine-outliner-unoutlinable.mir
    M llvm/test/CodeGen/ARM/setjmp-bti-basic.ll
    M llvm/test/CodeGen/BPF/atomics.ll
    M llvm/test/CodeGen/BPF/atomics_2.ll
    M llvm/test/CodeGen/BPF/objdump_atomics.ll
    M llvm/test/CodeGen/BPF/objdump_cond_op.ll
    M llvm/test/CodeGen/BPF/objdump_imm_hex.ll
    M llvm/test/CodeGen/BPF/objdump_static_var.ll
    R llvm/test/CodeGen/BPF/xadd.ll
    M llvm/test/CodeGen/BPF/xadd_legal.ll
    M llvm/test/CodeGen/DirectX/length_error.ll
    R llvm/test/CodeGen/Generic/expand-vp-fp-intrinsics.ll
    R llvm/test/CodeGen/Generic/expand-vp-gather-scatter.ll
    R llvm/test/CodeGen/Generic/expand-vp-load-store.ll
    R llvm/test/CodeGen/Generic/expand-vp.ll
    A llvm/test/CodeGen/Generic/extractelement-shuffle.ll
    A llvm/test/CodeGen/Hexagon/mask.ll
    A llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
    M llvm/test/CodeGen/LoongArch/O0-pipeline.ll
    A llvm/test/CodeGen/LoongArch/float-imm-vldi.ll
    M llvm/test/CodeGen/LoongArch/opt-pipeline.ll
    M llvm/test/CodeGen/M68k/pipeline.ll
    A llvm/test/CodeGen/Mips/llvm-ir/and-srl.ll
    A llvm/test/CodeGen/NVPTX/dynamic-stackalloc-regression.ll
    A llvm/test/CodeGen/NVPTX/fence-proxy-tensormap.ll
    M llvm/test/CodeGen/NVPTX/load-store-sm-70.ll
    M llvm/test/CodeGen/NVPTX/load-store.ll
    M llvm/test/CodeGen/PowerPC/O0-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
    M llvm/test/CodeGen/PowerPC/aix-base-pointer.ll
    A llvm/test/CodeGen/PowerPC/builtins-bcd-assist.ll
    A llvm/test/CodeGen/PowerPC/builtins-ppc-bcd-assist.ll
    M llvm/test/CodeGen/PowerPC/common-chain.ll
    M llvm/test/CodeGen/RISCV/O0-pipeline.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    A llvm/test/CodeGen/RISCV/abds-neg.ll
    A llvm/test/CodeGen/RISCV/abds.ll
    A llvm/test/CodeGen/RISCV/abdu-neg.ll
    A llvm/test/CodeGen/RISCV/abdu.ll
    M llvm/test/CodeGen/RISCV/imm.ll
    M llvm/test/CodeGen/RISCV/jumptable-swguarded.ll
    M llvm/test/CodeGen/RISCV/lack-of-signed-truncation-check.ll
    A llvm/test/CodeGen/RISCV/lpad.ll
    M llvm/test/CodeGen/RISCV/rv64-legal-i32/imm.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vector-i8-index-cornercase.ll
    M llvm/test/CodeGen/RISCV/rvv/vcompress.ll
    A llvm/test/CodeGen/RISCV/rvv/vp-select.ll
    M llvm/test/CodeGen/RISCV/rvv/vrgather.ll
    M llvm/test/CodeGen/RISCV/selectcc-to-shiftand.ll
    M llvm/test/CodeGen/RISCV/signed-truncation-check.ll
    M llvm/test/CodeGen/WebAssembly/offset.ll
    M llvm/test/CodeGen/WebAssembly/simd-build-vector.ll
    M llvm/test/CodeGen/X86/2006-10-02-BoolRetCrash.ll
    M llvm/test/CodeGen/X86/2010-07-06-DbgCrash.ll
    M llvm/test/CodeGen/X86/O0-pipeline.ll
    A llvm/test/CodeGen/X86/abds-neg.ll
    M llvm/test/CodeGen/X86/abds.ll
    A llvm/test/CodeGen/X86/abdu-neg.ll
    M llvm/test/CodeGen/X86/abdu.ll
    M llvm/test/CodeGen/X86/apx/and.ll
    M llvm/test/CodeGen/X86/apx/cmov.ll
    M llvm/test/CodeGen/X86/apx/mul-i1024.ll
    M llvm/test/CodeGen/X86/apx/or.ll
    M llvm/test/CodeGen/X86/apx/push2-pop2-vector-register.ll
    M llvm/test/CodeGen/X86/apx/push2-pop2.ll
    M llvm/test/CodeGen/X86/apx/pushp-popp.ll
    M llvm/test/CodeGen/X86/apx/shift-eflags.ll
    M llvm/test/CodeGen/X86/apx/sub.ll
    M llvm/test/CodeGen/X86/apx/xor.ll
    A llvm/test/CodeGen/X86/avx10_2_512minmax-intrinsics.ll
    M llvm/test/CodeGen/X86/avx10_2_512ni-intrinsics.ll
    A llvm/test/CodeGen/X86/avx10_2_512satcvt-intrinsics.ll
    A llvm/test/CodeGen/X86/avx10_2minmax-intrinsics.ll
    M llvm/test/CodeGen/X86/avx10_2ni-intrinsics.ll
    A llvm/test/CodeGen/X86/avx10_2satcvt-intrinsics.ll
    M llvm/test/CodeGen/X86/avx512-intel-ocl.ll
    M llvm/test/CodeGen/X86/avxvnniint16-intrinsics.ll
    M llvm/test/CodeGen/X86/avxvnniint8-intrinsics.ll
    A llvm/test/CodeGen/X86/clobber_base_ptr.ll
    A llvm/test/CodeGen/X86/clobber_frame_ptr.ll
    A llvm/test/CodeGen/X86/clobber_frame_ptr_x32.ll
    M llvm/test/CodeGen/X86/cmp.ll
    M llvm/test/CodeGen/X86/combine-srem.ll
    M llvm/test/CodeGen/X86/dwarf-headers.ll
    R llvm/test/CodeGen/X86/extractelement-shuffle.ll
    M llvm/test/CodeGen/X86/i386-baseptr.ll
    M llvm/test/CodeGen/X86/inline-asm-function-call-pic.ll
    M llvm/test/CodeGen/X86/opt-pipeline.ll
    M llvm/test/CodeGen/X86/popcnt.ll
    M llvm/test/CodeGen/X86/select_const_i128.ll
    M llvm/test/CodeGen/X86/srem-seteq-vec-splat.ll
    M llvm/test/CodeGen/X86/x86-32-intrcc.ll
    M llvm/test/CodeGen/X86/x86-64-baseptr.ll
    M llvm/test/CodeGen/X86/x86-64-flags-intrinsics.ll
    M llvm/test/DebugInfo/COFF/fission-cu.ll
    M llvm/test/DebugInfo/COFF/fission-sections.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/dse/dse-after-memcpyopt-merge.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/dse/shorten-offset.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/dse/shorten.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/salvage-value.ll
    M llvm/test/DebugInfo/Generic/sroa-extract-bits.ll
    M llvm/test/DebugInfo/WebAssembly/dwarf-headers.ll
    M llvm/test/DebugInfo/WebAssembly/fission-cu.ll
    M llvm/test/DebugInfo/X86/convert-debugloc.ll
    M llvm/test/DebugInfo/X86/convert-loclist.ll
    M llvm/test/DebugInfo/X86/fission-cu.ll
    M llvm/test/DebugInfo/X86/fission-hash-local.ll
    M llvm/test/DebugInfo/X86/fission-hash.ll
    A llvm/test/DebugInfo/X86/split-dwarf-dwo-hash.ll
    R llvm/test/DebugInfo/X86/split-dwarf-multiple-cu-hash.ll
    M llvm/test/DebugInfo/X86/sret.ll
    M llvm/test/ExecutionEngine/JITLink/AArch64/ELF_relocations.s
    M llvm/test/MC/AArch64/SME2/bfclamp-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfclamp.s
    M llvm/test/MC/AArch64/SME2/bfmax-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfmax.s
    M llvm/test/MC/AArch64/SME2/bfmaxnm-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfmaxnm.s
    M llvm/test/MC/AArch64/SME2/bfmin-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfmin.s
    M llvm/test/MC/AArch64/SME2/bfminnm-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfminnm.s
    M llvm/test/MC/AArch64/SME2p1/directive-arch-negative.s
    M llvm/test/MC/AArch64/SME2p1/directive-arch.s
    M llvm/test/MC/AArch64/SME2p1/directive-arch_extension-negative.s
    M llvm/test/MC/AArch64/SME2p1/directive-arch_extension.s
    M llvm/test/MC/AArch64/SVE2p1/bfadd-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfadd.s
    M llvm/test/MC/AArch64/SVE2p1/bfclamp-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfclamp.s
    M llvm/test/MC/AArch64/SVE2p1/bfmax-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfmax.s
    M llvm/test/MC/AArch64/SVE2p1/bfmaxnm-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfmaxnm.s
    M llvm/test/MC/AArch64/SVE2p1/bfmin-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfmin.s
    M llvm/test/MC/AArch64/SVE2p1/bfminnm-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfminnm.s
    M llvm/test/MC/AArch64/SVE2p1/bfmla-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfmla.s
    M llvm/test/MC/AArch64/SVE2p1/bfmls-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfmls.s
    M llvm/test/MC/AArch64/SVE2p1/bfmul-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfmul.s
    M llvm/test/MC/AArch64/SVE2p1/bfsub-diagnostics.s
    M llvm/test/MC/AArch64/SVE2p1/bfsub.s
    M llvm/test/MC/AArch64/SVE2p1/directive-arch-negative.s
    M llvm/test/MC/AArch64/SVE2p1/directive-arch.s
    M llvm/test/MC/AArch64/SVE2p1/directive-arch_extension-negative.s
    M llvm/test/MC/AArch64/SVE2p1/directive-arch_extension.s
    A llvm/test/MC/AArch64/adrp-auth-relocation.s
    M llvm/test/MC/AArch64/arm64-elf-relocs.s
    M llvm/test/MC/AArch64/ilp32-diagnostics.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx10_err_pos.s
    M llvm/test/MC/AMDGPU/gfx12_asm_smem.s
    A llvm/test/MC/ARM/Windows/branch-reloc-offset.s
    M llvm/test/MC/BPF/insn-unit.s
    M llvm/test/MC/BPF/load-store-32.s
    A llvm/test/MC/Disassembler/X86/avx10.2-satcvt-32.txt
    A llvm/test/MC/Disassembler/X86/avx10.2-satcvt-64.txt
    A llvm/test/MC/Disassembler/X86/avx10.2minmax-32.txt
    A llvm/test/MC/Disassembler/X86/avx10.2minmax-64.txt
    M llvm/test/MC/Disassembler/X86/avx10_2ni-32.txt
    M llvm/test/MC/Disassembler/X86/avx10_2ni-64.txt
    M llvm/test/MC/WebAssembly/dwarfdump.ll
    A llvm/test/MC/X86/avx10.2minmax-32-att.s
    A llvm/test/MC/X86/avx10.2minmax-32-intel.s
    A llvm/test/MC/X86/avx10.2minmax-64-att.s
    A llvm/test/MC/X86/avx10.2minmax-64-intel.s
    A llvm/test/MC/X86/avx10.2satcvt-32-att.s
    A llvm/test/MC/X86/avx10.2satcvt-32-intel.s
    A llvm/test/MC/X86/avx10.2satcvt-64-att.s
    A llvm/test/MC/X86/avx10.2satcvt-64-intel.s
    M llvm/test/MC/X86/avx10_2ni-32-intel.s
    M llvm/test/MC/X86/avx10_2ni-64-att.s
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-variadics.td
    A llvm/test/TableGen/ProcessorUniqueNames.td
    A llvm/test/TableGen/SubtargetFeatureUniqueNames.td
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/test/Transforms/Attributor/heap_to_stack_gpu.ll
    M llvm/test/Transforms/Attributor/value-simplify-gpu.ll
    M llvm/test/Transforms/CorrelatedValuePropagation/shl.ll
    A llvm/test/Transforms/GVN/merge-range.ll
    A llvm/test/Transforms/InferAddressSpaces/AMDGPU/is.constant.ll
    A llvm/test/Transforms/InferAddressSpaces/AMDGPU/masked-load-store.ll
    A llvm/test/Transforms/InferAddressSpaces/AMDGPU/prefetch.ll
    A llvm/test/Transforms/InferAddressSpaces/AMDGPU/store-pointer-to-self.ll
    M llvm/test/Transforms/InstCombine/dbg-scalable-store-fixed-frag.ll
    M llvm/test/Transforms/InstCombine/debuginfo.ll
    M llvm/test/Transforms/InstCombine/icmp-and-shift.ll
    A llvm/test/Transforms/InstCombine/icmp-or-of-select-with-zero.ll
    M llvm/test/Transforms/InstCombine/load-cmp.ll
    M llvm/test/Transforms/InstCombine/saturating-add-sub.ll
    M llvm/test/Transforms/InstCombine/select-icmp-and.ll
    M llvm/test/Transforms/InstCombine/stpncpy-1.ll
    M llvm/test/Transforms/InstCombine/strncpy-1.ll
    M llvm/test/Transforms/InstCombine/strncpy-3.ll
    M llvm/test/Transforms/InstSimplify/insertelement.ll
    A llvm/test/Transforms/InstSimplify/select-icmp.ll
    M llvm/test/Transforms/LICM/hoist-binop.ll
    M llvm/test/Transforms/LoopIdiom/basic.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/intrinsiccost.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/streaming-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-saddsatcost.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/multiple-strides-vectorization.ll
    A llvm/test/Transforms/LoopVectorize/tail-folding-alloca-in-loop.ll
    M llvm/test/Transforms/Mem2Reg/dbg_declare_to_value_conversions.ll
    M llvm/test/Transforms/Mem2Reg/debug-alloca-vla-2.ll
    M llvm/test/Transforms/OpenMP/barrier_removal.ll
    M llvm/test/Transforms/PhaseOrdering/varargs.ll
    A llvm/test/Transforms/PreISelIntrinsicLowering/expand-vp-fp-intrinsics.ll
    A llvm/test/Transforms/PreISelIntrinsicLowering/expand-vp-gather-scatter.ll
    A llvm/test/Transforms/PreISelIntrinsicLowering/expand-vp-load-store.ll
    A llvm/test/Transforms/PreISelIntrinsicLowering/expand-vp.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/strided-loads-with-external-use-ptr.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR32086.ll
    M llvm/test/Transforms/SLPVectorizer/X86/addsub.ll
    A llvm/test/Transforms/SLPVectorizer/X86/cmp-diff-sized.ll
    A llvm/test/Transforms/SLPVectorizer/X86/extractelement-phi-in-landingpad.ll
    M llvm/test/Transforms/SLPVectorizer/X86/fmuladd.ll
    M llvm/test/Transforms/SLPVectorizer/X86/landing_pad.ll
    A llvm/test/Transforms/SLPVectorizer/X86/reduced-value-replace-extractelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-gather-non-scheduled-extracts.ll
    A llvm/test/Transforms/SLPVectorizer/X86/stores_mix_sizes.ll
    M llvm/test/Transforms/SLPVectorizer/revec.ll
    M llvm/test/Transforms/SimplifyCFG/X86/sink-common-code.ll
    A llvm/test/Transforms/StructurizeCFG/loop-break-phi.ll
    A llvm/test/Transforms/TailCallElim/stackrestore.ll
    M llvm/test/tools/llvm-dwarfdump/X86/prettyprint_type_units.s
    A llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-merged-funcs-dwarf.yaml
    M llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bw.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dq.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse1.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse2.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse41.s
    M llvm/test/tools/llvm-mca/X86/SapphireRapids/resources-avx512.s
    M llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512.s
    M llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512.s
    M llvm/test/tools/llvm-nm/data.test
    M llvm/test/tools/llvm-nm/readonly.test
    M llvm/test/tools/llvm-objdump/section-headers.test
    A llvm/test/tools/llvm-readobj/COFF/arm64x-reloc-invalid.yaml
    A llvm/test/tools/llvm-readobj/COFF/arm64x-reloc.yaml
    M llvm/test/tools/llvm-readobj/ELF/AArch64/aarch64-feature-pauth.s
    A llvm/test/tools/llvm-symbolizer/skip-line-zero.s
    M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
    M llvm/test/tools/yaml2obj/COFF/load-config.yaml
    M llvm/tools/bugpoint/CMakeLists.txt
    M llvm/tools/dsymutil/MachODebugMapParser.cpp
    M llvm/tools/llc/CMakeLists.txt
    M llvm/tools/llc/llc.cpp
    M llvm/tools/lli/CMakeLists.txt
    M llvm/tools/lli/ChildTarget/CMakeLists.txt
    M llvm/tools/llvm-gsymutil/Opts.td
    M llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp
    M llvm/tools/llvm-jitlink/CMakeLists.txt
    M llvm/tools/llvm-jitlink/llvm-jitlink-executor/CMakeLists.txt
    M llvm/tools/llvm-lto2/CMakeLists.txt
    M llvm/tools/llvm-rc/ResourceScriptStmt.h
    M llvm/tools/llvm-readobj/COFFDumper.cpp
    M llvm/tools/llvm-readobj/ELFDumper.cpp
    M llvm/tools/llvm-readobj/ObjDumper.cpp
    M llvm/tools/llvm-reduce/ReducerWorkItem.cpp
    M llvm/tools/llvm-reduce/deltas/ReduceInstructionFlags.cpp
    M llvm/tools/llvm-reduce/deltas/ReduceVirtualRegisters.cpp
    M llvm/tools/llvm-symbolizer/Opts.td
    M llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
    M llvm/tools/opt/CMakeLists.txt
    M llvm/tools/opt/optdriver.cpp
    M llvm/unittests/Analysis/CMakeLists.txt
    M llvm/unittests/Analysis/ScalarEvolutionTest.cpp
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
    M llvm/unittests/Analysis/VectorUtilsTest.cpp
    M llvm/unittests/BinaryFormat/MachOTest.cpp
    M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
    M llvm/unittests/IR/ConstantRangeTest.cpp
    M llvm/unittests/Passes/Plugins/CMakeLists.txt
    M llvm/unittests/ProfileData/PGOCtxProfReaderWriterTest.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp
    M llvm/unittests/Support/CMakeLists.txt
    M llvm/unittests/Support/DynamicLibrary/CMakeLists.txt
    A llvm/unittests/Support/GenericDomTreeTest.cpp
    M llvm/unittests/Support/VirtualFileSystemTest.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp
    M llvm/utils/TableGen/Common/CMakeLists.txt
    M llvm/utils/TableGen/Common/CodeGenSchedule.cpp
    M llvm/utils/TableGen/Common/DAGISelMatcher.h
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h
    M llvm/utils/TableGen/Common/Types.h
    A llvm/utils/TableGen/Common/Utils.cpp
    A llvm/utils/TableGen/Common/Utils.h
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp
    M llvm/utils/TableGen/SubtargetEmitter.cpp
    M llvm/utils/TableGen/X86DisassemblerTables.cpp
    M llvm/utils/TableGen/X86InstrMappingEmitter.cpp
    M llvm/utils/chunk-print-before-all.py
    M llvm/utils/extract_symbols.py
    M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
    M llvm/utils/gn/secondary/clang/test/BUILD.gn
    M llvm/utils/gn/secondary/lldb/include/lldb/Host/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Target/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/DebugInfo/GSYM/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/BPF/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/Hexagon/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/Support/BUILD.gn
    M llvm/utils/gn/secondary/llvm/utils/TableGen/Common/BUILD.gn
    M llvm/utils/llvm-locstats/llvm-locstats.py
    M mlir/docs/DefiningDialects/AttributesAndTypes.md
    M mlir/docs/Dialects/Vector.md
    M mlir/examples/transform/Ch2/lib/MyExtension.cpp
    M mlir/examples/transform/Ch3/lib/MyExtension.cpp
    M mlir/examples/transform/Ch4/lib/MyExtension.cpp
    M mlir/include/mlir/Dialect/ArmSME/IR/ArmSMEOps.td
    M mlir/include/mlir/Dialect/ArmSME/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/include/mlir/IR/DialectRegistry.h
    M mlir/include/mlir/Pass/PassRegistry.h
    M mlir/include/mlir/TableGen/Class.h
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/include/mlir/Tools/mlir-opt/MlirOptMain.h
    M mlir/lib/Analysis/Presburger/IntegerRelation.cpp
    M mlir/lib/Analysis/Presburger/Simplex.cpp
    M mlir/lib/Analysis/Presburger/Utils.cpp
    M mlir/lib/Conversion/ConvertToLLVM/ConvertToLLVMPass.cpp
    M mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp
    M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    M mlir/lib/Dialect/Affine/TransformOps/AffineTransformOps.cpp
    M mlir/lib/Dialect/Affine/Utils/LoopUtils.cpp
    M mlir/lib/Dialect/Arith/Transforms/IntNarrowing.cpp
    M mlir/lib/Dialect/ArmSME/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/ArmSME/Transforms/OuterProductFusion.cpp
    M mlir/lib/Dialect/Bufferization/TransformOps/BufferizationTransformOps.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/BufferDeallocationSimplification.cpp
    M mlir/lib/Dialect/Func/TransformOps/FuncTransformOps.cpp
    M mlir/lib/Dialect/GPU/CMakeLists.txt
    M mlir/lib/Dialect/GPU/TransformOps/GPUTransformOps.cpp
    M mlir/lib/Dialect/GPU/TransformOps/Utils.cpp
    A mlir/lib/Dialect/GPU/Transforms/DecomposeMemRefs.cpp
    R mlir/lib/Dialect/GPU/Transforms/DecomposeMemrefs.cpp
    M mlir/lib/Dialect/GPU/Transforms/NVVMAttachTarget.cpp
    M mlir/lib/Dialect/GPU/Transforms/ROCDLAttachTarget.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/DialectExtension.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Interchange.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Loops.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
    M mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/MemRef/TransformOps/MemRefTransformOps.cpp
    M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
    M mlir/lib/Dialect/SCF/TransformOps/SCFTransformOps.cpp
    M mlir/lib/Dialect/SCF/Utils/Utils.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
    M mlir/lib/Dialect/SparseTensor/TransformOps/SparseTensorTransformOps.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseBufferRewriting.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseVectorization.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorTilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Tensor/TransformOps/TensorTransformOps.cpp
    M mlir/lib/Dialect/Tensor/Utils/Utils.cpp
    M mlir/lib/Dialect/Transform/DebugExtension/DebugExtension.cpp
    M mlir/lib/Dialect/Transform/IRDLExtension/IRDLExtension.cpp
    M mlir/lib/Dialect/Transform/Interfaces/TransformInterfaces.cpp
    M mlir/lib/Dialect/Transform/LoopExtension/LoopExtension.cpp
    M mlir/lib/Dialect/Transform/PDLExtension/PDLExtension.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorContract.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorScan.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorTransfer.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorUnroll.cpp
    M mlir/lib/IR/AffineExpr.cpp
    M mlir/lib/IR/AffineMap.cpp
    M mlir/lib/IR/Dialect.cpp
    M mlir/lib/IR/OperationSupport.cpp
    M mlir/lib/Interfaces/FunctionInterfaces.cpp
    M mlir/lib/Pass/PassRegistry.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
    M mlir/lib/Transforms/Mem2Reg.cpp
    M mlir/lib/Transforms/SROA.cpp
    M mlir/lib/Transforms/Utils/RegionUtils.cpp
    M mlir/python/requirements.txt
    M mlir/test/Dialect/ArmSME/outer-product-fusion.mlir
    M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/dealloc-branchop-interface.mlir
    M mlir/test/Dialect/LLVMIR/types.mlir
    M mlir/test/Dialect/Linalg/data-layout-propagation.mlir
    M mlir/test/Dialect/Linalg/detensorize_entry_block.mlir
    M mlir/test/Dialect/Linalg/detensorize_if.mlir
    M mlir/test/Dialect/Linalg/detensorize_while.mlir
    M mlir/test/Dialect/Linalg/detensorize_while_impure_cf.mlir
    M mlir/test/Dialect/Linalg/detensorize_while_pure_cf.mlir
    M mlir/test/Dialect/Vector/invalid.mlir
    M mlir/test/Dialect/Vector/ops.mlir
    M mlir/test/Dialect/Vector/vector-contract-to-matrix-intrinsics-transforms.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/multi-tile-matmul-mixed-types.mlir
    A mlir/test/Integration/Dialect/MemRef/cast-runtime-verification.mlir
    A mlir/test/Integration/Dialect/MemRef/load-runtime-verification.mlir
    A mlir/test/Integration/Dialect/MemRef/memref_abi.c
    A mlir/test/Integration/Dialect/MemRef/print-memref.mlir
    A mlir/test/Integration/Dialect/MemRef/reinterpret-cast-runtime-verification.mlir
    A mlir/test/Integration/Dialect/MemRef/subview-runtime-verification.mlir
    A mlir/test/Integration/Dialect/MemRef/verify-memref.mlir
    R mlir/test/Integration/Dialect/Memref/cast-runtime-verification.mlir
    R mlir/test/Integration/Dialect/Memref/load-runtime-verification.mlir
    R mlir/test/Integration/Dialect/Memref/memref_abi.c
    R mlir/test/Integration/Dialect/Memref/print-memref.mlir
    R mlir/test/Integration/Dialect/Memref/reinterpret-cast-runtime-verification.mlir
    R mlir/test/Integration/Dialect/Memref/subview-runtime-verification.mlir
    R mlir/test/Integration/Dialect/Memref/verify-memref.mlir
    M mlir/test/Target/LLVMIR/Import/global-variables.ll
    M mlir/test/Target/LLVMIR/llvmir-types.mlir
    M mlir/test/Transforms/canonicalize-block-merge.mlir
    M mlir/test/Transforms/canonicalize-dce.mlir
    M mlir/test/Transforms/make-isolated-from-above.mlir
    A mlir/test/Transforms/test-canonicalize-merge-large-blocks.mlir
    M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
    M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
    M mlir/tools/mlir-cpu-runner/CMakeLists.txt
    M mlir/tools/mlir-opt/CMakeLists.txt
    M mlir/unittests/Dialect/Transform/BuildOnlyExtensionTest.cpp
    M mlir/unittests/IR/DialectTest.cpp
    M openmp/runtime/src/kmp_os.h
    M openmp/runtime/src/kmp_platform.h
    M openmp/runtime/src/z_Linux_asm.S
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  update

Created using spr 1.3.4


Compare: https://github.com/llvm/llvm-project/compare/1ffa55d00c57...3fa85262b3f1

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