[all-commits] [llvm/llvm-project] 08457e: [libc++] Add tests to pin down the ABI of deque, l...

Fangrui Song via All-commits all-commits at lists.llvm.org
Wed Feb 7 14:06:43 PST 2024


  Branch: refs/heads/users/MaskRay/spr/sanitizer-lift-asandoesnotsupportstaticlinkage-to-sanitizer_commonh-nfc
  Home:   https://github.com/llvm/llvm-project
  Commit: 08457e1f7693bdafe5330cde2bf41290cad4cade
      https://github.com/llvm/llvm-project/commit/08457e1f7693bdafe5330cde2bf41290cad4cade
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M libcxx/test/libcxx/containers/sequences/deque/abi.compile.pass.cpp
    A libcxx/test/libcxx/containers/sequences/list/abi.compile.pass.cpp
    A libcxx/test/libcxx/containers/sequences/vector.bool/abi.compile.pass.cpp
    A libcxx/test/libcxx/containers/sequences/vector/abi.compile.pass.cpp

  Log Message:
  -----------
  [libc++] Add tests to pin down the ABI of deque, list and vector (#80191)

This patch adds tests that lock down the ABI of types like deque, list
and vector.
An upcoming patch will replace the usage of __compressed_pair in these
classes
by [[no_unique_address]], so we are adding these tests to pin down their
ABI
before making the change. That way, we can be confident that the patch
making
the actual ABI-sensitive change is safe if it doesn't break these tests.


  Commit: 42357df2df4977c80aba77fcab706638a121bde0
      https://github.com/llvm/llvm-project/commit/42357df2df4977c80aba77fcab706638a121bde0
  Author: PiJoules <6019989+PiJoules at users.noreply.github.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    M clang/lib/AST/ExprConstant.cpp
    A clang/test/AST/fixed-point-zero-init.cpp

  Log Message:
  -----------
  [clang] Add zero-initialization for fixed point types (#80781)


  Commit: 2f490583c368627f552c71e340c39f2b55c0526c
      https://github.com/llvm/llvm-project/commit/2f490583c368627f552c71e340c39f2b55c0526c
  Author: jkorous-apple <32549412+jkorous-apple at users.noreply.github.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-debug.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage] Fix debug notes for unclaimed DREs (#80787)

Debug notes for unclaimed DeclRefExpr should report any DRE of an unsafe
variable that is not covered by a Fixable (i. e. fixit for the
particular AST pattern isn't implemented for whatever reason). Currently
not all unclaimed DeclRefExpr-s are reported which is a bug. The debug
notes report only those DREs where the referred VarDecl has at least one
other DeclRefExpr which is claimed (covered by a fixit). If there is an
unsafe VarDecl that has exactly one DRE and the DRE isn't claimed then
the debug note about missing fixit won't be emitted. That is because the
debug note is emitted from within a loop over set of successfully
matched FixableGadgets which by-definition is missing those DRE that are
not matched at all.

The new code simply iterates over all unsafe VarDecls and all of their
unclaimed DREs.


  Commit: 1b03cbc93989c84ad0b78c27d4427a7eaa5842f1
      https://github.com/llvm/llvm-project/commit/1b03cbc93989c84ad0b78c27d4427a7eaa5842f1
  Author: Fernando Tagawa <tagawafernando at gmail.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    M clang/lib/Format/BreakableToken.cpp
    M clang/unittests/Format/FormatTestComments.cpp

  Log Message:
  -----------
  [clang-format] Handle doxygen commands starting with \ (#80381)

Fixes llvm/llvm-project#63241

Doxygen commands can start with `@` or `\`.


  Commit: 2217837c3377c22bffb6c498a732ce4672b8b535
      https://github.com/llvm/llvm-project/commit/2217837c3377c22bffb6c498a732ce4672b8b535
  Author: Wanyi <kusmour at gmail.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    M lldb/bindings/headers.swig
    A lldb/bindings/interface/SBStatisticsOptionsDocStrings.i
    M lldb/bindings/interfaces.swig
    M lldb/include/lldb/API/LLDB.h
    M lldb/include/lldb/API/SBDefines.h
    A lldb/include/lldb/API/SBStatisticsOptions.h
    M lldb/include/lldb/API/SBTarget.h
    M lldb/include/lldb/Target/Statistics.h
    M lldb/include/lldb/Target/Target.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/source/API/CMakeLists.txt
    A lldb/source/API/SBStatisticsOptions.cpp
    M lldb/source/API/SBTarget.cpp
    M lldb/source/Commands/CommandObjectStats.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Target/Statistics.cpp
    M lldb/source/Target/Target.cpp
    M lldb/test/API/functionalities/stats_api/TestStatisticsAPI.py
    M lldb/test/API/functionalities/stats_api/main.c

  Log Message:
  -----------
  Support statistics dump summary only mode (#80745)

Add a new --summary option to statistics dump command so that it is
much more light weight than the full version.
Introduce a new SBStatisticsOptions API setting the verbosity of statistics dump. 
[PR
#80218](https://github.com/llvm/llvm-project/pull/80218#discussion_r1473639878)


  Commit: bcd1490496a5bf06ce98470ef622db29a8eebbf7
      https://github.com/llvm/llvm-project/commit/bcd1490496a5bf06ce98470ef622db29a8eebbf7
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [gn build] Port 2217837c3377


  Commit: 44767278650227b30cf969170dc139197ce4338d
      https://github.com/llvm/llvm-project/commit/44767278650227b30cf969170dc139197ce4338d
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    M clang/test/Preprocessor/wasm-target-features.c

  Log Message:
  -----------
  [WebAssembly] Add tests for generic CPU config (#80775)

This adds tests for `generic` cpu configuration. We had tests for `mvp`
and `bleeding-edge` configs but not `generic`.


  Commit: 897297e8b09ed6076f5dc6883b459b209bb9e29f
      https://github.com/llvm/llvm-project/commit/897297e8b09ed6076f5dc6883b459b209bb9e29f
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    M clang/test/Driver/wasm-features.c

  Log Message:
  -----------
  [WebAssembly] Fix CPU tests in wasm-features.c (#80900)

The CPU tests in this file are not working as intended. Specifying
`-mcpu=[mvp|generic|bleeding-edge]` in `clang` command line does NOT add
arguments like `-target-feature`, `+feature-name`, ... to `clang-14`
command line. Specifying `-mcpu=[mvp|generic|bleeding-edge]` in `clang`
command line will just add `-target-cpu` `[mvp|generic|bleeding-edge]`
to `clang-14` command line, and individual features are added here
within `clang-14` invocation:
https://github.com/llvm/llvm-project/blob/5b780c8c6c558ec283a9eec485a4f172df0f9fe1/clang/lib/Basic/Targets/WebAssembly.cpp#L150-L163
                                                                                
The reason these CPU tests are passing is because they only have `-NOT`
checks, and we don't emit `-target-feature` arguments for them anyway,
the test passes, but they don't check what they are supposed to check.

This make CPU tests only check `-target-cpu` lines instead of individual
features, which will not be emitted.


  Commit: 055ac72ecca4b56826ac02851f8a18f20a8557df
      https://github.com/llvm/llvm-project/commit/055ac72ecca4b56826ac02851f8a18f20a8557df
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
    M llvm/lib/CodeGen/GlobalISel/Utils.cpp
    M llvm/unittests/CodeGen/GlobalISel/GISelUtilsTest.cpp

  Log Message:
  -----------
  [GISel] Add support for scalable vectors in getLCMType (#80306)

This function can be called from buildCopyToRegs where at least one of
the types is a scalable vector type. This function crashed because it
did not know how to handle scalable vector types.

This patch extends the functionality of getLCMType to handle when at
least one of the types is a scalable vector. getLCMType between a fixed
and scalable vector is not implemented since the docstring of the
function explains that getLCMType is used to build MERGE/UNMERGE
instructions and we will never build a MERGE/UNMERGE between fixed and
scalable vectors.


  Commit: 6d268577259071cb1d9cccd89006bae8570f6c51
      https://github.com/llvm/llvm-project/commit/6d268577259071cb1d9cccd89006bae8570f6c51
  Author: Wanyi <kusmour at gmail.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    R lldb/bindings/interface/SBStatisticsOptionsDocStrings.i
    A lldb/bindings/interface/SBStatisticsOptionsDocstrings.i

  Log Message:
  -----------
  Fix the Docstring.i filename (#80917)

The typo DocStrings.i broke linux buildbots


  Commit: bd1324113e90884a4a83d6232ecf0c623e2e113e
      https://github.com/llvm/llvm-project/commit/bd1324113e90884a4a83d6232ecf0c623e2e113e
  Author: Enna1 <xumingjie.enna1 at bytedance.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M compiler-rt/lib/memprof/memprof_allocator.cpp
    M compiler-rt/lib/memprof/memprof_allocator.h
    M compiler-rt/lib/memprof/memprof_interceptors.cpp
    M compiler-rt/lib/memprof/memprof_internal.h
    M compiler-rt/lib/memprof/memprof_malloc_linux.cpp

  Log Message:
  -----------
  [MemProf][NFC] Clean up runtime code (#80581)


  Commit: c5bf1f4b8f5ba1912f18729f0726c9227f567c9d
      https://github.com/llvm/llvm-project/commit/c5bf1f4b8f5ba1912f18729f0726c9227f567c9d
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll

  Log Message:
  -----------
  [test] Autogen a test for ease of update in forthcoming patch


  Commit: 1aafe7605b295bdb6e9951f4ca86390d306152d2
      https://github.com/llvm/llvm-project/commit/1aafe7605b295bdb6e9951f4ca86390d306152d2
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/RISCV/short-trip-count.ll

  Log Message:
  -----------
  [test] Regen a test for naming changes


  Commit: 69a661cbae10495e9556d195fa683c0100ae299c
      https://github.com/llvm/llvm-project/commit/69a661cbae10495e9556d195fa683c0100ae299c
  Author: Visoiu Mistrih Francis <890283+francisvm at users.noreply.github.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVFrameLowering.h
    A llvm/test/CodeGen/RISCV/zcmp-cm-push-pop.mir

  Log Message:
  -----------
  [RISCV] Remove CalleeSavedInfo for Zcmp/save-restore-libcalls registers (#79535)

Registers that are pushed/popped by Zcmp or libcalls have pre-defined
frame indices that are never allocated in MachineFrameInfo. They're
being used throughout PEI, but the rest of codegen doesn't work that way
and expects each frame index to be a valid index in MFI.

This patch keeps it local to PEI and removes them from the
CalleeSavedInfo list at the end of the pass.

Before this pass, any MIR testing post-PEI is broken and asserts (see
issue #79491).


  Commit: cf0773fb14e18e97de3f66b4f21f286ca4f97eae
      https://github.com/llvm/llvm-project/commit/cf0773fb14e18e97de3f66b4f21f286ca4f97eae
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/include/llvm/Target/TargetSchedule.td

  Log Message:
  -----------
  [TableGen][NFC] Remove EponymousProcResourceKind (#80812)

We can use `!cast` to cast `NAME` to `ProcResourceKind`.


  Commit: c7fa25f0b2398f7037af6e10b18456b69178f7c5
      https://github.com/llvm/llvm-project/commit/c7fa25f0b2398f7037af6e10b18456b69178f7c5
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp
    M llvm/test/MC/RISCV/elf-flags.s

  Log Message:
  -----------
  [RISCV] Set the RVC bit in the ELF EFlags for C or Zca. (#80913)


  Commit: 8ea7f1d20ad8ab8c381800eefda948d85c6860cc
      https://github.com/llvm/llvm-project/commit/8ea7f1d20ad8ab8c381800eefda948d85c6860cc
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    M bolt/lib/Passes/BinaryPasses.cpp

  Log Message:
  -----------
  [BOLT][NFCI] Keep instruction annotations (#80382)

We used to delete most instruction annotations before code emission. It
was done to release memory taken by annotations and to reduce overall
memory consumption. However, since the implementation of annotations has
moved to using existing instruction operands, the memory overhead
associated with them has reduced drastically. I measured that savings
are less than 0.5% on large binaries and processing time is just
slightly reduced if we keep them. Additionally, I plan to use
annotations in pre-emission passes for the Linux kernel rewriter.


  Commit: 8ae048507086cc3a2ceb6974506d3048c516a726
      https://github.com/llvm/llvm-project/commit/8ae048507086cc3a2ceb6974506d3048c516a726
  Author: Jason Eckhardt <jeckhardt at nvidia.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/docs/TableGen/BackEnds.rst
    M llvm/test/TableGen/generic-tables-instruction.td
    M llvm/utils/TableGen/CodeGenTarget.cpp
    M llvm/utils/TableGen/CodeGenTarget.h
    M llvm/utils/TableGen/SearchableTableEmitter.cpp

  Log Message:
  -----------
  [TableGen] Extend direct lookup to instruction values in generic tables. (#80486)

Currently, for some tables involving a single primary key field which is
integral and densely numbered, a direct lookup is generated rather than
a binary search. This patch extends the direct lookup function
generation to instructions, where the integral value corresponds to the
instruction's enum value.

While this isn't as common as for other tables, it does occur in at
least one downstream backend and one in-tree backend.

Added a unit test and minimally updated the documentation.


  Commit: adbf21f12b3069b2554efb39f2e92c6cf6f24940
      https://github.com/llvm/llvm-project/commit/adbf21f12b3069b2554efb39f2e92c6cf6f24940
  Author: Boian Petkantchin <boian.petkantchin at amd.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    A mlir/include/mlir/Dialect/Func/Extensions/MeshShardingExtensions.h
    M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.h
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.h
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.td
    A mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterfaceImpl.h
    M mlir/include/mlir/Dialect/Mesh/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Mesh/Transforms/Spmdization.h
    M mlir/lib/Dialect/Func/Extensions/AllExtensions.cpp
    M mlir/lib/Dialect/Func/Extensions/CMakeLists.txt
    A mlir/lib/Dialect/Func/Extensions/MeshShardingExtensions.cpp
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp
    M mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
    M mlir/lib/Dialect/Mesh/Transforms/Spmdization.cpp
    M mlir/lib/Dialect/Tosa/IR/ShardingInterfaceImpl.cpp
    M mlir/test/Dialect/Mesh/resharding-spmdization.mlir
    A mlir/test/Dialect/Mesh/spmdization.mlir
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][mesh] Add spmdization pass (#80518)

Add a pass that converts a function that has sharding annotations into
SPMD form.


  Commit: b0785cd1cbf97dbd4eb39647ff22771ef0a7cfea
      https://github.com/llvm/llvm-project/commit/b0785cd1cbf97dbd4eb39647ff22771ef0a7cfea
  Author: Serge Pavlov <sepavloff at gmail.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMInstrInfo.td
    M llvm/lib/Target/ARM/ARMInstructionSelector.cpp
    A llvm/test/CodeGen/ARM/GlobalISel/select-const.mir

  Log Message:
  -----------
  [GlobalISel][ARM] Support missing case for G_CONSTANT (#80555)

Global Instruction Selector could not select the code:

    %0:gprb(s32) = G_CONSTANT i32 -1

In DAG selector the similar code is selected to the instruction MVNi
using custom operand `mod_imm_not`. Changing its definition from
`PatLeaf` to `ImmLeaf` and providing counterpart for `imm_not_XFORM`
make the relevant rule available for GlobalISel too.


  Commit: 966f78bdf849d1ae4ce205f93f5967df71e95f4c
      https://github.com/llvm/llvm-project/commit/966f78bdf849d1ae4ce205f93f5967df71e95f4c
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/test/Transforms/InstCombine/fdiv.ll

  Log Message:
  -----------
  [InstCombine] Resolve TODO: nnan nsz X / -0.0 -> copysign(inf, X) (#79766)


  Commit: 86fa21e93efe6d8079d202bf30e7e8db66cc32a0
      https://github.com/llvm/llvm-project/commit/86fa21e93efe6d8079d202bf30e7e8db66cc32a0
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp

  Log Message:
  -----------
  [mlir] Fix -Wunused-function in ShardingInterface.cpp (NFC)

llvm-project/mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp:522:1:
error: unused function 'isValueCompatibleWithFullReplicationSharding' [-Werror,-Wunused-function]
isValueCompatibleWithFullReplicationSharding(Value value,
^
1 error generated.


  Commit: 679d0d70295cab1f3692fc1919299d8c16070863
      https://github.com/llvm/llvm-project/commit/679d0d70295cab1f3692fc1919299d8c16070863
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISCV][Docs] Fix link to Zjpm spec in RISCVUsage.rst.


  Commit: c5e5661591a90094eeb5831de86d701419c74f07
      https://github.com/llvm/llvm-project/commit/c5e5661591a90094eeb5831de86d701419c74f07
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M clang/lib/Headers/cpuid.h

  Log Message:
  -----------
  [X86] Add missing MACROs in cpuid.h (#80815)

Relate gcc file:
https://github.com/gcc-mirror/gcc/blob/master/gcc/config/i386/cpuid.h


  Commit: 8c84096da195ae38336ba9aa700dc35e567157ba
      https://github.com/llvm/llvm-project/commit/8c84096da195ae38336ba9aa700dc35e567157ba
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/Opcodes.td
    M clang/test/AST/Interp/complex.cpp

  Log Message:
  -----------
  [clang][Interp] Fix initializing _Complex values from DeclRefExpr

See the comment I added. When initializing a complex value from a
DeclRefExpr, we need to manually copy both array elements.
This adds some unfortunate code duplication that I'm still pondering
on how to get rid of best.


  Commit: 28b82075ff3e58ba9c6959a585d3d0fc5d0325e5
      https://github.com/llvm/llvm-project/commit/28b82075ff3e58ba9c6959a585d3d0fc5d0325e5
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [clang][Interp] Support ImplicitValueInitExpr for complex types

Initialize both elements to 0, once again.


  Commit: cb7561ac5a8445f5c526c949efd50f45f55bb089
      https://github.com/llvm/llvm-project/commit/cb7561ac5a8445f5c526c949efd50f45f55bb089
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp

  Log Message:
  -----------
  [Sched] Add MacroFusion mutation if fusions are not empty (#72227)

We can get the fusions list by `getMacroFusions` and if it is not
empty, then we will add the MacroFusion mutation automatically.


  Commit: ea4f44e85f7ca884d42b9b12bd13bab47c3e5d3c
      https://github.com/llvm/llvm-project/commit/ea4f44e85f7ca884d42b9b12bd13bab47c3e5d3c
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [RISCV] Remove unused variable 'ST' in RISCVTargetMachine.cpp (NFC)

llvm-project/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp:358:27:
error: unused variable 'ST' [-Werror,-Wunused-variable]
    const RISCVSubtarget &ST = C->MF->getSubtarget<RISCVSubtarget>();
                          ^
1 error generated.


  Commit: 9bda1de0b6096d26e87fed18cb681cc3e5b8319a
      https://github.com/llvm/llvm-project/commit/9bda1de0b6096d26e87fed18cb681cc3e5b8319a
  Author: Carl Ritson <carl.ritson at amd.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
    A llvm/test/CodeGen/AMDGPU/GlobalISel/twoaddr-extract-dyn-v7f64.mir

  Log Message:
  -----------
  [TwoAddressInstruction] Propagate undef flags for partial defs (#79286)

If part of a register (lowered from REG_SEQUENCE) is undefined then we
should propagate undef flags to uses of those lanes. This is only
performed when live intervals are present as it requires live intervals
to correctly match uses to defs, and the primary goal is to allow
precise computation of subrange intervals.


  Commit: e7c0e59bbcf713d09ca7a09cd513399d66a94ca5
      https://github.com/llvm/llvm-project/commit/e7c0e59bbcf713d09ca7a09cd513399d66a94ca5
  Author: Job Noorman <jnoorman at igalia.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M bolt/lib/Rewrite/RewriteInstance.cpp

  Log Message:
  -----------
  [BOLT] Fix crash for relocs in data sections against ABS symbols (#76026)

Fixes #75771


  Commit: 93962ea1176b91239496378e7141a44dc95a5efd
      https://github.com/llvm/llvm-project/commit/93962ea1176b91239496378e7141a44dc95a5efd
  Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/docs/Passes.rst

  Log Message:
  -----------
  [docs][passes] Update documentation of Analysis and Transform Passes (#80835)

- Added a warning about the pass list being incomplete (and hint about
"opt -print-passes" listing known passes).
- Removed legacy PM example involving "opt -analyze".
- print-function and print-module does not exist with those names in the
new PM. Since the document has been updated to reflect the new PM names
earlier, those names were changed into referring to function(print) and
module(print) instead.
- Resolved some FIXME:s around strip* passes.


  Commit: 9a028afdd655f8e378819e4125292d973985f3f4
      https://github.com/llvm/llvm-project/commit/9a028afdd655f8e378819e4125292d973985f3f4
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Transform/IR/TransformInterfaces.h
    M mlir/include/mlir/IR/PatternMatch.h
    M mlir/include/mlir/Transforms/DialectConversion.h
    M mlir/lib/Dialect/Transform/IR/TransformInterfaces.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp

  Log Message:
  -----------
  [mlir][IR][NFC] `Listener::notifyMatchFailure` returns `void` (#80704)

There are two `notifyMatchFailure` methods: one in the rewriter and one
in the listener. The one in the rewriter notifies the listener and
returns "failure" for convenience. The one in the listener should not
return anything; it is just a notification. It can currently be abused
to return "success" from the rewriter function. That would be a
violation of the rewriter API rules.

Also make sure that the listener is always notified about match
failures, not just with `NDEBUG`. The current implementation is
consistent: one `notifyMatchFailure` overload notifies only in debug
mode and another one notifies all the time.


  Commit: 2ad6fd6735150e44e2170368968c0006df4d8387
      https://github.com/llvm/llvm-project/commit/2ad6fd6735150e44e2170368968c0006df4d8387
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [RISCV][NFC] Move SFB pseudos and patterns to RISCVInstrInfoSFB.td (#80945)

To make the structure of TableGen files clear.


  Commit: 7d508eb5d38f4bbbab4230a666d9e742e271af61
      https://github.com/llvm/llvm-project/commit/7d508eb5d38f4bbbab4230a666d9e742e271af61
  Author: Carl Ritson <carl.ritson at amd.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    R llvm/test/CodeGen/AMDGPU/pal-metadata-3.0-callable.ll

  Log Message:
  -----------
  Revert "[AMDGPU] Add pal metadata 3.0 support to callable pal funcs (#67104)"

This reverts commit d6c7253d32e4bdff619c39708170f1c1fa01ff95.

Change causing CTS failures due to incomplete metadata.


  Commit: fff86c6111b6d3ed68a8ea57ab5e7d3d716472c6
      https://github.com/llvm/llvm-project/commit/fff86c6111b6d3ed68a8ea57ab5e7d3d716472c6
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/ArmSME/IR/ArmSMEOps.td
    M mlir/lib/Conversion/ArmSMEToLLVM/ArmSMEToLLVM.cpp
    M mlir/lib/Dialect/ArmSME/Transforms/OuterProductFusion.cpp
    M mlir/test/Conversion/ArmSMEToLLVM/arm-sme-to-llvm.mlir
    M mlir/test/Dialect/ArmSME/invalid.mlir
    M mlir/test/Dialect/ArmSME/outer-product-fusion.mlir
    M mlir/test/Dialect/ArmSME/roundtrip.mlir
    A mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-outerproduct-i8i8i32.mlir

  Log Message:
  -----------
  [mlir][ArmSME] Support 4-way widening outer products (#79288)

This patch introduces support for 4-way widening outer products. This
enables the fusion of 4 'arm_sme.outerproduct' operations that are
chained via the accumulator into single widened operations.

Changes:

- Adds the following operations:
  - smopa_4way, smops_4way
  - umopa_4way, umops_4way
  - sumopa_4way, sumops_4way
  - sumopa_4way, sumops_4way
- Implements conversions for the above ops to intrinsics in ArmSMEToLLVM.
- Extends 'arm-sme-outer-product' pass.

For a detailed description of these operations see the
'arm_sme.smopa_4way' description.


  Commit: 67402fe5e4bf7a706d47bc106113f599a8d59947
      https://github.com/llvm/llvm-project/commit/67402fe5e4bf7a706d47bc106113f599a8d59947
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M flang/include/flang/Lower/ConvertCall.h
    M flang/include/flang/Optimizer/Builder/MutableBox.h
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertExpr.cpp
    M flang/lib/Optimizer/Builder/MutableBox.cpp
    M flang/test/Lower/HLFIR/function-return-as-expr.f90

  Log Message:
  -----------
  [flang] Do not move finalized function results in lowering (#80683)

Fortran requires finalizing function results when the result type have
final procedures.

Lowering was unconditionally "moving" function results into values
"hlfir.expr". This is not correct when the results are finalized because
it means the function result storage will be used after the hlfir.expr.

Only move function results that are not finalized.


  Commit: 1b87ebce924e507cbc27c2e0dc623941d16388c9
      https://github.com/llvm/llvm-project/commit/1b87ebce924e507cbc27c2e0dc623941d16388c9
  Author: Yi Kong <yikong at google.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-objcopy.rst
    M llvm/include/llvm/ObjCopy/CommonConfig.h
    M llvm/lib/ObjCopy/ConfigManager.cpp
    M llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp
    A llvm/test/tools/llvm-objcopy/ELF/prefix-symbols-remove.test
    M llvm/tools/llvm-objcopy/ObjcopyOptions.cpp
    M llvm/tools/llvm-objcopy/ObjcopyOpts.td

  Log Message:
  -----------
  [llvm-objcopy] Add --remove-symbol-prefix (#79415)


  Commit: e1d564ac130fb6ec14d1e237a123373d64249e55
      https://github.com/llvm/llvm-project/commit/e1d564ac130fb6ec14d1e237a123373d64249e55
  Author: Aiden Grossman <agrossman154 at yahoo.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/test/tools/llvm-exegesis/X86/latency/middle-half.s

  Log Message:
  -----------
  [llvm-exegesis] Allow retries on flaky middle half test

The middle half repetition mode test sometimes fails on the avx512
buildbots due to a negative value being produced. This needs more
investigation, but add a retry count temporarily to alleviate
false-positive errors on the buildbots.

This is being tracked in #80957.


  Commit: 0f439f374f9cec73466c5166b9a8764214a74069
      https://github.com/llvm/llvm-project/commit/0f439f374f9cec73466c5166b9a8764214a74069
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M flang/lib/Optimizer/HLFIR/Transforms/BufferizeHLFIR.cpp
    A flang/test/HLFIR/as_expr-codegen-polymorphic.fir
    M flang/test/HLFIR/bufferize-poly-expr.fir

  Log Message:
  -----------
  [flang] Fix hlfir.as_expr codegen for polymorphic entities (#80824)

https://github.com/llvm/llvm-project/pull/80683 revealed that
hlfir.as_expr was propagating the temporary buffer for polymorphic
values as an allocatable while codegen later expects to be working with
fir.box/fir.class but not fir.ref<box/class> when processing the
operations using the hlfir.as_expr result.

Dereference the temporary allocatable as soon as it is created.


  Commit: 88c830a1a5687bec597ca947159e4dd9a3f2ac2d
      https://github.com/llvm/llvm-project/commit/88c830a1a5687bec597ca947159e4dd9a3f2ac2d
  Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir

  Log Message:
  -----------
  [TOSA] Fix avgpool2d accum in wider type (#80849)

Truncate result of avgpool when accumulation is done in a wider type
than the result element type, such as when doing a f16 avgpool2d with a
f32 accumulator type.


  Commit: f8562e245c0c3ebaa8c75575fac566497a0c9245
      https://github.com/llvm/llvm-project/commit/f8562e245c0c3ebaa8c75575fac566497a0c9245
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [flang][OpenMP][NFC] Further refactoring for `genOpWithBody` & (#80839)

`createBodyOfOp`

This refactors the arguments to the above functions in 2 ways:
- Combines the 2 structs of arguments into one since they were almost
identical.
- Replaces the `args` argument with a callback to a rebion-body
generation function. This is a preparation for delayed privatization as
we will need different callbacks for ws loops and parallel ops with
delayed privatization.


  Commit: 365bf43b8b290ab64b5b82879bc9d1dfdd5d6aa9
      https://github.com/llvm/llvm-project/commit/365bf43b8b290ab64b5b82879bc9d1dfdd5d6aa9
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/test/Transforms/LoopStrengthReduce/Power/incomplete-phi.ll

  Log Message:
  -----------
  [LSR] Regenerate test checks (NFC)

Check output IR instead of debug output. The debug output will
change in an upcoming patch in an irrecoverable way.


  Commit: e60c4b61f8bab25a137a481e4d2d3dbfa656807b
      https://github.com/llvm/llvm-project/commit/e60c4b61f8bab25a137a481e4d2d3dbfa656807b
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [InstCombine] Change order of checks for dominating conditions (NFC)

Check whether the condition is in the expected format before
performing more expensive dominator checks.


  Commit: bec7181d5b9d1828129d78d440fd9e02d5cb63e8
      https://github.com/llvm/llvm-project/commit/bec7181d5b9d1828129d78d440fd9e02d5cb63e8
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    A llvm/test/Transforms/LoopIdiom/pr80954.ll

  Log Message:
  -----------
  [SCEVExpander] Don't use recursive expansion for ptr IV inc

Similar to the non-ptr case, directly create the getelementptr
instruction. Going through expandAddToGEP() no longer makes sense
with opaque pointers, where generating the necessary instruction
is trivial.

This avoids recursive expansion of (the SCEV of) StepV while the
IR is in an inconsistent state, in particular with an incomplete
IV phi node, which utilities may not be prepared to deal with.

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


  Commit: eeb60e335e4fecb9ce3ed62cf081568cecf1d4ac
      https://github.com/llvm/llvm-project/commit/eeb60e335e4fecb9ce3ed62cf081568cecf1d4ac
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SOPInstructions.td

  Log Message:
  -----------
  [AMDGPU] Remove unused multiclass


  Commit: 7760006d8d39e7624601936e2b1b428d850726b8
      https://github.com/llvm/llvm-project/commit/7760006d8d39e7624601936e2b1b428d850726b8
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/include/llvm-libc-macros/stdbit-macros.h
    M libc/spec/stdc.td
    M libc/src/stdbit/CMakeLists.txt
    A libc/src/stdbit/stdc_trailing_ones_uc.cpp
    A libc/src/stdbit/stdc_trailing_ones_uc.h
    A libc/src/stdbit/stdc_trailing_ones_ui.cpp
    A libc/src/stdbit/stdc_trailing_ones_ui.h
    A libc/src/stdbit/stdc_trailing_ones_ul.cpp
    A libc/src/stdbit/stdc_trailing_ones_ul.h
    A libc/src/stdbit/stdc_trailing_ones_ull.cpp
    A libc/src/stdbit/stdc_trailing_ones_ull.h
    A libc/src/stdbit/stdc_trailing_ones_us.cpp
    A libc/src/stdbit/stdc_trailing_ones_us.h
    M libc/test/include/stdbit_test.cpp
    M libc/test/src/stdbit/CMakeLists.txt
    A libc/test/src/stdbit/stdc_trailing_ones_uc_test.cpp
    A libc/test/src/stdbit/stdc_trailing_ones_ui_test.cpp
    A libc/test/src/stdbit/stdc_trailing_ones_ul_test.cpp
    A libc/test/src/stdbit/stdc_trailing_ones_ull_test.cpp
    A libc/test/src/stdbit/stdc_trailing_ones_us_test.cpp

  Log Message:
  -----------
  [libc][stdbit] implement stdc_trailing_ones (C23) (#80459)


  Commit: 670c2529bb97f53a5b73e1eedb736ac6e070e1d9
      https://github.com/llvm/llvm-project/commit/670c2529bb97f53a5b73e1eedb736ac6e070e1d9
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [DAG] Use DAGCombiner::SimplifyDemandedBits wrappers with default (all) DemandedElts. NFC.

Don't call TLI.SimplifyDemandedVectorElts directly from every SimplifyDemandedBits call, use the more expressive wrappers instead first.

This reduces the number of places we call TLI.SimplifyDemandedVectorElts and CommitTargetLoweringOpt to make it easier to track.

Part of the work to process DAG nodes in topological order.


  Commit: c2a91d4a33af49cd77c6d6ec731ae25538f746b8
      https://github.com/llvm/llvm-project/commit/c2a91d4a33af49cd77c6d6ec731ae25538f746b8
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/combine-movmsk-avx.ll

  Log Message:
  -----------
  [X86] combine-movmsk-avx.ll - add full AVX1/AVX2 VTEST/MOVMSK test coverage

Test all combos of avx1/avx2 and prefer-movmsk-over-vtest


  Commit: 89ad31fd9356e2f999eb63fbac88d1338b8b3592
      https://github.com/llvm/llvm-project/commit/89ad31fd9356e2f999eb63fbac88d1338b8b3592
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/test/Assembler/DIDefaultTemplateParam.ll
    M llvm/test/Transforms/Attributor/ArgumentPromotion/pr33641_remove_arg_dbgvalue.ll
    M llvm/test/Transforms/Scalarizer/dbginfo.ll

  Log Message:
  -----------
  [RemoveDIs][DebugInfo] Perform some pre-turn-on test maintenence (#80885)

As we'll hopefully move away from using intrinsics for debug-info
shortly, this commit stabilizes a few tests to avoid spurious changes in
the process. Briefly, there are differences in output when we don't use
intrinsics that we're going to suppress in case we have to revert, these
are:
* The attributor test gets different attributes for the dbg.value
intrinsic because it's not present during optimisation. This has no
functional effect and there's no need to test for it.
* The Scalarizer test exposes a "debug-info affects codegen" problem,
but fixing it is fiddly (updating 20 IRBuilder object calls). Pin this
test to not change with RemoveDIs, we can relax it later and get the
correct behaviour.
* DIDefaultTemplateParam.ll tests for explicit metadata node numbers
which is generally bad. Add explicit node-number capturing CHECK lines.


  Commit: fb581adbdd2264b3ab28394b5e8539d4d2c05fbd
      https://github.com/llvm/llvm-project/commit/fb581adbdd2264b3ab28394b5e8539d4d2c05fbd
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/test/Transforms/SROA/select-gep.ll

  Log Message:
  -----------
  [SROA] Add tests with gep of index select (NFC)


  Commit: af6656c375b8aa9c9156575f7c0ac678a57070d5
      https://github.com/llvm/llvm-project/commit/af6656c375b8aa9c9156575f7c0ac678a57070d5
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Fix moveArrayTy byte offset

We need to account for the InitMapPtr here. This is NFC right now since
no test is affected by it.


  Commit: df856e49773d0569741117cfd856818b7644ea85
      https://github.com/llvm/llvm-project/commit/df856e49773d0569741117cfd856818b7644ea85
  Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [SLP]Add GEP cost estimation for gathered loads.

When doing estimation for vectorization of gathered loads, need to
estimate the cost of the pointer (vectorization), as it is done for the
actual vectorized loads. Otherwise may be too optimistic about the cost
of the gathered loads.

Reviewers: preames

Reviewed By: preames

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


  Commit: 61c7a69fa0c020e92b1b10882d5d2957f3b8da21
      https://github.com/llvm/llvm-project/commit/61c7a69fa0c020e92b1b10882d5d2957f3b8da21
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [clang][Interp] Fix sizeof of reference types


  Commit: a97ff2d35af0a5c640c20abf4215c08e0e69aa41
      https://github.com/llvm/llvm-project/commit/a97ff2d35af0a5c640c20abf4215c08e0e69aa41
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M clang/test/AST/Interp/literals.cpp

  Log Message:
  -----------
  [clang][Interp] Add missing static_assert message

This breaks builders:
https://lab.llvm.org/buildbot/#/builders/139/builds/58960


  Commit: d109f94f29e2bc2fc31c8870b1e41759f524fe77
      https://github.com/llvm/llvm-project/commit/d109f94f29e2bc2fc31c8870b1e41759f524fe77
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/dbg-value-swift-async.ll
    M llvm/test/DebugInfo/X86/debug_value_list_selectiondag.ll
    M llvm/test/Transforms/IROutliner/legal-debug.ll
    M llvm/test/Transforms/InstCombine/cast-mul-select.ll
    M llvm/test/Transforms/InstCombine/debuginfo_add.ll
    M llvm/test/Transforms/InstCombine/sink-instruction-introduces-unnecessary-poison-value.ll

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] Re-enable some test coverage

We disabled these extra-special RUNlines due to unexpected interactions
between the various things we've been fixing. Re-enable them (they'll run
on the llvm-new-debug-iterators buildbot) as they all now pass.


  Commit: f37d81f8a3e1475f30bec63bfc0b703fc9509d7c
      https://github.com/llvm/llvm-project/commit/f37d81f8a3e1475f30bec63bfc0b703fc9509d7c
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstSimplify/cast-unsigned-icmp-cmp-0.ll
    M llvm/unittests/IR/PatternMatch.cpp

  Log Message:
  -----------
  [PatternMatch] Add a matching helper `m_ElementWiseBitCast`. NFC. (#80764)

This patch introduces a matching helper `m_ElementWiseBitCast`, which is
used for matching element-wise int <-> fp casts.
The motivation of this patch is to avoid duplicating checks in
https://github.com/llvm/llvm-project/pull/80740 and
https://github.com/llvm/llvm-project/pull/80414.


  Commit: 6cb66ee5f8827040c5178fc2a479c138f4838eca
      https://github.com/llvm/llvm-project/commit/6cb66ee5f8827040c5178fc2a479c138f4838eca
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [RemoveDIs][DebugInfo] Handle RAUW from dead constants (#80837)

Ensure that when a constant value dies, all ValueAsMetadata uses of that
constant in a DebugValueUser will be replaced with a PoisonValue instead
of a nullptr. This has little visible effect currently, as any nullptr metadata
uses in a DebugValueUser would be converted to an empty MDNode in
the end anyway, but this patch adds an assert that would be triggered by
two existing tests without the functional component of this patch:

  llvm/test/Transforms/Inline/delete-function-with-metadata-use.ll
  llvm/test/DebugInfo/X86/array2.ll


  Commit: accbcb9578959b86cadc901a57ffa4a0c3f23ead
      https://github.com/llvm/llvm-project/commit/accbcb9578959b86cadc901a57ffa4a0c3f23ead
  Author: Dmitri Gribenko <gribozavr at gmail.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/test/tools/llvm-objcopy/ELF/prefix-symbols-remove.test

  Log Message:
  -----------
  [llvm-objcopy][test] Use actual temporary file names in the test for --remove-symbol-prefix


  Commit: b0c6fc81fe132f20eed38bd836620dfcb5ac17e9
      https://github.com/llvm/llvm-project/commit/b0c6fc81fe132f20eed38bd836620dfcb5ac17e9
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeStmtGen.cpp
    M clang/test/SemaCXX/cxx20-using-enum.cpp

  Log Message:
  -----------
  [clang][Interp] Ignore UsingEnumDecls

We previously aborted compilation when seeing one of them. Ignore
them instead, they have no effect on the generated bytecode.


  Commit: 7ab0a871431375cb966b0653b9f5caaba15cb6d9
      https://github.com/llvm/llvm-project/commit/7ab0a871431375cb966b0653b9f5caaba15cb6d9
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/free-inversion.ll

  Log Message:
  -----------
  [InstCombine] Try to freely invert phi nodes (#80804)

This patch tries to invert phi nodes if all incoming values are either
constants or nots.


  Commit: 0aacd44a4698da012ee0704815123b28f2a06d0f
      https://github.com/llvm/llvm-project/commit/0aacd44a4698da012ee0704815123b28f2a06d0f
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
    M llvm/test/Transforms/SpeculativeExecution/PR46267.ll

  Log Message:
  -----------
  [RemoveDIs][DebugInfo] Hoist DPValues in SpeculativeExecution (#80886)

This patch modifies `SpeculativeExecutionPass::considerHoistingFromTo`
to treat DPValues the same way that it treats debug intrinsics, which is
to hoist them iff all of their instruction operands within the FromBlock
are also being hoisted. This is probably not the ideal behaviour, which
would be to not hoist debug info at all in this case, but this patch
simply ensures that DPValue behaviour is consistent with debug intrinsic
behaviour rather than trying to create new functional changes.


  Commit: de7beb06e7b3864feec165f84f02e24f6c18870a
      https://github.com/llvm/llvm-project/commit/de7beb06e7b3864feec165f84f02e24f6c18870a
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [DAG] ExpandShiftWithKnownAmountBit - reduce number of repeated getOpcode / getOperand calls. NFC.


  Commit: 50d38cf934861205768de9e3cf32827e73764001
      https://github.com/llvm/llvm-project/commit/50d38cf934861205768de9e3cf32827e73764001
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86FixupVectorConstants.cpp

  Log Message:
  -----------
  [X86] X86FixupVectorConstants.cpp - update comment to describe all the constant load ops performed by the pass


  Commit: 4e58f03f298eb5c74877942c1c68911341c678bd
      https://github.com/llvm/llvm-project/commit/4e58f03f298eb5c74877942c1c68911341c678bd
  Author: Shourya Goel <114918019+Sh0g0-1758 at users.noreply.github.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
    M clang/test/Frontend/verify.c

  Log Message:
  -----------
  [Clang] Fix : More Detailed "No expected directives found" (#78338)

Updated the error message to use the proper prefix when
no expected directives are found by changing the hard coded expected in
the message to a dynamic value in two error messages.

Fixes #58290


  Commit: c76b0eb898d1e5edc416b658a6902163d64db1ce
      https://github.com/llvm/llvm-project/commit/c76b0eb898d1e5edc416b658a6902163d64db1ce
  Author: Stephen Tozer <Stephen.Tozer at Sony.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
    M llvm/test/Transforms/SpeculativeExecution/PR46267.ll

  Log Message:
  -----------
  Revert "[RemoveDIs][DebugInfo] Hoist DPValues in SpeculativeExecution (#80886)"

Reverted due to buildbot failures resulting from failed compile due to a
missing brace error that got into the original commit.

This reverts commit 0aacd44a4698da012ee0704815123b28f2a06d0f.


  Commit: 52bf531630d19e115d30b4ca46f1ef03b9a724c6
      https://github.com/llvm/llvm-project/commit/52bf531630d19e115d30b4ca46f1ef03b9a724c6
  Author: Sirraide <74590115+Sirraide at users.noreply.github.com>
  Date:   2024-02-07 (Wed, 07 Feb 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][Sema] Fix out-of-bounds access (#80978)

Trying to compile a C-style variadic member function with an explicit
object parameter was crashing in Sema because of an out-of-bounds
access.

This fixes #80971.


  Commit: 5c84054223102b00cc0dd343a4023e3c6cba42b2
      https://github.com/llvm/llvm-project/commit/5c84054223102b00cc0dd343a4023e3c6cba42b2
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M clang/docs/ClangLinkerWrapper.rst
    M clang/docs/OffloadingDesign.rst
    M clang/test/Driver/linker-wrapper-image.c
    M clang/test/Driver/linker-wrapper.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
    M llvm/include/llvm/Frontend/Offloading/OffloadWrapper.h
    M llvm/lib/Frontend/Offloading/OffloadWrapper.cpp
    M llvm/lib/Object/OffloadBinary.cpp

  Log Message:
  -----------
  [LinkerWrapper] Support relocatable linking for offloading (#80066)

Summary:
The standard GPU compilation process embeds each intermediate object
file into the host file at the `.llvm.offloading` section so it can be
linked later. We also use a special section called something like
`omp_offloading_entries` to store all the globals that need to be
registered by the runtime. The linker-wrapper's job is to link the
embedded device code stored at this section and then emit code to
register the linked image and the kernels and globals in the offloading
entry section.

One downside to RDC linking is that it can become quite big for very
large projects that wish to make use of static linking. This patch
changes the support for relocatable linking via `-r` to support a kind
of "partial" RDC compilation for offloading languages.

This primarily requires manually editing the embedded data in the
output object file for the relocatable link. We need to rename the
output section to make it distinct from the input sections that will be
merged. We then delete the old embedded object code so it won't be
linked further. We then need to rename the old offloading section so
that it is private to the module. A runtime solution could also be done
to defer entries that don't belong to the given GPU executable, but this
is easier. Note that this does not work with COFF linking, only the ELF
method for handling offloading entries, that could be made to work
similarly.

Given this support, the following compilation path should produce two
distinct images for OpenMP offloading.
```
$ clang foo.c -fopenmp --offload-arch=native -c
$ clang foo.c -lomptarget.devicertl --offload-link -r -o merged.o
$ clang main.c merged.o -fopenmp --offload-arch=native
$ ./a.out
```

Or similarly for HIP to effectively perform non-RDC mode compilation for
a subset of files.

```
$ clang -x hip foo.c --offload-arch=native --offload-new-driver -fgpu-rdc -c
$ clang -x hip foo.c -lomptarget.devicertl --offload-link -r -o merged.o
$ clang -x hip main.c merged.o --offload-arch=native --offload-new-driver -fgpu-rdc
$ ./a.out
```

One question is whether or not this should be the default behavior of
`-r` when run through the linker-wrapper or a special option. Standard
`-r` behavior is still possible if used without invoking the
linker-wrapper and it guaranteed to be correct.


  Commit: 5d8a7318b2192ce8e396ec420f3f4d8f1a07cc10
      https://github.com/llvm/llvm-project/commit/5d8a7318b2192ce8e396ec420f3f4d8f1a07cc10
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/InterpBuiltin.cpp
    M clang/test/AST/Interp/builtin-functions.cpp

  Log Message:
  -----------
  [clang][Interp] Support __builtin_eh_return_data_regno


  Commit: 66d4fe97d8d46195672117797b663c21cf576f33
      https://github.com/llvm/llvm-project/commit/66d4fe97d8d46195672117797b663c21cf576f33
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/test/Analysis/CostModel/X86/free-intrinsics.ll
    M llvm/test/Analysis/CostModel/free-intrinsics-datalayout.ll
    M llvm/test/Analysis/CostModel/free-intrinsics-no_info.ll
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/various_ir_values.ll
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/various_ir_values.ll.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/various_ir_values.ll.funcsig.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/various_ir_values.ll.funcsig.globals.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/various_ir_values.ll.funcsig.noglobals.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/various_ir_values.ll.funcsig.transitiveglobals.expected
    M llvm/unittests/Transforms/Utils/DebugifyTest.cpp

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] Final final test-maintenence patch (#80988)

This should be the final portion of shaping-up the test suite to be
ready for turning on non-intrinsic debug-info:
* Pin CostModel tests that expect to see intrinsics in their -debug
output to not use RemoveDIs. This is a spurious test output difference.
* Add 'tail' to a bunch of intrinsics in UpdateTestChecks. We're
cannonicalising intrinsics to be printed with "tail" in RemoveDI
conversion as dbg.values usually pick that up while being optimised.
This is another spurious output difference.
* The "DebugInfoDrop" pass used in the debugify unit-tests happens to
operate inside the pass manager, thus it sees non-intrinsic debug-info.
Update it to correctly drop it.


  Commit: d42f3957cea0a8f45d5f3c11db229e2ea1e6d614
      https://github.com/llvm/llvm-project/commit/d42f3957cea0a8f45d5f3c11db229e2ea1e6d614
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M clang/test/AST/Interp/switch.cpp

  Log Message:
  -----------
  [clang][Interp][NFC] Convert test to verify=expected,both style


  Commit: 7718ac38a0c23597d7d02f0022eb89afe6d1b35f
      https://github.com/llvm/llvm-project/commit/7718ac38a0c23597d7d02f0022eb89afe6d1b35f
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [MLIR] NFC. Fix remaining clang-tidy warnings in AffineExpr.cpp (#80933)

NFC. Fix remaining clang-tidy warnings in AffineExpr.cpp.


  Commit: d4a2c7f95297d1865a457955dcf7b679dabb5e0e
      https://github.com/llvm/llvm-project/commit/d4a2c7f95297d1865a457955dcf7b679dabb5e0e
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/test/AST/Interp/records.cpp
    M clang/test/SemaCXX/cxx1z-copy-omission.cpp

  Log Message:
  -----------
  [clang][Interp] Fix record initialization from temporary in initlist


  Commit: 7a71ac2b00cd6ec06c113f8813f085d5ed346ad9
      https://github.com/llvm/llvm-project/commit/7a71ac2b00cd6ec06c113f8813f085d5ed346ad9
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/and-fcmp.ll
    A llvm/test/Transforms/InstCombine/canonicalize-fcmp-inf.ll
    M llvm/test/Transforms/InstCombine/create-class-from-logic-fcmp.ll
    M llvm/test/Transforms/InstCombine/fold-select-fmul-if-zero.ll

  Log Message:
  -----------
  [InstCombine] Canonicalize fcmp with inf (#80986)

This patch canonicalizes floating-point comparisons with inf:
```
fcmp olt X, +inf -> fcmp one X, +inf
fcmp ole X, +inf -> fcmp ord X, 0
fcmp ogt X, +inf -> false
fcmp oge X, +inf -> fcmp oeq X, +inf
fcmp ult X, +inf -> fcmp une X, +inf
fcmp ule X, +inf -> true
fcmp ugt X, +inf -> fcmp uno X, 0
fcmp uge X, +inf -> fcmp ueq X, +inf
fcmp olt X, -inf -> false
fcmp ole X, -inf -> fcmp oeq X, -inf
fcmp ogt X, -inf -> fcmp one X, -inf
fcmp oge X, -inf -> fcmp ord X, 0
fcmp ult X, -inf -> fcmp uno X, 0
fcmp ule X, -inf -> fcmp ueq X, -inf
fcmp ugt X, -inf -> fcmp une X, -inf
fcmp uge X, -inf -> true
```
Alive2: https://alive2.llvm.org/ce/z/FRqqDg

The motivation of this patch is to fix the regression found in
https://github.com/dtcxzyw/llvm-opt-benchmark/pull/199#discussion_r1480974120.


  Commit: aeb58844dd6673417ebd7fb83f3acdf7282397fb
      https://github.com/llvm/llvm-project/commit/aeb58844dd6673417ebd7fb83f3acdf7282397fb
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/test/ThinLTO/X86/crash_debuginfo.ll

  Log Message:
  -----------
  [RemoveDIs] Don't convert debug-info in bitcode-loading just now (#80865)

We've been building and testing this no-debug-intrinsic work inside of
the pass manager for a while, so that optimisation passes get exercised
and tested when we turn it on. However, by converting to the
non-intrinsic form in the bitcode loader, we accidentally caused all
parts of LLVM to potentially see non-intrinsic debug-info.

Seeing how we're trying to turn things on incrementally, it was a
mistake to go this far this fast: we can instead just focus on enabling
during optimisations for the moment, then all the other parts of LLVM
later.


  Commit: c954986fec97ab22a9658b496731d0c280938a64
      https://github.com/llvm/llvm-project/commit/c954986fec97ab22a9658b496731d0c280938a64
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
    M llvm/lib/CodeGen/GlobalISel/Utils.cpp
    M llvm/unittests/CodeGen/GlobalISel/GISelUtilsTest.cpp

  Log Message:
  -----------
  [GISel] Add support for scalable vectors in getGCDType (#80307)

This function can be called from buildCopyToRegs where at least one of
the types is a scalable vector type. This function crashed because it
did not know how to handle scalable vector types.

This patch extends the functionality of getGCDType to handle when at
least one of the types is a scalable vector. getGCDType between a fixed
and scalable vector is not implemented since the docstring of the
function explains that getGCDType is used to build MERGE/UNMERGE
instructions and we will never build a MERGE/UNMERGE between fixed and
scalable vectors.

---------

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>


  Commit: 4d12292c2ac5caf93cd325a1516cbeacfc87b2e9
      https://github.com/llvm/llvm-project/commit/4d12292c2ac5caf93cd325a1516cbeacfc87b2e9
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SOPInstructions.td

  Log Message:
  -----------
  [AMDGPU] Clean up and share SOP Real instruction definitions (#80990)

The aim is to share definitions for all architectures that have the same
instruction (ignoring renaming) with the same opcode. Overall this saves
about 60 lines of tablegen.


  Commit: 4f381afa09c2e60f48a65b10074f8b862a0b6738
      https://github.com/llvm/llvm-project/commit/4f381afa09c2e60f48a65b10074f8b862a0b6738
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/or.ll

  Log Message:
  -----------
  [InstCombine] Add additional multi-use test for and/or replacement (NFC)


  Commit: 934ba0d59e650644fe69462935982318b265ad2c
      https://github.com/llvm/llvm-project/commit/934ba0d59e650644fe69462935982318b265ad2c
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-02-08 (Thu, 08 Feb 2024)

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

  Log Message:
  -----------
  [InstCombine] Handle missing cases in `visitFCmpInst`

Fiix buildbot failures.


  Commit: 8c37e3e64bb1432f771ec4d191837e6b3be5bf0c
      https://github.com/llvm/llvm-project/commit/8c37e3e64bb1432f771ec4d191837e6b3be5bf0c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp
    M llvm/lib/Object/ELFObjectFile.cpp
    M llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_align_rvc.s
    M llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call_boundary.s
    M llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call_rvc.s

  Log Message:
  -----------
  [RISCV] Only set Zca flag for EF_RISCV_RVC in ELFObjectFileBase::getRISCVFeatures(). (#80928)

This code appears to be a hack to set the features to include compressed
instructions if the ELF EFLAGS flags bit is present, but the ELF
attribute for the ISA string is no present or not accurate.

We can't remove the hack because llvm-mc doesn't create ELF attributes
by default so a lot of tests fail to disassembler properly. Using clang
as the assembler does set the attributes.

This patch changes the hack to only set Zca since that is the minimum
implied by the flag. Setting anything else potentially conflicts with
the ISA string containing Zcmp or Zcmt.

JITLink also needs to be updated to recognize Zca in addition to C.


  Commit: 79fec2f8ba8ea0b0b1c2f13fb6355cb395e1d3af
      https://github.com/llvm/llvm-project/commit/79fec2f8ba8ea0b0b1c2f13fb6355cb395e1d3af
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [AtomicExpand][RISCV] Call shouldExpandAtomicRMWInIR before widenPartwordAtomicRMW (#80947)

This gives the target a chance to keep an atomicrmw op that is smaller
than the minimum cmpxchg size. This is needed to support the Zabha
extension for RISC-V which provides i8/i16 atomicrmw operations, but
does not provide an i8/i16 cmpxchg or LR/SC instructions.

This moves the widening until after the target requests
LLSC/CmpXChg/MaskedIntrinsic expansion. Once we widen, we call
shouldExpandAtomicRMWInIR again to give the target another chance to
make a decision about the widened operation.

I considered making the targets return AtomicExpansionKind::Expand or a
new expansion kind for And/Or/Xor, but that required the targets to
special case And/Or/Xor which they weren't currently doing.


  Commit: 7212b4ae09abe5ba0f9a6ea608ebb6dbfad48b73
      https://github.com/llvm/llvm-project/commit/7212b4ae09abe5ba0f9a6ea608ebb6dbfad48b73
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [RemoveDIs] Remove unused debug-printing facility for DPMarkers

We originally thought that printing the DPMarker pointer after each
instruction was going to be useful, but it turns out it only serves to
generate spurious test output differences now. As it stands, the cannonical
way to debug RemoveDIs metadata is "dumpDbgValues".


  Commit: 7e4ac8541dcc389ca8f0d11614e19ea7bae07af7
      https://github.com/llvm/llvm-project/commit/7e4ac8541dcc389ca8f0d11614e19ea7bae07af7
  Author: Daniel Chen <cdchen at ca.ibm.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp

  Log Message:
  -----------
  [Flang] Use specific symbol rather than generic symbol as procInterface to declare procedure pointer. (#80738)

Flang crashes when lowering the type of `p1` with the following code.
The problem is when it sets up the `procInterface`, it uses the generic
symbol `int`, not the specific `int`. This PR is to correct that.

```
  INTERFACE Int
    integer FUNCTION Int(arg)
      integer :: arg
    END FUNCTION
  END INTERFACE

  integer :: res
  procedure(int), pointer :: p1
  p1 => int
  res = p1(4)
  end
  ```


  Commit: ab92f6274b7c3a4b4445d47017bc481aa919545f
      https://github.com/llvm/llvm-project/commit/ab92f6274b7c3a4b4445d47017bc481aa919545f
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M .github/workflows/llvm-project-tests.yml

  Log Message:
  -----------
  [workflows] Fix libclc CI tests (#80942)

This was broken by 1a6426067fb33a8a789978f6e229108787a041be.


  Commit: 65bf93dd7b4cfe96b549fd8248455ba4869ba27c
      https://github.com/llvm/llvm-project/commit/65bf93dd7b4cfe96b549fd8248455ba4869ba27c
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/test/Transforms/InstCombine/or-xor.ll
    M llvm/test/Transforms/InstCombine/or.ll

  Log Message:
  -----------
  [InstCombine] Clean up bitwise folds without one-use check (#80587)

This patch removes some bitwise folds that fail to check the one-use
constraint on the operands.
See also the comments
https://github.com/llvm/llvm-project/pull/77231#issuecomment-1904090035.


  Commit: bb531c9a0068a078c5bbe95298769b235aa1ad75
      https://github.com/llvm/llvm-project/commit/bb531c9a0068a078c5bbe95298769b235aa1ad75
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineModuleInfo.h
    M llvm/lib/CodeGen/MachineModuleInfo.cpp
    M llvm/lib/CodeGen/MachinePassManager.cpp
    M llvm/tools/llc/NewPMDriver.cpp
    M llvm/unittests/CodeGen/PassManagerTest.cpp
    M llvm/unittests/MIR/PassBuilderCallbacksTest.cpp

  Log Message:
  -----------
  [NewPM/Codegen] Move MachineModuleInfo ownership outside of analysis (#80937)

With the legacy pass manager, MachineModuleInfoWrapperPass owned the
MachineModuleInfo used in the codegen pipeline. It can do this since
it's an ImmutablePass that doesn't get invalidated.

However, with the new pass manager, it is legal for the
ModuleAnalysisManager to clear all of its analyses, regardless of if the
analysis does not want to be invalidated. So we must move ownership of
the MachineModuleInfo outside of the analysis (this is similar to
PassInstrumentation). For now, make the PassBuilder user register a
MachineModuleAnalysis that returns a reference to a MachineModuleInfo
that the user owns. Perhaps we can find a better place to own the
MachineModuleInfo to make using the codegen pass manager less cumbersome
in the future.


  Commit: 5a83bccb35d6b0e6914b52af6db067aa01dd3efb
      https://github.com/llvm/llvm-project/commit/5a83bccb35d6b0e6914b52af6db067aa01dd3efb
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/tls-models.ll

  Log Message:
  -----------
  [X86] Fix lowering TLS under darwin large code model (#80907)

OpFlag and WrapperKind should be chosen consistently with each other in
regards to PIC, otherwise we hit asserts later on.

Broken by c04a05d8.

Fixes #80831.


  Commit: eaab6abd79bf1a377bf034e1cf652a93d10b45fb
      https://github.com/llvm/llvm-project/commit/eaab6abd79bf1a377bf034e1cf652a93d10b45fb
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    A llvm/test/tools/llc/new-pm/pipeline.mir
    M llvm/tools/llc/NewPMDriver.cpp

  Log Message:
  -----------
  [llc] Respect --print-pipeline-passes when using -passes (#80940)


  Commit: c1f7f4df01f48e771e501ea14fbef80a23c0e700
      https://github.com/llvm/llvm-project/commit/c1f7f4df01f48e771e501ea14fbef80a23c0e700
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M libc/src/__support/FPUtil/CMakeLists.txt
    R libc/src/__support/FPUtil/XFloat.h

  Log Message:
  -----------
  [libc][NFC] Remove dead code (#81005)


  Commit: e71a5f54d86be3ddf66d4a4e53d5083ef7f7a118
      https://github.com/llvm/llvm-project/commit/e71a5f54d86be3ddf66d4a4e53d5083ef7f7a118
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/Register.h

  Log Message:
  -----------
  [NFC] Typo in Register.h


  Commit: 34f61cfa6656acffc1a969a21c934c24ad0073c3
      https://github.com/llvm/llvm-project/commit/34f61cfa6656acffc1a969a21c934c24ad0073c3
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/MergeFunctions.cpp
    M llvm/test/Transforms/MergeFunc/mergefunc-preserve-debug-info.ll

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] Instrument MergeFunctions for DPValues (#80974)

The MergeFunctions pass has a "preserve some debug-info" mode that tries
to preserve parameter values. This patch generalises its decision-making
so that it applies to both debug-info stored in intrinsics, and
debug-info stored in DPValue objects. For the most part this involves
using a generic lambda and applying it to each type of object.

(Normally we avoid debug-info affecting the code generated, but this is
hidden behind a command line switch, so won't usually be encountered by
users).

Note that this diff is messy, but that's because I'm hoisting some code
into lambdas. The actual decision making processes here are identical.


  Commit: e28ca2dd46c137fd33dd327aed1afb1e66a32908
      https://github.com/llvm/llvm-project/commit/e28ca2dd46c137fd33dd327aed1afb1e66a32908
  Author: Artem Tyurin <artem.tyurin at gmail.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M libc/src/stdio/printf_core/converter.cpp
    M libc/src/stdio/printf_core/int_converter.h
    M libc/src/stdio/printf_core/parser.h
    M libc/test/src/stdio/printf_core/converter_test.cpp
    M libc/test/src/stdio/sprintf_test.cpp

  Log Message:
  -----------
  [libc] Support C23 'b' (binary) modifier in printf (#80851)

Reference: https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2612.pdf.

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


  Commit: bcc1635c7f8cf25c05ca9ef1f4995ad3e01ddda4
      https://github.com/llvm/llvm-project/commit/bcc1635c7f8cf25c05ca9ef1f4995ad3e01ddda4
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/docs/math/index.rst

  Log Message:
  -----------
  [libc] Enable float128 entrypoints on aarch64 and riscv64. (#80682)


  Commit: 9eed89908cc906850ef9c6a97ed7a5642ecd6599
      https://github.com/llvm/llvm-project/commit/9eed89908cc906850ef9c6a97ed7a5642ecd6599
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    A llvm/test/ThinLTO/X86/memprof-import-fix.ll

  Log Message:
  -----------
  [MemProf] Handle empty stack context during ThinLTO cloning (#81008)

Fix for assert after PR#78264.

Handle the case where the MIB context is empty after skipping the
callsite context, because the callsite context is actually longer than
the MIB context. Presumably this happened as a result of inlining, but
in theory the metadata should have been replaced with an attribute in
that case. Need to investigate why this is occuring, but for now handle
this gracefully to fix the build regression.


  Commit: 7c16cb6b3361ff4217004d0cc43f158dea221620
      https://github.com/llvm/llvm-project/commit/7c16cb6b3361ff4217004d0cc43f158dea221620
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M mlir/tools/mlir-opt/mlir-opt.cpp

  Log Message:
  -----------
  [mlir-opt][nfc] Remove dead function decls

This removes 3 dead function decls from mlir-opt:
- registerTestLowerToNVVM - recently removed in #75775 when NVVM was
  productized.
- registerTestPreparationPassWithAllowedMemrefResults - removed in
  D90778 (f7bc56826616).
- registerTestGenericIRVisitorsInterruptPass - added in D116230
  (8067ced144a2) but never existed. Pass is registered by
  registerTestGenericIRVisitorsPass.


  Commit: b0b0bf6d579f26962ac29592feaacd54ae04b60d
      https://github.com/llvm/llvm-project/commit/b0b0bf6d579f26962ac29592feaacd54ae04b60d
  Author: YAMAMOTO Takashi <yamamoto at midokura.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp

  Log Message:
  -----------
  WebAssemblyTargetMachine.cpp: fix a typo in a message (#80958)


  Commit: 347ab99a5c6d096beb7378794c6255dca2a866e6
      https://github.com/llvm/llvm-project/commit/347ab99a5c6d096beb7378794c6255dca2a866e6
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M clang/docs/ClangLinkerWrapper.rst
    M clang/docs/OffloadingDesign.rst

  Log Message:
  -----------
  [Clang][Docs] Fix trailing whitespace warnings


  Commit: 7880b2c8586eade00a4aa5ac11007317a61e376c
      https://github.com/llvm/llvm-project/commit/7880b2c8586eade00a4aa5ac11007317a61e376c
  Author: Max191 <44243577+Max191 at users.noreply.github.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Tensor/Utils/Utils.h
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/Tensor/Utils/Utils.cpp
    M mlir/test/Dialect/Linalg/vectorization.mlir

  Log Message:
  -----------
  [mlir] Add direct vectorization lowering for `tensor.pack` ops (#78660)

This PR adds a direct vectorization lowering of `tensor.pack` into
`mask(vector.transfer_read)`->`vector.shape_cast`->`vector.transpose`->`vector.transfer_write`.


  Commit: 3115ad8980e7d36adca95b5449db8ebf9bd94bf2
      https://github.com/llvm/llvm-project/commit/3115ad8980e7d36adca95b5449db8ebf9bd94bf2
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/idot4u.ll
    M llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2i16.ll
    M llvm/test/CodeGen/AMDGPU/load-hi16.ll
    M llvm/test/CodeGen/AMDGPU/permute.ll
    M llvm/test/CodeGen/AMDGPU/permute_i8.ll

  Log Message:
  -----------
  [AMDGPU] Accept arbitrary sized sources in CalculateByteProvider (#70240)

Reland the original patch with additional commit containing fix for two
issues:

1. Attempting to bitcast using MVTs with no corresponding LLVM type.
getDWordFromOffset now works directly with the original vector to get
the corresponding elements given the DWordOffset.
2. Improper bit tracking in CalculateByteProvider for vector types using
certain ops. Previously, bit tracking for certain ops (e.g.
ISD::TRUNCATE) assumed operands were scalar types, which is not correct
since these ops have different semantics depending on vector / scalar.
CalculateByteProvider / CalculateSrcByte now exit on vector types,
handling which is a TODO.


  Commit: b89eb9790a8962ca634965d05491a93c58773faf
      https://github.com/llvm/llvm-project/commit/b89eb9790a8962ca634965d05491a93c58773faf
  Author: Shourya Goel <114918019+Sh0g0-1758 at users.noreply.github.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenMP.cpp
    A clang/test/OpenMP/bug69085.c

  Log Message:
  -----------
  [Clang][OpenMP] Fix `!isNull() && "Cannot retrieve a NULL type pointer"' fail. (#81015)

Fixes : #69085 , #69200

**PR SUMMARY**: "Added Null check for negative sized array and a test
for the same"


  Commit: 9c75a981554d5de4b909e6493f2c3dda03395aa2
      https://github.com/llvm/llvm-project/commit/9c75a981554d5de4b909e6493f2c3dda03395aa2
  Author: Ilya Leoshkevich <iii at linux.ibm.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
    M llvm/test/CodeGen/SystemZ/asm-01.ll

  Log Message:
  -----------
  [SystemZ] Implement A, O and R inline assembly format flags (#80685)

Implement the following assembly format flags, which are already
supported by GCC:

	'A': On z14 or higher: If operand is a mem print the alignment
         hint usable with vl/vst prefixed by a comma.
	'O': print only the displacement of a memory reference or address.
	'R': print only the base register of a memory reference or address.

Implement 'A' conservatively, since the memory operand alignment
information is not available for INLINEASM at the moment.


  Commit: 2ecf608829252d7d5b530a03b87817cd948a3386
      https://github.com/llvm/llvm-project/commit/2ecf608829252d7d5b530a03b87817cd948a3386
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M mlir/lib/Dialect/MemRef/Transforms/ComposeSubView.cpp
    M mlir/test/Transforms/compose-subview.mlir

  Log Message:
  -----------
  [mlir]Fix compose subview (#80551)

I found a bug in `test-compose-subview`,You can see the example I gave.
```
#map = affine_map<() -> ()>
module {
  func.func private @fun(%arg0: memref<10x10xf32>, %arg1: memref<5x5xf32>) -> memref<5x5xf32> {
    %c0 = arith.constant 0 : index
    %c5 = arith.constant 5 : index
    %c1 = arith.constant 1 : index
    %subview = memref.subview %arg0[0, 0] [5, 5] [1, 1] : memref<10x10xf32> to memref<5x5xf32, strided<[10, 1]>>
    %alloc = memref.alloc() : memref<5x5xf32>
    scf.for %arg2 = %c0 to %c5 step %c1 {
      scf.for %arg3 = %c0 to %c5 step %c1 {
        %subview_0 = memref.subview %subview[%arg2, %arg3] [1, 1] [1, 1] : memref<5x5xf32, strided<[10, 1]>> to memref<f32, strided<[], offset: ?>>
        %subview_1 = memref.subview %arg1[%arg2, %arg3] [1, 1] [1, 1] : memref<5x5xf32> to memref<f32, strided<[], offset: ?>>
        %alloc_2 = memref.alloc() : memref<f32>
        linalg.generic {indexing_maps = [#map, #map, #map], iterator_types = []} ins(%subview_0, %subview_1 : memref<f32, strided<[], offset: ?>>, memref<f32, strided<[], offset: ?>>) outs(%alloc_2 : memref<f32>) {
        ^bb0(%in: f32, %in_4: f32, %out: f32):
          %0 = arith.addf %in, %in_4 : f32
          linalg.yield %0 : f32
        }
        %subview_3 = memref.subview %alloc[%arg2, %arg3] [1, 1] [1, 1] : memref<5x5xf32> to memref<f32, strided<[], offset: ?>>
        memref.copy %alloc_2, %subview_3 : memref<f32> to memref<f32, strided<[], offset: ?>>
      }
    }
    return %alloc : memref<5x5xf32>
  }
  func.func @test(%arg0: memref<10x10xf32>, %arg1: memref<5x5xf32>) -> memref<5x5xf32> {
    %0 = call @fun(%arg0, %arg1) : (memref<10x10xf32>, memref<5x5xf32>) -> memref<5x5xf32>
    return %0 : memref<5x5xf32>
  }
}
```
When I run `mlir-opt test.mlir ---test-compose-subview`.
```
test.mlir:14:9: error: 'linalg.generic' op expected operand rank (2) to match the result rank of indexing_map #0 (0)
        linalg.generic {indexing_maps = [#map, #map, #map], iterator_types = []} ins(%subview_0, %subview_1 : memref<f32, strided<[], offset: ?>>, memref<f32, strided<[], offset: ?>>) outs(%alloc_2 : memref<f32>) {
        ^
test1.mlir:14:9: note: see current operation: 
"linalg.generic"(%4, %5, %6) <{indexing_maps = [affine_map<() -> ()>, affine_map<() -> ()>, affine_map<() -> ()>], iterator_types = [], operandSegmentSizes = array<i32: 2, 1>}> ({
^bb0(%arg4: f32, %arg5: f32, %arg6: f32):
  %8 = "arith.addf"(%arg4, %arg5) <{fastmath = #arith.fastmath<none>}> : (f32, f32) -> f32
  "linalg.yield"(%8) : (f32) -> ()
}) : (memref<1x1xf32, strided<[10, 1], offset: ?>>, memref<f32, strided<[], offset: ?>>, memref<f32>) -> ()
```
This PR fixes that.In the meantime I've extended this PR to handle cases
where stride is greater than 1.
```
func.func private @Unknown0(%arg0: memref<10x10xf32>, %arg1: memref<5x5xf32>) -> memref<5x5xf32> {
  %c0 = arith.constant 0 : index
  %c5 = arith.constant 5 : index
  %c1 = arith.constant 1 : index
  %subview = memref.subview %arg0[0, 0] [5, 5] [2, 2] : memref<10x10xf32> to memref<5x5xf32, strided<[20, 2]>>
  %alloc = memref.alloc() : memref<5x5xf32>
  scf.for %arg2 = %c0 to %c5 step %c1 {
    scf.for %arg3 = %c0 to %c5 step %c1 {
      %subview_0 = memref.subview %subview[%arg2, %arg3] [1, 1] [1, 1] : memref<5x5xf32, strided<[20, 2]>> to memref<f32, strided<[], offset: ?>>
      %subview_1 = memref.subview %arg1[%arg2, %arg3] [1, 1] [1, 1] : memref<5x5xf32> to memref<f32, strided<[], offset: ?>>
      %alloc_2 = memref.alloc() : memref<f32>
      linalg.generic {indexing_maps = [affine_map<() -> ()>, affine_map<() -> ()>, affine_map<() -> ()>], iterator_types = []} ins(%subview_0, %subview_1 : memref<f32, strided<[], offset: ?>>, memref<f32, strided<[], offset: ?>>) outs(%alloc_2 : memref<f32>) {
      ^bb0(%in: f32, %in_4: f32, %out: f32):
        %0 = arith.addf %in, %in_4 : f32
        linalg.yield %0 : f32
      }
      %subview_3 = memref.subview %alloc[%arg2, %arg3] [1, 1] [1, 1] : memref<5x5xf32> to memref<f32, strided<[], offset: ?>>
      memref.copy %alloc_2, %subview_3 : memref<f32> to memref<f32, strided<[], offset: ?>>
    }
  }
  return %alloc : memref<5x5xf32>
}
$ mlir-opt test.mlir -test-compose-subview
#map = affine_map<()[s0] -> (s0 * 2)>
#map1 = affine_map<() -> ()>
module {
  func.func private @Unknown0(%arg0: memref<10x10xf32>, %arg1: memref<5x5xf32>) -> memref<5x5xf32>  {
    %c0 = arith.constant 0 : index
    %c5 = arith.constant 5 : index
    %c1 = arith.constant 1 : index
    %alloc = memref.alloc() : memref<5x5xf32>
    scf.for %arg2 = %c0 to %c5 step %c1 {
      scf.for %arg3 = %c0 to %c5 step %c1 {
        %0 = affine.apply #map()[%arg2]
        %1 = affine.apply #map()[%arg3]
        %subview = memref.subview %arg0[%0, %1] [1, 1] [2, 2] : memref<10x10xf32> to memref<f32, strided<[], offset: ?>>
        %subview_0 = memref.subview %arg1[%arg2, %arg3] [1, 1] [1, 1] : memref<5x5xf32> to memref<f32, strided<[], offset: ?>>
        %alloc_1 = memref.alloc() : memref<f32>
        linalg.generic {indexing_maps = [#map1, #map1, #map1], iterator_types = []} ins(%subview, %subview_0 : memref<f32, strided<[], offset: ?>>, memref<f32, strided<[], offset: ?>>) outs(%alloc_1 : memref<f32>) {
        ^bb0(%in: f32, %in_3: f32, %out: f32):
          %2 = arith.addf %in, %in_3 : f32
          linalg.yield %2 : f32
        }
        %subview_2 = memref.subview %alloc[%arg2, %arg3] [1, 1] [1, 1] : memref<5x5xf32> to memref<f32, strided<[], offset: ?>>
        memref.copy %alloc_1, %subview_2 : memref<f32> to memref<f32, strided<[], offset: ?>>
      }
    }
    return %alloc : memref<5x5xf32>
  }
}
```


  Commit: 8b0f47bfa4b6aa1bafa10261444c93aba5a2d31d
      https://github.com/llvm/llvm-project/commit/8b0f47bfa4b6aa1bafa10261444c93aba5a2d31d
  Author: Derek Schuff <dschuff at chromium.org>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M lld/test/wasm/build-id.test
    M lld/test/wasm/merge-string-debug.s
    M lld/test/wasm/startstop.ll
    M llvm/lib/Object/WasmObjectFile.cpp
    M llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp
    M llvm/test/tools/llvm-objdump/wasm/executable-without-symbols-debugnames.test
    M llvm/test/tools/llvm-objdump/wasm/executable-without-symbols.test
    M llvm/test/tools/llvm-objdump/wasm/no-codesec.test
    M llvm/tools/llvm-objdump/llvm-objdump.cpp

  Log Message:
  -----------
  [Object][Wasm] Use file offset for section addresses in linked wasm files (#80529)

Wasm has no unified virtual memory space as other object formats and
architectures do, so previously WasmObjectFile reported 0 for all
section addresses, and until 428cf71ff used section offsets for function
symbols. Now we use file offsets for function symbols, and this change
switches section addresses to do the same (in linked files). The main
result of this is that objdump now reports VMAs in section listings, and
also uses file offets rather than section offsets when disassembling
linked binaries (matching the behavior of other disassemblers and stack
traces produced by browwsers). To make this work, this PR also updates
objdump's generation of synthetics fallback symbols to match lib/Object
and also correctly plumbs symbol types for regular and dummy symbols
through to the backend to avoid needing special knowledge of address 0.

This also paves the way for generating symbols from name sections rather
than symbol tables or imports (see #76107) by allowing the
disassembler's synthetic fallback symbols match the name-section
generated symbols (in a followup PR).


  Commit: caf537ea493a7583bbc369c6a692842819daee74
      https://github.com/llvm/llvm-project/commit/caf537ea493a7583bbc369c6a692842819daee74
  Author: Stephen Tozer <Stephen.Tozer at Sony.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
    M llvm/test/Transforms/SpeculativeExecution/PR46267.ll

  Log Message:
  -----------
  Reapply "[RemoveDIs][DebugInfo] Hoist DPValues in SpeculativeExecution (#80886)"

Reapply the original commit, 0aacd44, which had a missing brace resulting in
an error in compilation.

This reverts commit c76b0eb898d1e5edc416b658a6902163d64db1ce.


  Commit: 9f6c00565a82fc375d415804d54da1113f719b17
      https://github.com/llvm/llvm-project/commit/9f6c00565a82fc375d415804d54da1113f719b17
  Author: Kolya Panchenko <87679760+nikolaypanchenko at users.noreply.github.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/CMakeLists.txt
    A mlir/include/mlir/Dialect/LLVMIR/VCIXDialect.h
    A mlir/include/mlir/Dialect/LLVMIR/VCIXOps.td
    M mlir/include/mlir/Target/LLVMIR/Dialect/All.h
    A mlir/include/mlir/Target/LLVMIR/Dialect/VCIX/VCIXToLLVMIRTranslation.h
    M mlir/lib/Dialect/LLVMIR/CMakeLists.txt
    A mlir/lib/Dialect/LLVMIR/IR/VCIXDialect.cpp
    M mlir/lib/Target/LLVMIR/CMakeLists.txt
    M mlir/lib/Target/LLVMIR/Dialect/CMakeLists.txt
    A mlir/lib/Target/LLVMIR/Dialect/VCIX/CMakeLists.txt
    A mlir/lib/Target/LLVMIR/Dialect/VCIX/VCIXToLLVMIRTranslation.cpp
    A mlir/test/Conversion/MathToVCIX/math-to-vcix.mlir
    A mlir/test/Target/LLVMIR/vcix-rv32.mlir
    A mlir/test/Target/LLVMIR/vcix-rv64.mlir
    M mlir/test/lib/Conversion/CMakeLists.txt
    A mlir/test/lib/Conversion/MathToVCIX/CMakeLists.txt
    A mlir/test/lib/Conversion/MathToVCIX/TestMathToVCIXConversion.cpp
    M mlir/tools/mlir-opt/CMakeLists.txt
    M mlir/tools/mlir-opt/mlir-opt.cpp

  Log Message:
  -----------
  [MLIR][VCIX] Support VCIX intrinsics in LLVMIR dialect (#75875)

The changeset extends LLVMIR intrinsics with VCIX intrinsics.
The VCIX intrinsics allow MLIR users to interact with RISC-V
co-processors that are compatible with `XSfvcp` extension

Source:
https://www.sifive.com/document-file/sifive-vector-coprocessor-interface-vcix-software


  Commit: 7a9b0e4acb3b5ee15f8eb138aad937cfa4763fb8
      https://github.com/llvm/llvm-project/commit/7a9b0e4acb3b5ee15f8eb138aad937cfa4763fb8
  Author: Xing Xue <xingxue at outlook.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M openmp/runtime/src/kmp.h
    M openmp/runtime/test/tasking/bug_nested_proxy_task.c
    M openmp/runtime/test/tasking/bug_proxy_task_dep_waiting.c
    M openmp/runtime/test/tasking/hidden_helper_task/common.h

  Log Message:
  -----------
  [OpenMP][test]Flip bit-fields in 'struct flags' for big-endian in test cases (#79895)

This patch flips bit-fields in `struct flags` for big-endian in test
cases to be consistent with the definition of the structure in libomp
`kmp.h`.


  Commit: 369b82218419a0218400e7483255523b8dfd6cf0
      https://github.com/llvm/llvm-project/commit/369b82218419a0218400e7483255523b8dfd6cf0
  Author: Vijay Kandiah <vkandiah at nvidia.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIRDialect.h
    M flang/include/flang/Optimizer/Support/InitFIR.h
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/Optimizer/Dialect/FIRDialect.cpp
    M flang/tools/bbc/bbc.cpp
    M flang/tools/fir-opt/fir-opt.cpp
    M flang/tools/tco/tco.cpp

  Log Message:
  -----------
  [flang] Introducing a method to dynamically and conditionally register dialect interfaces.  (#80881)

This change introduces the `addFIRExtensions` method to dynamically and
conditionally register dialect interfaces. As a use case of
`addFIRExtensions`, this change moves the static registration of
`FIRInlinerInterface` out of the constructor of `FIROpsDialect` to be
dynamically registered while loading the necessary MLIR dialects
required by Flang. This registration of `FIRInlinerInterface` is also
guarded by a boolean `addFIRInlinerInterface` which defaults to true.

---------

Co-authored-by: Vijay Kandiah <vkandiah at nvidia.com>


  Commit: c95693c74601521463e12ff358fed6fb9ee736b9
      https://github.com/llvm/llvm-project/commit/c95693c74601521463e12ff358fed6fb9ee736b9
  Author: Pranav Kant <prka at google.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [NFC][AMDGPU] Fix unused-variable warning (#81040)

This is only used in assert statement.


  Commit: bb3ea6c810ccdffd176589e608bfa79dd25268ff
      https://github.com/llvm/llvm-project/commit/bb3ea6c810ccdffd176589e608bfa79dd25268ff
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

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

  Log Message:
  -----------
  [MemProf] Switch to DenseMap for performance (NFC) (#81035)

Some profiling showed that the accesses to this map during bitcode
reading was incurring over 10% of the time in a large thin link. There
is no need for it to be std::map, and I measured around 8.5% time
reduction in the same thin link from switching to DenseMap.


  Commit: b1ac052ab07ea091c90c2b7c89445b2bfcfa42ab
      https://github.com/llvm/llvm-project/commit/b1ac052ab07ea091c90c2b7c89445b2bfcfa42ab
  Author: Arnold Schwaighofer <aschwaighofer at apple.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/test/Transforms/Coroutines/coro-async-addr-lifetime-infinite-loop-bug.ll
    M llvm/test/Transforms/Coroutines/coro-async-addr-lifetime-start-bug.ll
    M llvm/test/Transforms/Coroutines/coro-async-dyn-align.ll
    A llvm/test/Transforms/Coroutines/coro-async-mutal-recursive.ll
    M llvm/test/Transforms/Coroutines/coro-async-unreachable.ll
    M llvm/test/Transforms/Coroutines/coro-async.ll
    M llvm/test/Transforms/Coroutines/swift-async-dbg.ll

  Log Message:
  -----------
  [Coro] [async] Disable inlining in async coroutine splitting (#80904)

The call to the inlining utility does not update the call graph. Leading
to assertion failures when calling the call graph utility to update the
call graph.

Instead rely on an inline pass to run after coro splitting and use
alwaysinline annotations.

github.com/apple/swift/issues/68708


  Commit: e9540e4a54311241887c372743a0f442b9996984
      https://github.com/llvm/llvm-project/commit/e9540e4a54311241887c372743a0f442b9996984
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M .github/workflows/llvm-project-tests.yml
    M bolt/lib/Passes/BinaryPasses.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M clang/docs/ClangLinkerWrapper.rst
    M clang/docs/OffloadingDesign.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/ByteCodeStmtGen.cpp
    M clang/lib/AST/Interp/Descriptor.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/InterpBuiltin.cpp
    M clang/lib/AST/Interp/Opcodes.td
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Format/BreakableToken.cpp
    M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
    M clang/lib/Headers/cpuid.h
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/AST/Interp/builtin-functions.cpp
    M clang/test/AST/Interp/complex.cpp
    M clang/test/AST/Interp/literals.cpp
    M clang/test/AST/Interp/records.cpp
    M clang/test/AST/Interp/switch.cpp
    A clang/test/AST/fixed-point-zero-init.cpp
    M clang/test/Driver/linker-wrapper-image.c
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/wasm-features.c
    M clang/test/Frontend/verify.c
    A clang/test/OpenMP/bug69085.c
    M clang/test/Preprocessor/wasm-target-features.c
    M clang/test/SemaCXX/cxx1z-copy-omission.cpp
    M clang/test/SemaCXX/cxx20-using-enum.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-debug.cpp
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
    M clang/unittests/Format/FormatTestComments.cpp
    M compiler-rt/lib/asan/asan_linux.cpp
    M compiler-rt/lib/memprof/memprof_allocator.cpp
    M compiler-rt/lib/memprof/memprof_allocator.h
    M compiler-rt/lib/memprof/memprof_interceptors.cpp
    M compiler-rt/lib/memprof/memprof_internal.h
    M compiler-rt/lib/memprof/memprof_malloc_linux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_common.h
    M flang/include/flang/Lower/ConvertCall.h
    M flang/include/flang/Optimizer/Builder/MutableBox.h
    M flang/include/flang/Optimizer/Dialect/FIRDialect.h
    M flang/include/flang/Optimizer/Support/InitFIR.h
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertExpr.cpp
    M flang/lib/Lower/OpenMP.cpp
    M flang/lib/Optimizer/Builder/MutableBox.cpp
    M flang/lib/Optimizer/Dialect/FIRDialect.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/BufferizeHLFIR.cpp
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/HLFIR/as_expr-codegen-polymorphic.fir
    M flang/test/HLFIR/bufferize-poly-expr.fir
    M flang/test/Lower/HLFIR/function-return-as-expr.f90
    M flang/tools/bbc/bbc.cpp
    M flang/tools/fir-opt/fir-opt.cpp
    M flang/tools/tco/tco.cpp
    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/math/index.rst
    M libc/include/llvm-libc-macros/stdbit-macros.h
    M libc/spec/stdc.td
    M libc/src/__support/FPUtil/CMakeLists.txt
    R libc/src/__support/FPUtil/XFloat.h
    M libc/src/stdbit/CMakeLists.txt
    A libc/src/stdbit/stdc_trailing_ones_uc.cpp
    A libc/src/stdbit/stdc_trailing_ones_uc.h
    A libc/src/stdbit/stdc_trailing_ones_ui.cpp
    A libc/src/stdbit/stdc_trailing_ones_ui.h
    A libc/src/stdbit/stdc_trailing_ones_ul.cpp
    A libc/src/stdbit/stdc_trailing_ones_ul.h
    A libc/src/stdbit/stdc_trailing_ones_ull.cpp
    A libc/src/stdbit/stdc_trailing_ones_ull.h
    A libc/src/stdbit/stdc_trailing_ones_us.cpp
    A libc/src/stdbit/stdc_trailing_ones_us.h
    M libc/src/stdio/printf_core/converter.cpp
    M libc/src/stdio/printf_core/int_converter.h
    M libc/src/stdio/printf_core/parser.h
    M libc/test/include/stdbit_test.cpp
    M libc/test/src/stdbit/CMakeLists.txt
    A libc/test/src/stdbit/stdc_trailing_ones_uc_test.cpp
    A libc/test/src/stdbit/stdc_trailing_ones_ui_test.cpp
    A libc/test/src/stdbit/stdc_trailing_ones_ul_test.cpp
    A libc/test/src/stdbit/stdc_trailing_ones_ull_test.cpp
    A libc/test/src/stdbit/stdc_trailing_ones_us_test.cpp
    M libc/test/src/stdio/printf_core/converter_test.cpp
    M libc/test/src/stdio/sprintf_test.cpp
    M libcxx/test/libcxx/containers/sequences/deque/abi.compile.pass.cpp
    A libcxx/test/libcxx/containers/sequences/list/abi.compile.pass.cpp
    A libcxx/test/libcxx/containers/sequences/vector.bool/abi.compile.pass.cpp
    A libcxx/test/libcxx/containers/sequences/vector/abi.compile.pass.cpp
    M lld/test/wasm/build-id.test
    M lld/test/wasm/merge-string-debug.s
    M lld/test/wasm/startstop.ll
    M lldb/bindings/headers.swig
    A lldb/bindings/interface/SBStatisticsOptionsDocstrings.i
    M lldb/bindings/interfaces.swig
    M lldb/include/lldb/API/LLDB.h
    M lldb/include/lldb/API/SBDefines.h
    A lldb/include/lldb/API/SBStatisticsOptions.h
    M lldb/include/lldb/API/SBTarget.h
    M lldb/include/lldb/Target/Statistics.h
    M lldb/include/lldb/Target/Target.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/source/API/CMakeLists.txt
    A lldb/source/API/SBStatisticsOptions.cpp
    M lldb/source/API/SBTarget.cpp
    M lldb/source/Commands/CommandObjectStats.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Target/Statistics.cpp
    M lldb/source/Target/Target.cpp
    M lldb/test/API/functionalities/stats_api/TestStatisticsAPI.py
    M lldb/test/API/functionalities/stats_api/main.c
    M llvm/docs/CommandGuide/llvm-objcopy.rst
    M llvm/docs/Passes.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/TableGen/BackEnds.rst
    M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
    M llvm/include/llvm/CodeGen/MachineModuleInfo.h
    M llvm/include/llvm/CodeGen/Register.h
    M llvm/include/llvm/Frontend/Offloading/OffloadWrapper.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/ObjCopy/CommonConfig.h
    M llvm/include/llvm/Target/TargetSchedule.td
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/CodeGen/GlobalISel/Utils.cpp
    M llvm/lib/CodeGen/MachineModuleInfo.cpp
    M llvm/lib/CodeGen/MachinePassManager.cpp
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
    M llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp
    M llvm/lib/Frontend/Offloading/OffloadWrapper.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/Metadata.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/ObjCopy/ConfigManager.cpp
    M llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp
    M llvm/lib/Object/ELFObjectFile.cpp
    M llvm/lib/Object/OffloadBinary.cpp
    M llvm/lib/Object/WasmObjectFile.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SOPInstructions.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/ARM/ARMInstrInfo.td
    M llvm/lib/Target/ARM/ARMInstructionSelector.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVFrameLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoSFB.td
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
    M llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/lib/Target/X86/X86FixupVectorConstants.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/IPO/MergeFunctions.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Analysis/CostModel/X86/free-intrinsics.ll
    M llvm/test/Analysis/CostModel/free-intrinsics-datalayout.ll
    M llvm/test/Analysis/CostModel/free-intrinsics-no_info.ll
    M llvm/test/Assembler/DIDefaultTemplateParam.ll
    M llvm/test/CodeGen/AArch64/dbg-value-swift-async.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/twoaddr-extract-dyn-v7f64.mir
    M llvm/test/CodeGen/AMDGPU/idot4u.ll
    M llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2i16.ll
    M llvm/test/CodeGen/AMDGPU/load-hi16.ll
    R llvm/test/CodeGen/AMDGPU/pal-metadata-3.0-callable.ll
    M llvm/test/CodeGen/AMDGPU/permute.ll
    M llvm/test/CodeGen/AMDGPU/permute_i8.ll
    A llvm/test/CodeGen/ARM/GlobalISel/select-const.mir
    A llvm/test/CodeGen/RISCV/zcmp-cm-push-pop.mir
    M llvm/test/CodeGen/SystemZ/asm-01.ll
    M llvm/test/CodeGen/X86/combine-movmsk-avx.ll
    M llvm/test/CodeGen/X86/tls-models.ll
    M llvm/test/DebugInfo/X86/debug_value_list_selectiondag.ll
    M llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_align_rvc.s
    M llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call_boundary.s
    M llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call_rvc.s
    M llvm/test/MC/RISCV/elf-flags.s
    M llvm/test/TableGen/generic-tables-instruction.td
    M llvm/test/ThinLTO/X86/crash_debuginfo.ll
    A llvm/test/ThinLTO/X86/memprof-import-fix.ll
    M llvm/test/Transforms/Attributor/ArgumentPromotion/pr33641_remove_arg_dbgvalue.ll
    M llvm/test/Transforms/Coroutines/coro-async-addr-lifetime-infinite-loop-bug.ll
    M llvm/test/Transforms/Coroutines/coro-async-addr-lifetime-start-bug.ll
    M llvm/test/Transforms/Coroutines/coro-async-dyn-align.ll
    A llvm/test/Transforms/Coroutines/coro-async-mutal-recursive.ll
    M llvm/test/Transforms/Coroutines/coro-async-unreachable.ll
    M llvm/test/Transforms/Coroutines/coro-async.ll
    M llvm/test/Transforms/Coroutines/swift-async-dbg.ll
    M llvm/test/Transforms/IROutliner/legal-debug.ll
    M llvm/test/Transforms/InstCombine/and-fcmp.ll
    A llvm/test/Transforms/InstCombine/canonicalize-fcmp-inf.ll
    M llvm/test/Transforms/InstCombine/cast-mul-select.ll
    M llvm/test/Transforms/InstCombine/create-class-from-logic-fcmp.ll
    M llvm/test/Transforms/InstCombine/debuginfo_add.ll
    M llvm/test/Transforms/InstCombine/fdiv.ll
    M llvm/test/Transforms/InstCombine/fold-select-fmul-if-zero.ll
    M llvm/test/Transforms/InstCombine/free-inversion.ll
    M llvm/test/Transforms/InstCombine/or-xor.ll
    M llvm/test/Transforms/InstCombine/or.ll
    M llvm/test/Transforms/InstCombine/sink-instruction-introduces-unnecessary-poison-value.ll
    M llvm/test/Transforms/InstSimplify/cast-unsigned-icmp-cmp-0.ll
    A llvm/test/Transforms/LoopIdiom/pr80954.ll
    M llvm/test/Transforms/LoopStrengthReduce/Power/incomplete-phi.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/short-trip-count.ll
    M llvm/test/Transforms/MergeFunc/mergefunc-preserve-debug-info.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
    M llvm/test/Transforms/SROA/select-gep.ll
    M llvm/test/Transforms/Scalarizer/dbginfo.ll
    M llvm/test/Transforms/SpeculativeExecution/PR46267.ll
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/various_ir_values.ll
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/various_ir_values.ll.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/various_ir_values.ll.funcsig.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/various_ir_values.ll.funcsig.globals.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/various_ir_values.ll.funcsig.noglobals.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/various_ir_values.ll.funcsig.transitiveglobals.expected
    A llvm/test/tools/llc/new-pm/pipeline.mir
    M llvm/test/tools/llvm-exegesis/X86/latency/middle-half.s
    A llvm/test/tools/llvm-objcopy/ELF/prefix-symbols-remove.test
    M llvm/test/tools/llvm-objdump/wasm/executable-without-symbols-debugnames.test
    M llvm/test/tools/llvm-objdump/wasm/executable-without-symbols.test
    M llvm/test/tools/llvm-objdump/wasm/no-codesec.test
    M llvm/tools/llc/NewPMDriver.cpp
    M llvm/tools/llvm-objcopy/ObjcopyOptions.cpp
    M llvm/tools/llvm-objcopy/ObjcopyOpts.td
    M llvm/tools/llvm-objdump/llvm-objdump.cpp
    M llvm/unittests/CodeGen/GlobalISel/GISelUtilsTest.cpp
    M llvm/unittests/CodeGen/PassManagerTest.cpp
    M llvm/unittests/IR/PatternMatch.cpp
    M llvm/unittests/MIR/PassBuilderCallbacksTest.cpp
    M llvm/unittests/Transforms/Utils/DebugifyTest.cpp
    M llvm/utils/TableGen/CodeGenTarget.cpp
    M llvm/utils/TableGen/CodeGenTarget.h
    M llvm/utils/TableGen/SearchableTableEmitter.cpp
    M llvm/utils/gn/secondary/lldb/source/API/BUILD.gn
    M mlir/include/mlir/Dialect/ArmSME/IR/ArmSMEOps.td
    A mlir/include/mlir/Dialect/Func/Extensions/MeshShardingExtensions.h
    M mlir/include/mlir/Dialect/LLVMIR/CMakeLists.txt
    A mlir/include/mlir/Dialect/LLVMIR/VCIXDialect.h
    A mlir/include/mlir/Dialect/LLVMIR/VCIXOps.td
    M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.h
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.h
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.td
    A mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterfaceImpl.h
    M mlir/include/mlir/Dialect/Mesh/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Mesh/Transforms/Spmdization.h
    M mlir/include/mlir/Dialect/Tensor/Utils/Utils.h
    M mlir/include/mlir/Dialect/Transform/IR/TransformInterfaces.h
    M mlir/include/mlir/IR/PatternMatch.h
    M mlir/include/mlir/Target/LLVMIR/Dialect/All.h
    A mlir/include/mlir/Target/LLVMIR/Dialect/VCIX/VCIXToLLVMIRTranslation.h
    M mlir/include/mlir/Transforms/DialectConversion.h
    M mlir/lib/Conversion/ArmSMEToLLVM/ArmSMEToLLVM.cpp
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp
    M mlir/lib/Dialect/ArmSME/Transforms/OuterProductFusion.cpp
    M mlir/lib/Dialect/Func/Extensions/AllExtensions.cpp
    M mlir/lib/Dialect/Func/Extensions/CMakeLists.txt
    A mlir/lib/Dialect/Func/Extensions/MeshShardingExtensions.cpp
    M mlir/lib/Dialect/LLVMIR/CMakeLists.txt
    A mlir/lib/Dialect/LLVMIR/IR/VCIXDialect.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/MemRef/Transforms/ComposeSubView.cpp
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp
    M mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
    M mlir/lib/Dialect/Mesh/Transforms/Spmdization.cpp
    M mlir/lib/Dialect/Tensor/Utils/Utils.cpp
    M mlir/lib/Dialect/Tosa/IR/ShardingInterfaceImpl.cpp
    M mlir/lib/Dialect/Transform/IR/TransformInterfaces.cpp
    M mlir/lib/IR/AffineExpr.cpp
    M mlir/lib/Target/LLVMIR/CMakeLists.txt
    M mlir/lib/Target/LLVMIR/Dialect/CMakeLists.txt
    A mlir/lib/Target/LLVMIR/Dialect/VCIX/CMakeLists.txt
    A mlir/lib/Target/LLVMIR/Dialect/VCIX/VCIXToLLVMIRTranslation.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp
    M mlir/test/Conversion/ArmSMEToLLVM/arm-sme-to-llvm.mlir
    A mlir/test/Conversion/MathToVCIX/math-to-vcix.mlir
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir
    M mlir/test/Dialect/ArmSME/invalid.mlir
    M mlir/test/Dialect/ArmSME/outer-product-fusion.mlir
    M mlir/test/Dialect/ArmSME/roundtrip.mlir
    M mlir/test/Dialect/Linalg/vectorization.mlir
    M mlir/test/Dialect/Mesh/resharding-spmdization.mlir
    A mlir/test/Dialect/Mesh/spmdization.mlir
    A mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-outerproduct-i8i8i32.mlir
    A mlir/test/Target/LLVMIR/vcix-rv32.mlir
    A mlir/test/Target/LLVMIR/vcix-rv64.mlir
    M mlir/test/Transforms/compose-subview.mlir
    M mlir/test/lib/Conversion/CMakeLists.txt
    A mlir/test/lib/Conversion/MathToVCIX/CMakeLists.txt
    A mlir/test/lib/Conversion/MathToVCIX/TestMathToVCIXConversion.cpp
    M mlir/tools/mlir-opt/CMakeLists.txt
    M mlir/tools/mlir-opt/mlir-opt.cpp
    M openmp/runtime/src/kmp.h
    M openmp/runtime/test/tasking/bug_nested_proxy_task.c
    M openmp/runtime/test/tasking/bug_proxy_task_dep_waiting.c
    M openmp/runtime/test/tasking/hidden_helper_task/common.h
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  improve comment and edit description

Created using spr 1.3.4


Compare: https://github.com/llvm/llvm-project/compare/10e9c5a30d7d...e9540e4a5431


More information about the All-commits mailing list