[all-commits] [llvm/llvm-project] 31204b: [scudo] Make comment compatible with gcc (#106137)

Alexander Richardson via All-commits all-commits at lists.llvm.org
Tue Aug 27 09:58:16 PDT 2024


  Branch: refs/heads/users/arichardson/spr/compiler-rt-fix-definition-of-uptr-and-usize-on-32-bit-windows
  Home:   https://github.com/llvm/llvm-project
  Commit: 31204b472eccdc59f7aa16f9a539deeb431f6177
      https://github.com/llvm/llvm-project/commit/31204b472eccdc59f7aa16f9a539deeb431f6177
  Author: Caslyn Tonelli <6718161+Caslyn at users.noreply.github.com>
  Date:   2024-08-26 (Mon, 26 Aug 2024)

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

  Log Message:
  -----------
  [scudo] Make comment compatible with gcc (#106137)

gcc interprets a backslash '\\' as the last char before a new line as a
line continuation character, even in a comment context. This can produce
an "error: multi-line comment [-Werror=comment]".

This PR adds delimiters so that the comment can compile with gcc.


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

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

  Log Message:
  -----------
  [SandboxIR] Implement PossiblyNonNegInst (#106149)

This patch implements sandboxir::PossiblyNonNegInst mirroring
llvm::PossiblyNonNegInst.


  Commit: 82579f9d9ac575c4e6609899981e7897932a3576
      https://github.com/llvm/llvm-project/commit/82579f9d9ac575c4e6609899981e7897932a3576
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-08-26 (Mon, 26 Aug 2024)

  Changed paths:
    A mlir/include/mlir/Bindings/Python/IRTypes.h
    M mlir/lib/Bindings/Python/IRTypes.cpp

  Log Message:
  -----------
  [mlir][Python] Make `PyShapedType` public (#106105)

Make `PyShapedType` public, so that downstream projects can define types
that implement the `ShapedType` type interface in Python.


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

  Changed paths:
    M compiler-rt/test/fuzzer/out-of-process-fuzz.test

  Log Message:
  -----------
  [compiler-rt][tests] Fix env command not found errors with lit internal shell (#105879)

This patch addresses an issue where the `LIBFUZZER_OOP_TARGET`
environment variable was causing "command not found" errors in the
`out-of-process-fuzz` test when running with the
`LIT_USE_INTERNAL_SHELL=1 ninja check-compiler-rt` command.
Error displayed:
```
# .---command stderr------------
# | 'LIBFUZZER_OOP_TARGET=./oop-target > /dev/null 2>&1 ': command not found
# `-----------------------------
# error: command failed with exit status: 127
```
The lit internal shell was not correctly interpreting the command
redirection and environment variable assignment in a single line,
leading to the failure.

In this patch the test was updated to use `env` for setting the
`LIBFUZZER_OOP_TARGET` environment variable. This change ensures that
the command is properly recognized and executed within the internal
shell environment. The output of the fuzzing process was captured in a
temporary file instead of redirecting it directly to `/dev/null`,
allowing for more controlled output management. Finally, the results
from running `oop-target` on all corpus files are now appended to ensure
that every output is thoroughly checked by FileCheck. The `RUN` line
sets the `LIBFUZZER_OOP_TARGET` using `env`, runs the `oop-fuzzer` with
specific options and uses the seed files from `OOP_CORPUS/seed` to
initiate the fuzzing process.

This change is relevant for enabling the lit internal shell by default,
as outlined in [[RFC] Enabling the Lit Internal Shell by
Default](https://discourse.llvm.org/t/rfc-enabling-the-lit-internal-shell-by-default/80179)


  Commit: 7f04a8ad131881b5a58b97c8191733ed42d18e20
      https://github.com/llvm/llvm-project/commit/7f04a8ad131881b5a58b97c8191733ed42d18e20
  Author: Longsheng Mou <moulongsheng at huawei.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize.mlir

  Log Message:
  -----------
  [mlir][func][bufferization] Fix cast incompatible when bufferize callOp (#105929)

Handle caller/callee type mismatch using `castOrReallocMemRefValue`
instead of just a `CastOp`. The method insert a reallocation + copy if
it cannot be statically guaranteed that a direct cast would be valid.
Fix #105916.


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/fastcc-without-f-reg.ll

  Log Message:
  -----------
  [RISCV] Use XLenVT as LocVT for f16/f32/f164 with Zfinx in CC_RISCV_FastCC.

This is need to make sure we create FMV_X_W/FMV_X_H/bitcast nodes
that match up with what return lowering will do.


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

  Changed paths:
    A llvm/test/CodeGen/MLRegAlloc/lit.local.cfg
    A llvm/test/Transforms/Inline/ML/lit.local.cfg

  Log Message:
  -----------
  Revert "[MLGO] Remove Python <3.8 from unsupported config (#106132)"

This reverts commit a959d70eb5b6d47c0b32eb34fc409e50c01d722d.

This was causing bot failures.

https://lab.llvm.org/buildbot/#/builders/174/builds/3975


  Commit: 58eec851cb47b298d47ad25ff7911150aed65564
      https://github.com/llvm/llvm-project/commit/58eec851cb47b298d47ad25ff7911150aed65564
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-26 (Mon, 26 Aug 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    M llvm/lib/Target/DirectX/DXILResource.cpp
    M llvm/lib/Target/DirectX/DXILResource.h
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp

  Log Message:
  -----------
  [DirectX] Move resource logic into PrettyPrinter and TranslateMetadata. NFC

Move the module level logic for resources into the pretty printer and translate
metadata passes rather than embedding them in the DXILResource helper. This
will make it easier to migrate towards the target extension type based approach
to resources.

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


  Commit: 4b3f1473bc25c089c52fd2ba90883bcc52d69330
      https://github.com/llvm/llvm-project/commit/4b3f1473bc25c089c52fd2ba90883bcc52d69330
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-08-26 (Mon, 26 Aug 2024)

  Changed paths:
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors.cpp

  Log Message:
  -----------
  [rtsan][compiler-rt] Add missing calloc unit test (#106159)


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

  Changed paths:
    M llvm/include/llvm/TableGen/Record.h
    M llvm/lib/TableGen/DetailedRecordsBackend.cpp
    M llvm/lib/TableGen/JSONBackend.cpp

  Log Message:
  -----------
  [NFC][TableGen] Refactor JSON and detailed record emitter (#105770)

- Fix JSON and detailed record emitters to use const reference and pointers.
- Fix code to use C++ structured bindings and range-based loops, including reverse() range for locations.
- Eliminate `NL` define for "\n".
- Change JSON emitter to populate `instance_list` in an earlier loop over superclasses instead of a separate loop.
- Rename variables in JSON emitter to conform to LLVM naming conventions.
- Eliminate unused headers in detailed record emitter.


  Commit: 79154a967461be37f900dc47687560056bf5c068
      https://github.com/llvm/llvm-project/commit/79154a967461be37f900dc47687560056bf5c068
  Author: Ian Anderson <iana at apple.com>
  Date:   2024-08-26 (Mon, 26 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/AttrDocs.td

  Log Message:
  -----------
  [docs] Document the missing availability platforms and environments (#104653)

Update the availability attribute documentation to include all of the
missing platforms, and add in the environments.


  Commit: daa79232f76c645e38aeffc9074bf0eb5c8010bd
      https://github.com/llvm/llvm-project/commit/daa79232f76c645e38aeffc9074bf0eb5c8010bd
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-26 (Mon, 26 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/lib/Target/DirectX/DXILMetadata.cpp
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
    M llvm/test/CodeGen/DirectX/CreateHandle.ll
    M llvm/test/CodeGen/DirectX/CreateHandleFromBinding.ll

  Log Message:
  -----------
  [DirectX] Implement metadata lowering for resources

Generate metadata from target extension type based resources.

Part of #91366

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


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

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

  Log Message:
  -----------
  [RISCV] Don't check hasStdExtZfh and hasStdExtZfhmin. NFC

hasStdExtZfh implies hasStdExtZfhmin so it is sufficient to check
only hasStdExtZfhmin.

Similar for Zhinx and Zhinxmin.


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    A llvm/test/Transforms/SLPVectorizer/RISCV/long-mask-split.ll

  Log Message:
  -----------
  [RISCV][TTI]Fix the cost estimation for long select shuffle.

The code was broken completely. Need to iterate over the whole mask and
process the submasks correctly, check if they form full indentity and
adjust indices correctly.

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


  Commit: 87157ab0f672a4755d231494b2162939811a014f
      https://github.com/llvm/llvm-project/commit/87157ab0f672a4755d231494b2162939811a014f
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-26 (Mon, 26 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    M llvm/test/CodeGen/DirectX/CreateHandle.ll
    M llvm/test/CodeGen/DirectX/CreateHandleFromBinding.ll

  Log Message:
  -----------
  [DirectX] Add resource handling to the DXIL pretty printer

Handle target extension type resources when printing resources to textual IR.

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


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

  Changed paths:
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/test/SemaTemplate/alias-template-with-lambdas.cpp

  Log Message:
  -----------
  [Clang][Sema] Revisit the fix for the lambda within a type alias template decl (#89934)

In the last patch #82310, we used template depths to tell if such alias
decls contain lambdas, which is wrong because the lambda can also appear
as a part of the default argument, and that would make
`getTemplateInstantiationArgs` provide extra template arguments in
undesired contexts. This leads to issue #89853.

Moreover, our approach
for https://github.com/llvm/llvm-project/issues/82104 was sadly wrong.
We tried to teach `DeduceReturnType` to consider alias template
arguments; however, giving these arguments in the context where they
should have been substituted in a `TransformCallExpr` call is never
correct.

This patch addresses such problems by using a `RecursiveASTVisitor` to
check if the lambda is contained by an alias `Decl`, as well as
twiddling the lambda dependencies - we should also build a dependent
lambda expression if the surrounding alias template arguments were
dependent.

Fixes #89853
Fixes #102760
Fixes #105885


  Commit: 8e901c255df45e38cb1d69a576804029e20868bf
      https://github.com/llvm/llvm-project/commit/8e901c255df45e38cb1d69a576804029e20868bf
  Author: Kai Luo <gluokai at gmail.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/CMakeLists.txt
    R llvm/lib/Target/PowerPC/PPCExpandISEL.cpp
    M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
    M llvm/test/CodeGen/PowerPC/O0-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
    M llvm/test/CodeGen/PowerPC/crbit-asm.ll
    M llvm/test/CodeGen/PowerPC/crbits.ll
    M llvm/test/CodeGen/PowerPC/expand-contiguous-isel.ll
    M llvm/test/CodeGen/PowerPC/expand-foldable-isel.ll
    R llvm/test/CodeGen/PowerPC/expand-isel-1.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-10.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-2.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-3.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-4.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-5.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-6.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-7.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-8.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-9.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-liveness.mir
    M llvm/test/CodeGen/PowerPC/expand-isel.ll
    M llvm/test/CodeGen/PowerPC/fold-zero.ll
    M llvm/test/CodeGen/PowerPC/i1-ext-fold.ll
    M llvm/test/CodeGen/PowerPC/i64_fp_round.ll
    M llvm/test/CodeGen/PowerPC/ifcvt.ll
    M llvm/test/CodeGen/PowerPC/isel.ll
    M llvm/test/CodeGen/PowerPC/optcmp.ll
    M llvm/test/CodeGen/PowerPC/p8-isel-sched.ll
    M llvm/test/CodeGen/PowerPC/ppc-crbits-onoff.ll
    M llvm/test/CodeGen/PowerPC/remove-implicit-use.mir
    M llvm/test/CodeGen/PowerPC/select-i1-vs-i1.ll
    M llvm/test/CodeGen/PowerPC/subreg-postra-2.ll
    M llvm/test/CodeGen/PowerPC/subreg-postra.ll

  Log Message:
  -----------
  [PowerPC] Retire PPCExpandISel pass (#84289)

We can decide whether to expand isel or not in instruction selection
pass and early-if-conversion pass. The transformation implemented in
PPCExpandISel can be retired considering PPC backend doesn't generate
`isel` instructions post-RA.
Also if we are seeking performant branch-or-isel decision, we can turn
to selectoptimize pass.

---------

Co-authored-by: Kai Luo <lkail at cn.ibm.com>


  Commit: 085587e1a9cdf1625efca61153a7dfe30946a6ce
      https://github.com/llvm/llvm-project/commit/085587e1a9cdf1625efca61153a7dfe30946a6ce
  Author: Aiden Grossman <agrossman154 at yahoo.com>
  Date:   2024-08-26 (Mon, 26 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/MLRegAlloc/Inputs/interactive_main.py
    R llvm/test/CodeGen/MLRegAlloc/lit.local.cfg
    R llvm/test/Transforms/Inline/ML/lit.local.cfg

  Log Message:
  -----------
  Reland "[MLGO] Remove Python <3.8 from unsupported config (#106132)"

This reverts commit c3776c11c26e5c0e27b772e6694e6c76f73ac9e8.

This relands commit a959d70eb5b6d47c0b32eb34fc409e50c01d722d.

This was originally causing bot failures on Python version 3.8.
This relanding fixes that by adjusting the relevant type annotations
that are not supported in earlier versions.


  Commit: 1200d35e0b1bd33cf6b06c185384f78226b619ae
      https://github.com/llvm/llvm-project/commit/1200d35e0b1bd33cf6b06c185384f78226b619ae
  Author: Yuxuan Chen <ych at fb.com>
  Date:   2024-08-26 (Mon, 26 Aug 2024)

  Changed paths:
    M llvm/lib/IR/AttributeImpl.h

  Log Message:
  -----------
  [IR] Bump AttributeBitSet width to 16 bytes (#106138)


  Commit: b01c006f734a0977a4fd9c7f1a706c8230663739
      https://github.com/llvm/llvm-project/commit/b01c006f734a0977a4fd9c7f1a706c8230663739
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/lib/CodeGen/TargetInstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/lib/Target/AMDGPU/R600InstrInfo.cpp
    M llvm/lib/Target/AMDGPU/R600InstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/ARC/ARCInstrInfo.cpp
    M llvm/lib/Target/ARC/ARCInstrInfo.h
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.h
    M llvm/lib/Target/ARM/Thumb1InstrInfo.cpp
    M llvm/lib/Target/ARM/Thumb1InstrInfo.h
    M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
    M llvm/lib/Target/ARM/Thumb2InstrInfo.h
    M llvm/lib/Target/AVR/AVRInstrInfo.cpp
    M llvm/lib/Target/AVR/AVRInstrInfo.h
    M llvm/lib/Target/BPF/BPFInstrInfo.cpp
    M llvm/lib/Target/BPF/BPFInstrInfo.h
    M llvm/lib/Target/CSKY/CSKYInstrInfo.cpp
    M llvm/lib/Target/CSKY/CSKYInstrInfo.h
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
    M llvm/lib/Target/Lanai/LanaiInstrInfo.cpp
    M llvm/lib/Target/Lanai/LanaiInstrInfo.h
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.h
    M llvm/lib/Target/M68k/M68kInstrInfo.cpp
    M llvm/lib/Target/M68k/M68kInstrInfo.h
    M llvm/lib/Target/MSP430/MSP430InstrInfo.cpp
    M llvm/lib/Target/MSP430/MSP430InstrInfo.h
    M llvm/lib/Target/Mips/Mips16InstrInfo.cpp
    M llvm/lib/Target/Mips/Mips16InstrInfo.h
    M llvm/lib/Target/Mips/MipsSEInstrInfo.cpp
    M llvm/lib/Target/Mips/MipsSEInstrInfo.h
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.h
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
    M llvm/lib/Target/Sparc/SparcInstrInfo.cpp
    M llvm/lib/Target/Sparc/SparcInstrInfo.h
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.h
    M llvm/lib/Target/VE/VEInstrInfo.cpp
    M llvm/lib/Target/VE/VEInstrInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.h
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.h
    M llvm/lib/Target/XCore/XCoreInstrInfo.cpp
    M llvm/lib/Target/XCore/XCoreInstrInfo.h
    M llvm/lib/Target/Xtensa/XtensaInstrInfo.cpp
    M llvm/lib/Target/Xtensa/XtensaInstrInfo.h
    A llvm/test/CodeGen/RISCV/renamable-copy.mir

  Log Message:
  -----------
  [TII][RISCV] Add renamable bit to copyPhysReg (#91179)

The renamable flag is useful during MachineCopyPropagation but renamable
flag will be dropped after lowerCopy in some case.

This patch introduces extra arguments to pass the renamable flag to
copyPhysReg.


  Commit: 38c3855c9f7d2bc9a509f05b504ee582d271a991
      https://github.com/llvm/llvm-project/commit/38c3855c9f7d2bc9a509f05b504ee582d271a991
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-08-26 (Mon, 26 Aug 2024)

  Changed paths:
    M llvm/unittests/CodeGen/GlobalISel/GISelMITest.h
    M llvm/unittests/CodeGen/MachineDomTreeUpdaterTest.cpp
    M llvm/unittests/MI/LiveIntervalTest.cpp
    M llvm/unittests/MIR/MachineMetadata.cpp
    M llvm/unittests/Target/WebAssembly/WebAssemblyExceptionInfoTest.cpp

  Log Message:
  -----------
  [NFC] Remove unused argument (FuncName) for parseMIR (#106144)

While working on a MIR unittest, I noticed that parseMIR includes an
unused argument that sets a function name. This is not only redundant
but also irrelevant, as parseMIR is designed to parse entire module, not
specific functions, even though most unittests contain a single function
per module. To streamline the API, I have removed this unnecessary
argument from parseMIR. However, if this argument was originally
included to enhance readability or for any other purpose, please let me
know.


  Commit: c8cac33ad23acc671a0a7390a5254b9f6e848138
      https://github.com/llvm/llvm-project/commit/c8cac33ad23acc671a0a7390a5254b9f6e848138
  Author: PhrygianGates <69254262+PhrygianGates at users.noreply.github.com>
  Date:   2024-08-26 (Mon, 26 Aug 2024)

  Changed paths:
    M mlir/python/mlir/runtime/np_to_memref.py
    M mlir/test/python/execution_engine.py

  Log Message:
  -----------
  [MLIR][Python] add f8E5M2 and tests for np_to_memref (#106028)

add f8E5M2 and tests for np_to_memref

---------

Co-authored-by: Zhicheng Xiong <zhichengx at dc2-sim-c01-215.nvidia.com>


  Commit: ce2b488e90d6d5a5c8fe495ede8238938827da39
      https://github.com/llvm/llvm-project/commit/ce2b488e90d6d5a5c8fe495ede8238938827da39
  Author: Jeff Niu <jeff at modular.com>
  Date:   2024-08-26 (Mon, 26 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Support/ThreadLocalCache.h

  Log Message:
  -----------
  [mlir] ThreadLocalCache: make TSAN happy about destructors (#106170)

TSAN warns that `ptr` is read and write without protection in
`clearExpiredEntries` and in the destructor of `Owner`. Add an atomic
bool to synchronize these without incurring a cost when calling `get`.


  Commit: 1990d8de339ebc1da4be3c978161828d93ffb7bc
      https://github.com/llvm/llvm-project/commit/1990d8de339ebc1da4be3c978161828d93ffb7bc
  Author: Connie Zhu <60797237+connieyzhu at users.noreply.github.com>
  Date:   2024-08-26 (Mon, 26 Aug 2024)

  Changed paths:
    M llvm/utils/lit/lit/TestRunner.py
    A llvm/utils/lit/tests/Inputs/shtest-export/export-too-many-args.txt
    A llvm/utils/lit/tests/Inputs/shtest-export/lit.cfg
    A llvm/utils/lit/tests/shtest-export.py

  Log Message:
  -----------
  [llvm-lit][test] Resolved typo in raising InternalShellError for export command in lit's internal shell (#105961)

This patch fixes the incorrect usage of lit's built-in `export` command.
There is a typo in raising the error itself where the error being raised
had the wrong number of parameters passed in.

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


  Commit: 952b13362d4af238b22444cc27844c0ac8c09047
      https://github.com/llvm/llvm-project/commit/952b13362d4af238b22444cc27844c0ac8c09047
  Author: Connie Zhu <60797237+connieyzhu at users.noreply.github.com>
  Date:   2024-08-26 (Mon, 26 Aug 2024)

  Changed paths:
    M clang/test/Driver/offload-packager.c
    M compiler-rt/test/hwasan/TestCases/hwasan_symbolize.cpp

  Log Message:
  -----------
  [clang][compiler-rt][test] Removed dirname command substitutions from tests (#105754)

This patch rewrites tests in clang and compiler-rt that uses bash
command substitution syntax $() to execute the dirname command. This is
done so that the tests can be run using lit's internal shell.

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


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

  Changed paths:
    M compiler-rt/test/ubsan/TestCases/TypeCheck/vptr.cpp

  Log Message:
  -----------
  [compiler-rt][tests] Removed the use of parentheses in compiler-rt tests with lit internal shell (#105729)

This patch addresses compatibility issues with the lit internal shell by
removing the use of subshell execution (parentheses and subshell syntax)
in the `merge-posix.test` and `vptr.cpp` tests. The lit internal shell
does not support parentheses, so the tests have been refactored to use
separate command invocations.

This change is relevant for enabling the lit internal shell by default,
as outlined in [[RFC] Enabling the Lit Internal Shell by
Default](https://discourse.llvm.org/t/rfc-enabling-the-lit-internal-shell-by-default/80179)

fixes: #102401


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

  Changed paths:
    M compiler-rt/test/profile/Linux/counter_promo_for.c
    M compiler-rt/test/profile/Linux/counter_promo_nest.c
    M compiler-rt/test/profile/Linux/counter_promo_while.c
    M compiler-rt/test/profile/Linux/instrprof-debug-info-correlate.c

  Log Message:
  -----------
  [compiler-rt][test] Expand and Rewrite Tests for lit Internal Shell Compatibility (#106115)

This patch addresses compatibility issues with the lit internal shell by
expanding and rewriting test scripts in the compiler-rt subproject.
These changes were prompted by the FileNotFound unresolved errors
encountered during the testing process, specifically when running the
command `LIT_USE_INTERNAL_SHELL=1 ninja check compiler-rt`.

**Why the error occurred:**
The error occurred because the original test scripts used process
substitution `(<(...))` in their diff commands. Process substitution
creates temporary files or FIFOs to hold command output, and these are
then passed to `diff`. However, the lit internal shell, which is more
limited than a typical shell like `bash`, does not support process
substitution. When lit tries to execute these commands, it is unable to
create or access the temporary files or FIFOs generated by process
substitution. As a result, lit attempts to open a file or directory that
doesn't exist, leading to the `FileNotFoundError`.

**Changes Made:**

- Instead of using process substitution, the commands now explicitly
redirect the output of `llvm-profdata show` to temporary files before
performing the `diff` comparison. This ensures that the lit internal
shell can correctly find and open these files, resolving the
`FileNotFoundError`.

[This change is relevant [RFC] Enabling the lit internal shell by
Default](https://discourse.llvm.org/t/rfc-enabling-the-lit-internal-shell-by-default/80179)
fixes: #106111


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

  Changed paths:
    M compiler-rt/test/fuzzer/focus-function.test

  Log Message:
  -----------
  [compiler-rt][test] Add REQUIRES: shell to focus-function.test with for-loop (#106150)

This patch adds `REQUIRES: shell` to the `focus-function.test` because
the lit internal shell does not support the for loop syntax. This will
make the test file unsupported when running llvm-lit with its internal
shell implementation, which is enabled by turning on the
`LIT_USE_INTERNAL_SHELL=1`.

fixes: #106111


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

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

  Log Message:
  -----------
  [RISCV] Merge duplicate switch cases. NFC


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-splat-bf16.ll

  Log Message:
  -----------
  [RISCV] Custom legalize vXbf16 BUILD_VECTOR without Zfbfmin.

By default, type legalization will try to promote the build_vector,
but that generic type legalizer doesn't support that. Bitcast to
vXi16 instead. Same as what we do for vXf16 without Zfhmin.

Fixes #100846.


  Commit: 1cea5c2138bef3d8fec75508df6dbb858e6e3560
      https://github.com/llvm/llvm-project/commit/1cea5c2138bef3d8fec75508df6dbb858e6e3560
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/test/Transforms/SCCP/pointer-nonnull.ll

  Log Message:
  -----------
  [SCCP] Propagate non-null pointers (#106090)

Add NotConstant(Null) roots for nonnull arguments and then propagate
them through nuw/inbounds GEPs.

Having this functionality in SCCP is useful because it allows reliably
eliminating null comparisons, independently of how deeply nested they
are in selects/phis. This handles cases that would hit a cutoff in
ValueTracking otherwise.

The implementation is something of a MVP, there are a number of obvious
extensions (e.g. allocas are also non-null).


  Commit: b45527da23ed64a503cc0fd18f63692eb3589748
      https://github.com/llvm/llvm-project/commit/b45527da23ed64a503cc0fd18f63692eb3589748
  Author: Da-Viper <57949090+Da-Viper at users.noreply.github.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/implicit-bool-conversion.rst
    M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.cpp

  Log Message:
  -----------
  [clang-tidy] Add UseUpperCaseLiteralSuffix option to readability-implicit-bool-conversion (#104882)

When readability-implicit-bool-conversion-check and
readability-uppercase-literal-suffix-check is enabled this will cause
you to apply a fix twice

from (!i) -> (i == 0u) to (i == 0U) twice instead will skip the middle
one

Adding this option allows this check to be in sync with readability-uppercase-literal-suffix, avoiding duplicate warnings.

Fixes #40544


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

  Changed paths:
    M llvm/test/CodeGen/X86/code-align-loops.ll

  Log Message:
  -----------
  pre-commit test for #106195 (#106196)


  Commit: 3d1c63ee2c2707be7150d105ead388cb2473a1cf
      https://github.com/llvm/llvm-project/commit/3d1c63ee2c2707be7150d105ead388cb2473a1cf
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

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

  Log Message:
  -----------
  [SLP][REVEC] Expand getelementptr into vector form. (#103704)


  Commit: cb9267f055156daabdbab87f4c1ca9064b0e7d7d
      https://github.com/llvm/llvm-project/commit/cb9267f055156daabdbab87f4c1ca9064b0e7d7d
  Author: Hugo Trachino <hugo.trachino at huawei.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/Pipelines/Passes.h
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
    M mlir/lib/Dialect/SparseTensor/Pipelines/SparseTensorPipelines.cpp

  Log Message:
  -----------
  [mlir][vector] Rename LowerVectorToLLVM to ConvertVectorToLLVM (NFC) (#104785)

There was some inconsistency with ConvertVectorToLLVM Pass builder,
files and option names.
This patch aims to move all occurences to ConvertVectorToLLVM.


  Commit: 73834f45d8049ca15261284c392211bf5f8e5313
      https://github.com/llvm/llvm-project/commit/73834f45d8049ca15261284c392211bf5f8e5313
  Author: Konrad Krawiec <konrad at krawiec.cc>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    A llvm/test/CodeGen/SPIRV/opencl/vload_halfn.ll

  Log Message:
  -----------
  [SPIR-V] Fix vload_half builtin argument count (#105585)

OpenCL's vload_half builtin expects two arguments, but the current
TableGen definition expects three.
This change fixes the mismatch and adds a test to check this.


  Commit: 0caa909a3c7cd8edaa69f952fc622cfc4e5974a0
      https://github.com/llvm/llvm-project/commit/0caa909a3c7cd8edaa69f952fc622cfc4e5974a0
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

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

  Log Message:
  -----------
  [Analysis][NFC] Use SmallVectorImpl consistently in ScalarEvolution (#105663)

Use SmallVectorImpl instead of SmallVector for function arguments
to give the caller greater flexibility in choice of initial size.


  Commit: 8f6864e1602705afbc3087bb3f07bb75252592a2
      https://github.com/llvm/llvm-project/commit/8f6864e1602705afbc3087bb3f07bb75252592a2
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 5f6172f0684b


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

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

  Log Message:
  -----------
  [gn build] Port 7bc9d95b7e5a


  Commit: 1deae203259aadf3014a675d35b968c213802a1c
      https://github.com/llvm/llvm-project/commit/1deae203259aadf3014a675d35b968c213802a1c
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/tools/lldb-dap/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 89c27d6b07dd


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

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

  Log Message:
  -----------
  [gn build] Port 8e901c255df4


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

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

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


  Commit: 4b7f07a0e3c7537aeef1774242d9328bee1adf1a
      https://github.com/llvm/llvm-project/commit/4b7f07a0e3c7537aeef1774242d9328bee1adf1a
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

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

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


  Commit: d4f97da13218bf5d21b3aebb358e8799b3cdae73
      https://github.com/llvm/llvm-project/commit/d4f97da13218bf5d21b3aebb358e8799b3cdae73
  Author: Jianjian Guan <jacquesguan at me.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M mlir/docs/Dialects/emitc.md
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/test/Conversion/ArithToEmitC/arith-to-emitc-unsupported.mlir
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-failed.mlir
    M mlir/test/Target/Cpp/const.mlir
    M mlir/test/Target/Cpp/types.mlir

  Log Message:
  -----------
  [mlir] Support emit fp16 and bf16 type to cpp (#105803)


  Commit: 0ea0ecd64f54e307670b860b309d2e869c1de3d1
      https://github.com/llvm/llvm-project/commit/0ea0ecd64f54e307670b860b309d2e869c1de3d1
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/test/Driver/mlir-debug-pass-pipeline.f90
    M flang/test/Driver/mlir-pass-pipeline.f90
    A flang/test/Driver/mmlir-opts-vs-opts.f90

  Log Message:
  -----------
  [flang][driver] apply mlir pass options immediately after lowering (#106099)

The verification pass is run right after lowering with its own pass
manager by flang driver, but the mlir command line options were not
applied to this pass manager.

This prevented options like `-mmlir
--mlir-pass-pipeline-crash-reproducer="crash.fir"` or `-mmlir
--mlir-print-ir-after-failure` to work when a verifier error was hit
right after lowering, while these options are useful to
investigate/reproduce internal errors.

Note that the change in the pipeline tests is not showing a new pass
being run: the pass was already run, but `-mmlir --mlir-pass-statistics`
was not applied when the initial verification pass was run.

Note that when we deal with compiler performance, we will probably want
to run the verification pass only once after the initial lowering (this
patch shows that it is called twice in a raw: once after the initial
lowering, once at the beginning of FIR to LLVM IR lowering).


  Commit: fac484ccc60d148b1893bfae843c6c416a57a870
      https://github.com/llvm/llvm-project/commit/fac484ccc60d148b1893bfae843c6c416a57a870
  Author: MarcoFalke <*~=`'#}+{/-|&$^_ at 721217.xyz>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M clang/tools/clang-format/clang-format-diff.py

  Log Message:
  -----------
  [clang-format-diff.py][NFC] Document _stderr as unused

The stderr in the result tuple is always None and unused in this
context.

Document it with an underscore.


  Commit: 1e153461c66bf517097168790cdcb9418af6b623
      https://github.com/llvm/llvm-project/commit/1e153461c66bf517097168790cdcb9418af6b623
  Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.h
    A llvm/test/CodeGen/Mips/fp-fcanonicalize.ll

  Log Message:
  -----------
  MIPS: Add fcanonicalize for pre-R6 (#104554)

MIPSr6 has max.s/max.d/min.s/min.d instructions, which can be used as
fcanonicalize.

For pre-R6, we have no instructions that can fcanonicalize an float, so
let's use `fadd Y,X,X` to quiet it if it is NaN.

IEEE754-2008 requires that the result of general-computational and
quiet-computational operation shouldn't be signal NaN.


  Commit: d07dc73bcfcd4026b956eb08b770ff0c47546b66
      https://github.com/llvm/llvm-project/commit/d07dc73bcfcd4026b956eb08b770ff0c47546b66
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/lib/Optimizer/CodeGen/Target.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.h
    M flang/lib/Optimizer/Transforms/LoopVersioning.cpp
    A flang/test/Integration/debug-cyclic-derived-type.f90
    A flang/test/Transforms/debug-derived-type-1.fir

  Log Message:
  -----------
  [flang][debug] Support derived types. (#99476)

This PR adds initial debug support for derived type. It handles
`RecordType` and generates appropriate `DICompositeTypeAttr`. The
`TypeInfoOp` is used to get information about the parent and location of
the derived type.

We use `getTypeSizeAndAlignment` to get the size and alignment of the
components of the derived types. This function needed a few changes to
be suitable to be used here:

1. The `getTypeSizeAndAlignment` errored out on unsupported type which
would not work with incremental way we are building debug support. A new
variant of this function has been that returns an std::optional. The original
function has been renamed to `getTypeSizeAndAlignmentOrCrash` as it
will call `TODO()` for unsupported types.

2. The Character type was returning size of just element and not the
whole string which has been fixed.

The testcase checks for offsets of the components which had to be
hardcoded in the test. So the testcase is currently enabled on x86_64.

With this PR in place, this is how the debugging of derived types look
like:

```
type :: t_date
    integer :: year, month, day
  end type

  type :: t_address
    integer :: house_number
  end type
  type, extends(t_address) :: t_person
    character(len=20) name
  end type
  type, extends(t_person)  :: t_employee
    type(t_date) :: hired_date
    real :: monthly_salary
  end type
  type(t_employee) :: employee

(gdb) p employee
$1 = ( t_person = ( t_address = ( house_number = 1 ), name = 'John', ' ' <repeats 16 times> ), hired_date = ( year = 2020, month = 1, day = 20 ), monthly_salary = 3.1400001 )
```


  Commit: fbef4c2d31d1e3d1e5f7e285ccccfdf397aeb161
      https://github.com/llvm/llvm-project/commit/fbef4c2d31d1e3d1e5f7e285ccccfdf397aeb161
  Author: Santhosh Kumar Ellendula <quic_sellendu at quicinc.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/instruction-breakpoint/TestDAP_instruction_breakpoint.py

  Log Message:
  -----------
  [lldb][lldb-dap] Fix for TestDAP_instruction_breakpoint.py test failure on windows. (#106200)

TestDAP_instruction_breakpoint.py failed on windows, so these tests were
skipped for windows build.

---------

Co-authored-by: Santhosh Kumar Ellendula <sellendu at hu-sellendu-hyd.qualcomm.com>
Co-authored-by: Santhosh Kumar Ellendula <sellendu at hu-sellendu-lv.qualcomm.com>


  Commit: ca3b9af98c0b119598bc26a9130f468b196d83b3
      https://github.com/llvm/llvm-project/commit/ca3b9af98c0b119598bc26a9130f468b196d83b3
  Author: Dmitrii Galimzianov <dmt021 at gmail.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp

  Log Message:
  -----------
  Add logs for SymbolFileDWARF::FindTypes (#106030)

`SymbolFileDWARF::FindTypes` was logged prior to [this
commit](https://github.com/llvm/llvm-project/commit/dd9587795811ba21e6ca6ad52b4531e17e6babd6#diff-edef3a65d5d569bbb75a4158d35b827aa5d42ee03ccd3b0c1d4f354afa12210c).
This is a helpful log message for checking for redundant type searches


  Commit: a2088a24dad31ebe44c93751db17307fdbe1f0e2
      https://github.com/llvm/llvm-project/commit/a2088a24dad31ebe44c93751db17307fdbe1f0e2
  Author: Kiran <kiran.sturt at arm.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M llvm/include/llvm/CodeGen/CallingConvLower.h
    M llvm/lib/CodeGen/CallingConvLower.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/test/CodeGen/ARM/2013-05-13-AAPCS-byval-padding.ll
    M llvm/test/CodeGen/ARM/2013-05-13-AAPCS-byval-padding2.ll
    M llvm/test/CodeGen/ARM/fp-arg-shuffle.ll
    M llvm/test/CodeGen/ARM/fp16-vector-argument.ll
    M llvm/test/CodeGen/ARM/struct_byval.ll
    M llvm/test/CodeGen/ARM/tail-call-float.ll

  Log Message:
  -----------
  [ARM] musttail fixes

Backend:
- Caller and callee arguments no longer have to match, just to take up the same space, as they can be changed before the call
- Allowed tail calls if callee and callee both (or neither) use sret, wheras before it would be dissalowed if either used sret
- Allowed tail calls if byval args are used
- Added debug trace for IsEligibleForTailCallOptimisation

Frontend (clang):
- Do not generate extra alloca if sret is used with musttail, as the space for the sret is allocated already

Change-Id: Ic7f246a7eca43c06874922d642d7dc44bdfc98ec


  Commit: 1a908c6be3317bbbac73e6a6fc52cabefbdebf7d
      https://github.com/llvm/llvm-project/commit/1a908c6be3317bbbac73e6a6fc52cabefbdebf7d
  Author: Kiran <kiran.sturt at arm.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M llvm/include/llvm/CodeGen/CallingConvLower.h
    M llvm/lib/CodeGen/CallingConvLower.cpp
    M llvm/test/CodeGen/ARM/tail-call-float.ll

  Log Message:
  -----------
  Seperate frontend changes, add debug directives, remove redundant stuff from tests


  Commit: ad468da03815478ceab7c553e651c1a39a479738
      https://github.com/llvm/llvm-project/commit/ad468da03815478ceab7c553e651c1a39a479738
  Author: Kiran <kiran.sturt at arm.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M llvm/include/llvm/CodeGen/CallingConvLower.h
    M llvm/lib/CodeGen/CallingConvLower.cpp
    M llvm/test/CodeGen/ARM/tail-call-float.ll

  Log Message:
  -----------
  Revert "Seperate frontend changes, add debug directives, remove redundant stuff from tests"

This reverts commit 1a908c6be3317bbbac73e6a6fc52cabefbdebf7d.


  Commit: bc4bedd5ed2c8d9f1a648c72d38e17361aff8a30
      https://github.com/llvm/llvm-project/commit/bc4bedd5ed2c8d9f1a648c72d38e17361aff8a30
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M mlir/include/mlir-c/Dialect/LLVM.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/lib/CAPI/Dialect/LLVM.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.h
    M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
    M mlir/lib/Target/LLVMIR/DebugTranslation.h
    M mlir/test/CAPI/llvm.c
    M mlir/test/Target/LLVMIR/Import/debug-info.ll
    M mlir/test/Target/LLVMIR/llvmir-debug.mlir

  Log Message:
  -----------
  [mlir][debug] Handle DIImportedEntity. (#103055)

The `DIImporedEntity` can be used to represent imported entities like
C++'s namespace with using directive or fortran's moudule with use
statement.

This PR adds `DIImportedEntityAttr` and 2-way translation from
`DIImportedEntity` to `DIImportedEntityAttr` and vice versa.

When an entity is imported in a function, the `retainedNodes` field of
the `DISubprogram` contains all the imported nodes. See the C++ code and
the LLVM IR below.

```
void test() {
    using namespace n1;
 ...
}

!2 = !DINamespace(name: "n1", scope: null)
!16 = distinct !DISubprogram(name: "test", ..., retainedNodes: !19) !19 = !{!20}
!20 = !DIImportedEntity(tag: DW_TAG_imported_module, scope: !16, entity: !2 ...)
```

This PR makes sure that the translation from mlir to `retainedNodes`
field happens correctly both ways.

To side step the cyclic dependency between `DISubprogramAttr` and `DIImportedEntityAttr`,
we have decided to not have `scope` field in the `DIImportedEntityAttr` and it is inferred
from the entity which hold the list of `DIImportedEntityAttr`. A `retainedNodes` field has been
added in the `DISubprogramAttr` which contains the list of `DIImportedEntityAttr` for that
function.

This PR currently does not handle entities imported in a global scope
but that should be easy to handle in a subsequent PR.


  Commit: c50d11e6d95a7d6b9bfe126ca35d4831928c3f69
      https://github.com/llvm/llvm-project/commit/c50d11e6d95a7d6b9bfe126ca35d4831928c3f69
  Author: Kiran <kiran.sturt at arm.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M llvm/include/llvm/CodeGen/CallingConvLower.h
    M llvm/lib/CodeGen/CallingConvLower.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/test/CodeGen/ARM/2013-05-13-AAPCS-byval-padding.ll
    M llvm/test/CodeGen/ARM/2013-05-13-AAPCS-byval-padding2.ll
    M llvm/test/CodeGen/ARM/fp-arg-shuffle.ll
    M llvm/test/CodeGen/ARM/fp16-vector-argument.ll
    M llvm/test/CodeGen/ARM/struct_byval.ll
    M llvm/test/CodeGen/ARM/tail-call-float.ll

  Log Message:
  -----------
  Revert "[ARM] musttail fixes"
committed by accident, see #104795

This reverts commit a2088a24dad31ebe44c93751db17307fdbe1f0e2.


  Commit: 7c188abb4fe28d9784b12125e6924df2ce7de078
      https://github.com/llvm/llvm-project/commit/7c188abb4fe28d9784b12125e6924df2ce7de078
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M flang/test/Lower/OpenMP/parallel-reduction-mixed.f90
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/openmp-reduction-array-sections.mlir

  Log Message:
  -----------
  [mlir][LLVMIR][OpenMP] Move reduction allocas before stores (#105683)

Delay implicit reduction var stores until after all allocas. This fixes
a couple of cases in existing unit tests.

Follow up to https://github.com/llvm/llvm-project/pull/102524


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

  Changed paths:
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/test/Analysis/LoopAccessAnalysis/depend_diff_types.ll
    M llvm/test/Analysis/LoopAccessAnalysis/non-constant-strides-backward.ll
    M llvm/test/Transforms/LoopVectorize/global_alias.ll

  Log Message:
  -----------
  Revert "[LAA] Remove loop-invariant check added in 234cc40adc61."

This reverts commit a80053322b765eec93951e21db490c55521da2d8.

The new asserts exposed an underlying issue where the expanded bounds
could wrap, causing the parts of the code to incorrectly determine that
accesses do not overlap.

Reproducer below based on @mstorsjo's test case.

opt -passes='print<access-info>'

target datalayout = "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64"

define i32 @j(ptr %P, i32 %x, i32 %y) {
entry:
  %gep.P.4 = getelementptr inbounds nuw i8, ptr %P, i32 4
  %gep.P.8 = getelementptr inbounds nuw i8, ptr %P, i32 8
  br label %loop

loop:
  %1 = phi i32 [ %x, %entry ], [ %sel, %loop.latch ]
  %iv = phi i32 [ %y, %entry ], [ %iv.next, %loop.latch ]
  %gep.iv = getelementptr inbounds i64, ptr %gep.P.8, i32 %iv
  %l = load i32, ptr %gep.iv, align 4
  %c.1 = icmp eq i32 %l, 3
  br i1 %c.1, label %loop.latch, label %if.then

if.then:                                          ; preds = %for.body
  store i64 0, ptr %gep.iv, align 4
  %l.2 = load i32, ptr %gep.P.4
  br label %loop.latch

loop.latch:
  %sel = phi i32 [ %l.2, %if.then ], [ %1, %loop ]
  %iv.next = add nsw i32 %iv, 1
  %c.2 = icmp slt i32 %iv.next, %sel
  br i1 %c.2, label %loop, label %exit

exit:
  %res = phi i32 [ %iv.next, %loop.latch ]
  ret i32 %res
}


  Commit: f8b446086f709181b913d0d0713ba99c3e8a2aa2
      https://github.com/llvm/llvm-project/commit/f8b446086f709181b913d0d0713ba99c3e8a2aa2
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/test/CodeGen/AArch64/sve-bitcast.ll

  Log Message:
  -----------
  [LLVM][AArch64] Improve big endian code generation for SVE BITCASTs. (#104769)

For the most part I've tried to maintain the use of ISD::BITCAST
wherever possible so as to keep access to more DAG combines.


  Commit: 063e0bd52ac7a25b5d7073a9904f8be6a38220b3
      https://github.com/llvm/llvm-project/commit/063e0bd52ac7a25b5d7073a9904f8be6a38220b3
  Author: Rolf Morel <rolf.morel at intel.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/DLTI/DLTI.h
    M mlir/include/mlir/Dialect/DLTI/TransformOps/DLTITransformOps.td
    M mlir/lib/Dialect/DLTI/DLTI.cpp
    M mlir/lib/Dialect/DLTI/TransformOps/DLTITransformOps.cpp
    M mlir/test/Dialect/DLTI/invalid.mlir
    M mlir/test/Dialect/DLTI/query.mlir
    M mlir/test/Dialect/DLTI/valid.mlir

  Log Message:
  -----------
  [MLIR][DLTI] Enable types as keys in DLTI-query utils (#105995)

Enable support for query functions - including transform.dlti.query - to
take types as keys. As the data layout specific attributes already
supported types as keys, this change enables querying such attributes in
the expected way.


  Commit: 6f62757e779492b288a98c7c2e27eba95a551e3b
      https://github.com/llvm/llvm-project/commit/6f62757e779492b288a98c7c2e27eba95a551e3b
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/LLVMIR/openmp-reduction.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] NFC: Update parallel workshare loop reduction tests (#105835)

This patch updates MLIR tests for `omp.parallel` + `omp.wsloop`
reductions to move the reduction clause into `omp.wsloop` rather than
the parent `omp.parallel`, as mandated by the spec for these cases and
also to match what Flang is already producing for `parallel do
reduction(...)` combined constructs.

>From the OpenMP Spec version 5.2, section 17.2:

> The effect of the reduction clause is as if it is applied to all leaf
constructs that permit the clause, except for the following constructs:
> - The `parallel` construct, when combined with the `sections`,
worksharing-loop, `loop`, or `taskloop` construct; [...]


  Commit: 4f33e7c683104ea72e013d4ddd104b711a25d620
      https://github.com/llvm/llvm-project/commit/4f33e7c683104ea72e013d4ddd104b711a25d620
  Author: Arseniy Zaostrovnykh <necto.ne at gmail.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
    M clang/test/Analysis/nullability.c
    M clang/test/Analysis/nullability.mm

  Log Message:
  -----------
  [analyzer] Report violations of the "returns_nonnull" attribute (#106048)

Make sure code respects the GNU-extension `__attribute__((returns_nonnull))`.

Extend the NullabilityChecker to check that a function returns_nonnull
does not return a nullptr.

This commit also reverts an old hack introduced by
49bd58f1ebe28d97e4949e9c757bc5dfd8b2d72f
because it is no longer needed

CPP-4741


  Commit: b1b24d751776d5fd2218a5cb43a8d103bf59fa32
      https://github.com/llvm/llvm-project/commit/b1b24d751776d5fd2218a5cb43a8d103bf59fa32
  Author: Daniel Grumberg <dgrumberg at apple.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M clang/include/clang/ExtractAPI/DeclarationFragments.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/lib/ExtractAPI/DeclarationFragments.cpp
    M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    M clang/test/ExtractAPI/bool.c
    M clang/test/ExtractAPI/emit-symbol-graph/multi_file.c
    M clang/test/ExtractAPI/emit-symbol-graph/single_file.c
    M clang/test/ExtractAPI/macros.c
    A clang/test/ExtractAPI/submodule-macro.m

  Log Message:
  -----------
  [clang][ExtractAPI] Fix quirks in interaction with submodules (#105868)

Extension SGFs require the module system to be enabled in order to discover which module defines the extended external type.
This patch ensures the following:
- Associate symbols with their top level module name, and that only top level modules are considered as modules for emitting extension SGFs.
- Ensure we don't drop macro definitions that came from a submodule. To this end look at all defined macros in `PPCalbacks::EndOfMainFile` instead of relying on `PPCallbacks::MacroDefined` being called to detect a macro definition.


  Commit: 44d527c8d78fc612831083a8b5b108b216ff63a3
      https://github.com/llvm/llvm-project/commit/44d527c8d78fc612831083a8b5b108b216ff63a3
  Author: Hari Limaye <hari.limaye at arm.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    A llvm/test/Transforms/ArgumentPromotion/actual-arguments.ll

  Log Message:
  -----------
  NFC: precommit test for [ArgPromotion] Perform alias analysis on actual arguments of Calls


  Commit: 974d8f6c0c49d279d8a5880ec3dd1fd11589cca0
      https://github.com/llvm/llvm-project/commit/974d8f6c0c49d279d8a5880ec3dd1fd11589cca0
  Author: Piotr Fusik <p.fusik at samsung.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/docs/WritingAnLLVMPass.rst

  Log Message:
  -----------
  [docs] Fix a documentation link (#105795)


  Commit: 9b4a8f44edf1471f23d6e0e68bef8a0ea0b7300a
      https://github.com/llvm/llvm-project/commit/9b4a8f44edf1471f23d6e0e68bef8a0ea0b7300a
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

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

  Log Message:
  -----------
  [SLP][NFC]Improve auto types, NFC.


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

  Changed paths:
    M llvm/test/Transforms/SCCP/pointer-nonnull.ll

  Log Message:
  -----------
  [SCCP] Add tests for more non-null roots (NFC)


  Commit: 3d2fd31c8f362b1054985197a65194fcbbca57bb
      https://github.com/llvm/llvm-project/commit/3d2fd31c8f362b1054985197a65194fcbbca57bb
  Author: Hari Limaye <hari.limaye at arm.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuilder.h
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/test/CodeGen/2005-01-02-ConstantInits.c
    M clang/test/CodeGen/PowerPC/ppc-emmintrin.c
    M clang/test/CodeGen/PowerPC/ppc-xmmintrin.c
    M clang/test/CodeGen/attr-counted-by.c
    M clang/test/CodeGen/catch-nullptr-and-nonzero-offset-when-nullptr-is-defined.c
    M clang/test/CodeGen/catch-nullptr-and-nonzero-offset.c
    M clang/test/CodeGen/catch-pointer-overflow-volatile.c
    M clang/test/CodeGen/catch-pointer-overflow.c
    M clang/test/CodeGen/ext-int.c
    M clang/test/CodeGen/hexagon-brev-ld-ptr-incdec.c
    M clang/test/CodeGen/integer-overflow.c
    M clang/test/CodeGen/ms-intrinsics.c
    M clang/test/CodeGen/ubsan-pointer-overflow.m
    M clang/test/CodeGen/vla.c
    M clang/test/CodeGenCXX/attr-likelihood-iteration-stmt.cpp
    M clang/test/CodeGenCXX/for-range.cpp
    M clang/test/CodeGenCXX/pr45964-decomp-transform.cpp
    M clang/test/CodeGenCXX/vla.cpp
    M clang/test/CodeGenHLSL/buffer-array-operator.hlsl
    M clang/test/CodeGenSYCL/address-space-deduction.cpp
    M clang/test/Headers/__clang_hip_math.hip
    M clang/test/OpenMP/bug60602.cpp
    M clang/test/OpenMP/declare_mapper_codegen.cpp
    M clang/test/OpenMP/distribute_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/distribute_simd_codegen.cpp
    M clang/test/OpenMP/for_linear_codegen.cpp
    M clang/test/OpenMP/for_reduction_codegen.cpp
    M clang/test/OpenMP/for_reduction_codegen_UDR.cpp
    M clang/test/OpenMP/for_reduction_task_codegen.cpp
    M clang/test/OpenMP/for_scan_codegen.cpp
    M clang/test/OpenMP/for_simd_scan_codegen.cpp
    M clang/test/OpenMP/irbuilder_for_iterator.cpp
    M clang/test/OpenMP/irbuilder_for_rangefor.cpp
    M clang/test/OpenMP/irbuilder_for_unsigned.c
    M clang/test/OpenMP/irbuilder_for_unsigned_auto.c
    M clang/test/OpenMP/irbuilder_for_unsigned_down.c
    M clang/test/OpenMP/irbuilder_for_unsigned_dynamic.c
    M clang/test/OpenMP/irbuilder_for_unsigned_dynamic_chunked.c
    M clang/test/OpenMP/irbuilder_for_unsigned_runtime.c
    M clang/test/OpenMP/irbuilder_for_unsigned_static_chunked.c
    M clang/test/OpenMP/map_struct_ordering.cpp
    M clang/test/OpenMP/master_taskloop_in_reduction_codegen.cpp
    M clang/test/OpenMP/master_taskloop_reduction_codegen.cpp
    M clang/test/OpenMP/master_taskloop_simd_in_reduction_codegen.cpp
    M clang/test/OpenMP/master_taskloop_simd_reduction_codegen.cpp
    M clang/test/OpenMP/ordered_codegen.cpp
    M clang/test/OpenMP/parallel_for_codegen.cpp
    M clang/test/OpenMP/parallel_for_linear_codegen.cpp
    M clang/test/OpenMP/parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_for_scan_codegen.cpp
    M clang/test/OpenMP/parallel_for_simd_scan_codegen.cpp
    M clang/test/OpenMP/parallel_master_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_reduction_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_simd_reduction_codegen.cpp
    M clang/test/OpenMP/parallel_reduction_codegen.cpp
    M clang/test/OpenMP/parallel_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_sections_reduction_task_codegen.cpp
    M clang/test/OpenMP/reduction_implicit_map.cpp
    M clang/test/OpenMP/sections_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_data_use_device_addr_codegen.cpp
    M clang/test/OpenMP/target_data_use_device_ptr_codegen.cpp
    M clang/test/OpenMP/target_has_device_addr_codegen.cpp
    M clang/test/OpenMP/target_in_reduction_codegen.cpp
    M clang/test/OpenMP/target_is_device_ptr_codegen.cpp
    M clang/test/OpenMP/target_map_both_pointer_pointee_codegen.cpp
    M clang/test/OpenMP/target_map_codegen_01.cpp
    M clang/test/OpenMP/target_map_codegen_21.cpp
    M clang/test/OpenMP/target_map_codegen_27.cpp
    M clang/test/OpenMP/target_map_codegen_28.cpp
    M clang/test/OpenMP/target_map_codegen_29.cpp
    M clang/test/OpenMP/target_map_deref_array_codegen.cpp
    M clang/test/OpenMP/target_map_member_expr_array_section_codegen.cpp
    M clang/test/OpenMP/target_map_member_expr_codegen.cpp
    M clang/test/OpenMP/target_map_nest_defalut_mapper_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_parallel_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_task_affinity_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_update_codegen.cpp
    M clang/test/OpenMP/task_codegen.c
    M clang/test/OpenMP/task_codegen.cpp
    M clang/test/OpenMP/task_in_reduction_codegen.cpp
    M clang/test/OpenMP/taskgroup_task_reduction_codegen.cpp
    M clang/test/OpenMP/taskloop_in_reduction_codegen.cpp
    M clang/test/OpenMP/taskloop_reduction_codegen.cpp
    M clang/test/OpenMP/taskloop_simd_in_reduction_codegen.cpp
    M clang/test/OpenMP/taskloop_simd_reduction_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_reduction_task_codegen.cpp

  Log Message:
  -----------
  [clang] Add nuw attribute to GEPs (#105496)

Add nuw attribute to inbounds GEPs where the expression used to form the
GEP is an addition of unsigned indices.


  Commit: 78505ade2c2e7d4d180e110442e0b074217877c8
      https://github.com/llvm/llvm-project/commit/78505ade2c2e7d4d180e110442e0b074217877c8
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/R600EmitClauseMarkers.cpp
    M llvm/lib/Target/AMDGPU/R600MachineScheduler.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp

  Log Message:
  -----------
  [AMDGPU] Use range-based for loops (NFC) (#106184)


  Commit: 71eebe9daaf5d2068606640a6040775020bc36e9
      https://github.com/llvm/llvm-project/commit/71eebe9daaf5d2068606640a6040775020bc36e9
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/lib/MC/MCParser/AsmParser.cpp
    M llvm/lib/MC/MCParser/MasmParser.cpp
    M llvm/lib/Object/COFFObjectFile.cpp
    M llvm/lib/Object/MachOObjectFile.cpp
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp

  Log Message:
  -----------
  [llvm] Prefer StringRef::substr to StringRef::slice (NFC) (#106190)

S.substr(N, M) is simpler than S.slice(N, N + M).  Also, substr is
probably better recognizable than slice thanks to
std::string_view::substr.


  Commit: 721fdf1c9a73269280a504cbba847f4979512b66
      https://github.com/llvm/llvm-project/commit/721fdf1c9a73269280a504cbba847f4979512b66
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/LoopUnrollAnalyzer.h
    M llvm/lib/Analysis/LoopUnrollAnalyzer.cpp

  Log Message:
  -----------
  [LoopUnrollAnalyzer] Store SimplifiedAddress offset as APInt (NFC)


  Commit: 32503050066ed307e6859b3c2ee6fbfa6327ca8b
      https://github.com/llvm/llvm-project/commit/32503050066ed307e6859b3c2ee6fbfa6327ca8b
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

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

  Log Message:
  -----------
  [LoopUnrollAnalyzer] Use computeConstantDifference()

This is faster than checking for a SCEVConstant getMinusSCEV()
result. The results should be the same for non-degenerate cases.


  Commit: 657f26f038a733769909e0db44e234e9369294b6
      https://github.com/llvm/llvm-project/commit/657f26f038a733769909e0db44e234e9369294b6
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/test/Transforms/SCCP/pointer-nonnull.ll

  Log Message:
  -----------
  [SCCP] Add more non-null roots

Also consider allocas non-null (subject to the usual caveats),
and consider nonnull/dereferenceable metadata on calls.


  Commit: c992690179eb5de6efe47d5c8f3a23f2302723f2
      https://github.com/llvm/llvm-project/commit/c992690179eb5de6efe47d5c8f3a23f2302723f2
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/FunctionPropertiesAnalysis.h
    M llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp
    M llvm/lib/Analysis/MLInlineAdvisor.cpp

  Log Message:
  -----------
  Revert "[nfc][mlgo] Incrementally update DominatorTreeAnalysis in FunctionPropertiesAnalysis (#104867)"

This seems to cause asserts in our builds:

  llvm/include/llvm/Support/GenericDomTreeConstruction.h:927:
  static void llvm::DomTreeBuilder::SemiNCAInfo<llvm::DominatorTreeBase<BasicBlock, false>>::DeleteEdge(DomTreeT &, const BatchUpdatePtr, const NodePtr, const NodePtr) [DomTreeT = llvm::DominatorTreeBase<BasicBlock, false>]:
  Assertion `!IsSuccessor(To, From) && "Deleted edge still exists in the CFG!"' failed.

and

  llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp:390:
  DominatorTree &llvm::FunctionPropertiesUpdater::getUpdatedDominatorTree(FunctionAnalysisManager &) const:
  Assertion `DT.getNode(BB)' failed.

See comment on the PR.

> We need the dominator tree analysis for loop info analysis, which we need to get features like most nested loop and number of top level loops. Invalidating and recomputing these from scratch after each successful inlining can sometimes lead to lengthy compile times. We don't need to recompute from scratch, though, since we have some boundary information about where the changes to the CFG happen; moreover, for dom tree, the API supports incrementally updating the analysis result.
>
> This change addresses the dom tree part. The loop info is still recomputed from scratch. This does reduce the compile time quite significantly already, though (~5x in a specific case)
>
> The loop info change might be more involved and would follow in a subsequent PR.

This reverts commit a2a5508bdae7d115b6c3ace461beb7a987a44407 and the
follow-up commit cdd11d694a406a98a16d6265168ee2fbe1b6a87c.


  Commit: 556e9d0386a71ab2b59f94740909c6c3b6ac5f06
      https://github.com/llvm/llvm-project/commit/556e9d0386a71ab2b59f94740909c6c3b6ac5f06
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M compiler-rt/lib/rtsan/rtsan_interceptors.cpp
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors.cpp

  Log Message:
  -----------
  [rtsan][compiler-rt] Add read, write, pread, pwrite, readv, and writev interceptors (#106161)


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

  Changed paths:
    M lldb/include/lldb/API/SBMemoryRegionInfo.h
    M lldb/include/lldb/API/SBSaveCoreOptions.h
    M lldb/include/lldb/Symbol/SaveCoreOptions.h
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/Utility/RangeMap.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/API/SBSaveCoreOptions.cpp
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.h
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.h
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
    M lldb/source/Symbol/SaveCoreOptions.cpp
    M lldb/source/Target/Process.cpp
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py

  Log Message:
  -----------
  [LLDB][SBSaveCore] Add selectable memory regions to SBSaveCore (#105442)

This patch adds the option to specify specific memory ranges to be
included in a given core file. The current implementation lets user
specified ranges either be in addition to a certain save style, or
independent of them via the newly added custom enum.

To achieve being inclusive of save style, I've moved from a std::vector
of ranges to a RangeDataVector, and to join overlapping ranges to
prevent duplication of memory ranges in the core file.

As a non function bonus, when SBSavecore was initially created, the
header was included in the lldb-private interfaces, and I've fixed that
and moved it the forward declare as an oversight. CC @bulbazord in case
we need to include that into swift.


  Commit: 18db6813fe96616728f7e7f5921676c06a2764de
      https://github.com/llvm/llvm-project/commit/18db6813fe96616728f7e7f5921676c06a2764de
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

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

  Log Message:
  -----------
  [LoopUnrollAnalyzer] Fix icmp simplification

Fix a bug I introduced in 721fdf1c9a73269280a504cbba847f4979512b66.


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

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

  Log Message:
  -----------
  [mlir][Transforms][NFC] Dialect conversion: Remove redundant `ReplaceBlockArgRewrite` (#105963)

There was a redundant `appendRewrite<ReplaceBlockArgRewrite>(block,
origArg);` in `ConversionPatternRewriterImpl::applySignatureConversion`
that had no effect.


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

  Changed paths:
    M libcxx/include/__algorithm/comp.h
    M libcxx/include/__algorithm/ranges_minmax.h
    M libcxx/include/__algorithm/sort.h
    M libcxx/include/__functional/operations.h
    M libcxx/include/__functional/ranges_operations.h
    M libcxx/include/__type_traits/desugars_to.h
    M libcxx/include/__type_traits/is_trivially_copyable.h
    M libcxx/src/algorithm.cpp

  Log Message:
  -----------
  [libc++] Simplify the implementation of std::sort a bit (#104902)

This does a few things to canonicalize the library a bit. Specifically
- use `__desugars_to_v` instead of the custom `__is_simple_comparator`
- make `__use_branchless_sort` an inline variable
- remove the `_maybe_branchless` versions of the `__sortN` functions and
overload based on whether we can do branchless sorting instead.


  Commit: fd36a7b9443921a4aa571549543244c5f1c9b6f8
      https://github.com/llvm/llvm-project/commit/fd36a7b9443921a4aa571549543244c5f1c9b6f8
  Author: Fabian Mora <fmora.dev at gmail.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/IR/CompilationAttrInterfaces.td
    M mlir/lib/Dialect/GPU/Transforms/ModuleToBinary.cpp
    M mlir/lib/Target/LLVM/NVVM/Target.cpp
    M mlir/lib/Target/LLVM/ROCDL/Target.cpp
    M mlir/lib/Target/SPIRV/Target.cpp
    M mlir/unittests/Target/LLVM/SerializeToLLVMBitcode.cpp

  Log Message:
  -----------
  [mlir][gpu] Pass GPU module to `TargetAttrInterface::createObject`. (#94910)

This patch adds an argument to `gpu::TargetAttrInterface::createObject`
to pass the GPU module. This is useful as `gpu::ObjectAttr` contains a
property dict for metadata, hence the module can be used for extracting
things like the symbol table and adding it to the property dict.

---------

Co-authored-by: Oleksandr "Alex" Zinenko <ftynse at gmail.com>


  Commit: 9b408961ebf2a5458e5f1b1ffa9306224dc4d9a6
      https://github.com/llvm/llvm-project/commit/9b408961ebf2a5458e5f1b1ffa9306224dc4d9a6
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

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

  Log Message:
  -----------
  [SLP][NFC]Use has_single_bit instead of isPowerOf2 functions, NFC.


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

  Changed paths:
    M llvm/lib/Target/X86/X86SchedIceLake.td
    M llvm/lib/Target/X86/X86SchedSkylakeClient.td
    M llvm/lib/Target/X86/X86SchedSkylakeServer.td
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx2.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-avx2.s
    M llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx2.s

  Log Message:
  -----------
  [X86] Fix Skylake/Icelake uops for masked stored

Matches uops.info + Agner


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

  Changed paths:
    M llvm/lib/Target/X86/X86SchedSkylakeClient.td
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-sse1.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-sse2.s

  Log Message:
  -----------
  [X86] Fix SkylakeClient ports for int-to-double conversions

These are performed on SKLPort01 (+ SKLPort5/SKLPort23 for rr/rm shuffles/loads)

Also, cleanup some MMX CVT overrides that match the SSE equivalents.

Matches uops.info + Agner


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

  Changed paths:
    M llvm/lib/Target/X86/X86SchedIceLake.td
    M llvm/lib/Target/X86/X86SchedSkylakeClient.td
    M llvm/lib/Target/X86/X86SchedSkylakeServer.td
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-mmx.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-mmx.s
    M llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-mmx.s

  Log Message:
  -----------
  [X86] Fix Skylake/Icelake port usage for MMX PACK instructions

Matches uops.info + Agner


  Commit: 6e44cb3ccb822085cd2f35c63daa60395dda26f2
      https://github.com/llvm/llvm-project/commit/6e44cb3ccb822085cd2f35c63daa60395dda26f2
  Author: Arseniy Zaostrovnykh <necto.ne at gmail.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

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

  Log Message:
  -----------
  [analyzer][NFC] Remove a non-actionable dump (#106232)

This dump, if it is ever executed, is not actionable by the user and
might produce unwanted noise in the stderr.

The original intention behind this dump, to provide maximum information
in an unexpected situation, does not outweigh the potential annoyance
caused to users who might not even realize that they witnessed an
unexpected situation.


  Commit: 0359b9a2306566a872cede1fcdaa4edc34e9398e
      https://github.com/llvm/llvm-project/commit/0359b9a2306566a872cede1fcdaa4edc34e9398e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionImport.cpp

  Log Message:
  -----------
  [LTO] Introduce a helper function collectImportStatistics (NFC) (#106179)

This patch introduces a helper function collectImportStatistics.  The
new function computes statistics of imports for
ComputeCrossModuleImport and dumpImportListForModule with no
functional change.

The background is as follows.  I'm planning to reduce the memory
footprint of ThinLTO indexing by changing ImportMapTy, the data
structure used for an import list.  The new list will be a hash set of
tuples (SourceModule, GUID, ImportType) represented in a space
efficient manner.  That means that obtaining statistics like the
number of definitions per source module requires us to go through the
entire import list (for a given destination module).

Introducing a helper function now makes the callers more independent
of the underlying data structures used in ImportMapT.


  Commit: ae58cc0e9993db13e5256c21ae5e971b2974968f
      https://github.com/llvm/llvm-project/commit/ae58cc0e9993db13e5256c21ae5e971b2974968f
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

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

  Log Message:
  -----------
  IVDescriptors: clarify getSCEV use in a function (NFC) (#106222)

getSCEV will assert unless the operand is SCEVable. Replace an instance
of the implementation of ScalarEvolution::isSCEVable (which checks that
the operand is either integer or pointer type) with a call to the
function, to make it clear that the subsequent use of getSCEV will not
fail.


  Commit: d58bd21150914b4a2304c24b04a714bfb251c594
      https://github.com/llvm/llvm-project/commit/d58bd21150914b4a2304c24b04a714bfb251c594
  Author: chuongg3 <chuong.goh at arm.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/GIMatchTableExecutor.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/select-load.mir
    M llvm/test/CodeGen/AArch64/arm64-indexed-vector-ldst.ll
    M llvm/test/CodeGen/AArch64/arm64-ld1.ll

  Log Message:
  -----------
  [GlobalISel] Look between instructions to be matched (#101675)

When a pattern is matched in TableGen, a check is run called
isObviouslySafeToFold(). One of the condition that it checks for is
whether the instructions that are being matched are consecutive, so the
instruction's insertion point does not change.

This patch allows the movement of the insertion point of a load
instruction if none of the intervening instructions are stores or have
side-effects.


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

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

  Log Message:
  -----------
  [LiveDebugVariables] Use VirtRegMap::hasPhys. NFC (#106186)

Use hasPhys instead of MCRegister::isPhysicalRegister.

I think the MCRegister returned from getPhys can only contain a physical
register or 0. hasPhys checks that the register returned from getPhys is non-zero.
So I think they are equivalent in this usage.


  Commit: d0fe52d95194db09b3486378eae1b5ca5d0a286a
      https://github.com/llvm/llvm-project/commit/d0fe52d95194db09b3486378eae1b5ca5d0a286a
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/div-rem-by-constant-64.ll
    M llvm/test/CodeGen/AMDGPU/mul_int24.ll

  Log Message:
  -----------
  [AMDGPU] Fix sign confusion in performMulLoHiCombine (#105831)

SMUL_LOHI and UMUL_LOHI are different operations because the high part
of the result is different, so it is not OK to optimize the signed
version to MUL_U24/MULHI_U24 or the unsigned version to
MUL_I24/MULHI_I24.


  Commit: ef5ba2ede79f759ff8eaad222dca36aa5f1871c3
      https://github.com/llvm/llvm-project/commit/ef5ba2ede79f759ff8eaad222dca36aa5f1871c3
  Author: Nabeel Omer <nabeel.omer at sony.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/lib/IR/ConstantsContext.h

  Log Message:
  -----------
  [NFC] Reserve the number of operands before push_back (#106234)

This reduces the number of allocations inside the loop.

Partially addresses #105836


  Commit: d0a6434e86880f55e225ffa2e39c77f10aea1604
      https://github.com/llvm/llvm-project/commit/d0a6434e86880f55e225ffa2e39c77f10aea1604
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

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

  Log Message:
  -----------
  [SLP] Reduce scope of variable using if clause [NFC]

This particular variable name is shadowed by another lower in the
function, so reducing it's scope to it's single use removes the
shadowing and makes the code much less error prone.


  Commit: 2bf2468553f69c72680d138b91046d4c00d2c7a6
      https://github.com/llvm/llvm-project/commit/2bf2468553f69c72680d138b91046d4c00d2c7a6
  Author: Angel Zhang <angel.zhang at amd.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
    M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
    A mlir/test/Conversion/ConvertToSPIRV/convert-gpu-modules.mlir
    M mlir/tools/mlir-vulkan-runner/mlir-vulkan-runner.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][spirv] Integrate `convert-to-spirv` into `mlir-vulkan-runner` (#106082)

**Description**
This PR adds a new option for `convert-to-spirv` pass to clone and
convert only GPU kernel modules for integration testing. The reason for
using pass options instead of two separate passes is that they both
consist of `memref` types conversion and individual dialect patterns,
except they run on different scopes. The PR also replaces the
`gpu-to-spirv` pass with the `convert-to-spirv` pass (with the new
option) in `mlir-vulkan-runner`.

**Future Plan**
Use nesting pass pipelines in `mlir-vulkan-runner` instead of adding
this option.

---------

Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>


  Commit: d880f5a4c9bb0b11038ad94b333b46e7a24caa6f
      https://github.com/llvm/llvm-project/commit/d880f5a4c9bb0b11038ad94b333b46e7a24caa6f
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll

  Log Message:
  -----------
  [AMDGPU][Attributor] Remove uniformity check in the indirect call specialization callback (#106177)

This patch removes the conservative uniformity check in the indirect
call
specialization callback, as whether the function pointer is uniform
doesn't
matter too much. Instead, we add an argument to control specialization.


  Commit: f3152d6645d86cf3f38342337d15cfeed2d0cd8a
      https://github.com/llvm/llvm-project/commit/f3152d6645d86cf3f38342337d15cfeed2d0cd8a
  Author: Alex Richardson <alexrichardson at google.com>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/implicit-bool-conversion.rst
    M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.cpp
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/ExtractAPI/DeclarationFragments.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/lib/CodeGen/CGBuilder.h
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/ExtractAPI/DeclarationFragments.cpp
    M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
    M clang/test/Analysis/nullability.c
    M clang/test/Analysis/nullability.mm
    M clang/test/CodeGen/2005-01-02-ConstantInits.c
    M clang/test/CodeGen/PowerPC/ppc-emmintrin.c
    M clang/test/CodeGen/PowerPC/ppc-xmmintrin.c
    M clang/test/CodeGen/attr-counted-by.c
    M clang/test/CodeGen/catch-nullptr-and-nonzero-offset-when-nullptr-is-defined.c
    M clang/test/CodeGen/catch-nullptr-and-nonzero-offset.c
    M clang/test/CodeGen/catch-pointer-overflow-volatile.c
    M clang/test/CodeGen/catch-pointer-overflow.c
    M clang/test/CodeGen/ext-int.c
    M clang/test/CodeGen/hexagon-brev-ld-ptr-incdec.c
    M clang/test/CodeGen/integer-overflow.c
    M clang/test/CodeGen/ms-intrinsics.c
    M clang/test/CodeGen/ubsan-pointer-overflow.m
    M clang/test/CodeGen/vla.c
    M clang/test/CodeGenCXX/attr-likelihood-iteration-stmt.cpp
    M clang/test/CodeGenCXX/for-range.cpp
    M clang/test/CodeGenCXX/pr45964-decomp-transform.cpp
    M clang/test/CodeGenCXX/vla.cpp
    M clang/test/CodeGenHLSL/buffer-array-operator.hlsl
    M clang/test/CodeGenSYCL/address-space-deduction.cpp
    M clang/test/Driver/offload-packager.c
    M clang/test/ExtractAPI/bool.c
    M clang/test/ExtractAPI/emit-symbol-graph/multi_file.c
    M clang/test/ExtractAPI/emit-symbol-graph/single_file.c
    M clang/test/ExtractAPI/macros.c
    A clang/test/ExtractAPI/submodule-macro.m
    M clang/test/Headers/__clang_hip_math.hip
    M clang/test/OpenMP/bug60602.cpp
    M clang/test/OpenMP/declare_mapper_codegen.cpp
    M clang/test/OpenMP/distribute_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/distribute_simd_codegen.cpp
    M clang/test/OpenMP/for_linear_codegen.cpp
    M clang/test/OpenMP/for_reduction_codegen.cpp
    M clang/test/OpenMP/for_reduction_codegen_UDR.cpp
    M clang/test/OpenMP/for_reduction_task_codegen.cpp
    M clang/test/OpenMP/for_scan_codegen.cpp
    M clang/test/OpenMP/for_simd_scan_codegen.cpp
    M clang/test/OpenMP/irbuilder_for_iterator.cpp
    M clang/test/OpenMP/irbuilder_for_rangefor.cpp
    M clang/test/OpenMP/irbuilder_for_unsigned.c
    M clang/test/OpenMP/irbuilder_for_unsigned_auto.c
    M clang/test/OpenMP/irbuilder_for_unsigned_down.c
    M clang/test/OpenMP/irbuilder_for_unsigned_dynamic.c
    M clang/test/OpenMP/irbuilder_for_unsigned_dynamic_chunked.c
    M clang/test/OpenMP/irbuilder_for_unsigned_runtime.c
    M clang/test/OpenMP/irbuilder_for_unsigned_static_chunked.c
    M clang/test/OpenMP/map_struct_ordering.cpp
    M clang/test/OpenMP/master_taskloop_in_reduction_codegen.cpp
    M clang/test/OpenMP/master_taskloop_reduction_codegen.cpp
    M clang/test/OpenMP/master_taskloop_simd_in_reduction_codegen.cpp
    M clang/test/OpenMP/master_taskloop_simd_reduction_codegen.cpp
    M clang/test/OpenMP/ordered_codegen.cpp
    M clang/test/OpenMP/parallel_for_codegen.cpp
    M clang/test/OpenMP/parallel_for_linear_codegen.cpp
    M clang/test/OpenMP/parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_for_scan_codegen.cpp
    M clang/test/OpenMP/parallel_for_simd_scan_codegen.cpp
    M clang/test/OpenMP/parallel_master_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_reduction_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_simd_reduction_codegen.cpp
    M clang/test/OpenMP/parallel_reduction_codegen.cpp
    M clang/test/OpenMP/parallel_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_sections_reduction_task_codegen.cpp
    M clang/test/OpenMP/reduction_implicit_map.cpp
    M clang/test/OpenMP/sections_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_data_use_device_addr_codegen.cpp
    M clang/test/OpenMP/target_data_use_device_ptr_codegen.cpp
    M clang/test/OpenMP/target_has_device_addr_codegen.cpp
    M clang/test/OpenMP/target_in_reduction_codegen.cpp
    M clang/test/OpenMP/target_is_device_ptr_codegen.cpp
    M clang/test/OpenMP/target_map_both_pointer_pointee_codegen.cpp
    M clang/test/OpenMP/target_map_codegen_01.cpp
    M clang/test/OpenMP/target_map_codegen_21.cpp
    M clang/test/OpenMP/target_map_codegen_27.cpp
    M clang/test/OpenMP/target_map_codegen_28.cpp
    M clang/test/OpenMP/target_map_codegen_29.cpp
    M clang/test/OpenMP/target_map_deref_array_codegen.cpp
    M clang/test/OpenMP/target_map_member_expr_array_section_codegen.cpp
    M clang/test/OpenMP/target_map_member_expr_codegen.cpp
    M clang/test/OpenMP/target_map_nest_defalut_mapper_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_parallel_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_task_affinity_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_update_codegen.cpp
    M clang/test/OpenMP/task_codegen.c
    M clang/test/OpenMP/task_codegen.cpp
    M clang/test/OpenMP/task_in_reduction_codegen.cpp
    M clang/test/OpenMP/taskgroup_task_reduction_codegen.cpp
    M clang/test/OpenMP/taskloop_in_reduction_codegen.cpp
    M clang/test/OpenMP/taskloop_reduction_codegen.cpp
    M clang/test/OpenMP/taskloop_simd_in_reduction_codegen.cpp
    M clang/test/OpenMP/taskloop_simd_reduction_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_reduction_task_codegen.cpp
    M clang/test/SemaTemplate/alias-template-with-lambdas.cpp
    M clang/tools/clang-format/clang-format-diff.py
    M compiler-rt/lib/rtsan/rtsan_interceptors.cpp
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/test/fuzzer/focus-function.test
    M compiler-rt/test/fuzzer/out-of-process-fuzz.test
    M compiler-rt/test/hwasan/TestCases/hwasan_symbolize.cpp
    M compiler-rt/test/profile/Linux/counter_promo_for.c
    M compiler-rt/test/profile/Linux/counter_promo_nest.c
    M compiler-rt/test/profile/Linux/counter_promo_while.c
    M compiler-rt/test/profile/Linux/instrprof-debug-info-correlate.c
    M compiler-rt/test/ubsan/TestCases/TypeCheck/vptr.cpp
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/Optimizer/CodeGen/Target.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.h
    M flang/lib/Optimizer/Transforms/LoopVersioning.cpp
    M flang/test/Driver/mlir-debug-pass-pipeline.f90
    M flang/test/Driver/mlir-pass-pipeline.f90
    A flang/test/Driver/mmlir-opts-vs-opts.f90
    A flang/test/Integration/debug-cyclic-derived-type.f90
    M flang/test/Lower/OpenMP/parallel-reduction-mixed.f90
    A flang/test/Transforms/debug-derived-type-1.fir
    M libcxx/include/__algorithm/comp.h
    M libcxx/include/__algorithm/ranges_minmax.h
    M libcxx/include/__algorithm/sort.h
    M libcxx/include/__functional/operations.h
    M libcxx/include/__functional/ranges_operations.h
    M libcxx/include/__type_traits/desugars_to.h
    M libcxx/include/__type_traits/is_trivially_copyable.h
    M libcxx/src/algorithm.cpp
    M lldb/include/lldb/API/SBMemoryRegionInfo.h
    M lldb/include/lldb/API/SBSaveCoreOptions.h
    M lldb/include/lldb/Symbol/SaveCoreOptions.h
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/Utility/RangeMap.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/API/SBSaveCoreOptions.cpp
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.h
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.h
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Symbol/SaveCoreOptions.cpp
    M lldb/source/Target/Process.cpp
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
    M lldb/test/API/tools/lldb-dap/instruction-breakpoint/TestDAP_instruction_breakpoint.py
    M llvm/docs/WritingAnLLVMPass.rst
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/include/llvm/Analysis/FunctionPropertiesAnalysis.h
    M llvm/include/llvm/Analysis/LoopUnrollAnalyzer.h
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/TableGen/Record.h
    M llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/LoopUnrollAnalyzer.cpp
    M llvm/lib/Analysis/MLInlineAdvisor.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/CodeGen/GlobalISel/GIMatchTableExecutor.cpp
    M llvm/lib/CodeGen/LiveDebugVariables.cpp
    M llvm/lib/CodeGen/TargetInstrInfo.cpp
    M llvm/lib/IR/AttributeImpl.h
    M llvm/lib/IR/ConstantsContext.h
    M llvm/lib/MC/MCParser/AsmParser.cpp
    M llvm/lib/MC/MCParser/MasmParser.cpp
    M llvm/lib/Object/COFFObjectFile.cpp
    M llvm/lib/Object/MachOObjectFile.cpp
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/TableGen/DetailedRecordsBackend.cpp
    M llvm/lib/TableGen/JSONBackend.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/R600EmitClauseMarkers.cpp
    M llvm/lib/Target/AMDGPU/R600InstrInfo.cpp
    M llvm/lib/Target/AMDGPU/R600InstrInfo.h
    M llvm/lib/Target/AMDGPU/R600MachineScheduler.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/ARC/ARCInstrInfo.cpp
    M llvm/lib/Target/ARC/ARCInstrInfo.h
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.h
    M llvm/lib/Target/ARM/Thumb1InstrInfo.cpp
    M llvm/lib/Target/ARM/Thumb1InstrInfo.h
    M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
    M llvm/lib/Target/ARM/Thumb2InstrInfo.h
    M llvm/lib/Target/AVR/AVRInstrInfo.cpp
    M llvm/lib/Target/AVR/AVRInstrInfo.h
    M llvm/lib/Target/BPF/BPFInstrInfo.cpp
    M llvm/lib/Target/BPF/BPFInstrInfo.h
    M llvm/lib/Target/CSKY/CSKYInstrInfo.cpp
    M llvm/lib/Target/CSKY/CSKYInstrInfo.h
    M llvm/lib/Target/DirectX/DXILMetadata.cpp
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    M llvm/lib/Target/DirectX/DXILResource.cpp
    M llvm/lib/Target/DirectX/DXILResource.h
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
    M llvm/lib/Target/Lanai/LanaiInstrInfo.cpp
    M llvm/lib/Target/Lanai/LanaiInstrInfo.h
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.h
    M llvm/lib/Target/M68k/M68kInstrInfo.cpp
    M llvm/lib/Target/M68k/M68kInstrInfo.h
    M llvm/lib/Target/MSP430/MSP430InstrInfo.cpp
    M llvm/lib/Target/MSP430/MSP430InstrInfo.h
    M llvm/lib/Target/Mips/Mips16InstrInfo.cpp
    M llvm/lib/Target/Mips/Mips16InstrInfo.h
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.h
    M llvm/lib/Target/Mips/MipsSEInstrInfo.cpp
    M llvm/lib/Target/Mips/MipsSEInstrInfo.h
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.h
    M llvm/lib/Target/PowerPC/CMakeLists.txt
    R llvm/lib/Target/PowerPC/PPCExpandISEL.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.h
    M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
    M llvm/lib/Target/Sparc/SparcInstrInfo.cpp
    M llvm/lib/Target/Sparc/SparcInstrInfo.h
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.h
    M llvm/lib/Target/VE/VEInstrInfo.cpp
    M llvm/lib/Target/VE/VEInstrInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.h
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.h
    M llvm/lib/Target/X86/X86SchedIceLake.td
    M llvm/lib/Target/X86/X86SchedSkylakeClient.td
    M llvm/lib/Target/X86/X86SchedSkylakeServer.td
    M llvm/lib/Target/XCore/XCoreInstrInfo.cpp
    M llvm/lib/Target/XCore/XCoreInstrInfo.h
    M llvm/lib/Target/Xtensa/XtensaInstrInfo.cpp
    M llvm/lib/Target/Xtensa/XtensaInstrInfo.h
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Analysis/LoopAccessAnalysis/depend_diff_types.ll
    M llvm/test/Analysis/LoopAccessAnalysis/non-constant-strides-backward.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/select-load.mir
    M llvm/test/CodeGen/AArch64/arm64-indexed-vector-ldst.ll
    M llvm/test/CodeGen/AArch64/arm64-ld1.ll
    M llvm/test/CodeGen/AArch64/sve-bitcast.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
    M llvm/test/CodeGen/AMDGPU/div-rem-by-constant-64.ll
    M llvm/test/CodeGen/AMDGPU/mul_int24.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
    M llvm/test/CodeGen/DirectX/CreateHandle.ll
    M llvm/test/CodeGen/DirectX/CreateHandleFromBinding.ll
    M llvm/test/CodeGen/MLRegAlloc/Inputs/interactive_main.py
    A llvm/test/CodeGen/Mips/fp-fcanonicalize.ll
    M llvm/test/CodeGen/PowerPC/O0-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
    M llvm/test/CodeGen/PowerPC/crbit-asm.ll
    M llvm/test/CodeGen/PowerPC/crbits.ll
    M llvm/test/CodeGen/PowerPC/expand-contiguous-isel.ll
    M llvm/test/CodeGen/PowerPC/expand-foldable-isel.ll
    R llvm/test/CodeGen/PowerPC/expand-isel-1.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-10.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-2.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-3.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-4.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-5.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-6.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-7.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-8.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-9.mir
    R llvm/test/CodeGen/PowerPC/expand-isel-liveness.mir
    M llvm/test/CodeGen/PowerPC/expand-isel.ll
    M llvm/test/CodeGen/PowerPC/fold-zero.ll
    M llvm/test/CodeGen/PowerPC/i1-ext-fold.ll
    M llvm/test/CodeGen/PowerPC/i64_fp_round.ll
    M llvm/test/CodeGen/PowerPC/ifcvt.ll
    M llvm/test/CodeGen/PowerPC/isel.ll
    M llvm/test/CodeGen/PowerPC/optcmp.ll
    M llvm/test/CodeGen/PowerPC/p8-isel-sched.ll
    M llvm/test/CodeGen/PowerPC/ppc-crbits-onoff.ll
    M llvm/test/CodeGen/PowerPC/remove-implicit-use.mir
    M llvm/test/CodeGen/PowerPC/select-i1-vs-i1.ll
    M llvm/test/CodeGen/PowerPC/subreg-postra-2.ll
    M llvm/test/CodeGen/PowerPC/subreg-postra.ll
    M llvm/test/CodeGen/RISCV/fastcc-without-f-reg.ll
    A llvm/test/CodeGen/RISCV/renamable-copy.mir
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-splat-bf16.ll
    A llvm/test/CodeGen/SPIRV/opencl/vload_halfn.ll
    M llvm/test/CodeGen/X86/code-align-loops.ll
    A llvm/test/Transforms/ArgumentPromotion/actual-arguments.ll
    M llvm/test/Transforms/LoopVectorize/global_alias.ll
    M llvm/test/Transforms/SCCP/pointer-nonnull.ll
    A llvm/test/Transforms/SLPVectorizer/RISCV/long-mask-split.ll
    A llvm/test/Transforms/SLPVectorizer/RISCV/revec.ll
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx2.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-mmx.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-avx2.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-mmx.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-sse1.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-sse2.s
    M llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx2.s
    M llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-mmx.s
    M llvm/unittests/CodeGen/GlobalISel/GISelMITest.h
    M llvm/unittests/CodeGen/MachineDomTreeUpdaterTest.cpp
    M llvm/unittests/MI/LiveIntervalTest.cpp
    M llvm/unittests/MIR/MachineMetadata.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp
    M llvm/unittests/Target/WebAssembly/WebAssemblyExceptionInfoTest.cpp
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp
    M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn
    M llvm/utils/gn/secondary/lldb/tools/lldb-dap/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/PowerPC/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn
    M llvm/utils/lit/lit/TestRunner.py
    A llvm/utils/lit/tests/Inputs/shtest-export/export-too-many-args.txt
    A llvm/utils/lit/tests/Inputs/shtest-export/lit.cfg
    A llvm/utils/lit/tests/shtest-export.py
    M mlir/docs/Dialects/emitc.md
    M mlir/include/mlir-c/Dialect/LLVM.h
    A mlir/include/mlir/Bindings/Python/IRTypes.h
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/include/mlir/Dialect/DLTI/DLTI.h
    M mlir/include/mlir/Dialect/DLTI/TransformOps/DLTITransformOps.td
    M mlir/include/mlir/Dialect/GPU/IR/CompilationAttrInterfaces.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/include/mlir/Dialect/SparseTensor/Pipelines/Passes.h
    M mlir/include/mlir/Support/ThreadLocalCache.h
    M mlir/lib/Bindings/Python/IRTypes.cpp
    M mlir/lib/CAPI/Dialect/LLVM.cpp
    M mlir/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
    M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/DLTI/DLTI.cpp
    M mlir/lib/Dialect/DLTI/TransformOps/DLTITransformOps.cpp
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/GPU/Transforms/ModuleToBinary.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
    M mlir/lib/Dialect/SparseTensor/Pipelines/SparseTensorPipelines.cpp
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/lib/Target/LLVM/NVVM/Target.cpp
    M mlir/lib/Target/LLVM/ROCDL/Target.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.h
    M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
    M mlir/lib/Target/LLVMIR/DebugTranslation.h
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Target/SPIRV/Target.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/python/mlir/runtime/np_to_memref.py
    M mlir/test/CAPI/llvm.c
    M mlir/test/Conversion/ArithToEmitC/arith-to-emitc-unsupported.mlir
    A mlir/test/Conversion/ConvertToSPIRV/convert-gpu-modules.mlir
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-failed.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize.mlir
    M mlir/test/Dialect/DLTI/invalid.mlir
    M mlir/test/Dialect/DLTI/query.mlir
    M mlir/test/Dialect/DLTI/valid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/Cpp/const.mlir
    M mlir/test/Target/Cpp/types.mlir
    M mlir/test/Target/LLVMIR/Import/debug-info.ll
    M mlir/test/Target/LLVMIR/llvmir-debug.mlir
    M mlir/test/Target/LLVMIR/openmp-reduction-array-sections.mlir
    M mlir/test/Target/LLVMIR/openmp-reduction.mlir
    M mlir/test/python/execution_engine.py
    M mlir/tools/mlir-vulkan-runner/mlir-vulkan-runner.cpp
    M mlir/unittests/Target/LLVM/SerializeToLLVMBitcode.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  only changing usize to minimize impact

Created using spr 1.3.6-beta.1


Compare: https://github.com/llvm/llvm-project/compare/6e565d96c423...f3152d6645d8

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