[all-commits] [llvm/llvm-project] a09c0f: [libc] Add Minimum Time and Iterations, Reduce Eps...

Vitaly Buka via All-commits all-commits at lists.llvm.org
Mon Jul 29 10:32:48 PDT 2024


  Branch: refs/heads/users/vitalybuka/spr/nfcinstcombinesroaasan-precommit-test-affected-by-100773
  Home:   https://github.com/llvm/llvm-project
  Commit: a09c0f676d3c61ba8f74a24172543c1e44d70628
      https://github.com/llvm/llvm-project/commit/a09c0f676d3c61ba8f74a24172543c1e44d70628
  Author: jameshu15869 <55058507+jameshu15869 at users.noreply.github.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [libc] Add Minimum Time and Iterations, Reduce Epsilon (#100838)

This PR adds minimums (50 iterations, 500 us, and epsilon of 0.0001) to
ensure that all benchmarks run at least a set number of times before
outputting a final measurement.


  Commit: 558315a0ea8cae8613c3a0061bc6cbe50c5b392f
      https://github.com/llvm/llvm-project/commit/558315a0ea8cae8613c3a0061bc6cbe50c5b392f
  Author: Shivam Gupta <shivam98.tkg at gmail.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

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

  Log Message:
  -----------
  [LLDB] Remove the redundent 'properties' variable (#95675)

This is described in (N3) https://pvs-studio.com/en/blog/posts/cpp/1126/

Warning message -
V547 Expression 'properties ++ > 0' is always false.
CommandObjectTarget.cpp:100

I could not understand it properly but the properties++ operation is
performed twice when the target architecture is valid.
First increment seems unnecessary since it is always false '0>0'.

---------

Co-authored-by: xgupta <shivma98.tkg at gmail.com>


  Commit: 9a3e66e314e698ffb08dba151bc098b6b8867c61
      https://github.com/llvm/llvm-project/commit/9a3e66e314e698ffb08dba151bc098b6b8867c61
  Author: Sayhaan Siddiqui <49014204+sayhaan at users.noreply.github.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M bolt/include/bolt/Core/DebugData.h
    M bolt/lib/Core/DIEBuilder.cpp
    M bolt/lib/Core/DebugData.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    A bolt/test/X86/dwarf5-df-larger-batch-size.test

  Log Message:
  -----------
  [BOLT][DWARF][NFC] Fix DebugStrOffsetsWriter (#100672)

Fix DebugStrOffsetsWriter so updateAddressMap can't be called after it
is finalized.


  Commit: 13996378d81c8fa9a364aeaafd7382abbc1db83a
      https://github.com/llvm/llvm-project/commit/13996378d81c8fa9a364aeaafd7382abbc1db83a
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/test/CodeGen/RISCV/double-arith.ll
    M llvm/test/CodeGen/RISCV/float-arith.ll
    M llvm/test/CodeGen/RISCV/half-arith.ll

  Log Message:
  -----------
  [RISCV][ISel] Fold FSGNJX idioms (#100718)

This patch folds `fmul X, (fcopysign 1.0, Y)` into `fsgnjx X, Y`. This
pattern exists in some graphics applications/math libraries.
Alive2: https://alive2.llvm.org/ce/z/epyL33

Since fpimm +1.0 is lowered to a load from constant pool after
OpLegalization, I have to introduce a new RISCVISD node FSGNJX and fold
this pattern in DAGCombine.

Closes https://github.com/dtcxzyw/llvm-opt-benchmark/issues/1072.


  Commit: 299c700a22460edb7bb6fe937cd23a5b823d4081
      https://github.com/llvm/llvm-project/commit/299c700a22460edb7bb6fe937cd23a5b823d4081
  Author: wr7 <winterred7 at gmail.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/include/llvm-c/Target.h

  Log Message:
  -----------
  [llvm-c][documentation] fix typo in `LLVMSizeOfTypeInBits` (#100839)

`LLVMSizeOfTypeInBits`:
- `Computes the size of a type in bytes for a target` -> `Computes the
size of a type in bits for a target`


  Commit: fe07d9aa410518c5b631a065ddc5782a623af030
      https://github.com/llvm/llvm-project/commit/fe07d9aa410518c5b631a065ddc5782a623af030
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/ArmSME/Transforms/OuterProductFusion.cpp
    M mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
    M mlir/lib/Dialect/Vector/Utils/VectorUtils.cpp

  Log Message:
  -----------
  [mlir][vector] Switch to using `getNumScalableDims` (nfc) (#100806)


  Commit: f2d2ae3f5a8e45c1386bf71e403d78cfee52cb7b
      https://github.com/llvm/llvm-project/commit/f2d2ae3f5a8e45c1386bf71e403d78cfee52cb7b
  Author: David Green <david.green at arm.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/PhaseOrdering/AArch64/slpordering.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/loadorder.ll

  Log Message:
  -----------
  [SLP] Order clustered load base pointers by ascending offsets (#100653)

This attempts to fix a regression from #98025, where the new order of
reduction nodes causes later passes to not be able to produce as nice
shuffles. The issue boils down to picking an order of [0 1 3 2] for
loaded v4i8 values, which meant later parts could not find a simpler
ordering for the shuffles given the legal nodes available in AArch64. If
instead we make sure they are ordered [0 1 2 3] then everything can fall
into place.

In order to produce a better order that is more likely to work in more
cases, this patch takes the existing clustered loads and sort the base
pointers if there is an order between them. i.e if `V2 == gep (V1, X)`
then V1 is sorted before V2.


  Commit: 66ce4f771ee294fc4a2e0ead86976fc731ff5d87
      https://github.com/llvm/llvm-project/commit/66ce4f771ee294fc4a2e0ead86976fc731ff5d87
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-alloca.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-call.ll

  Log Message:
  -----------
  [VPlan] Port invalid cost remarks to VPlan. (#99322)

This patch moves the logic to create remarks for instructions with
invalid costs to work on recipes and decoupling it from
selectVectorizationFactor. This is needed to replace the remaining uses
of selectVectorizationFactor with getBestPlan using the VPlan-based cost
model.

The current implementation iterates over all VPlans and their recipes
again, to find recipes with invalid costs, which is more work but will
only be done when remarks for LV are enabled. Once the remaining uses of
selectVectorizationFactor are retired, we can collect VPlans with
invalid costs as part of getBestPlan if we want to optimize the remarks
case a bit, at the cost of adding additional complexity.

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


  Commit: 79afb94da1c508e90945df2f05d9cf80d2942ba1
      https://github.com/llvm/llvm-project/commit/79afb94da1c508e90945df2f05d9cf80d2942ba1
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M libc/benchmarks/gpu/CMakeLists.txt
    M libc/cmake/modules/LLVMLibCTestRules.cmake

  Log Message:
  -----------
  [libc] Make NVPTX benchmarks use LTO for linking

Summary:
Now that we can do LTO, we can make the benchmarks more accurate by
allowing optimization + inlining of the implementation.


  Commit: ae4f2495a460d973e471626fb6fdaeec6d5c494e
      https://github.com/llvm/llvm-project/commit/ae4f2495a460d973e471626fb6fdaeec6d5c494e
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M mlir/lib/IR/Verifier.cpp

  Log Message:
  -----------
  [IR] Verifier: Use a SmallPtrSet for a small set of pointers. NFC


  Commit: ea98dc8b8f508b8393651992830e5e51d3876728
      https://github.com/llvm/llvm-project/commit/ea98dc8b8f508b8393651992830e5e51d3876728
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/CodeGen/arm64ec-hybrid-patchable.c
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test

  Log Message:
  -----------
  [clang][ARM64EC] Add support for hybrid_patchable attribute. (#99478)


  Commit: e83ba1e9ebda4f757c0738b21ffd9eafcf2be3b1
      https://github.com/llvm/llvm-project/commit/e83ba1e9ebda4f757c0738b21ffd9eafcf2be3b1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/exp10-libcall-names.ll
    M llvm/test/CodeGen/X86/exp10-libcall-names.ll

  Log Message:
  -----------
  [Darwin] Add exp10(f) tests for BridgeOS & Driverkit.


  Commit: 154d00d5d0416c42388d6e82cac96fbc091101d2
      https://github.com/llvm/llvm-project/commit/154d00d5d0416c42388d6e82cac96fbc091101d2
  Author: Nathan James <n.james93 at hotmail.co.uk>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/add_new_check.py
    M clang-tools-extra/test/clang-tidy/check_clang_tidy.py

  Log Message:
  -----------
  Extend support for specifying languages and version in add_new_check.py (#100129)

- Allow specifying a language standard when adding a new check
- Simplify the language standards(and or-later) handlnig in
check_clang_tidy


  Commit: 803eaf29267c6aae9162d1a83a4a2ae508b440d3
      https://github.com/llvm/llvm-project/commit/803eaf29267c6aae9162d1a83a4a2ae508b440d3
  Author: Vladislav Khmelevsky <och95 at yandex.ru>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M bolt/test/AArch64/dummy-return.s

  Log Message:
  -----------
  [BOLT][NFC] Fix test requirement (#100867)

Tests that are using instrumentation should have bolt-runtime in
requirements


  Commit: 1e8df9e85a1ff213e5868bd822877695f27504ad
      https://github.com/llvm/llvm-project/commit/1e8df9e85a1ff213e5868bd822877695f27504ad
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp

  Log Message:
  -----------
  [llvm-exegesis] Use correct rseq struct size (#100804)

Glibc v2.40 changes the definition of __rseq_size to the usable area of
the struct rather than the actual size of the struct to accommodate
users trying to figure out what features can be used. This change breaks
llvm-exegesis trying to disable rseq as the size registered in the
kernel is no longer equal to __rseq_size. This patch adds a check to see
if __rseq_size is less than 32 bytes and uses 32 as a value if it is
given alignment requirements.

Fixes #100791.


  Commit: 6efc3774bd8c5fcb105cda73ec27c05ef850dc19
      https://github.com/llvm/llvm-project/commit/6efc3774bd8c5fcb105cda73ec27c05ef850dc19
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ICF.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h

  Log Message:
  -----------
  [ELF] Add Relocs and invokeOnRelocs. NFC

Relocs is to simplify CREL support (#98115) while invokeOnRelocs
simplifies some relsOrRelas call sites that will use the CREL iterator.


  Commit: c7231e49099d56fdc5b2207142184a0bf2544ec1
      https://github.com/llvm/llvm-project/commit/c7231e49099d56fdc5b2207142184a0bf2544ec1
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/InputSection.cpp

  Log Message:
  -----------
  [ELF] Use invokeOnRelocs. NFC


  Commit: bccff3baeff8164af56e2deee03a0faee93710d0
      https://github.com/llvm/llvm-project/commit/bccff3baeff8164af56e2deee03a0faee93710d0
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Interpreter/Interfaces/ScriptedInterface.h
    A lldb/include/lldb/Interpreter/Interfaces/ScriptedInterfaceUsages.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/Commands/CommandObjectScripting.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Interpreter/CMakeLists.txt
    A lldb/source/Interpreter/Interfaces/CMakeLists.txt
    A lldb/source/Interpreter/Interfaces/ScriptedInterfaceUsages.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb/Commands] Add `scripting template list` command with auto discovery

This patch introduces a new `template` multiword sub-command to the
`scripting` top-level command. As the name suggests, this sub-command
operates on scripting templates, and currently has the ability to
automatically discover the various scripting extensions that lldb
supports.

This was previously reviewed in #97273.

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


  Commit: f1a7d146e002e109ac8776c9ed7ddd078b6d4247
      https://github.com/llvm/llvm-project/commit/f1a7d146e002e109ac8776c9ed7ddd078b6d4247
  Author: Hongyu Chen <hongyc4 at uci.edu>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
  [ELF] Updated some while conditions with till (#100893)

This change is based on
[commit](https://github.com/llvm/llvm-project/commit/b32c38ab5b4cf5c66469180ba3594e98eff2c124)
for a cleaner API usage. Thanks to @MaskRay !


  Commit: ecf125eaf0b10f18f4ef27f0ebc20f6ab8108247
      https://github.com/llvm/llvm-project/commit/ecf125eaf0b10f18f4ef27f0ebc20f6ab8108247
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb] Add ScriptedPlatform to `scripting template list`

This patch is a follow-up to bccff3baeff8 which adds the
`ScriptedPlatform` extension to the `scripting template list` command as
well as its description.

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


  Commit: 9328c20cc80c4fb8dc86c3141e1be1739e07b3fc
      https://github.com/llvm/llvm-project/commit/9328c20cc80c4fb8dc86c3141e1be1739e07b3fc
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptLexer.cpp
    M lld/ELF/ScriptLexer.h
    M lld/test/ELF/linkerscript/overlay.test
    M lld/test/ELF/linkerscript/sections.s

  Log Message:
  -----------
  [ELF] Track line number precisely

`getLineNumber` is both imprecise (when `INCLUDE` is used) and
inefficient (see https://reviews.llvm.org/D104137). Track line number
precisely now that we have `struct Buffer` abstraction from #100493.


  Commit: 995f643f5aa73d0b73199417b0c87acc07dd44bd
      https://github.com/llvm/llvm-project/commit/995f643f5aa73d0b73199417b0c87acc07dd44bd
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb] Add OperatingSystem to `scripting template list`

This patch is a follow-up to bccff3baeff8 which adds the
`OperatingSystem` extension to the `scripting template list` command as
well as its description.

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


  Commit: 745de9ef2071d9702343faf738b48381d83a0e00
      https://github.com/llvm/llvm-project/commit/745de9ef2071d9702343faf738b48381d83a0e00
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    R compiler-rt/test/builtins/Unit/ppc/test
    R compiler-rt/test/builtins/Unit/test

  Log Message:
  -----------
  [compiler-rt] Delete unused test shell scripts (#100889)

This patch deletes two shell scripts in compiler-rt/builtiins/Unit that
seemed to have been used to run the tests at some point, but not
anymore.

They were originally copied over in
8c1441f86037d62f8e164cc458dff8b91d015998,
but have only been updated once since in what seemed like a simple grep.

These files also got lit testing support about seven years ago in
9b7bbeca48b10a0eb81708650777703ce41e67d7 that I believe makes these
scripts completely redundant.


  Commit: edcc60e403703904fcb1425f31a9c20ab0d90f43
      https://github.com/llvm/llvm-project/commit/edcc60e403703904fcb1425f31a9c20ab0d90f43
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
  [ELF] Simplify readAssignment

After #100493, the `=` support from
fe0de25b2195b66d1ebac5d3ebdb18f9e1e776da can be simplified.


  Commit: 30ec2bf58d1559b161254118e39271b829fd0867
      https://github.com/llvm/llvm-project/commit/30ec2bf58d1559b161254118e39271b829fd0867
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/gc-sections-with-provide.s
    M lld/test/ELF/linkerscript/symbolreferenced.s

  Log Message:
  -----------
  [ELF] PROVIDE: allow quoted names to be discarded

Extend commit ebb326a51fec37b5a47e5702e8ea157cd4f835cd for (#74771) to
support quoted names, e.g. `PROVIDE("f1" = f2 + f3);`.


  Commit: c89566f317d6db9e798f9d74c309921e47205901
      https://github.com/llvm/llvm-project/commit/c89566f317d6db9e798f9d74c309921e47205901
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
  [ELF] Replace unquote(next()) with readName. NFC


  Commit: 74ef53a01a49e3818ac872e1cb7669c8017f0eb0
      https://github.com/llvm/llvm-project/commit/74ef53a01a49e3818ac872e1cb7669c8017f0eb0
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/region-alias.s

  Log Message:
  -----------
  [ELF] REGION_ALIAS: support quoted names


  Commit: e6895154914adf32fc4d805cffdf0bec084ae711
      https://github.com/llvm/llvm-project/commit/e6895154914adf32fc4d805cffdf0bec084ae711
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/overlay.test

  Log Message:
  -----------
  [ELF] OVERLAY: support quoted output section names


  Commit: 0d8bc10acb46f5c7af3a7df3e5550c0fef3cc8b5
      https://github.com/llvm/llvm-project/commit/0d8bc10acb46f5c7af3a7df3e5550c0fef3cc8b5
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/at2.test
    M lld/test/ELF/linkerscript/at3.test

  Log Message:
  -----------
  [ELF] Memory region: support quoted names


  Commit: 74f843d05f89738fe58170cedfd15496c179f57a
      https://github.com/llvm/llvm-project/commit/74f843d05f89738fe58170cedfd15496c179f57a
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
  [ELF] Replace unquote(next()) with readName. NFC


  Commit: dbd65a07f212c6e85059b12ae3359942fcaee292
      https://github.com/llvm/llvm-project/commit/dbd65a07f212c6e85059b12ae3359942fcaee292
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/outputarch.test

  Log Message:
  -----------
  [ELF] OUTPUT_ARCH: report unclosed error


  Commit: 4ad3deeefc6c7cd2b1248d6b06c6888618210093
      https://github.com/llvm/llvm-project/commit/4ad3deeefc6c7cd2b1248d6b06c6888618210093
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/test/ELF/linkerscript/phdrs.s

  Log Message:
  -----------
  [ELF] PHDRS: test EOF without ;


  Commit: aad2238f786c0bd8deade0dc68cfc3811c7633df
      https://github.com/llvm/llvm-project/commit/aad2238f786c0bd8deade0dc68cfc3811c7633df
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/test/ELF/linkerscript/include-cycle.s

  Log Message:
  -----------
  [ELF] Improve INCLUDE cycle tests

And demonstrate the incorrect diagnostic when a linker script is
included multiple times (#93947).


  Commit: 8f72b0cb08d8b55ef13ed83af8dac2b7ac55208b
      https://github.com/llvm/llvm-project/commit/8f72b0cb08d8b55ef13ed83af8dac2b7ac55208b
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptLexer.cpp
    M lld/ELF/ScriptLexer.h
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/include-cycle.s

  Log Message:
  -----------
  [ELF] Fix INCLUDE cycle detection

Fix #93947: the cycle detection mechanism added by
https://reviews.llvm.org/D37524 also disallowed including a file twice,
which is an unnecessary limitation.

Now that we have an include stack #100493, supporting multiple inclusion
is trivial. Note: a filename can be referenced with many different
paths, e.g. a.lds, ./a.lds, ././a.lds. We don't attempt to detect the
cycle in the earliest point.


  Commit: 9bd97fcf1385efea2dc130ee4fa78665fa6c9205
      https://github.com/llvm/llvm-project/commit/9bd97fcf1385efea2dc130ee4fa78665fa6c9205
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoXVentana.td
    M llvm/test/CodeGen/RISCV/condops.ll

  Log Message:
  -----------
  [RISCV] Remove IsRV64 from XVentanaCondOps patterns. (#100891)

Ventana doesn't have RV32 cores so the instructions aren't really
supported for RV32, but there's nothing specifically 64-bit about them.

My goal here is to fix cannot select errors if XVentanaCondOps is
enabled on RV32. Alternatively, we could quality the lowering code to
also check IsRV64 so that we don't create RISCVISD::CZERO* nodes. Fixing
the isel patterns seemed simpler.

Fixes #100855.


  Commit: 2402b3213c2f10d5033b31df3a0e59e4ad151fbd
      https://github.com/llvm/llvm-project/commit/2402b3213c2f10d5033b31df3a0e59e4ad151fbd
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb] Add ScriptedProcess to `scripting template list`

This patch is a follow-up to bccff3baeff8 which adds the
`ScriptedProcess` extension to the `scripting template list` command as
well as its description.

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


  Commit: d5521d128494690be66e03a674b9d1181935bf77
      https://github.com/llvm/llvm-project/commit/d5521d128494690be66e03a674b9d1181935bf77
  Author: Julius Alexandre <juliuswoosebert at gmail.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    A llvm/test/CodeGen/AArch64/avgflooru-i128.ll
    M llvm/test/CodeGen/RISCV/avgflooru.ll
    A llvm/test/CodeGen/X86/avgflooru-i128.ll
    M llvm/test/CodeGen/X86/avgflooru-scalar.ll

  Log Message:
  -----------
  [DAG] Reducing instructions by better legalization handling of AVGFLOORU for illegal data types (#99913)

**Issue:** https://github.com/rust-lang/rust/issues/124790
**Previous PR:** https://github.com/llvm/llvm-project/pull/99614

https://rust.godbolt.org/z/T7eKP3Tvo

**Aarch64:** https://alive2.llvm.org/ce/z/dqr2Kg
**x86:** https://alive2.llvm.org/ce/z/ze88Hw

cc: @RKSimon @topperc


  Commit: 9c16a4a2dc20dda1fc9517fb72d3cc79b62557aa
      https://github.com/llvm/llvm-project/commit/9c16a4a2dc20dda1fc9517fb72d3cc79b62557aa
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/insert-after.test
    M lld/test/ELF/linkerscript/insert-before.test

  Log Message:
  -----------
  [ELF] INSERT [AFTER|BEFORE]: support quoted names


  Commit: a4921f10e09e9aab9aad555115bfe43fe12af29c
      https://github.com/llvm/llvm-project/commit/a4921f10e09e9aab9aad555115bfe43fe12af29c
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/phdrs.s

  Log Message:
  -----------
  [ELF] Output section phdr: support quoted names


  Commit: bbc457a4f40328452f0c8c8f9b0b5fcb8d286a7b
      https://github.com/llvm/llvm-project/commit/bbc457a4f40328452f0c8c8f9b0b5fcb8d286a7b
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  Revert "[lldb] Add ScriptedProcess to `scripting template list`"

This reverts commit 2402b3213c2f10d5033b31df3a0e59e4ad151fbd since it
breaks the windows bot:

https://lab.llvm.org/buildbot/#/builders/141/builds/1175/


  Commit: fed94333fd54ec6012386b7b7977c3226ebfd2ac
      https://github.com/llvm/llvm-project/commit/fed94333fd54ec6012386b7b7977c3226ebfd2ac
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    R llvm/test/CodeGen/AArch64/avgflooru-i128.ll
    M llvm/test/CodeGen/RISCV/avgflooru.ll
    R llvm/test/CodeGen/X86/avgflooru-i128.ll
    M llvm/test/CodeGen/X86/avgflooru-scalar.ll

  Log Message:
  -----------
  Revert "[DAG] Reducing instructions by better legalization handling of AVGFLOORU for illegal data types (#99913)"

This reverts commit d5521d128494690be66e03a674b9d1181935bf77.

The AArch64 test is failing on the bots.


  Commit: 315a55fcc342077a3b03c9b4383f41ebea60e2ad
      https://github.com/llvm/llvm-project/commit/315a55fcc342077a3b03c9b4383f41ebea60e2ad
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Interpreter/BUILD.gn
    A llvm/utils/gn/secondary/lldb/source/Interpreter/Interfaces/BUILD.gn

  Log Message:
  -----------
  Reland "[gn] port enough of 2914a4b88837 (lldb Interfaces)"

This reverts commit 68343d793a089e28f3215c3eaa7e4170442a06f8.
2914a4b88837 relanded in bccff3baeff8.


  Commit: 62e5b6e817cd4d2dd1fd8193453660d77b41acc9
      https://github.com/llvm/llvm-project/commit/62e5b6e817cd4d2dd1fd8193453660d77b41acc9
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M libc/src/__support/threads/CMakeLists.txt

  Log Message:
  -----------
  [libc] fix pthread build issue for full-build mode (#100912)

Fix a silly typo that stops pthread from being built


  Commit: f8f5b17564cb839101ba99390bcecc564de57e65
      https://github.com/llvm/llvm-project/commit/f8f5b17564cb839101ba99390bcecc564de57e65
  Author: Nhat Nguyen <nhat7203 at gmail.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M libc/hdr/CMakeLists.txt
    A libc/hdr/math_function_macros.h
    M libc/hdr/math_macros.h
    M libc/test/src/math/CopySignTest.h
    M libc/test/src/math/FAbsTest.h
    M libc/test/src/math/FDimTest.h
    M libc/test/src/math/FMaxTest.h
    M libc/test/src/math/FMinTest.h
    M libc/test/src/math/FrexpTest.h
    M libc/test/src/math/ILogbTest.h
    M libc/test/src/math/LogbTest.h
    M libc/test/src/math/ModfTest.h
    M libc/test/src/math/RemQuoTest.h
    M libc/test/src/math/acosf_test.cpp
    M libc/test/src/math/acoshf_test.cpp
    M libc/test/src/math/asinf_test.cpp
    M libc/test/src/math/asinhf_test.cpp
    M libc/test/src/math/atan2f_test.cpp
    M libc/test/src/math/cos_test.cpp
    M libc/test/src/math/cosf_test.cpp
    M libc/test/src/math/coshf_test.cpp
    M libc/test/src/math/erff_test.cpp
    M libc/test/src/math/exp10_test.cpp
    M libc/test/src/math/exp10f_test.cpp
    M libc/test/src/math/exp2_test.cpp
    M libc/test/src/math/exp2f_test.cpp
    M libc/test/src/math/exp2m1f_test.cpp
    M libc/test/src/math/exp_test.cpp
    M libc/test/src/math/expf_test.cpp
    M libc/test/src/math/explogxf_test.cpp
    M libc/test/src/math/expm1_test.cpp
    M libc/test/src/math/expm1f_test.cpp
    M libc/test/src/math/log10_test.cpp
    M libc/test/src/math/log1p_test.cpp
    M libc/test/src/math/log1pf_test.cpp
    M libc/test/src/math/log2_test.cpp
    M libc/test/src/math/log2f_test.cpp
    M libc/test/src/math/log_test.cpp
    M libc/test/src/math/logf_test.cpp
    M libc/test/src/math/powf_test.cpp
    M libc/test/src/math/sin_test.cpp
    M libc/test/src/math/sincos_test.cpp
    M libc/test/src/math/sincosf_test.cpp
    M libc/test/src/math/sinf_test.cpp
    M libc/test/src/math/sinhf_test.cpp
    M libc/test/src/math/tan_test.cpp
    M libc/test/src/math/tanf_test.cpp
    M libc/test/src/math/tanhf_test.cpp

  Log Message:
  -----------
  [libc] Create a separate proxy header for math-function-macros.h  (#98430)

Fix #98393


  Commit: 2c435b80a1b85e00cedce13bad29d3c0a4a69189
      https://github.com/llvm/llvm-project/commit/2c435b80a1b85e00cedce13bad29d3c0a4a69189
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Frontend/HLSL/HLSLResource.h
    M llvm/include/llvm/Support/DXILABI.h

  Log Message:
  -----------
  [DXIL] Remove extraneous include from DXILABI.h (#100620)

I'm not sure how an include of StringSwitch got here, but it isn't
needed.


  Commit: 3db5c1eeb08766cdd84a3186a1d2be6ab63b2883
      https://github.com/llvm/llvm-project/commit/3db5c1eeb08766cdd84a3186a1d2be6ab63b2883
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M libc/config/config.json
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/configure.rst
    M libc/docs/dev/undefined_behavior.rst
    M libc/spec/posix.td
    M libc/src/__support/OSUtil/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    R libc/src/__support/OSUtil/linux/pid.cpp
    R libc/src/__support/OSUtil/pid.h
    M libc/src/__support/threads/CMakeLists.txt
    M libc/src/__support/threads/linux/CMakeLists.txt
    M libc/src/__support/threads/linux/rwlock.h
    M libc/src/__support/threads/linux/thread.cpp
    M libc/src/__support/threads/thread.h
    R libc/src/__support/threads/tid.h
    M libc/src/unistd/CMakeLists.txt
    M libc/src/unistd/getpid.h
    R libc/src/unistd/gettid.cpp
    R libc/src/unistd/gettid.h
    M libc/src/unistd/linux/CMakeLists.txt
    M libc/src/unistd/linux/fork.cpp
    M libc/src/unistd/linux/getpid.cpp
    M libc/startup/linux/CMakeLists.txt
    M libc/startup/linux/do_start.cpp
    M libc/test/integration/src/unistd/CMakeLists.txt
    M libc/test/integration/src/unistd/fork_test.cpp
    M libc/test/src/unistd/CMakeLists.txt
    R libc/test/src/unistd/gettid_test.cpp

  Log Message:
  -----------
  revert all tid changes (#100915)


  Commit: 4202634886b9b8f1ee74713a8ed8c86941891853
      https://github.com/llvm/llvm-project/commit/4202634886b9b8f1ee74713a8ed8c86941891853
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.fcmp.constants.w32.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-and.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-copy.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-or.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-ptr-add.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-store-private.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-xor.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-brcond.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.end.cf.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.if.break.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wmma_32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wmma_64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.demote.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-imm.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64.ll

  Log Message:
  -----------
  [AMDGPU] Remove -wavefrontsizeX from GlobalISel tests (NFC) (#100812)

This is to make https://github.com/llvm/llvm-project/pull/100711
complete


  Commit: eee620b890ad7e2e139d44fee95bd5049fa48f5c
      https://github.com/llvm/llvm-project/commit/eee620b890ad7e2e139d44fee95bd5049fa48f5c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/lib/AsmParser/LLParser.cpp

  Log Message:
  -----------
  [LLParser] Use SmallVector instead of std::vector (#100916)

The use of SmallVector here saves 1.03% of heap allocations during the
compilation of X86ISelLowering.cpp.ll, a .ll version of
X86ISelLowering.cpp.  The 8 inline elements cover greater than 99% of
invocations encountered here.

While I am it, the patch changes the parameter type to ArrayRef to
allow callers to use any vector type.


  Commit: 25efb746d907ce0ffdd9195d191ff0f6944ea3ca
      https://github.com/llvm/llvm-project/commit/25efb746d907ce0ffdd9195d191ff0f6944ea3ca
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/config.bzl

  Log Message:
  -----------
  [Bazel] Use PACKAGE_VERSION for version string.

This enables "-rc" suffix in release branches.


  Commit: 594d3593fec2ae15f6dd38c51fba8bb1f9828089
      https://github.com/llvm/llvm-project/commit/594d3593fec2ae15f6dd38c51fba8bb1f9828089
  Author: David Green <david.green at arm.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/fcvt_combine.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll

  Log Message:
  -----------
  [AArch64] Split v8f32 fptosi_sat into two v4f32.

If we produce illegal v8f32 types, the VectorLegalizer will unroll them,
scalarizing the operations. In this patch we pre-split them during custom
legalization to produce better results.


  Commit: 6907ab49399f131e04ea1816d155107e92d3b1aa
      https://github.com/llvm/llvm-project/commit/6907ab49399f131e04ea1816d155107e92d3b1aa
  Author: David Green <david.green at arm.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/fptoi_sat.ll
    M llvm/test/Transforms/AggressiveInstCombine/AArch64/fptosisat.ll

  Log Message:
  -----------
  [AArch64] Extend costs for fptoi.sat intrinsics.

Most of these bring the costs in line with the code generation. The f16 costs
without FullFP16 are usually converted to f32. Extended v2f32->v2f64 vectors
similarly use fcvtl + fcvt. As a backup we use the costs similar to the target
independent code, which should give a relatively high cost.


  Commit: 2711618214b22bbc170edd0672f0b5fc1cb8acf4
      https://github.com/llvm/llvm-project/commit/2711618214b22bbc170edd0672f0b5fc1cb8acf4
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/include/__memory_resource/polymorphic_allocator.h
    A libcxx/test/std/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.class.general/equality.pass.cpp

  Log Message:
  -----------
  [libc++][memory_resource] Implements LWG3683. (#100775)

The polymorphic_allocator was added in C++17.
This issue was filed in 2022 so well after C++20. This issue adds an
operator==.

Starting with C++20 this adds a compiler generated operator!=. To have
the same behaviour in C++17 and C++20 (and later) a manual operator!= is
defined in C++17.

Implements
- LWG3683 operator== for polymorphic_allocator cannot deduce template
argument in common cases


  Commit: f7914aa2fd91a54f1314570442fc7730ee4b0457
      https://github.com/llvm/llvm-project/commit/f7914aa2fd91a54f1314570442fc7730ee4b0457
  Author: Dimitry Andric <dimitry at andric.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    R llvm/lib/Target/AArch64/peephole-sxtw.mir
    A llvm/test/CodeGen/AArch64/peephole-sxtw.mir

  Log Message:
  -----------
  [AArch64] Move peephole-sxtw.mir file to regression test directory (#100819)

In #96293 ("Remove superfluous sxtw in peephole opt") a file
`peephole-sxtw.mir` was added to `llvm/lib/Target/AArch64/`, but it
looks like this is a regression test file.

Move it to `llvm/test/CodeGen/AArch64/` which seems a more correct
location.


  Commit: 81595e9178eedc18dfcace9ac412f20697497f9f
      https://github.com/llvm/llvm-project/commit/81595e9178eedc18dfcace9ac412f20697497f9f
  Author: Pavel Samolysov <samolisov at gmail.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    A clang/test/AST/explicit-base-class-move-cntr.cpp

  Log Message:
  -----------
  [Clang][Sema] Add a test for move ctor calling for a base class. NFC (#97164)

When clang compiles the following expression:

```c++
  return A{B{"Move Ctor"}};
```
(where `B` is a base class for `A`), it adds a call to the move
constructor of `B`. When the code is changed to...

```c++
  return A{{"No Move Ctor"}};
```
... a move constructor is invoked neither for `A` nor for `B`.

The lit test demonstrates the difference in the generated AST.


  Commit: bb064535bd071c1bddaf55ff7fe283fc8d23c1fc
      https://github.com/llvm/llvm-project/commit/bb064535bd071c1bddaf55ff7fe283fc8d23c1fc
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

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

  Log Message:
  -----------
  [Clang][CTAD][NFC] Unify transformTemplateParameter() (#100865)

We ended up having two transformTemplateParameter() after CTAD for type
aliases was landed. This patch cleans them up and allows them to share
one implementation.

As a bonus, this also uses getDepthAndIndex() in preference to
getTemplateParameter{Depth,Index}().


  Commit: 77f89f1f541976b92b43a4b40bd54e889fc55f53
      https://github.com/llvm/llvm-project/commit/77f89f1f541976b92b43a4b40bd54e889fc55f53
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/test/CodeGen/SPARC/64cond.ll

  Log Message:
  -----------
  [Sparc] Remove custom lowering for SMULO / UMULO (#100858)

The underlying issue was fixed by 7c4fe0e9. The lowering is tested by
[us]mulo-128-legalisation-lowering.ll and there are no changes.


  Commit: 991192b211212aa366bf73b993ac444839c10bf5
      https://github.com/llvm/llvm-project/commit/991192b211212aa366bf73b993ac444839c10bf5
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/test/CodeGen/SPARC/2011-01-11-CC.ll
    M llvm/test/CodeGen/SPARC/fp128-split.ll
    M llvm/test/CodeGen/SPARC/smulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/SPARC/umulo-128-legalisation-lowering.ll

  Log Message:
  -----------
  [Sparc] Remove custom lowering for ADD[CE] / SUB[CE] (#100861)

The default lowering produces fewer instructions.


  Commit: c53843415ebba4d7c295bcd31bb325bfd08570a6
      https://github.com/llvm/llvm-project/commit/c53843415ebba4d7c295bcd31bb325bfd08570a6
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/include/llvm/ADT/StableHashing.h
    M llvm/lib/CodeGen/MachineStableHash.cpp

  Log Message:
  -----------
  [ADT,CodeGen] Remove stable_hash_combine_string

FNV, used by stable_hash_combine_string is extremely slow. For string
hashing with good avalanche effects, we prefer xxh3_64bits.

StableHashing.h might still be useful as it provides a stable
hash_combine while Hashing.h's might be non-deterministic (#96282).

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


  Commit: 30fa01141390a8d60ab661f763a22329337bd97d
      https://github.com/llvm/llvm-project/commit/30fa01141390a8d60ab661f763a22329337bd97d
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M lld/test/ELF/linkerscript/group.s

  Log Message:
  -----------
  [ELF,test] Improve --sysroot and GROUP tests

3i.t (INCLUDE "%t.dir/3a.t") describes a behavior difference from GNU
ld, which will be fixed by the next change.


  Commit: a7e8bddfc1ce3e9ef86f104a34f72ece72c23ba7
      https://github.com/llvm/llvm-project/commit/a7e8bddfc1ce3e9ef86f104a34f72ece72c23ba7
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptLexer.cpp
    M lld/ELF/ScriptLexer.h
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/group.s

  Log Message:
  -----------
  [ELF] Respect --sysroot for INCLUDE

If an included script is under the sysroot directory, when it opens an
absolute path file (`INPUT` or `GROUP`), add sysroot before the absolute
path. When the included script ends, the `isUnderSysroot` state is
restored.


  Commit: 44df89cc30fc462dcb821929c6d5459688ffe545
      https://github.com/llvm/llvm-project/commit/44df89cc30fc462dcb821929c6d5459688ffe545
  Author: Eric977 <53341107+Eric977 at users.noreply.github.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/dev/undefined_behavior.rst
    M libc/newhdrgen/yaml/pthread.yaml
    M libc/spec/posix.td
    M libc/src/pthread/CMakeLists.txt
    A libc/src/pthread/pthread_rwlock_clockrdlock.cpp
    A libc/src/pthread/pthread_rwlock_clockrdlock.h
    A libc/src/pthread/pthread_rwlock_clockwrlock.cpp
    A libc/src/pthread/pthread_rwlock_clockwrlock.h
    M libc/test/integration/src/pthread/CMakeLists.txt
    M libc/test/integration/src/pthread/pthread_rwlock_test.cpp

  Log Message:
  -----------
  [libc] add pthread_rwlock_clockrdlock and pthread_rwlock_clockwrlock … (#100543)


  Commit: ff7f97a8199e6e931f5ae2b1ec79e8a1eb9b05d6
      https://github.com/llvm/llvm-project/commit/ff7f97a8199e6e931f5ae2b1ec79e8a1eb9b05d6
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M lld/ELF/Driver.cpp
    M lld/ELF/ScriptParser.cpp
    M lld/ELF/ScriptParser.h
    M lld/test/ELF/defsym.s

  Log Message:
  -----------
  [ELF] --defsym: support quoted LHS

and move = splitting from Driver.cpp to ScriptParser.cpp.


  Commit: a17f8fe7d46e1708331df2dec733203de356b0cf
      https://github.com/llvm/llvm-project/commit/a17f8fe7d46e1708331df2dec733203de356b0cf
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

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

  Log Message:
  -----------
  [InstCombine] Use more inline elements in a SmallVector (#100942)

The 4 inline elements only cover 58% of cases encountered here during
the compilation of X86ISelLowering.cpp.ll, a .ll version of
X86ISelLowering.cpp.

The 8 inline elements cover 96% and save 0.27% of heap allocations.


  Commit: 41211919db5feb279d2954eb590a3cf2a1742152
      https://github.com/llvm/llvm-project/commit/41211919db5feb279d2954eb590a3cf2a1742152
  Author: Julius Alexandre <juliuswoosebert at gmail.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Added isVolatile args to existing LoadInst::create function (#100850)

Added isVolatile args along with the tests.


  Commit: 0fb9f898e227925f43780bfe0e4887fba9fb1a15
      https://github.com/llvm/llvm-project/commit/0fb9f898e227925f43780bfe0e4887fba9fb1a15
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

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

  Log Message:
  -----------
  [InstCombine] Initialize a SmallVector with a range (NFC) (#100947)


  Commit: b7e4fba6e5dcae5ff51f8eced21470a1b3ccd895
      https://github.com/llvm/llvm-project/commit/b7e4fba6e5dcae5ff51f8eced21470a1b3ccd895
  Author: James Y Knight <jyknight at google.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/test/Bindings/llvm-c/echo.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/CodeGen/X86/2007-05-15-maskmovq.ll
    M llvm/test/CodeGen/X86/2007-07-03-GR64ToVR64.ll
    M llvm/test/CodeGen/X86/2008-04-08-CoalescerCrash.ll
    M llvm/test/CodeGen/X86/2008-08-23-64Bit-maskmovq.ll
    M llvm/test/CodeGen/X86/2008-09-05-sinttofp-2xi32.ll
    M llvm/test/CodeGen/X86/2011-06-14-mmx-inlineasm.ll
    M llvm/test/CodeGen/X86/avx-vbroadcast.ll
    M llvm/test/CodeGen/X86/avx2-vbroadcast.ll
    M llvm/test/CodeGen/X86/bitcast-mmx.ll
    M llvm/test/CodeGen/X86/expand-vr64-gr64-copy.mir
    M llvm/test/CodeGen/X86/fast-isel-bc.ll
    M llvm/test/CodeGen/X86/fast-isel-nontemporal.ll
    M llvm/test/CodeGen/X86/mmx-arg-passing-x86-64.ll
    M llvm/test/CodeGen/X86/mmx-arg-passing.ll
    M llvm/test/CodeGen/X86/mmx-arith.ll
    M llvm/test/CodeGen/X86/mmx-bitcast-fold.ll
    M llvm/test/CodeGen/X86/mmx-bitcast.ll
    M llvm/test/CodeGen/X86/mmx-build-vector.ll
    M llvm/test/CodeGen/X86/mmx-coalescing.ll
    M llvm/test/CodeGen/X86/mmx-cvt.ll
    M llvm/test/CodeGen/X86/mmx-fold-load.ll
    M llvm/test/CodeGen/X86/mmx-fold-zero.ll
    M llvm/test/CodeGen/X86/mmx-intrinsics.ll
    M llvm/test/CodeGen/X86/mmx-only.ll
    M llvm/test/CodeGen/X86/mxcsr-reg-usage.ll
    M llvm/test/CodeGen/X86/nontemporal.ll
    M llvm/test/CodeGen/X86/pr13859.ll
    M llvm/test/CodeGen/X86/pr23246.ll
    M llvm/test/CodeGen/X86/pr29222.ll
    M llvm/test/CodeGen/X86/pr35982.ll
    M llvm/test/CodeGen/X86/select-mmx.ll
    M llvm/test/CodeGen/X86/stack-folding-mmx.ll
    M llvm/test/CodeGen/X86/vec_extract-mmx.ll
    M llvm/test/CodeGen/X86/vec_insert-5.ll
    M llvm/test/CodeGen/X86/vec_insert-7.ll
    M llvm/test/CodeGen/X86/vec_insert-mmx.ll
    M llvm/test/CodeGen/X86/vector-shuffle-mmx.ll
    M llvm/test/CodeGen/X86/x86-64-psub.ll
    M llvm/test/Instrumentation/MemorySanitizer/X86/mmx-intrinsics.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_arith.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_cvt.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_pack.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_shift.ll
    M llvm/test/MC/X86/x86-GCC-inline-asm-Y-constraints.ll
    R llvm/test/Transforms/GlobalOpt/x86_mmx_load.ll
    M llvm/test/Transforms/InstCombine/X86/x86-movmsk.ll
    M llvm/test/Transforms/InstCombine/cast.ll
    M llvm/test/Transforms/InstSimplify/ConstProp/gep-zeroinit-vector.ll
    M llvm/test/Transforms/SCCP/crash.ll
    M llvm/test/Transforms/SROA/pr57796.ll
    M llvm/test/Verifier/atomics.ll

  Log Message:
  -----------
  Cleanup x86_mmx after removing IR type  (#100646)

After #98505, the textual IR keyword `x86_mmx` was temporarily made to
parse as `<1 x i64>`, so as not to require a lot of test update noise.

This completes the removal of the type, by removing the`x86_mmx` keyword
from the IR parser, and making the (now no-op) test updates via `sed -i
's/\bx86_mmx\b/<1 x i64>/g' $(git grep -l x86_mmx llvm/test/)`.
Resulting bitcasts from <1 x i64> to itself were then manually deleted.

Changes to llvm/test/Bitcode/compatibility-$VERSION.ll were reverted, as
they're intended to be equivalent to the .bc file, if parsed by old
LLVM, so shouldn't be updated.

A few tests were removed, as they're no longer testing anything, in the
following files:
- llvm/test/Transforms/GlobalOpt/x86_mmx_load.ll
- llvm/test/Transforms/InstCombine/cast.ll
- llvm/test/Transforms/InstSimplify/ConstProp/gep-zeroinit-vector.ll

Works towards issue #98272.


  Commit: fd791f0fe562a41d8569fcb4d1e84b4c1e5719c7
      https://github.com/llvm/llvm-project/commit/fd791f0fe562a41d8569fcb4d1e84b4c1e5719c7
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h

  Log Message:
  -----------
  [ELF] Move TarWriter into Ctx. NFC

Similar to e980f16d52196fb2bc672ecb87e0f622253addec.


  Commit: ea7cc12f612ef5c5f70082ebfdee378d80ec44bd
      https://github.com/llvm/llvm-project/commit/ea7cc12f612ef5c5f70082ebfdee378d80ec44bd
  Author: David Green <david.green at arm.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp

  Log Message:
  -----------
  [ARM] Add fallback fptoi_sat costs.

This makes sure that the custom operations get a fallback cost, even if they
are not perfect.


  Commit: 378fe2fc23fa56181577d411fe6d51fa531cd860
      https://github.com/llvm/llvm-project/commit/378fe2fc23fa56181577d411fe6d51fa531cd860
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/VecFuncs.def
    M llvm/test/CodeGen/X86/fp-strict-libcalls-msvc32.ll
    M llvm/test/CodeGen/X86/vec-libcalls.ll
    M llvm/test/Transforms/LoopVectorize/X86/amdlibm-calls.ll
    M llvm/test/Transforms/LoopVectorize/X86/veclib-calls.ll

  Log Message:
  -----------
  [X86][LoopVectorize] Add support for arc and hyperbolic trig functions (#99383)

This change is part 2 x86 Loop Vectorization of :
https://github.com/llvm/llvm-project/pull/96222

It also has veclib call loop vectorization hence the test cases in
`llvm/test/Transforms/LoopVectorize/X86/veclib-calls.ll`

finally the last pr missed tests for
`llvm/test/CodeGen/X86/fp-strict-libcalls-msvc32.ll` and
`llvm/test/CodeGen/X86/vec-libcalls.ll` so added those aswell.

No evidence was found for arc and hyperbolic trig glibc vector math
functions

https://github.com/lattera/glibc/blob/master/sysdeps/x86/fpu/bits/math-vector.h
so no  new `_ZGVbN2v_*` and  `_ZGVdN4v_*` .
So no new tests in
`llvm/test/Transforms/LoopVectorize/X86/libm-vector-calls-VF2-VF8.ll`

Also no new svml and no new tests to:
`llvm/test/Transforms/LoopVectorize/X86/svml-calls.ll`
There was not enough evidence that there were svml arc and hyperbolic
trig vector implementations, Documentation was scarces so looked at test
cases in
[numpy](https://github.com/numpy/SVML/blob/32bf2a98420762a63ab418aaa0a7d6e17eb9627a/linux/avx512/svml_z0_acos_d_la.s#L8).
Someone with more experience with svml should investigate.

## Note 
amd libm doesn't have a vector hyperbolic sine api hence why youi might
notice there are no tests for `sinh`.

## History
This change is part of
https://github.com/llvm/llvm-project/issues/87367's investigation on
supporting IEEE math operations as intrinsics.
Which was discussed in this RFC:
https://discourse.llvm.org/t/rfc-all-the-math-intrinsics/78294

This change adds loop vectorization for `acos`, `asin`, `atan`, `cosh`,
`sinh`, and `tanh`.
resolves #70079
resolves #70080
resolves #70081
resolves #70083
resolves #70084
resolves #95966


  Commit: 62e9f40949ddc52e9660b25ab146bd5d9b39ad88
      https://github.com/llvm/llvm-project/commit/62e9f40949ddc52e9660b25ab146bd5d9b39ad88
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/LoopBoundSplit.cpp
    M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
    M llvm/unittests/IR/PatternMatch.cpp

  Log Message:
  -----------
  [PatternMatch] Use `m_SpecificCmp` matchers. NFC. (#100878)

Compile-time improvement:
http://llvm-compile-time-tracker.com/compare.php?from=13996378d81c8fa9a364aeaafd7382abbc1db83a&to=861ffa4ec5f7bde5a194a7715593a1b5359eb581&stat=instructions:u
baseline: 803eaf29267c6aae9162d1a83a4a2ae508b440d3
```
Top 5 improvements:
  stockfish/movegen.ll 2541620819 2538599412 -0.12%
  minetest/profiler.cpp.ll 431724935 431246500 -0.11%
  abc/luckySwap.c.ll 581173720 580581935 -0.10%
  abc/kitTruth.c.ll 2521936288 2519445570 -0.10%
  abc/extraUtilTruth.c.ll 1216674614 1215495502 -0.10%
Top 5 regressions:
  openssl/libcrypto-shlib-sm4.ll 1155054721 1155943201 +0.08%
  openssl/libcrypto-lib-sm4.ll 1155054838 1155943063 +0.08%
  spike/vsm4r_vv.ll 1296430080 1297039258 +0.05%
  spike/vsm4r_vs.ll 1312496906 1313093460 +0.05%
  nuttx/lib_rand48.c.ll 126201233 126246692 +0.04%
Overall: -0.02112308%
```


  Commit: aef9a89c85db61783cd7484d8f114103e22f8953
      https://github.com/llvm/llvm-project/commit/aef9a89c85db61783cd7484d8f114103e22f8953
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M libc/src/compiler/generic/__stack_chk_fail.cpp

  Log Message:
  -----------
  [NFC] add newline after stack smashing message (#100958)

<img width="662" alt="smash newline"
src="https://github.com/user-attachments/assets/99625bcb-efd6-4733-aa01-2a2167ee686f">


  Commit: 279953f1da7d7d0e404638414deec5d1df291c7c
      https://github.com/llvm/llvm-project/commit/279953f1da7d7d0e404638414deec5d1df291c7c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

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

  Log Message:
  -----------
  [RISCV] Simplify code in decomposeMulByConstant. NFC (#100946)

We already checked that the type is a scalar integer, so the constant
node should definitely be a ConstantSDNode. We can use cast instead of
dyn_cast.


  Commit: ad8cc88b1b84bd4d450824259eee5436e85309a9
      https://github.com/llvm/llvm-project/commit/ad8cc88b1b84bd4d450824259eee5436e85309a9
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rv64zba.ll

  Log Message:
  -----------
  [RISCV] Rename a few test cases for accuracy. NFC

The tests are for slliuw rather than slliw.


  Commit: 71d85ca2f9dba7f08a7a84c6cff5396ed594cb3c
      https://github.com/llvm/llvm-project/commit/71d85ca2f9dba7f08a7a84c6cff5396ed594cb3c
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv-cfi-info.ll

  Log Message:
  -----------
  [RISCV][CFI] Emit cfi_offset for every callee-saved vector registers (#100455)

The grouped vector register is modeled as a single register, e.g. V2M2,
which is actually V2 and V3. We need to decompose the grouped vector
register(if any) to individual vector register when emitting CFIs in
prologue.

Fixed https://github.com/llvm/llvm-project/issues/94500


  Commit: 43d0bb571b42609b454723fab7421d301d35e1b1
      https://github.com/llvm/llvm-project/commit/43d0bb571b42609b454723fab7421d301d35e1b1
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rv64zba.ll

  Log Message:
  -----------
  [RISCV] Add more srli+slli.uw tests cases for #100936. NFC


  Commit: 0953fb4c68380760562e61a5a09979359eb498c1
      https://github.com/llvm/llvm-project/commit/0953fb4c68380760562e61a5a09979359eb498c1
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/test/Driver/immediate-options.c

  Log Message:
  -----------
  [Driver] Ensure -W<warning> gets HelpHidden

Individual groups should not be displayed in --help. Fix two violations
and change the test to prevent regression.


  Commit: 8e2476e102e8ce3ae496b293bacccb248787404d
      https://github.com/llvm/llvm-project/commit/8e2476e102e8ce3ae496b293bacccb248787404d
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/Symbols.cpp
    M lld/ELF/Symbols.h
    M lld/ELF/SyntheticSections.cpp

  Log Message:
  -----------
  [ELF] Move SymbolAux into Ctx. NFC

The number of uses is modest.


  Commit: 5cddc314c8928ead12bb9c07cbefa45ee410de5c
      https://github.com/llvm/llvm-project/commit/5cddc314c8928ead12bb9c07cbefa45ee410de5c
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M libc/test/integration/src/pthread/pthread_rwlock_test.cpp

  Log Message:
  -----------
  [libc] fix rwlock test (#100962)

Previous commit uses wrong clock id and forget to release an additional
rdlock. cc @Eric977
Sorry for missing this in my initial review.

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

Notice that the timestamp is created via
```c++
  LIBC_NAMESPACE::clock_gettime(CLOCK_REALTIME, &ts);
  ts.tv_nsec += 50'000;
  if (ts.tv_nsec >= 1'000'000'000) {
    ts.tv_nsec -= 1'000'000'000;
    ts.tv_sec += 1;
  }
```


  Commit: dfdef2cbf738dd1cae99fb521d49086fcbbaf19a
      https://github.com/llvm/llvm-project/commit/dfdef2cbf738dd1cae99fb521d49086fcbbaf19a
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M libc/fuzzing/math/RemQuoDiff.h
    M libc/fuzzing/stdlib/strtofloat_fuzz.cpp
    M libc/test/src/math/cbrt_test.cpp
    M libc/test/utils/FPUtil/x86_long_double_test.cpp

  Log Message:
  -----------
  [libc] Fix the remaining isnan and isinf in tests. (#100969)

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


  Commit: 34d48279b8161d2510fff9e94e10c9508d5249f8
      https://github.com/llvm/llvm-project/commit/34d48279b8161d2510fff9e94e10c9508d5249f8
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/Target/PowerPC/PPCGenScalarMASSEntries.cpp
    M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
    M llvm/lib/Transforms/Utils/ValueMapper.cpp

  Log Message:
  -----------
  [llvm] Initialize SmallVector with ranges (NFC) (#100948)


  Commit: de5aa8d0060cbe286c9cbae90ca8f197b92a3956
      https://github.com/llvm/llvm-project/commit/de5aa8d0060cbe286c9cbae90ca8f197b92a3956
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCFragment.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCFragment.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp

  Log Message:
  -----------
  [MC] Remove unused MCCompactEncodedInstFragment

This has been used after #94950.


  Commit: 034d01422b5fd8f502ccb45ce95da108415a39a6
      https://github.com/llvm/llvm-project/commit/034d01422b5fd8f502ccb45ce95da108415a39a6
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCFragment.h

  Log Message:
  -----------
  [MC] Remove MCEncodedFragmentWithContents

MCEncodedFragmentWithFixups can derive from MCEncodedFragment directly.
Follow-up to de5aa8d0060cbe286c9cbae90ca8f197b92a3956.


  Commit: 73c72f2c6505d5bc8b47bb0420f6cba5b24270fe
      https://github.com/llvm/llvm-project/commit/73c72f2c6505d5bc8b47bb0420f6cba5b24270fe
  Author: Arseniy Zaostrovnykh <necto.ne at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/lib/Analysis/LiveVariables.cpp
    M clang/test/Analysis/live-stmts.cpp
    A clang/test/Analysis/short-circuiting-eval.cpp

  Log Message:
  -----------
  [analyzer] Keep alive short-circuiting condition subexpressions in a conditional (#100745)

Fix the false negative caused by state merging in the evaluation of a
short-circuiting expression inside the condition of a ternary operator.
The fixed symptom is that CSA always evaluates `(x || x) ? n : m` to
`m`.

This change forces the analyzer to consider all logical expressions
prone to short-circuiting alive until the entire conditional expression
is evaluated. Here is why.

By default, LiveVariables analysis marks only direct subexpressions as
live relative to any expression. So for `a ? b : c` it will consider
`a`, `b`, and `c` alive when evaluating the ternary operator expression.

To explore both possibilities opened by a ternary operator, it is
important to keep something different about the exploded nodes created
after the evaluation of its branches. These two nodes come to the same
location, so they must have different states. Otherwise, they will be
considered identical and can engender only one outcome.
`ExprEngine::visitGuardedExpr` chooses the first predecessor exploded
node to carry the value of the conditional expression. It works well in
the case of a simple condition, because when `a ? b : c` is evaluated,
`a` is kept alive, so the two branches differ in the value of `a`.

However, before this patch is applied, this strategy breaks for `(x ||
x) ? n : m`. `x` is not a direct child of the ternary expression. Due to
short-circuiting, once `x` is assumed to be `true`, evaluation jumps
directly to `n` and then to the result of the entire ternary expression.
Given that the result of the entire condition `(x || x)` is not
constructed, and `x` is not kept alive, the difference between the path
coming through `n` and through `m` disappears. As a result, exploded
nodes coming from the "true expression" and the "false expression"
engender identical successors and merge the execution paths.


  Commit: 33a50e0eaa80cf3db1b944762db9a37a06f3ac32
      https://github.com/llvm/llvm-project/commit/33a50e0eaa80cf3db1b944762db9a37a06f3ac32
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M compiler-rt/CMakeLists.txt

  Log Message:
  -----------
  [compiler-rt][test] Disable lld tests on SPARC (#100533)

As detailed in Issue #100320, a considerable number of tests that
explicitly use `-fuse-ld=lld` `FAIL` on Linux/sparc64 due to several
`lld` limitations (no 32-bit SPARC support, lack of support for various
relocations, ...).

To reduce the noise, this patch disables `COMPILER_RT_HAS_LLD` on SPARC
wholesale.

Tested on `sparc64-unknown-linux-gnu`.


  Commit: 5d2c324fea2d7cf86ec50e4bb6b680acf89b2ed5
      https://github.com/llvm/llvm-project/commit/5d2c324fea2d7cf86ec50e4bb6b680acf89b2ed5
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  Remove a leftover debug-only statement in CheckExprLifetime.cpp


  Commit: f6d1d6fe7b7f04db7f0a445c8bc3e63fcdcd8e0a
      https://github.com/llvm/llvm-project/commit/f6d1d6fe7b7f04db7f0a445c8bc3e63fcdcd8e0a
  Author: Manish Kausik H <46352931+Nirhar at users.noreply.github.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/X86/unaligned_extract_from_vector_through_stack.ll

  Log Message:
  -----------
  [SelectionDAG] Use unaligned store to legalize `EXTRACT_VECTOR_ELT` type when Stack is non-realignable (#98176)

This patch ports the commit a6614ec5b7c1dbfc4b847884c5de780cf75e8e9c to
SelectionDAG TypeLegalization.

Fixes #98044

Co-authored-by: Manish Kausik H <hmamishkausik at gmail.com>


  Commit: 2db0c00e6092947fa07cc587c4a7537213bbc093
      https://github.com/llvm/llvm-project/commit/2db0c00e6092947fa07cc587c4a7537213bbc093
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    A clang/test/CodeGenCXX/debug-info-explicit-this.cpp

  Log Message:
  -----------
  [clang][CGDebugInfo] Don't generate an implicit 'this' parameter if one was specified explicitly (#100767)

Currently we would unconditionally add an implicit `this` parameter when
creating an instance method type. However, when we have an explicit
'this', we shouldn't generate one. This patch only passes a valid
`ThisPtr` type to `getOrCreateInstanceMethodType` if one wasn't
explicitly specified. There's no way to get a pointer to a member
function with an explicit `this` parameter (those are treated as regular
function pointers instead). So there's no need to account for that case
in `CGDebugInfo::CreateType`.

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


  Commit: 31769e4d0892312948812fbc2d0a56249ea72492
      https://github.com/llvm/llvm-project/commit/31769e4d0892312948812fbc2d0a56249ea72492
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/include/clang/AST/ASTImporter.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/lib/AST/ASTImporter.cpp
    M clang/unittests/AST/ASTImporterTest.cpp

  Log Message:
  -----------
  Revert "Reland [clang][ASTImport] Add support for import of empty records" (#100903)

This reverts commit 88e5206f2c96a34e23a4d63f0a38afb2db044f0a. The
original change went in a while ago (last year) in
https://reviews.llvm.org/D145057. The specific reason I'm proposing a
revert is that this is now causing exactly the issue that @balazske
predicted in https://reviews.llvm.org/D145057#4164717:
> Problematic case is if the attribute has pointer to a Decl or Type
that is imported here in a state when the field is already created but
not initialized. Another problem is that attributes are added a second
time in Import(Decl *)

This now came up in the testing of LLDB support for
https://github.com/llvm/llvm-project/issues/93069. There,
`__compressed_pair`s are now replaced with fields that have an
`alignof(...)` and `[[no_unique_address]]` attribute. In the specific
failing case, we're importing following `std::list` method:
```
size_type& __sz() _NOEXCEPT { return __size_; }
```
During this process, we create a new `__size_` `FieldDecl` (but don't
initialize it yet). Then we go down the `ImportAttrs` codepath added in
D145057. This imports the `alignof` expression which then references the
uninitialized `__size_` and we trigger an assertion.

Important to note, this codepath was added specifically to support
`[[no_unique_address]]` in LLDB, and was supposed to land with
https://reviews.llvm.org/D143347. But the LLDB side of that never
landed, and the way we plan to support `[[no_unique_address]]` doesn't
require things like the `markEmpty` method added here. So really, this
is a dead codepath, which as pointed out in the original review isn't
fully sound.


  Commit: 3a2ef3a6348786b139b66c17febc87925da5d506
      https://github.com/llvm/llvm-project/commit/3a2ef3a6348786b139b66c17febc87925da5d506
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    R llvm/test/Analysis/CostModel/AMDGPU/arith-fp.ll
    A llvm/test/Analysis/CostModel/AMDGPU/arithmetic_fence.ll
    A llvm/test/Analysis/CostModel/AMDGPU/canonicalize.ll
    A llvm/test/Analysis/CostModel/AMDGPU/copysign.ll
    A llvm/test/Analysis/CostModel/AMDGPU/exp.ll
    A llvm/test/Analysis/CostModel/AMDGPU/exp10.ll
    A llvm/test/Analysis/CostModel/AMDGPU/exp2.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fabs.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fma.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fmul.ll
    A llvm/test/Analysis/CostModel/AMDGPU/fmuladd.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fneg.ll
    A llvm/test/Analysis/CostModel/AMDGPU/frexp.ll
    A llvm/test/Analysis/CostModel/AMDGPU/is_fpclass.ll
    A llvm/test/Analysis/CostModel/AMDGPU/ldexp.ll
    A llvm/test/Analysis/CostModel/AMDGPU/log.ll
    A llvm/test/Analysis/CostModel/AMDGPU/log10.ll
    A llvm/test/Analysis/CostModel/AMDGPU/log2.ll
    A llvm/test/Analysis/CostModel/AMDGPU/maximum.ll
    A llvm/test/Analysis/CostModel/AMDGPU/maxnum.ll
    A llvm/test/Analysis/CostModel/AMDGPU/minimum.ll
    A llvm/test/Analysis/CostModel/AMDGPU/minnum.ll
    A llvm/test/Analysis/CostModel/AMDGPU/ptrmask.ll
    A llvm/test/Analysis/CostModel/AMDGPU/sqrt.ll
    A llvm/test/Transforms/SLPVectorizer/AMDGPU/slp-v2f16.ll

  Log Message:
  -----------
  AMDGPU: Add some baseline cost model tests (#100797)


  Commit: 5430f73b501f9fc0a38c3768592f5f31bcbdf2f0
      https://github.com/llvm/llvm-project/commit/5430f73b501f9fc0a38c3768592f5f31bcbdf2f0
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/test/CodeGen/aarch64-sme-inline-streaming-attrs.c

  Log Message:
  -----------
  [Clang] Demote always_inline error to warning for mismatching SME attrs (#100740)

PR #77936 introduced a diagnostic to avoid calls being inlined into
functions with a different streaming mode, because inlining those
functions may result in different runtime behaviour. This was necessary
because LLVM doesn't check whether inlining is possible and thus blindly
inlines the function without checking feasibility.

In practice however, this introduces an artificial restriction that the
user may not be able to work around. Calling an `always_inline` function
from some header file that is out of the control of the user would
result in an error that the user cannot remedy.

Therefore, this patch demotes the error into a warning (for calls from
streaming[-compatible] -> non-streaming), but the proper fix would be to
fix the AlwaysInliner in LLVM to avoid inlining when it has analyzed the
callee and has determined that inlining is not possible.

Calling an always_inline function for calls from non-streaming ->
streaming will remain an error, because there is little pre-existing
code for SME, so it is expected that the header file can be modified by
the user (e.g. by using `__arm_streaming_compatible` if the code is
claimed to be compatible).


  Commit: d72c8b02802c87386f5db3c7de6c79e921618fa3
      https://github.com/llvm/llvm-project/commit/d72c8b02802c87386f5db3c7de6c79e921618fa3
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M lldb/include/lldb/Symbol/SymbolFile.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParser.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/test/API/lang/c/struct_types/main.c
    A lldb/test/Shell/SymbolFile/DWARF/vla.cpp

  Log Message:
  -----------
  [lldb][TypeSystemClang] Create VLAs of explicitly 0-size as ConstantArrayType (#100710)

Depends on https://github.com/llvm/llvm-project/pull/100674

Currently, we treat VLAs declared as `int[]` and `int[0]` identically.
I.e., we create them as `IncompleteArrayType`s. However, the
`DW_AT_count` for `int[0]` *does* exist, and is retrievable without an
execution context. This patch decouples the notion of "has 0 elements"
from "has no known `DW_AT_count`".

This aligns with how Clang represents `int[0]` in the AST (it treats it
as a `ConstantArrayType` of 0 size).

This issue was surfaced when adapting LLDB to
https://github.com/llvm/llvm-project/issues/93069. There, the
`__compressed_pair_padding` type has a `char[0]` member. If we
previously got the `__compressed_pair_padding` out of a module (where
clang represents `char[0]` as a `ConstantArrayType`), and try to merge
the AST with one we got from DWARF (where LLDB used to represent
`char[0]` as an `IncompleteArrayType`), the AST structural equivalence
check fails, resulting in silent ASTImporter failures. This manifested
in a failure in `TestNonModuleTypeSeparation.py`.

**Implementation**
1. Adjust `ParseChildArrayInfo` to store the element counts of each VLA
dimension as an `optional<uint64_t>`, instead of a regular `uint64_t`.
So when we pass this down to `CreateArrayType`, we have a better
heuristic for what is an `IncompleteArrayType`.
2. In `TypeSystemClang::GetBitSize`, if we encounter a
`ConstantArrayType` simply return the size that it was created with. If
we couldn't determine the authoritative bound from DWARF during parsing,
we would've created an `IncompleteArrayType`. This ensures that
`GetBitSize` on arrays with `DW_AT_count 0x0` returns `0` (whereas
previously it would've returned a `std::nullopt`, causing that
`FieldDecl` to just get dropped during printing)


  Commit: 5bd3aef5e285cce793e3fc6b21299ac9d650a947
      https://github.com/llvm/llvm-project/commit/5bd3aef5e285cce793e3fc6b21299ac9d650a947
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SMInstructions.td

  Log Message:
  -----------
  [AMDGPU] Use a generic printer for NamedIntOperands. (#100399)

This includes simplifying printing dmask modifiers where we don't need
to mask the value to print.

Part of <https://github.com/llvm/llvm-project/issues/62629>.


  Commit: e3a3397209fe05ec65d74e9096347fc7a76e919e
      https://github.com/llvm/llvm-project/commit/e3a3397209fe05ec65d74e9096347fc7a76e919e
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/test/CodeGen/aarch64-sme-inline-streaming-attrs.c

  Log Message:
  -----------
  Revert "[Clang] Demote always_inline error to warning for mismatching SME attrs" (#100991)

Reverts llvm/llvm-project#100740


  Commit: d86311f293ebc3867733d4453e0d6c929e620d8b
      https://github.com/llvm/llvm-project/commit/d86311f293ebc3867733d4453e0d6c929e620d8b
  Author: Dominik Adamski <dominik.adamski at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/test/Driver/omp-driver-offload.f90
    M flang/test/Driver/target-cpu-features.f90
    M flang/test/Driver/target-gpu-features.f90

  Log Message:
  -----------
  [Flang-new][OpenMP] Add bitcode files for AMD GPU OpenMP (#96742)

Flang-new needs to add `mlink-builtin-bitcode` objects to properly
support offload code generation for AMD GPUs (for example, math
functions).

Both Flang-new and Clang rely on `mlink-builtin-bitcode` flags. These
flags are added by the `AMDGPUOpenMPToolchain::addClangTargetOptions`
function. Now, both compilers reuse the same function.

Flang-new tests for AMDGPU were updated by adding the `-nogpulib` flag.
This flag allows running AMDGPU tests on machines without the ROCm stack.


  Commit: 0362a29905ab8d68a8eb48741840a514b66552f8
      https://github.com/llvm/llvm-project/commit/0362a29905ab8d68a8eb48741840a514b66552f8
  Author: martinboehme <mboehme at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/AdornedCFG.h
    M clang/lib/Analysis/FlowSensitive/AdornedCFG.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Fix bug in `buildContainsExprConsumedInDifferentBlock()`. (#100874)

This was missing a call to `ignoreCFGOmittedNodes()`. As a result, the
function
would erroneously conclude that a block did not contain an expression
consumed
in a different block if the expression in question was surrounded by a
`ParenExpr` in the consuming block. The patch adds a test that triggers
this
scenario (and fails without the fix).

To prevent this kind of bug in the future, the patch also adds a new
method
`blockForStmt()` to `AdornedCFG` that calls `ignoreCFGOmittedNodes()`
and is
preferred over accessing `getStmtToBlock()` directly.


  Commit: 03e17da510963ce6b7a1d0ab4d67f753a6cc7495
      https://github.com/llvm/llvm-project/commit/03e17da510963ce6b7a1d0ab4d67f753a6cc7495
  Author: Nabeel Omer <nabeel.omer at sony.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/DebugHandlerBase.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
    M llvm/test/CodeGen/X86/fsafdo_test1.ll
    M llvm/test/CodeGen/X86/fsafdo_test4.ll
    A llvm/test/DebugInfo/X86/loop-align-debug.ll

  Log Message:
  -----------
  [DWARF] Emit line 0 source locations for BB padding nops (#99496)

This patch makes LLVM emit line 0 source locations for nops emitted as
basic block padding.

---------

Co-authored-by: Orlando Cazalet-Hyams <orlando.hyams at sony.com>


  Commit: a347bdb2b828272359e49a8ce9de9d6412950838
      https://github.com/llvm/llvm-project/commit/a347bdb2b828272359e49a8ce9de9d6412950838
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    R llvm/test/Transforms/SimplifyCFG/AMDGPU/skip-threading.ll
    M llvm/test/Transforms/SimplifyCFG/convergent.ll

  Log Message:
  -----------
  Revert "[SimplifyCFG] Skip threading if the target may have divergent branches" (#100994)

Reverts llvm/llvm-project#100185

See comments on PR (PR not accepted, outstanding review comments, breaks HIP-clang buildbot)


  Commit: fdfeea5bd6763277b5078e33e17e1bfc521a6cba
      https://github.com/llvm/llvm-project/commit/fdfeea5bd6763277b5078e33e17e1bfc521a6cba
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/Transforms/OMPMapInfoFinalization.cpp
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpsInterfaces.td
    M mlir/lib/Conversion/SCFToOpenMP/SCFToOpenMP.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir

  Log Message:
  -----------
  [MLIR][OpenMP][Flang] Normalize clause arguments names (#99505)

Currently, there are some inconsistencies to how clause arguments are
named in the OpenMP dialect. Additionally, the clause operand structures
associated to them also diverge in certain cases. The purpose of this
patch is to normalize argument names across all `OpenMP_Clause` tablegen
definitions and clause operand structures.

This has the benefit of providing more consistent representations for
clauses in the dialect, but the main short-term advantage is that it
enables the development of an OpenMP-specific tablegen backend to
automatically generate the clause operand structures without breaking
dependent code.

The main re-naming decisions made in this patch are the following:
- Variadic arguments (i.e. multiple values) have the "_vars" suffix.
This and other similar suffixes are removed from array attribute
arguments.
- Individual required or optional value arguments do not have any suffix
added to them (e.g. "val", "var", "expr", ...), except for `if` which
would otherwise result in an invalid C++ variable name.
- The associated clause's name is prepended to argument names that don't
already contain it as part of its name. This avoids future collisions
between arguments named the same way on different clauses and adding
both clauses to the same operation.
- Privatization and reduction related arguments that contain lists of
symbols pointing to privatizer/reducer operations use the "_syms"
suffix. This removes the inconsistencies between the names for
"copyprivate_funcs", "[in]reductions", "privatizers", etc.
- General improvements to names, replacement of camel case for snake
case everywhere, etc.
- Renaming of operation-associated operand structures to use the
"Operands" suffix in place of "ClauseOps", to better differentiate
between clause operand structures and operation operand structures.
- Fields on clause operand structures are sorted according to the
tablegen definition of the same clause.

The assembly format for a few arguments is updated to better reflect the
clause they are associated with:
  - `chunk_size` -> `dist_schedule_chunk_size`
  - `grain_size` -> `grainsize`
  - `simd` -> `par_level_simd`


  Commit: 389679d5f9055bffe8bbd25ae41f084a8d08e0f8
      https://github.com/llvm/llvm-project/commit/389679d5f9055bffe8bbd25ae41f084a8d08e0f8
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/test/CodeGen/aarch64-sme-inline-streaming-attrs.c

  Log Message:
  -----------
  Reland: "[Clang] Demote always_inline error to warning for mismatching SME attrs" (#100991) (#100996)

Test `aarch64-sme-inline-streaming-attrs.c` caused some buildbot
failures, because the test was missing a `REQUIRES: aarch64-registered
target`. This was because we've demoted the error to a warning, which
then resulted in a different error message, because Clang can't actually
CodeGen the IR.


  Commit: 46ecd7bbe895c12f77feea7353da43c32d1a8a41
      https://github.com/llvm/llvm-project/commit/46ecd7bbe895c12f77feea7353da43c32d1a8a41
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Create `LoopRelatedClause` (#99506)

This patch introduces a new OpenMP clause definition not defined by the spec.

Its main purpose is to define the `loop_inclusive` (previously "inclusive",
renamed according to the parent of this PR in the stack) argument of
`omp.loop_nest` in such a way that a followup implementation of a tablegen
backend to automatically generate clause and operation operand structures
directly from `OpenMP_Op` and `OpenMP_Clause` definitions can properly generate
the `LoopNestOperands` structure.

`collapse` clause arguments are also moved into this new definition, as they
represent information on the loop nests being collapsed rather than the
`collapse` clause itself.


  Commit: 0a94511aec7a41194c0e61d88801312542ff70ce
      https://github.com/llvm/llvm-project/commit/0a94511aec7a41194c0e61d88801312542ff70ce
  Author: Mitch Phillips <31459023+hctim at users.noreply.github.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M compiler-rt/lib/gwp_asan/definitions.h
    M compiler-rt/lib/gwp_asan/platform_specific/guarded_pool_allocator_fuchsia.cpp
    M compiler-rt/lib/gwp_asan/platform_specific/guarded_pool_allocator_posix.cpp
    M compiler-rt/lib/gwp_asan/platform_specific/utilities_fuchsia.cpp
    M compiler-rt/lib/gwp_asan/platform_specific/utilities_posix.cpp
    M compiler-rt/lib/gwp_asan/tests/CMakeLists.txt
    A compiler-rt/lib/gwp_asan/tests/utilities.cpp
    M compiler-rt/lib/gwp_asan/utilities.h

  Log Message:
  -----------
  Log errno (or fuchsia equivalent) on map failures (#95391)

A feature requested by Android, we should log errno (or the
corresponding fuchsia error status) as part of the message when
mmap/mprotect/etc. fails.


  Commit: 102f322557b0969ea5b85448df1b03508554218c
      https://github.com/llvm/llvm-project/commit/102f322557b0969ea5b85448df1b03508554218c
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Add missing clauses to OpenMP op definitions (#99507)

This patch adds the missing `OpenMP_Clause` definitions to all existing
`OpenMP_Op`s and updates their operand structure based builders to
initialize the new arguments.

The result of this change is that operation operand structures are now
based in the same list of clauses as their tablegen counterparts. This
means that all of the information needed is now in place to
automatically generate OpenMP operand structures from tablegen
defitions.

Since this change doesn't involve the introduction of actual support for
these clauses, new arguments are not initialized from values stored in
the corresponding operand structure fields but rather set to empty or
null. Those should be updated when support for these clauses on the
corresponding operation is added.


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

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/shuffle-other.ll
    M llvm/test/Transforms/VectorCombine/AArch64/select-shuffle.ll

  Log Message:
  -----------
  Revert "[AArch64] Remove special-case inserted shuffle cost."

This reverts commit f67fa3be4db68afc08c7f3d9523f1533fa5687b7.

Caused test suite failures on AArch64:
https://lab.llvm.org/buildbot/#/builders/17/builds/1349


  Commit: d1f3a92ea9c491855b3186e84115fefe7c4185ee
      https://github.com/llvm/llvm-project/commit/d1f3a92ea9c491855b3186e84115fefe7c4185ee
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/shuffle-other.ll
    M llvm/test/Transforms/VectorCombine/AArch64/select-shuffle.ll

  Log Message:
  -----------
  Revert "[AArch64] Remove special-case inserted shuffle cost."

This reverts commit 19b785b7334d01354e8430634bab3c3341c671ca.

My bisect must have been wrong because they're still failing,
and there are follow ups to this that would need unpicking anyway.


  Commit: 9e462b7ea23ea864b1f3f3b72d25cfbed95149d5
      https://github.com/llvm/llvm-project/commit/9e462b7ea23ea864b1f3f3b72d25cfbed95149d5
  Author: Fabian Ritter <fabian.ritter at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp

  Log Message:
  -----------
  [LowerMemIntrinsics][NFC] Use Align in TTI::getMemcpyLoopLoweringType (#100984)

...and also in TTI::getMemcpyLoopResidualLoweringType.


  Commit: 1f38301957c1f41722e219ede5d56d67c000213e
      https://github.com/llvm/llvm-project/commit/1f38301957c1f41722e219ede5d56d67c000213e
  Author: Julien Schueller <schueller at phimeca.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/Affine/Analysis/CMakeLists.txt

  Log Message:
  -----------
  [mlir] Fix missing FuncOps.h.inc (#97885)

Closes #84568

Similar to #71691 (reproduce with make -j1)


  Commit: f7491f53cbef28ecea764a6a47ae69338fb7afbe
      https://github.com/llvm/llvm-project/commit/f7491f53cbef28ecea764a6a47ae69338fb7afbe
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/ctpop-pow2.ll
    M llvm/test/Transforms/InstCombine/ctpop.ll
    M llvm/test/Transforms/InstCombine/icmp-ne-pow2.ll
    M llvm/test/Transforms/InstCombine/ispow2.ll

  Log Message:
  -----------
  [InstCombine] Reduce range of ctpop for non zero argument (#100899)


  Commit: 13d39cb6f7b20e596b66f59ebf4dba766451398b
      https://github.com/llvm/llvm-project/commit/13d39cb6f7b20e596b66f59ebf4dba766451398b
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/test/Analysis/stream.c

  Log Message:
  -----------
  [analyzer] Fix crash of StreamChecker when eval calling 'fopen' (#100990)

Actually, on the failure branch of `fopen`, the resulting pointer could
alias with `stdout` iff `stdout` is already known to be null.
We crashed in this case as the implementation assumed that the
state-split for creating the success and failure branches both should be
viable; thus dereferenced both of those states - leading to the crash.

To fix this, let's just only add this no-alias property for the success
path, and that's it :)

Fixes #100901


  Commit: 77655f42d58e85875c4b4e28a73208b64a653c2a
      https://github.com/llvm/llvm-project/commit/77655f42d58e85875c4b4e28a73208b64a653c2a
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/Arith/IR/ArithOps.cpp

  Log Message:
  -----------
  [mlir][arith] Assert preconditions in `BitcastOp::fold`. (#100743)

This PR adds an assertion to `BitcastOp::fold` that fails if that
function is called on invalid IR. That can happen when patterns, passes,
etc. create (invalid) IR using builders and folding is triggered on that
IR before verification, for example, through `OpBuilder::createOrFold`.
The new assert triggers earlier than previously in order to help getting
to the root cause faster.

Signed-off-by: Ingo Müller <ingomueller at google.com>


  Commit: e6fa09f445f172bfd0c011adc6bf36e38816b781
      https://github.com/llvm/llvm-project/commit/e6fa09f445f172bfd0c011adc6bf36e38816b781
  Author: Thomas Hashem <35398565+hashemthomas1 at users.noreply.github.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    A llvm/test/Transforms/SCCP/float-denormal-simplification.ll

  Log Message:
  -----------
  [SCCP] Add context to SimplifyQuery (#100831)


  Commit: 4cdc19b84cf48189e40915178d60991f6fc469b2
      https://github.com/llvm/llvm-project/commit/4cdc19b84cf48189e40915178d60991f6fc469b2
  Author: vdonaldson <37090318+vdonaldson at users.noreply.github.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/Exceptions.h
    M flang/include/flang/Runtime/exceptions.h
    M flang/include/flang/Runtime/magic-numbers.h
    M flang/lib/Evaluate/real.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Exceptions.cpp
    M flang/lib/Optimizer/Builder/Runtime/Numeric.cpp
    M flang/runtime/exceptions.cpp
    M flang/test/Evaluate/fold-nearest.f90
    A flang/test/Lower/Intrinsics/ieee_next.f90
    M flang/test/Lower/Intrinsics/nearest.f90
    M flang/unittests/Optimizer/Builder/Runtime/NumericTest.cpp

  Log Message:
  -----------
  [flang] IEEE_NEXT_AFTER, IEEE_NEXT_DOWN, IEEE_NEXT_UP, NEAREST (#100782)

IEEE_ARITHMETIC intrinsic module procedures IEEE_NEXT_AFTER,
IEEE_NEXT_DOWN, and IEEE_NEXT_UP, and intrinsic NEAREST return larger or
smaller values adjacent to their primary REAL argument. The four
procedures vary in how the direction is chosen, in how special cases are
treated, and in what exceptions are generated. Implement the three
IEEE_ARITHMETIC procedures. Update the NEAREST implementation to support
all six REAL kinds 2,3,4,8,10,16, and fix several bugs.

IEEE_NEXT_AFTER(X,Y) returns a NaN when Y is a NaN as that seems to be
the universal choice of other compilers.

Change the front end compile time implementation of these procedures to
return normal (HUGE) values for infinities when applicable, rather than
always returning the input infinity.


  Commit: f7e9d48a73dd68c8b652692d8a9e559a6ceb722e
      https://github.com/llvm/llvm-project/commit/f7e9d48a73dd68c8b652692d8a9e559a6ceb722e
  Author: Braden Helmer <bradenhelmeraus at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [Clang] Fix confusing diagnositcs related to explicit this parameters (#100351)

Fixes #97878.

This PR improves diagnostics related to explicit 'this' parameters.
Previously, the 'this' parameter would be incorrectly underlined when
diagnosing a bad conversion.


  Commit: ad778889cf5ce74be3193fae1d3b2bce34a56863
      https://github.com/llvm/llvm-project/commit/ad778889cf5ce74be3193fae1d3b2bce34a56863
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [DAG] Add SDPatternMatch for VScale nodes


  Commit: d2304427cb0270259bc083a3db27413823f56e59
      https://github.com/llvm/llvm-project/commit/d2304427cb0270259bc083a3db27413823f56e59
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [DAG][NFC] Use SDPatternMatch for VScale in some instances


  Commit: e1065370aaacb1b1cb48e77d37d376bf024f4a39
      https://github.com/llvm/llvm-project/commit/e1065370aaacb1b1cb48e77d37d376bf024f4a39
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/test/CodeGen/RISCV/rvv/extractelt-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitcast.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-bitcast.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-llrint.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lrint.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfptoi-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/rvv/insertelt-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/unmasked-ta.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmv.f.s.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmv.s.f.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-vp.ll

  Log Message:
  -----------
  [RISCV] Remove vfmv.s.f and vfmv.f.s lmul pseudo variants (#100970)

In #71501 we removed the LMUL variants for vmv.s.x and vmv.x.s because
they ignore register groups, so this patch does the same for their
floating point equivalents.

We don't need to add any extra patterns for extractelt in
RISCVInstrInfoVSDPatterns.td because in lowerEXTRACT_VECTOR_ELT we make
sure that the node is narrowed down to LMUL 1.


  Commit: 97c62b8f7501d1c6c2f507b075fbe45a31d2b9dc
      https://github.com/llvm/llvm-project/commit/97c62b8f7501d1c6c2f507b075fbe45a31d2b9dc
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/test/Driver/linker-wrapper.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td

  Log Message:
  -----------
  [LinkerWrapper] Forward `-mllvm` and `--offload-opt` arguments to device (#100424)

Summary:
Previously we could parse these internally as they would be used by the
embedded LTO job. Now, this LTO is passed to the linker utilities which
means these need to be forwarded. So this can now either be done with
`--offload-opt` which works in the clang job, or with `-Xoffload-linker`
manually.

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


  Commit: 77ff969e5d6a561606ea87fbae101195417d4d73
      https://github.com/llvm/llvm-project/commit/77ff969e5d6a561606ea87fbae101195417d4d73
  Author: Jonathan Peyton <jonathan.l.peyton at intel.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M openmp/runtime/src/kmp_affinity.cpp
    M openmp/runtime/src/kmp_affinity.h

  Log Message:
  -----------
  [OpenMP] Add topology and affinity changes for Meteor Lake (#91012)

These are Intel-specific changes for the CPUID leaf 31 method for
detecting machine topology.

* Cleanup known levels usage in x2apicid topology algorithm
Change to be a constant mask of all Intel topology type values.

* Take unknown ids into account when sorting them
If a hardware id is unknown, then put further down the hardware thread
list so it will take last priority when assigning to threads.

* Have sub ids printed out for hardware thread dump

* Add caches to topology 
New` kmp_cache_ids_t` class helps create cache ids which are then put
into the topology table after regular topology type ids have been put
in.

* Allow empty masks in place list creation
Have enumeration information and place list generation take into account
that certain hardware threads may be lacking certain layers

* Allow different procs to have different number of topology levels
Accommodates possible situation where CPUID.1F has different depth for
different hardware threads. Each hardware thread has a topology
description which is just a small set of its topology levels. These
descriptions are tracked to see if the topology is uniform or not.

* Change regular ids with logical ids
Instead of keeping the original sub ids that the x2apicid topology
detection algorithm gives, change each id to its logical id which is a
number: [0, num_items - 1]. This makes inserting new layers into the
topology significantly simpler.

* Insert caches into topology
This change takes into account that most topologies are uniform and
therefore can use the quicker method of inserting caches as equivalent
layers into the topology.


  Commit: 916a91578f7b367c106859a0b46d8ce573bce36a
      https://github.com/llvm/llvm-project/commit/916a91578f7b367c106859a0b46d8ce573bce36a
  Author: Jonathan Peyton <jonathan.l.peyton at intel.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M openmp/runtime/src/kmp_affinity.cpp

  Log Message:
  -----------
  [OpenMP] Assign thread ids in the cpuinfo topology method (#91013)

On non-hyperthreaded machines, the thread id is not always explicit in
the /proc/cpuinfo file. This patch adds a check to ensure the thread ids
are put in.


  Commit: 3ef922081193ae1c46683f3ca282e700efc9005e
      https://github.com/llvm/llvm-project/commit/3ef922081193ae1c46683f3ca282e700efc9005e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/arith-overflow.ll

  Log Message:
  -----------
  [CostModel][X86] Add missing AVX512 vector mul overflow intrinsic costs

Fix regressions in #100519


  Commit: 1b4be6a474b3747765a218201bd637f899fd9b66
      https://github.com/llvm/llvm-project/commit/1b4be6a474b3747765a218201bd637f899fd9b66
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/ARM/vselect_imax.ll

  Log Message:
  -----------
  [ARM] Regenerate vselect_imax.ll


  Commit: 363c1e6e517281ad387fd91787545d632e7c48b6
      https://github.com/llvm/llvm-project/commit/363c1e6e517281ad387fd91787545d632e7c48b6
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M offload/test/offloading/bug51781.c

  Log Message:
  -----------
  [OpenMP] Re-enable test after correctly forwarding `mllvm`


  Commit: 53c37f300dd1b450671f2aee4cc649c380adb5ad
      https://github.com/llvm/llvm-project/commit/53c37f300dd1b450671f2aee4cc649c380adb5ad
  Author: Stefan Pintilie <stefanp at ca.ibm.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.td
    M llvm/test/CodeGen/PowerPC/aix-vec_insert_elt.ll
    M llvm/test/CodeGen/PowerPC/aix32-p8-scalar_vector_conversions.ll
    M llvm/test/CodeGen/PowerPC/build-vector-tests.ll
    M llvm/test/CodeGen/PowerPC/builtins-ppc-xlcompat-pwr9-64bit.ll
    M llvm/test/CodeGen/PowerPC/canonical-merge-shuffles.ll
    M llvm/test/CodeGen/PowerPC/combine-fneg.ll
    M llvm/test/CodeGen/PowerPC/constant-pool.ll
    M llvm/test/CodeGen/PowerPC/elf64-byval-cc.ll
    M llvm/test/CodeGen/PowerPC/fma-combine.ll
    M llvm/test/CodeGen/PowerPC/fp-strict-round.ll
    M llvm/test/CodeGen/PowerPC/frem.ll
    M llvm/test/CodeGen/PowerPC/handle-f16-storage-type.ll
    M llvm/test/CodeGen/PowerPC/ldexp.ll
    M llvm/test/CodeGen/PowerPC/p10-splatImm-CPload-pcrel.ll
    M llvm/test/CodeGen/PowerPC/p8-scalar_vector_conversions.ll
    M llvm/test/CodeGen/PowerPC/pcrel-call-linkage-leaf.ll
    M llvm/test/CodeGen/PowerPC/save-reg-params.ll
    M llvm/test/CodeGen/PowerPC/select_const.ll
    M llvm/test/CodeGen/PowerPC/subreg-coalescer.mir
    M llvm/test/CodeGen/PowerPC/subreg-lanemasks.mir
    M llvm/test/CodeGen/PowerPC/toc-float.ll
    M llvm/test/CodeGen/PowerPC/variable_elem_vec_extracts.ll
    M llvm/test/CodeGen/PowerPC/vec_insert_elt.ll
    M llvm/test/CodeGen/PowerPC/vector-constrained-fp-intrinsics.ll
    M llvm/test/CodeGen/PowerPC/vector-llrint.ll
    M llvm/test/CodeGen/PowerPC/vector-lrint.ll
    M llvm/test/CodeGen/PowerPC/vector-reduce-fadd.ll
    M llvm/test/CodeGen/PowerPC/vector-reduce-fmax.ll
    M llvm/test/CodeGen/PowerPC/vector-reduce-fmin.ll
    M llvm/test/CodeGen/PowerPC/vector-reduce-fmul.ll
    M llvm/test/CodeGen/PowerPC/vsx.ll

  Log Message:
  -----------
  [PowerPC] Add phony subregisters to cover the high half of the VSX registers. (#94628)

On PowerPC there are 128 bit VSX registers. These registers are half
overlapped with 64 bit floating point registers (FPR). The 64 bit half
of the VXS register that does not overlap with the FPR does not overlap
with any other register class. The FPR are the only subregisters of the
VSX registers but they do not fully cover the 128 bit super register.
This leads to incorrect lane masks being created.

This patch adds phony registers for the other half of the VSX registers
in order to fully cover them and to make sure that the lane masks are
not the same for the VSX and the floating point register.


  Commit: 64199bf332567aeeff02841022d967325b318075
      https://github.com/llvm/llvm-project/commit/64199bf332567aeeff02841022d967325b318075
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [libc] make aarch64 libm entrypoints consistent w/ x86-64 (#100963)

Test passes locally.


  Commit: 0a1ce1ae62f58eacf98b89487065fedccbc7cd68
      https://github.com/llvm/llvm-project/commit/0a1ce1ae62f58eacf98b89487065fedccbc7cd68
  Author: Kohei Yamaguchi <fix7211 at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Ptr/IR/CMakeLists.txt

  Log Message:
  -----------
  [mlir][doc] Fix docs for `PtrDialect` using the `-gen-dialect-doc`(NFC) (#101013)


  Commit: 7647f88234cadf0aed019abb1fc723c6708b871c
      https://github.com/llvm/llvm-project/commit/7647f88234cadf0aed019abb1fc723c6708b871c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/test/CodeGen/RISCV/rv64zba.ll

  Log Message:
  -----------
  [RISCV] Add isel special case for (and (srl X, c2), c1) -> (slli_uw (srli x, c2+c3), c3). (#100966)

Where c1 is a shifted mask with 32 set bits and c3 trailing zeros.

Fixes #100936.


  Commit: 922558f47446fc732aa474f7bffc3190b4ffab43
      https://github.com/llvm/llvm-project/commit/922558f47446fc732aa474f7bffc3190b4ffab43
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [RISCV] Remove registers from ins of Priv instructions. (#100857)

The rd and rs1 encoding are already forced to 0s. We don't need
registers too.


  Commit: 2c37334d8dce7ef7d3ecc8c80522fe73010b12cc
      https://github.com/llvm/llvm-project/commit/2c37334d8dce7ef7d3ecc8c80522fe73010b12cc
  Author: William Junda Huang <williamjhuang at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/SSAUpdaterImpl.h

  Log Message:
  -----------
  [Transforms] Speed up SSAUpdater::FindExistingPHI (#100281)

In SSAUpdater::FindExistingPHI, the cleanup function is inefficient for
large function with many blocks because it clears the Phi value
reference for every block if not matched for every phi value, even if
most blocks are not modified by CheckIfPHIMatches. This behavior is
particularly slow for large functions because the complexity is Θ(# PHI
* # BBs).


Updated the behavior to only clear modified blocks, which in practice
has a much less complexity because of early exit on PHI mismatch.


  Commit: 7a2a36f952e5f1c0184e5de0bb8a32b5d2382427
      https://github.com/llvm/llvm-project/commit/7a2a36f952e5f1c0184e5de0bb8a32b5d2382427
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
    M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.h
    M llvm/lib/Target/ARM/ARMMCInstLower.cpp
    M llvm/lib/Target/CSKY/CSKYAsmPrinter.cpp
    M llvm/lib/Target/CSKY/CSKYAsmPrinter.h
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.h
    M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
    M llvm/lib/Target/Mips/MipsAsmPrinter.h
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/utils/TableGen/PseudoLoweringEmitter.cpp

  Log Message:
  -----------
  [AsmPrinter] Don't EmitToStreamer instructions lowered by tblgenned code (#100803)

This allows lowering individual instructions in a bundle before a single
call to EmitToStreamer for VLIW targets.


  Commit: 7b3db551e499a7ecef6a29c0ffbc923c45277332
      https://github.com/llvm/llvm-project/commit/7b3db551e499a7ecef6a29c0ffbc923c45277332
  Author: Jannick Kremer <51118500+DeinAlptraum at users.noreply.github.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/bindings/python/clang/cindex.py

  Log Message:
  -----------
  [libclang/python] Export all enums (#100941)

This resolves #48212 and also adds the remaining unexposed Enums


  Commit: b66310f938f36557f44042e300e5894e39297b2b
      https://github.com/llvm/llvm-project/commit/b66310f938f36557f44042e300e5894e39297b2b
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [RISCV][TTI] Split costing of [u/s]int_to_fp from fp_to_[u/s]int [nfc] (#101029)

The amount of code sharing between them is fairly small, and the split
version is much easier to read.


  Commit: ee57ce57d8094026e2795182758bc57027a72293
      https://github.com/llvm/llvm-project/commit/ee57ce57d8094026e2795182758bc57027a72293
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/SemaCXX/destructor.cpp

  Log Message:
  -----------
  [Clang] prevent checking destructor reference with an invalid initializer (#97860)

Fixes #97230


  Commit: 150bf637baad2ba4df6369600b65d897ed9b31a7
      https://github.com/llvm/llvm-project/commit/150bf637baad2ba4df6369600b65d897ed9b31a7
  Author: Pavel Skripkin <paskripkin at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/test/AST/attr-print-emit.cpp
    M clang/test/Sema/attr-ownership.c
    M clang/test/Sema/attr-ownership.cpp

  Log Message:
  -----------
  [Clang][Sema] Disallow applying `onwership_returns` to functions that return non-pointers (#99564)

`onwership_returns` works only with pointers, since it models
user-defined memory allocation functions. Make semantics more clear and
report an error if attribute is attached to wrong function.

Closes #99501


  Commit: e65882fec9689b2232575530bab0776d7c303dae
      https://github.com/llvm/llvm-project/commit/e65882fec9689b2232575530bab0776d7c303dae
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
    A llvm/test/Transforms/InstCombine/lib-call-exit.ll

  Log Message:
  -----------
  [InstCombine][InferFunctionAttrs] Add tests for inferring `cold` on exit/abort; NFC


  Commit: 67fb7c34f11df03ac359571dd4d503a36e06275e
      https://github.com/llvm/llvm-project/commit/67fb7c34f11df03ac359571dd4d503a36e06275e
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
    M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
    M llvm/test/Transforms/InstCombine/lib-call-exit.ll
    M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp

  Log Message:
  -----------
  [TLI] Add support for inferring attr `cold` on `exit`/`abort`

`abort` can be assumed always cold and assume non-zero `exit` status
as a `cold` path as well.

Closes #101003


  Commit: 135a1e90a3066f61ca741e9ebebfec79c9595ea5
      https://github.com/llvm/llvm-project/commit/135a1e90a3066f61ca741e9ebebfec79c9595ea5
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/docs/DirectX/DXILResources.rst

  Log Message:
  -----------
  [DirectX] Update "dx.TypedBuffer" docs to include a "signed" bit (#100695)

To lower these types to dxil we need to know whether ints are signed or
not, but the LLVM type loses that. Add a bit to indicate it's so.


  Commit: 0d9b4394081df959b3752283ed9ca303759dda61
      https://github.com/llvm/llvm-project/commit/0d9b4394081df959b3752283ed9ca303759dda61
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorMask.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp

  Log Message:
  -----------
  [mlir][vector] Use `DenseI64ArrayAttr` for constant_mask dim sizes (#100997)

This prevents a bunch of boilerplate conversions to/from IntegerAttrs
and int64_ts. Other than that this is a NFC.


  Commit: 2c0ec01b516deba8922c1aae59b1907de6443587
      https://github.com/llvm/llvm-project/commit/2c0ec01b516deba8922c1aae59b1907de6443587
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/test/Driver/amdgpu-toolchain.c

  Log Message:
  -----------
  [AMDGPU] Correctly pass the target-id to `ld.lld` (#101037)

Summary:
The `ld.lld` linker handles LTO, but it does not understand the
target-id syntax some AMDGPU targets use. This patch parses the
target-id and passes the processor name in `-mcpu` and features in
`-mattr`.


  Commit: 0dd1128d6341283d60150d294a9c4db1ba38f8b2
      https://github.com/llvm/llvm-project/commit/0dd1128d6341283d60150d294a9c4db1ba38f8b2
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [DAG] Add SDPatternMatch::m_VSelect (#100758)

As per the comment in
https://github.com/llvm/llvm-project/pull/100686#pullrequestreview-2201991135


  Commit: 197f4a90519df308d9bfddcc931f7683a5ae9cb9
      https://github.com/llvm/llvm-project/commit/197f4a90519df308d9bfddcc931f7683a5ae9cb9
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/external-used-across-reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gather-extractelements-different-bbs.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-gather-non-scheduled-extracts.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-logical.ll

  Log Message:
  -----------
  [SLP]Remove ExtraArgs from reductions.

No need to handle extra arguments during the reductions anymore, the
compiler now can handle all reduced values and reduction operands
correctly, even if they are from different basic blocks.

Simplifies analysis, reduces compiler size, improves overall
vectorization.

Metric: size..text
test-suite :: SingleSource/Benchmarks/Misc-C++/stepanov_container.test    16668.00    17148.00  2.9%
test-suite :: External/SPEC/CINT2006/483.xalancbmk/483.xalancbmk.test  2389675.00  2418683.00  1.2%
test-suite :: MultiSource/Benchmarks/ASCI_Purple/SMG2000/smg2000.test   253517.00   253645.00  0.1%
test-suite :: MultiSource/Benchmarks/Bullet/bullet.test   309678.00   309806.00  0.0%
test-suite :: MultiSource/Applications/JM/ldecod/ldecod.test   389203.00   389363.00  0.0%
test-suite :: MultiSource/Benchmarks/MiBench/consumer-jpeg/consumer-jpeg.test   111120.00   111152.00  0.0%
test-suite :: MultiSource/Benchmarks/tramp3d-v4/tramp3d-v4.test  1039103.00  1039215.00  0.0%
test-suite :: External/SPEC/CFP2017rate/511.povray_r/511.povray_r.test  1155883.00  1155963.00  0.0%
test-suite :: MicroBenchmarks/LoopVectorization/LoopInterleavingBenchmarks.test   276646.00   276662.00  0.0%
test-suite :: MultiSource/Applications/JM/lencod/lencod.test   848691.00   848739.00  0.0%
test-suite :: External/SPEC/CFP2006/453.povray/453.povray.test  1138604.00  1138636.00  0.0%
test-suite :: External/SPEC/CINT2006/445.gobmk/445.gobmk.test   910201.00   910217.00  0.0%
test-suite :: External/SPEC/CFP2017rate/526.blender_r/526.blender_r.test 12385484.00 12385628.00  0.0%
test-suite :: External/SPEC/CINT2017speed/602.gcc_s/602.gcc_s.test  9667580.00  9667676.00  0.0%
test-suite :: External/SPEC/CINT2017rate/502.gcc_r/502.gcc_r.test  9667580.00  9667676.00  0.0%
test-suite :: External/SPEC/CINT2017rate/523.xalancbmk_r/523.xalancbmk_r.test  2856182.00  2856198.00  0.0%
test-suite :: External/SPEC/CINT2017speed/623.xalancbmk_s/623.xalancbmk_s.test  2856182.00  2856198.00  0.0%
test-suite :: External/SPEC/CINT2006/464.h264ref/464.h264ref.test   773224.00   773192.00 -0.0%
test-suite :: MultiSource/Benchmarks/7zip/7zip-benchmark.test  1035148.00  1035084.00 -0.0%
test-suite :: External/SPEC/CINT2017speed/631.deepsjeng_s/631.deepsjeng_s.test    98126.00    98094.00 -0.0%
test-suite :: External/SPEC/CINT2017rate/531.deepsjeng_r/531.deepsjeng_r.test    97966.00    97934.00 -0.0%
test-suite :: MultiSource/Benchmarks/MallocBench/gs/gs.test   167391.00   167215.00 -0.1%
test-suite :: MultiSource/Applications/ALAC/encode/alacconvert-encode.test    56685.00    56605.00 -0.1%
test-suite :: MultiSource/Applications/ALAC/decode/alacconvert-decode.test    56685.00    56605.00 -0.1%
test-suite :: SingleSource/Regression/C/gcc-c-torture/execute/GCC-C-execute-20050826-2.test     1302.00     1294.00 -0.6%

Misc-C++/stepanov_container - better code due to cost fixes.
483.xalancbmk - better code due to cost fixes.
ASCI_Purple/SMG2000 - better code due to cost fixes.
Benchmarks/Bullet - better vector code because of the cost.
JM/ldecod - extra code remain scalar, extra reduction vectorized
consumer-jpeg - extra code remain scalar because of the cost.
tramp3d-v4 - better vectorization because of cost fixes.
511.povray_r - better vectorization because of cost fixes.
LoopInterleavingBenchmarks - extra reductions are vectorized
JM/lencod - small changes in vector code because of extract cost fixes.
453.povray - small changes in vector code because of extract cost fixes.
445.gobmk - extra small reduction vectorized
526.blender_r - extra reduced scalars, better small reduction, small
changes in the vetorization because of the fixes for extracts cost
602.gcc_s
502.gcc_r - small changes in reductions vectorization because of the
fixes in the extract cost.
631.deepsjeng_s
623.xalancbmk_s - small changes in reductions vectorization because of
the fixes in the extract cost.
MallocBench/gs - extra code remain scalar because of extracts cost
alacconvert-encode - extra code remain scalar because of extracts cost
alacconvert-decode - extra code remain scalar because of extracts cost
GCC-C-execute-20050826-2 - extra reduction gets vectorized

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: 945dd9a740958e3c1230f3661edec53a5d858675
      https://github.com/llvm/llvm-project/commit/945dd9a740958e3c1230f3661edec53a5d858675
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [NFC][Load] Find better place for `mustSuppressSpeculation` (#100794)

And extract `suppressSpeculativeLoadForSanitizers`.

For #100639.


  Commit: 07f3a08c614afe32b845aa44db5a6a0e44ce24a7
      https://github.com/llvm/llvm-project/commit/07f3a08c614afe32b845aa44db5a6a0e44ce24a7
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/Loads.h
    M polly/lib/Analysis/ScopBuilder.cpp
    M polly/lib/Analysis/ScopDetection.cpp

  Log Message:
  -----------
  [NFC][Load] Make `ScanFrom` required parameters (#100789)

In #100773 we will go conservative for sanitizers,
so it's better to pinpoint location consciously.

For #100639.


  Commit: a55dc0b88be68706ab854ae3a3b63eeb26e08172
      https://github.com/llvm/llvm-project/commit/a55dc0b88be68706ab854ae3a3b63eeb26e08172
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M bolt/include/bolt/Core/DebugData.h
    M bolt/lib/Core/DIEBuilder.cpp
    M bolt/lib/Core/DebugData.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M bolt/test/AArch64/dummy-return.s
    A bolt/test/X86/dwarf5-df-larger-batch-size.test
    M clang-tools-extra/clang-tidy/add_new_check.py
    M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
    M clang/bindings/python/clang/cindex.py
    M clang/docs/ReleaseNotes.rst
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/AST/ASTImporter.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/Analysis/FlowSensitive/AdornedCFG.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Driver/Options.td
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/Analysis/FlowSensitive/AdornedCFG.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/lib/Analysis/LiveVariables.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/test/AST/attr-print-emit.cpp
    A clang/test/AST/explicit-base-class-move-cntr.cpp
    M clang/test/Analysis/live-stmts.cpp
    A clang/test/Analysis/short-circuiting-eval.cpp
    M clang/test/Analysis/stream.c
    M clang/test/CodeGen/aarch64-sme-inline-streaming-attrs.c
    A clang/test/CodeGen/arm64ec-hybrid-patchable.c
    A clang/test/CodeGenCXX/debug-info-explicit-this.cpp
    M clang/test/Driver/amdgpu-toolchain.c
    M clang/test/Driver/immediate-options.c
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    M clang/test/Sema/attr-ownership.c
    M clang/test/Sema/attr-ownership.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp
    M clang/test/SemaCXX/destructor.cpp
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
    M compiler-rt/CMakeLists.txt
    M compiler-rt/lib/gwp_asan/definitions.h
    M compiler-rt/lib/gwp_asan/platform_specific/guarded_pool_allocator_fuchsia.cpp
    M compiler-rt/lib/gwp_asan/platform_specific/guarded_pool_allocator_posix.cpp
    M compiler-rt/lib/gwp_asan/platform_specific/utilities_fuchsia.cpp
    M compiler-rt/lib/gwp_asan/platform_specific/utilities_posix.cpp
    M compiler-rt/lib/gwp_asan/tests/CMakeLists.txt
    A compiler-rt/lib/gwp_asan/tests/utilities.cpp
    M compiler-rt/lib/gwp_asan/utilities.h
    R compiler-rt/test/builtins/Unit/ppc/test
    R compiler-rt/test/builtins/Unit/test
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/Exceptions.h
    M flang/include/flang/Runtime/exceptions.h
    M flang/include/flang/Runtime/magic-numbers.h
    M flang/lib/Evaluate/real.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Exceptions.cpp
    M flang/lib/Optimizer/Builder/Runtime/Numeric.cpp
    M flang/lib/Optimizer/Transforms/OMPMapInfoFinalization.cpp
    M flang/runtime/exceptions.cpp
    M flang/test/Driver/omp-driver-offload.f90
    M flang/test/Driver/target-cpu-features.f90
    M flang/test/Driver/target-gpu-features.f90
    M flang/test/Evaluate/fold-nearest.f90
    A flang/test/Lower/Intrinsics/ieee_next.f90
    M flang/test/Lower/Intrinsics/nearest.f90
    M flang/unittests/Optimizer/Builder/Runtime/NumericTest.cpp
    M libc/benchmarks/gpu/CMakeLists.txt
    M libc/benchmarks/gpu/LibcGpuBenchmark.cpp
    M libc/benchmarks/gpu/LibcGpuBenchmark.h
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/config/config.json
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/configure.rst
    M libc/docs/dev/undefined_behavior.rst
    M libc/fuzzing/math/RemQuoDiff.h
    M libc/fuzzing/stdlib/strtofloat_fuzz.cpp
    M libc/hdr/CMakeLists.txt
    A libc/hdr/math_function_macros.h
    M libc/hdr/math_macros.h
    M libc/newhdrgen/yaml/pthread.yaml
    M libc/spec/posix.td
    M libc/src/__support/OSUtil/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    R libc/src/__support/OSUtil/linux/pid.cpp
    R libc/src/__support/OSUtil/pid.h
    M libc/src/__support/threads/CMakeLists.txt
    M libc/src/__support/threads/linux/CMakeLists.txt
    M libc/src/__support/threads/linux/rwlock.h
    M libc/src/__support/threads/linux/thread.cpp
    M libc/src/__support/threads/thread.h
    R libc/src/__support/threads/tid.h
    M libc/src/compiler/generic/__stack_chk_fail.cpp
    M libc/src/pthread/CMakeLists.txt
    A libc/src/pthread/pthread_rwlock_clockrdlock.cpp
    A libc/src/pthread/pthread_rwlock_clockrdlock.h
    A libc/src/pthread/pthread_rwlock_clockwrlock.cpp
    A libc/src/pthread/pthread_rwlock_clockwrlock.h
    M libc/src/unistd/CMakeLists.txt
    M libc/src/unistd/getpid.h
    R libc/src/unistd/gettid.cpp
    R libc/src/unistd/gettid.h
    M libc/src/unistd/linux/CMakeLists.txt
    M libc/src/unistd/linux/fork.cpp
    M libc/src/unistd/linux/getpid.cpp
    M libc/startup/linux/CMakeLists.txt
    M libc/startup/linux/do_start.cpp
    M libc/test/integration/src/pthread/CMakeLists.txt
    M libc/test/integration/src/pthread/pthread_rwlock_test.cpp
    M libc/test/integration/src/unistd/CMakeLists.txt
    M libc/test/integration/src/unistd/fork_test.cpp
    M libc/test/src/math/CopySignTest.h
    M libc/test/src/math/FAbsTest.h
    M libc/test/src/math/FDimTest.h
    M libc/test/src/math/FMaxTest.h
    M libc/test/src/math/FMinTest.h
    M libc/test/src/math/FrexpTest.h
    M libc/test/src/math/ILogbTest.h
    M libc/test/src/math/LogbTest.h
    M libc/test/src/math/ModfTest.h
    M libc/test/src/math/RemQuoTest.h
    M libc/test/src/math/acosf_test.cpp
    M libc/test/src/math/acoshf_test.cpp
    M libc/test/src/math/asinf_test.cpp
    M libc/test/src/math/asinhf_test.cpp
    M libc/test/src/math/atan2f_test.cpp
    M libc/test/src/math/cbrt_test.cpp
    M libc/test/src/math/cos_test.cpp
    M libc/test/src/math/cosf_test.cpp
    M libc/test/src/math/coshf_test.cpp
    M libc/test/src/math/erff_test.cpp
    M libc/test/src/math/exp10_test.cpp
    M libc/test/src/math/exp10f_test.cpp
    M libc/test/src/math/exp2_test.cpp
    M libc/test/src/math/exp2f_test.cpp
    M libc/test/src/math/exp2m1f_test.cpp
    M libc/test/src/math/exp_test.cpp
    M libc/test/src/math/expf_test.cpp
    M libc/test/src/math/explogxf_test.cpp
    M libc/test/src/math/expm1_test.cpp
    M libc/test/src/math/expm1f_test.cpp
    M libc/test/src/math/log10_test.cpp
    M libc/test/src/math/log1p_test.cpp
    M libc/test/src/math/log1pf_test.cpp
    M libc/test/src/math/log2_test.cpp
    M libc/test/src/math/log2f_test.cpp
    M libc/test/src/math/log_test.cpp
    M libc/test/src/math/logf_test.cpp
    M libc/test/src/math/powf_test.cpp
    M libc/test/src/math/sin_test.cpp
    M libc/test/src/math/sincos_test.cpp
    M libc/test/src/math/sincosf_test.cpp
    M libc/test/src/math/sinf_test.cpp
    M libc/test/src/math/sinhf_test.cpp
    M libc/test/src/math/tan_test.cpp
    M libc/test/src/math/tanf_test.cpp
    M libc/test/src/math/tanhf_test.cpp
    M libc/test/src/unistd/CMakeLists.txt
    R libc/test/src/unistd/gettid_test.cpp
    M libc/test/utils/FPUtil/x86_long_double_test.cpp
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/include/__memory_resource/polymorphic_allocator.h
    A libcxx/test/std/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.class.general/equality.pass.cpp
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/ICF.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h
    M lld/ELF/ScriptLexer.cpp
    M lld/ELF/ScriptLexer.h
    M lld/ELF/ScriptParser.cpp
    M lld/ELF/ScriptParser.h
    M lld/ELF/Symbols.cpp
    M lld/ELF/Symbols.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/test/ELF/defsym.s
    M lld/test/ELF/gc-sections-with-provide.s
    M lld/test/ELF/linkerscript/at2.test
    M lld/test/ELF/linkerscript/at3.test
    M lld/test/ELF/linkerscript/group.s
    M lld/test/ELF/linkerscript/include-cycle.s
    M lld/test/ELF/linkerscript/insert-after.test
    M lld/test/ELF/linkerscript/insert-before.test
    M lld/test/ELF/linkerscript/outputarch.test
    M lld/test/ELF/linkerscript/overlay.test
    M lld/test/ELF/linkerscript/phdrs.s
    M lld/test/ELF/linkerscript/region-alias.s
    M lld/test/ELF/linkerscript/sections.s
    M lld/test/ELF/linkerscript/symbolreferenced.s
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Interpreter/Interfaces/ScriptedInterface.h
    A lldb/include/lldb/Interpreter/Interfaces/ScriptedInterfaceUsages.h
    M lldb/include/lldb/Symbol/SymbolFile.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/Commands/CommandObjectScripting.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Interpreter/CMakeLists.txt
    A lldb/source/Interpreter/Interfaces/CMakeLists.txt
    A lldb/source/Interpreter/Interfaces/ScriptedInterfaceUsages.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParser.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/test/API/lang/c/struct_types/main.c
    A lldb/test/Shell/SymbolFile/DWARF/vla.cpp
    M llvm/docs/DirectX/DXILResources.rst
    M llvm/include/llvm-c/Target.h
    M llvm/include/llvm/ADT/StableHashing.h
    M llvm/include/llvm/Analysis/Loads.h
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/include/llvm/Analysis/VecFuncs.def
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/CodeGen/DebugHandlerBase.h
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/include/llvm/Frontend/HLSL/HLSLResource.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/MC/MCFragment.h
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/Support/DXILABI.h
    M llvm/include/llvm/Transforms/Utils/SSAUpdaterImpl.h
    M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/Loads.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/MachineStableHash.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCFragment.cpp
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    R llvm/lib/Target/AArch64/peephole-sxtw.mir
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SMInstructions.td
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.h
    M llvm/lib/Target/ARM/ARMMCInstLower.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/CSKY/CSKYAsmPrinter.cpp
    M llvm/lib/Target/CSKY/CSKYAsmPrinter.h
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.h
    M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
    M llvm/lib/Target/Mips/MipsAsmPrinter.h
    M llvm/lib/Target/PowerPC/PPCGenScalarMASSEntries.cpp
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.td
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXVentana.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/LoopBoundSplit.cpp
    M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
    M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/lib/Transforms/Utils/ValueMapper.cpp
    M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Analysis/CostModel/AArch64/fptoi_sat.ll
    R llvm/test/Analysis/CostModel/AMDGPU/arith-fp.ll
    A llvm/test/Analysis/CostModel/AMDGPU/arithmetic_fence.ll
    A llvm/test/Analysis/CostModel/AMDGPU/canonicalize.ll
    A llvm/test/Analysis/CostModel/AMDGPU/copysign.ll
    A llvm/test/Analysis/CostModel/AMDGPU/exp.ll
    A llvm/test/Analysis/CostModel/AMDGPU/exp10.ll
    A llvm/test/Analysis/CostModel/AMDGPU/exp2.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fabs.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fma.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fmul.ll
    A llvm/test/Analysis/CostModel/AMDGPU/fmuladd.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fneg.ll
    A llvm/test/Analysis/CostModel/AMDGPU/frexp.ll
    A llvm/test/Analysis/CostModel/AMDGPU/is_fpclass.ll
    A llvm/test/Analysis/CostModel/AMDGPU/ldexp.ll
    A llvm/test/Analysis/CostModel/AMDGPU/log.ll
    A llvm/test/Analysis/CostModel/AMDGPU/log10.ll
    A llvm/test/Analysis/CostModel/AMDGPU/log2.ll
    A llvm/test/Analysis/CostModel/AMDGPU/maximum.ll
    A llvm/test/Analysis/CostModel/AMDGPU/maxnum.ll
    A llvm/test/Analysis/CostModel/AMDGPU/minimum.ll
    A llvm/test/Analysis/CostModel/AMDGPU/minnum.ll
    A llvm/test/Analysis/CostModel/AMDGPU/ptrmask.ll
    A llvm/test/Analysis/CostModel/AMDGPU/sqrt.ll
    M llvm/test/Analysis/CostModel/X86/arith-overflow.ll
    M llvm/test/Bindings/llvm-c/echo.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/CodeGen/AArch64/exp10-libcall-names.ll
    M llvm/test/CodeGen/AArch64/fcvt_combine.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
    A llvm/test/CodeGen/AArch64/peephole-sxtw.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.fcmp.constants.w32.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-and.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-copy.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-or.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-ptr-add.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-store-private.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-xor.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-brcond.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.end.cf.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.if.break.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wmma_32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wmma_64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.demote.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-imm.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64.ll
    M llvm/test/CodeGen/ARM/vselect_imax.ll
    M llvm/test/CodeGen/PowerPC/aix-vec_insert_elt.ll
    M llvm/test/CodeGen/PowerPC/aix32-p8-scalar_vector_conversions.ll
    M llvm/test/CodeGen/PowerPC/build-vector-tests.ll
    M llvm/test/CodeGen/PowerPC/builtins-ppc-xlcompat-pwr9-64bit.ll
    M llvm/test/CodeGen/PowerPC/canonical-merge-shuffles.ll
    M llvm/test/CodeGen/PowerPC/combine-fneg.ll
    M llvm/test/CodeGen/PowerPC/constant-pool.ll
    M llvm/test/CodeGen/PowerPC/elf64-byval-cc.ll
    M llvm/test/CodeGen/PowerPC/fma-combine.ll
    M llvm/test/CodeGen/PowerPC/fp-strict-round.ll
    M llvm/test/CodeGen/PowerPC/frem.ll
    M llvm/test/CodeGen/PowerPC/handle-f16-storage-type.ll
    M llvm/test/CodeGen/PowerPC/ldexp.ll
    M llvm/test/CodeGen/PowerPC/p10-splatImm-CPload-pcrel.ll
    M llvm/test/CodeGen/PowerPC/p8-scalar_vector_conversions.ll
    M llvm/test/CodeGen/PowerPC/pcrel-call-linkage-leaf.ll
    M llvm/test/CodeGen/PowerPC/save-reg-params.ll
    M llvm/test/CodeGen/PowerPC/select_const.ll
    M llvm/test/CodeGen/PowerPC/subreg-coalescer.mir
    M llvm/test/CodeGen/PowerPC/subreg-lanemasks.mir
    M llvm/test/CodeGen/PowerPC/toc-float.ll
    M llvm/test/CodeGen/PowerPC/variable_elem_vec_extracts.ll
    M llvm/test/CodeGen/PowerPC/vec_insert_elt.ll
    M llvm/test/CodeGen/PowerPC/vector-constrained-fp-intrinsics.ll
    M llvm/test/CodeGen/PowerPC/vector-llrint.ll
    M llvm/test/CodeGen/PowerPC/vector-lrint.ll
    M llvm/test/CodeGen/PowerPC/vector-reduce-fadd.ll
    M llvm/test/CodeGen/PowerPC/vector-reduce-fmax.ll
    M llvm/test/CodeGen/PowerPC/vector-reduce-fmin.ll
    M llvm/test/CodeGen/PowerPC/vector-reduce-fmul.ll
    M llvm/test/CodeGen/PowerPC/vsx.ll
    M llvm/test/CodeGen/RISCV/condops.ll
    M llvm/test/CodeGen/RISCV/double-arith.ll
    M llvm/test/CodeGen/RISCV/float-arith.ll
    M llvm/test/CodeGen/RISCV/half-arith.ll
    M llvm/test/CodeGen/RISCV/rv64zba.ll
    M llvm/test/CodeGen/RISCV/rvv-cfi-info.ll
    M llvm/test/CodeGen/RISCV/rvv/extractelt-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitcast.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-bitcast.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-llrint.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lrint.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfptoi-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/rvv/insertelt-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/unmasked-ta.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmv.f.s.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmv.s.f.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-vp.ll
    M llvm/test/CodeGen/SPARC/2011-01-11-CC.ll
    M llvm/test/CodeGen/SPARC/64cond.ll
    M llvm/test/CodeGen/SPARC/fp128-split.ll
    M llvm/test/CodeGen/SPARC/smulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/SPARC/umulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/X86/2007-05-15-maskmovq.ll
    M llvm/test/CodeGen/X86/2007-07-03-GR64ToVR64.ll
    M llvm/test/CodeGen/X86/2008-04-08-CoalescerCrash.ll
    M llvm/test/CodeGen/X86/2008-08-23-64Bit-maskmovq.ll
    M llvm/test/CodeGen/X86/2008-09-05-sinttofp-2xi32.ll
    M llvm/test/CodeGen/X86/2011-06-14-mmx-inlineasm.ll
    M llvm/test/CodeGen/X86/avx-vbroadcast.ll
    M llvm/test/CodeGen/X86/avx2-vbroadcast.ll
    M llvm/test/CodeGen/X86/bitcast-mmx.ll
    M llvm/test/CodeGen/X86/exp10-libcall-names.ll
    M llvm/test/CodeGen/X86/expand-vr64-gr64-copy.mir
    M llvm/test/CodeGen/X86/fast-isel-bc.ll
    M llvm/test/CodeGen/X86/fast-isel-nontemporal.ll
    M llvm/test/CodeGen/X86/fp-strict-libcalls-msvc32.ll
    M llvm/test/CodeGen/X86/fsafdo_test1.ll
    M llvm/test/CodeGen/X86/fsafdo_test4.ll
    M llvm/test/CodeGen/X86/mmx-arg-passing-x86-64.ll
    M llvm/test/CodeGen/X86/mmx-arg-passing.ll
    M llvm/test/CodeGen/X86/mmx-arith.ll
    M llvm/test/CodeGen/X86/mmx-bitcast-fold.ll
    M llvm/test/CodeGen/X86/mmx-bitcast.ll
    M llvm/test/CodeGen/X86/mmx-build-vector.ll
    M llvm/test/CodeGen/X86/mmx-coalescing.ll
    M llvm/test/CodeGen/X86/mmx-cvt.ll
    M llvm/test/CodeGen/X86/mmx-fold-load.ll
    M llvm/test/CodeGen/X86/mmx-fold-zero.ll
    M llvm/test/CodeGen/X86/mmx-intrinsics.ll
    M llvm/test/CodeGen/X86/mmx-only.ll
    M llvm/test/CodeGen/X86/mxcsr-reg-usage.ll
    M llvm/test/CodeGen/X86/nontemporal.ll
    M llvm/test/CodeGen/X86/pr13859.ll
    M llvm/test/CodeGen/X86/pr23246.ll
    M llvm/test/CodeGen/X86/pr29222.ll
    M llvm/test/CodeGen/X86/pr35982.ll
    M llvm/test/CodeGen/X86/select-mmx.ll
    M llvm/test/CodeGen/X86/stack-folding-mmx.ll
    M llvm/test/CodeGen/X86/unaligned_extract_from_vector_through_stack.ll
    M llvm/test/CodeGen/X86/vec-libcalls.ll
    M llvm/test/CodeGen/X86/vec_extract-mmx.ll
    M llvm/test/CodeGen/X86/vec_insert-5.ll
    M llvm/test/CodeGen/X86/vec_insert-7.ll
    M llvm/test/CodeGen/X86/vec_insert-mmx.ll
    M llvm/test/CodeGen/X86/vector-shuffle-mmx.ll
    M llvm/test/CodeGen/X86/x86-64-psub.ll
    A llvm/test/DebugInfo/X86/loop-align-debug.ll
    M llvm/test/Instrumentation/MemorySanitizer/X86/mmx-intrinsics.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_arith.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_cvt.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_pack.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_shift.ll
    M llvm/test/MC/X86/x86-GCC-inline-asm-Y-constraints.ll
    M llvm/test/Transforms/AggressiveInstCombine/AArch64/fptosisat.ll
    R llvm/test/Transforms/GlobalOpt/x86_mmx_load.ll
    M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
    M llvm/test/Transforms/InstCombine/X86/x86-movmsk.ll
    M llvm/test/Transforms/InstCombine/cast.ll
    M llvm/test/Transforms/InstCombine/ctpop-pow2.ll
    M llvm/test/Transforms/InstCombine/ctpop.ll
    M llvm/test/Transforms/InstCombine/icmp-ne-pow2.ll
    M llvm/test/Transforms/InstCombine/ispow2.ll
    A llvm/test/Transforms/InstCombine/lib-call-exit.ll
    M llvm/test/Transforms/InstSimplify/ConstProp/gep-zeroinit-vector.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-alloca.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-call.ll
    M llvm/test/Transforms/LoopVectorize/X86/amdlibm-calls.ll
    M llvm/test/Transforms/LoopVectorize/X86/veclib-calls.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/slpordering.ll
    M llvm/test/Transforms/SCCP/crash.ll
    A llvm/test/Transforms/SCCP/float-denormal-simplification.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/loadorder.ll
    A llvm/test/Transforms/SLPVectorizer/AMDGPU/slp-v2f16.ll
    M llvm/test/Transforms/SLPVectorizer/X86/external-used-across-reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gather-extractelements-different-bbs.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-gather-non-scheduled-extracts.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-logical.ll
    M llvm/test/Transforms/SROA/pr57796.ll
    R llvm/test/Transforms/SimplifyCFG/AMDGPU/skip-threading.ll
    M llvm/test/Transforms/SimplifyCFG/convergent.ll
    M llvm/test/Verifier/atomics.ll
    M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
    M llvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
    M llvm/unittests/IR/PatternMatch.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/utils/TableGen/PseudoLoweringEmitter.cpp
    M llvm/utils/gn/secondary/lldb/source/Interpreter/BUILD.gn
    A llvm/utils/gn/secondary/lldb/source/Interpreter/Interfaces/BUILD.gn
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpsInterfaces.td
    M mlir/include/mlir/Dialect/Ptr/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/lib/Conversion/SCFToOpenMP/SCFToOpenMP.cpp
    M mlir/lib/Dialect/Affine/Analysis/CMakeLists.txt
    M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
    M mlir/lib/Dialect/ArmSME/Transforms/OuterProductFusion.cpp
    M mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorMask.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
    M mlir/lib/Dialect/Vector/Utils/VectorUtils.cpp
    M mlir/lib/IR/Verifier.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir
    M offload/test/offloading/bug51781.c
    M openmp/runtime/src/kmp_affinity.cpp
    M openmp/runtime/src/kmp_affinity.h
    M polly/lib/Analysis/ScopBuilder.cpp
    M polly/lib/Analysis/ScopDetection.cpp
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/config.bzl

  Log Message:
  -----------
  rebase

Created using spr 1.3.4


Compare: https://github.com/llvm/llvm-project/compare/3eb7a8ef952d...a55dc0b88be6

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