[all-commits] [llvm/llvm-project] 294ed6: [RISCV] Use if init statement to reduce scope of v...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Thu Aug 15 13:51:54 PDT 2024


  Branch: refs/heads/users/alexey-bataev/spr/slpimprovefix-subvectors-in-gatherbuildvector-nodes-handling
  Home:   https://github.com/llvm/llvm-project
  Commit: 294ed6a1eb090627441ee0426a64d8f71985fce3
      https://github.com/llvm/llvm-project/commit/294ed6a1eb090627441ee0426a64d8f71985fce3
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [RISCV] Use if init statement to reduce scope of variable. NFC


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AArch64/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/AMDGPU/permute_i8.ll
    M llvm/test/CodeGen/AMDGPU/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/ARM/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/Mips/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/PowerPC/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/RISCV/div.ll
    M llvm/test/CodeGen/RISCV/rv64zba.ll
    M llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/Thumb2/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/X86/srem-seteq-illegal-types.ll

  Log Message:
  -----------
  [TargetLowering][AMDGPU][ARM][RISCV][X86] Teach SimplifyDemandedBits to combine (srl (sra X, C1), ShAmt) -> sra(X, C1+ShAmt) (#101751)

If the upper bits of the shr aren't demanded.

This helps with cases where the outer srl was originally an sra and was
converted to a srl by SimplifyDemandedBits before it had a chance to
combine with the inner sra. This can occur when the inner sra was part
of a sign_extend_inreg expansion.

There are some regressions in ARM and Thumb2.


  Commit: b5e47d2e409f2fb70c9397fccf4a74660c319bb0
      https://github.com/llvm/llvm-project/commit/b5e47d2e409f2fb70c9397fccf4a74660c319bb0
  Author: Bangtian Liu <liubangtian at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
    M mlir/test/Dialect/Vector/vector-warp-distribute.mlir

  Log Message:
  -----------
  [mlir][vector] Add extra check on distribute types to avoid crashes (#102952)

This PR addresses the issue detailed in
https://github.com/iree-org/iree/issues/17948.

The problem occurs when distributed types are set to NULL, leading to
compilation crashes.

---------

Signed-off-by: Bangtian Liu <liubangtian at gmail.com>


  Commit: 8345289ded788f4df79f59df76df0c0437c3df64
      https://github.com/llvm/llvm-project/commit/8345289ded788f4df79f59df76df0c0437c3df64
  Author: Thomas Fransham <tfransham at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/lib/Analysis/RegionInfo.cpp
    M llvm/lib/MC/MCDisassembler/MCExternalSymbolizer.cpp
    M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp

  Log Message:
  -----------
  [LLVM] Fix missing includes for function declarations that will be needed for explicit symbol visibility (#103900)

In multiple source files function definitions never sees there
declaration in a header because its never included causing linker errors
when explicit symbol visibility macros\dllexport are added to the
declarations.

Most of these were originally found by @tstellar in
https://github.com/llvm/llvm-project/pull/67502

TargetRegistry.h is needed in MCExternalSymbolizer.cpp for
createMCSymbolizer
Analysis/Passes.h is needed in LazyValueInfo.cpp and RegionInfo.cpp for
createLazyValueInfoPassin and createRegionInfoPass
Transforms/Scalar.h is needed in SpeculativeExecution.cpp for
createSpeculativeExecutionPass


  Commit: f0fe6c66cb507cb9bd9abdbccf42b85ef32aabba
      https://github.com/llvm/llvm-project/commit/f0fe6c66cb507cb9bd9abdbccf42b85ef32aabba
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/SIDefines.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h

  Log Message:
  -----------
  [AMDGPU][NFC] Rename isHi() to isHi16Reg() for clarity. (#103888)

And declare it to take an MCRegister.

Also rename related entities and remove a comment for the function that
depending on its purpose is either irrelevant or misleading.


  Commit: f3f465ed144b47223caa091b5ea65d7234955aa1
      https://github.com/llvm/llvm-project/commit/f3f465ed144b47223caa091b5ea65d7234955aa1
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M compiler-rt/test/hwasan/TestCases/hwasan_symbolize_stack_uas.cpp

  Log Message:
  -----------
  Do not use dirname in test (#103395)

Suggested in
https://github.com/llvm/llvm-project/pull/95308#discussion_r1714317539


  Commit: 234cb4c6e3a382a5c0b3396647a1839699944ec0
      https://github.com/llvm/llvm-project/commit/234cb4c6e3a382a5c0b3396647a1839699944ec0
  Author: Froster <34234343+Fros1er at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/dag-combine-concat-vectors.ll
    M llvm/test/CodeGen/RISCV/rvv/binop-splats.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-binop-splats.ll
    M llvm/test/CodeGen/RISCV/rvv/vadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vand-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vmul-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vor-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vsub-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vxor-sdnode.ll
    M llvm/test/CodeGen/WebAssembly/simd-shift-complex-splats.ll

  Log Message:
  -----------
  [SelectionDAG] Scalarize binary ops of splats before legal types (#100749)

Fixes #65072. This allows binary ops of splats to be scalarized if the
operation isn't legal on the element type isn't legal, but is legal on
the type it will be legalized to. I assume if an Op is legal both in
scalar and vector, choose scalar version should always be better no
matter what the type is.

There are some cases that my approach can't scalarize, for example:
``` llvm
; test/CodeGen/RISCV/rvv/select-int.ll
define <vscale x 4 x i64> @select_nxv4i64(i1 zeroext %c, <vscale x 4 x i64> %a, <vscale x 4 x i64> %b) {
  %v = select i1 %c, <vscale x 4 x i64> %a, <vscale x 4 x i64> %b
  ret <vscale x 4 x i64> %v
}
```
https://godbolt.org/z/xzqrKrxvK
`xor (splat i1, splat i1)` is generated in late step after LegalizeType,
from select. I didn't figure out how to make `xor i1, i1` legal at this
time.

---------

Co-authored-by: Luke Lau <luke at igalia.com>


  Commit: fdc4955086681b0c4fc109ba8e77762a8d67c1f3
      https://github.com/llvm/llvm-project/commit/fdc4955086681b0c4fc109ba8e77762a8d67c1f3
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/secondary.h

  Log Message:
  -----------
  Revert "[scudo] Separated committed and decommitted entries." (#104045)

Reverts llvm/llvm-project#101409

This caused some memory usage regressions and it has a known bug in page
releasing.


  Commit: d0c16a614247c36b8b1c8d7bff42d01e7b03ade3
      https://github.com/llvm/llvm-project/commit/d0c16a614247c36b8b1c8d7bff42d01e7b03ade3
  Author: Kirill Stoimenov <87100199+kstoimenov at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/Linux/prctl.cpp

  Log Message:
  -----------
  Fix prctl test to execute all test cases if the first condition fails. (#102987)


  Commit: d213981c80626698a07b11ce872acba098a863d4
      https://github.com/llvm/llvm-project/commit/d213981c80626698a07b11ce872acba098a863d4
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/TokenKinds.def
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/test/SemaCXX/type-traits.cpp

  Log Message:
  -----------
  [clang] Implement `__builtin_is_implicit_lifetime()` (#101807)

This intrinsic supports [P2647R1](https://wg21.link/p2674r1) "A trait
for implicit lifetime types".
Resolves #98627

---------

Co-authored-by: Timm Baeder <tbaeder at redhat.com>


  Commit: 9c7020507f19a69e8d53829ab959e2bc56f7c2f1
      https://github.com/llvm/llvm-project/commit/9c7020507f19a69e8d53829ab959e2bc56f7c2f1
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx17Issues.csv

  Log Message:
  -----------
  [libc++] Remove duplicate C++17 LWG issues from the CSVs

- LWG2308 was voted into C++14 in the 2014 Issaquah meeting
- LWG2682 was voted into C++20 in San Diego 2018, not C++17 in Issaquah
- LWG2769 was voted into C++17 in Kona 2017, not Issaquah 2016


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

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    M mlir/test/Dialect/Vector/sink-vector-broadcast.mlir
    M mlir/test/Dialect/Vector/vector-reduce-to-contract.mlir

  Log Message:
  -----------
  [mlir][vector] Add tests for `populateSinkVectorBroadcastPatterns` (1/n) (#102286)

Adds tests for scalable vectors in:
  * sink-vector-broadcast.mlir

This test file excercises patterns grouped under
`populateSinkVectorBroadcastPatterns`, which includes:
  * `ReorderElementwiseOpsOnBroadcast`,
  * `ReorderCastOpsOnBroadcast`.

Right now there are only tests for the former. However, I've noticed
that "vector-reduce-to-contract.mlir" contains tests for the latter and
I've left a few TODOs to group these tests back together in one file.

Additionally, added some helpful `notifyMatchFailure` messages in
`ReorderElementwiseOpsOnBroadcast`.


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

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

  Log Message:
  -----------
  [TextAPI] Use range-based for loops (NFC) (#103530)


  Commit: cce2271eab8173f5c27c1e99863a056a9430c252
      https://github.com/llvm/llvm-project/commit/cce2271eab8173f5c27c1e99863a056a9430c252
  Author: Walter Erquinigo <a20012251 at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm

  Log Message:
  -----------
  [LLDB][OSX] Add a fallback support exe directory (#103458)

LLDB on OSX is looking at a `bin` directory sibling to the `lib` one
that contains liblldb for its supporting executables. This works well
for CMake, however, for other build systems like bazel, it's not that
easy to have that build structure, for which it's much easier to also
use the `lib` directory as a fallback under the absence of `bin`.
This shouldn't break anything, but instead should make it a bit easier
for LLDB to work with different build systems and folder structures.


  Commit: 7e5cd8f1b6c5263ed5e2cc03d60c8779a8d3e9f7
      https://github.com/llvm/llvm-project/commit/7e5cd8f1b6c5263ed5e2cc03d60c8779a8d3e9f7
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx14Papers.csv
    M libcxx/utils/synchronize_csv_status_files.py

  Log Message:
  -----------
  [libc++] Mechanical adjustments for the C++14 Paper status files

Make sure Cxx14Papers.csv has the same columns as the other CSV files.
Somehow this was missed in my previous passes to standardize this.


  Commit: ac00ce201562a2d86fbac45d25cab6c7aa9e4ac6
      https://github.com/llvm/llvm-project/commit/ac00ce201562a2d86fbac45d25cab6c7aa9e4ac6
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M .git-blame-ignore-revs

  Log Message:
  -----------
  [libc++] Add mechanical update to CxxPapers.rst to git-blame-ignore-revs


  Commit: 36a0f20ac3c564fd5953a8dc60b8ab9323945cdc
      https://github.com/llvm/llvm-project/commit/36a0f20ac3c564fd5953a8dc60b8ab9323945cdc
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPassBuilder.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/test/CodeGen/AMDGPU/bug-v4f64-subvector.ll

  Log Message:
  -----------
  AMDGPU/NewPM: Fill out addPreISelPasses (#102814)

This specific callback should now be at parity with the old
pass manager version. There are still some missing IR passes
before this point.

Also I don't understand the need for the RequiresAnalysisPass at the
end. SelectionDAG should just be using the uncached getResult?


  Commit: 27667285fe130b87ebda53e8335fc277292c751d
      https://github.com/llvm/llvm-project/commit/27667285fe130b87ebda53e8335fc277292c751d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h

  Log Message:
  -----------
  CodeGen/NewPM: Add ExpandLarge* passes to isel IR passes (#102815)


  Commit: 5eb6330ef6de633e119a6679efce1f9018110eb1
      https://github.com/llvm/llvm-project/commit/5eb6330ef6de633e119a6679efce1f9018110eb1
  Author: quanwanandy <quanwanandy at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  Fix bazel build (#104054)

Tested w/ bazel locally.


  Commit: 0eb1fc88680e2df430a5cb68be5e6a671b43c82d
      https://github.com/llvm/llvm-project/commit/0eb1fc88680e2df430a5cb68be5e6a671b43c82d
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libcxx/src/chrono.cpp
    M libcxx/src/filesystem/filesystem_clock.cpp

  Log Message:
  -----------
  [libcxx] Set `_LIBCPP_HAS_CLOCK_GETTIME` for GPU targets (#99243)

Summary:
I am attempting to get the GPU to build and support libc++. One issue
I've encountered is that it will look for `timeval` unless this macro is
set. We can support `CLOCK_MONOTONIC` on the GPU fairly easily as we
have access to a fixed-frequency clock via `__builtin_readsteadycounter`
intrinsics with a known frequency. This also requires `CLOCK_REALTIME`
which we can't support, but provide anyway from the GPU `libc` to make
this happy. It will return an error so at least that will be obvious.

I may need a more consistent configuration for this in the future, maybe
I should put a common macro in a different common header that's just
`__GPU__`? I don't know where I would put such a thing however.


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
    M llvm/test/CodeGen/X86/oddshuffles.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-7.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll

  Log Message:
  -----------
  [X86] combineEXTRACT_SUBVECTOR - treat oneuse extractions from loads as free

Allows further reductions in instruction vector widths


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

  Changed paths:
    M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll

  Log Message:
  -----------
  [X86] Add test coverage for #103564


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-8.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
    M llvm/test/CodeGen/X86/vector-pack-512.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg.ll

  Log Message:
  -----------
  [X86] concat(permv3(x0,m0,y0),permv3(x0,m1,y0)) -> permv3(concat(x0,u),m3,concat(y0,u))

Reference the lowest subvector if higher subvectors match - this often occurs in length changing shuffles.

Fixes #103564


  Commit: a0be7053d7ce4c93dfb10f5566b611069083994f
      https://github.com/llvm/llvm-project/commit/a0be7053d7ce4c93dfb10f5566b611069083994f
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZ.h
    M llvm/lib/Target/SystemZ/SystemZCallingConv.h
    M llvm/lib/Target/SystemZ/SystemZCallingConv.td
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    A llvm/test/CodeGen/SystemZ/mixed-ptr-sizes.ll

  Log Message:
  -----------
  [SystemZ][z/OS] Continuation of __ptr32 support (#103393)

This is a continuation of the __ptr32 support added here
https://github.com/llvm/llvm-project/commit/135fecd4441068667ef23f56098befd0c42f89f2


  Commit: 715c3033af4d38e80c110f0de8e9ddecb5a22fc3
      https://github.com/llvm/llvm-project/commit/715c3033af4d38e80c110f0de8e9ddecb5a22fc3
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/test/CodeGen/RISCV/GlobalISel/iabs.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smax-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smax-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smin-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smin-rv64.mir

  Log Message:
  -----------
  [RISCV][GISel] Support G_SEXT_INREG for Zbb. (#102682)


  Commit: 6b652f6edaa84a9e4934885f6f12b973efb1b810
      https://github.com/llvm/llvm-project/commit/6b652f6edaa84a9e4934885f6f12b973efb1b810
  Author: Malavika Samak <malavika.samak at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-field-attr.cpp

  Log Message:
  -----------
  [attributes][-Wunsafe-buffer-usage] Support adding unsafe_buffer_usage attribute to struct fields (#101585)

Extend the unsafe_buffer_usage attribute, so they can also be added to
struct fields. This will cause the compiler to warn about the unsafe
field at their access sites.

Co-authored-by: MalavikaSamak <malavika2 at apple.com>


  Commit: bdf4b9a00c13044b6e989f58f0e505c7236c4a3a
      https://github.com/llvm/llvm-project/commit/bdf4b9a00c13044b6e989f58f0e505c7236c4a3a
  Author: gonzalobg <65027571+gonzalobg at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp

  Log Message:
  -----------
  [NVPTX] Fix typo causing GCC warning (#103045)

Solves typo found by @mikaelholmen here:
https://github.com/llvm/llvm-project/pull/98551#discussion_r1714824883


  Commit: 21cea3f3be51d5c3856b87fed301b5fc3dddade4
      https://github.com/llvm/llvm-project/commit/21cea3f3be51d5c3856b87fed301b5fc3dddade4
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    M llvm/test/CodeGen/AMDGPU/promote-alloca-addrspacecast.ll

  Log Message:
  -----------
  AMDGPU: Stop promoting allocas with addrspacecast users (#104051)

We cannot promote this case unless we know the value is only
observed through flat operations. We cannot analyze this through
a call. PointerMayBeCaptured was an imprecise check for this.
A callee with a nocapture attribute may still cast to private and
observe the address space, so really we need a different notion
of nocapture.

I doubt this was of any use anyway. The promotable cases should
have optimized out addrspacecast to begin earlier.

Fixes #66669
Fixes #104035


  Commit: 3287a2ebcaf0197f68905917a0d7eba35df831e2
      https://github.com/llvm/llvm-project/commit/3287a2ebcaf0197f68905917a0d7eba35df831e2
  Author: David Green <david.green at arm.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/peephole-sxtw.mir

  Log Message:
  -----------
  [AArch64] Add some uxtw peephole tests. NFC


  Commit: c4ae8b150476d834f0f8f010e6e76048c836b4ca
      https://github.com/llvm/llvm-project/commit/c4ae8b150476d834f0f8f010e6e76048c836b4ca
  Author: vporpo <vporpodas at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement Instruction flags (#103343)

This patch implements sandboxir::Instruction flags.


  Commit: 0dedd6fe1409ab02945bb5f903a23335aa79b590
      https://github.com/llvm/llvm-project/commit/0dedd6fe1409ab02945bb5f903a23335aa79b590
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Parse/ParseTemplate.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/CXX/drs/cwg25xx.cpp
    M clang/test/SemaTemplate/concepts.cpp

  Log Message:
  -----------
  [Clang] Adjust concept definition locus (#103867)

Per [basic.scope], the locus of a concept is immediately after the
introduction of its name.

This let us provide better diagnostics for attempt to define recursive
concepts.

Note that recursive concepts are not supported per
https://eel.is/c++draft/basic#scope.pdecl-note-3, but there is no
normative wording for that restriction. This is a known defect
introduced by
[p1787r6](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p1787r6.html).

Fixes #55875


  Commit: 0ca0d55c14d9a4ed694f4fddf0f16616178ca7a4
      https://github.com/llvm/llvm-project/commit/0ca0d55c14d9a4ed694f4fddf0f16616178ca7a4
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libc/newhdrgen/yaml/math.yaml

  Log Message:
  -----------
  [libc] Fix 'float type' incorrectly being used as the return type


  Commit: 0f08aa43a611c6eecd6d930dd7e8f3f03e5a4300
      https://github.com/llvm/llvm-project/commit/0f08aa43a611c6eecd6d930dd7e8f3f03e5a4300
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp

  Log Message:
  -----------
  AMDGPU: Avoid manually reconstructing atomicrmw (#103769)

When introducing the address space predicates, move and mutate
the original instruction, and clone for the shared case.


  Commit: 4d08bb11eea5907fa9cdfe4c7bc9d5c91e79c6a7
      https://github.com/llvm/llvm-project/commit/4d08bb11eea5907fa9cdfe4c7bc9d5c91e79c6a7
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libcxx/include/complex
    M libcxx/include/optional
    A libcxx/test/std/numerics/complex.number/complex.special/gh_101960_ambiguous_ctor.pass.cpp
    A libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/gh_101960_internal_ctor.compile.pass.cpp

  Log Message:
  -----------
  [libc++] Fix ambiguous constructors for std::complex and std::optional (#103409)

Fixes #101960


  Commit: eae1d65f3435b1399e1468cb27bfe745f95d4df2
      https://github.com/llvm/llvm-project/commit/eae1d65f3435b1399e1468cb27bfe745f95d4df2
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    A clang/test/ParserHLSL/hlsl_is_rov_attr.hlsl
    A clang/test/ParserHLSL/hlsl_is_rov_attr_error.hlsl
    M clang/test/ParserHLSL/hlsl_resource_handle_attrs.hlsl

  Log Message:
  -----------
  [HLSL] Split out the ROV attribute from the resource attribute, make it a new spellable attribute. (#102414)

Much like #98193, this PR takes some more data out of the resource
attribute, specifically the ROV data.
This PR introduces a new attribute called HLSLROVAttr, which contains
data on whether or not the decl the attribute applies to is an ROV.
Tests were added to ensure the attribute is found on the AST.
This attribute may take any boolean condition as an argument. If the
condition is true, then the object the attribute applies to "is" an ROV.
Fixes #https://github.com/llvm/llvm-project/issues/102392


  Commit: 15e1e3b234884eb19b30e230ff783a13b499686f
      https://github.com/llvm/llvm-project/commit/15e1e3b234884eb19b30e230ff783a13b499686f
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M flang/include/flang/Optimizer/CodeGen/FIROpPatterns.h
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/FIROpPatterns.cpp
    M flang/test/Fir/convert-to-llvm.fir
    M flang/test/Fir/rebox.fir
    M flang/test/Fir/tbaa-codegen2.fir
    M flang/test/Fir/tbaa.fir
    M flang/test/Lower/allocatable-polymorphic.f90

  Log Message:
  -----------
  [flang] Read the extra field from the in box when doing reboxing (#102992)

Updated version of #102686. The issue was that in some rebox case the
addendum presence flag should be updated and not always taken from the
"from" box. This is the case when reboxing a fir.class to a fir.box that
doesn't require an addendum for example.

Open a new review since there is a bit of additional code in the CodeGen
part.


  Commit: 86db2154bc27bf64212b91c76ed67b7dd1fc5eb0
      https://github.com/llvm/llvm-project/commit/86db2154bc27bf64212b91c76ed67b7dd1fc5eb0
  Author: jjalowie <jakub.jalowiec at intel.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M mlir/utils/vscode/package.json
    M mlir/utils/vscode/src/mlirContext.ts

  Log Message:
  -----------
  [vscode-mlir] Added per-LSP-server executable arguments (#79671)

Each LSP server type (mlir-lsp-server, pdll-lsp-server and
tblgen-lsp-server) should have a different "additional_server_args"
entry in the config for passing arguments to the server such as
`--log=verbose`.


  Commit: 74d23f15b6867898892f851db40a25f62dad4397
      https://github.com/llvm/llvm-project/commit/74d23f15b6867898892f851db40a25f62dad4397
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M offload/DeviceRTL/include/Allocator.h
    M offload/DeviceRTL/include/Types.h
    M offload/DeviceRTL/src/Misc.cpp
    M offload/DeviceRTL/src/State.cpp
    A offload/test/api/omp_device_alloc.c
    M openmp/docs/design/Runtimes.rst

  Log Message:
  -----------
  [OpenMP] Implement 'omp_alloc' on the device (#102526)

Summary:
The 'omp_alloc' function should be callable from a target region. This
patch implemets it by simply calling `malloc` for every non-default
trait value allocator. All the special access modifiers are
unimplemented and return null. The null allocator returns null as the
spec states it should not be usable from the target.


  Commit: 394162f356069ddccf1f941abf20959809644926
      https://github.com/llvm/llvm-project/commit/394162f356069ddccf1f941abf20959809644926
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/test/Driver/nvlink-wrapper.c
    M clang/tools/clang-nvlink-wrapper/NVLinkOpts.td

  Log Message:
  -----------
  [Clang] Fix 'nvlink-wrapper' not ignoring `-plugin` like lld does (#104056)

Summary:
This caused issues with
https://gitlab.e4s.io/uo-public/llvm-openmp-offloading/-/jobs/301520
because adding `-flto` caused it to pass `-plugin` sometimes, which
isn't supported.


  Commit: 3b7b2f2efc8be3077b919bef12669a85886840b5
      https://github.com/llvm/llvm-project/commit/3b7b2f2efc8be3077b919bef12669a85886840b5
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libcxx/test/support/platform_support.h

  Log Message:
  -----------
  [libcxx] Add fallback to standard C when `unistd` is unavailable (#102005)

Summary:
This utility function gets a temp file to use for tests. It either uses
WIN32 or POSIX to create it. Some targets only follow the C standard,
and this test case will fail. This patch simply adds a fallback that
uses the `tmpnam` function from standard C. This function isn't ideal,
but it is good enough for our use-case.

---------

Co-authored-by: Mark de Wever <zar-rpg at xs4all.nl>


  Commit: 23617f2dc094e3f960d9e0aedaa87a0866e8dc2d
      https://github.com/llvm/llvm-project/commit/23617f2dc094e3f960d9e0aedaa87a0866e8dc2d
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libcxx/src/include/overridable_function.h

  Log Message:
  -----------
  [libcxx] Disable invalid `__start/__stop` reference on NVPTX (#99381)

Summary:
The logic for this `__is_function_overridden` check requires accessing a
runtime array normally created by the linker. The NVPTX target is an
`__ELF__` target, however it does not support emitting the
`__start/__stop` symbols for C-identifier named sections. This needs to
be disabled explicitly so that the user can compile this with anything.


  Commit: 51ed383d3803051922ab5f7ff19a38454a415ddb
      https://github.com/llvm/llvm-project/commit/51ed383d3803051922ab5f7ff19a38454a415ddb
  Author: Daniel Bertalan <dani at danielbertalan.dev>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M lld/MachO/ObjC.cpp
    M lld/MachO/Relocations.cpp
    M lld/MachO/Relocations.h
    M lld/MachO/SyntheticSections.cpp
    A lld/test/MachO/objc-relative-method-lists-simple-x86.s

  Log Message:
  -----------
  [lld-macho] Make relative method lists work on x86-64 (#103905)

Local data is referenced in Objective-C metadata via section + offset
relocations on x86-64 rather than via symbols. Without this change, we
would crash on incorrect casts of the referents to `Defined`.

A basic test based on the existing `objc-relative-method-lists-simple.s`
adopted to x86-64 is added.


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

  Changed paths:
    M libcxx/test/support/test_macros.h

  Log Message:
  -----------
  [libcxx] Adjust inline assembly constraints for the AMDGPU target (#101747)

Summary:
These assembly constraints are illegal / invalid on the AMDGPU target.
The `r` constraint is only valid on inputs and the `m` constraint isn't
accepted at all. The NVPTX target can handle them because it uses a more
permissive virtual machine (PTX is an IR). Simply add exceptions on the
target to make these work.


  Commit: 2dec83cc8e21a72e8718b5b3f009a19d6634fad3
      https://github.com/llvm/llvm-project/commit/2dec83cc8e21a72e8718b5b3f009a19d6634fad3
  Author: Carlos Galvez <carlosgalvezp at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/Interp/Interp.cpp
    M clang/test/AST/Interp/cxx11.cpp
    M clang/test/SemaCXX/Inputs/enum-constexpr-conversion-system-header.h
    M clang/test/SemaCXX/constant-expression-cxx11.cpp
    M clang/test/SemaCXX/cxx2a-consteval.cpp

  Log Message:
  -----------
  [clang] Turn -Wenum-constexpr-conversion into a hard error (#102364)

The warning has been active for a few releases now, first only in user
code, later in system headers, and finally as an error by default.

Therefore, we believe it is now time to transition into a hard error, as
required by the C++ Standard. The main affected C++ projects have by now
fixed the error, or there's a pending patch for review that does it.

Fixes #59036


  Commit: 161e250add9556443b0de085837e3a0403626f6c
      https://github.com/llvm/llvm-project/commit/161e250add9556443b0de085837e3a0403626f6c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M offload/test/api/omp_device_alloc.c

  Log Message:
  -----------
  [OpenMP] Fix buildbot failing on allocator test


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp

  Log Message:
  -----------
  [TargetLowering] Remove unncessary null check. NFC


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

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp

  Log Message:
  -----------
  [SLP][NFC]Remove unused using declarations, reduce mem usage in containers, NFC


  Commit: 00ab8a6a4c3811c50a9dc9626e6fa067fdfcd474
      https://github.com/llvm/llvm-project/commit/00ab8a6a4c3811c50a9dc9626e6fa067fdfcd474
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/runtime/CUDA/CMakeLists.txt
    M flang/runtime/CUDA/allocator.cpp
    M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp

  Log Message:
  -----------
  [flang][cuda] Use cuda runtime API (#103488)

CUDA Fortran is meant to be an equivalent to the runtime API. Therefore,
it makes more sense to use the cuda rt API in the allocators for CUF.

@bdudleback


  Commit: 2c12c1e755a1bf453b246027b450b3b8e30fb016
      https://github.com/llvm/llvm-project/commit/2c12c1e755a1bf453b246027b450b3b8e30fb016
  Author: weiguozhi <57237827+weiguozhi at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/lib/Target/X86/X86MachineFunctionInfo.h
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    A llvm/test/CodeGen/X86/fp-clobbered-by-eh.ll

  Log Message:
  -----------
  [X86] Check if an invoked function clobbers fp or bp (#103446)

In most cases when an instruction or function call clobbers fp and/or bp
register, we can fix it by save/restore the clobbered register. But we
still can't handle it when an invoked function clobbers fp and/or bp
according to its calling convention. This patch detects this case and
reports error instead of silently generating wrong code.


  Commit: 099bf20c3f8a9258b2d6cc39d0618fd45e6dfb4f
      https://github.com/llvm/llvm-project/commit/099bf20c3f8a9258b2d6cc39d0618fd45e6dfb4f
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    A llvm/test/CodeGen/NVPTX/dot-product.ll

  Log Message:
  -----------
  [NVPTX] Add idp2a, idp4a intrinsics (#102763)

Add support for `llvm.nvvm.idp2a` and `llvm.nvvm.idp4a` which correspond
directly to `dp2a` and `dp4a` PTX instructions.


  Commit: 6cafebef4a7a50ad28b46f34f18dc9d3e3e57e40
      https://github.com/llvm/llvm-project/commit/6cafebef4a7a50ad28b46f34f18dc9d3e3e57e40
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-vaarg-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/vararg.ll

  Log Message:
  -----------
  [RISCV][GISel] Remove support for s32 G_VAARG on RV64. (#102533)

Part of making s32 not legal for RV64. Unfortunately, generic
widening/narrowing is not implement for this operation so I had to
remove all tests.

I don't think clang uses G_VAARG on RISC-V so this shouldn't be a big
deal in practice.


  Commit: a845dba9e5ed52e6e743269a18abc16a2348d1b8
      https://github.com/llvm/llvm-project/commit/a845dba9e5ed52e6e743269a18abc16a2348d1b8
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx2cIssues.csv

  Log Message:
  -----------
  [libc++] Remove non-existent LWG issue from the .csv files

We can only track existing LWG issues because we need a valid LWG issue
number for all issues. I'll create another GH issue to track creating
that LWG issue instead.


  Commit: f6e3dbc27daceed4b96a353dce75a6a3e15b4fdd
      https://github.com/llvm/llvm-project/commit/f6e3dbc27daceed4b96a353dce75a6a3e15b4fdd
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/runtime/CUDA/CMakeLists.txt
    M flang/runtime/CUDA/allocator.cpp
    M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp

  Log Message:
  -----------
  Revert "[flang][cuda] Use cuda runtime API" (#104232)

Reverts llvm/llvm-project#103488


  Commit: a95ad2da36b6a996b05c79df6b385cd98bac286d
      https://github.com/llvm/llvm-project/commit/a95ad2da36b6a996b05c79df6b385cd98bac286d
  Author: Ian Wood <75152913+IanWood1 at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Tensor/Transforms/Transforms.h
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    M mlir/lib/Dialect/Tensor/Transforms/ReshapePatterns.cpp
    A mlir/test/Dialect/Tensor/bubble-reshapes.mlir
    M mlir/test/lib/Dialect/Tensor/TestTensorTransforms.cpp

  Log Message:
  -----------
  [mlir] Add bubbling patterns for non intersecting reshapes (#103401)

Refactored @Max191's PR https://github.com/llvm/llvm-project/pull/94637
to move it to `Tensor`

>From the original PR
>This PR adds fusion by expansion patterns to push a tensor.expand_shape
up through a tensor.collapse_shape with non-intersecting reassociations.
Sometimes parallel collapse_shape ops like this can block propagation of
expand_shape ops, so this allows them to pass through each other.

I'm not sure if I put the code/tests in the right places, so let me know
where those go if they aren't.

cc @MaheshRavishankar @hanhanW

---------

Co-authored-by: Max Dawkins <max.dawkins at gmail.com>


  Commit: 372ddcd1baf2c17fd544e458e15221044df66a5d
      https://github.com/llvm/llvm-project/commit/372ddcd1baf2c17fd544e458e15221044df66a5d
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/LinkAllPasses.h
    M llvm/lib/Analysis/Analysis.cpp
    M llvm/lib/Analysis/DXILResource.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def

  Log Message:
  -----------
  [DXIL][Analysis] Boilerplate for DXILResourceAnalysis pass

Broke this out into its own commit to make the next one easier to
review.

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


  Commit: 1ca9fe6db3345556c5c6853b3aba8ff209e572df
      https://github.com/llvm/llvm-project/commit/1ca9fe6db3345556c5c6853b3aba8ff209e572df
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-14 (Wed, 14 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
    M 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 36467bfe89f231458eafda3edb916c028f1f0619.


  Commit: 28d577ecefa1557f5dea5566bf33b885c563d14b
      https://github.com/llvm/llvm-project/commit/28d577ecefa1557f5dea5566bf33b885c563d14b
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Analysis/DXILResource.cpp
    A llvm/test/Analysis/DXILResource/buffer-frombinding.ll

  Log Message:
  -----------
  [DXIL][Analysis] Implement enough of DXILResourceAnalysis for buffers

This implements the DXILResourceAnalysis pass for `dx.TypedBuffer` and
`dx.RawBuffer` types. This should be sufficient to lower
`dx.handle.fromBinding` for this set of types, but it leaves a number
of TODOs around for other resource types.

This also includes a straightforward `print` method in `ResourceInfo`
to make the analysis testable. This is deliberately different than the
printer in `lib/Target/DirectX/DXILResource.cpp`, which attempts to
print bindings in a format compatible with the comments `dxc` prints.
We will eventually want to make that functionality driven by this
analysis pass, but it isn't sufficient for testing so we need both.

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


  Commit: 3265dfe3e620d526ca15dcecaa1c68e63ceaba45
      https://github.com/llvm/llvm-project/commit/3265dfe3e620d526ca15dcecaa1c68e63ceaba45
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/float-convert.ll

  Log Message:
  -----------
  [RISCV] Add signext attribute to return of fmv_x_w test in float-convert.ll. NFC

This shows that Zfinx generates a sext.w instruction on RV64.
The fadd.s should have filled the upper bits of the GPR with sign
bits so this is unnecessary. Proving it is unnecessary might be
difficult though.


  Commit: 4bac8fd8904904bc7d502f39851eef50b5afff73
      https://github.com/llvm/llvm-project/commit/4bac8fd8904904bc7d502f39851eef50b5afff73
  Author: Connie <60797237+connieyzhu at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    A llvm/utils/lit/tests/Inputs/check_path.py
    A llvm/utils/lit/tests/Inputs/shtest-cat/cat-error-0.txt
    A llvm/utils/lit/tests/Inputs/shtest-cat/cat-error-1.txt
    A llvm/utils/lit/tests/Inputs/shtest-cat/cat.txt
    A llvm/utils/lit/tests/Inputs/shtest-cat/cat_nonprinting.bin
    A llvm/utils/lit/tests/Inputs/shtest-cat/lit.cfg
    R llvm/utils/lit/tests/Inputs/shtest-shell/cat-error-0.txt
    R llvm/utils/lit/tests/Inputs/shtest-shell/cat-error-1.txt
    R llvm/utils/lit/tests/Inputs/shtest-shell/cat_nonprinting.bin
    R llvm/utils/lit/tests/Inputs/shtest-shell/check_path.py
    M llvm/utils/lit/tests/Inputs/shtest-shell/valid-shell.txt
    A llvm/utils/lit/tests/shtest-cat.py
    M llvm/utils/lit/tests/shtest-shell.py

  Log Message:
  -----------
  [llvm-lit][test][NFC] Moved cat command tests into separate lit test file (#102366)

This patch separates the lit tests that check for the functionality of
lit's built-in cat command into its own test file and folder. This is a
prerequisite for https://github.com/llvm/llvm-project/pull/101530.


  Commit: e9b7983fc6826eceb819a3cdb0301c401847ade4
      https://github.com/llvm/llvm-project/commit/e9b7983fc6826eceb819a3cdb0301c401847ade4
  Author: Harini0924 <79345568+Harini0924 at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/utils/lit/lit/TestRunner.py

  Log Message:
  -----------
  [llvm-lit] Fix Unhashable TypeError when using lit's internal shell (#101590)

When using the lit internal shell with the command:
```
LIT_USE_INTERNAL_SHELL=1 ninja check-compiler-rt
```
The follow error is encountered:
```
File "TestRunner.py", line 770, in _executeShCmd
    inproc_builtin = inproc_builtins.get(args[0], None)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: unhashable type: 'GlobItem'
```
This error is in a compiler-rt file:
```
TestCases/Linux/long-object-path.cpp
```
This error occurs because `args[0]` is of type `GlobItem`, which is not
hashable, leading to a `TypeError` when it is passed in
`inproc_builtins.get()`. To resolve this issue, I have updated the
implementation to ensure that `args[0]` is hashable before it is used in
`inproc_builtins`.
fixes: #102389
[link to
RFC](https://discourse.llvm.org/t/rfc-enabling-the-lit-internal-shell-by-default/80179)


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

  Changed paths:
    M clang/lib/Headers/__clang_cuda_math.h
    M clang/lib/Headers/__clang_hip_math.h
    A clang/test/Headers/gpu_disabled_math.cpp

  Log Message:
  -----------
  [Clang] Add `__CLANG_GPU_DISABLE_MATH_WRAPPERS` macro for offloading math (#98234)

Summary:
Currently we replace all math calls with vendor specific ones. This
patch introduces a macro `__CLANG_GPU_DISABLE_MATH_WRAPPERS` that when
defined will disable this.

I went this route instead of a flag for two reasons. One, I think we
have too many flags as is, and we already have `-nogpuinc` to cover
disabling these wrappers entirely, so this would be a really specific
subset of that. Second, these math headers aren't easily decoupled by
simply not including a single header from the clang driver layer.
There's the cmath and the regular math forward declares it would disable
as well.

Note, this currently causes errors because the GPU `libm` doesn't have
`powi`, that's an NVIDIA extension I'll add to LLVM libm.


  Commit: 743e99dcf5146dd4e2c20d20800e91595da47be9
      https://github.com/llvm/llvm-project/commit/743e99dcf5146dd4e2c20d20800e91595da47be9
  Author: Valentin Clement <clementval at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/runtime/CUDA/CMakeLists.txt
    M flang/runtime/CUDA/allocator.cpp
    M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp

  Log Message:
  -----------
  Reland "[flang][cuda] Use cuda runtime API #103488"

CUDA Fortran is meant to be an equivalent to the runtime API. Therefore, it
makes more sense to use the cuda rt API in the allocators for CUF.


  Commit: f1779ae53b5a8f65406648f1b69e3dd1ae0340b0
      https://github.com/llvm/llvm-project/commit/f1779ae53b5a8f65406648f1b69e3dd1ae0340b0
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Port 4bac8fd8904904bc7d502f39851eef50b5afff73 (#104278)


  Commit: 48809fafbc083a2e4c03f70406b712ff18b42554
      https://github.com/llvm/llvm-project/commit/48809fafbc083a2e4c03f70406b712ff18b42554
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/test/SemaHLSL/BuiltIns/normalize-errors.hlsl
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/test/CodeGen/DirectX/normalize.ll

  Log Message:
  -----------
  Remove unused variable, and unneeded extract element instruction (#103489)

This PR removes an unneeded extract element instruction from codegen,
along with the variable that captured that instruction's return value.


  Commit: 4f7ce107de0c3ae0fb5748f98bc696b6eec7aad9
      https://github.com/llvm/llvm-project/commit/4f7ce107de0c3ae0fb5748f98bc696b6eec7aad9
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/test/CodeGen/RISCV/rv64zfh-half-convert.ll
    M llvm/test/CodeGen/RISCV/rv64zfhmin-half-convert.ll

  Log Message:
  -----------
  [RISCV] Don't combine (sext_inreg (fmv_x_anyexth X), i16) with Zhinx.

With Zfh and Zfhmin this combine creates a fmv_x_signexth node so we can
remember that the result is sign extended. This become a fmv.x.h
instruction which sign extends its result.

With Zhinx, fmv_x_signexth becomes a COPY_TO_REGCLASS. In order for
this to guarantee the result is properly sign extended we need all
producers of a GPRF16 register class to guarantee the rest of the
GPR is sign extended. I don't think we've done that. bitcasts from i16
to f16 definitely don't do it.

The safest thing to do is to not do this combine so the sign_extend_inreg
will emit a shift pair. This is also consistent with the code generated
for Zfinx on RV64, we don't assume the upper 32 bits are sign extended.


  Commit: 539bf499615dbbfe98deaac1021f351eaad330ea
      https://github.com/llvm/llvm-project/commit/539bf499615dbbfe98deaac1021f351eaad330ea
  Author: Kirill Stoimenov <kstoimenov at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/Linux/prctl.cpp

  Log Message:
  -----------
  [Sanitizers] Disable prctl test on Android.


  Commit: 2b959bd7f21bc7550a99fb160997002b7e4f1b62
      https://github.com/llvm/llvm-project/commit/2b959bd7f21bc7550a99fb160997002b7e4f1b62
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/test/Misc/warning-flags.c
    M clang/test/SemaTemplate/temp_explicit.cpp

  Log Message:
  -----------
  [Clang] Error on extraneous template headers by default. (#104046)

As discussed here

https://github.com/llvm/llvm-project/issues/99296#issuecomment-2240807413

Fixes #99296
Fixes #50294


  Commit: 9a666deecb9ff6ca3a6b12e6c2877e19b74b54da
      https://github.com/llvm/llvm-project/commit/9a666deecb9ff6ca3a6b12e6c2877e19b74b54da
  Author: Justin Stitt <justinstitt at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/Stmt.h
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/lib/AST/Expr.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    A clang/test/CodeGen/overflow-idiom-exclusion-fp.c
    A clang/test/CodeGen/overflow-idiom-exclusion.c

  Log Message:
  -----------
  [Clang] Overflow Pattern Exclusions (#100272)

Introduce "-fsanitize-overflow-pattern-exclusion=" which can be used to
disable sanitizer instrumentation for common overflow-dependent code
patterns.

For a wide selection of projects, proper overflow sanitization could
help catch bugs and solve security vulnerabilities. Unfortunately, in
some cases the integer overflow sanitizers are too noisy for their users
and are often left disabled. Providing users with a method to disable
sanitizer instrumentation of common patterns could mean more projects
actually utilize the sanitizers in the first place.

One such project that has opted to not use integer overflow (or
truncation) sanitizers is the Linux Kernel. There has been some
discussion[1] recently concerning mitigation strategies for unexpected
arithmetic overflow. This discussion is still ongoing and a succinct
article[2] accurately sums up the discussion. In summary, many Kernel
developers do not want to introduce more arithmetic wrappers when
most developers understand the code patterns as they are.

Patterns like:

    if (base + offset < base) { ... }

or

    while (i--) { ... }

or

    #define SOME -1UL

are extremely common in a code base like the Linux Kernel. It is
perhaps too much to ask of kernel developers to use arithmetic wrappers
in these cases. For example:

    while (wrapping_post_dec(i)) { ... }

which wraps some builtin would not fly. This would incur too many
changes to existing code; the code churn would be too much, at least too
much to justify turning on overflow sanitizers.

Currently, this commit tackles three pervasive idioms:

1. "if (a + b < a)" or some logically-equivalent re-ordering like "if (a > b + a)"
2. "while (i--)" (for unsigned) a post-decrement always overflows here
3. "-1UL, -2UL, etc" negation of unsigned constants will always overflow

The patterns that are excluded can be chosen from the following list:

- add-overflow-test
- post-decr-while
- negated-unsigned-const

These can be enabled with a comma-separated list:

    -fsanitize-overflow-pattern-exclusion=add-overflow-test,negated-unsigned-const

"all" or "none" may also be used to specify that all patterns should be
excluded or that none should be.

[1] https://lore.kernel.org/all/202404291502.612E0A10@keescook/
[2] https://lwn.net/Articles/979747/

CCs: @efriedma-quic @kees @jyknight @fmayer @vitalybuka
Signed-off-by: Justin Stitt <justinstitt at google.com>
Co-authored-by: Bill Wendling <morbo at google.com>


  Commit: 9a9ca9850f3c6b278e052745f51a87296d9fedd2
      https://github.com/llvm/llvm-project/commit/9a9ca9850f3c6b278e052745f51a87296d9fedd2
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp
    M mlir/lib/Dialect/MemRef/Transforms/ExpandStridedMetadata.cpp
    M mlir/test/Dialect/MemRef/emulate-narrow-type.mlir
    M mlir/test/Dialect/MemRef/expand-strided-metadata.mlir

  Log Message:
  -----------
  [mlir][MemRef] Add more ops to narrow type support, strided metadata expansion (#102228)

- Add support fef memory_space_cast to strided metadata expansion and
narrow type emulation
- Add support for expand_shape to narrow type emulation (like
collapse_shape, it's a noop after linearization) and to
expand-strided-metadata (mirroring the collapse_shape pattern)
- Add support for memref.dealloc to narrow type emulation (it is a
trivial rewrite) and for memref.copy (which is unsupported when it is
used for a layout change but a trivial rewrite otherwise)


  Commit: 564efe26745c5bb7236b095d5b42881cdc64a284
      https://github.com/llvm/llvm-project/commit/564efe26745c5bb7236b095d5b42881cdc64a284
  Author: pcc <peter at pcc.me.uk>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    A llvm/utils/git/linkify

  Log Message:
  -----------
  utils/git: Add linkify script.

This script linkifies (i.e. makes clickable in the terminal) text that appears
to be a pull request or issue reference (e.g. #12345 or PR12345) or a
40-character commit hash (e.g. abc123). You can configure git to automatically
send the output of commands that pipe their output through a pager, such as
`git log` and `git show`, through this script by running this command from
within your LLVM checkout:

git config core.pager 'llvm/utils/git/linkify | pager'

The pager command is run from the root of the repository even if the git
command is run from a subdirectory, so the relative path should always work.

It requires OSC 8 support in the terminal. For a list of compatible terminals,
see https://github.com/Alhadis/OSC8-Adoption

Reviewers: MaskRay

Reviewed By: MaskRay

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


  Commit: 7275919cd5fc89c42a52168c9f4411b4e5421c95
      https://github.com/llvm/llvm-project/commit/7275919cd5fc89c42a52168c9f4411b4e5421c95
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/overflow-idiom-exclusion-fp.c
    M clang/test/CodeGen/overflow-idiom-exclusion.c

  Log Message:
  -----------
  Use clang_cc1 and specify the target explicitly.


  Commit: 5873aa83b871393b5ada4c2033445d5fd52d7461
      https://github.com/llvm/llvm-project/commit/5873aa83b871393b5ada4c2033445d5fd52d7461
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/overflow-idiom-exclusion-fp.c
    M clang/test/CodeGen/overflow-idiom-exclusion.c

  Log Message:
  -----------
  Remove '-emit-llvm' and use '-triple'


  Commit: 4411d1e3926d67c393e6a7bdb910bbe77507ff26
      https://github.com/llvm/llvm-project/commit/4411d1e3926d67c393e6a7bdb910bbe77507ff26
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_allocator.cpp
    M compiler-rt/lib/msan/msan_allocator.cpp

  Log Message:
  -----------
  [sanitizer] Remove GetCurrentThread nullness checks from Allocate

The nullness check is unreachable.

* For the main thead and pthread_create created threads, the `*Allocate` functions must be called after `*_current_thread` is set.
set.
* For threads created by Linux's `clone`, static TLS is either reused or
  set to a new value (CLONE_SETTLS).

Make this change for asan/msan and possibly extend the change to other
sanitizers. (asan supports many platforms and I am not 100% certain that
all platforms have the property.)

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


  Commit: aca01bff07c225dbace6cb7743072ddfe78c43f0
      https://github.com/llvm/llvm-project/commit/aca01bff07c225dbace6cb7743072ddfe78c43f0
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
    A llvm/test/Analysis/CtxProfAnalysis/full-cycle.ll
    M llvm/test/Analysis/CtxProfAnalysis/load.ll
    M llvm/test/Transforms/PGOProfile/ctx-instrumentation.ll
    M llvm/test/Transforms/PGOProfile/ctx-prof-use-prelink.ll

  Log Message:
  -----------
  [ctx_prof] CtxProfAnalysis: populate module data (#102930)

Continuing from #102084, which introduced the analysis, we now populate
it with info about functions contained in the module.

When we will update the profile due to e.g. inlined callsites, we'll
ingest the callee's counters and callsites to the caller. We'll move
those to the caller's respective index space (counter and callers), so
we need to know and maintain where those currently end.

We also don't need to keep profiles not pertinent to this module.

This patch also introduces an arguably much simpler way to track the
GUID of a function from the frontend compilation, through ThinLTO, and
into the post-thinlink compilation step, which doesn't rely on keeping
names around. A separate RFC and patches will discuss extending this to
the current PGO (instrumented and sampled) and other consumers as an
infrastructural component.


  Commit: bd47ba705607033c3dab0037a8d64159b58bedb4
      https://github.com/llvm/llvm-project/commit/bd47ba705607033c3dab0037a8d64159b58bedb4
  Author: Jessica Clarke <jrtc27 at jrtc27.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h

  Log Message:
  -----------
  [ELF][NFC] Allow non-GotSection for addAddendOnlyRelocIfNonPreemptible (#104228)

This was done as an afterthought in c3c9e4531287 without justification.
Nothing relies on it being a specific kind of section, and downstream in
CHERI LLVM we pass a non-GotSection to this function. Thus revert this
overly-restrictive change and allow downstreams to pass other section
types again.

This partially reverts commit c3c9e45312874ff890723f54cabfd41e43b2dbc4.


  Commit: 0df91893efc752a76c7bbe6b063d66c8a2fa0d55
      https://github.com/llvm/llvm-project/commit/0df91893efc752a76c7bbe6b063d66c8a2fa0d55
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M lld/MachO/ObjC.cpp
    M lld/test/MachO/objc-category-merging-minimal.s

  Log Message:
  -----------
  [lld-macho] Fix crash: ObjC category merge + relative method lists (#104081)

A crash was happening when both ObjC Category Merging and Relative
method lists were enabled.

ObjC Category Merging creates new data sections and adds them by calling
`addInputSection`. `addInputSection` uses the symbols within the added
section to determine which container to actually add the section to.

The issue is that ObjC Category merging is calling `addInputSection`
before actually adding the relevant symbols the the added section. This
causes `addInputSection` to add the `InputSection` to the wrong
container, eventually resulting in a crash.

To fix this, we ensure that ObjC Category Merging calls
`addInputSection` only after the symbols have been added to the
`InputSection`.


  Commit: abaa53199ed03b2e9de9fd373cbcfcc88e5348ff
      https://github.com/llvm/llvm-project/commit/abaa53199ed03b2e9de9fd373cbcfcc88e5348ff
  Author: LiqinWeng <liqin.weng at spacemit.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    A llvm/test/CodeGen/RISCV/riscv-codegen-prepare-atp.ll

  Log Message:
  -----------
  [RISCV] Implement RISCVTTIImpl::shouldConsiderAddressTypePromotion for RISCV (#102560)

This optimization helps reduce repeated calculations of base addresses
by extracting type extensions when the same base address is accessed
multiple times but its offset is a constant.


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

  Changed paths:
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp

  Log Message:
  -----------
  [OpenMP] Use range-based for loops (NFC) (#103511)


  Commit: b4dc9869381f91af419ec170837ac324d09525e5
      https://github.com/llvm/llvm-project/commit/b4dc9869381f91af419ec170837ac324d09525e5
  Author: Daniel Wedzicha <55595431+boredhuman at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm

  Log Message:
  -----------
  [LLDB][OSX] Removed semi colon generating a warning during build (#104398)

Singular warning I noticed when compiling lldb.

Co-authored-by: Daniel <d.wedzicha at efg.gg>


  Commit: e0d173d44161bf9b68243845666d58999e74f759
      https://github.com/llvm/llvm-project/commit/e0d173d44161bf9b68243845666d58999e74f759
  Author: Max Winkler <max.enrico.winkler at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/MicrosoftMangle.cpp
    A clang/test/CodeGenCXX/mangle-ms-auto-return.cpp
    M clang/test/CodeGenCXX/mangle-ms-auto-templates-memptrs.cpp
    M clang/test/CodeGenCXX/mangle-ms-auto-templates-nullptr.cpp
    M clang/test/CodeGenCXX/mangle-ms-auto-templates.cpp

  Log Message:
  -----------
  [Clang] [AST] Fix placeholder return type name mangling for MSVC 1920+ / VS2019+ (#102848)

Partial fix for https://github.com/llvm/llvm-project/issues/92204.
This PR just fixes VS2019+ since that is the suite of compilers that I
require link compatibility with at the moment.
I still intend to fix VS2017 and to update llvm-undname in future PRs.
Once those are also finished and merged I'll close out
https://github.com/llvm/llvm-project/issues/92204.
I am hoping to get the llvm-undname PR up in a couple of weeks to be
able to demangle the VS2019+ name mangling.

MSVC 1920+ mangles placeholder return types for non-templated functions
with "@".
For example `auto foo() { return 0; }` is mangled as `?foo@@YA at XZ`.

MSVC 1920+ mangles placeholder return types for templated functions as
the qualifiers of the AutoType followed by "_P" for `auto` and "_T" for
`decltype(auto)`.
For example `template<class T> auto foo() { return 0; }` is mangled as
`??$foo at H@@YA?A_PXZ` when `foo` is instantiated as follows `foo<int>()`.

Lambdas with placeholder return types are still mangled with clang's
custom mangling since MSVC lambda mangling hasn't been deciphered yet.
Similarly any pointers in the return type with an address space are
mangled with clang's custom mangling since that is a clang extension.

We cannot augment `mangleType` to support this mangling scheme as the
mangling schemes for variables and functions differ.
auto variables are encoded with the fully deduced type where auto return
types are not.
The following two functions with a static variable are mangled the same
```
template<class T>
int test()
{
    static int i = 0; // "?i@?1???$test at H@@YAHXZ at 4HA"
    return i;
}

template<class T>
int test()
{
    static auto i = 0; // "?i@?1???$test at H@@YAHXZ at 4HA"
    return i;
}
```
Inside `mangleType` once we get to mangling the `AutoType` we have no
context if we are from a variable encoding or some other encoding.
Therefore it was easier to handle any special casing for `AutoType`
return types with a separate function instead of using the `mangleType`
infrastructure.


  Commit: 6e2d9df02502e16659e4a9397260baf9df224f17
      https://github.com/llvm/llvm-project/commit/6e2d9df02502e16659e4a9397260baf9df224f17
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/overflow-idiom-exclusion-fp.c
    M clang/test/CodeGen/overflow-idiom-exclusion.c

  Log Message:
  -----------
  Fix testcases. Use -emit-llvm and not -S. Use LABEL checking.


  Commit: 94b8b11ac305ebe730e6b70b2463811de395cb40
      https://github.com/llvm/llvm-project/commit/94b8b11ac305ebe730e6b70b2463811de395cb40
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/include/clang/AST/Decl.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CodeGenFunction.h

  Log Message:
  -----------
  [Clang][NFC] Move FindCountedByField into FieldDecl (#104235)

FindCountedByField can be used in more places than CodeGen. Move it into
FieldDecl to avoid layering issues.


  Commit: 07a8cbaf8dc16bebf6e875173d20299d9cc47cc5
      https://github.com/llvm/llvm-project/commit/07a8cbaf8dc16bebf6e875173d20299d9cc47cc5
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    R clang/test/CodeGen/overflow-idiom-exclusion.c

  Log Message:
  -----------
  Remove failing test until it can be fixed properly.


  Commit: fb9e685fc41b8abc87725f8509624b3a80330dee
      https://github.com/llvm/llvm-project/commit/fb9e685fc41b8abc87725f8509624b3a80330dee
  Author: YunQiang Su <syq at debian.org>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/include/llvm/IR/IntrinsicInst.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/RuntimeLibcalls.def
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    A llvm/test/CodeGen/LoongArch/fp-maximumnum-minimumnum.ll
    A llvm/test/CodeGen/Mips/fp-maximumnum-minimumnum.ll
    M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp

  Log Message:
  -----------
  Intrinsic: introduce minimumnum and maximumnum for IR and SelectionDAG (#96649)

C23 introduced new functions fminimum_num and fmaximum_num, and they
follow the minimumNumber and maximumNumber of IEEE754-2019. Let's
introduce new intrinsics to support them.

This patch introduces support only support for scalar values. The
support of
  vector (vp, vp.reduce, vector.reduce),
  experimental.constrained
will be added in future patches.

With this patch, MIPSr6 and LoongArch can work out of box with
fcanonical and fmax/fmin.

Aarch64/PowerPC64 can use the same login as MIPSr6 and LoongArch, while
they have no fcanonical support yet.
I will add it in future patches.

The FMIN/FMAX of RISC-V instructions follows the
minimumNumber/maximumNumber of IEEE754-2019. We can just add it in
future patch.

Background

https://discourse.llvm.org/t/rfc-fix-llvm-min-f-and-llvm-max-f-intrinsics/79735
Currently we have fminnum/fmaxnum, which have different behavior on
different platform for NUM vs sNaN:
   1) Fallback to fmin(3)/fmax(3): return qNaN.
   2) ARM64/ARM32+Neon: same as libc.
   3) MIPSr6/LoongArch/RISC-V: return NUM.

And the fix of fminnum/fmaxnum to follow minNUM/maxNUM of IEEE754-2008
will submit as separated patches.


  Commit: 8d037107287b85dcc8a0f0af75bd8ae5c07facb5
      https://github.com/llvm/llvm-project/commit/8d037107287b85dcc8a0f0af75bd8ae5c07facb5
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/CtxProfAnalysis.cpp

  Log Message:
  -----------
  [ctx_prof] Remove an unneeded include in CtxProfAnalysis.cpp


  Commit: 372842b30f8e611765e3cb9f06b8265d2e79f3f6
      https://github.com/llvm/llvm-project/commit/372842b30f8e611765e3cb9f06b8265d2e79f3f6
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/X86/cmpccxadd-builtins.c
    M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.cpp
    M llvm/test/CodeGen/X86/cmpccxadd-intrinsics.ll
    M llvm/test/MC/Disassembler/X86/apx/cmpccxadd.txt
    M llvm/test/MC/Disassembler/X86/cmpccxadd-64.txt
    M llvm/test/MC/X86/apx/cmpccxadd-att.s
    M llvm/test/MC/X86/apx/cmpccxadd-intel.s
    M llvm/test/MC/X86/cmpccxadd-att-alias.s
    M llvm/test/MC/X86/cmpccxadd-att.s
    M llvm/test/MC/X86/cmpccxadd-intel-alias.s
    M llvm/test/MC/X86/cmpccxadd-intel.s

  Log Message:
  -----------
  [X86][MC] Remove CMPCCXADD's CondCode flavor. (#103898)

To align with gas's latest changes.
relate gas patch:
https://sourceware.org/pipermail/binutils/2024-May/134360.html


  Commit: 1e34706232e5f2865ff918ba8e9f840f38cdef07
      https://github.com/llvm/llvm-project/commit/1e34706232e5f2865ff918ba8e9f840f38cdef07
  Author: Longsheng Mou <moulongsheng at huawei.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/invalid.mlir

  Log Message:
  -----------
  [mlir][tosa] Add verifier for `tosa.table` (#103708)

This patch adds a verifier to `tosa.table` which fixes a crash. Fix
#103086.


  Commit: 3eaf483c296bd95411bc855674707f289790e2a2
      https://github.com/llvm/llvm-project/commit/3eaf483c296bd95411bc855674707f289790e2a2
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang-tools-extra/include-cleaner/lib/WalkAST.cpp

  Log Message:
  -----------
  [include-cleaner] Remove two commented-out lines of code.


  Commit: 12763a06526f5fee46d8d11953b1188bad9e7b0e
      https://github.com/llvm/llvm-project/commit/12763a06526f5fee46d8d11953b1188bad9e7b0e
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

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

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


  Commit: fa343be414f9364911b947f109f3df5539e23068
      https://github.com/llvm/llvm-project/commit/fa343be414f9364911b947f109f3df5539e23068
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/AST/MicrosoftMangle.cpp

  Log Message:
  -----------
  Fix warnings in #102848 [-Wunused-but-set-variable]


  Commit: 845431a54fc2befacdfea27a852f003ad61ba720
      https://github.com/llvm/llvm-project/commit/845431a54fc2befacdfea27a852f003ad61ba720
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    R llvm/test/Assembler/datalayout-invalid-function-ptr-alignment.ll
    R llvm/test/Assembler/datalayout-invalid-i8-alignment.ll
    R llvm/test/Assembler/datalayout-invalid-stack-natural-alignment.ll
    R llvm/test/Assembler/invalid-datalayout-alloca-addrspace.ll
    R llvm/test/Assembler/invalid-datalayout-globals-addrspace.ll
    R llvm/test/Assembler/invalid-datalayout-index-size.ll
    R llvm/test/Assembler/invalid-datalayout-program-addrspace.ll
    R llvm/test/Assembler/invalid-datalayout1.ll
    R llvm/test/Assembler/invalid-datalayout10.ll
    R llvm/test/Assembler/invalid-datalayout11.ll
    R llvm/test/Assembler/invalid-datalayout12.ll
    R llvm/test/Assembler/invalid-datalayout13.ll
    R llvm/test/Assembler/invalid-datalayout14.ll
    R llvm/test/Assembler/invalid-datalayout15.ll
    R llvm/test/Assembler/invalid-datalayout16.ll
    R llvm/test/Assembler/invalid-datalayout17.ll
    R llvm/test/Assembler/invalid-datalayout18.ll
    R llvm/test/Assembler/invalid-datalayout19.ll
    R llvm/test/Assembler/invalid-datalayout2.ll
    R llvm/test/Assembler/invalid-datalayout20.ll
    R llvm/test/Assembler/invalid-datalayout21.ll
    R llvm/test/Assembler/invalid-datalayout22.ll
    R llvm/test/Assembler/invalid-datalayout23.ll
    R llvm/test/Assembler/invalid-datalayout24.ll
    R llvm/test/Assembler/invalid-datalayout3.ll
    R llvm/test/Assembler/invalid-datalayout4.ll
    R llvm/test/Assembler/invalid-datalayout5.ll
    R llvm/test/Assembler/invalid-datalayout6.ll
    R llvm/test/Assembler/invalid-datalayout7.ll
    R llvm/test/Assembler/invalid-datalayout8.ll
    R llvm/test/Assembler/invalid-datalayout9.ll
    M llvm/unittests/IR/DataLayoutTest.cpp

  Log Message:
  -----------
  [UnitTests] Convert some data layout parsing tests to GTest (#104346)

For now, the testcases are grouped in a single TEST. I'll sort them out
and add more testcases in follow-up commits.


  Commit: 4a00f1aab25353ca51b5d8e2b081cc66305b3cd8
      https://github.com/llvm/llvm-project/commit/4a00f1aab25353ca51b5d8e2b081cc66305b3cd8
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M mlir/test/Conversion/ArithToSPIRV/arith-to-spirv-le-specific.mlir
    M mlir/test/IR/elements-attr-interface.mlir
    M mlir/test/Target/LLVMIR/llvmir-le-specific.mlir

  Log Message:
  -----------
  [mlir][test] XFAIL little-endian-only tests on SPARC (#103726)

3 MLIR tests `FAIL` on SPARC, both Solaris/sparcv9 and Linux/sparc64:
```
  MLIR :: Conversion/ArithToSPIRV/arith-to-spirv-le-specific.mlir
  MLIR :: IR/elements-attr-interface.mlir
  MLIR :: Target/LLVMIR/llvmir-le-specific.mlir
```
The issue is always the same: the tests in question are
little-endian-only currently, so this patch `XFAIL`s them on `sparc*` as
is already done for `s390x`.

Tested on `sparcv9-sun-solaris2.11`, `sparc64-unknown-linux-gnu`,
`amd64-pc-solaris2.11`, and `x86_64-pc-linux-gnu`.


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

  Changed paths:
    M flang/test/Lower/default-initialization-globals.f90

  Log Message:
  -----------
  [flang][test] Fix Lower/default-initialization-globals.f90 on SPARC (#103722)

`Flang :: Lower/default-initialization-globals.f90` `FAIL`s on SPARC,
both Solaris/sparcv9 and Linux/sparc64.

The failure mode is same as on AIX/PowerPC, so both targets being
big-endian, this patch treats them the same.

Tested on `sparcv9-sun-solaris2.11`, `sparc64-unknown-linux-gnu`,
`amd64-pc-solaris2.11`, and `x86_64-pc-linux-gnu`.


  Commit: e1e47acafb81e583e5cf7b3b6d609f4b5726cc67
      https://github.com/llvm/llvm-project/commit/e1e47acafb81e583e5cf7b3b6d609f4b5726cc67
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [DataLayout] Move '*AlignElem' structs and enum inside DataLayout (NFC) (#103723)

This makes `LayoutAlignElem` / `PointerAlignElem` and `AlignTypeEnum`
inner types of `DataLayout`. The types are also renamed to match their
meaning (LangRef refers to them as "specification" and "specifier").

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


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

  Changed paths:
    M lldb/CodeOwners.rst

  Log Message:
  -----------
  [lldb] Remove Phabricator usernames from Code Owners file (#102590)

Removing them simplifies the content and means we don't confuse anyone
who joined after the Phabricator shutdown.

You could use them for review archaeology but this is only a subset of
the names you'd encounter there anyway. So I don't think this is a good
reason to keep them here. With a couple of exceptions the
Phabricator/GitHub names are the same and/or related to their full name
anyway.


  Commit: 6d9cae12bdfcaeb2be10866e20e8883242f02c6c
      https://github.com/llvm/llvm-project/commit/6d9cae12bdfcaeb2be10866e20e8883242f02c6c
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M flang/test/Driver/fveclib-codegen.f90

  Log Message:
  -----------
  [flang][test] Run Driver/fveclib-codegen.f90 for aarch64 and x86_64 (#103730)

`Flang :: Driver/fveclib-codegen.f90` currently `FAIL`s on SPARC, both
Solaris/sparcv9 and Linux/sparc64:
```
bin/flang-new -S -Ofast -fveclib=LIBMVEC -o - /vol/llvm/src/llvm-project/local/flang/test/Driver/fveclib-codegen.f90

flang/test/Driver/fveclib-codegen.f90:11:10: error: CHECK: expected string not found in input
! CHECK: _ZGVbN4vv_powf
         ^
```
The code in question only contains calls to `powf`. Given that `glibc`
only supports `libmvec` on `aarch64` and `x86_64`, this test targets
only those if possible.

Tested on `sparcv9-sun-solaris2.11`, `sparc64-unknown-linux-gnu`,
`amd64-pc-solaris2.11`, and `x86_64-pc-linux-gnu`.


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

  Changed paths:
    M libcxx/test/std/time/time.zone/time.zone.timezone/time.zone.members/sys_info.zdump.pass.cpp

  Log Message:
  -----------
  [lldb][test] Mark sys_info zdump test unsupported on 32 bit Arm Linux

Until https://github.com/llvm/llvm-project/pull/103056 lands
or another more appropriate check can be found.

This test fails on Ubuntu Focal where zdump is built with 32 bit time_t
but passes on Ubuntu Jammy where zdump is built with 64 bit time_t.

Marking it unsupported means Linaro can upgrade its bots to Ubuntu
Jammy without getting an unexpected pass.


  Commit: 141536544f4ec1d1bf24256157f4ff1a3bc07dae
      https://github.com/llvm/llvm-project/commit/141536544f4ec1d1bf24256157f4ff1a3bc07dae
  Author: Christian Ulmann <christianulmann at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    A mlir/include/mlir/Analysis/SliceWalk.h
    M mlir/lib/Analysis/CMakeLists.txt
    A mlir/lib/Analysis/SliceWalk.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/test/Dialect/LLVMIR/inlining-alias-scopes.mlir

  Log Message:
  -----------
  [MLIR][LLVM]: Add an IR utility to perform slice walking (#103053)

This commit introduces a slicing utility that can be used to walk
arbitrary IR slices. It additionally ships logic to determine control
flow predecessors, which allows users to walk backward slices without
dealing with both `RegionBranchOpInterface` and `BranchOpInterface`.

This utility is used to improve the `noalias` propagation in the LLVM
dialect's inliner interface. Before this change, it broke down as soon
as pointer were passed through region control flow operations.


  Commit: 5f15c1776a462940464743dbc9e82c46fe7e14aa
      https://github.com/llvm/llvm-project/commit/5f15c1776a462940464743dbc9e82c46fe7e14aa
  Author: Yanzuo Liu <zwuis at outlook.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/docs/ProgrammersManual.rst

  Log Message:
  -----------
  [llvm][Docs] `_or_null` -> `_if_present` in Programmer's Manual (#98586)

`cast_or_null` is deprecated.

https://github.com/llvm/llvm-project/blob/062844615db5e141da118c1ad780bf102537f40a/llvm/include/llvm/Support/Casting.h#L717-L722


  Commit: 05dfac23f1121aabb9675a38628e919689f993b0
      https://github.com/llvm/llvm-project/commit/05dfac23f1121aabb9675a38628e919689f993b0
  Author: Jorge Botto <23462171+jf-botto at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  [DAG] Adding m_FPToUI and m_FPToSI to SDPatternMatch.h (#104044)

Adds m_FPToUI/m_FPToSI matchers for ISD::FP_TO_UINT/ISD::FP_TO_SINT in SDPatternMatch.h with suitable test coverage.

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


  Commit: 9a9ce9112fd7ed87d305d3e4f9b05c98a04f2382
      https://github.com/llvm/llvm-project/commit/9a9ce9112fd7ed87d305d3e4f9b05c98a04f2382
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Port for 141536544f4ec1d1bf24256157f4ff1a3bc07dae


  Commit: 7227b44f928a87b5d7fb05bd1539fdfb6d4958dc
      https://github.com/llvm/llvm-project/commit/7227b44f928a87b5d7fb05bd1539fdfb6d4958dc
  Author: Gábor Horváth <xazax.hun at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    A clang/test/Driver/darwin-print-target-triple.c

  Log Message:
  -----------
  [clang][driver] Fix -print-target-triple OS version for apple targets (#104037)

The target needs to be initialized in order to compute the correct
target triple from the command line. Without initialized targets the OS
component of the triple might not reflect what would be computed by the
driver for an actual compiler invocation.

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


  Commit: 3a3990cb05858e7892a4825c677891a980f1cea8
      https://github.com/llvm/llvm-project/commit/3a3990cb05858e7892a4825c677891a980f1cea8
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp

  Log Message:
  -----------
  [Flang][OpenMP] Move assert for wrapper syms and block args to genLoopNestOp (#103731)

This patch adds an assert to `genLoopNestClauses` to ensure the number
of symbols and corresponding loop wrapper entry block arguments have the
same size. This is checked by some of the callers, but it makes more
sense moving it into the function itself and avoid having to replicate
it.


  Commit: 8107810cad24d41fe43c6777370c7b81ca83ad84
      https://github.com/llvm/llvm-project/commit/8107810cad24d41fe43c6777370c7b81ca83ad84
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.8.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-as.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-gs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-hs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-lib.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ms.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ps.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-vs.ll
    M llvm/test/CodeGen/DirectX/UAVMetadata.ll
    M llvm/test/CodeGen/DirectX/cbuf.ll
    M llvm/test/CodeGen/DirectX/dxil_ver.ll
    M llvm/test/CodeGen/DirectX/legacy_cb_layout_0.ll
    M llvm/test/CodeGen/DirectX/legacy_cb_layout_1.ll
    M llvm/test/CodeGen/DirectX/legacy_cb_layout_2.ll
    M llvm/test/CodeGen/DirectX/legacy_cb_layout_3.ll
    M llvm/test/CodeGen/DirectX/lib_entry.ll
    M llvm/test/Frontend/HLSL/empty_cs_entry.ll

  Log Message:
  -----------
  [DirectX] Use a more consistent pass name for DXILTranslateMetadata

This updates the "dxil-metadata-emit" pass flag to be spelled
"dxil-translate-metadata" to better match the pass name.

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


  Commit: 894d3eebe2109f7dec488d3415d5c6236e55a0da
      https://github.com/llvm/llvm-project/commit/894d3eebe2109f7dec488d3415d5c6236e55a0da
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  Remove empty line.


  Commit: 2d50029f986da1fdc9cb88cd8a1070aa086dc6b6
      https://github.com/llvm/llvm-project/commit/2d50029f986da1fdc9cb88cd8a1070aa086dc6b6
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
    M mlir/test/Dialect/Bufferization/Transforms/finalizing-bufferize.mlir
    M mlir/test/Transforms/test-legalize-type-conversion.mlir

  Log Message:
  -----------
  [mlir][Transforms] Dialect conversion: Build unresolved materialization for replaced ops (#101514)

When inserting an argument/source/target materialization, the dialect
conversion framework first inserts a "dummy"
`unrealized_conversion_cast` op (during the rewrite process) and then
(in the "finialize" phase) replaces these cast ops with the IR generated
by the type converter callback.

This is the case for all materializations, except when ops are being
replaced with values that have a different type. In that case, the
dialect conversion currently directly emits a source materialization.
This commit changes the implementation, such that a temporary
`unrealized_conversion_cast` is also inserted in that case.

This commit simplifies the code base: all materializations now happen in
`legalizeUnresolvedMaterialization`. This commit makes it possible to
decouple source/target/argument materializations from the dialect
conversion (to reduce the complexity of the code base). Such
materializations can then also be optional. This will be implemented in
a follow-up commit.

Depends on #101476.

---------

Co-authored-by: Jakub Kuderski <jakub at nod-labs.com>


  Commit: a2830d6aa2e8ad0da0e58f1642ed09723602e838
      https://github.com/llvm/llvm-project/commit/a2830d6aa2e8ad0da0e58f1642ed09723602e838
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  Revert "Remove empty line."

Accidental commit.

This reverts commit 894d3eebe2109f7dec488d3415d5c6236e55a0da.


  Commit: ed8cfb651327a00f6ccf2b26890ee921f16f64a2
      https://github.com/llvm/llvm-project/commit/ed8cfb651327a00f6ccf2b26890ee921f16f64a2
  Author: Andrey Timonin <112198242+EtoAndruwa at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/SCF/IR/SCF.cpp

  Log Message:
  -----------
  [NFC][mlir][scf] Fix misspelling of replace (#101683)


  Commit: 5e95571a90b1ec193b735b7312c5c2559d7ee5ea
      https://github.com/llvm/llvm-project/commit/5e95571a90b1ec193b735b7312c5c2559d7ee5ea
  Author: Pavel Skripkin <paskripkin at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/test/Analysis/asm.cpp

  Log Message:
  -----------
  [analyzer] Do not reason about locations passed as inline asm input (#103714)

If pointer is passed as input operand for inline assembly, it's possible
that asm block will change memory behind this pointer. So if pointer is
passed inside inline asm block, it's better to not guess and assume
memory has unknown state.

Without such change, we observed a lot of FP with hand-written `memcpy`
and friends.


  Commit: 05f663081513c6293f80469132d083e2603ed036
      https://github.com/llvm/llvm-project/commit/05f663081513c6293f80469132d083e2603ed036
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/MicrosoftMangle.cpp
    R clang/test/CodeGenCXX/mangle-ms-auto-return.cpp
    M clang/test/CodeGenCXX/mangle-ms-auto-templates-memptrs.cpp
    M clang/test/CodeGenCXX/mangle-ms-auto-templates-nullptr.cpp
    M clang/test/CodeGenCXX/mangle-ms-auto-templates.cpp

  Log Message:
  -----------
  Revert "[Clang] [AST] Fix placeholder return type name mangling for MSVC 1920+ / VS2019+ (#102848)"

It cause builds to start failing with

  Invalid type expected
  UNREACHABLE executed at clang/lib/AST/MicrosoftMangle.cpp:2551!

see comments on the PR.

> Partial fix for https://github.com/llvm/llvm-project/issues/92204.
> This PR just fixes VS2019+ since that is the suite of compilers that I
> require link compatibility with at the moment.
> I still intend to fix VS2017 and to update llvm-undname in future PRs.
> Once those are also finished and merged I'll close out
> https://github.com/llvm/llvm-project/issues/92204.
> I am hoping to get the llvm-undname PR up in a couple of weeks to be
> able to demangle the VS2019+ name mangling.
>
> MSVC 1920+ mangles placeholder return types for non-templated functions
> with "@".
> For example `auto foo() { return 0; }` is mangled as `?foo@@YA at XZ`.
>
> MSVC 1920+ mangles placeholder return types for templated functions as
> the qualifiers of the AutoType followed by "_P" for `auto` and "_T" for
> `decltype(auto)`.
> For example `template<class T> auto foo() { return 0; }` is mangled as
> `??$foo at H@@YA?A_PXZ` when `foo` is instantiated as follows `foo<int>()`.
>
> Lambdas with placeholder return types are still mangled with clang's
> custom mangling since MSVC lambda mangling hasn't been deciphered yet.
> Similarly any pointers in the return type with an address space are
> mangled with clang's custom mangling since that is a clang extension.
>
> We cannot augment `mangleType` to support this mangling scheme as the
> mangling schemes for variables and functions differ.
> auto variables are encoded with the fully deduced type where auto return
> types are not.
> The following two functions with a static variable are mangled the same
> ```
> template<class T>
> int test()
> {
>     static int i = 0; // "?i@?1???$test at H@@YAHXZ at 4HA"
>     return i;
> }
>
> template<class T>
> int test()
> {
>     static auto i = 0; // "?i@?1???$test at H@@YAHXZ at 4HA"
>     return i;
> }
> ```
> Inside `mangleType` once we get to mangling the `AutoType` we have no
> context if we are from a variable encoding or some other encoding.
> Therefore it was easier to handle any special casing for `AutoType`
> return types with a separate function instead of using the `mangleType`
> infrastructure.

This reverts commit e0d173d44161bf9b68243845666d58999e74f759
and the wollow-up fa343be414f9364911b947f109f3df5539e23068.


  Commit: 36231a5b5525b950daf1b7430859061b31a8e01e
      https://github.com/llvm/llvm-project/commit/36231a5b5525b950daf1b7430859061b31a8e01e
  Author: David Green <david.green at arm.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/test/CodeGen/AArch64/machine-outliner-unsafe-stack-call.mir
    A llvm/test/CodeGen/AArch64/verify-memop.mir

  Log Message:
  -----------
  [AArch64] Add verification for MemOp immediate ranges (#97561)

This adds an implementation of AArch64InstrInfo::verifyInstruction for
AArch64, and adds some basic verification of the range of immediate
ranges of memory operations using the information from getMemOpInfo.

Some extra memory operations have been added to getMemOpInfo, along with
the equivalent opcodes to getLoadStoreImmIdx to ensure we use the
correct index.

Please let us know if this starts reporting verification failures, Thanks.


  Commit: 33190490c667aaf8b08d5af8b8ce84524f856e80
      https://github.com/llvm/llvm-project/commit/33190490c667aaf8b08d5af8b8ce84524f856e80
  Author: zhongyunde 00443407 <zhongyunde at huawei.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/test/CodeGen/AArch64/arm64-addrmode.ll
    M llvm/test/CodeGen/AArch64/large-offset-ldr-merge.mir

  Log Message:
  -----------
  [AArch64] merge index address with large offset into base address

A case for this transformation, https://gcc.godbolt.org/z/nhYcWq1WE
Fold
  mov     w8, #56952
  movk    w8, #15, lsl #16
  ldrb    w0, [x0, x8]
into
  add     x0, x0, 1036288
  ldrb    w0, [x0, 3704]

Only LDRBBroX is supported for the first time.
Fix https://github.com/llvm/llvm-project/issues/71917

Note: This PR is try relanding the commit 32878c2065 with fix crash for PR79756
  this crash is exposes when there is MOVKWi instruction in the head of a block,
but without MOVZWi


  Commit: 43ffe2eed0d9f73789dbe213023733d164999306
      https://github.com/llvm/llvm-project/commit/43ffe2eed0d9f73789dbe213023733d164999306
  Author: zhongyunde 00443407 <zhongyunde at huawei.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/test/CodeGen/AArch64/arm64-addrmode.ll

  Log Message:
  -----------
  [AArch64] Fold more load.x into load.i with large offset

The list of load.x is refer to canFoldIntoAddrMode on D152828.
Also support LDRSroX missed in canFoldIntoAddrMode


  Commit: 79658d65c3c7a075382b74d81e74714e2ea9bd2d
      https://github.com/llvm/llvm-project/commit/79658d65c3c7a075382b74d81e74714e2ea9bd2d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  InferAddressSpaces: Make getPredicatedAddrSpace less confusing (#104052)

This takes a pointer value and the user instruction. Name them as
such, and remove the null check which should be dead.


  Commit: 100c9c019cebf49427d9f3ea93db65f7e448a102
      https://github.com/llvm/llvm-project/commit/100c9c019cebf49427d9f3ea93db65f7e448a102
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [DataLayout] Add helper predicates to sort specifications (NFC) (#104417)


  Commit: 43ba1097ee747b4ec5e757762ed0c9df6255a292
      https://github.com/llvm/llvm-project/commit/43ba1097ee747b4ec5e757762ed0c9df6255a292
  Author: Hua Tian <akiratian at tencent.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/ModuloSchedule.cpp
    A llvm/test/CodeGen/Hexagon/swp-ws-live-intervals.mir

  Log Message:
  -----------
  [llvm][CodeGen] Resolve issues when updating live intervals in window scheduler (#101945)

Corrupted live interval information can cause window scheduling to crash
in some cases. By adding the missing MBB's live interval information in the
ModuloScheduleExpander, the information can be correctly analyzed in 
the window scheduler.


  Commit: 91ffc12a820164bdebb1a388b5d7f41a6f25ce04
      https://github.com/llvm/llvm-project/commit/91ffc12a820164bdebb1a388b5d7f41a6f25ce04
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [clang][Interp] Pass callee decl to null_callee diagnostics (#104426)

The callee is null, not the full call expression.


  Commit: 7898866065f6c9b72b5fa3e45e565baf8a5e7609
      https://github.com/llvm/llvm-project/commit/7898866065f6c9b72b5fa3e45e565baf8a5e7609
  Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M lldb/tools/lldb-dap/package-lock.json
    M lldb/tools/lldb-dap/package.json
    M lldb/tools/lldb-dap/src-ts/extension.ts

  Log Message:
  -----------
  [lldb-dap] Expose log path in extension settings (#103482)

lldb-dap already supports a log file which can be enabled by setting the
`LLDBDAP_LOG` environment variable. With this commit, the log location
can be set directly through the VS-Code extension settings.

Also, this commit bumps the version number, such that the new VS Code
extension gets published to the Marketplace.


  Commit: 57a19ac3365f1dc255e6f24fcb7afcde2ccef8f9
      https://github.com/llvm/llvm-project/commit/57a19ac3365f1dc255e6f24fcb7afcde2ccef8f9
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h
    A lldb/test/Shell/SymbolFile/DWARF/x86/dwp-hash-collision.s

  Log Message:
  -----------
  Reapply "[lldb] Tolerate multiple compile units with the same DWO ID (#100577)" (#104041)

The only change vs. the first version of the patch is that I've made
DWARFUnit linking thread-safe/unit. This was necessary because, during
the
indexing step, two skeleton units could attempt to associate themselves
with the split unit.

The original commit message was:

I ran into this when LTO completely emptied two compile units, so they
ended up with the same hash (see #100375). Although, ideally, the
compiler would try to ensure we don't end up with a hash collision even
in this case, guaranteeing their absence is practically impossible. This
patch ensures this situation does not bring down lldb.


  Commit: 2e9f3f3b842538b55552aa22fdc0bf1966637ca8
      https://github.com/llvm/llvm-project/commit/2e9f3f3b842538b55552aa22fdc0bf1966637ca8
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
    A llvm/test/tools/llvm-split/AMDGPU/declarations-debug.ll

  Log Message:
  -----------
  [AMDGPU][llvm-split] Fix another division by zero (#104421)

Somehow I missed this in #98888. It requires a log file, or the debug
flag to be passed.


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

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

  Log Message:
  -----------
  InferAddressSpaces: Restore non-instruction user check

Fixes regression after 79658d65c3c7a075382b74d81e74714e2ea9bd2d.
We were missing test coverage for the nested constant expression
case.


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

  Changed paths:
    M clang/lib/AST/Interp/Program.cpp
    M clang/lib/AST/Interp/Record.cpp
    M clang/test/Modules/enum-codegen.cpp

  Log Message:
  -----------
  [clang][Interp] Use first field decl for Record field lookup (#104412)


  Commit: 42555cdba48b7d6d27c9a7d5c730733e66dec9a1
      https://github.com/llvm/llvm-project/commit/42555cdba48b7d6d27c9a7d5c730733e66dec9a1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/outer_loop_prefer_scalable.ll
    M llvm/test/Transforms/LoopVectorize/dbg-outer-loop-vect.ll
    M llvm/test/Transforms/LoopVectorize/outer-loop-vec-phi-predecessor-order.ll
    M llvm/test/Transforms/LoopVectorize/outer_loop_hcfg_construction.ll
    M llvm/test/Transforms/LoopVectorize/outer_loop_scalable.ll
    M llvm/test/Transforms/LoopVectorize/vplan-vectorize-inner-loop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/vplan-widen-call-instruction.ll

  Log Message:
  -----------
  [VPlan] Run VPlan optimizations on plans in native path.

Update buildVPlans (used in native path) to also run general VPlan
optimizations in another small step to align both codepaths.


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

  Changed paths:
    M libcxx/test/libcxx/language.support/support.dynamic/new_faligned_allocation.pass.cpp
    M libcxx/test/support/count_new.h

  Log Message:
  -----------
  [libcxx] Use `aligned_alloc` for testing instead of `posix_memalign` (#101748)

Summary:
The `aligned_alloc` function is the C11 replacement for
`posix_memalign`. We should favor the C standard over the POSIX standard
so more C library implementations can run the tests.


  Commit: 846f790216e1a0c40f8890d489904c3d716cc998
      https://github.com/llvm/llvm-project/commit/846f790216e1a0c40f8890d489904c3d716cc998
  Author: Tobias Stadler <mail at stadler-tobias.de>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/Combiner.h
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerInfo.h
    M llvm/lib/CodeGen/GlobalISel/Combiner.cpp

  Log Message:
  -----------
  [GlobalISel] Combiner: Observer-based DCE and retrying of combines

Continues the work for disabling fixed-point iteration in the Combiner
(#94291).

This introduces improved Observer-based heuristics in the
GISel Combiner to retry combining defs/uses of modified instructions and
for performing sparse dead code elimination.

I have experimented a lot with the heuristics and this seems to be the
minimal set of heuristics that allows disabling fixed-point iteration
for AArch64 CTMark O2 without regressions.
Enabling this globally would pass all regression tests for all official
targets (apart from small benign diffs), but I have made this fully
opt-in for now, because I can't quantify the impact for other targets.

This should mostly be on-par with how the WorkList-aware functions
in the InstCombiner and DAGCombiner handle rescheduling instructions
for recombining.

For performance numbers see my follow-up patch for AArch64 (#102167)

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


  Commit: bfce1aae76de05dd6ac9fbbd997295fe5aa280c0
      https://github.com/llvm/llvm-project/commit/bfce1aae76de05dd6ac9fbbd997295fe5aa280c0
  Author: Janek van Oirschot <janek.vanoirschot at amd.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTUtils.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTUtils.h
    M llvm/test/MC/AMDGPU/amd_kernel_code_t.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx10.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx11.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx12.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx7.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx8.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx90a.s

  Log Message:
  -----------
  [AMDGPU] MCExpr printing helper with KnownBits support (#95951)

Walks over the MCExpr and uses KnownBits to deduce whether an expression
is known and if so, prints said known value. Should support the most
common MCExpr cases for AMDGPU metadata.


  Commit: d7aeea626dac64449fc67cf8ddf8f326a0157d91
      https://github.com/llvm/llvm-project/commit/d7aeea626dac64449fc67cf8ddf8f326a0157d91
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-comb-no-active-lanes-prf.ll

  Log Message:
  -----------
  [AArch64] optimise SVE prefetch intrinsics with no active lanes (#103052)

This patch extends https://github.com/llvm/llvm-project/pull/73964 and
optimises away SVE prefetch intrinsics when predicate is zero.


  Commit: 82cf6558e50ea7fe024264cc2fb76ca20450fb82
      https://github.com/llvm/llvm-project/commit/82cf6558e50ea7fe024264cc2fb76ca20450fb82
  Author: WANG Rui <wangrui at loongson.cn>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/LoongArch/merge-base-offset.ll

  Log Message:
  -----------
  [LoongArch] Pre-commit tests for validating the merge base offset in vecotrs. NFC


  Commit: 569698443d2b1dad04dc4daa4559d754deabe64e
      https://github.com/llvm/llvm-project/commit/569698443d2b1dad04dc4daa4559d754deabe64e
  Author: Andrea Faulds <andrea.faulds at amd.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    A mlir/test/Dialect/GPU/subgroup-reduce-lowering.mlir
    R mlir/test/Dialect/GPU/subgroup-redule-lowering.mlir

  Log Message:
  -----------
  [mlir][gpu] Fix typo in test filename (#104053)

The word "redule" doesn't appear anywhere else in the MLIR codebase and
seems to be a typo of "reduce".


  Commit: d2a8351be2b0cc8572de3014f1bac1f03fa92617
      https://github.com/llvm/llvm-project/commit/d2a8351be2b0cc8572de3014f1bac1f03fa92617
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M compiler-rt/test/profile/ContinuousSyncMode/darwin-proof-of-concept.c

  Log Message:
  -----------
  [CompilerRT][Tests] Fix profile/darwin-proof-of-concept.c (#104237)

Fix profile/darwin-proof-of-concept.c on AppleSilicon Mac where there is
a different page alignment. The previous fix to drop alignment is
actually breaking the tests on Apple Silicon Mac. Revert to the original
section alignment and requires an ARM64 target for this test to run.


  Commit: a4525fcc8f127139a493164c360725ae4c6c87b3
      https://github.com/llvm/llvm-project/commit/a4525fcc8f127139a493164c360725ae4c6c87b3
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/Combiner.cpp

  Log Message:
  -----------
  [CodeGen] Fix -Wcovered-switch-default in Combiner.cpp (NFC)

/llvm-project/llvm/lib/CodeGen/GlobalISel/Combiner.cpp:220:3:
error: default label in switch which covers all enumeration values [-Werror,-Wcovered-switch-default]
  default:
  ^
1 error generated.


  Commit: 026d963cb004689477d2b5798cbba5ad41c25a70
      https://github.com/llvm/llvm-project/commit/026d963cb004689477d2b5798cbba5ad41c25a70
  Author: Daniel Grumberg <dgrumberg at apple.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/include/clang/AST/Availability.h
    M clang/lib/AST/Availability.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    A clang/test/ExtractAPI/inherited_availability.m

  Log Message:
  -----------
  [clang][ExtractAPI] Compute inherited availability information (#103040)

Additionally this computes availability information for all platforms
ahead of possibly introducing a flag to enable this behavior.

rdar://123513706


  Commit: 6543bd718e6a4e4d6a8473b478f8a46d3eb1562a
      https://github.com/llvm/llvm-project/commit/6543bd718e6a4e4d6a8473b478f8a46d3eb1562a
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [DataLayout] Extract loop body into a function to reduce nesting (NFC) (#104420)

Also, use `iterator_range` version of `split`.

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


  Commit: aaab4fcf656df30a533848d06400544d01992393
      https://github.com/llvm/llvm-project/commit/aaab4fcf656df30a533848d06400544d01992393
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp

  Log Message:
  -----------
  Revert "[SLP][NFC]Remove unused using declarations, reduce mem usage in containers, NFC"

This reverts commit e1b15504a831e63af6fb9a6e83faaa10ef425ae6.

This causes compile-time regressions, see:
http://llvm-compile-time-tracker.com/compare.php?from=e687a9f2dd389a54a10456e57693f93df0c64c02&to=e1b15504a831e63af6fb9a6e83faaa10ef425ae6&stat=instructions:u

Probably some of the new SmallVector sizes are sub-optimal.


  Commit: 75cb7de404ee236d6297c551740a2681583d7e5e
      https://github.com/llvm/llvm-project/commit/75cb7de404ee236d6297c551740a2681583d7e5e
  Author: earnol <earnol at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    A clang/test/CodeGen/bit-int-ubsan.c
    M compiler-rt/lib/ubsan/ubsan_value.cpp
    M compiler-rt/lib/ubsan/ubsan_value.h
    A compiler-rt/test/ubsan/TestCases/Integer/bit-int-pass.c
    A compiler-rt/test/ubsan/TestCases/Integer/bit-int.c

  Log Message:
  -----------
  [ubsan] Display correct runtime messages for negative _BitInt (#96240)

Without this patch compiler-rt ubsan library has a bug displaying
incorrect values for variables of the _BitInt (previously called
_ExtInt) type. This patch affects affects both: generation of metadata
inside code generator and runtime part. The runtime part provided only
for i386 and x86_64 runtimes. Other runtimes should be updated to take
full benefit of this patch.
The patch is constructed the way to be backward compatible and int and
float type runtime diagnostics should be unaffected for not yet updated
runtimes.

This patch fixes issue
https://github.com/llvm/llvm-project/issues/64100.

Co-authored-by: Eänolituri Lómitaurë <vladislav.aranov at ericsson.com>
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
Co-authored-by: Paul Kirth <paulkirth at google.com>


  Commit: 65ac12d3c9877ecf5b97552364e7eead887d94eb
      https://github.com/llvm/llvm-project/commit/65ac12d3c9877ecf5b97552364e7eead887d94eb
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/operand-is-reduced-val.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with incorrect minbitwidth analysis for reduced operands


  Commit: 13a6a7975256ebdbce85f1174ae2eec735fa0d7a
      https://github.com/llvm/llvm-project/commit/13a6a7975256ebdbce85f1174ae2eec735fa0d7a
  Author: Tobias Stadler <mail at stadler-tobias.de>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:

  Log Message:
  -----------
  [GlobalISel] Combiner: Fix warning after #102163

Default case in covered switches is illegal.
https://llvm.org/docs/CodingStandards.html#don-t-use-default-labels-in-fully-covered-switches-over-enumerations

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


  Commit: 56140a8258a3498cfcd9f0f05c182457d43cbfd2
      https://github.com/llvm/llvm-project/commit/56140a8258a3498cfcd9f0f05c182457d43cbfd2
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/operand-is-reduced-val.ll

  Log Message:
  -----------
  [SLP]Fix PR104422: Wrong value truncation

The minbitwidth restrictions can be skipped only for immediate reduced
values, for other nodes still need to check if external users allow
bitwidth reduction.

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


  Commit: 95daf1aedfe521704c601a26ad8011c6e237c38a
      https://github.com/llvm/llvm-project/commit/95daf1aedfe521704c601a26ad8011c6e237c38a
  Author: Snehasish Kumar <snehasishk at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/BuildLibCalls.h
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/Instrumentation/MemProfiler.cpp
    M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/test/Transforms/InstCombine/simplify-libcalls-new.ll

  Log Message:
  -----------
  Allow optimization of __size_returning_new variants. (#102258)

https://github.com/llvm/llvm-project/pull/101564 added support to TLI to
detect variants of operator new which provide feedback on the actual
size of memory allocated (http://wg21.link/P0901R5). This patch extends
SimplifyLibCalls to handle hot cold hinting of these variants.


  Commit: fcefe957ddfdc5a2fe9463757b597635e3436e01
      https://github.com/llvm/llvm-project/commit/fcefe957ddfdc5a2fe9463757b597635e3436e01
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    A llvm/test/CodeGen/AMDGPU/scalarize-insert-subvector.ll

  Log Message:
  -----------
  [LegalizeTypes][AMDGPU]: Allow for scalarization of insert_subvector (#104236)

Legalization for when the inserted subvector is to be scalarized.

https://godbolt.org/z/vx3joWqoh


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/test/CXX/class/class.compare/class.compare.default/p1.cpp
    M clang/test/CXX/drs/cwg25xx.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [Clang] Check explicit object parameter for defaulted operators properly (#100419)

Previously, the type of explicit object parameters was not considered
for relational operators. This was defined by CWG2586,
<https://cplusplus.github.io/CWG/issues/2586.html>. This fix also means
CWG2547 <https://cplusplus.github.io/CWG/issues/2547.html> is now fully
implemented. Fixes #100329, fixes #104413.

Now start rejecting invalid rvalue reference parameters, which weren't
checked for, and start accepting non-reference explicit object
parameters (like `bool operator==(this C, C) = default;`) which were
previously rejected for the object param not being a reference.

Also start rejecting non-reference explicit object parameters for
defaulted copy/move assign operators (`A& operator=(this A, const A&) =
default;` is invalid but was previously accepted). Fixes #104414.


  Commit: 2d52eb6a434fe47e67086f5ec1c3789bf6e7a604
      https://github.com/llvm/llvm-project/commit/2d52eb6a434fe47e67086f5ec1c3789bf6e7a604
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [SLP][NFC]Remove unused using declarations, reduce mem usage in containers, NFC


  Commit: db8ef6188cbbe2125e6d60bdef77a535105772df
      https://github.com/llvm/llvm-project/commit/db8ef6188cbbe2125e6d60bdef77a535105772df
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/tools/llc/llc.cpp

  Log Message:
  -----------
  [NFC] Fix code line exceeding 80 columns (#104428)


  Commit: 11c2da8fb7dc4d5dede094fa61077827004a3997
      https://github.com/llvm/llvm-project/commit/11c2da8fb7dc4d5dede094fa61077827004a3997
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/named-vector-shuffle-reverse.ll

  Log Message:
  -----------
  [RISCV] Narrow indices to e16 for LMUL > 1 when lowering vector_reverse (#104427)

The vector_shuffle lowering already does this to reduce register
pressure, so also do it here.


  Commit: 57abd4e4abb705a453134051743542de5fd396bc
      https://github.com/llvm/llvm-project/commit/57abd4e4abb705a453134051743542de5fd396bc
  Author: Daniel Grumberg <dgrumberg at apple.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    A clang/test/ExtractAPI/platform-serialization.c

  Log Message:
  -----------
  [clang][ExtractAPI] Emit environment component of target triple in SGF (#103273)

rdar://133533830


  Commit: 598970904736f3535939f6a5525022219e4ae517
      https://github.com/llvm/llvm-project/commit/598970904736f3535939f6a5525022219e4ae517
  Author: Hansang Bae <hansang.bae at intel.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M openmp/runtime/src/kmp.h
    M openmp/runtime/src/kmp_affinity.cpp
    M openmp/runtime/src/kmp_affinity.h
    M openmp/runtime/src/kmp_barrier.cpp
    M openmp/runtime/src/kmp_csupport.cpp
    M openmp/runtime/src/kmp_runtime.cpp
    M openmp/runtime/src/kmp_tasking.cpp
    M openmp/runtime/src/kmp_wait_release.h
    M openmp/runtime/src/ompt-general.cpp

  Log Message:
  -----------
  [OpenMP] Miscellaneous small code improvements (#95603)

Removes a few uninitialized variables, possible resource leaks, and
redundant code.


  Commit: e63b7ba0eb497d10d643aa5e27461c6c1bf8e221
      https://github.com/llvm/llvm-project/commit/e63b7ba0eb497d10d643aa5e27461c6c1bf8e221
  Author: Kevin McAfee <kmcafee at nvidia.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/shl-factor.ll

  Log Message:
  -----------
  [InstCombine][NFC] Add tests for shifts of constants by common factor (#103471)


  Commit: 51328b78dc2b0be20e8d67f57f64445cec25162c
      https://github.com/llvm/llvm-project/commit/51328b78dc2b0be20e8d67f57f64445cec25162c
  Author: sp <james at rooted.gg>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StringChecker.cpp

  Log Message:
  -----------
  [NFC] Fix spelling of "definitely". (#104455)

This corrects the misspelling of "definitely" as "definately". No
functional changes.


  Commit: 64c856055aed97603510410fd2feab273e1d5b8a
      https://github.com/llvm/llvm-project/commit/64c856055aed97603510410fd2feab273e1d5b8a
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Object/RelocationResolver.cpp

  Log Message:
  -----------
  Revert "[Object][x86-64] Add support for `R_X86_64_GLOB_DAT` relocations. (#103029)" (#103497)

This reverts commit 5ae9faa538d100ab38f6f4f99c924de0e4270272.

RelocationResolver is only supposed to handle static relocation types.
Introducing GLOB_DAT could negatively impact other RelocationResolver
users who solely handle static relocations and want to report errors for
dynamic relocations.

If GLOB_DAT is the sole required relocation, explicitly checking for it
in the caller would be more reliable. Additionally, the caller should
handle GLOB_DAT on other architectures.


  Commit: 46fb225f3ac602970ebb8973a5376cd9216ba38f
      https://github.com/llvm/llvm-project/commit/46fb225f3ac602970ebb8973a5376cd9216ba38f
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/InstSimplify/fptoi-range.ll

  Log Message:
  -----------
  [InstSimplify] Add tests for f16 to i128 range (NFC)


  Commit: afa0f53f96b5563a80fbdf8c41c8153bf8cd2685
      https://github.com/llvm/llvm-project/commit/afa0f53f96b5563a80fbdf8c41c8153bf8cd2685
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/CodeGen/Thumb2/mve-fpclamptosat_vec.ll
    M llvm/test/Transforms/InstSimplify/fptoi-range.ll

  Log Message:
  -----------
  [ValueTracking] Fix f16 fptosi range for large integers

We were missing the signed flag on the negative value, so the
range was incorrectly interpreted for integers larger than 64-bit.

Split out from https://github.com/llvm/llvm-project/pull/80309.


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

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

  Log Message:
  -----------
  Revert "[SLP][NFC]Remove unused using declarations, reduce mem usage in containers, NFC"

This reverts commit 2d52eb6a434fe47e67086f5ec1c3789bf6e7a604 to fix
compile time regression found in https://llvm-compile-time-tracker.com/compare.php?from=fcefe957ddfdc5a2fe9463757b597635e3436e01&to=2d52eb6a434fe47e67086f5ec1c3789bf6e7a604&stat=instructions%3Au.


  Commit: 9e0ee0e104a2f10b04144837d6a138b04a0193f6
      https://github.com/llvm/llvm-project/commit/9e0ee0e104a2f10b04144837d6a138b04a0193f6
  Author: Hansang Bae <hansang.bae at intel.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M openmp/runtime/src/include/omp.h.var
    M openmp/runtime/src/include/omp_lib.F90.var
    M openmp/runtime/src/include/omp_lib.h.var
    M openmp/runtime/src/kmp.h
    M openmp/runtime/src/kmp_ftn_entry.h
    M openmp/runtime/src/kmp_runtime.cpp
    A openmp/runtime/test/ompt/misc/pause_stop_tool.c

  Log Message:
  -----------
  [OpenMP] Add support for pause with omp_pause_stop_tool (#97100)

This patch adds support for pause resource with a new enumerator
omp_pause_stop_tool. The expected behavior of this enumerator is
* omp_pause_resource: not allowed
* omp_pause_resource_all: equivalent to omp_pause_hard


  Commit: 6c270a8b9f1e1b80a6016aafb438db7dd89bcb99
      https://github.com/llvm/llvm-project/commit/6c270a8b9f1e1b80a6016aafb438db7dd89bcb99
  Author: Koakuma <koachan at protonmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/ToolChains/Arch/Sparc.cpp
    M clang/test/Driver/sparc-target-features.c

  Log Message:
  -----------
  [SPARC][Driver] Add -m(no-)v8plus flags handling (#98713)

Implement handling for `-m(no-)v8plus` flags to allow the user to switch
between V8 and V8+ mode with 32-bit code.

Currently it only toggles the V8+ feature bit, ABI and codegen changes
will be done in future patches.


  Commit: e61776a0edce86ef01efaa708f43476c58173cae
      https://github.com/llvm/llvm-project/commit/e61776a0edce86ef01efaa708f43476c58173cae
  Author: Koakuma <koachan at protonmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    A llvm/test/tools/llvm-readobj/ELF/Sparc/elf-headers.test
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [SPARC][Utilities] Add names for SPARC ELF flags in LLVM binary utilities (#102843)

This allows us to use and print readable names in LLVM binary utilities.


  Commit: 54154f9f06e08b7ab3c7294352601ca4c6e5e160
      https://github.com/llvm/llvm-project/commit/54154f9f06e08b7ab3c7294352601ca4c6e5e160
  Author: jeffreytan81 <jeffreytan at meta.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M lldb/source/Target/ThreadPlanSingleThreadTimeout.cpp

  Log Message:
  -----------
  Fix single thread stepping timeout race condition (#104195)

This PR fixes a potential race condition in
https://github.com/llvm/llvm-project/pull/90930.

This race can happen because the original code set `m_info->m_isAlive =
true` **after** the timer thread is created. So if there is a context
switch happens and timer thread checks `m_info->m_isAlive` before main
thread got a chance to run `m_info->m_isAlive = true`, the timer thread
may treat `ThreadPlanSingleThreadTimeout` as not alive and simply exit
resulting in async interrupt never being sent to resume all threads
(deadlock).

The PR fixes the race by initializing all states **before** worker timer
thread creates.

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


  Commit: dd3f1313ae27a76cfce68e926fd90ac7408b3a21
      https://github.com/llvm/llvm-project/commit/dd3f1313ae27a76cfce68e926fd90ac7408b3a21
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Enable more lit self tests (#104285)

I assume the intent of the initial `*/*.py` was to also collect things
in `*.py`, but that's not what bazel does unless you use `**/*.py` which
is what we're doing now. A few of these tests fail so I explicitly
disabled them until someone has time to debug.


  Commit: d68d2172f9f1f0659b8b4bdbbeb1ccd290a614b5
      https://github.com/llvm/llvm-project/commit/d68d2172f9f1f0659b8b4bdbbeb1ccd290a614b5
  Author: Volodymyr Vasylkun <vvmposeydon at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
    A llvm/test/Transforms/InstCombine/lshr-ashr-of-uscmp.ll

  Log Message:
  -----------
  [InstCombine] Fold `ucmp/scmp(x, y) >> N` to `zext/sext(x < y)` when N is one less than the width of the result of `ucmp/scmp` (#104009)

Proof: https://alive2.llvm.org/ce/z/4diUqN

---------

Co-authored-by: Nikita Popov <github at npopov.com>


  Commit: 062e69a647c7ea0bc3441223648f9989490abb7a
      https://github.com/llvm/llvm-project/commit/062e69a647c7ea0bc3441223648f9989490abb7a
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    A flang/test/Semantics/OpenMP/complex.f90
    A flang/test/Semantics/OpenMP/present.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix 2 more regressions after #101009 (#101538)

PR #101009 exposed a semantic check issue with OPTIONAL dummy
arguments.
Another issue occurred when using %{re,im,len,kind}, as these also
need to be skipped when handling variables with implicitly defined
DSAs.

These issues were found by Fujitsu testsuite.


  Commit: e398da2b37fcc2696e1f5c661e5372844f4e1550
      https://github.com/llvm/llvm-project/commit/e398da2b37fcc2696e1f5c661e5372844f4e1550
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/Stmt.h
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/lib/AST/Expr.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    R clang/test/CodeGen/overflow-idiom-exclusion-fp.c

  Log Message:
  -----------
  Revert "[Clang] Overflow Pattern Exclusions (#100272)"

This reverts commit 9a666deecb9ff6ca3a6b12e6c2877e19b74b54da.

Reason: broke buildbots

e.g., fork-ubsan.test started failing at
https://lab.llvm.org/buildbot/#/builders/66/builds/2819/steps/9/logs/stdio

  Clang :: CodeGen/compound-assign-overflow.c
  Clang :: CodeGen/sanitize-atomic-int-overflow.c
started failing with https://lab.llvm.org/buildbot/#/builders/52/builds/1570


  Commit: 7332713b8eea9bb84d8481376f62b8de7c0ddb3a
      https://github.com/llvm/llvm-project/commit/7332713b8eea9bb84d8481376f62b8de7c0ddb3a
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp

  Log Message:
  -----------
  [Clang] prevent null explicit object argument from being deduced (#104328)

Fixes #102025


  Commit: 29b0a251c14b248848f2bbad1618b66a0c173336
      https://github.com/llvm/llvm-project/commit/29b0a251c14b248848f2bbad1618b66a0c173336
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    A llvm/test/tools/llvm-objdump/XCOFF/private-headers.test
    M llvm/tools/llvm-objdump/XCOFFDump.cpp

  Log Message:
  -----------
  [llvm-objdump] Print out  xcoff file header for xcoff object file with option private-headers (#96350)

Print out the XCOFF file header and load section header for the XCOFF
object file using llvm-objdump with the --private-headers option.


  Commit: 75ea8e803a6560b5e16644bb25d6340926156503
      https://github.com/llvm/llvm-project/commit/75ea8e803a6560b5e16644bb25d6340926156503
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [clang][Interp] Call move function for certain primitive types (#104437)


  Commit: 7493ea22f8027dc163ca521a71150d264891853c
      https://github.com/llvm/llvm-project/commit/7493ea22f8027dc163ca521a71150d264891853c
  Author: earnol <earnol at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/bit-int-ubsan.c

  Log Message:
  -----------
  [test]Fix test error due to CRT dependency (#104462)

Remove CRT dependency in headers stdint.h, stdio.h inside test
clang/test/CodeGen/bit-int-ubsan.c

---------

Co-authored-by: Eänolituri Lómitaurë <vladislav.aranov at ericsson.com>
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
Co-authored-by: Paul Kirth <paulkirth at google.com>


  Commit: 52337d5f9d108f04b2ed06069b21a255c232dc1f
      https://github.com/llvm/llvm-project/commit/52337d5f9d108f04b2ed06069b21a255c232dc1f
  Author: Tim Northover <t.p.northover at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    A llvm/test/tools/llvm-objdump/macho-stabs-in-syms.yaml
    M llvm/tools/llvm-objdump/llvm-objdump.cpp

  Log Message:
  -----------
  llvm-objdump: ensure a MachO symbol isn't STAB before looking up secion (#86667)

The section field has been repurposed for some STAB symbol types, and if
we blindly look it up we'll produce an error and terminate. Logic
already existed

Existing stabs test had a section that was in range. Unfortunately I
don't know of an easy way to produce stabs entries in LLVM (I thought
they died in the 90s until this came up) so I just binary-edited it to
cause a failure on existing llvm-objdump.


  Commit: 47721d46187f89c12a13d07b5857496301cf5d6e
      https://github.com/llvm/llvm-project/commit/47721d46187f89c12a13d07b5857496301cf5d6e
  Author: royitaqi <royitaqi at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M lldb/include/lldb/Symbol/CompileUnit.h
    M lldb/include/lldb/Target/Statistics.h
    M lldb/include/lldb/Target/Target.h
    M lldb/include/lldb/Utility/FileSpecList.h
    A lldb/include/lldb/Utility/RealpathPrefixes.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/source/Breakpoint/BreakpointResolverFileLine.cpp
    M lldb/source/Symbol/CompileUnit.cpp
    M lldb/source/Target/Statistics.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Target/TargetProperties.td
    M lldb/source/Utility/CMakeLists.txt
    M lldb/source/Utility/FileSpecList.cpp
    A lldb/source/Utility/RealpathPrefixes.cpp
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/Makefile
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/TestBreakpoint.py
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/main.c
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/real/bar.h
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/real/foo.h
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/real/qux.h
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/symlink1/foo.h
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/symlink2
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/to-be-mapped/README.md
    M lldb/unittests/Core/CMakeLists.txt
    R lldb/unittests/Core/FileSpecListTest.cpp
    M lldb/unittests/Utility/CMakeLists.txt
    A lldb/unittests/Utility/FileSpecListTest.cpp
    A lldb/unittests/Utility/MockSymlinkFileSystem.h
    A lldb/unittests/Utility/RealpathPrefixesTest.cpp

  Log Message:
  -----------
  [lldb] Realpath symlinks for breakpoints (#102223)

Improve the chance of resolving file/line breakpoints by realpath'ing the support files before doing a second match attempt, with some conditions applied.

A working [hello-world example](https://github.com/royitaqi/lldb_demos/blob/main/realpath/README.md).

See [patch](https://github.com/llvm/llvm-project/pull/102223) for more info about problem/motivation, details of the feature, new settings, telemetries and tests.


  Commit: 7ab2d504a1b30ce7a1338d23b0f443c8b24f94c4
      https://github.com/llvm/llvm-project/commit/7ab2d504a1b30ce7a1338d23b0f443c8b24f94c4
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [gn build] Port 47721d46187f


  Commit: 6cbd96e24c6a60cbc3dbb849d2ed7afc39c77a80
      https://github.com/llvm/llvm-project/commit/6cbd96e24c6a60cbc3dbb849d2ed7afc39c77a80
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/test/Parser/attr-order.cpp

  Log Message:
  -----------
  [Clang] handle both gnu and cpp11 attributes to ensure correct parsing inside extern block (#102864)

Fixes #101990


  Commit: 85da39debd8ee8c3186d88b462a924ea57b812ec
      https://github.com/llvm/llvm-project/commit/85da39debd8ee8c3186d88b462a924ea57b812ec
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/include/__memory/allocator.h
    M libcxx/include/__memory/uninitialized_algorithms.h

  Log Message:
  -----------
  [libc++] Remove the allocator<const T> extension (#102655)

In LLVM 19 removed the extension with an opt-in macro. This finally
removes that option too and removes a few `const_cast`s where I know
that they exist only to support this extension.


  Commit: 8ffdc8765661b2f6e6fed32de9fd95c76ff7dc9f
      https://github.com/llvm/llvm-project/commit/8ffdc8765661b2f6e6fed32de9fd95c76ff7dc9f
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Port 47721d46187f89c12a13d07b5857496301cf5d6e (#104481)

Made more difficult by many header circular dependencies


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

  Changed paths:
    M llvm/tools/llvm-objdump/XCOFFDump.cpp

  Log Message:
  -----------
  [llvm-objdump] Fix a warning

This patch fixes:

  llvm/tools/llvm-objdump/XCOFFDump.cpp:85:12: error: unused variable
  'BytesFormatted' [-Werror,-Wunused-variable]


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

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx12.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx8.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx90a.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx940.cl

  Log Message:
  -----------
  clang/AMDGPU: Emit atomicrmw for __builtin_amdgcn_global_atomic_fadd_{f32|f64} (#96872)

Need to emit syncscope and new metadata to get the native instruction,
most of the time.


  Commit: 2b0a8fcf702fb63fca8ec6e11dca35baf70f058d
      https://github.com/llvm/llvm-project/commit/2b0a8fcf702fb63fca8ec6e11dca35baf70f058d
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/DeclFriend.h
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/DeclFriend.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/ODRHash.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/test/AST/ast-dump-funcs-json.cpp
    A clang/test/AST/cxx2c-variadic-friends.cpp
    A clang/test/CXX/drs/cwg29xx.cpp
    M clang/test/Lexer/cxx-features.cpp
    A clang/test/Parser/cxx2c-variadic-friends-ext-diags.cpp
    A clang/test/Parser/cxx2c-variadic-friends.cpp
    A clang/test/SemaCXX/cxx2c-variadic-friends.cpp
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html

  Log Message:
  -----------
  [Clang] Implement C++26’s P2893R3 ‘Variadic friends’ (#101448)

Implement P2893R3 ‘Variadic friends’ for C++26.

This closes #98587.

Co-authored-by: Younan Zhang <zyn7109 at gmail.com>


  Commit: 932538199818554cee7347c17de3f4e004b75257
      https://github.com/llvm/llvm-project/commit/932538199818554cee7347c17de3f4e004b75257
  Author: Amy Kwan <amy.kwan1 at ibm.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
    M llvm/test/CodeGen/PowerPC/merge-private.ll
    M llvm/test/CodeGen/PowerPC/mergeable-string-pool.ll
    M llvm/test/DebugInfo/Symbolize/XCOFF/xcoff-symbolize-data.ll

  Log Message:
  -----------
  [PowerPC][GlobalMerge] Enable GlobalMerge by default on AIX (#101226)

This patch turns on the GlobalMerge pass by default on AIX and updates
LIT tests accordingly.


  Commit: 3dea42f3e5edc5a571081b7c5d58cce2fc4b2671
      https://github.com/llvm/llvm-project/commit/3dea42f3e5edc5a571081b7c5d58cce2fc4b2671
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp

  Log Message:
  -----------
  [TargetLowering] Don't call SelectionDAG::getTargetLoweringInfo() from TargetLowering methods. NFC (#104197)

If we are inside a TargetLowering method,
`SelectionDAG::getTargetLoweringInfo()` should be the same as `this`.


  Commit: 9aa3b53ac52167aba6253a52805874948ce40c8f
      https://github.com/llvm/llvm-project/commit/9aa3b53ac52167aba6253a52805874948ce40c8f
  Author: Ziqing Luo <ziqing at udel.edu>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-in-container-span-construct.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage] Fix a small bug recently found (#102953)

`QualType::isConstantArrayType()` checks canonical type. So a following
cast should be applied to canonical type as well:

```
if (Ty->isConstantArrayType())
  cast<ConstantArrayType>(Ty.getCanonicalType());  //  cast<ConstantArrayType>(Ty) is incorrect
```


  Commit: 1d5c2ad4f15f250a0b71495543c5626581a58a7a
      https://github.com/llvm/llvm-project/commit/1d5c2ad4f15f250a0b71495543c5626581a58a7a
  Author: Kirill Stoimenov <87100199+kstoimenov at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
    M compiler-rt/test/sanitizer_common/TestCases/Linux/prctl.cpp

  Log Message:
  -----------
  Reapply "Fix prctl to handle PR_GET_PDEATHSIG. (#101749)" (#104469)

Reapply with a fix. The fix is changing the arg2 type from u64 to int. 

This reverts commit 046524e8fe425cbc86c3371f2bf29fbb39d98435.


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

  Changed paths:
    M .git-blame-ignore-revs
    M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Availability.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclFriend.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/Availability.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclFriend.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/ExprConstant.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/Program.cpp
    M clang/lib/AST/Interp/Record.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/ODRHash.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Arch/Sparc.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Headers/__clang_cuda_math.h
    M clang/lib/Headers/__clang_hip_math.h
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseTemplate.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/StaticAnalyzer/Checkers/StringChecker.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/test/AST/Interp/cxx11.cpp
    M clang/test/AST/Interp/functions.cpp
    M clang/test/AST/Interp/lifetimes.cpp
    M clang/test/AST/ast-dump-funcs-json.cpp
    A clang/test/AST/cxx2c-variadic-friends.cpp
    M clang/test/Analysis/asm.cpp
    M clang/test/CXX/class/class.compare/class.compare.default/p1.cpp
    M clang/test/CXX/drs/cwg25xx.cpp
    A clang/test/CXX/drs/cwg29xx.cpp
    M clang/test/CodeGen/X86/cmpccxadd-builtins.c
    A clang/test/CodeGen/bit-int-ubsan.c
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx12.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx8.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx90a.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx940.cl
    A clang/test/Driver/darwin-print-target-triple.c
    M clang/test/Driver/nvlink-wrapper.c
    M clang/test/Driver/sparc-target-features.c
    A clang/test/ExtractAPI/inherited_availability.m
    A clang/test/ExtractAPI/platform-serialization.c
    A clang/test/Headers/gpu_disabled_math.cpp
    M clang/test/Lexer/cxx-features.cpp
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    M clang/test/Misc/warning-flags.c
    M clang/test/Modules/enum-codegen.cpp
    M clang/test/Parser/attr-order.cpp
    A clang/test/Parser/cxx2c-variadic-friends-ext-diags.cpp
    A clang/test/Parser/cxx2c-variadic-friends.cpp
    A clang/test/ParserHLSL/hlsl_is_rov_attr.hlsl
    A clang/test/ParserHLSL/hlsl_is_rov_attr_error.hlsl
    M clang/test/ParserHLSL/hlsl_resource_handle_attrs.hlsl
    M clang/test/SemaCXX/Inputs/enum-constexpr-conversion-system-header.h
    M clang/test/SemaCXX/constant-expression-cxx11.cpp
    M clang/test/SemaCXX/cxx2a-consteval.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp
    A clang/test/SemaCXX/cxx2c-variadic-friends.cpp
    M clang/test/SemaCXX/type-traits.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-field-attr.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-in-container-span-construct.cpp
    M clang/test/SemaHLSL/BuiltIns/normalize-errors.hlsl
    M clang/test/SemaTemplate/concepts.cpp
    M clang/test/SemaTemplate/temp_explicit.cpp
    M clang/tools/clang-nvlink-wrapper/NVLinkOpts.td
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html
    M compiler-rt/lib/asan/asan_allocator.cpp
    M compiler-rt/lib/msan/msan_allocator.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/ubsan/ubsan_value.cpp
    M compiler-rt/lib/ubsan/ubsan_value.h
    M compiler-rt/test/hwasan/TestCases/hwasan_symbolize_stack_uas.cpp
    M compiler-rt/test/profile/ContinuousSyncMode/darwin-proof-of-concept.c
    M compiler-rt/test/sanitizer_common/TestCases/Linux/prctl.cpp
    A compiler-rt/test/ubsan/TestCases/Integer/bit-int-pass.c
    A compiler-rt/test/ubsan/TestCases/Integer/bit-int.c
    M flang/include/flang/Optimizer/CodeGen/FIROpPatterns.h
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/FIROpPatterns.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/runtime/CUDA/CMakeLists.txt
    M flang/runtime/CUDA/allocator.cpp
    M flang/test/Driver/fveclib-codegen.f90
    M flang/test/Fir/convert-to-llvm.fir
    M flang/test/Fir/rebox.fir
    M flang/test/Fir/tbaa-codegen2.fir
    M flang/test/Fir/tbaa.fir
    M flang/test/Lower/allocatable-polymorphic.f90
    M flang/test/Lower/default-initialization-globals.f90
    A flang/test/Semantics/OpenMP/complex.f90
    A flang/test/Semantics/OpenMP/present.f90
    M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp
    M libc/newhdrgen/yaml/math.yaml
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/docs/Status/Cxx14Papers.csv
    M libcxx/docs/Status/Cxx17Issues.csv
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/include/__memory/allocator.h
    M libcxx/include/__memory/uninitialized_algorithms.h
    M libcxx/include/complex
    M libcxx/include/optional
    M libcxx/src/chrono.cpp
    M libcxx/src/filesystem/filesystem_clock.cpp
    M libcxx/src/include/overridable_function.h
    M libcxx/test/libcxx/language.support/support.dynamic/new_faligned_allocation.pass.cpp
    A libcxx/test/std/numerics/complex.number/complex.special/gh_101960_ambiguous_ctor.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.timezone/time.zone.members/sys_info.zdump.pass.cpp
    A libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/gh_101960_internal_ctor.compile.pass.cpp
    M libcxx/test/support/count_new.h
    M libcxx/test/support/platform_support.h
    M libcxx/test/support/test_macros.h
    M libcxx/utils/synchronize_csv_status_files.py
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/MachO/ObjC.cpp
    M lld/MachO/Relocations.cpp
    M lld/MachO/Relocations.h
    M lld/MachO/SyntheticSections.cpp
    M lld/test/MachO/objc-category-merging-minimal.s
    A lld/test/MachO/objc-relative-method-lists-simple-x86.s
    M lldb/CodeOwners.rst
    M lldb/include/lldb/Symbol/CompileUnit.h
    M lldb/include/lldb/Target/Statistics.h
    M lldb/include/lldb/Target/Target.h
    M lldb/include/lldb/Utility/FileSpecList.h
    A lldb/include/lldb/Utility/RealpathPrefixes.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/source/Breakpoint/BreakpointResolverFileLine.cpp
    M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h
    M lldb/source/Symbol/CompileUnit.cpp
    M lldb/source/Target/Statistics.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Target/TargetProperties.td
    M lldb/source/Target/ThreadPlanSingleThreadTimeout.cpp
    M lldb/source/Utility/CMakeLists.txt
    M lldb/source/Utility/FileSpecList.cpp
    A lldb/source/Utility/RealpathPrefixes.cpp
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/Makefile
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/TestBreakpoint.py
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/main.c
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/real/bar.h
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/real/foo.h
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/real/qux.h
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/symlink1/foo.h
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/symlink2
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/to-be-mapped/README.md
    A lldb/test/Shell/SymbolFile/DWARF/x86/dwp-hash-collision.s
    M lldb/tools/lldb-dap/package-lock.json
    M lldb/tools/lldb-dap/package.json
    M lldb/tools/lldb-dap/src-ts/extension.ts
    M lldb/unittests/Core/CMakeLists.txt
    R lldb/unittests/Core/FileSpecListTest.cpp
    M lldb/unittests/Utility/CMakeLists.txt
    A lldb/unittests/Utility/FileSpecListTest.cpp
    A lldb/unittests/Utility/MockSymlinkFileSystem.h
    A lldb/unittests/Utility/RealpathPrefixesTest.cpp
    M llvm/docs/LangRef.rst
    M llvm/docs/NVPTXUsage.rst
    M llvm/docs/ProgrammersManual.rst
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/GlobalISel/Combiner.h
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerInfo.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/DataLayout.h
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/include/llvm/IR/IntrinsicInst.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/IR/RuntimeLibcalls.def
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/LinkAllPasses.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/include/llvm/Transforms/Utils/BuildLibCalls.h
    M llvm/lib/Analysis/Analysis.cpp
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Analysis/DXILResource.cpp
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/lib/Analysis/RegionInfo.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/CodeGen/GlobalISel/Combiner.cpp
    M llvm/lib/CodeGen/ModuloSchedule.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.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/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/DataLayout.cpp
    M llvm/lib/MC/MCDisassembler/MCExternalSymbolizer.cpp
    M llvm/lib/Object/RelocationResolver.cpp
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPassBuilder.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/Target/AMDGPU/SIDefines.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTUtils.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTUtils.h
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/SystemZ/SystemZ.h
    M llvm/lib/Target/SystemZ/SystemZCallingConv.h
    M llvm/lib/Target/SystemZ/SystemZCallingConv.td
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/lib/Target/X86/X86MachineFunctionInfo.h
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/TextAPI/RecordsSlice.cpp
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
    M llvm/lib/Transforms/Instrumentation/MemProfiler.cpp
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
    M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    A llvm/test/Analysis/CtxProfAnalysis/full-cycle.ll
    M llvm/test/Analysis/CtxProfAnalysis/load.ll
    A llvm/test/Analysis/DXILResource/buffer-frombinding.ll
    R llvm/test/Assembler/datalayout-invalid-function-ptr-alignment.ll
    R llvm/test/Assembler/datalayout-invalid-i8-alignment.ll
    R llvm/test/Assembler/datalayout-invalid-stack-natural-alignment.ll
    R llvm/test/Assembler/invalid-datalayout-alloca-addrspace.ll
    R llvm/test/Assembler/invalid-datalayout-globals-addrspace.ll
    R llvm/test/Assembler/invalid-datalayout-index-size.ll
    R llvm/test/Assembler/invalid-datalayout-program-addrspace.ll
    R llvm/test/Assembler/invalid-datalayout1.ll
    R llvm/test/Assembler/invalid-datalayout10.ll
    R llvm/test/Assembler/invalid-datalayout11.ll
    R llvm/test/Assembler/invalid-datalayout12.ll
    R llvm/test/Assembler/invalid-datalayout13.ll
    R llvm/test/Assembler/invalid-datalayout14.ll
    R llvm/test/Assembler/invalid-datalayout15.ll
    R llvm/test/Assembler/invalid-datalayout16.ll
    R llvm/test/Assembler/invalid-datalayout17.ll
    R llvm/test/Assembler/invalid-datalayout18.ll
    R llvm/test/Assembler/invalid-datalayout19.ll
    R llvm/test/Assembler/invalid-datalayout2.ll
    R llvm/test/Assembler/invalid-datalayout20.ll
    R llvm/test/Assembler/invalid-datalayout21.ll
    R llvm/test/Assembler/invalid-datalayout22.ll
    R llvm/test/Assembler/invalid-datalayout23.ll
    R llvm/test/Assembler/invalid-datalayout24.ll
    R llvm/test/Assembler/invalid-datalayout3.ll
    R llvm/test/Assembler/invalid-datalayout4.ll
    R llvm/test/Assembler/invalid-datalayout5.ll
    R llvm/test/Assembler/invalid-datalayout6.ll
    R llvm/test/Assembler/invalid-datalayout7.ll
    R llvm/test/Assembler/invalid-datalayout8.ll
    R llvm/test/Assembler/invalid-datalayout9.ll
    M llvm/test/CodeGen/AArch64/arm64-addrmode.ll
    M llvm/test/CodeGen/AArch64/dag-combine-concat-vectors.ll
    M llvm/test/CodeGen/AArch64/large-offset-ldr-merge.mir
    M llvm/test/CodeGen/AArch64/machine-outliner-unsafe-stack-call.mir
    M llvm/test/CodeGen/AArch64/peephole-sxtw.mir
    M llvm/test/CodeGen/AArch64/srem-seteq-illegal-types.ll
    A llvm/test/CodeGen/AArch64/verify-memop.mir
    M llvm/test/CodeGen/AMDGPU/bug-v4f64-subvector.ll
    M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
    M llvm/test/CodeGen/AMDGPU/permute_i8.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-addrspacecast.ll
    A llvm/test/CodeGen/AMDGPU/scalarize-insert-subvector.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/ARM/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.8.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-as.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-gs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-hs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-lib.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ms.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ps.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-vs.ll
    M llvm/test/CodeGen/DirectX/UAVMetadata.ll
    M llvm/test/CodeGen/DirectX/cbuf.ll
    M llvm/test/CodeGen/DirectX/dxil_ver.ll
    M llvm/test/CodeGen/DirectX/legacy_cb_layout_0.ll
    M llvm/test/CodeGen/DirectX/legacy_cb_layout_1.ll
    M llvm/test/CodeGen/DirectX/legacy_cb_layout_2.ll
    M llvm/test/CodeGen/DirectX/legacy_cb_layout_3.ll
    M llvm/test/CodeGen/DirectX/lib_entry.ll
    M llvm/test/CodeGen/DirectX/normalize.ll
    A llvm/test/CodeGen/Hexagon/swp-ws-live-intervals.mir
    A llvm/test/CodeGen/LoongArch/fp-maximumnum-minimumnum.ll
    M llvm/test/CodeGen/LoongArch/merge-base-offset.ll
    A llvm/test/CodeGen/Mips/fp-maximumnum-minimumnum.ll
    M llvm/test/CodeGen/Mips/srem-seteq-illegal-types.ll
    A llvm/test/CodeGen/NVPTX/dot-product.ll
    M llvm/test/CodeGen/PowerPC/merge-private.ll
    M llvm/test/CodeGen/PowerPC/mergeable-string-pool.ll
    M llvm/test/CodeGen/PowerPC/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/iabs.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smax-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smax-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smin-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smin-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-vaarg-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/vararg.ll
    M llvm/test/CodeGen/RISCV/div.ll
    M llvm/test/CodeGen/RISCV/float-convert.ll
    A llvm/test/CodeGen/RISCV/riscv-codegen-prepare-atp.ll
    M llvm/test/CodeGen/RISCV/rv64zba.ll
    M llvm/test/CodeGen/RISCV/rv64zfh-half-convert.ll
    M llvm/test/CodeGen/RISCV/rv64zfhmin-half-convert.ll
    M llvm/test/CodeGen/RISCV/rvv/binop-splats.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-binop-splats.ll
    M llvm/test/CodeGen/RISCV/rvv/named-vector-shuffle-reverse.ll
    M llvm/test/CodeGen/RISCV/rvv/vadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vand-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vmul-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vor-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vsub-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vxor-sdnode.ll
    M llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll
    A llvm/test/CodeGen/SystemZ/mixed-ptr-sizes.ll
    M llvm/test/CodeGen/Thumb2/mve-fpclamptosat_vec.ll
    M llvm/test/CodeGen/Thumb2/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/WebAssembly/simd-shift-complex-splats.ll
    M llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
    M llvm/test/CodeGen/X86/cmpccxadd-intrinsics.ll
    A llvm/test/CodeGen/X86/fp-clobbered-by-eh.ll
    M llvm/test/CodeGen/X86/oddshuffles.ll
    M llvm/test/CodeGen/X86/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-8.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
    M llvm/test/CodeGen/X86/vector-pack-512.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg.ll
    M llvm/test/DebugInfo/Symbolize/XCOFF/xcoff-symbolize-data.ll
    M llvm/test/Frontend/HLSL/empty_cs_entry.ll
    M llvm/test/MC/AMDGPU/amd_kernel_code_t.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx10.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx11.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx12.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx7.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx8.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx90a.s
    M llvm/test/MC/Disassembler/X86/apx/cmpccxadd.txt
    M llvm/test/MC/Disassembler/X86/cmpccxadd-64.txt
    M llvm/test/MC/X86/apx/cmpccxadd-att.s
    M llvm/test/MC/X86/apx/cmpccxadd-intel.s
    M llvm/test/MC/X86/cmpccxadd-att-alias.s
    M llvm/test/MC/X86/cmpccxadd-att.s
    M llvm/test/MC/X86/cmpccxadd-intel-alias.s
    M llvm/test/MC/X86/cmpccxadd-intel.s
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/basic.ll
    A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-comb-no-active-lanes-prf.ll
    A llvm/test/Transforms/InstCombine/lshr-ashr-of-uscmp.ll
    M llvm/test/Transforms/InstCombine/shl-factor.ll
    M llvm/test/Transforms/InstCombine/simplify-libcalls-new.ll
    M llvm/test/Transforms/InstSimplify/fptoi-range.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/outer_loop_prefer_scalable.ll
    M llvm/test/Transforms/LoopVectorize/dbg-outer-loop-vect.ll
    M llvm/test/Transforms/LoopVectorize/outer-loop-vec-phi-predecessor-order.ll
    M llvm/test/Transforms/LoopVectorize/outer_loop_hcfg_construction.ll
    M llvm/test/Transforms/LoopVectorize/outer_loop_scalable.ll
    M llvm/test/Transforms/LoopVectorize/vplan-vectorize-inner-loop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/vplan-widen-call-instruction.ll
    M llvm/test/Transforms/PGOProfile/ctx-instrumentation.ll
    M llvm/test/Transforms/PGOProfile/ctx-prof-use-prelink.ll
    A llvm/test/Transforms/SLPVectorizer/X86/operand-is-reduced-val.ll
    A llvm/test/tools/llvm-objdump/XCOFF/private-headers.test
    A llvm/test/tools/llvm-objdump/macho-stabs-in-syms.yaml
    A llvm/test/tools/llvm-readobj/ELF/Sparc/elf-headers.test
    A llvm/test/tools/llvm-split/AMDGPU/declarations-debug.ll
    M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
    M llvm/tools/llc/llc.cpp
    M llvm/tools/llvm-objdump/XCOFFDump.cpp
    M llvm/tools/llvm-objdump/llvm-objdump.cpp
    M llvm/tools/llvm-readobj/ELFDumper.cpp
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
    M llvm/unittests/IR/DataLayoutTest.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp
    A llvm/utils/git/linkify
    M llvm/utils/gn/secondary/lldb/source/Utility/BUILD.gn
    M llvm/utils/lit/lit/TestRunner.py
    A llvm/utils/lit/tests/Inputs/check_path.py
    A llvm/utils/lit/tests/Inputs/shtest-cat/cat-error-0.txt
    A llvm/utils/lit/tests/Inputs/shtest-cat/cat-error-1.txt
    A llvm/utils/lit/tests/Inputs/shtest-cat/cat.txt
    A llvm/utils/lit/tests/Inputs/shtest-cat/cat_nonprinting.bin
    A llvm/utils/lit/tests/Inputs/shtest-cat/lit.cfg
    R llvm/utils/lit/tests/Inputs/shtest-shell/cat-error-0.txt
    R llvm/utils/lit/tests/Inputs/shtest-shell/cat-error-1.txt
    R llvm/utils/lit/tests/Inputs/shtest-shell/cat_nonprinting.bin
    R llvm/utils/lit/tests/Inputs/shtest-shell/check_path.py
    M llvm/utils/lit/tests/Inputs/shtest-shell/valid-shell.txt
    A llvm/utils/lit/tests/shtest-cat.py
    M llvm/utils/lit/tests/shtest-shell.py
    A mlir/include/mlir/Analysis/SliceWalk.h
    M mlir/include/mlir/Dialect/Tensor/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/lib/Analysis/CMakeLists.txt
    A mlir/lib/Analysis/SliceWalk.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp
    M mlir/lib/Dialect/MemRef/Transforms/ExpandStridedMetadata.cpp
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Dialect/Tensor/Transforms/ReshapePatterns.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Conversion/ArithToSPIRV/arith-to-spirv-le-specific.mlir
    M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
    M mlir/test/Dialect/Bufferization/Transforms/finalizing-bufferize.mlir
    A mlir/test/Dialect/GPU/subgroup-reduce-lowering.mlir
    R mlir/test/Dialect/GPU/subgroup-redule-lowering.mlir
    M mlir/test/Dialect/LLVMIR/inlining-alias-scopes.mlir
    M mlir/test/Dialect/MemRef/emulate-narrow-type.mlir
    M mlir/test/Dialect/MemRef/expand-strided-metadata.mlir
    A mlir/test/Dialect/Tensor/bubble-reshapes.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Vector/sink-vector-broadcast.mlir
    M mlir/test/Dialect/Vector/vector-reduce-to-contract.mlir
    M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
    M mlir/test/IR/elements-attr-interface.mlir
    M mlir/test/Target/LLVMIR/llvmir-le-specific.mlir
    M mlir/test/Transforms/test-legalize-type-conversion.mlir
    M mlir/test/lib/Dialect/Tensor/TestTensorTransforms.cpp
    M mlir/utils/vscode/package.json
    M mlir/utils/vscode/src/mlirContext.ts
    M offload/DeviceRTL/include/Allocator.h
    M offload/DeviceRTL/include/Types.h
    M offload/DeviceRTL/src/Misc.cpp
    M offload/DeviceRTL/src/State.cpp
    A offload/test/api/omp_device_alloc.c
    M openmp/docs/design/Runtimes.rst
    M openmp/runtime/src/include/omp.h.var
    M openmp/runtime/src/include/omp_lib.F90.var
    M openmp/runtime/src/include/omp_lib.h.var
    M openmp/runtime/src/kmp.h
    M openmp/runtime/src/kmp_affinity.cpp
    M openmp/runtime/src/kmp_affinity.h
    M openmp/runtime/src/kmp_barrier.cpp
    M openmp/runtime/src/kmp_csupport.cpp
    M openmp/runtime/src/kmp_ftn_entry.h
    M openmp/runtime/src/kmp_runtime.cpp
    M openmp/runtime/src/kmp_tasking.cpp
    M openmp/runtime/src/kmp_wait_release.h
    M openmp/runtime/src/ompt-general.cpp
    A openmp/runtime/test/ompt/misc/pause_stop_tool.c
    M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/utils/lit/tests/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  Rebase, preallocate storage for submasks

Created using spr 1.3.5


Compare: https://github.com/llvm/llvm-project/compare/92b3a6ab8bb6...a4210064da18

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