[all-commits] [llvm/llvm-project] 816068: [NFC][SLP] Remove useless code of the schedule (#1...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Tue Aug 20 11:31:59 PDT 2024


  Branch: refs/heads/users/alexey-bataev/spr/lvinitial-support-for-safe-distance-in-predicated-datawithevl-vectorization-mode
  Home:   https://github.com/llvm/llvm-project
  Commit: 816068e462888f31f4bcf71f2f728eb77ff2ea15
      https://github.com/llvm/llvm-project/commit/816068e462888f31f4bcf71f2f728eb77ff2ea15
  Author: tcwzxx <tcwzxx at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

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

  Log Message:
  -----------
  [NFC][SLP] Remove useless code of the schedule (#104697)

Currently, the SLP schedule has two containers of `ScheduleData`:
`ExtraScheduleDataMap` and `ScheduleDataMap`. However, the
`ScheduleData` in `ExtraScheduleDataMap` is only used to indicate
whether the instruction is processed or not and does not participate in
the schedule, which is useless. `ScheduleDataMap` is sufficient for this
purpose. The `OpValue` member is used only in `ExtraScheduleDataMap`,
which is also useless.


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

  Changed paths:
    M llvm/test/Analysis/CostModel/X86/icmp-codesize.ll
    M llvm/test/Analysis/CostModel/X86/icmp-latency.ll
    M llvm/test/Analysis/CostModel/X86/icmp-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/icmp.ll

  Log Message:
  -----------
  [CostModel][X86] Add cost tests for scmp/ucmp intrinsics


  Commit: 0cc6b464f8adb739e6f9bcc9bda8cff9bb1f1c2a
      https://github.com/llvm/llvm-project/commit/0cc6b464f8adb739e6f9bcc9bda8cff9bb1f1c2a
  Author: Piotr Fusik <p.fusik at samsung.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/docs/ExtendingLLVM.rst

  Log Message:
  -----------
  [docs] Update a filename, fix indentation (#103018)


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/abds-neg.ll
    M llvm/test/CodeGen/X86/abds.ll
    M llvm/test/CodeGen/X86/abdu-neg.ll
    M llvm/test/CodeGen/X86/abdu.ll

  Log Message:
  -----------
  [X86] LowerABD - simplify i32/i64 to use sub+sub+cmov instead of repeating nodes via abs (#102174)

Using X86ISD::SUB nodes directly allows us to drive the X86ISD::CMOV node with exact flags instead of trying to cleanup the generic codegen via ICMP/SUBO nodes.


  Commit: 50daa2397f831f3577cf8f9057f047021867dc88
      https://github.com/llvm/llvm-project/commit/50daa2397f831f3577cf8f9057f047021867dc88
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/include/llvm/IR/DataLayout.h
    M llvm/lib/IR/DataLayout.cpp
    M llvm/test/Transforms/InstCombine/crash.ll
    M llvm/test/Transforms/InstCombine/phi.ll
    M llvm/unittests/IR/DataLayoutTest.cpp
    M mlir/test/Target/LLVMIR/Import/import-failure.ll

  Log Message:
  -----------
  [DataLayout] Refactor parsing of i/f/v/a specifications (#104699)

Split off of #104545 to reduce patch size.


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

  Changed paths:
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/test/Modules/merge-using-decls.cpp

  Log Message:
  -----------
  [clang][bytecode] Use first FieldDecl instead of asserting (#104760)

This assertion fails sometimes. We use the first decl for lookup later,
so let's use the first decl here as well.


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

  Changed paths:
    M llvm/test/Analysis/CostModel/AArch64/arith-fp.ll

  Log Message:
  -----------
  [AArch64] Add fneg(fmul) and fmul(fneg) tests. NFC


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

  Changed paths:
    M clang/lib/AST/ByteCode/MemberPointer.cpp
    M clang/test/AST/ByteCode/memberpointers.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix member pointers to IndirectFieldDecls (#104756)


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

  Changed paths:
    M compiler-rt/test/ubsan/TestCases/Integer/bit-int.c

  Log Message:
  -----------
  Require !windows instead of XFAIL'ing ubsan/TestCases/Integer/bit-int.c

The test would unexpectedly pass on Windows when there's 128-bit runtime
routines available. See comment on #104494


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

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaOpenMP.cpp
    A clang/test/OpenMP/loop_collapse_1.c
    A clang/test/OpenMP/loop_collapse_2.cpp

  Log Message:
  -----------
  [clang][OpenMP] Diagnose badly-formed collapsed imperfect loop nests (#60678) (#101305)

This patch fixes a couple of cases where Clang aborts with loop nests
that are being collapsed (via the relevant OpenMP clause) into a new,
combined loop.

The problematic cases happen when a variable declared within the loop
nest is used in the (init, condition, iter) statement of a more
deeply-nested loop. I don't think these cases (generally?) fall under
the non-rectangular loop nest rules as defined in OpenMP 5.0+, but I
could be wrong (and anyway, emitting an error is better than crashing).

In terms of implementation: the crash happens because (to a first
approximation) all the loop bounds calculations are pulled out to the
start of the new, combined loop, but variables declared in the loop nest
"haven't been seen yet". I believe there is special handling for
iteration variables declared in "for" init statements, but not for
variables declared elsewhere in the "imperfect" parts of a loop nest.

So, this patch tries to diagnose the troublesome cases before they can
cause a crash. This is slightly awkward because at the point where we
want to do the diagnosis (SemaOpenMP.cpp), we don't have scope
information readily available. Instead we "manually" scan through the
AST of the loop nest looking for var decls (ForVarDeclFinder), then we
ensure we're not using any of those in loop control subexprs
(ForSubExprChecker). All that is only done when we have a "collapse"
clause.

Range-for loops can also cause crashes at present without this patch, so
are handled too.


  Commit: 7efa068f7a7ed4f42ba09cce73e8c09bb8b4e8ce
      https://github.com/llvm/llvm-project/commit/7efa068f7a7ed4f42ba09cce73e8c09bb8b4e8ce
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVSchedSiFiveP400.td
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/load.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vislide-vx.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vlseg-vsseg.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vmv.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vreduce.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vrgather.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vshift-vmul.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvbb.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvbc.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvkg.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvkned.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvknhb.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvksed.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvksh.s

  Log Message:
  -----------
  [RISCV] Add vector and vector crypto to SiFiveP400 scheduler model (#102155)

The SiFiveP400 scheduler model did not support vector or vector crypto.
With the addition of the sifive-p470 processor, this model needs to support
these extensions.

The processors who use this model but do not have vector or vector
crypto will never produce these instructions, so there is no impact to these
processors.

Co-authored-by: Min Hsu <min.hsu at sifive.com>


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

  Changed paths:
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/multi-tile-matmul-mixed-types.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/outerproduct-i8i8i32.mlir

  Log Message:
  -----------
  [mlir][ArmSME] Remove XFAILs (#104758)

Buildbots have been updated to QEMU 9.0.2: 
https://github.com/llvm/llvm-project/pull/104758#issuecomment-2296592845


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

  Changed paths:
    M llvm/test/DebugInfo/COFF/AArch64/arm64-register-variables.ll
    M llvm/test/DebugInfo/COFF/ARMNT/arm-register-variables.ll

  Log Message:
  -----------
  [DebugInfo] Make tests SimplifyCFG-independent (NFC)

Run SimplifyCFG over the test input and disable the SimplifyCFG
run in the backend, so that these tests are not affected by changes
to SimplifyCFG.


  Commit: 79f6ae05c139d3d5b6446f8a265a3c6e3f5b18f8
      https://github.com/llvm/llvm-project/commit/79f6ae05c139d3d5b6446f8a265a3c6e3f5b18f8
  Author: smanna12 <soumi.manna at intel.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

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

  Log Message:
  -----------
  [Clang][NFC] Fix potential null dereference in encodeTypeForFunctionPointerAuth (#104737)

This patch replaces getAs with castAs in
encodeTypeForFunctionPointerAuth to prevent dereferencing a potential
null pointer, enhancing type safety as reported by static analyzer tool.


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

  Changed paths:
    M clang/include/clang/ExtractAPI/API.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/lib/ExtractAPI/API.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    M clang/test/ExtractAPI/anonymous_record_no_typedef.c

  Log Message:
  -----------
  [clang][ExtractAPI] Stop dropping fields of nested anonymous record types when they aren't attached to variable declaration (#104600)

- Introduce primitives for removing records from `APISet` and managing
the record chain of `RecordContext`
- Detect nested anonymous record types and remove them from the `APISet`
after they have been fully traversed and transfer ownership of child
records to the parent context (if any)


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

  Changed paths:
    R llvm/lib/Target/AMDGPU/AMDGPUCodeGenPassBuilder.cpp
    R llvm/lib/Target/AMDGPU/AMDGPUCodeGenPassBuilder.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    M llvm/lib/Target/AMDGPU/R600TargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp

  Log Message:
  -----------
  [AMDGPU] Move AMDGPUCodeGenPassBuilder into AMDGPUTargetMachine(NFC) (#103720)

This will allow us to reuse the existing flags and the static
functions while building the pipeline for new pass manager.


  Commit: 7dd6340bdadf86bd0facdea89d1876a5c36dc33b
      https://github.com/llvm/llvm-project/commit/7dd6340bdadf86bd0facdea89d1876a5c36dc33b
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Support/MathExtras.h
    M llvm/unittests/Support/MathExtrasTest.cpp

  Log Message:
  -----------
  MathExtras: template'ize alignToPowerOf2 (#97814)

Follow up on 5627794 (MathExtras: avoid unnecessarily widening types) to
change the overflow behavior of alignToPowerOf2 to only overflow if the
result is not representable in the return type. This allows us to
template'ize it, and avoid unnecessarily widening the types of
arguments.


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

  Changed paths:
    M clang/include/clang/ExtractAPI/API.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/lib/ExtractAPI/API.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    M clang/test/ExtractAPI/anonymous_record_no_typedef.c

  Log Message:
  -----------
  Revert "[clang][ExtractAPI] Stop dropping fields of nested anonymous record types when they aren't attached to variable declaration (#104600)"

This reverts commit c60da1a271a6bb271e7703b2f7c71fbece67ab78.


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    R llvm/lib/Target/AMDGPU/R600CodeGenPassBuilder.cpp
    R llvm/lib/Target/AMDGPU/R600CodeGenPassBuilder.h
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/lib/Target/AMDGPU/R600TargetMachine.cpp
    M llvm/lib/Target/AMDGPU/R600TargetMachine.h

  Log Message:
  -----------
  [AMDGPU][R600] Move R600CodeGenPassBuilder into R600TargetMachine(NFC). (#103721)


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

  Changed paths:
    M llvm/test/Transforms/SimplifyCFG/hoist-common-code.ll

  Log Message:
  -----------
  [SimplifyCFG] Add tests for hoisting of commutative instructions (NFC)


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

  Changed paths:
    M lldb/unittests/Callback/TestBreakpointSetCallback.cpp

  Log Message:
  -----------
  [lldb][test] Fix cast dropping const warnin in TestBreakpointSetCallback.cpp

When building with gcc I get this warning:
```
<...>TestBreakpointSetCallback.cpp:58:25: warning: cast from type ‘const char*’ to type ‘void*’ casts away qualifiers [-Wcast-qual]
   58 |   void *baton = (void *)"hello";
      |                         ^~~~~~~
```

Use the address of a mutable global variable instead. All we care about
is that the address passed as the baton is the same one we get later.


  Commit: c7a54bfd1d25330199c96dd0a46cef1644b1b1ce
      https://github.com/llvm/llvm-project/commit/c7a54bfd1d25330199c96dd0a46cef1644b1b1ce
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.h

  Log Message:
  -----------
  [lldb][ASTUtils] Remove unused SemaSourceWithPriorities::addSource API

As far as I can tell, this has always been unused. My hunch is that
this was supposed to mimick the `MultiplexExternalSemaSource::AddSource`
API which `SemaSourceWithPriorities` is based on.


  Commit: 0abb7791614947bc24931dd851ade31d02496977
      https://github.com/llvm/llvm-project/commit/0abb7791614947bc24931dd851ade31d02496977
  Author: Wesley Wiser <wwiser at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/Target/X86/X86FrameLowering.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.h
    A llvm/test/CodeGen/X86/avx512f-large-stack.ll
    M llvm/test/CodeGen/X86/huge-stack.ll
    M llvm/test/CodeGen/X86/win64-stackprobe-overflow.ll

  Log Message:
  -----------
  [LLVM] [X86] Fix integer overflows in frame layout for huge frames (#101840)

Fix 32-bit integer overflows in the X86 target frame layout when dealing
with frames larger than 4gb. When this occurs, we'll scavenge a scratch
register to be able to hold the correct stack offset for frame locals.

This completes reapplying #84114.

Fixes #48911
Fixes #75944 
Fixes #87154


  Commit: 576aa3a50960f02e4dfe2d6ed2c55aa66006adcf
      https://github.com/llvm/llvm-project/commit/576aa3a50960f02e4dfe2d6ed2c55aa66006adcf
  Author: Akshat Oke <76596238+Akshat-Oke at users.noreply.github.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/TableGen/TGParser.cpp
    M llvm/test/TableGen/dump.td

  Log Message:
  -----------
  [TableGen] Resolve References at top level (#104578)

Add a dummy resolver to resolve references outside records. This invokes
Fold() with isFinal to force resolution.

Fixes #102447

Co-authored-by: Akshat Oke <Akshat.Oke at amd.com>


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

  Changed paths:
    M lldb/unittests/Disassembler/x86/TestGetControlFlowKindx86.cpp

  Log Message:
  -----------
  [lldb][test] Fix GCC warnings in TestGetControlFlowKindX86.cpp

```
<...>/TestGetControlFlowKindx86.cpp:148:8: warning: suggest explicit braces to avoid ambiguous ‘else’ [-Wdangling-else]
  148 |     if (kind == eInstructionControlFlowKindReturn)
      |        ^
```

Usually llvm is a "no braces for single line body" project but
for whatever reason gcc objects to it here. Perhaps because it's
within a for loop.

Added the newlines just for readability.


  Commit: 8d165136ac36a53e51b50c620a12039d6c1e628e
      https://github.com/llvm/llvm-project/commit/8d165136ac36a53e51b50c620a12039d6c1e628e
  Author: meehatpa <gune30 at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
    M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir
    M mlir/test/Conversion/MathToSPIRV/math-to-opencl-spirv.mlir

  Log Message:
  -----------
  [mlir][[spirv] Add support for math.log2 and math.log10 to GLSL/OpenCL SPIRV Backends (#104608)

As log2 and log10 are not available in spirv, realize them as a
decomposition using spirv.CL.log/spirv.GL.Log.


  Commit: 7a06ebdeb6440d80fbcaeccd33314c6e039c6795
      https://github.com/llvm/llvm-project/commit/7a06ebdeb6440d80fbcaeccd33314c6e039c6795
  Author: Fred Grim <fgrim at apple.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M lldb/unittests/Process/elf-core/ThreadElfCoreTest.cpp

  Log Message:
  -----------
  [lldb] PopulatePrpsInfoTest can fail due to hardcoded priority value (#104617)

In implementing this test one of the assertions assumes that the
priority is the default in linux (0) but, evidently, some of the build
runners prioritize the test to, at least, 5. This ensures that
regardless of the priority the test passes by validating that its the
process's priority
```
fgrim at host001 :~/llvm-project/debug_build> nice -n 15 tools/lldb/unittests/Process/elf-core/ProcessElfCoreTests
[==========] Running 2 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 2 tests from ElfCoreTest
[ RUN      ] ElfCoreTest.PopulatePrpsInfoTest
[       OK ] ElfCoreTest.PopulatePrpsInfoTest (4 ms)
[ RUN      ] ElfCoreTest.PopulatePrStatusTest
[       OK ] ElfCoreTest.PopulatePrStatusTest (3 ms)
[----------] 2 tests from ElfCoreTest (7 ms total)

[----------] Global test environment tear-down
[==========] 2 tests from 1 test suite ran. (8 ms total)
[  PASSED  ] 2 tests.
===(10:03)===
fgrim at host001 :~/llvm-project/debug_build>
```


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

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/codegen.cpp

  Log Message:
  -----------
  [clang][bytecode] Discard NullToPointer cast SubExpr (#104782)

So we still properly abort if they fail.


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

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

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


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

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

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


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

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h

  Log Message:
  -----------
  [lldb][Python] Silence GCC warning for modules error workaround

```
lldb-python.h:16:30: warning: ‘g_fcxx_modules_workaround’ defined but not used [-Wunused-variable]
   16 | static llvm::Expected<bool> *g_fcxx_modules_workaround;
      |
```

Workaround originally added in 36cb29cbbe1b22dcd298ad65e1fabe899b7d7249.


  Commit: 42386dc46d8217b2dfed8dfc41afeec366ec2015
      https://github.com/llvm/llvm-project/commit/42386dc46d8217b2dfed8dfc41afeec366ec2015
  Author: Phil Camp <phil.camp at sony.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    A llvm/test/tools/llvm-mca/JSON/X86/views-bottleneck.s
    M llvm/test/tools/llvm-mca/JSON/X86/views-custom-parameters.s
    M llvm/test/tools/llvm-mca/JSON/X86/views-multiple-anonymous-regions.s
    M llvm/test/tools/llvm-mca/JSON/X86/views-multiple-region.s
    M llvm/test/tools/llvm-mca/JSON/X86/views.s
    M llvm/tools/llvm-mca/Views/BottleneckAnalysis.cpp
    M llvm/tools/llvm-mca/Views/BottleneckAnalysis.h

  Log Message:
  -----------
  [llvm-mca] Add bottle-neck analysis to JSON output. (#90056)

This patch implements the bottle-neck analysis data in the JSON dump
mode.


  Commit: f95026dbf66e353128a3a3d7b55f3e52d5985535
      https://github.com/llvm/llvm-project/commit/f95026dbf66e353128a3a3d7b55f3e52d5985535
  Author: Lei Huang <lei at ca.ibm.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/Targets/PPC.cpp
    A clang/test/CodeGen/PowerPC/transparent_union.c

  Log Message:
  -----------
  [PowerPC] Fix codegen for transparent_union function params (#101738)

Update codegen for func param with transparent_union attr to be that of
the first union member.

PPC fix for: https://github.com/llvm/llvm-project/issues/76773


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

  Changed paths:
    M llvm/include/llvm/ADT/SmallPtrSet.h
    M llvm/lib/Support/SmallPtrSet.cpp

  Log Message:
  -----------
  [SmallPtrSet] Optimize find/erase

Port #100517 for DenseMap.

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


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

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/lib/CodeGen/CGCall.cpp
    A clang/test/CodeGen/bpf-attr-bpf-fastcall-1.c
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    A clang/test/Sema/bpf-attr-bpf-fastcall.c
    M llvm/lib/Target/BPF/BPFCallingConv.td
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/BPF/BPFInstrInfo.td
    M llvm/lib/Target/BPF/BPFMIPeephole.cpp
    M llvm/lib/Target/BPF/BPFRegisterInfo.cpp
    M llvm/lib/Target/BPF/BPFRegisterInfo.h
    A llvm/test/CodeGen/BPF/bpf-fastcall-1.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-2.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-3.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-regmask-1.ll

  Log Message:
  -----------
  [BPF] introduce `__attribute__((bpf_fastcall))` (#101228)

This commit introduces attribute bpf_fastcall to declare BPF functions
that do not clobber some of the caller saved registers (R0-R5).

The idea is to generate the code complying with generic BPF ABI, but
allow compatible Linux Kernel to remove unnecessary spills and fills of
non-scratched registers (given some compiler assistance).

For such functions do register allocation as-if caller saved registers
are not clobbered, but later wrap the calls with spill and fill patterns
that are simple to recognize in kernel.

For example for the following C code:

     #define __bpf_fastcall __attribute__((bpf_fastcall))

     void bar(void) __bpf_fastcall;
     void buz(long i, long j, long k);

     void foo(long i, long j, long k) {
       bar();
       buz(i, j, k);
     }

First allocate registers as if:

    foo:
      call bar    # note: no spills for i,j,k (r1,r2,r3)
      call buz
      exit

And later insert spills fills on the peephole phase:

    foo:
      *(u64 *)(r10 - 8) = r1;  # Such call pattern is
      *(u64 *)(r10 - 16) = r2; # correct when used with
      *(u64 *)(r10 - 24) = r3; # old kernels.
      call bar
      r3 = *(u64 *)(r10 - 24); # But also allows new
      r2 = *(u64 *)(r10 - 16); # kernels to recognize the
      r1 = *(u64 *)(r10 - 8);  # pattern and remove spills/fills.
      call buz
      exit

The offsets for generated spills/fills are picked as minimal stack
offsets for the function. Allocated stack slots are not used for any
other purposes, in order to simplify in-kernel analysis.

Corresponding functionality had been merged in Linux Kernel as
[this](https://lore.kernel.org/bpf/172179364482.1919.9590705031832457529.git-patchwork-notify@kernel.org/)
patch set (the patch assumed that `no_caller_saved_regsiters` attribute
would be used by LLVM, naming does not matter for the Kernel).


  Commit: 9b65558d2f20463b1a32374165d6fa06696623e9
      https://github.com/llvm/llvm-project/commit/9b65558d2f20463b1a32374165d6fa06696623e9
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M lld/ELF/LinkerScript.cpp
    M lld/test/ELF/riscv-section-layout.s
    M lld/test/ELF/section-name.s

  Log Message:
  -----------
  [lld][ELF] Combine uniqued small data sections (#104485)

RISC-V GCC with `-fdata-sections` will emit `.sbss.<name>`,
`.srodata.<name>`, and `.sdata.<name>` sections for small data items of
different kinds. Clang/LLVM already emits `.srodata.*` sections, and we
intend to emit the other two section name patterns in #87040.

This change ensures that any input sections starting `.sbss` are
combined into one output section called `.sbss`, and the same
respectively for `.srodata` and `.sdata`. This also allows the existing
RISC-V specific code for determining an output order for `.sbss` and
`.sdata` sections to apply to placing the sections.


  Commit: 93d0f82272dc230ff4d53d48c43b2f1518754a7b
      https://github.com/llvm/llvm-project/commit/93d0f82272dc230ff4d53d48c43b2f1518754a7b
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/docs/CodeReview.rst

  Log Message:
  -----------
  [docs] Add note about "Re-request review" (#104735)


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

  Changed paths:
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp

  Log Message:
  -----------
  [DirectX] Differentiate between 0/1 overloads in the OpBuilder. NFC

DXIL operations that only have one signature behave one of two ways - either
they are always suffixed with a type like `dx.op.ThreadId.i32` and hence have
exactly one overload, or they're never suffixed like `dx.op.CreateHandle` and
hence have zero overloads.

Update DXIL.td for operations that have one overload and remove the hack in the
builder that was adjusting names for unoverloaded ops.

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


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaTemplate.cpp
    A clang/test/SemaTemplate/explicit-instantiation-cxx20.cpp

  Log Message:
  -----------
  [Clang] Check constraints for an explicit instantiation of a member function (#104438)

Because there may be multiple constrained function of the same type, we
need to perform overload resolution to find the best viable function to
specialize.


Fixes #46029


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

  Changed paths:
    M llvm/docs/DirectX/DXILOpTableGenDesign.rst
    M llvm/include/llvm/Support/DXILABI.h
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILConstants.h
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/utils/TableGen/DXILEmitter.cpp

  Log Message:
  -----------
  [DirectX] Disentangle DXIL.td's op types from LLVMType. NFC

LLVMType is both too broad and too narrow for defining DXIL operations, in
different ways. It's too broad in the sense that we don't need the full set of
MVTs - the set of types DXIL operations work on is much smaller. It's too
narrow in the sense that it's difficult to use it for the various fixed
structure types in DXIL, like `%dx.types.Handle` or `%dx.Types.ResRet.f32`.

Replace the usage of LLVMType in DXIL.td with DXILOpParamType, a simple class
that we can define an enum of types from. Further, use this to replace the
"ParameterKind" enum in DXILABI.h that has nothing to do with DXIL's ABI.

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


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

  Changed paths:
    M llvm/lib/TableGen/TGLexer.cpp
    A llvm/test/TableGen/invalid-macro-name-command-line.td

  Log Message:
  -----------
  [TableGen] Detect invalid -D arguments and fail (#102813)

- Detect invalid macro names specified on command line and fail if one
found.
- Specifically, -DXYZ=1 for example, will fail instead is being silently
accepted.


  Commit: 2258bc429b6f76ade78059f3c4f6c7c77f93a996
      https://github.com/llvm/llvm-project/commit/2258bc429b6f76ade78059f3c4f6c7c77f93a996
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mbcnt.ll

  Log Message:
  -----------
  [AMDGPU] Simplify, fix and improve known bits for mbcnt (#104768)

Simplify by using KnownBits::add.

Fix GlobalISel path which was ignoring the known bits of src1.

Improve analysis of mbcnt.hi which adds at most 31 even in wave64.


  Commit: 564bd206588d330211914ba2e94bd13caa4e0431
      https://github.com/llvm/llvm-project/commit/564bd206588d330211914ba2e94bd13caa4e0431
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-addrspacecast.mir

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Save a copy in one case of addrspacecast (#104789)

Refactor legalization of addrspacecast local/private -> flat to avoid
building a copy in the nonnull case.


  Commit: 2575ea6e17889e6d83198fc1c80963f81485bfcc
      https://github.com/llvm/llvm-project/commit/2575ea6e17889e6d83198fc1c80963f81485bfcc
  Author: Samira Bazuzi <bazuzi at google.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/ASTOps.h
    M clang/lib/Analysis/FlowSensitive/ASTOps.cpp
    M clang/unittests/Analysis/FlowSensitive/ASTOpsTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Collect local variables referenced within a functio… (#104459)

…n/statement.

We don't need these for the same in-tree purposes as the other sets,
i.e. for making sure we model these Decls that are declared outside the
function, but we have an out-of-tree use for these sets that would
benefit from this simple addition and would avoid duplicating so much of
this code.


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

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

  Log Message:
  -----------
  [RISCV] Improve BCLRITwoBitsMaskHigh SDNodeXForm. NFC

Use getZExtValue instead of getSExtValue since we are going to
overwrite the sign extension on RV32. getZExtValue should be cheaper than
getSExtValue.

Use maskLeadingOnes to improve readability.


  Commit: 865952bbbb97655410d2c34c21938134059c4076
      https://github.com/llvm/llvm-project/commit/865952bbbb97655410d2c34c21938134059c4076
  Author: Sergey Kozub <skozub at nvidia.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsNVPTX.def
    M clang/test/CodeGen/builtins-nvptx.c
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/convert-sm89.ll

  Log Message:
  -----------
  [NVPTX] Add conversion intrinsics from/to fp8 types (e4m3, e5m2) (#102969)

PTX ISA 8.1 supports FP8 conversions:

https://docs.nvidia.com/cuda/parallel-thread-execution/#data-movement-and-conversion-instructions-cvt

This PR adds the support for:

- cvt.rn.satfinite{.relu}.f8x2type.f32 d, a, b;
- cvt.rn.satfinite{.relu}.f8x2type.f16x2 d, a;
- cvt.rn.{.relu}.f16x2.f8x2type d, a;

where .f8x2type = { .e4m3x2, .e5m2x2 };


  Commit: 4e332bba2f3a51966817088cb4dc4a9188955b64
      https://github.com/llvm/llvm-project/commit/4e332bba2f3a51966817088cb4dc4a9188955b64
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_allocator.h

  Log Message:
  -----------
  [asan] Change Apple back to fixed allocator base address (#104818)

This partially reverts https://github.com/llvm/llvm-project/pull/98511
- specifically, the SANITIZER_APPLE case - because of a suspected
breakage for clang on Mac
(https://g-issues.chromium.org/issues/360160858;
https://github.com/llvm/llvm-project/pull/98511#issuecomment-2296749757).


  Commit: e306db0ff0d348da49b44bd0bcae3df5bf8f02a9
      https://github.com/llvm/llvm-project/commit/e306db0ff0d348da49b44bd0bcae3df5bf8f02a9
  Author: Daniel Chen <cdchen at ca.ibm.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M flang/test/Semantics/kinds04_q16.f90

  Log Message:
  -----------
  [Flang] Fix test case for AIX(big-endian) system for issuing an extra message. (#104792)

The 10-byte FP on big-endian system such as AIX is not represented as a
valid number in FE, so Flang issues an extra WARNING message as
`underflow on REAL(10) to REAL(4) conversion` for `_10` for such a
number.
This PR is to fix the test case.


  Commit: d5617ada36705e871f329a7b0efb19ce6e6e2a1f
      https://github.com/llvm/llvm-project/commit/d5617ada36705e871f329a7b0efb19ce6e6e2a1f
  Author: Alexander Shaposhnikov <ashaposhnikov at google.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    A compiler-rt/test/nsan/stable_sort.cpp
    A compiler-rt/test/nsan/swap.cpp

  Log Message:
  -----------
  [compiler-rt][nsan] Add more tests for shadow memory (#100906)

Add more tests for shadow memory.


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

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/Target/ARM/ARMCallLowering.cpp
    M llvm/lib/Target/ARM/ARMCallLowering.h
    A llvm/test/CodeGen/AArch64/GlobalISel/endian_fallback.ll
    M llvm/test/CodeGen/ARM/GlobalISel/arm-irtranslator.ll
    M llvm/test/CodeGen/ARM/GlobalISel/arm-param-lowering.ll

  Log Message:
  -----------
  [GlobalISel] Bail out early for big-endian (#103310)

If we continue through the function we can currently hit crashes. We can
bail out early and fall back to SDAG.

Fixes #103032


  Commit: dde8280ded53f7167dcd2e8f6c50d7c9b5796a10
      https://github.com/llvm/llvm-project/commit/dde8280ded53f7167dcd2e8f6c50d7c9b5796a10
  Author: Angel Zhang <angel.zhang at amd.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVNonUniformOps.td
    M mlir/lib/Dialect/SPIRV/IR/GroupOps.cpp
    M mlir/test/Dialect/SPIRV/IR/non-uniform-ops.mlir

  Log Message:
  -----------
  [mlir][spirv] Add `GroupNonUniformBallotFindLSB` and `GroupNonUniformBallotFindMSB` ops (#104791)


  Commit: 51785856ec5fb6c3f17834b212086d9fc7183868
      https://github.com/llvm/llvm-project/commit/51785856ec5fb6c3f17834b212086d9fc7183868
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

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

  Log Message:
  -----------
  [NFC][Instrumentation] Use `Twine` in `createPrivateGlobalForString` (#104726)


  Commit: f76b9b7e9480d1bb116075593495db287f4c668c
      https://github.com/llvm/llvm-project/commit/f76b9b7e9480d1bb116075593495db287f4c668c
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/test/Instrumentation/AddressSanitizer/global_metadata_array.ll
    M llvm/test/Instrumentation/AddressSanitizer/global_with_comdat.ll

  Log Message:
  -----------
  [NFC][asan] Don't `cd` after `split-file` (#104727)

Helps with copy-pasting of command line
with error.


  Commit: 5e8f4618ce9502190fac96eb8a856146acce2a3a
      https://github.com/llvm/llvm-project/commit/5e8f4618ce9502190fac96eb8a856146acce2a3a
  Author: Eduard Zingerman <eddyz87 at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/lib/CodeGen/CGCall.cpp
    R clang/test/CodeGen/bpf-attr-bpf-fastcall-1.c
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    R clang/test/Sema/bpf-attr-bpf-fastcall.c
    M llvm/lib/Target/BPF/BPFCallingConv.td
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/BPF/BPFInstrInfo.td
    M llvm/lib/Target/BPF/BPFMIPeephole.cpp
    M llvm/lib/Target/BPF/BPFRegisterInfo.cpp
    M llvm/lib/Target/BPF/BPFRegisterInfo.h
    R llvm/test/CodeGen/BPF/bpf-fastcall-1.ll
    R llvm/test/CodeGen/BPF/bpf-fastcall-2.ll
    R llvm/test/CodeGen/BPF/bpf-fastcall-3.ll
    R llvm/test/CodeGen/BPF/bpf-fastcall-regmask-1.ll

  Log Message:
  -----------
  Revert "[BPF] introduce `__attribute__((bpf_fastcall))` (#101228)"

This reverts commit e9b2e16dc98345bb1b91b1a6dacb3cec85f49e31.
Reverting because of the test failure:
https://lab.llvm.org/buildbot/#/builders/187/builds/509


  Commit: 92a8ec7abbd853e89556c7b942f30054273af9c6
      https://github.com/llvm/llvm-project/commit/92a8ec7abbd853e89556c7b942f30054273af9c6
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

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

  Log Message:
  -----------
  LSV: fix style after cursory reading (NFC) (#104793)


  Commit: 22b4496e86c32127e997f3e7385ef64d2d80cc4b
      https://github.com/llvm/llvm-project/commit/22b4496e86c32127e997f3e7385ef64d2d80cc4b
  Author: Dmitry Yanovsky <kerambyte at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ADT/FunctionExtras.h
    M llvm/unittests/ADT/FunctionExtrasTest.cpp

  Log Message:
  -----------
  [ADT] Fix alignment check in unique_function constructor (#99403)

Right now the check fails for any state-capturing lambda since this
expression - `alignof(decltype(StorageUnion.InlineStorage))` - returns 1
for the alignment value and not 4/8 as expected
([MSVC|Clang|GCC](https://godbolt.org/z/eTEdq4xjM)). So this check fails
for pretty much any state-capturing callable we try to store into a
`unique_function` and we take the out-of-line storage path:

\llvm-project\llvm\include\llvm\ADT\FunctionExtras.h,
`UniqueFunctionBase` constructor (line ~266):

```
if (sizeof(CallableT) > InlineStorageSize ||
    alignof(CallableT) > alignof(decltype(StorageUnion.InlineStorage))) {
  // ...
}
```

The fix is simply to use an explicit const variable to store the
alignment value.

There is no easy way to unit-test the fix since inline storage is
considered to be an implementation detail so we shouldn't assume how the
lambda ends up being stored.


  Commit: 3b80a28c8f27536f49e5fa30a7e2b7050bad6cd6
      https://github.com/llvm/llvm-project/commit/3b80a28c8f27536f49e5fa30a7e2b7050bad6cd6
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M mlir/lib/Target/SPIRV/SPIRVBinaryUtils.cpp

  Log Message:
  -----------
  [mlir][spirv] Fix incorrect metadata in SPIR-V Header (#104242)

SRIP-V Generator Magic Number is a 32 bit word: The high order 16 bits
are a tool ID. The low order 16 bits are for verion number, currently
the tool id is not on the high order 16 bit so it must shifed

fixes: #99071


  Commit: 7597e0930638e0a20ca9bfc193a3d89575ce4469
      https://github.com/llvm/llvm-project/commit/7597e0930638e0a20ca9bfc193a3d89575ce4469
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Driver/Options.td
    M clang/test/Parser/parser_overflow.c

  Log Message:
  -----------
  [clang] Increase the default expression nesting limit (#104717)

Increase the default expression nesting limit from 256 to 1024

Fixes: #94728

Compile time with different Bracket depth

Clang version 20.0.0git
(https://github.com/AmrDeveloper/llvm-project.git
673b9e08de8a661c9deed2ee497889312f059f3d)
Target: arm64-apple-darwin23.5.0

Bracket depth = 256, time = 0.243
Bracket depth = 512, time = 0.329
Bracket depth = 1024, time = 0.489
Bracket depth = 2048, time = 0.851


  Commit: 4c967afcc6f3a109e8a325a0327f869c4bfc57c2
      https://github.com/llvm/llvm-project/commit/4c967afcc6f3a109e8a325a0327f869c4bfc57c2
  Author: Michael Kenzel <michael.kenzel at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M libcxxabi/src/cxa_default_handlers.cpp

  Log Message:
  -----------
  [libc++abi] Remove unnecessary dependency on std::unique_ptr (#73277)

The demangling terminate handler uses a function `demangle()` to perform
the demangling. This function returns an `std::unique_ptr`, relying on
custom deleter and `const_cast` hacks to deal with the facts that only
one branch actually allocates, and that the pointer type needs to be
`const char*`. However, the destructor of the returned `std::unique_ptr`
will never actually run, because the sole place this function is ever
called is right before the terminate handler aborts the program. So all
this is unnecessary, and creates a dependency onto `<memory>`. This
change removes the `demangle()` function and replaces the call with an
immediately invoked lambda expression that simply returns a raw pointer
in both cases, which should be fine because the memory can never be
freed here anyways.


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

  Changed paths:
    M llvm/include/llvm/ADT/STLExtras.h

  Log Message:
  -----------
  [ADT] Minor code cleanup in STLExtras.h (#104808)

- Remove unnecessary return from `replace`.
- Add comment for `min_element` and `max_element`.


  Commit: e8ca306fbefdb8385c53d6cc029251d1d5be7049
      https://github.com/llvm/llvm-project/commit/e8ca306fbefdb8385c53d6cc029251d1d5be7049
  Author: Dmitry Yanovsky <kerambyte at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ADT/FunctionExtras.h
    M llvm/unittests/ADT/CountCopyAndMove.cpp
    M llvm/unittests/ADT/CountCopyAndMove.h
    M llvm/unittests/ADT/FunctionExtrasTest.cpp

  Log Message:
  -----------
  [ADT] Add a missing call to a unique_function destructor after move (#98747)

Right now immediately after moving the captured state, we 'disarm' the
moved-from object's destructor by resetting the
`RHS.CallbackAndInlineFlag`. This means that we never properly destroy
the RHS object's captured state.


  Commit: 1393aeb91e88381ced7512788761e42bde8fd1cc
      https://github.com/llvm/llvm-project/commit/1393aeb91e88381ced7512788761e42bde8fd1cc
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/expamd-masked-load.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/expand-masked-gather.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/expand-masked-scatter.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/expand-masked-store.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/lit.local.cfg

  Log Message:
  -----------
  Pre-commit AMDGPU tests for masked load/store/scatter/gather (#104645)

I'm planning to fix the masked operation scalarazer to not generate
suboptimal code on AMD GPUs and other SIMT machines, and so am adding
tests now.


  Commit: 22825ddd88aa29994a8a260a31c959aed0b35b5b
      https://github.com/llvm/llvm-project/commit/22825ddd88aa29994a8a260a31c959aed0b35b5b
  Author: Scott Linder <Scott.Linder at amd.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst
    M llvm/docs/AMDGPUUsage.rst

  Log Message:
  -----------
  [AMDGPU][Docs] DWARF aspace-aware base types

Propose an extension to base type DIEs such that DW_ATE_address-encoded
base types can include an architecture specific address space. Use this
to implement DW_OP_convert conversions between AMDGPU address space
addresses where meaningful.


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h

  Log Message:
  -----------
  AMDGPU/NewPM: Start implementing addCodeGenPrepare (#102816)


  Commit: 435cb0dc5eca08cdd8d9ed0d887fa1693cc2bf33
      https://github.com/llvm/llvm-project/commit/435cb0dc5eca08cdd8d9ed0d887fa1693cc2bf33
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/test/SemaCXX/gh102293.cpp

  Log Message:
  -----------
  [C++23] Fix infinite recursion (Clang 19.x regression) (#104829)

d469794d0cdfd2fea50a6ce0c0e33abb242d744c was fixing an issue with
triggering vtable instantiations, but it accidentally introduced
infinite recursion when the type to be checked is the same as the type
used in a base specifier or field declaration.

Fixes #104802


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

  Changed paths:
    M llvm/lib/MC/MCAssembler.cpp

  Log Message:
  -----------
  [MC] Remove duplicate getFixupKindInfo calls. NFC

Due to 8728e097dfbec3630a1dd907431c0f14274a1ae8
(`std::unique_ptr<MCAsmBackend> Backend`), the compiler doesn't know
that `Backend` will not be modified across function calls.


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

  Changed paths:
    M clang/lib/Sema/SemaOpenMP.cpp
    A clang/test/SemaOpenMP/gh104810.cpp

  Log Message:
  -----------
  [Clang] Fix ICE in SemaOpenMP with structured binding (#104822)

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

Clang currently crashes on the following program:
```
struct S {
  int i;
};

auto [a] = S{1};

void foo() {
    a;
}
```
when `-fopenmp` is enabled. 

Because `a` is neither `VarDecl` nor `FieldDecl`. It's a `BindingDecl`
that's not handled in `SemaOpenMP.cpp`'s `getCanonicalDecl`. It appears
to me that this pattern matching is merely just for a refined return
type of the overrides. It can also be achieved with just using the
virtual `Decl::getCanonicalDecl()` instead. Do the final casting should
be safe for `ValueDecl`s.


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

  Changed paths:
    M llvm/include/llvm/ADT/STLExtras.h

  Log Message:
  -----------
  [NFC][ADT] Add range wrapper for std::mismatch (#104838)


  Commit: 6a125c7e77cd0e73abc9e60ad1c8eb06e31b11d7
      https://github.com/llvm/llvm-project/commit/6a125c7e77cd0e73abc9e60ad1c8eb06e31b11d7
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/test/Instrumentation/AddressSanitizer/asan-funclet.ll
    M llvm/test/Instrumentation/AddressSanitizer/fake-stack.ll
    M llvm/test/Instrumentation/AddressSanitizer/global_metadata.ll
    M llvm/test/Instrumentation/AddressSanitizer/global_metadata_array.ll
    M llvm/test/Instrumentation/AddressSanitizer/global_with_comdat.ll
    M llvm/test/Instrumentation/AddressSanitizer/instrument_global.ll
    M llvm/test/Instrumentation/AddressSanitizer/instrument_late_initializer.ll
    M llvm/test/Instrumentation/AddressSanitizer/local_alias.ll
    M llvm/test/Instrumentation/AddressSanitizer/odr-check-ignore.ll
    M llvm/test/Instrumentation/AddressSanitizer/win-string-literal.ll

  Log Message:
  -----------
  [asan] Better `___asan_gen_` names (#104728)

Use different suffixes for each of 3 types
of objects using `___asan_gen_`.


  Commit: 5af3dfb1d9caee206d080db2afab01006210739f
      https://github.com/llvm/llvm-project/commit/5af3dfb1d9caee206d080db2afab01006210739f
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp

  Log Message:
  -----------
  [NFC][asan] Create `ModuleName` lazily (#104729)

Avoids tracking conditions when it's needed.


  Commit: fa87eac3bea5b9704522c6b553d0f4a421e8abc9
      https://github.com/llvm/llvm-project/commit/fa87eac3bea5b9704522c6b553d0f4a421e8abc9
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M compiler-rt/test/asan/TestCases/initialization-bug-no-global.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/test/Instrumentation/AddressSanitizer/instrument_initializer_without_global.ll

  Log Message:
  -----------
  Reland "[asan] Catch `initialization-order-fiasco` in modules without…" (#104730)

Re-land https://github.com/llvm/llvm-project/pull/104621

After https://github.com/llvm/llvm-project/pull/104729 this patch will
not create unused module names, failing some test checks.

This reverts commit 34f941a2f96b804dd24c2a25770d899b018339ff.


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

  Changed paths:
    A libc/utils/mathtools/worst_case.sollya

  Log Message:
  -----------
  [libc][NFC] Add sollya script to compute worst case range reduction. (#104803)


  Commit: 24052538a0bb0144e6997e6b61687e3b8716b6ac
      https://github.com/llvm/llvm-project/commit/24052538a0bb0144e6997e6b61687e3b8716b6ac
  Author: Michael Park <mcypark at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang-tools-extra/clangd/ParsedAST.cpp

  Log Message:
  -----------
  Emit `BeginSourceFile` failure with `elog`. (#104845)

There are 3 ways in which `ParseAST::build` can fail and return
`std::nullopt`. 2 of the ways we emit the error message using `elog`,
but for the 3rd way, `log` is used. We should emit all 3 of these
reasons with `elog`.


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

  Changed paths:
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/lldb-dap.cpp

  Log Message:
  -----------
  Fix StartDebuggingRequestHandler/ReplModeRequestHandler in lldb-dap (#104824)

`SBCommand::AddCommand()` requires `SBCommandPluginInterface` to be heap
based because it will be stored inside
`std::shared_ptr<lldb::SBCommandPluginInterface>` later for reference
counting. But lldb-dap passes
`StartDebuggingRequestHandler/ReplModeRequestHandler` static function
pointer to it which will cause corruption later during destruction.

This PR fixes this issue by making these two handler heap based.

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


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

  Changed paths:
    M compiler-rt/lib/hwasan/scripts/hwasan_symbolize
    A compiler-rt/test/hwasan/TestCases/hwasan_symbolize_stack_overflow.cpp

  Log Message:
  -----------
  Reapply "[HWASan] symbolize stack overflows" (#102951) (#104036)

This reverts commit d4f6fcf5aaa0911a91317c0b06779f13077d6b58.

Relanding with fixed obj_offset calculation (precedence of operations
was wrong),
and the suggestion in
https://github.com/llvm/llvm-project/pull/95308#discussion_r1714317539


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

  Changed paths:
    M llvm/lib/Support/FormatVariadic.cpp

  Log Message:
  -----------
  [Support] Do not ignore unterminated open { in formatv (#104688)

- When an unterminated open { is detected in the format string, instead
of asserting and ignoring the error, replace that string with another to
indicate the error, and remove the assert as well.
- This will make the error evident in both assert and release builds and
make observing the error more convenient (as several uses of this
function are in TableGen and it is often built in release mode even in
debug builds)


  Commit: 31cc4ccdea92a4fee6a327a07251bb0ed1e6a933
      https://github.com/llvm/llvm-project/commit/31cc4ccdea92a4fee6a327a07251bb0ed1e6a933
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M compiler-rt/lib/fuzzer/FuzzerUtilFuchsia.cpp

  Log Message:
  -----------
  [compiler-rt][fuzzer] implements SetThreadName for fuchsia. (#99953)


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

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/vopd-combine.mir

  Log Message:
  -----------
  [AMDGPU] Add VOPD combine dependency tests. NFC. (#104841)


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

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

  Log Message:
  -----------
  [ValueTracking] Handle incompatible types instead of asserting in `isKnownNonEqual`; NFC

Downstream hit this assert, since it doesn't really make any
difference, just change code to return false.


  Commit: ea8bb4d633683f5cbfd82491620be3056f347a02
      https://github.com/llvm/llvm-project/commit/ea8bb4d633683f5cbfd82491620be3056f347a02
  Author: estewart08 <ethan.stewart at amd.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M offload/plugins-nextgen/common/CMakeLists.txt

  Log Message:
  -----------
  [offload] - Fix issue with standalone debug offload build (#104647)

Error: CommandLine Error: Option 'attributor-manifest-internal'
registered more than once

During the standalone debug build of offload the above error is seen at
app runtime when using a prebuilt llvm with LLVM_LINK_LLVM_DYLIB=ON.
This is caused by linking both libLLVM.so and various archives that are
found via llvm_map_components_to_libnames for jit support.


  Commit: 43b508566799751aa180f1eaaafc5be693f2f1ae
      https://github.com/llvm/llvm-project/commit/43b508566799751aa180f1eaaafc5be693f2f1ae
  Author: Christopher Bate <cbate at nvidia.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M mlir/lib/Conversion/AffineToStandard/CMakeLists.txt
    M mlir/lib/Conversion/ControlFlowToSCF/CMakeLists.txt
    M mlir/lib/Conversion/ControlFlowToSCF/ControlFlowToSCF.cpp
    M mlir/lib/Conversion/SCFToControlFlow/CMakeLists.txt
    M mlir/lib/Conversion/SCFToControlFlow/SCFToControlFlow.cpp
    M mlir/lib/Conversion/VectorToSCF/CMakeLists.txt
    M mlir/lib/Dialect/Affine/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/Complex/IR/CMakeLists.txt
    M mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/MemRef/IR/CMakeLists.txt
    M mlir/lib/Dialect/MemRef/TransformOps/CMakeLists.txt
    M mlir/lib/Dialect/Tensor/IR/CMakeLists.txt

  Log Message:
  -----------
  [mlir] NFC: fix dependence of (Tensor|Linalg|MemRef|Complex) dialects on LLVM Dialect and LLVM Core in CMake build (#104832)

This change removes dependencies declared as either 'LINK_LIBS' or
'LINK_COMPONENTS' across several MLIR libraries. The removed
dependencies appear
to be incorrect and may have been required in older versions of the
project.
These dependencies cause many high level dialects to have transitive
dependence on the LLVM dialect and the LLVM 'Core' library
('llvm/lib/IR').

Note that if using the 'Ninja' CMake generator, one can inspect the
dependencies
(including all transitive libraries) of any given MLIR target but using
the command `ninja -C <build dir> -t browse` and navigating to the
library
of interest in a web browser.


  Commit: 27dc247964472aaf92ea55cc37310cda25a002ab
      https://github.com/llvm/llvm-project/commit/27dc247964472aaf92ea55cc37310cda25a002ab
  Author: Joshua Baehring <98630690+JoshuaMBa at users.noreply.github.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

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

  Log Message:
  -----------
  [scudo] Add partial chunk heuristic to retrieval algorithm. (#104807)

Previously the secondary cache retrieval algorithm would not allow
retrievals of memory chunks where the number of unused bytes would be
greater than than `MaxUnusedCachePages * PageSize` bytes. This meant
that even if a memory chunk satisfied the requirements of the optimal
fit algorithm, it may not be returned. This remains true if memory
tagging is enabled. However, if memory tagging is disabled, a new
heuristic has been put in place. Specifically, If a memory chunk is a
non-optimal fit, the cache retrieval algorithm will attempt to release
the excess memory to force a cache hit while keeping RSS down.

In the event that a memory chunk is a non-optimal fit, the retrieval
algorithm will release excess memory as long as the amount of memory to
be released is less than or equal to 16 KB. If the amount of memory to
be released exceeds 16 KB, the retrieval algorithm will not consider
that cached memory chunk valid for retrieval.


  Commit: baa6627a0af6d31ddf57036c6f05a7d0fb31f8f2
      https://github.com/llvm/llvm-project/commit/baa6627a0af6d31ddf57036c6f05a7d0fb31f8f2
  Author: Billy Zhu <billyzhu at modular.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Transforms/test-legalize-target-materialization-no-uses.mlir

  Log Message:
  -----------
  [MLIR][Transforms] Fix dialect conversion inverse mapping (#104648)

Inverse mapping needs to be updated for the result that was remapped (it
was previously only updated halfway).


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

  Changed paths:
    M clang/docs/LanguageExtensions.rst

  Log Message:
  -----------
  [docs] Revise the doc for __builtin_allow_runtime_check

Fix list formatting, improve the wording, and fix the description when
both options (note: prefer "option" to "flag" when arguments are
supported) are specified.

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


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

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/CodeGen/RISCV/riscv-sdata-module-flag.c
    R clang/test/Driver/riscv-sdata-warning.c
    A clang/test/Driver/riscv-sdata.c
    M llvm/lib/Target/RISCV/RISCVTargetObjectFile.h

  Log Message:
  -----------
  [Driver] Default -msmall-data-limit= to 0 and clean up code

D57497 added -msmall-data-limit= as an alias for -G and defaulted it to 8 for
-fno-pic/-fpie.

The behavior is already different from GCC in a few ways:

* GCC doesn't accept -G.
* GCC -fpie doesn't seem to use -msmall-data-limit=.
* GCC emits .srodata.cst* that we don't use (#82214). Writable contents
  caused confusion (https://bugs.chromium.org/p/llvm/issues/detail?id=61)

In addition,

* claiming `-shared` means we don't get a desired `-Wunused-command-line-argument` for `clang --target=riscv64-linux-gnu -fpic -c -shared a.c`.
* -mcmodel=large doesn't work for RISC-V yet, so the special case is strange.
* It's quite unusual to emit a warning when an option (unrelated to relocation model) is used with -fpic.
* We don't want future configurations (Android) to continue adding customization to `SetRISCVSmallDataLimit`.

I believe the extra code just doesn't pull its weight and should be
cleaned up. This patch also changes the default to 0. GP relaxation
users are encouraged to specify these customization options explicitly.

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


  Commit: 52bfb2611f8d30fae3306c652af7ba5c7e88c147
      https://github.com/llvm/llvm-project/commit/52bfb2611f8d30fae3306c652af7ba5c7e88c147
  Author: Dmitry Yanovsky <kerambyte at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/unittests/ADT/FunctionExtrasTest.cpp

  Log Message:
  -----------
  [ADT] Fix a minor build error (#104840)

A quick follow-up fix for
https://github.com/llvm/llvm-project/pull/99403

Buildbot
[reported](https://lab.llvm.org/buildbot/#/builders/168/builds/2330) an
error:

```
/home/buildbots/llvm-external-buildbots/workers/ppc64le-lld-multistage-test/ppc64le-lld-multistage-test/llvm-project/llvm/unittests/ADT/FunctionExtrasTest.cpp:320:8: error: variable 'ptr' is uninitialized when used here [-Werror,-Wuninitialized]
  320 |       [ptr](void *self) {
      |        ^~~
/home/buildbots/llvm-external-buildbots/workers/ppc64le-lld-multistage-test/ppc64le-lld-multistage-test/llvm-project/llvm/unittests/ADT/FunctionExtrasTest.cpp:318:12: note: initialize the variable 'ptr' to silence this warning
  318 |   void *ptr;
      |            ^
      |             = nullptr
1 error generated.
```

So that PR does exactly what's sugested.


  Commit: 06fd808654ff814c2f79c2619a5b2be50c56521b
      https://github.com/llvm/llvm-project/commit/06fd808654ff814c2f79c2619a5b2be50c56521b
  Author: Christopher Bate <cbate at nvidia.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M mlir/lib/Conversion/AffineToStandard/CMakeLists.txt
    M mlir/lib/Conversion/ControlFlowToSCF/CMakeLists.txt
    M mlir/lib/Conversion/ControlFlowToSCF/ControlFlowToSCF.cpp
    M mlir/lib/Conversion/SCFToControlFlow/CMakeLists.txt
    M mlir/lib/Conversion/SCFToControlFlow/SCFToControlFlow.cpp
    M mlir/lib/Conversion/VectorToSCF/CMakeLists.txt
    M mlir/lib/Dialect/Affine/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/Complex/IR/CMakeLists.txt
    M mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/MemRef/IR/CMakeLists.txt
    M mlir/lib/Dialect/MemRef/TransformOps/CMakeLists.txt
    M mlir/lib/Dialect/Tensor/IR/CMakeLists.txt

  Log Message:
  -----------
  Revert "[mlir] NFC: fix dependence of (Tensor|Linalg|MemRef|Complex) dialects on LLVM Dialect and LLVM Core in CMake build (#104832)"

This reverts commit 43b508566799751aa180f1eaaafc5be693f2f1ae since it
caused the build to break with BUILD_SHARED_LIBS=ON.


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

  Changed paths:
    M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
    M clang/lib/AST/ByteCode/ByteCodeEmitter.h
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/lib/AST/ByteCode/Context.cpp
    M clang/lib/AST/ByteCode/Function.cpp
    M clang/lib/AST/ByteCode/Function.h
    M clang/lib/AST/ByteCode/FunctionPointer.h
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/Sema/block-misc.c
    M clang/test/Sema/block-return.c
    M clang/test/SemaCXX/consteval-cleanup.cpp

  Log Message:
  -----------
  [clang][bytecode] Support ObjC blocks (#104551)

I started out by adding a new pointer type for blocks, and I was fully
prepared to compile their AST to bytecode and later call them.

... then I found out that the current interpreter doesn't support
calling blocks at all. So we reuse `Function` to support sources other
than `FunctionDecl`s and classify `BlockPointerType` as `PT_FnPtr`.


  Commit: 5403123197f8e331d3c2c24d82439ca1fe7e702d
      https://github.com/llvm/llvm-project/commit/5403123197f8e331d3c2c24d82439ca1fe7e702d
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    A lld/test/wasm/archive-local-sym.s
    M lld/wasm/InputFiles.cpp

  Log Message:
  -----------
  [lld][WebAssembly] Ignore local symbols when parsing lazy object files. (#104876)

This was broken back in #78658 when we transitioned away from archive
indexes to parsing lazy object files.

Fixes: #94077
Fixes: https://github.com/emscripten-core/emscripten/issues/22008


  Commit: 2a6136e552d24b6bf665c42a6e32efc0b2d88fbf
      https://github.com/llvm/llvm-project/commit/2a6136e552d24b6bf665c42a6e32efc0b2d88fbf
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M lld/wasm/Writer.cpp
    M llvm/lib/ObjCopy/wasm/WasmObjcopy.cpp
    M llvm/lib/ObjCopy/wasm/WasmObject.cpp
    M llvm/lib/ObjCopy/wasm/WasmObject.h
    M llvm/lib/ObjCopy/wasm/WasmReader.cpp
    M llvm/lib/ObjectYAML/WasmEmitter.cpp
    M llvm/test/ObjectYAML/wasm/invalid_section_order.yaml
    M llvm/test/tools/llvm-objcopy/wasm/basic-only-section.test
    M llvm/test/tools/llvm-objcopy/wasm/only-keep-debug.test
    M llvm/test/tools/llvm-objcopy/wasm/strip-all.test
    M llvm/test/tools/llvm-objcopy/wasm/strip-debug.test
    M llvm/test/tools/llvm-objcopy/wasm/strip-reloc.test

  Log Message:
  -----------
  [llvm-objcopy][WebAssembly] Allow --strip-debug to operate on relocatable files. (#102978)

This change is enough to allow `--strip-debug` to work on object files,
without breaking the relocation information or symbol table.

A more complete version of this change would instead reconstruct the
symbol table and relocation sections, but that is much larger change.

Bug: #102002


  Commit: ea1f05e6189fbe2b567e795677e1d64acbadc0a2
      https://github.com/llvm/llvm-project/commit/ea1f05e6189fbe2b567e795677e1d64acbadc0a2
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/X86/fminimum-fmaximum.ll

  Log Message:
  -----------
  [SelectionDAG] Fix lowering of IEEE 754 2019 minimum/maximum

We used integer comparisons instead of floating point comparisons
resulting in very odd behavior.


  Commit: a9ce1818174b3e690545b573cc5804d73491ca1a
      https://github.com/llvm/llvm-project/commit/a9ce1818174b3e690545b573cc5804d73491ca1a
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/test/CodeGen/NVPTX/bf16-instructions.ll

  Log Message:
  -----------
  [NVPTX] Fix bugs involving maximum/minimum and bf16

We would crash on sufficiently old NV hardware (Volta or so) due to
incorrectly marking certain operations legal.


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

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

  Log Message:
  -----------
  Revert "[scudo] Add partial chunk heuristic to retrieval algorithm." (#104894)

Reverts llvm/llvm-project#104807


  Commit: bf68e9047f62c22ca87f9a4a7c59a46b3de06abb
      https://github.com/llvm/llvm-project/commit/bf68e9047f62c22ca87f9a4a7c59a46b3de06abb
  Author: Christian Ulmann <christianulmann at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Analysis/SliceWalk.h
    M mlir/include/mlir/Dialect/Arith/IR/Arith.h
    M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVLogicalOps.td
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
    M mlir/lib/Analysis/SliceWalk.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/test/Dialect/LLVMIR/inlining-alias-scopes.mlir

  Log Message:
  -----------
  [MLIR] Introduce a SelectLikeOpInterface (#104751)

This commit introduces a `SelectLikeOpInterface` that can be used to
handle select-like operations generically. Select operations are similar
to control flow operations, as they forward operands depending on
conditions. This is the reason why it was placed to the already existing
control flow interfaces.


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

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/test/Transforms/Coroutines/coro-debug-coro-frame.ll
    M llvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll
    M llvm/test/Transforms/Coroutines/coro-debug-frame-variable.ll

  Log Message:
  -----------
  [Coroutines] [NFCI] Don't search the DILocalVariable for __promise when constructing the debug varaible for __coro_frame

As the title mentioned, do not search for the DILocalVariable for
__promise when constructing the debug variable for __coro_frame.

This should make sense because the debug variable of `__coro_frame`
shouldn't dependent on the debug variable of `__promise`. And actually,
it is not. Currently, we search the debug variable for `__promise` only
because we want to get the debug location and the debug scope for the
`__promise`. However, we can construct the debug location directly from
the debug scope of the being compiled function. Then it is not necessary
any more to search the `__promise` variable.

And this patch makes the codes to construct the debug variable for
`__coro_frame` to be more stable. Now we will always be able to
construct the debug variable for the coroutine frame no matter if we
found the debug variable for the __promise or not.

This patch is not strictly NFC but it is intended to not affect any end
users.


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

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/Instrumentation/ThreadSanitizer/tsan_basic.ll
    M llvm/test/Transforms/Attributor/nonnull.ll
    M llvm/test/Transforms/CodeExtractor/PartialInlineAttributes.ll
    M llvm/test/Transforms/FunctionAttrs/nonnull.ll
    A llvm/test/Verifier/naked.ll

  Log Message:
  -----------
  [IR] Check that arguments of naked function are not used (#104757)

Verify that the arguments of a naked function are not used. They can
only be referenced via registers/stack in inline asm, not as IR values.
Doing so will result in assertion failures in the backend.

There's probably more that we should verify, though I'm not completely
sure what the constraints are (would it be correct to require that naked
functions are exactly an inline asm call + unreachable, or is more
allowed?)

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


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

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp

  Log Message:
  -----------
  [Coroutines] Fix -Wunused-variable in CoroFrame.cpp (NFC)

/llvm-project/llvm/lib/Transforms/Coroutines/CoroFrame.cpp:1124:15:
error: unused variable 'PromiseAlloca' [-Werror,-Wunused-variable]
  AllocaInst *PromiseAlloca = Shape.getPromiseAlloca();
              ^
1 error generated.


  Commit: c29aba7159473c5fc225d4aea75647939497e3ac
      https://github.com/llvm/llvm-project/commit/c29aba7159473c5fc225d4aea75647939497e3ac
  Author: PeterChou1 <peter.chou at mail.utoronto.ca>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang-tools-extra/clang-doc/HTMLGenerator.cpp
    M clang-tools-extra/test/clang-doc/basic-project.test

  Log Message:
  -----------
  [clang-doc] add support for block commands in clang-doc html output (#101108)


  Commit: f5f0055a77c14df17809d7c5a977dac88c43f905
      https://github.com/llvm/llvm-project/commit/f5f0055a77c14df17809d7c5a977dac88c43f905
  Author: Bimo <rui.xu at intel.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    R mlir/python/mlir/extras/__init__.py

  Log Message:
  -----------
  [MLIR][Python] remove unused init python file (#104890)

remove unused `__init__.py` under `mlir/python/mlir/extras`


  Commit: 513e0af0a940f3a823f8f0e83189cb33cb81496f
      https://github.com/llvm/llvm-project/commit/513e0af0a940f3a823f8f0e83189cb33cb81496f
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M lld/COFF/Symbols.cpp
    A lld/test/COFF/weak-external-cycle.test

  Log Message:
  -----------
  [LLD][COFF] Detect weak reference cycles. (#104463)

Instead of entering an infinite loop.


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

  Changed paths:
    M lld/test/ELF/exclude-libs.s
    M llvm/lib/IR/DataLayout.cpp
    M llvm/test/Assembler/invalid-datalayout-override.ll
    M llvm/test/Bitcode/function-default-address-spaces.ll
    R llvm/test/Bitcode/invalid-functionptr-align.ll
    R llvm/test/Bitcode/invalid-functionptr-align.ll.bc
    A llvm/test/Bitcode/invalid-stack-align.ll
    A llvm/test/Bitcode/invalid-stack-align.ll.bc
    M llvm/test/CodeGen/PowerPC/pr15359.ll
    M llvm/test/CodeGen/PowerPC/pr16556-2.ll
    M llvm/test/CodeGen/PowerPC/pr16556.ll
    M llvm/unittests/IR/DataLayoutTest.cpp
    M mlir/lib/Target/LLVMIR/DataLayoutImporter.cpp
    M mlir/test/Target/LLVMIR/Import/data-layout.ll

  Log Message:
  -----------
  [DataLayout] Refactor the rest of `parseSpecification` (#104545)

The aim is to improve test coverage of data layout string parsing.

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


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

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

  Log Message:
  -----------
  [LV] Simplify !UserVF.isZero() -> UserVF (NFC).

Address post-commit comment for b8dccb7d56c to simplify code.


  Commit: a6d81cdf896d901e0f5e672b9a3eccc4ae8759ce
      https://github.com/llvm/llvm-project/commit/a6d81cdf896d901e0f5e672b9a3eccc4ae8759ce
  Author: Javed Absar <106147771+javedabsar1 at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.td

  Log Message:
  -----------
  [MLIR][Bufferize][NFC] Fix documentation typo (#104881)


  Commit: b804516dc5cf2bb99ff02aa49f9d4da76d721ea9
      https://github.com/llvm/llvm-project/commit/b804516dc5cf2bb99ff02aa49f9d4da76d721ea9
  Author: Dhruv Srivastava <dhruv.srivastava at ibm.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M lldb/source/API/SBBreakpoint.cpp
    M lldb/source/API/SBBreakpointLocation.cpp
    M lldb/source/API/SBBreakpointName.cpp
    M lldb/source/Expression/DWARFExpression.cpp
    M lldb/source/Plugins/ABI/PowerPC/ABISysV_ppc64.cpp
    M lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/InstrumentationRuntime/MainThreadChecker/InstrumentationRuntimeMainThreadChecker.cpp
    M lldb/source/Plugins/InstrumentationRuntime/TSan/InstrumentationRuntimeTSan.cpp
    M lldb/source/Plugins/InstrumentationRuntime/UBSan/InstrumentationRuntimeUBSan.cpp
    M lldb/source/Plugins/MemoryHistory/asan/MemoryHistoryASan.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp
    M lldb/source/Plugins/Process/Utility/ThreadMemory.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
    M lldb/source/Plugins/SystemRuntime/MacOSX/AppleGetThreadItemInfoHandler.cpp
    M lldb/source/Symbol/DWARFCallFrameInfo.cpp

  Log Message:
  -----------
  [lldb][AIX] 1. Avoid namespace collision on other platforms (#104679)

This PR is in reference to porting LLDB on AIX.

Link to discussions on llvm discourse and github:
1.  https://discourse.llvm.org/t/port-lldb-to-ibm-aix/80640
2.  #101657 

The complete changes for porting are present in this draft PR:
https://github.com/llvm/llvm-project/pull/102601

The changes on this PR are intended to avoid namespace collision for
certain typedefs between lldb and other platforms:
1. tid_t --> lldb::tid_t
2. offset_t --> lldb::offset_t


  Commit: 522c253f47ea27d8eeb759e06f8749092b1de71e
      https://github.com/llvm/llvm-project/commit/522c253f47ea27d8eeb759e06f8749092b1de71e
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    A clang/test/CodeGenCoroutines/coro-dwarf-O2.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Coroutines/CoroInternal.h
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/test/Transforms/Coroutines/coro-debug-O2.ll

  Log Message:
  -----------
  [Coroutines] Salvage the debug information for coroutine frames within optimizations

This patch tries to salvage the debug information for the coroutine
frames within optimizations by creating the help alloca varaibles with
optimizations too. We didn't do this when I implement it initially. I
roughtly remember the reason was, we feel the additional help alloca
variable may pessimize the performance, which is almost the most
important thing under optimizations. But now, it looks like the new
inserted help alloca variables can be optimized out by the following
optimizations. So it looks like the time to make it available within
optimizations.

And also, it looks like the following optimizations will convert the
generated dbg.declare instrinsic into dbg.value intrinsic within
optimizations.

In LLVM's test, there is a slightly regression
that a dbg.declare for the promise object failed to be remained after
this change. But it looks like we won't have a chance to see dbg.declare
for the promise object when we split the coroutine as that dbg.declare
will be converted into a dbg.value in early stage.

So everything looks fine.


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

  Changed paths:
    M llvm/utils/git/github-automation.py

  Log Message:
  -----------
  [llvm][GitHub] Fix formatting of new contributor comments

GitHub won't reflow the text unless we put it all on one line.

If we try to make our own paragrpahs it comes out too narrow or
too wide.


  Commit: 66953c9582b0ad960ccbb8463158273cdc40cd8f
      https://github.com/llvm/llvm-project/commit/66953c9582b0ad960ccbb8463158273cdc40cd8f
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/ArmSME/Transforms/Passes.td

  Log Message:
  -----------
  [mlir][ArmSME][docs] Update example (NFC)


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

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/Modules/merge-using-decls.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix initializing base casts (#104901)

Use delegate() there. To fix a follow-up problem, abort when a cast ends
up on a valid Pointer that isn't a base class.


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

  Changed paths:
    M clang/test/AST/ByteCode/builtin-functions.cpp

  Log Message:
  -----------
  [Clang][test] Add bytecode interpreter tests for floating comparison functions (#104703)

See also: #94118, 71801707e33c235656b172fa7dfb8662473a95c2


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

  Changed paths:
    M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitCPass.cpp
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-failed.mlir

  Log Message:
  -----------
  [mlir][EmitC] Do not convert illegal types in EmitC (#104571)

This patch adds check for unsupported types in emitc, which fixes a
crash. Fix #103706.


  Commit: e47b507562624bf291ab2515699d39c2669b6131
      https://github.com/llvm/llvm-project/commit/e47b507562624bf291ab2515699d39c2669b6131
  Author: Simon Camphausen <simon.camphausen at iml.fraunhofer.de>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/include/mlir/Dialect/EmitC/IR/EmitCTypes.td
    M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
    M mlir/lib/Conversion/SCFToEmitC/SCFToEmitC.cpp
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc.mlir
    M mlir/test/Conversion/SCFToEmitC/for.mlir
    M mlir/test/Conversion/SCFToEmitC/if.mlir
    M mlir/test/Conversion/SCFToEmitC/switch.mlir
    M mlir/test/Dialect/EmitC/invalid_ops.mlir
    M mlir/test/Dialect/EmitC/invalid_types.mlir
    M mlir/test/Dialect/EmitC/ops.mlir
    M mlir/test/Dialect/EmitC/transforms.mlir
    M mlir/test/Dialect/EmitC/types.mlir
    M mlir/test/Target/Cpp/common-cpp.mlir
    M mlir/test/Target/Cpp/expressions.mlir
    M mlir/test/Target/Cpp/for.mlir
    M mlir/test/Target/Cpp/global.mlir
    M mlir/test/Target/Cpp/if.mlir
    M mlir/test/Target/Cpp/invalid.mlir
    M mlir/test/Target/Cpp/invalid_declare_variables_at_top.mlir
    A mlir/test/Target/Cpp/lvalue.mlir
    M mlir/test/Target/Cpp/member.mlir
    M mlir/test/Target/Cpp/subscript.mlir
    M mlir/test/Target/Cpp/switch.mlir
    M mlir/test/Target/Cpp/variable.mlir

  Log Message:
  -----------
  [mlir][EmitC] Model lvalues as a type in EmitC (#91475)

This adds an `emitc.lvalue` type which models assignable lvlaues in the
type system. Operations modifying memory are restricted to this type
accordingly.

See also the discussion on
[discourse](https://discourse.llvm.org/t/rfc-separate-variables-from-ssa-values-in-emitc/75224/9).
The most notable changes are as follows.

- `emitc.variable` and `emitc.global` ops are restricted to return
`emitc.array` or `emitc.lvalue` types
- Taking the address of a value is restricted to operands with lvalue
type
- Conversion from lvalues into SSA values is done with the new
`emitc.load` op
- The var operand of the `emitc.assign` op is restricted to lvalue type 
- The result of the `emitc.subscript` and `emitc.get_global` ops is a
lvalue type
- The operands and results of the `emitc.member` and
`emitc.member_of_ptr` ops are restricted to lvalue types

---------

Co-authored-by: Matthias Gehre <matthias.gehre at amd.com>


  Commit: b432afc28406b670a58933c2fe56c73e6f85911e
      https://github.com/llvm/llvm-project/commit/b432afc28406b670a58933c2fe56c73e6f85911e
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/ADT/GenericSSAContext.h
    M llvm/include/llvm/Analysis/CycleAnalysis.h
    M llvm/include/llvm/CodeGen/MachineSSAContext.h
    M llvm/include/llvm/IR/SSAContext.h
    M llvm/lib/Analysis/CycleAnalysis.cpp
    M llvm/lib/CodeGen/MachineCycleAnalysis.cpp
    M llvm/lib/IR/CycleInfo.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/test/Analysis/CycleInfo/basic.ll
    M llvm/test/Analysis/CycleInfo/unreachable-predecessor.ll

  Log Message:
  -----------
  [CycleAnalysis] Methods to verify cycles and their nesting. (#102300)

The original implementation provided a simple method to check whether
the forest of nested cycles is well-formed. This is now augmented with
other methods to check well-formedness of all cycles, either
invdividually, or as the entire forest. These will be used by future
transforms that modify CycleInfo.


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

  Changed paths:
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    A llvm/test/Analysis/BasicAA/gep-nuw-alias.ll

  Log Message:
  -----------
  [BasicAA] Use nuw attribute of GEPs (#98608)

Use the nuw attribute of GEPs to prove that pointers do not alias, in
cases matching the following:

   +                +                     +
   | BaseOffset     |   +<nuw> Indices    |
   ---------------->|-------------------->|
   |-->V2Size       |                     |-------> V1Size
  LHS                                    RHS

If the difference between pointers is Offset +<nuw> Indices then we know
that the addition does not wrap the pointer index type (add nuw) and the
constant Offset is a lower bound on the distance between the pointers. We
can then prove NoAlias via Offset u>= V2Size.


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

  Changed paths:
    M flang/lib/Lower/OpenMP/Decomposer.cpp
    M flang/lib/Lower/OpenMP/Decomposer.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/Todo/omp-do-simd-linear.f90
    M flang/test/Lower/OpenMP/default-clause-byref.f90
    M flang/test/Lower/OpenMP/default-clause.f90
    R llvm/include/llvm/Frontend/OpenMP/ConstructCompositionT.h

  Log Message:
  -----------
  [Flang][OpenMP] Prevent re-composition of composite constructs (#102613)

After decomposition of OpenMP compound constructs and assignment of
applicable clauses to each leaf construct, composite constructs are then
combined again into a single element in the construct queue. This helped
later lowering stages easily identify composite constructs.

However, as a result of the re-composition stage, the same list of
clauses is used to produce all MLIR operations corresponding to each
leaf of the original composite construct. This undoes existing logic
introducing implicit clauses and deciding to which leaf construct(s)
each clause applies.

This patch removes construct re-composition logic and updates Flang
lowering to be able to identify composite constructs from a list of leaf
constructs. As a result, the right set of clauses is produced for each
operation representing a leaf of a composite construct.

PR stack:
- #102612
- #102613


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

  Changed paths:
    M mlir/include/mlir/Dialect/DLTI/DLTI.h
    M mlir/include/mlir/Dialect/DLTI/DLTIAttrs.td
    M mlir/include/mlir/Dialect/DLTI/DLTIBase.td
    M mlir/include/mlir/Dialect/DLTI/TransformOps/DLTITransformOps.td
    M mlir/include/mlir/Interfaces/DataLayoutInterfaces.h
    M mlir/include/mlir/Interfaces/DataLayoutInterfaces.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
    M mlir/unittests/Interfaces/DataLayoutInterfacesTest.cpp

  Log Message:
  -----------
  [MLIR][DLTI] Introduce DLTIQueryInterface and impl for DLTI attrs (#104595)

This new interface is supposed to capture the core functionality of
DLTI: querying for values at keys. As such this new interface unifies
the ability to query DLTI attributes in a single method: query(). All
existing DLTI interfaces exposing their own query methods now 1) now
extend this new interface and 2) provide a default implementation for
`query()`.

As DLTIQueryInterface::query() returns an attribute, it naturally
enables recursive queries on nested DLTI attrs. A utility function,
`dlti::query()`, implements the logic for nested lookups.

A new `#dlti.map` attribute is introduced to capture the most generic
form of a finite DLTI-mapping. One of the benefits is that it allows for
more easily encoding hierachical information that is suitably queryable,
i.e. by means of nested attributes.

In line with the above, `transform.dlti.query` is modified so as to take
an arbitrary number of keys and to perform a nested lookup using the
above utility function.


  Commit: b9864387d9d00e1d4888181460d05dbc92364d75
      https://github.com/llvm/llvm-project/commit/b9864387d9d00e1d4888181460d05dbc92364d75
  Author: Ian Anderson <iana at apple.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Darwin.cpp
    A clang/test/Driver/Inputs/MacOSX15.1.sdk/SDKSettings.json
    M clang/test/Driver/darwin-builtin-modules.c

  Log Message:
  -----------
  [clang][modules] Built-in modules are not correctly enabled for Mac Catalyst (#104872)

Mac Catalyst is the iOS platform, but it builds against the macOS SDK
and so it needs to be checking the macOS SDK version instead of the iOS
one. Add tests against a greater-than SDK version just to make sure this
works beyond the initially supporting SDKs.


  Commit: 42067f26cd084d29fdd08a75a36b8785ae9f3982
      https://github.com/llvm/llvm-project/commit/42067f26cd084d29fdd08a75a36b8785ae9f3982
  Author: Robert Barinov <165884206+rbintel at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    A llvm/test/tools/llvm-reduce/Inputs/reduce-distinct-metadata.py
    A llvm/test/tools/llvm-reduce/reduce-distinct-metadata.ll
    M llvm/test/tools/llvm-reduce/remove-metadata.ll
    M llvm/tools/llvm-reduce/CMakeLists.txt
    M llvm/tools/llvm-reduce/DeltaManager.cpp
    A llvm/tools/llvm-reduce/deltas/ReduceDistinctMetadata.cpp
    A llvm/tools/llvm-reduce/deltas/ReduceDistinctMetadata.h
    M llvm/tools/llvm-reduce/deltas/ReduceMetadata.cpp

  Log Message:
  -----------
  [LLVM-Reduce] - Distinct Metadata Reduction (#104624)


  Commit: 4aacc60fe7e1f7b3f788bba8382ea1fa5189ef3b
      https://github.com/llvm/llvm-project/commit/4aacc60fe7e1f7b3f788bba8382ea1fa5189ef3b
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/ADT/GenericSSAContext.h
    M llvm/include/llvm/Analysis/CycleAnalysis.h
    M llvm/include/llvm/CodeGen/MachineSSAContext.h
    M llvm/include/llvm/IR/SSAContext.h
    M llvm/lib/Analysis/CycleAnalysis.cpp
    M llvm/lib/CodeGen/MachineCycleAnalysis.cpp
    M llvm/lib/IR/CycleInfo.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/test/Analysis/CycleInfo/basic.ll
    M llvm/test/Analysis/CycleInfo/unreachable-predecessor.ll

  Log Message:
  -----------
  Revert "[CycleAnalysis] Methods to verify cycles and their nesting. (#102300)"

This reverts commit b432afc28406b670a58933c2fe56c73e6f85911e.

Reverted due to linker failures in expensive-checks.


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

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/c23.c

  Log Message:
  -----------
  [clang][bytecode] Fix discarding CompoundLiteralExprs (#104909)


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

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/hoist-common-code.ll

  Log Message:
  -----------
  [SimplifyCFG] Add support for hoisting commutative instructions (#104805)

This extends SimplifyCFG hoisting to also hoist instructions with
commuted operands, for example a+b on one side and b+a on the other
side.

This should address the issue mentioned in:
https://github.com/llvm/llvm-project/pull/91185#issuecomment-2097447927


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

  Changed paths:
    A clang/test/CodeGen/X86/strictfp_patterns.c

  Log Message:
  -----------
  [X86] Add clang codegen test coverage for #104848


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

  Changed paths:
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/xmmintrin.h
    M clang/test/CodeGen/X86/strictfp_patterns.c

  Log Message:
  -----------
  [X86] Use correct fp immediate types in _mm_set_ss/sd

Avoids implicit sint_to_fp which wasn't occurring on strict fp codegen

Fixes #104848


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

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

  Log Message:
  -----------
  [gn build] Port 42067f26cd08


  Commit: f321456e1aaff050a44698f1273da9589e74ebb4
      https://github.com/llvm/llvm-project/commit/f321456e1aaff050a44698f1273da9589e74ebb4
  Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/ScheduleDAG.cpp
    M llvm/test/CodeGen/AArch64/abds.ll

  Log Message:
  -----------
  [ScheduleDAG] Dirty height/depth in addPred/removePred even for latency zero (#102915)

A long time ago (back in 2009) there was a commit 52d4d8244b7c39c5cd
that changed the scheduler to not dirty height/depth when adding or
removing SUnit predecessors when the latency on the edge was zero. That
commit message is claiming that the depth or height isn't affected when
the latency is zero.

As a matter of fact, the depth/height can change even with a zero
latency on the edge. If for example adding a new SUnit A, with zero
latency, but as a predecessor to a SUnit B, then both height of A and
depth of B should be marked as dirty. If for example B has a greater
height than A, then the height of A needs to be adjusted even if the
latency is zero.

I think this has been wrong for many years. Downstream we have had
commit 52d4d8244b7c39c5cd reverted since back in 2016. There is no
motivating lit test for 52d4d8244b7c39c5cd (only an incomplete C level
reproducer in https://github.com/llvm/llvm-project/issues/3613).

After commit 13d04fa560e156797c21f1 there finally appeared an upstream
lit test that shows that we get better code if marking height/depth as
dirty (llvm/test/CodeGen/AArch64/abds.ll).


  Commit: 3f25f23a2b8aaff300e751d4724a3ddba4d694eb
      https://github.com/llvm/llvm-project/commit/3f25f23a2b8aaff300e751d4724a3ddba4d694eb
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/Headers/avx2intrin.h
    M clang/lib/Headers/avxintrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/gfniintrin.h
    M clang/lib/Headers/mmintrin.h
    M clang/lib/Headers/pmmintrin.h
    M clang/lib/Headers/smmintrin.h
    M clang/lib/Headers/tmmintrin.h
    M clang/lib/Headers/xmmintrin.h
    M clang/test/CodeGen/X86/avx512vlbw-builtins.c

  Log Message:
  -----------
  [X86][AVX10] Fix unexpected error and warning when using intrinsic (#104781)

E.g.: https://godbolt.org/z/G8zK5svjK

Based on Evgenii's work.


  Commit: 39e3085a55880dbbc5aeddc3661342980d5e1467
      https://github.com/llvm/llvm-project/commit/39e3085a55880dbbc5aeddc3661342980d5e1467
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    R clang/test/Misc/target-invalid-cpu-note.c
    A clang/test/Misc/target-invalid-cpu-note/aarch64.c
    A clang/test/Misc/target-invalid-cpu-note/amdgcn.c
    A clang/test/Misc/target-invalid-cpu-note/arm.c
    A clang/test/Misc/target-invalid-cpu-note/avr.c
    A clang/test/Misc/target-invalid-cpu-note/bpf.c
    A clang/test/Misc/target-invalid-cpu-note/hexagon.c
    A clang/test/Misc/target-invalid-cpu-note/lanai.c
    A clang/test/Misc/target-invalid-cpu-note/mips.c
    A clang/test/Misc/target-invalid-cpu-note/nvptx.c
    A clang/test/Misc/target-invalid-cpu-note/powerpc.c
    A clang/test/Misc/target-invalid-cpu-note/r600.c
    A clang/test/Misc/target-invalid-cpu-note/riscv.c
    A clang/test/Misc/target-invalid-cpu-note/sparc.c
    A clang/test/Misc/target-invalid-cpu-note/systemz.c
    A clang/test/Misc/target-invalid-cpu-note/wasm.c
    A clang/test/Misc/target-invalid-cpu-note/x86.c

  Log Message:
  -----------
  [clang][NFC] Split invalid-cpu-note tests (#104601)

This change does two kinds of splits:
- Splits each target into a different file. Some targets are left in the
same files, such as riscv32/64 and x86/_64 as these tests and lists are
very similar.
- Splits up the very long 'note:' lines which contain a list of CPUs,
using `CHECK-SAME`. There was a note about this not being possible
before, but with `{{^}}`, this is now possible -- I have
verified that this does the right thing if a single CPU anywhere in the
list is left out.

These tests had become quite annoying to change when adding a CPU, and I
believe this change makes these easier to maintain, and should cut down
on conflicts in these files (or at least makes conflicts easier to
resolve).

I apologise in advance for downstream conflicts, but hopefully that's a
small amount of short term pain, in return for fewer conflicts in
future.


  Commit: 7cfc9a3a3d87e39611438e4bd178358329573294
      https://github.com/llvm/llvm-project/commit/7cfc9a3a3d87e39611438e4bd178358329573294
  Author: Bogdan-Alexandru Geană <1569265+abgeana at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm-c/Core.h
    M llvm/lib/IR/Core.cpp

  Log Message:
  -----------
  [llvm-c] Add getters for LLVMContextRef for various types (#99087)

Small PR to add additional getters for LLVMContextRef in the C API.


  Commit: eb7d535199d7fc3de763276093b97141a041d3d6
      https://github.com/llvm/llvm-project/commit/eb7d535199d7fc3de763276093b97141a041d3d6
  Author: Tim Besard <tim.besard at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm-c/Core.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/lib/IR/Core.cpp
    M llvm/test/Bindings/llvm-c/echo.ll
    M llvm/tools/llvm-c-test/attributes.c
    M llvm/tools/llvm-c-test/echo.cpp
    M llvm/tools/llvm-c-test/llvm-c-test.h
    M llvm/tools/llvm-c-test/module.c
    M llvm/unittests/IR/InstructionsTest.cpp

  Log Message:
  -----------
  [LLVM] Add a C API for creating instructions with custom syncscopes. (#104775)

Another upstreaming of C API extensions we have in Julia/LLVM.jl.
Although [we went](https://github.com/maleadt/LLVM.jl/pull/431) with a
string-based API there, here I'm proposing something that's similar to
existing metadata/attribute APIs:
- explicit functions to map syncscope names to IDs, and back
- `LLVM*SyncScope` versions of builder APIs that already take a
`SingleThread` argument: atomic rmw, atomic xchg, fence
- `LLVMGetAtomicSyncScopeID` and `LLVMSetAtomicSyncScopeID` for other
atomic instructions
- testing through `llvm-c-test`'s `--echo` functionality


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

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp

  Log Message:
  -----------
  [InstCombine] Adjust fixpoint error message (NFC)

Add a hint to use the no-verify-fixpoint option.


  Commit: 34e15adb5a725a5ecc7c0d5ef5571d307d751a93
      https://github.com/llvm/llvm-project/commit/34e15adb5a725a5ecc7c0d5ef5571d307d751a93
  Author: Tomas Matheson <Tomas.Matheson at arm.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [AArch64] Remove TargetParser CPU/Arch feature tests (#104587)

These are annoying to update, and are redundant since the tests in
clang/test/Driver/print-enabled-extensions/ were added.


  Commit: 5f3c0b23759faa80b0be59531f7e6643f9c95d32
      https://github.com/llvm/llvm-project/commit/5f3c0b23759faa80b0be59531f7e6643f9c95d32
  Author: SpencerAbson <Spencer.Abson at arm.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/aarch64-neon-faminmax.ll

  Log Message:
  -----------
  [AArch64][NEON] Extend faminmax patterns with fminnm/fmaxnm (#104766)

Patterns were previously added to allow the following reductions
- fminimum(abs(a), abs(b)) -> famin(a, b)
- fmaximum(abs(a), abs(b)) -> famax(a, b)
- https://github.com/llvm/llvm-project/pull/103027
 
It was suggested by @davemgreen that the following reductions are also
possible
- fminnum[nnan](abs(a), abs(b)) -> famin(a, b)
- fmaxnum[nnan](abs(a), abs(b)) -> famax(a, b)

('nnan' documenatation:
https://llvm.org/docs/LangRef.html#fast-math-flags)

The 'no NaNs' flag allows optimisations to assume that neither argument
is a NaN, and so the differing NaN propagation semantics of
llvm.maxnum/llvm.minnum and FAMAX/FAMIN can be ignored in this
reduction.
(llvm.maxnum/llvm.minnum:
https://llvm.org/docs/LangRef.html#llvm-minnum-intrinsic)

- Changes to LLVM
	- lib/target/AArch64/AArch64InstrInfo.td
- add 'fminnm_nnan' and 'fmaxnm_nnan'; patfrags on fminnm/fmaxnm that
are predicated on the instrinsic call having the 'nnan' flag.
- add AArch64famin and AArch64famax patfrags, containing the new and
existing reductions.
	- test/CodeGen/AArch64/aarch64-neon-faminmax.ll
- add positive and negative tests for the new reduction, based on the
presence of 'nnan' in the IR intrinsic call.


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

  Changed paths:
    M llvm/include/llvm/Frontend/Offloading/Utility.h
    M llvm/lib/Frontend/Offloading/CMakeLists.txt
    M llvm/lib/Frontend/Offloading/Utility.cpp
    M offload/plugins-nextgen/amdgpu/CMakeLists.txt
    M offload/plugins-nextgen/amdgpu/src/rtl.cpp
    M offload/plugins-nextgen/amdgpu/utils/UtilitiesRTL.h

  Log Message:
  -----------
  [llvm][offload] Move AMDGPU offload utilities to LLVM (#102487)

This patch moves utilities from
`offload/plugins-nextgen/amdgpu/utils/UtilitiesRTL.h` to
`llvm/Frontend/Offloading/Utility.h` to be reused by
other projects.

Concretely the following changes were made:
- Rename `KernelMetaDataTy` to `AMDGPUKernelMetaData`.
- Remove unused fields `KernelObject`, `KernelSegmentSize`,
`ExplicitArgumentCount` and `ImplicitArgumentCount` from
`AMDGPUKernelMetaData`.
- Return the produced error if `ELFObj.sections()` failed instead of
using `cantFail`.
- Added `AGPRCount` field to `AMDGPUKernelMetaData`.
- Added a default invalid value to all the fields in
`AMDGPUKernelMetaData`.


  Commit: 576b7a781aac6b1d60a72248894b50e565e9185a
      https://github.com/llvm/llvm-project/commit/576b7a781aac6b1d60a72248894b50e565e9185a
  Author: Koakuma <koachan at protonmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
    M llvm/test/CodeGen/SPARC/inlineasm.ll

  Log Message:
  -----------
  [SPARC] Remove assertions in printOperand for inline asm operands (#104692)

Inline asm operands could contain any kind of relocation, so remove the
checks.

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


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

  Changed paths:
    M lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/TestBreakpoint.py

  Log Message:
  -----------
  [lldb][Windows] Fixed the API test breakpoint_with_realpath_and_source_map (#104918)

This test is already disabled for Windows because of symlinks. Disable
it for cross build on Windows host too.


  Commit: ee572ed4ac2d9e2ff37217d6bedc20f530a5d3af
      https://github.com/llvm/llvm-project/commit/ee572ed4ac2d9e2ff37217d6bedc20f530a5d3af
  Author: hanbeom <kese111 at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/test/CodeGen/AArch64/movimm-expand-ldst.ll
    M llvm/test/CodeGen/AArch64/movimm-expand-ldst.mir

  Log Message:
  -----------
  [AArch64] Optimize when storing symmetry constants (#93717)

This change looks for instructions of storing symmetric constants
instruction 32-bit units. usually consisting of several 'MOV' and
one or less 'ORR'.

If found, load only the lower 32-bit constant and change it to copy
and save to the upper 32-bit using the 'STP' instruction.

For example:
  renamable $x8 = MOVZXi 49370, 0
  renamable $x8 = MOVKXi $x8, 320, 16
  renamable $x8 = ORRXrs $x8, $x8, 32
  STRXui killed renamable $x8, killed renamable $x0, 0
becomes
  $w8 = MOVZWi 49370, 0
  $w8 = MOVKWi $w8, 320, 16
STPWi killed renamable $w8, killed renamable $w8, killed renamable $x0,
0


related issue : https://github.com/llvm/llvm-project/issues/51483


  Commit: e6da78a326a7cbf8f3a6422d33f48d13708e0da3
      https://github.com/llvm/llvm-project/commit/e6da78a326a7cbf8f3a6422d33f48d13708e0da3
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/Analysis/CycleAnalysis.h
    M llvm/lib/Analysis/CycleAnalysis.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/test/Analysis/CycleInfo/basic.ll
    M llvm/test/Analysis/CycleInfo/unreachable-predecessor.ll

  Log Message:
  -----------
  Reapply "[CycleAnalysis] Methods to verify cycles and their nesting. (#102300)"

This reverts commit 4aacc60fe7e1f7b3f788bba8382ea1fa5189ef3b.

The original implementation provided a simple method to check whether the forest
of nested cycles is well-formed. This is now augmented with other methods to
check well-formedness of every cycle, either individually, or as the entire
forest. These will be used by future transforms that modify CycleInfo.


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

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
    M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll
    M llvm/test/CodeGen/AArch64/peephole-sxtw.mir

  Log Message:
  -----------
  [AArch64] Extend sxtw peephole to uxtw. (#104516)

This extends the existing sxtw peephole optimization (#96293) to uxtw,
which in llvm is a ORRWrr which clears the top bits.

Fixes #98481


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

  Changed paths:
    M llvm/test/Transforms/InstCombine/bit-checks.ll

  Log Message:
  -----------
  [InstCombine] Thwart complexity-based canonicalization in test (NFC)


  Commit: 27e5f505e5eee3da27c1515d6ed95d66fbe543ea
      https://github.com/llvm/llvm-project/commit/27e5f505e5eee3da27c1515d6ed95d66fbe543ea
  Author: Andy Kaylor <andrew.kaylor at intel.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UsersManual.rst
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/CodeGen/ffp-model.c
    M clang/test/Driver/fp-model.c

  Log Message:
  -----------
  [Driver] Make ffp-model=fast honor non-finite-values, introduce ffp-model=aggressive (#100453)

This change modifies -ffp-model=fast to select options that more closely
match -funsafe-math-optimizations, and introduces a new model,
-ffp-model=aggressive which matches the existing behavior (except for a
minor change in the fp-contract behavior).

The primary motivation for this change is to make -ffp-model=fast more
user friendly, particularly in light of LLVM's aggressive optimizations
when -fno-honor-nans and -fno-honor-infinites are used.

This was previously proposed here:

https://discourse.llvm.org/t/making-ffp-model-fast-more-user-friendly/78402


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

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/ctlz-codesize.ll
    M llvm/test/Analysis/CostModel/X86/ctlz-latency.ll
    M llvm/test/Analysis/CostModel/X86/ctlz-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/ctlz.ll
    M llvm/test/Analysis/CostModel/X86/cttz-codesize.ll
    M llvm/test/Analysis/CostModel/X86/cttz-latency.ll
    M llvm/test/Analysis/CostModel/X86/cttz-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/cttz.ll
    M llvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
    M llvm/test/Transforms/LoopIdiom/X86/ctlz.ll
    M llvm/test/Transforms/LoopIdiom/X86/left-shift-until-bittest.ll
    M llvm/test/Transforms/LoopIdiom/X86/left-shift-until-zero.ll

  Log Message:
  -----------
  [CostModel][X86] Add missing costkinds for scalar CTLZ/CTTZ instructions

Baed off worst case llvm-mca numbers for CTLZ/CTTZ(+ZERO_UNDEF) codegen

Prep work for #102885


  Commit: 9bb555688caf6ae4ba89fee5baa3dc29fec6a9b1
      https://github.com/llvm/llvm-project/commit/9bb555688caf6ae4ba89fee5baa3dc29fec6a9b1
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    A llvm/include/llvm/CGData/CodeGenData.h
    A llvm/include/llvm/CGData/CodeGenData.inc
    A llvm/include/llvm/CGData/CodeGenDataReader.h
    A llvm/include/llvm/CGData/CodeGenDataWriter.h
    A llvm/include/llvm/CGData/OutlinedHashTree.h
    A llvm/include/llvm/CGData/OutlinedHashTreeRecord.h
    R llvm/include/llvm/CodeGenData/OutlinedHashTree.h
    R llvm/include/llvm/CodeGenData/OutlinedHashTreeRecord.h
    A llvm/lib/CGData/CMakeLists.txt
    A llvm/lib/CGData/CodeGenData.cpp
    A llvm/lib/CGData/CodeGenDataReader.cpp
    A llvm/lib/CGData/CodeGenDataWriter.cpp
    A llvm/lib/CGData/OutlinedHashTree.cpp
    A llvm/lib/CGData/OutlinedHashTreeRecord.cpp
    M llvm/lib/CMakeLists.txt
    R llvm/lib/CodeGenData/CMakeLists.txt
    R llvm/lib/CodeGenData/OutlinedHashTree.cpp
    R llvm/lib/CodeGenData/OutlinedHashTreeRecord.cpp
    M llvm/test/CMakeLists.txt
    M llvm/test/lit.cfg.py
    A llvm/test/tools/llvm-cgdata/convert.test
    A llvm/test/tools/llvm-cgdata/empty.test
    A llvm/test/tools/llvm-cgdata/error.test
    A llvm/test/tools/llvm-cgdata/merge-archive.test
    A llvm/test/tools/llvm-cgdata/merge-concat.test
    A llvm/test/tools/llvm-cgdata/merge-double.test
    A llvm/test/tools/llvm-cgdata/merge-single.test
    A llvm/test/tools/llvm-cgdata/show.test
    A llvm/tools/llvm-cgdata/CMakeLists.txt
    A llvm/tools/llvm-cgdata/Opts.td
    A llvm/tools/llvm-cgdata/llvm-cgdata.cpp
    A llvm/unittests/CGData/CMakeLists.txt
    A llvm/unittests/CGData/OutlinedHashTreeRecordTest.cpp
    A llvm/unittests/CGData/OutlinedHashTreeTest.cpp
    M llvm/unittests/CMakeLists.txt
    R llvm/unittests/CodeGenData/CMakeLists.txt
    R llvm/unittests/CodeGenData/OutlinedHashTreeRecordTest.cpp
    R llvm/unittests/CodeGenData/OutlinedHashTreeTest.cpp

  Log Message:
  -----------
  Reland [CGData] llvm-cgdata #89884 (#101461)

Reland [CGData] llvm-cgdata #89884 using `Opt` instead of `cl`
- Action options are required, `--convert`, `--show`, `--merge`. This
was similar to sub-commands previously implemented, but having a prefix
`--`.
- `--format` option is added, which specifies `text` or `binary`.

---------

Co-authored-by: Kyungwoo Lee <kyulee at fb.com>


  Commit: 74f5ee4ffe89da4a0e9c762c69f8a68536fbf754
      https://github.com/llvm/llvm-project/commit/74f5ee4ffe89da4a0e9c762c69f8a68536fbf754
  Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILMetadataAnalysis.h
    M llvm/lib/Analysis/DXILMetadataAnalysis.cpp
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.8.ll
    A llvm/test/CodeGen/DirectX/Metadata/empty-valver1.8.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-as.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs-val-ver-0.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-gs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-hs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-lib.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ms.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ps.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-vs.ll

  Log Message:
  -----------
  [DXIL][Analysis] Add validator version to info collected by Module Metadata Analysis  (#104828)

Add Validator Version to information collected by Module Metadata
Analysis pass. An earlier change (#104040) added a default hardcoded
value for validator version to be associated with DXIL module created
during HLSL source compilation.

Add tests to verify validator version info collected
 - Updated existing tests
 - Added a test with validator version specified in DXIL metadata


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

  Changed paths:
    M clang/include/clang/ExtractAPI/API.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/lib/ExtractAPI/API.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    M clang/test/ExtractAPI/anonymous_record_no_typedef.c

  Log Message:
  -----------
  Reenable anon structs (#104922)

Add back missing includes and revert revert "[clang][ExtractAPI] Stop
dropping fields of nested anonymous record types when they aren't
attached to variable declaration (#104600)"


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

  Changed paths:
    M llvm/tools/llvm-cgdata/llvm-cgdata.cpp

  Log Message:
  -----------
  [llvm-cgdata] Fix -Wcovered-switch-default (NFC)

/llvm-project/llvm/tools/llvm-cgdata/llvm-cgdata.cpp:349:3:
error: default label in switch which covers all enumeration values [-Werror,-Wcovered-switch-default]
  default:
  ^
1 error generated.


  Commit: b5f7b6961d2bc4d852fc3a5992aecf5e2e48baee
      https://github.com/llvm/llvm-project/commit/b5f7b6961d2bc4d852fc3a5992aecf5e2e48baee
  Author: Tomas Matheson <tomas.matheson at arm.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [AArch64] fix buildbot by removing dead code

Failure with -Werror buildbot caused by #104587


  Commit: 1c3955f9dff9b653be88d5dea5bc3cd007904e90
      https://github.com/llvm/llvm-project/commit/1c3955f9dff9b653be88d5dea5bc3cd007904e90
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/include/clang/AST/OpenMPClause.h

  Log Message:
  -----------
  [clang][OpenMP] Fix typo in comment, NFC


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAnnotateUniformValues.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.h
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.h
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    R llvm/lib/Target/AMDGPU/Utils/AMDGPUMemoryUtils.cpp
    R llvm/lib/Target/AMDGPU/Utils/AMDGPUMemoryUtils.h
    M llvm/lib/Target/AMDGPU/Utils/CMakeLists.txt

  Log Message:
  -----------
  [AMDGPU] Move AMDGPUMemoryUtils out of Utils. NFC. (#104930)

It is only used by CodeGen so does not need to be shared with the
assembler/disassembler.


  Commit: d5e9691509aa774d1acedc4d3fa2d497757a2d6d
      https://github.com/llvm/llvm-project/commit/d5e9691509aa774d1acedc4d3fa2d497757a2d6d
  Author: Durgadoss R <durgadossr at nvidia.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/elect.ll

  Log Message:
  -----------
  [NVPTX] Add elect.sync Intrinsic (#104780)

This patch adds an NVVM intrinsic and NVPTX codegen for the elect.sync
PTX instruction. Lit tests are
added in elect.ll and verified through ptxas.

PTX ISA reference:

https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#parallel-synchronization-and-communication-instructions-elect-sync

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


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

  Changed paths:
    M llvm/docs/BitCodeFormat.rst

  Log Message:
  -----------
  [NFC] Remove explicit bitcode enumeration from BitCodeFormat.rst (#102618)

This explicit listing of the bitcodes is out of date, and had fallen out of date in the past as well.

Delete the explicit listing and point users to where they can find it.


  Commit: 5032fa89ad1ea1b460a0b9ef1375d7c868db1712
      https://github.com/llvm/llvm-project/commit/5032fa89ad1ea1b460a0b9ef1375d7c868db1712
  Author: Marius Brehler <marius.brehler at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/test/Dialect/EmitC/invalid_ops.mlir
    M mlir/test/Dialect/EmitC/ops.mlir

  Log Message:
  -----------
  [MLIR][EmitC] Allow ptrdiff_t as result in sub op (#104921)

This explicitly allows the `emitc.ptrdiff_t` type for the result of
substrating two pointers and changes the example accordingly.


  Commit: c670cb47d109b68158dd53885aff94542a8312c5
      https://github.com/llvm/llvm-project/commit/c670cb47d109b68158dd53885aff94542a8312c5
  Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    R llvm/test/CodeGen/DirectX/Metadata/empty-valver1.8.ll

  Log Message:
  -----------
  [DXIL][Analysis] Delete unnecessary test (#105025)

Delete an unnecessary test added in an earlier PR.


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

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

  Log Message:
  -----------
  InferAddressSpaces: Factor replacement loop into function [NFC] (#104430)


  Commit: f9e2a86b2e852dbed027e6aea5b48f32f2415b13
      https://github.com/llvm/llvm-project/commit/f9e2a86b2e852dbed027e6aea5b48f32f2415b13
  Author: Nicolas van Kempen <nvankemp at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp

  Log Message:
  -----------
  [clang][ASTMatcher] Fix execution order of hasOperands submatchers (#104148)

`hasOperands` does not always execute matchers in the order they are
written. This can cause issue in code using bindings when one operand
matcher is relying on a binding set by the other. With this change, the
first matcher present in the code is always executed first and any
binding it sets are available to the second matcher.

Simple example with current version (1 match) and new version (2
matches):
```bash
> cat tmp.cpp
int a = 13;
int b = ((int) a) - a;
int c = a - ((int) a);

> clang-query tmp.cpp
clang-query> set traversal IgnoreUnlessSpelledInSource
clang-query> m binaryOperator(hasOperands(cStyleCastExpr(has(declRefExpr(hasDeclaration(valueDecl().bind("d"))))), declRefExpr(hasDeclaration(valueDecl(equalsBoundNode("d"))))))

Match #1:

tmp.cpp:1:1: note: "d" binds here
int a = 13;
^~~~~~~~~~
tmp.cpp:2:9: note: "root" binds here
int b = ((int)a) - a;
        ^~~~~~~~~~~~
1 match.

> ./build/bin/clang-query tmp.cpp
clang-query> set traversal IgnoreUnlessSpelledInSource
clang-query> m binaryOperator(hasOperands(cStyleCastExpr(has(declRefExpr(hasDeclaration(valueDecl().bind("d"))))), declRefExpr(hasDeclaration(valueDecl(equalsBoundNode("d"))))))

Match #1:

tmp.cpp:1:1: note: "d" binds here
    1 | int a = 13;
      | ^~~~~~~~~~
tmp.cpp:2:9: note: "root" binds here
    2 | int b = ((int)a) - a;
      |         ^~~~~~~~~~~~

Match #2:

tmp.cpp:1:1: note: "d" binds here
    1 | int a = 13;
      | ^~~~~~~~~~
tmp.cpp:3:9: note: "root" binds here
    3 | int c = a - ((int)a);
      |         ^~~~~~~~~~~~
2 matches.
```

If this should be documented or regression tested anywhere please let me
know where.


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

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [docs] Fix typo in llvm.experimental.vector.compress code-block snippet


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

  Changed paths:
    M clang-tools-extra/clang-doc/HTMLGenerator.cpp
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/test/clang-doc/basic-project.test
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/Analysis/FlowSensitive/ASTOps.h
    M clang/include/clang/Basic/BuiltinsNVPTX.def
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/ExtractAPI/API.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
    M clang/lib/AST/ByteCode/ByteCodeEmitter.h
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/lib/AST/ByteCode/Context.cpp
    M clang/lib/AST/ByteCode/Function.cpp
    M clang/lib/AST/ByteCode/Function.h
    M clang/lib/AST/ByteCode/FunctionPointer.h
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/MemberPointer.cpp
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/Analysis/FlowSensitive/ASTOps.cpp
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/Targets/PPC.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/ExtractAPI/API.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    M clang/lib/Headers/avx2intrin.h
    M clang/lib/Headers/avxintrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/gfniintrin.h
    M clang/lib/Headers/mmintrin.h
    M clang/lib/Headers/pmmintrin.h
    M clang/lib/Headers/smmintrin.h
    M clang/lib/Headers/tmmintrin.h
    M clang/lib/Headers/xmmintrin.h
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp
    M clang/test/AST/ByteCode/c23.c
    M clang/test/AST/ByteCode/codegen.cpp
    M clang/test/AST/ByteCode/memberpointers.cpp
    A clang/test/CodeGen/PowerPC/transparent_union.c
    M clang/test/CodeGen/RISCV/riscv-sdata-module-flag.c
    M clang/test/CodeGen/X86/avx512vlbw-builtins.c
    A clang/test/CodeGen/X86/strictfp_patterns.c
    M clang/test/CodeGen/builtins-nvptx.c
    M clang/test/CodeGen/ffp-model.c
    A clang/test/CodeGenCoroutines/coro-dwarf-O2.cpp
    A clang/test/Driver/Inputs/MacOSX15.1.sdk/SDKSettings.json
    M clang/test/Driver/darwin-builtin-modules.c
    M clang/test/Driver/fp-model.c
    R clang/test/Driver/riscv-sdata-warning.c
    A clang/test/Driver/riscv-sdata.c
    M clang/test/ExtractAPI/anonymous_record_no_typedef.c
    R clang/test/Misc/target-invalid-cpu-note.c
    A clang/test/Misc/target-invalid-cpu-note/aarch64.c
    A clang/test/Misc/target-invalid-cpu-note/amdgcn.c
    A clang/test/Misc/target-invalid-cpu-note/arm.c
    A clang/test/Misc/target-invalid-cpu-note/avr.c
    A clang/test/Misc/target-invalid-cpu-note/bpf.c
    A clang/test/Misc/target-invalid-cpu-note/hexagon.c
    A clang/test/Misc/target-invalid-cpu-note/lanai.c
    A clang/test/Misc/target-invalid-cpu-note/mips.c
    A clang/test/Misc/target-invalid-cpu-note/nvptx.c
    A clang/test/Misc/target-invalid-cpu-note/powerpc.c
    A clang/test/Misc/target-invalid-cpu-note/r600.c
    A clang/test/Misc/target-invalid-cpu-note/riscv.c
    A clang/test/Misc/target-invalid-cpu-note/sparc.c
    A clang/test/Misc/target-invalid-cpu-note/systemz.c
    A clang/test/Misc/target-invalid-cpu-note/wasm.c
    A clang/test/Misc/target-invalid-cpu-note/x86.c
    M clang/test/Modules/merge-using-decls.cpp
    A clang/test/OpenMP/loop_collapse_1.c
    A clang/test/OpenMP/loop_collapse_2.cpp
    M clang/test/Parser/parser_overflow.c
    M clang/test/Sema/block-misc.c
    M clang/test/Sema/block-return.c
    M clang/test/SemaCXX/consteval-cleanup.cpp
    M clang/test/SemaCXX/gh102293.cpp
    A clang/test/SemaOpenMP/gh104810.cpp
    A clang/test/SemaTemplate/explicit-instantiation-cxx20.cpp
    M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
    M clang/unittests/Analysis/FlowSensitive/ASTOpsTest.cpp
    M compiler-rt/lib/asan/asan_allocator.h
    M compiler-rt/lib/fuzzer/FuzzerUtilFuchsia.cpp
    M compiler-rt/lib/hwasan/scripts/hwasan_symbolize
    M compiler-rt/test/asan/TestCases/initialization-bug-no-global.cpp
    A compiler-rt/test/hwasan/TestCases/hwasan_symbolize_stack_overflow.cpp
    A compiler-rt/test/nsan/stable_sort.cpp
    A compiler-rt/test/nsan/swap.cpp
    M compiler-rt/test/ubsan/TestCases/Integer/bit-int.c
    M flang/lib/Lower/OpenMP/Decomposer.cpp
    M flang/lib/Lower/OpenMP/Decomposer.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/Todo/omp-do-simd-linear.f90
    M flang/test/Lower/OpenMP/default-clause-byref.f90
    M flang/test/Lower/OpenMP/default-clause.f90
    M flang/test/Semantics/kinds04_q16.f90
    A libc/utils/mathtools/worst_case.sollya
    M libcxxabi/src/cxa_default_handlers.cpp
    M lld/COFF/Symbols.cpp
    M lld/ELF/LinkerScript.cpp
    A lld/test/COFF/weak-external-cycle.test
    M lld/test/ELF/exclude-libs.s
    M lld/test/ELF/riscv-section-layout.s
    M lld/test/ELF/section-name.s
    A lld/test/wasm/archive-local-sym.s
    M lld/wasm/InputFiles.cpp
    M lld/wasm/Writer.cpp
    M lldb/source/API/SBBreakpoint.cpp
    M lldb/source/API/SBBreakpointLocation.cpp
    M lldb/source/API/SBBreakpointName.cpp
    M lldb/source/Expression/DWARFExpression.cpp
    M lldb/source/Plugins/ABI/PowerPC/ABISysV_ppc64.cpp
    M lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.h
    M lldb/source/Plugins/InstrumentationRuntime/MainThreadChecker/InstrumentationRuntimeMainThreadChecker.cpp
    M lldb/source/Plugins/InstrumentationRuntime/TSan/InstrumentationRuntimeTSan.cpp
    M lldb/source/Plugins/InstrumentationRuntime/UBSan/InstrumentationRuntimeUBSan.cpp
    M lldb/source/Plugins/MemoryHistory/asan/MemoryHistoryASan.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp
    M lldb/source/Plugins/Process/Utility/ThreadMemory.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
    M lldb/source/Plugins/SystemRuntime/MacOSX/AppleGetThreadItemInfoHandler.cpp
    M lldb/source/Symbol/DWARFCallFrameInfo.cpp
    M lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/TestBreakpoint.py
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/lldb-dap.cpp
    M lldb/unittests/Callback/TestBreakpointSetCallback.cpp
    M lldb/unittests/Disassembler/x86/TestGetControlFlowKindx86.cpp
    M lldb/unittests/Process/elf-core/ThreadElfCoreTest.cpp
    M llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/BitCodeFormat.rst
    M llvm/docs/CodeReview.rst
    M llvm/docs/DirectX/DXILOpTableGenDesign.rst
    M llvm/docs/ExtendingLLVM.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/NVPTXUsage.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm-c/Core.h
    M llvm/include/llvm/ADT/FunctionExtras.h
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/ADT/STLExtras.h
    M llvm/include/llvm/ADT/SmallPtrSet.h
    M llvm/include/llvm/Analysis/CycleAnalysis.h
    M llvm/include/llvm/Analysis/DXILMetadataAnalysis.h
    A llvm/include/llvm/CGData/CodeGenData.h
    A llvm/include/llvm/CGData/CodeGenData.inc
    A llvm/include/llvm/CGData/CodeGenDataReader.h
    A llvm/include/llvm/CGData/CodeGenDataWriter.h
    A llvm/include/llvm/CGData/OutlinedHashTree.h
    A llvm/include/llvm/CGData/OutlinedHashTreeRecord.h
    R llvm/include/llvm/CodeGenData/OutlinedHashTree.h
    R llvm/include/llvm/CodeGenData/OutlinedHashTreeRecord.h
    M llvm/include/llvm/Frontend/Offloading/Utility.h
    R llvm/include/llvm/Frontend/OpenMP/ConstructCompositionT.h
    M llvm/include/llvm/IR/DataLayout.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/Support/DXILABI.h
    M llvm/include/llvm/Support/MathExtras.h
    M llvm/include/llvm/Transforms/Instrumentation.h
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    M llvm/lib/Analysis/CycleAnalysis.cpp
    M llvm/lib/Analysis/DXILMetadataAnalysis.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    A llvm/lib/CGData/CMakeLists.txt
    A llvm/lib/CGData/CodeGenData.cpp
    A llvm/lib/CGData/CodeGenDataReader.cpp
    A llvm/lib/CGData/CodeGenDataWriter.cpp
    A llvm/lib/CGData/OutlinedHashTree.cpp
    A llvm/lib/CGData/OutlinedHashTreeRecord.cpp
    M llvm/lib/CMakeLists.txt
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/CodeGen/ScheduleDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    R llvm/lib/CodeGenData/CMakeLists.txt
    R llvm/lib/CodeGenData/OutlinedHashTree.cpp
    R llvm/lib/CodeGenData/OutlinedHashTreeRecord.cpp
    M llvm/lib/Frontend/Offloading/CMakeLists.txt
    M llvm/lib/Frontend/Offloading/Utility.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/DataLayout.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/ObjCopy/wasm/WasmObjcopy.cpp
    M llvm/lib/ObjCopy/wasm/WasmObject.cpp
    M llvm/lib/ObjCopy/wasm/WasmObject.h
    M llvm/lib/ObjCopy/wasm/WasmReader.cpp
    M llvm/lib/ObjectYAML/WasmEmitter.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Support/FormatVariadic.cpp
    M llvm/lib/Support/SmallPtrSet.cpp
    M llvm/lib/TableGen/TGLexer.cpp
    M llvm/lib/TableGen/TGParser.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAnnotateUniformValues.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.h
    R llvm/lib/Target/AMDGPU/AMDGPUCodeGenPassBuilder.cpp
    R llvm/lib/Target/AMDGPU/AMDGPUCodeGenPassBuilder.h
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.h
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    R llvm/lib/Target/AMDGPU/R600CodeGenPassBuilder.cpp
    R llvm/lib/Target/AMDGPU/R600CodeGenPassBuilder.h
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/lib/Target/AMDGPU/R600TargetMachine.cpp
    M llvm/lib/Target/AMDGPU/R600TargetMachine.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    R llvm/lib/Target/AMDGPU/Utils/AMDGPUMemoryUtils.cpp
    R llvm/lib/Target/AMDGPU/Utils/AMDGPUMemoryUtils.h
    M llvm/lib/Target/AMDGPU/Utils/CMakeLists.txt
    M llvm/lib/Target/ARM/ARMCallLowering.cpp
    M llvm/lib/Target/ARM/ARMCallLowering.h
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILConstants.h
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
    M llvm/lib/Target/RISCV/RISCVSchedSiFiveP400.td
    M llvm/lib/Target/RISCV/RISCVTargetObjectFile.h
    M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
    M llvm/lib/Target/X86/X86FrameLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.h
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Coroutines/CoroInternal.h
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/Instrumentation.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    A llvm/test/Analysis/BasicAA/gep-nuw-alias.ll
    M llvm/test/Analysis/CostModel/AArch64/arith-fp.ll
    M llvm/test/Analysis/CostModel/X86/ctlz-codesize.ll
    M llvm/test/Analysis/CostModel/X86/ctlz-latency.ll
    M llvm/test/Analysis/CostModel/X86/ctlz-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/ctlz.ll
    M llvm/test/Analysis/CostModel/X86/cttz-codesize.ll
    M llvm/test/Analysis/CostModel/X86/cttz-latency.ll
    M llvm/test/Analysis/CostModel/X86/cttz-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/cttz.ll
    M llvm/test/Analysis/CostModel/X86/icmp-codesize.ll
    M llvm/test/Analysis/CostModel/X86/icmp-latency.ll
    M llvm/test/Analysis/CostModel/X86/icmp-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/icmp.ll
    M llvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
    M llvm/test/Analysis/CycleInfo/basic.ll
    M llvm/test/Analysis/CycleInfo/unreachable-predecessor.ll
    M llvm/test/Assembler/invalid-datalayout-override.ll
    M llvm/test/Bindings/llvm-c/echo.ll
    M llvm/test/Bitcode/function-default-address-spaces.ll
    R llvm/test/Bitcode/invalid-functionptr-align.ll
    R llvm/test/Bitcode/invalid-functionptr-align.ll.bc
    A llvm/test/Bitcode/invalid-stack-align.ll
    A llvm/test/Bitcode/invalid-stack-align.ll.bc
    M llvm/test/CMakeLists.txt
    A llvm/test/CodeGen/AArch64/GlobalISel/endian_fallback.ll
    M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll
    M llvm/test/CodeGen/AArch64/aarch64-neon-faminmax.ll
    M llvm/test/CodeGen/AArch64/abds.ll
    M llvm/test/CodeGen/AArch64/movimm-expand-ldst.ll
    M llvm/test/CodeGen/AArch64/movimm-expand-ldst.mir
    M llvm/test/CodeGen/AArch64/peephole-sxtw.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-addrspacecast.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mbcnt.ll
    M llvm/test/CodeGen/AMDGPU/vopd-combine.mir
    M llvm/test/CodeGen/ARM/GlobalISel/arm-irtranslator.ll
    M llvm/test/CodeGen/ARM/GlobalISel/arm-param-lowering.ll
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.8.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-as.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs-val-ver-0.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-gs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-hs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-lib.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ms.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ps.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-vs.ll
    M llvm/test/CodeGen/NVPTX/bf16-instructions.ll
    A llvm/test/CodeGen/NVPTX/convert-sm89.ll
    A llvm/test/CodeGen/NVPTX/elect.ll
    M llvm/test/CodeGen/PowerPC/pr15359.ll
    M llvm/test/CodeGen/PowerPC/pr16556-2.ll
    M llvm/test/CodeGen/PowerPC/pr16556.ll
    M llvm/test/CodeGen/SPARC/inlineasm.ll
    M llvm/test/CodeGen/X86/abds-neg.ll
    M llvm/test/CodeGen/X86/abds.ll
    M llvm/test/CodeGen/X86/abdu-neg.ll
    M llvm/test/CodeGen/X86/abdu.ll
    A llvm/test/CodeGen/X86/avx512f-large-stack.ll
    M llvm/test/CodeGen/X86/fminimum-fmaximum.ll
    M llvm/test/CodeGen/X86/huge-stack.ll
    M llvm/test/CodeGen/X86/win64-stackprobe-overflow.ll
    M llvm/test/DebugInfo/COFF/AArch64/arm64-register-variables.ll
    M llvm/test/DebugInfo/COFF/ARMNT/arm-register-variables.ll
    M llvm/test/Instrumentation/AddressSanitizer/asan-funclet.ll
    M llvm/test/Instrumentation/AddressSanitizer/fake-stack.ll
    M llvm/test/Instrumentation/AddressSanitizer/global_metadata.ll
    M llvm/test/Instrumentation/AddressSanitizer/global_metadata_array.ll
    M llvm/test/Instrumentation/AddressSanitizer/global_with_comdat.ll
    M llvm/test/Instrumentation/AddressSanitizer/instrument_global.ll
    M llvm/test/Instrumentation/AddressSanitizer/instrument_initializer_without_global.ll
    M llvm/test/Instrumentation/AddressSanitizer/instrument_late_initializer.ll
    M llvm/test/Instrumentation/AddressSanitizer/local_alias.ll
    M llvm/test/Instrumentation/AddressSanitizer/odr-check-ignore.ll
    M llvm/test/Instrumentation/AddressSanitizer/win-string-literal.ll
    M llvm/test/Instrumentation/ThreadSanitizer/tsan_basic.ll
    M llvm/test/ObjectYAML/wasm/invalid_section_order.yaml
    M llvm/test/TableGen/dump.td
    A llvm/test/TableGen/invalid-macro-name-command-line.td
    M llvm/test/Transforms/Attributor/nonnull.ll
    M llvm/test/Transforms/CodeExtractor/PartialInlineAttributes.ll
    M llvm/test/Transforms/Coroutines/coro-debug-O2.ll
    M llvm/test/Transforms/Coroutines/coro-debug-coro-frame.ll
    M llvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll
    M llvm/test/Transforms/Coroutines/coro-debug-frame-variable.ll
    M llvm/test/Transforms/FunctionAttrs/nonnull.ll
    M llvm/test/Transforms/InstCombine/bit-checks.ll
    M llvm/test/Transforms/InstCombine/crash.ll
    M llvm/test/Transforms/InstCombine/phi.ll
    M llvm/test/Transforms/LoopIdiom/X86/ctlz.ll
    M llvm/test/Transforms/LoopIdiom/X86/left-shift-until-bittest.ll
    M llvm/test/Transforms/LoopIdiom/X86/left-shift-until-zero.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-safe-dep-distance.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/expamd-masked-load.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/expand-masked-gather.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/expand-masked-scatter.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/expand-masked-store.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/lit.local.cfg
    M llvm/test/Transforms/SimplifyCFG/hoist-common-code.ll
    A llvm/test/Verifier/naked.ll
    M llvm/test/lit.cfg.py
    A llvm/test/tools/llvm-cgdata/convert.test
    A llvm/test/tools/llvm-cgdata/empty.test
    A llvm/test/tools/llvm-cgdata/error.test
    A llvm/test/tools/llvm-cgdata/merge-archive.test
    A llvm/test/tools/llvm-cgdata/merge-concat.test
    A llvm/test/tools/llvm-cgdata/merge-double.test
    A llvm/test/tools/llvm-cgdata/merge-single.test
    A llvm/test/tools/llvm-cgdata/show.test
    A llvm/test/tools/llvm-mca/JSON/X86/views-bottleneck.s
    M llvm/test/tools/llvm-mca/JSON/X86/views-custom-parameters.s
    M llvm/test/tools/llvm-mca/JSON/X86/views-multiple-anonymous-regions.s
    M llvm/test/tools/llvm-mca/JSON/X86/views-multiple-region.s
    M llvm/test/tools/llvm-mca/JSON/X86/views.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/load.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vislide-vx.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vlseg-vsseg.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vmv.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vreduce.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vrgather.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vshift-vmul.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvbb.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvbc.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvkg.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvkned.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvknhb.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvksed.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvksh.s
    M llvm/test/tools/llvm-objcopy/wasm/basic-only-section.test
    M llvm/test/tools/llvm-objcopy/wasm/only-keep-debug.test
    M llvm/test/tools/llvm-objcopy/wasm/strip-all.test
    M llvm/test/tools/llvm-objcopy/wasm/strip-debug.test
    M llvm/test/tools/llvm-objcopy/wasm/strip-reloc.test
    A llvm/test/tools/llvm-reduce/Inputs/reduce-distinct-metadata.py
    A llvm/test/tools/llvm-reduce/reduce-distinct-metadata.ll
    M llvm/test/tools/llvm-reduce/remove-metadata.ll
    M llvm/tools/llvm-c-test/attributes.c
    M llvm/tools/llvm-c-test/echo.cpp
    M llvm/tools/llvm-c-test/llvm-c-test.h
    M llvm/tools/llvm-c-test/module.c
    A llvm/tools/llvm-cgdata/CMakeLists.txt
    A llvm/tools/llvm-cgdata/Opts.td
    A llvm/tools/llvm-cgdata/llvm-cgdata.cpp
    M llvm/tools/llvm-mca/Views/BottleneckAnalysis.cpp
    M llvm/tools/llvm-mca/Views/BottleneckAnalysis.h
    M llvm/tools/llvm-reduce/CMakeLists.txt
    M llvm/tools/llvm-reduce/DeltaManager.cpp
    A llvm/tools/llvm-reduce/deltas/ReduceDistinctMetadata.cpp
    A llvm/tools/llvm-reduce/deltas/ReduceDistinctMetadata.h
    M llvm/tools/llvm-reduce/deltas/ReduceMetadata.cpp
    M llvm/unittests/ADT/CountCopyAndMove.cpp
    M llvm/unittests/ADT/CountCopyAndMove.h
    M llvm/unittests/ADT/FunctionExtrasTest.cpp
    A llvm/unittests/CGData/CMakeLists.txt
    A llvm/unittests/CGData/OutlinedHashTreeRecordTest.cpp
    A llvm/unittests/CGData/OutlinedHashTreeTest.cpp
    M llvm/unittests/CMakeLists.txt
    R llvm/unittests/CodeGenData/CMakeLists.txt
    R llvm/unittests/CodeGenData/OutlinedHashTreeRecordTest.cpp
    R llvm/unittests/CodeGenData/OutlinedHashTreeTest.cpp
    M llvm/unittests/IR/DataLayoutTest.cpp
    M llvm/unittests/IR/InstructionsTest.cpp
    M llvm/unittests/Support/MathExtrasTest.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp
    M llvm/utils/TableGen/DXILEmitter.cpp
    M llvm/utils/git/github-automation.py
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-reduce/BUILD.gn
    M mlir/include/mlir/Analysis/SliceWalk.h
    M mlir/include/mlir/Dialect/Arith/IR/Arith.h
    M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
    M mlir/include/mlir/Dialect/ArmSME/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.td
    M mlir/include/mlir/Dialect/DLTI/DLTI.h
    M mlir/include/mlir/Dialect/DLTI/DLTIAttrs.td
    M mlir/include/mlir/Dialect/DLTI/DLTIBase.td
    M mlir/include/mlir/Dialect/DLTI/TransformOps/DLTITransformOps.td
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/include/mlir/Dialect/EmitC/IR/EmitCTypes.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVLogicalOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVNonUniformOps.td
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
    M mlir/include/mlir/Interfaces/DataLayoutInterfaces.h
    M mlir/include/mlir/Interfaces/DataLayoutInterfaces.td
    M mlir/lib/Analysis/SliceWalk.cpp
    M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
    M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
    M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitCPass.cpp
    M mlir/lib/Conversion/SCFToEmitC/SCFToEmitC.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/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/lib/Dialect/SPIRV/IR/GroupOps.cpp
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/lib/Target/LLVMIR/DataLayoutImporter.cpp
    M mlir/lib/Target/SPIRV/SPIRVBinaryUtils.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    R mlir/python/mlir/extras/__init__.py
    M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir
    M mlir/test/Conversion/MathToSPIRV/math-to-opencl-spirv.mlir
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-failed.mlir
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc.mlir
    M mlir/test/Conversion/SCFToEmitC/for.mlir
    M mlir/test/Conversion/SCFToEmitC/if.mlir
    M mlir/test/Conversion/SCFToEmitC/switch.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/EmitC/invalid_ops.mlir
    M mlir/test/Dialect/EmitC/invalid_types.mlir
    M mlir/test/Dialect/EmitC/ops.mlir
    M mlir/test/Dialect/EmitC/transforms.mlir
    M mlir/test/Dialect/EmitC/types.mlir
    M mlir/test/Dialect/LLVMIR/inlining-alias-scopes.mlir
    M mlir/test/Dialect/SPIRV/IR/non-uniform-ops.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/multi-tile-matmul-mixed-types.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/outerproduct-i8i8i32.mlir
    M mlir/test/Target/Cpp/common-cpp.mlir
    M mlir/test/Target/Cpp/expressions.mlir
    M mlir/test/Target/Cpp/for.mlir
    M mlir/test/Target/Cpp/global.mlir
    M mlir/test/Target/Cpp/if.mlir
    M mlir/test/Target/Cpp/invalid.mlir
    M mlir/test/Target/Cpp/invalid_declare_variables_at_top.mlir
    A mlir/test/Target/Cpp/lvalue.mlir
    M mlir/test/Target/Cpp/member.mlir
    M mlir/test/Target/Cpp/subscript.mlir
    M mlir/test/Target/Cpp/switch.mlir
    M mlir/test/Target/Cpp/variable.mlir
    M mlir/test/Target/LLVMIR/Import/data-layout.ll
    M mlir/test/Target/LLVMIR/Import/import-failure.ll
    M mlir/test/Transforms/test-legalize-target-materialization-no-uses.mlir
    M mlir/unittests/Interfaces/DataLayoutInterfacesTest.cpp
    M offload/plugins-nextgen/amdgpu/CMakeLists.txt
    M offload/plugins-nextgen/amdgpu/src/rtl.cpp
    M offload/plugins-nextgen/amdgpu/utils/UtilitiesRTL.h
    M offload/plugins-nextgen/common/CMakeLists.txt

  Log Message:
  -----------
  Rebase, address comments

Created using spr 1.3.5


Compare: https://github.com/llvm/llvm-project/compare/ceed187f7b18...afb5bd282d95

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