[all-commits] [llvm/llvm-project] 4d6292: [C++20] [Modules] Disambuguous Clang module and C+...

goldsteinn via All-commits all-commits at lists.llvm.org
Wed Mar 13 13:14:16 PDT 2024


  Branch: refs/heads/users/MaskRay/spr/main.llvm-objcopy-add-compress-sections
  Home:   https://github.com/llvm/llvm-project
  Commit: 4d62929852849f768d7397f634cfdebc85de96a4
      https://github.com/llvm/llvm-project/commit/4d62929852849f768d7397f634cfdebc85de96a4
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Frontend/FrontendActions.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaModule.cpp
    M clang/test/CXX/module/dcl.dcl/dcl.module/dcl.module.interface/p1.cppm
    R clang/test/Modules/missing-module-declaration.cppm
    M clang/test/Modules/pr72828.cppm

  Log Message:
  -----------
  [C++20] [Modules] Disambuguous Clang module and C++20 Named module further

This patch tries to make the boundary of clang module and C++20 named
module more clear.

The changes included:

- Rename `TranslationUnitKind::TU_Module` to
  `TranslationUnitKind::TU_ClangModule`.
- Rename `Sema::ActOnModuleInclude` to `Sema::ActOnAnnotModuleInclude`.
- Rename `ActOnModuleBegin` to `Sema::ActOnAnnotModuleBegin`.
- Rename `Sema::ActOnModuleEnd` to `Sema::ActOnAnnotModuleEnd`.
- Removes a warning if we're trying to compile a non-module unit as
  C++20 module unit. This is not actually useful and makes (the future)
  implementation unnecessarily complex.

This patch meant to be a NFC fix. But it shows that it fixed a bug
suprisingly that previously we would surppress the unused-value warning
in named modules. Because it shares the same logic with clang modules,
which has headers semantics. This shows the change is meaningful.


  Commit: fe1d02b08ce2ca74de5b18d9f141d503b7985ec5
      https://github.com/llvm/llvm-project/commit/fe1d02b08ce2ca74de5b18d9f141d503b7985ec5
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-12 (Tue, 12 Mar 2024)

  Changed paths:
    M compiler-rt/lib/hwasan/hwasan_interceptors.cpp
    M compiler-rt/lib/lsan/lsan_interceptors.cpp
    M compiler-rt/lib/msan/msan_interceptors.cpp
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
    A compiler-rt/test/sanitizer_common/TestCases/Linux/static-link.c

  Log Message:
  -----------
  [sanitizer] Reject unsupported -static at link time (#83524)

Most sanitizers don't support static linking. One primary reason is the
incompatibility with interceptors. `GetTlsSize` is another reason.
asan/memprof use `__interception::DoesNotSupportStaticLinking`
(`_DYNAMIC` reference) to reject -static at link time. Port this
detector to other sanitizers. dfsan actually supports -static for
certain cases. Don't touch dfsan.


  Commit: cd2f6163137dce45d909aa445cfd57b7188f8ed1
      https://github.com/llvm/llvm-project/commit/cd2f6163137dce45d909aa445cfd57b7188f8ed1
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst

  Log Message:
  -----------
  AMDGPU: Use list-table for metadata table (#85024)

The table syntax for sphinx is really insufferably whitespace dependent.
I've been meaning to convert the existing attribute and intrinsic tables
to use list-table, which is less painful to merge.


  Commit: 0a443f13b49b3f392461a0bb60b0146cfc4607c7
      https://github.com/llvm/llvm-project/commit/0a443f13b49b3f392461a0bb60b0146cfc4607c7
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    M llvm/test/CodeGen/SPIRV/ComparePointers.ll
    M llvm/test/CodeGen/SPIRV/capability-kernel.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-addressspace.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-base-type.ll
    M llvm/test/CodeGen/SPIRV/pointers/kernel-argument-pointer-addressspace.ll
    M llvm/test/CodeGen/SPIRV/pointers/kernel-argument-pointer-type-deduction-no-bitcast-to-generic.ll
    M llvm/test/CodeGen/SPIRV/pointers/kernel-argument-pointer-type.ll
    M llvm/test/CodeGen/SPIRV/pointers/load-addressspace.ll
    M llvm/test/CodeGen/SPIRV/pointers/store-operand-ptr-to-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/struct-opaque-pointers.ll
    M llvm/test/CodeGen/SPIRV/pointers/two-bitcast-or-param-users.ll
    M llvm/test/CodeGen/SPIRV/pointers/two-subsequent-bitcasts.ll
    A llvm/test/CodeGen/SPIRV/pointers/type-deduce-by-call-rev.ll
    A llvm/test/CodeGen/SPIRV/pointers/type-deduce-by-call.ll
    A llvm/test/CodeGen/SPIRV/pointers/typeof-ptr-int.ll
    M llvm/test/CodeGen/SPIRV/relationals.ll
    M llvm/test/CodeGen/SPIRV/simple.ll
    M llvm/test/CodeGen/SPIRV/transcoding/AtomicCompareExchangeExplicit_cl20.ll
    M llvm/test/CodeGen/SPIRV/transcoding/BitReversePref.ll
    M llvm/test/CodeGen/SPIRV/transcoding/BuildNDRange.ll
    M llvm/test/CodeGen/SPIRV/transcoding/BuildNDRange_2.ll
    M llvm/test/CodeGen/SPIRV/transcoding/ConvertPtr.ll
    M llvm/test/CodeGen/SPIRV/transcoding/DecorationAlignment.ll
    M llvm/test/CodeGen/SPIRV/transcoding/DecorationMaxByteOffset.ll
    M llvm/test/CodeGen/SPIRV/transcoding/DivRem.ll
    M llvm/test/CodeGen/SPIRV/transcoding/ExecutionMode_SPIR_to_SPIRV.ll
    M llvm/test/CodeGen/SPIRV/transcoding/GlobalFunAnnotate.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/atomic_cmpxchg.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/atomic_legacy.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/atomic_work_item_fence.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/barrier.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/sub_group_mask.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/work_group_barrier.ll
    M llvm/test/CodeGen/SPIRV/transcoding/atomic_flag.ll
    M llvm/test/CodeGen/SPIRV/transcoding/atomic_load_store.ll
    M llvm/test/CodeGen/SPIRV/transcoding/bitcast.ll
    M llvm/test/CodeGen/SPIRV/transcoding/block_w_struct_return.ll
    M llvm/test/CodeGen/SPIRV/transcoding/builtin_calls.ll
    M llvm/test/CodeGen/SPIRV/transcoding/builtin_vars.ll
    M llvm/test/CodeGen/SPIRV/transcoding/builtin_vars_arithmetics.ll
    M llvm/test/CodeGen/SPIRV/transcoding/builtin_vars_opt.ll
    M llvm/test/CodeGen/SPIRV/transcoding/check_ro_qualifier.ll
    M llvm/test/CodeGen/SPIRV/transcoding/cl-types.ll
    M llvm/test/CodeGen/SPIRV/transcoding/clk_event_t.ll
    M llvm/test/CodeGen/SPIRV/transcoding/enqueue_kernel.ll
    M llvm/test/CodeGen/SPIRV/transcoding/explicit-conversions.ll
    M llvm/test/CodeGen/SPIRV/transcoding/extract_insert_value.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fadd.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fclamp.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fcmp.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fdiv.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fmod.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fmul.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fneg.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fp_contract_reassoc_fast_mode.ll
    M llvm/test/CodeGen/SPIRV/transcoding/frem.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fsub.ll
    M llvm/test/CodeGen/SPIRV/transcoding/get_image_num_mip_levels.ll
    M llvm/test/CodeGen/SPIRV/transcoding/global_block.ll
    M llvm/test/CodeGen/SPIRV/transcoding/group_ops.ll
    M llvm/test/CodeGen/SPIRV/transcoding/isequal.ll
    M llvm/test/CodeGen/SPIRV/transcoding/relationals_double.ll
    M llvm/test/CodeGen/SPIRV/transcoding/relationals_float.ll
    M llvm/test/CodeGen/SPIRV/transcoding/relationals_half.ll

  Log Message:
  -----------
  [SPIR-V] Add implementation of G_SPLAT_VECTOR opcode and fix invalid types processing (#84766)

This PR:
* adds support for G_SPLAT_VECTOR generic opcode that may be legally
generated instead of G_BUILD_VECTOR by previous passes of the translator
(see https://github.com/llvm/llvm-project/pull/80378 for the source of
breaking changes);
* improves deduction of types for opaque pointers.

This PR also fixes the following issues:
* if a function has ptr argument(s), two functions that have different
SPIR-V type definitions may get identical LLVM function types and break
agreements of global register and duplicate checker;
* checks for pointer types do not account for TypedPointerType.

Update of tests:
* A test case is added to cover the issue with function ptr parameters.
* The first case, that is support for G_SPLAT_VECTOR generic opcode, is
covered by existing test cases.
* Multiple additional checks by `spirv-val` is added to cover more
possibilities of generation of invalid code.


  Commit: 5a4e2210bd60fec854822d3fb2a2aaa1e20ad2e1
      https://github.com/llvm/llvm-project/commit/5a4e2210bd60fec854822d3fb2a2aaa1e20ad2e1
  Author: Aiden Grossman <agrossman154 at yahoo.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

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

  Log Message:
  -----------
  Revert "[llvm-exegesis] Use LLVM Support to get thread ID"

This reverts commit 1c3b15e9f5bc671e40bcf5d3475f5425466754ce.

This (and/or) a related patch was causing build failures on one of the
buildbots. More information is available at
https://lab.llvm.org/buildbot/#/builders/178/builds/7015.


  Commit: 1fe9c417a0bf143f9bb9f9e1fbf7b20f44196883
      https://github.com/llvm/llvm-project/commit/1fe9c417a0bf143f9bb9f9e1fbf7b20f44196883
  Author: Aiden Grossman <agrossman154 at yahoo.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
    M llvm/tools/llvm-exegesis/lib/SubprocessMemory.cpp
    M llvm/tools/llvm-exegesis/lib/SubprocessMemory.h
    M llvm/unittests/tools/llvm-exegesis/X86/SubprocessMemoryTest.cpp

  Log Message:
  -----------
  Revert "Reland "[llvm-exegesis] Add thread IDs to subprocess memory names (#84451)""

This reverts commit 8003f553a01a9a2a7eb09fe07e88f1ba9ee7d3a7.

This (and/or a related commit) was causing build failures on one of the
buildbots that needs more investigation. More information is available
at https://lab.llvm.org/buildbot/#/builders/178/builds/7015.


  Commit: 46682f445adfa06cb74239b17b588e36fcd4fdaa
      https://github.com/llvm/llvm-project/commit/46682f445adfa06cb74239b17b588e36fcd4fdaa
  Author: Danial Klimkin <dklimkin at google.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M clang/include/clang/InstallAPI/FrontendRecords.h

  Log Message:
  -----------
  Fix missing include past a38b7a432d3cbb093af9310eba5b4982dc0a0243 (#85041)


  Commit: 1c792d24e0a228ad49cc004a1c26bbd7cd87f030
      https://github.com/llvm/llvm-project/commit/1c792d24e0a228ad49cc004a1c26bbd7cd87f030
  Author: Marco Elver <elver at google.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M compiler-rt/lib/interception/interception.h
    M compiler-rt/lib/sanitizer_common/sanitizer_asm.h

  Log Message:
  -----------
  [compiler-rt] Fix interceptors with AArch64 BTI (#84061)

On AArch64 with BTI, we have to start functions with the appropriate
BTI hint to indicate that the function is a valid call target.

To support interceptors with AArch64 BTI, add "BTI c".


  Commit: 0be9592b0077dc63596ce46379cf7b3bd4a405c8
      https://github.com/llvm/llvm-project/commit/0be9592b0077dc63596ce46379cf7b3bd4a405c8
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp

  Log Message:
  -----------
  [clang] CTAD: Respect requires-clause of the original function template for the synthesized deduction guide (#84913)

We ignored the require-clause of the original template when building the deduction guide for type-alias CTAD, this resulted in accepting code which should be rejected (see the test case). This patch fixes it, part of #84492.


  Commit: e42e97a4ada141ca1320a49e7fe03245d6765bce
      https://github.com/llvm/llvm-project/commit/e42e97a4ada141ca1320a49e7fe03245d6765bce
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/SMEInstrFormats.td
    A llvm/test/CodeGen/AArch64/sme-write-vg.ll

  Log Message:
  -----------
  [AArch64][SME] Don't mark 'smstart za' as using/defining VG. (#84775)

VG is only used/defined when changing the streaming mode, using 'smstart
sm' or plainly 'smstart' (same for smstop).


  Commit: 06c06e15f45acd3ea24756978629f1d78724870e
      https://github.com/llvm/llvm-project/commit/06c06e15f45acd3ea24756978629f1d78724870e
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Scalar/Float2Int.h
    M llvm/lib/Transforms/Scalar/Float2Int.cpp
    M llvm/test/Transforms/Float2Int/basic.ll

  Log Message:
  -----------
  [Float2Int] Resolve FIXME: Pick the smallest legal type that fits (#79158)

Pick the type based on the smallest bit-width possible, using
DataLayout.


  Commit: 676c495195748e8ab2755b62153a718a53f7dae9
      https://github.com/llvm/llvm-project/commit/676c495195748e8ab2755b62153a718a53f7dae9
  Author: lcvon007 <141613945+lcvon007 at users.noreply.github.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

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

  Log Message:
  -----------
  [Attributor][FIX] Register right new created BB. (#84929)

CBBB will keep same after the first iteration so
registerManifestAddedBasicBlock would always register the same basic
block later.

Co-authored-by: laichunfeng <laichunfeng at tencent.com>


  Commit: 2d62ce4bebe484f7c6855b9ef479e9b398595df9
      https://github.com/llvm/llvm-project/commit/2d62ce4bebe484f7c6855b9ef479e9b398595df9
  Author: mikaelholmen <mikael.holmen at ericsson.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    A llvm/test/Analysis/Lint/crash_empty_iterator.ll

  Log Message:
  -----------
  [ValueTracking] Remove faulty dereference of "InsertBefore" (#85034)

In 2fe81edef6f
 [NFC][RemoveDIs] Insert instruction using iterators in Transforms/
we changed
       if (*req_idx != *i)
         return FindInsertedValue(I->getAggregateOperand(), idx_range,
-                                 InsertBefore);
+                                 *InsertBefore);
     }
but there is no guarantee that is InsertBefore is non-empty at that
point,
which we e.g can see in the added testcase.

Instead just pass on the optional InsertBefore in the recursive call to
FindInsertedValue, as we do at several other places already.


  Commit: e371ada409b225ea990b5ac0d5cafea26a6046e1
      https://github.com/llvm/llvm-project/commit/e371ada409b225ea990b5ac0d5cafea26a6046e1
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M compiler-rt/lib/fuzzer/FuzzerUtilLinux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_bsd.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_common.cpp

  Log Message:
  -----------
  [compiler-rt] reimplements GetMemoryProfile for netbsd. (#84841)

The actual solution relies on the premise /proc/self/smaps existence.
instead relying on native api like freebsd.
fixing fuzzer build too.


  Commit: 995d1d114e4e4ff708a03cdb0a975209c6197f9f
      https://github.com/llvm/llvm-project/commit/995d1d114e4e4ff708a03cdb0a975209c6197f9f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

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

  Log Message:
  -----------
  [SjLjEHPrepare] Use inverse_depth_first() instead of _ext variant (NFC). (#84920)

inverse_depth_first df_iterator_default_set as default set, so there's
no need to explicitly use inverse_depth_first_ext.

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


  Commit: 20b15e645cdbde07ae46aefe46ede5ff4d1e8ba3
      https://github.com/llvm/llvm-project/commit/20b15e645cdbde07ae46aefe46ede5ff4d1e8ba3
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/fold-global-offsets.ll
    M llvm/test/CodeGen/Hexagon/addrmode-immop.mir
    M llvm/test/CodeGen/NVPTX/b52037.ll
    M llvm/test/CodeGen/WinCFGuard/cfguard-mingw.ll
    M llvm/test/CodeGen/X86/tls-align.ll
    M llvm/test/DebugInfo/X86/tu-to-non-tu.ll
    M llvm/unittests/Transforms/Utils/CallPromotionUtilsTest.cpp

  Log Message:
  -----------
  [Tests] Drop inrange attribute from some tests (NFC)

These don't actually test anything related to inrange, so drop the
attribute.


  Commit: e4b27359fde552f65fd3434398a6b80104e1a20d
      https://github.com/llvm/llvm-project/commit/e4b27359fde552f65fd3434398a6b80104e1a20d
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/test/ThinLTO/X86/Inputs/devirt_single_hybrid_bar.ll
    M llvm/test/ThinLTO/X86/devirt_after_filtering_unreachable.ll
    M llvm/test/ThinLTO/X86/devirt_external_comdat_same_guid.ll
    M llvm/test/ThinLTO/X86/devirt_local_same_guid.ll
    M llvm/test/ThinLTO/X86/lower_type_test_phi.ll
    M llvm/test/ThinLTO/X86/nodevirt-nonpromoted-typeid.ll
    M llvm/test/ThinLTO/X86/type_test_noindircall.ll

  Log Message:
  -----------
  [ThinLTO] Drop inrange attribute from tests (NFC)

The inrange attribute is not relevant to the optimizations being
tested here. Additionally, all the inrange attributes in these
files don't actually carry any additional information, as the
"range" covers the whole object.


  Commit: 5a744776bb6192dae04360609457c9f49dce43a2
      https://github.com/llvm/llvm-project/commit/5a744776bb6192dae04360609457c9f49dce43a2
  Author: dyung <douglas.yung at sony.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M cross-project-tests/debuginfo-tests/llgdb-tests/forward-declare-class.cpp

  Log Message:
  -----------
  Mark test as XFAIL that started failing after 418f0066eb. (#85027)

Similar failures were previously seen and XFAILed in
https://reviews.llvm.org/D118468.

See the phabricator review for a description of the problem, and the
linked discourse thread for what the failing output looks like.

This change should fix the issue on two buildbots that are running older
versions of GDB:
- https://lab.llvm.org/buildbot/#/builders/217/builds/37559
- https://lab.llvm.org/buildbot/#/builders/247/builds/15173


  Commit: 560d7c51fdee4cc15766aa9b62c0cd8f0f18a353
      https://github.com/llvm/llvm-project/commit/560d7c51fdee4cc15766aa9b62c0cd8f0f18a353
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

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

  Log Message:
  -----------
  [DAG] Add SDPatternMatch m_And/m_Or/m_Xor matchers for logic ops


  Commit: 99be3875fb161a5786aaad5dab0b92fa052e47d1
      https://github.com/llvm/llvm-project/commit/99be3875fb161a5786aaad5dab0b92fa052e47d1
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/TargetParser/Host.cpp

  Log Message:
  -----------
  [ARM][AArch64] Add missing Arm CPU part-ids to enable -mcpu=native (#84899)

Update Host.cpp with some missing Arm CPU part identifiers,
to enable `-mcpu=native` on these processors. These are found in
the Technical Reference Manuals listed under "part num" or "part no"


  Commit: a7af53e99bb1fc92f45c14df2acf2da8f849af2f
      https://github.com/llvm/llvm-project/commit/a7af53e99bb1fc92f45c14df2acf2da8f849af2f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/xor.ll

  Log Message:
  -----------
  [DAG] visitSUB - convert some folds to use SDPatternMatch

General cleanup and allows us to handle several commutable matches with a single pattern


  Commit: 7cd61f888c479da51215071336b34f6918cad3d8
      https://github.com/llvm/llvm-project/commit/7cd61f888c479da51215071336b34f6918cad3d8
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

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

  Log Message:
  -----------
  [AMDGPU] Remove unneeded MnemonicAlias. NFC.

This is unneeded because MUBUF_Real_Atomic_gfx11_gfx12 on the line above
generates it automatically.


  Commit: ceb744eb2fa0895db1526110462745962fdf43c0
      https://github.com/llvm/llvm-project/commit/ceb744eb2fa0895db1526110462745962fdf43c0
  Author: Harald van Dijk <harald at gigawatt.nl>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.h
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/clamp.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize-elimination.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.f16.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.f16.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
    M llvm/test/CodeGen/AMDGPU/llvm.maxnum.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.minnum.f16.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll

  Log Message:
  -----------
  [AMDGPU] Fix canonicalization of truncated values. (#83054)

We were relying on roundings to implicitly canonicalize, which is
generally safe, except with roundings that may be optimized away.

Fixes #82937.


  Commit: c18e1215c4f387058961651148be730144d3537b
      https://github.com/llvm/llvm-project/commit/c18e1215c4f387058961651148be730144d3537b
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/test/Transforms/InstCombine/zext.ll

  Log Message:
  -----------
  [InstCombine] Simplify `zext nneg i1 X` to zero (#85043)

Alive2: https://alive2.llvm.org/ce/z/Wm6kCk


  Commit: 203757776826cfd164c537048ec90f5ada50cae2
      https://github.com/llvm/llvm-project/commit/203757776826cfd164c537048ec90f5ada50cae2
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-ar.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm/Object/Archive.h
    M llvm/lib/Object/Archive.cpp
    M llvm/lib/Object/ArchiveWriter.cpp
    A llvm/test/tools/llvm-ar/coff-symtab.test
    A llvm/test/tools/llvm-ar/no-symtab.yaml
    M llvm/tools/llvm-ar/llvm-ar.cpp

  Log Message:
  -----------
  [llvm-ar] Use COFF archive format for COFF targets. (#82898)

Detect COFF files by default and allow specifying it with --format
argument.

This is important for ARM64EC, which uses a separated symbol map for EC
symbols. Since K_COFF is mostly compatible with K_GNU, this shouldn't
really make a difference for other targets.

This originally landed as #82642, but was reverted due to test failures
in tests using no symbol table. Since COFF symbol can't express it,
fallback to GNU format in that case.


  Commit: 9e406ef4f4b089f88e74b2713f0fbee51b9537d6
      https://github.com/llvm/llvm-project/commit/9e406ef4f4b089f88e74b2713f0fbee51b9537d6
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/include/variant
    M libcxx/test/std/utilities/variant/variant.variant/variant.assign/T.pass.cpp
    M libcxx/test/std/utilities/variant/variant.variant/variant.assign/conv.pass.cpp
    M libcxx/test/std/utilities/variant/variant.variant/variant.ctor/T.pass.cpp
    M libcxx/test/std/utilities/variant/variant.variant/variant.ctor/conv.pass.cpp
    M libcxx/test/support/variant_test_helpers.h

  Log Message:
  -----------
  [libc++] Remove _LIBCPP_ENABLE_NARROWING_CONVERSIONS_IN_VARIANT (#83928)

This was slated for removal in LLVM 19.


  Commit: 5c3d001668ec6117045a9750a1f9d7e3995adfee
      https://github.com/llvm/llvm-project/commit/5c3d001668ec6117045a9750a1f9d7e3995adfee
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst

  Log Message:
  -----------
  AMDGPU: Don't use table for metadata docs, and fix section headers (#85046)


  Commit: 9fa866020395b215ece6140c2fedc7c31950272c
      https://github.com/llvm/llvm-project/commit/9fa866020395b215ece6140c2fedc7c31950272c
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mubuf.s

  Log Message:
  -----------
  [AMDGPU] Test new GFX12 opcode name buffer_atomic_min_num_f32

The old name buffer_atomic_min_f32 is still tested as part of the alias
tests.


  Commit: e48d5a838f69e0a8e0ae95a8aed1a8809f45465a
      https://github.com/llvm/llvm-project/commit/e48d5a838f69e0a8e0ae95a8aed1a8809f45465a
  Author: NagyDonat <donat.nagy at ericsson.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallDescription.h
    M clang/lib/StaticAnalyzer/Core/CheckerContext.cpp
    M clang/unittests/StaticAnalyzer/CMakeLists.txt
    A clang/unittests/StaticAnalyzer/IsCLibraryFunctionTest.cpp
    M llvm/utils/gn/secondary/clang/unittests/StaticAnalyzer/BUILD.gn

  Log Message:
  -----------
  Reapply "[analyzer] Accept C library functions from the `std` namespace"

This reapplies f32b04d4ea91ad1018c25a1d4178cc4392d34968i, after fixing
the use-after-free of ASTUnit in the unittest.
https://github.com/llvm/llvm-project/pull/84469#issuecomment-1992163439

Co-authored-by: Balazs Benics <benicsbalazs at gmail.com>


  Commit: 83d178843f4322159b6469f430a8a241b8672d6d
      https://github.com/llvm/llvm-project/commit/83d178843f4322159b6469f430a8a241b8672d6d
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    A llvm/test/Transforms/InstCombine/shift-cttz-ctlz.ll

  Log Message:
  -----------
  [InstCombine] Set zero_is_poison for ctlz/cttz if they are only used as shift amounts (#85035)

Alive2: https://alive2.llvm.org/ce/z/r-67t9

It would improve the codegen if the target doesn't provide a defined
value for ctlz/cttz with zero.


  Commit: 960b4aa6dab69125778f230c4c94f2d19c96cc87
      https://github.com/llvm/llvm-project/commit/960b4aa6dab69125778f230c4c94f2d19c96cc87
  Author: Jake Egan <Jake.egan at ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M clang/unittests/Interpreter/InterpreterExtensionsTest.cpp

  Log Message:
  -----------
  [AIX][ClangRepl] Disable new test on AIX

This new test fails on the AIX bot with error `LLVM ERROR: Incompatible object format!`. Disable for now to investigate.

Same as 86337beca2e6f939127cd3e088ec80c0cf4a0a64.


  Commit: 424e0a825fe4d9e3bf98b63ef86edbc4fa5e3799
      https://github.com/llvm/llvm-project/commit/424e0a825fe4d9e3bf98b63ef86edbc4fa5e3799
  Author: Jake Egan <Jake.egan at ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M clang/unittests/Interpreter/InterpreterExtensionsTest.cpp

  Log Message:
  -----------
  [ClangRepl] Add missing hashtag

Hashtag missing from commit 960b4aa6dab69125778f230c4c94f2d19c96cc87


  Commit: 2cf2bc472da87bb4bf971b1448e05b9e3bd983dc
      https://github.com/llvm/llvm-project/commit/2cf2bc472da87bb4bf971b1448e05b9e3bd983dc
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M clang/lib/AST/Decl.cpp
    M clang/test/CodeGen/const-init.c
    A clang/test/Sema/const-init.c

  Log Message:
  -----------
  [Clang] [CodeGen] Fix codegen bug in constant initialisation in C23 mode (#84981)

Consider the following code:
```c
bool const inf =  (1.0/0.0);
``` 

When trying to emit the initialiser of this variable in C23, we end up
hitting a code path in codegen in `VarDecl::evaluateValueImpl()` where
we check for `IsConstantInitialization && (Ctx.getLangOpts().CPlusPlus
|| Ctx.getLangOpts().C23)`, and if that is the case and we emitted any
notes, constant evaluation fails, and as a result, codegen issues this
error:
```
<source>:1:12: error: cannot compile this static initializer yet
    1 | bool const inf =  (1.0/0.0);
      |        
```

As a fix, only fail in C23 mode if we’re initialising a `constexpr`
variable.

This fixes #84784.


  Commit: 390f28702fad7b704d026b5c3e9a6030cecab01b
      https://github.com/llvm/llvm-project/commit/390f28702fad7b704d026b5c3e9a6030cecab01b
  Author: mahesh-attarde <145317060+mahesh-attarde at users.noreply.github.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/AccelTable.h
    M llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp
    M llvm/utils/TableGen/DecoderEmitter.cpp

  Log Message:
  -----------
  [CodeGen][Tablegen] Fix uninitialized var and shift overflow. (#84896)

Fix uninitialized var and shift overflow.


  Commit: eb21ee49cff081911d99d29ba887c1715fc2b8fc
      https://github.com/llvm/llvm-project/commit/eb21ee49cff081911d99d29ba887c1715fc2b8fc
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M lldb/test/API/python_api/run_locker/TestRunLocker.py

  Log Message:
  -----------
  [lldb][test] Disable other runlocker test on AArch64 Linux

Flaky on the bot: https://lab.llvm.org/buildbot/#/builders/96/builds/54435


  Commit: e77324decf74e8203fdee53e53c1866319ebf47c
      https://github.com/llvm/llvm-project/commit/e77324decf74e8203fdee53e53c1866319ebf47c
  Author: Zepp <luzepu678 at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

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

  Log Message:
  -----------
  [Clang] [Docs] Add reference to documentation of `SysVABIAttr` (#85022)

We for some reason already had documentation for this attribute, but just weren’t linking to it.


  Commit: 37b5eb0a0a75bdf69b96b902417906da31c88dc3
      https://github.com/llvm/llvm-project/commit/37b5eb0a0a75bdf69b96b902417906da31c88dc3
  Author: Zaara Syeda <95926691+syzaara at users.noreply.github.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M clang/docs/UsersManual.rst
    M clang/include/clang/Basic/CodeGenOptions.h
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Driver/Options.td
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/Targets/PPC.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    A clang/test/CodeGen/PowerPC/toc-data-attribute.c
    A clang/test/CodeGen/PowerPC/toc-data-attribute.cpp
    A clang/test/CodeGen/PowerPC/toc-data-diagnostics.c
    A clang/test/CodeGen/PowerPC/toc-data-structs-arrays.cpp
    A clang/test/Driver/toc-conf.c
    A clang/test/Driver/tocdata-cc1.c
    M llvm/include/llvm/ADT/STLExtras.h
    M llvm/lib/MC/MCSectionXCOFF.cpp
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
    M llvm/lib/Target/PowerPC/PPCSubtarget.cpp
    M llvm/lib/Target/PowerPC/PPCSubtarget.h
    A llvm/test/CodeGen/PowerPC/toc-data-large-array.ll
    A llvm/test/CodeGen/PowerPC/toc-data-large-array2.ll
    A llvm/test/CodeGen/PowerPC/toc-data-struct-array.ll

  Log Message:
  -----------
  [AIX][TOC] Add -mtocdata/-mno-tocdata options on AIX (#67999)

This patch enables support that the XL compiler had for AIX under
-qdatalocal/-qdataimported.


  Commit: 1402c016ffe860446552a959e9fc4696c39392f9
      https://github.com/llvm/llvm-project/commit/1402c016ffe860446552a959e9fc4696c39392f9
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp
    M llvm/test/Transforms/LoopVectorize/dbg-outer-loop-vect.ll

  Log Message:
  -----------
  [VPlan] Use VPBuilder to create BranchOnCond in VPHCFGBuilder.

This simplifies the code to create the recipe slightly as well as
properly retaining the debug location of the input IR.


  Commit: 4e49ee55c587637e17dec7a72b9ce86d85f8f241
      https://github.com/llvm/llvm-project/commit/4e49ee55c587637e17dec7a72b9ce86d85f8f241
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M lldb/test/API/functionalities/fork/concurrent_vfork/TestConcurrentVFork.py

  Log Message:
  -----------
  [lldb][Test] Disable ConcurrentVFork tests on Arm/AArch64 Linux

They are either flaky, or not cleaning up after themselves.
See https://github.com/llvm/llvm-project/issues/85084.


  Commit: 63180ba444dc09fb9e85fdb98af56b2fc86f6027
      https://github.com/llvm/llvm-project/commit/63180ba444dc09fb9e85fdb98af56b2fc86f6027
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

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

  Log Message:
  -----------
  [DAG] Use SelectionDAG::getNOT helper where possible. NFC.


  Commit: f18d78b477c76bc09dc580cdaedd55e121f5ebf5
      https://github.com/llvm/llvm-project/commit/f18d78b477c76bc09dc580cdaedd55e121f5ebf5
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

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

  Log Message:
  -----------
  [DAG] isKnownToBeAPowerOfTwo - use sd_match to match both commutations of `x & -x` pattern`. NFC.

Allows us to remove some tricky commutation matching


  Commit: f46f5a01f4d5a7dcaf4a8fde5fc44eafdd9dbf27
      https://github.com/llvm/llvm-project/commit/f46f5a01f4d5a7dcaf4a8fde5fc44eafdd9dbf27
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
    M flang/lib/Lower/OpenMP/ReductionProcessor.h
    A flang/test/Lower/OpenMP/FIR/parallel-reduction-add-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-add-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-iand-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-ieor-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-ior-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-eqv-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-neqv-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-max-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-min-byref.f90
    A flang/test/Lower/OpenMP/default-clause-byref.f90
    A flang/test/Lower/OpenMP/delayed-privatization-reduction-byref.f90
    A flang/test/Lower/OpenMP/parallel-reduction-add-byref.f90
    A flang/test/Lower/OpenMP/parallel-reduction-byref.f90
    A flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-add-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-add-hlfir-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-iand-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-ieor-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-ior-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-logical-and-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-logical-or-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-max-2-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-max-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-max-hlfir-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-min-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-min2.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-mul-byref.f90
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-reduction-byref.mlir

  Log Message:
  -----------
  [flang][OpenMP][OMPIRBuilder][mlir] Optionally pass reduction vars by ref (#84304)

Previously reduction variables were always passed by value into and out
of the initialization and combiner regions of the OpenMP reduction
declare operation.

This worked well for reductions of primitive types (and might perform
better than passing by reference). But passing by reference will be
useful for array and derived type reductions (e.g. to move allocation
inside of the init region).

Passing reductions by reference requires different LLVM-IR generation
when lowering from MLIR because some of the loads/stores/allocations
will now be moved inside of the init and combiner regions. This
alternate code generation is requested using a new attribute to
omp.wsloop and omp.parallel.

Existing lowerings from mlir are unaffected (these will continue to use
the by-value argument passing.

Flang will continue to pass by-value argument passing for trivial types
unless a (hidden) command line argument is supplied. Non-trivial types
will always use the by-ref lowering.

Array reductions are not ready yet (but are coming very soon). In the
meantime, this is tested by forcing existing reductions to use by-ref.

Commit series for by-ref OpenMP reductions 3/3

---------

Co-authored-by: Mats Petersson <mats.petersson at arm.com>


  Commit: 3c227a31dd1046db02323868b9690a6152cfb3b8
      https://github.com/llvm/llvm-project/commit/3c227a31dd1046db02323868b9690a6152cfb3b8
  Author: Jon Roelofs <jonathan_roelofs at apple.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [cmake] Silence a duplicate libraries warning from Apple's linker (#85012)

ld: warning: ignoring duplicate libraries:

This triggers quite frequently in llvm's build because CMake's library
depends mechanism doesn't de-duplicate libraries on the link line.
Duplication is necessary for ELF platforms, but means something subtly
different on Darwin platforms, hence the warning. Since we don't have
much control over that from CMake, just disable the warning wholesale
whenever the linker is detected to support it.


  Commit: 628a79dad30befed82ee1c115b00fa9aca5305ed
      https://github.com/llvm/llvm-project/commit/628a79dad30befed82ee1c115b00fa9aca5305ed
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

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

  Log Message:
  -----------
  [InstCombine] Don't generate crash dialog for fixpoint verification failure (NFC)

Fixpoint verification failures outside our tests are usually not
indicative of a bug -- don't be pushy about having people report them.


  Commit: 59ff907fc14aa2d02e57b4af4140949d4f8caca1
      https://github.com/llvm/llvm-project/commit/59ff907fc14aa2d02e57b4af4140949d4f8caca1
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/same-scalar-in-same-phi-extract.ll

  Log Message:
  -----------
  [SLP]Fix PR85082: PHI node has multiple entries.

Need to record casted extractelement for the externally used scalar, not
original extract instruction.


  Commit: 096ee4e16fd62cd578d20ec4e8ad4756f4e369ee
      https://github.com/llvm/llvm-project/commit/096ee4e16fd62cd578d20ec4e8ad4756f4e369ee
  Author: agozillon <Andrew.Gozillon at amd.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    A flang/test/Lower/OpenMP/use-device-ptr-to-use-device-addr.f90
    M flang/test/Semantics/OpenMP/use_device_ptr1.f90

  Log Message:
  -----------
  [Flang][OpenMP] Implement "promotion" of use_device_ptr non-cptr arguments to use_device_addr (#82834)

This effectively implements some now deprecated OpenMP functionality
that some applications (most notably at the moment GenASiS)
unfortunately depend on (deprecated in specification version 5.2):

"If a list item in a use_device_ptr clause is not of type C_PTR, the
behavior is as if the list item appeared in a use_device_addr clause.
Support for such list items in a use_device_ptr clause is deprecated."

This PR downgrades the hard-error to a deprecated warning and "promotes"
the above cases by simply moving the offending operands from the
use_device_ptr value list to the back of the use_device_addr list (and
moves the related symbols, locs and types that form the BlockArgs
correspondingly) and then the generation of the target data construct
proceeds as normal.


  Commit: 732f5368cdc297e83f8720fb13a8c848ff116ccf
      https://github.com/llvm/llvm-project/commit/732f5368cdc297e83f8720fb13a8c848ff116ccf
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Transforms/Inliner.h
    M mlir/include/mlir/Transforms/Passes.td
    M mlir/lib/Transforms/InlinerPass.cpp
    M mlir/lib/Transforms/Utils/Inliner.cpp
    M mlir/test/Transforms/inlining-dump-default-pipeline.mlir
    A mlir/test/Transforms/inlining-threshold.mlir

  Log Message:
  -----------
  [RFC][mlir] Add profitability callback to the Inliner. (#84258)

Discussion at https://discourse.llvm.org/t/inliner-cost-model/2992

This change adds a callback that reports whether inlining
of the particular call site (communicated via ResolvedCall argument)
is profitable or not. The default MLIR inliner pass behavior
is unchanged, i.e. the callback always returns true.
This callback may be used to customize the inliner behavior
based on the target specifics (like target instructions costs),
profitability of the inlining for further optimizations
(e.g. if inlining may enable loop optimizations or scalar optimizations
due to object shape propagation), optimization levels (e.g. -Os inlining
may be quite different from -Ofast inlining), etc.

One of the questions is whether the ResolvedCall entity represents
enough of the context for the custom inlining models to come up with
the profitability decision. I think we can start with this and
extend it as necessary.

---------

Co-authored-by: Mehdi Amini <joker.eph at gmail.com>


  Commit: e0738cc65865c31975b5bdbbf89c5a4dbbe06dc5
      https://github.com/llvm/llvm-project/commit/e0738cc65865c31975b5bdbbf89c5a4dbbe06dc5
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp
    M flang/runtime/Float128Math/CMakeLists.txt
    A flang/runtime/Float128Math/random.cpp
    A flang/runtime/random-templates.h
    M flang/runtime/random.cpp
    A flang/test/Lower/Intrinsics/random_number_real16.f90

  Log Message:
  -----------
  [flang] Moved REAL(16) RANDOM_NUMBER to Float128Math library. (#85002)


  Commit: 286c3b500dc36b2451683bde5d681bf6efea3e63
      https://github.com/llvm/llvm-project/commit/286c3b500dc36b2451683bde5d681bf6efea3e63
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/test/Lower/Intrinsics/modulo.f90

  Log Message:
  -----------
  [flang] Enable REAL(16) MODULO lowering. (#85005)

The lowering currently relies on the trivial operations,
so we should just lower it for REAL(16) the same way we do this
for other trivial operations.


  Commit: d24ff9aec4f2741804268a66d711d6d31cd06138
      https://github.com/llvm/llvm-project/commit/d24ff9aec4f2741804268a66d711d6d31cd06138
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/runtime/Float128Math/CMakeLists.txt
    A flang/runtime/Float128Math/fma.cpp
    M flang/runtime/Float128Math/math-entries.h
    A flang/test/Lower/Intrinsics/fma_real16.f90

  Log Message:
  -----------
  [flang][runtime] Added lowering and runtime for REAL(16) IEEE_FMA. (#85017)


  Commit: 9a3000cf6700a711f3d81d071e0b6933cef46c36
      https://github.com/llvm/llvm-project/commit/9a3000cf6700a711f3d81d071e0b6933cef46c36
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

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

  Log Message:
  -----------
  [libc] roll out rest of stdbit.h entrypoints to gpu,linux,baremetal (#84938)


  Commit: bb82092de71466728630050691fa9c20796b3cbc
      https://github.com/llvm/llvm-project/commit/bb82092de71466728630050691fa9c20796b3cbc
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Tensor/IR/TensorOps.td
    M mlir/test/Conversion/TensorToLinalg/tensor-ops-to-linalg.mlir
    M mlir/test/Dialect/Linalg/drop-unit-extent-dims.mlir
    M mlir/test/Dialect/Linalg/generalize-pad-tensor.mlir

  Log Message:
  -----------
  [mlir][tensor] Make getMixedPadImpl return static values when possible. (#85016)

If low and high are constants (i.e., not attributes), users still prefer
attributes. Otherwise, there could be failures in type inference. A
failure is introduced by
https://github.com/llvm/llvm-project/commit/60e562d11aeca8020de8d50ded7f0ba9e10e8843,
see the drop_known_unit_constant_low_high test for more details.


  Commit: c3eccf03b365a705bc8dc043217478a82bc37a4d
      https://github.com/llvm/llvm-project/commit/c3eccf03b365a705bc8dc043217478a82bc37a4d
  Author: Adrian Prantl <adrian-prantl at users.noreply.github.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M lldb/source/Expression/IRExecutionUnit.cpp

  Log Message:
  -----------
  Avoid a potential exit(1) in LLVMContext::diagnose()  (#84992)

by handling *all* errors in IRExecDiagnosticHandler. The function that
call this handles all unhandled errors with an `exit(1)`.

rdar://124459751

I don't really have a testcase for this, since the crash report I got
for this involved the Swift language plugin.


  Commit: cc761a7c356178009d186e70740ccb53bf0c6deb
      https://github.com/llvm/llvm-project/commit/cc761a7c356178009d186e70740ccb53bf0c6deb
  Author: Zaara Syeda <syzaara at ca.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/GISel/PPCInstructionSelector.cpp
    M llvm/lib/Target/PowerPC/P10InstrResources.td
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/PowerPC/PPCBack2BackFusion.def
    M llvm/lib/Target/PowerPC/PPCFastISel.cpp
    M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCMacroFusion.def
    M llvm/lib/Target/PowerPC/PPCTOCRegDeps.cpp
    M llvm/test/CodeGen/PowerPC/remove-copy-crunsetcrbit.mir

  Log Message:
  -----------
  [PowerPC][NFC] Rename ADDItocL to match the 64-bit naming convention (#85099)

In preparation of adding a similar instruction for large code model on
AIX for 32-bit, rename the exisitng ADDItocL 64-instruction to ADDItocL8
to match the naming convention of other instructions with 32-bit and
64-bit variants.


  Commit: f15a790fd383665ec4defa0711e975476fd8b18b
      https://github.com/llvm/llvm-project/commit/f15a790fd383665ec4defa0711e975476fd8b18b
  Author: David Blaikie <dblaikie at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/Interp.h

  Log Message:
  -----------
  Remove use of reference lifetime extension introduced in cdde0d9

Rather than dealing with which is more readable, the named variable
doesn't seem to add value here - so omit it.


  Commit: 57b991ab39348d91d8552787958ba7db1e7ceb8a
      https://github.com/llvm/llvm-project/commit/57b991ab39348d91d8552787958ba7db1e7ceb8a
  Author: Usman Nadeem <mnadeem at quicinc.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/arm64-convert-v4f64.ll
    M llvm/test/CodeGen/AArch64/extbinopload.ll
    M llvm/test/CodeGen/AArch64/fp-conversion-to-tbl.ll
    M llvm/test/CodeGen/AArch64/fptoi.ll
    M llvm/test/CodeGen/AArch64/neon-truncstore.ll
    M llvm/test/CodeGen/AArch64/sadd_sat_vec.ll
    M llvm/test/CodeGen/AArch64/shuffle-tbl34.ll
    M llvm/test/CodeGen/AArch64/ssub_sat_vec.ll
    M llvm/test/CodeGen/AArch64/tbl-loops.ll
    M llvm/test/CodeGen/AArch64/trunc-to-tbl.ll
    M llvm/test/CodeGen/AArch64/uadd_sat_vec.ll
    M llvm/test/CodeGen/AArch64/usub_sat_vec.ll
    M llvm/test/CodeGen/AArch64/vcvt-oversize.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-truncate-store.ll
    M llvm/test/CodeGen/AArch64/vec3-loads-ext-trunc-stores.ll

  Log Message:
  -----------
  [AArch64] Improve lowering of truncating uzp1 (#82457)

There were two existing patterns:
    `concat_vectors(trunc(x), trunc(y)) -> uzp1(x, y)`
`concat_vectors(assertzext(trunc(x)), assertzext(trunc(y))) -> uzp1(x,
y)`

Move them into a class and add the following `assertsext` pattern to it:
`concat_vectors(assertsext(trunc(x)), assertsext(trunc(y))) -> uzp1(x,
y)`

Add the following transform for v8i8 and v4i16 result types to help with
pattern matching:
  `truncating uzp1(x, y) -> trunc(concat(x, y))`
And a pattern to go with it:
  `trunc(concat_vectors(x, y)) -> uzp1 (x, y)`

Add another isel pattern for v8i8 and v4i16 result vector types, similar
to
the existing concat pattern, but with a trunc node in the begining:
`trunc(concat_vectors(assertext_trunc(x), assertext_trunc(y))) ->
xtn(uzp1(x, y))`


  Commit: f1015d1701d86c4e640cdbfd1928a958aea921d6
      https://github.com/llvm/llvm-project/commit/f1015d1701d86c4e640cdbfd1928a958aea921d6
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [VPlan] Use VPBuilder to create ActiveLaneMask (NFC).


  Commit: 8a8ef1cacfcd7745d2b6ad00431e6fa9ab9a2fb4
      https://github.com/llvm/llvm-project/commit/8a8ef1cacfcd7745d2b6ad00431e6fa9ab9a2fb4
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendAction.cpp
    A flang/test/Driver/cuda-option.f90

  Log Message:
  -----------
  [flang][cuda] Enable cuda with -x cuda option (#84944)

Flang driver was already able to enable the CUDA language feature base
on the file extension but there was no command line option. This PR adds
one.


  Commit: 5facb406e6417987ac5dfabd8f04510d7bc3fbc6
      https://github.com/llvm/llvm-project/commit/5facb406e6417987ac5dfabd8f04510d7bc3fbc6
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M libc/docs/gpu/support.rst

  Log Message:
  -----------
  [libc][docs] document gpu support for stdbit.h (#85103)

Via:
https://github.com/llvm/llvm-project/pull/84938#issuecomment-1992120095

---------

Co-authored-by: Joseph Huber <huberjn at outlook.com>


  Commit: bb893fa23f6c851d957d82e14bc1aa6fbbffcaaa
      https://github.com/llvm/llvm-project/commit/bb893fa23f6c851d957d82e14bc1aa6fbbffcaaa
  Author: Christian Sigg <chsigg at users.noreply.github.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M mlir/test/Transforms/inlining-threshold.mlir

  Log Message:
  -----------
  [mlir] Fix inlining-threshold.mlir test for NDEBUG builds.


  Commit: ccd16085f70105d457f052543d731dd51089945b
      https://github.com/llvm/llvm-project/commit/ccd16085f70105d457f052543d731dd51089945b
  Author: Bhuminjay Soni <Soni5Happy at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/test/Sema/attr-cleanup.c

  Log Message:
  -----------
  Diagnose misuse of the cleanup attribute (#80040)

This pull request fixes #79443 when the cleanup attribute is intended to
be applied to a variable declaration, passing its address to a specified
function. The problem arises when standard functions like free,
closedir, fclose, etc., are used incorrectly with this attribute,
leading to incorrect behavior.

Fixes #79443


  Commit: 69afb9d7875d79fdacaaa2f22b5ee3a06faf5373
      https://github.com/llvm/llvm-project/commit/69afb9d7875d79fdacaaa2f22b5ee3a06faf5373
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/CodeGen/complex-math-mixed.c
    M clang/test/CodeGen/volatile.cpp
    A clang/test/Sema/complex-arithmetic.c

  Log Message:
  -----------
  [Clang] [Sema] Fix bug in `_Complex float`+`int` arithmetic (#83063)

C23 6.3.1.8 ‘Usual arithmetic conversions’ p1 states (emphasis mine): 
> Otherwise, if the corresponding real type of either operand is
`float`, the other operand is converted, *without change of type
domain*, to a type whose corresponding real type is `float`.

‘type domain’ here refers to `_Complex` vs real (i.e. non-`_Complex`);
there is another clause that states the same for `double`.

Consider the following code:
```c++
_Complex float f;
int x;
f / x;
```

After talking this over with @AaronBallman, we came to the conclusion
that `x` should be converted to `float` and *not* `_Complex float` (that
is, we should perform a division of `_Complex float / float`, and *not*
`_Complex float / _Complex float`; the same also applies to `-+*`). This
was already being done correctly for cases where `x` was already a
`float`; it’s just mixed `_Complex float`+`int` operations that
currently suffer from this problem.

This pr removes the extra `FloatingRealToComplex` conversion that we
were erroneously inserting and adds some tests to make sure we’re
actually doing `_Complex float / float` and not `_Complex float /
_Complex float` (and analogously for `double` and `-+*`).

The only exception here is `float / _Complex float`, which calls a
library function (`__divsc3`) that takes 4 `float`s, so we end up having
to convert the `float` to a `_Complex float` after all (and analogously
for `double`); I don’t believe there is a way around this.

Lastly, we were also missing tests for `_Complex` arithmetic at compile
time, so this adds some tests for that as well.


  Commit: 360da83858655ad8297f3c0467c8c97ebedab5ed
      https://github.com/llvm/llvm-project/commit/360da83858655ad8297f3c0467c8c97ebedab5ed
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
    M llvm/include/llvm/IR/BasicBlock.h
    M llvm/include/llvm/IR/DebugProgramInstruction.h
    M llvm/include/llvm/IR/Instruction.h
    M llvm/include/llvm/IR/PassManager.h
    M llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/SelectOptimize.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/LLVMContextImpl.cpp
    M llvm/lib/IR/LLVMContextImpl.h
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/ValueMapper.cpp
    M llvm/unittests/IR/BasicBlockDbgInfoTest.cpp
    M llvm/unittests/IR/DebugInfoTest.cpp
    M llvm/unittests/Transforms/Utils/DebugifyTest.cpp

  Log Message:
  -----------
  [RemoveDI][NFC] Rename DPValue->DbgRecord in comments and varnames (#84939)

This patch continues the ongoing rename work, replacing DPValue with
DbgRecord in comments and the names of variables, both members and
fn-local. This is the most labour-intensive part of the rename, as it is
where the most decisions have to be made about whether a given comment
or variable is referring to DPValues (equivalent to debug variable
intrinsics) or DbgRecords (a catch-all for all debug intrinsics); these
decisions are not individually difficult, but comprise a fairly large
amount of text to review.

This patch still largely performs basic string substitutions followed by
clang-format; there are almost* no places where, for example, a comment
has been expanded or modified to reflect the semantic difference between
DPValues and DbgRecords. I don't believe such a change is generally
necessary in LLVM, but it may be useful in the docs, and so I'll be
submitting docs changes as a separate patch.

*In a few places, `dbg.values` was replaced with `debug intrinsics`.


  Commit: e703c735df1257022bcb6ca9de857e20e671392f
      https://github.com/llvm/llvm-project/commit/e703c735df1257022bcb6ca9de857e20e671392f
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

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

  Log Message:
  -----------
  AMDGPU: Remove incorrect uses of SubtaretPredicate around DS_Reals (#85001)

SubtargetPredicate is copied from DS_Pseudo to DS_Real. We should not
use another SubtargetPredicate assignment around DS_Real, because doing
so will override the predicate from DS_Pseudo.

For example, for DS_ADD_RTN_F64, SubtargetPredicate was set to
HasLdsAtomicAddF64 in Pseudo. And it will be overridden to isGFX90APlus
if we assign isGFX90APlus to SubtargetPredicate in Real definition.


  Commit: 3b2694853e361d2221ec8071f815d9f5eef35b9b
      https://github.com/llvm/llvm-project/commit/3b2694853e361d2221ec8071f815d9f5eef35b9b
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M mlir/test/Dialect/Linalg/transform-op-matmul-to-outerproduct.mlir

  Log Message:
  -----------
  [mlir][nfc] Update Linalg matmul -> Vector OP test (#81416)

Updates "transform-op-matmul-to-outerproduct.mlir". Summary:
  * refines TD sequence so that it's easier to reason about the
     compilation pipeline (e.g.
     `transform.structured.vectorize_children_and_apply_patterns`
     is replaced with`transform.structured.vectorize `),
  * new input dims to be able to distinguish parallel from reduction
    dims,
  * updates LIT variable names (makes the output easier to follow),
  * removes "noise" from the expected LIT output (e.g. types).

These Linalg -> Vector tests using Transform Dialect are great reference
points for constructing lowering pipelines. This simplification +
clean-up will hopefully make it easier to follow.


  Commit: 79cd2c0bb9acb4685094d6b3bf21c758aa51d3df
      https://github.com/llvm/llvm-project/commit/79cd2c0bb9acb4685094d6b3bf21c758aa51d3df
  Author: Nadeem, Usman <mnadeem at quicinc.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/bitcast.ll
    M llvm/test/CodeGen/AArch64/shufflevector.ll

  Log Message:
  -----------
  [AArch64] Fix tests after PR82457

Change-Id: I44a7e4a10af750b3339d6564c6ce6c2e5c17778e


  Commit: 122d368b2b120ff233e66658862b90f185f65c6e
      https://github.com/llvm/llvm-project/commit/122d368b2b120ff233e66658862b90f185f65c6e
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp
    M llvm/lib/ObjCopy/ELF/ELFObject.h
    M llvm/test/tools/llvm-objcopy/ELF/Inputs/compress-debug-sections.yaml
    M llvm/test/tools/llvm-objcopy/ELF/compress-debug-sections-zlib.test
    M llvm/test/tools/llvm-objcopy/ELF/compress-debug-sections-zstd.test
    A llvm/test/tools/llvm-objcopy/ELF/decompress-sections.test

  Log Message:
  -----------
  [llvm-objcopy] --[de]compress-debug-sections: don't compress SHF_ALLOC sections, only decompress .debug sections

Simplify --[de]compress-debug-sections to make it easier to add custom section [de]compression.
Change the following two behaviors to match GNU objcopy.

* --compress-debug-sections compresses SHF_ALLOC sections while GNU
  doesn't.
* --decompress-debug-sections decompresses non-debug sections while GNU
  doesn't.

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


  Commit: 35f5caea5115d7dabf0c1a92c8627069d6dbd556
      https://github.com/llvm/llvm-project/commit/35f5caea5115d7dabf0c1a92c8627069d6dbd556
  Author: Chen Cheng <110446443+ChengChen002 at users.noreply.github.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.cpp

  Log Message:
  -----------
  [NFC] Corrected data type (#84880)

On windows, "&Method.first" is of type "unsigned long long *", and a
type conversion error occurs.


  Commit: 13ccaf9b9d4400bb128b35ff4ac733e4afc3ad1c
      https://github.com/llvm/llvm-project/commit/13ccaf9b9d4400bb128b35ff4ac733e4afc3ad1c
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallDescription.h
    M clang/lib/StaticAnalyzer/Core/CheckerContext.cpp
    M clang/unittests/StaticAnalyzer/CMakeLists.txt
    R clang/unittests/StaticAnalyzer/IsCLibraryFunctionTest.cpp
    M llvm/utils/gn/secondary/clang/unittests/StaticAnalyzer/BUILD.gn

  Log Message:
  -----------
  Revert "Reapply "[analyzer] Accept C library functions from the `std` namespace""

This reverts commit e48d5a838f69e0a8e0ae95a8aed1a8809f45465a.

Fails to build on x86-64 w/gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04)
with the following message:

../llvm-project/clang/unittests/StaticAnalyzer/IsCLibraryFunctionTest.cpp:41:28: error: declaration of ‘std::unique_ptr<clang::ASTUnit> IsCLibraryFunctionTest::ASTUnit’ changes meaning of ‘ASTUnit’ [-fpermissive]
   41 |   std::unique_ptr<ASTUnit> ASTUnit;
      |                            ^~~~~~~
In file included from ../llvm-project/clang/unittests/StaticAnalyzer/IsCLibraryFunctionTest.cpp:4:
../llvm-project/clang/include/clang/Frontend/ASTUnit.h:89:7: note: ‘ASTUnit’ declared here as ‘class clang::ASTUnit’
   89 | class ASTUnit {
      |       ^~~~~~~


  Commit: cd20600767409b183a6d213d56f85f8041a21487
      https://github.com/llvm/llvm-project/commit/cd20600767409b183a6d213d56f85f8041a21487
  Author: Aleksandr Popov <42888396+aleks-tmb at users.noreply.github.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopConstrainer.cpp
    M llvm/test/Transforms/IRCE/compound-loop-bound.ll

  Log Message:
  -----------
  [LoopConstrainer] Apply loop gurads to check that loop bounds are safe (#71531)

Loop guards that apply to loop SCEV bounds allow IRCE for cases with
compound loop bounds such as:

if (K > 0 && M > 0)
  for (i = 0; i < min(K, M); i++) {...}

if (K > 0 && M > 0)
  for (i = min(K, M); i >= 0; i--) {...}

Otherwise SCEV couldn't prove that loops have safe bounds in these
cases.

Co-authored-by: Aleksander Popov <apopov at azul.com>


  Commit: 175b533720956017bb18d1280362f6890ee15b05
      https://github.com/llvm/llvm-project/commit/175b533720956017bb18d1280362f6890ee15b05
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

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

  Log Message:
  -----------
  workflows: Add workaround for lld failures on MacOS (#85021)

See #81967


  Commit: bd77a26e9a15981114e9802d83047f42631125a2
      https://github.com/llvm/llvm-project/commit/bd77a26e9a15981114e9802d83047f42631125a2
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ExprConstant.cpp
    A clang/test/SemaCXX/constexpr-explicit-object-lambda.cpp

  Log Message:
  -----------
  [Clang][Sema] Properly get captured 'this' pointer in lambdas with an explicit object parameter in constant evaluator (#81102)

There were some bugs wrt explicit object parameters in lambdas in the
constant evaluator:
- The code evaluating a `CXXThisExpr` wasn’t checking for explicit
object parameters at all and thus assumed that there was no `this` in
the current context because the lambda didn’t have one, even though we
were in a member function and had captured its `this`.
- The code retrieving captures as lvalues *did* account for explicit
object parameters, but it did not handle the case of the explicit object
parameter being passed by value rather than by reference.

This fixes #80997.

---------

Co-authored-by: cor3ntin <corentinjabot at gmail.com>
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>


  Commit: ab9564c315c5111f73788aec9715b488db68d895
      https://github.com/llvm/llvm-project/commit/ab9564c315c5111f73788aec9715b488db68d895
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCInstBuilder.h
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/test/tools/llvm-mca/RISCV/SiFive7/vector-integer-arithmetic.s

  Log Message:
  -----------
  [RISCV] Add SMLoc to expanded vector pseudoinstructions in AsmParser. (#84875)

This is needed for llvm-mca to correctly apply vsetvli instruments to
these instructions.

Fixes #84799.


  Commit: 0bb30f9896d9cdd92514e0a2bfdc03811831f21c
      https://github.com/llvm/llvm-project/commit/0bb30f9896d9cdd92514e0a2bfdc03811831f21c
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

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

  Log Message:
  -----------
  [NFC] [hwasan] factor out some opt handling (#84414)


  Commit: c41966161fffea6ef280fbd341ef1751f70379dd
      https://github.com/llvm/llvm-project/commit/c41966161fffea6ef280fbd341ef1751f70379dd
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/test/tools/llvm-ar/coff-symtab.test

  Log Message:
  -----------
  [llvm-ar] Be explicit about archive format in coff-symtab.test tests. (#85112)

Fixes test failures on AIX after #82898.


  Commit: 3e6d56617f43f86d65dba04c94277dc4a40c2a86
      https://github.com/llvm/llvm-project/commit/3e6d56617f43f86d65dba04c94277dc4a40c2a86
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/AArch64/gather-with-minbith-user.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with reused buildvector node, being resized after
minbitwidth analysis.


  Commit: f50d3582b4844b86ad86372028e44b52c560ec7d
      https://github.com/llvm/llvm-project/commit/f50d3582b4844b86ad86372028e44b52c560ec7d
  Author: Ian Anderson <iana at apple.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M clang/lib/Basic/Module.cpp
    M clang/lib/Headers/__stddef_null.h
    M clang/lib/Headers/__stddef_nullptr_t.h
    M clang/lib/Headers/__stddef_offsetof.h
    M clang/lib/Headers/__stddef_ptrdiff_t.h
    M clang/lib/Headers/__stddef_rsize_t.h
    M clang/lib/Headers/__stddef_size_t.h
    M clang/lib/Headers/__stddef_unreachable.h
    M clang/lib/Headers/__stddef_wchar_t.h
    M clang/lib/Headers/module.modulemap
    M clang/lib/Lex/ModuleMap.cpp
    M clang/test/Modules/no-undeclared-includes-builtins.cpp
    M clang/test/Modules/stddef.c

  Log Message:
  -----------
  [clang][modules] giving the __stddef_ headers their own modules can cause redeclaration errors with -fbuiltin-headers-in-system-modules (#84127)

On Apple platforms, some of the stddef.h types are also declared in
system headers. In particular NULL has a conflicting declaration in
<sys/_types/_null.h>. When that's in a different module from
<__stddef_null.h>, redeclaration errors can occur.

Make the \_\_stddef_ headers be non-modular in
-fbuiltin-headers-in-system-modules and restore them back to not
respecting their header guards. Still define the header guards though.
__stddef_max_align_t.h was in _Builtin_stddef_max_align_t prior to the
addition of _Builtin_stddef, and it needs to stay in a module because
struct's can't be type merged. __stddef_wint_t.h didn't used to have a
module, but leave it in it current module since it doesn't really belong
to stddef.h.


  Commit: 55b90b5140a2fe5f625a1dfe9dbb4ed4df968ce0
      https://github.com/llvm/llvm-project/commit/55b90b5140a2fe5f625a1dfe9dbb4ed4df968ce0
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M compiler-rt/lib/asan/tests/CMakeLists.txt
    M compiler-rt/lib/fuzzer/tests/CMakeLists.txt
    M compiler-rt/lib/gwp_asan/tests/CMakeLists.txt
    M compiler-rt/lib/interception/tests/CMakeLists.txt
    M compiler-rt/lib/msan/tests/CMakeLists.txt
    M compiler-rt/lib/orc/tests/CMakeLists.txt
    M compiler-rt/lib/sanitizer_common/tests/CMakeLists.txt
    M compiler-rt/lib/scudo/standalone/tests/CMakeLists.txt
    M compiler-rt/lib/tsan/tests/CMakeLists.txt
    M compiler-rt/lib/xray/tests/CMakeLists.txt

  Log Message:
  -----------
  [compiler-rt] Remove llvm_gtest dependency from unit tests

All these unit tests already include ${COMPILER_RT_GTEST_SOURCE} as an
input source file and the target llvm_gtest does not exist for
standalone builds. Currently the DEPS argument is ignored for standalone
builds so the missing target is not a problem, but as part of fixing a
build race for standalone builds I am planning to include those
dependencies in COMPILER_RT_TEST_STANDALONE_BUILD_LIBS configurations.

Reviewed By: vitalybuka

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


  Commit: 27e5312a8bc8935f9c5620ff061c647d9fbcec85
      https://github.com/llvm/llvm-project/commit/27e5312a8bc8935f9c5620ff061c647d9fbcec85
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp
    M compiler-rt/test/sanitizer_common/TestCases/corelimit.cpp

  Log Message:
  -----------
  [compiler-rt] Avoid generating coredumps when piped to a tool

I was trying to debug why `ninja check-compiler-rt` was taking so long
to run on my system and after some debugging it turned out that most of
the time was being spent generating core dumps.

On many current Linux systems, coredumps are no longer dumped in the CWD
but instead piped to a utility such as systemd-coredumpd that stores
them in a deterministic location. This can be done by setting the
kernel.core_pattern sysctl to start with a '|'. However, when using such
a setup the kernel ignores a coredump limit of 0 (since there is no file
being written) and we can end up piping many gigabytes of data to
systemd-coredumpd which causes the test suite to freeze for a long time.
While most piped coredump handlers do respect the crashing processes'
RLIMIT_CORE, this is notable not the case for Debian's systemd-coredump
due to a local patch that changes sysctl.d/50-coredump.conf to ignore
the specified limit and instead use RLIM_INFINITY
(https://salsa.debian.org/systemd-team/systemd/-/commit/64599ffe44f0d).

Fortunately there is a workaround: the kernel recognizes the magic value
of 1 for RLIMIT_CORE to disable coredumps when piping. One byte is also
too small to generate any coredump, so it effectively behaves as if we
had set the value to zero.

The alternative to using RLIMIT_CORE=1 would be to use prctl() with the
PR_SET_DUMPABLE flag, however that also prevents ptrace(), so makes it
impossible to attach a debugger.

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

Reviewed By: vitalybuka

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


  Commit: 06e310fee12c3e5ea5c7ef066eab946eb84f317d
      https://github.com/llvm/llvm-project/commit/06e310fee12c3e5ea5c7ef066eab946eb84f317d
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/arm64-convert-v4f64.ll
    M llvm/test/CodeGen/AArch64/extbinopload.ll
    M llvm/test/CodeGen/AArch64/fp-conversion-to-tbl.ll
    M llvm/test/CodeGen/AArch64/fptoi.ll
    M llvm/test/CodeGen/AArch64/neon-truncstore.ll
    M llvm/test/CodeGen/AArch64/sadd_sat_vec.ll
    M llvm/test/CodeGen/AArch64/shuffle-tbl34.ll
    M llvm/test/CodeGen/AArch64/ssub_sat_vec.ll
    M llvm/test/CodeGen/AArch64/tbl-loops.ll
    M llvm/test/CodeGen/AArch64/trunc-to-tbl.ll
    M llvm/test/CodeGen/AArch64/uadd_sat_vec.ll
    M llvm/test/CodeGen/AArch64/usub_sat_vec.ll
    M llvm/test/CodeGen/AArch64/vcvt-oversize.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-truncate-store.ll
    M llvm/test/CodeGen/AArch64/vec3-loads-ext-trunc-stores.ll

  Log Message:
  -----------
  Revert "[AArch64] Improve lowering of truncating uzp1" (#85115)

Reverts llvm/llvm-project#82457

The bot is broken, likely because of mid-air collision.


  Commit: 417324a6c1e7ecb6c145b20905f918378cc824e3
      https://github.com/llvm/llvm-project/commit/417324a6c1e7ecb6c145b20905f918378cc824e3
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp

  Log Message:
  -----------
  [RISCV] Remove unnecessary ArrayRef. NFC


  Commit: 66dd38e8dfd51209aa1fd9bae0a43a355215768f
      https://github.com/llvm/llvm-project/commit/66dd38e8dfd51209aa1fd9bae0a43a355215768f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp

  Log Message:
  -----------
  [RISCV] Use references to avoid unnecessary struct copies. NFC


  Commit: b61fb18456ecd798b2fc340367018ab3109ebfae
      https://github.com/llvm/llvm-project/commit/b61fb18456ecd798b2fc340367018ab3109ebfae
  Author: Alastair Houghton <ahoughton at apple.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/generic_category.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/system_category.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.pass.cpp

  Log Message:
  -----------
  [libc++] Fix tests on musl (#85085)

One or two of the tests need slight tweaks to make them pass when
building with musl.

rdar://118885724


  Commit: a8967b060df01e46c021f718b4e2d7ed858b8726
      https://github.com/llvm/llvm-project/commit/a8967b060df01e46c021f718b4e2d7ed858b8726
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/AArch64/gather-buildvector-with-minbitwidth-user.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with buildvector with minbitwidth Root, NFC.


  Commit: 0b4688403672264ab451992a3461a0df113c3bd7
      https://github.com/llvm/llvm-project/commit/0b4688403672264ab451992a3461a0df113c3bd7
  Author: Usman Nadeem <mnadeem at quicinc.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/arm64-convert-v4f64.ll
    M llvm/test/CodeGen/AArch64/extbinopload.ll
    M llvm/test/CodeGen/AArch64/fp-conversion-to-tbl.ll
    M llvm/test/CodeGen/AArch64/fptoi.ll
    M llvm/test/CodeGen/AArch64/neon-truncstore.ll
    M llvm/test/CodeGen/AArch64/sadd_sat_vec.ll
    M llvm/test/CodeGen/AArch64/shuffle-tbl34.ll
    M llvm/test/CodeGen/AArch64/ssub_sat_vec.ll
    M llvm/test/CodeGen/AArch64/tbl-loops.ll
    M llvm/test/CodeGen/AArch64/trunc-to-tbl.ll
    M llvm/test/CodeGen/AArch64/uadd_sat_vec.ll
    M llvm/test/CodeGen/AArch64/usub_sat_vec.ll
    M llvm/test/CodeGen/AArch64/vcvt-oversize.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-truncate-store.ll
    M llvm/test/CodeGen/AArch64/vec3-loads-ext-trunc-stores.ll

  Log Message:
  -----------
  Revert "Revert "[AArch64] Improve lowering of truncating uzp1"" (#85119)

Reverts llvm/llvm-project#85115
The fix was already merged in
https://github.com/llvm/llvm-project/commit/79cd2c0bb9acb4685094d6b3bf21c758aa51d3df


  Commit: 3d45d8bc70d437283f8afe422011420d0fe6533e
      https://github.com/llvm/llvm-project/commit/3d45d8bc70d437283f8afe422011420d0fe6533e
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/AArch64/user-node-not-in-bitwidths.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with the operand node, not being in MinBWs, though
user is in.


  Commit: b77c079987182748fe1746466a74633cfe057cc1
      https://github.com/llvm/llvm-project/commit/b77c079987182748fe1746466a74633cfe057cc1
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    R llvm/test/Transforms/SLPVectorizer/X86/same-scalar-in-same-phi-extract.ll

  Log Message:
  -----------
  Revert "[SLP]Fix PR85082: PHI node has multiple entries."

This reverts commit 59ff907fc14aa2d02e57b4af4140949d4f8caca1 to fix
crash revealed in https://lab.llvm.org/buildbot/#/builders/198/builds/8881


  Commit: aa68e2814d9a4bad21e4def900152b2e78e25e98
      https://github.com/llvm/llvm-project/commit/aa68e2814d9a4bad21e4def900152b2e78e25e98
  Author: Kolya Panchenko <87679760+nikolaypanchenko at users.noreply.github.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    A llvm/test/CodeGen/RISCV/rvv/compressstore.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-compressstore-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-compressstore-int.ll

  Log Message:
  -----------
  [RISCV] Support `llvm.masked.compressstore` intrinsic (#83457)

The changeset enables lowering of `llvm.masked.compressstore(%data,
%ptr, %mask)` for RVV for fixed vector type into:
```
%0 = vcompress %data, %mask, %vl
%new_vl = vcpop %mask, %vl
vse %0, %ptr, %1, %new_vl
```
Such lowering is only possible when `%data` fits into available LMULs
and otherwise `llvm.masked.compressstore` is scalarized by
`ScalarizeMaskedMemIntrin` pass.
Even though RVV spec in the section `15.8` provide alternative sequence
for compressstore, use of `vcompress + vcpop` should be a proper
canonical form to lower `llvm.masked.compressstore`. If RISC-V target
find the sequence from `15.8` better, peephole optimization can
transform `vcompress + vcpop` into that sequence.


  Commit: fbd7c50065705c44e1b3d39f456963810124051b
      https://github.com/llvm/llvm-project/commit/fbd7c50065705c44e1b3d39f456963810124051b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M libc/CMakeLists.txt
    M llvm/CMakeLists.txt

  Log Message:
  -----------
  [libc] Repurpose `LIBC_GPU_BUILD` option to enable the new format (#82848)

Summary:
We previously used the `LIBC_GPU_BUILD` option to control whether or not
the GPU build was enabled. This was recently replaced with a new format
that allows treating the GPU targets more directly. However, the new
format is somewhat difficult to use for people unfamiliar with the
runtimes builds, and the removal of this option somewhat broke backward
compatibility. This patch seeks to simplify enabling the GPU build by
repurposing the old enabling option and convert it to the new interface.

Unsure what the rules are here, since this is technically a `LIBC`
option living in the LLVM location.


  Commit: 882992a951a3d92d5e19d4fe6c6eb9ba1e87d39c
      https://github.com/llvm/llvm-project/commit/882992a951a3d92d5e19d4fe6c6eb9ba1e87d39c
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    A llvm/test/Analysis/ValueTracking/knownbits-select-from-cond.ll

  Log Message:
  -----------
  [ValueTracking] Add tests for inferring select arm bits from condition; NFC


  Commit: 744a23f24b08e8b988b176173c433d64761e66b3
      https://github.com/llvm/llvm-project/commit/744a23f24b08e8b988b176173c433d64761e66b3
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Analysis/ValueTracking/knownbits-select-from-cond.ll

  Log Message:
  -----------
  [ValueTracking] Use select condition to help infer bits of arms

If we have something like `(select (icmp ult x, 8), x, y)`, we can use
the `(icmp ult x, 8)` to help compute the knownbits of `x`.

Closes #84699


  Commit: 9ce8691dea8dadc1302abacf4302f3b805e1448d
      https://github.com/llvm/llvm-project/commit/9ce8691dea8dadc1302abacf4302f3b805e1448d
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M .github/workflows/llvm-project-tests.yml
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/CodeGenOptions.h
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Frontend/FrontendActions.h
    M clang/include/clang/InstallAPI/FrontendRecords.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/Basic/Module.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/Targets/PPC.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Headers/__stddef_null.h
    M clang/lib/Headers/__stddef_nullptr_t.h
    M clang/lib/Headers/__stddef_offsetof.h
    M clang/lib/Headers/__stddef_ptrdiff_t.h
    M clang/lib/Headers/__stddef_rsize_t.h
    M clang/lib/Headers/__stddef_size_t.h
    M clang/lib/Headers/__stddef_unreachable.h
    M clang/lib/Headers/__stddef_wchar_t.h
    M clang/lib/Headers/module.modulemap
    M clang/lib/Lex/ModuleMap.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaModule.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/CXX/module/dcl.dcl/dcl.module/dcl.module.interface/p1.cppm
    A clang/test/CodeGen/PowerPC/toc-data-attribute.c
    A clang/test/CodeGen/PowerPC/toc-data-attribute.cpp
    A clang/test/CodeGen/PowerPC/toc-data-diagnostics.c
    A clang/test/CodeGen/PowerPC/toc-data-structs-arrays.cpp
    A clang/test/CodeGen/complex-math-mixed.c
    M clang/test/CodeGen/const-init.c
    M clang/test/CodeGen/volatile.cpp
    A clang/test/Driver/toc-conf.c
    A clang/test/Driver/tocdata-cc1.c
    R clang/test/Modules/missing-module-declaration.cppm
    M clang/test/Modules/no-undeclared-includes-builtins.cpp
    M clang/test/Modules/pr72828.cppm
    M clang/test/Modules/stddef.c
    M clang/test/Sema/attr-cleanup.c
    A clang/test/Sema/complex-arithmetic.c
    A clang/test/Sema/const-init.c
    A clang/test/SemaCXX/constexpr-explicit-object-lambda.cpp
    M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
    M clang/unittests/Interpreter/InterpreterExtensionsTest.cpp
    M compiler-rt/lib/asan/tests/CMakeLists.txt
    M compiler-rt/lib/fuzzer/FuzzerUtilLinux.cpp
    M compiler-rt/lib/fuzzer/tests/CMakeLists.txt
    M compiler-rt/lib/gwp_asan/tests/CMakeLists.txt
    M compiler-rt/lib/hwasan/hwasan_interceptors.cpp
    M compiler-rt/lib/interception/interception.h
    M compiler-rt/lib/interception/tests/CMakeLists.txt
    M compiler-rt/lib/lsan/lsan_interceptors.cpp
    M compiler-rt/lib/msan/msan_interceptors.cpp
    M compiler-rt/lib/msan/tests/CMakeLists.txt
    M compiler-rt/lib/orc/tests/CMakeLists.txt
    M compiler-rt/lib/sanitizer_common/sanitizer_asm.h
    M compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_bsd.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_common.cpp
    M compiler-rt/lib/sanitizer_common/tests/CMakeLists.txt
    M compiler-rt/lib/scudo/standalone/tests/CMakeLists.txt
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
    M compiler-rt/lib/tsan/tests/CMakeLists.txt
    M compiler-rt/lib/xray/tests/CMakeLists.txt
    A compiler-rt/test/sanitizer_common/TestCases/Linux/static-link.c
    M compiler-rt/test/sanitizer_common/TestCases/corelimit.cpp
    M cross-project-tests/debuginfo-tests/llgdb-tests/forward-declare-class.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendAction.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
    M flang/lib/Lower/OpenMP/ReductionProcessor.h
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/runtime/Float128Math/CMakeLists.txt
    A flang/runtime/Float128Math/fma.cpp
    M flang/runtime/Float128Math/math-entries.h
    A flang/runtime/Float128Math/random.cpp
    A flang/runtime/random-templates.h
    M flang/runtime/random.cpp
    A flang/test/Driver/cuda-option.f90
    A flang/test/Lower/Intrinsics/fma_real16.f90
    M flang/test/Lower/Intrinsics/modulo.f90
    A flang/test/Lower/Intrinsics/random_number_real16.f90
    A flang/test/Lower/OpenMP/FIR/parallel-reduction-add-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-add-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-iand-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-ieor-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-ior-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-eqv-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-neqv-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-max-byref.f90
    A flang/test/Lower/OpenMP/FIR/wsloop-reduction-min-byref.f90
    A flang/test/Lower/OpenMP/default-clause-byref.f90
    A flang/test/Lower/OpenMP/delayed-privatization-reduction-byref.f90
    A flang/test/Lower/OpenMP/parallel-reduction-add-byref.f90
    A flang/test/Lower/OpenMP/parallel-reduction-byref.f90
    A flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f90
    A flang/test/Lower/OpenMP/use-device-ptr-to-use-device-addr.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-add-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-add-hlfir-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-iand-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-ieor-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-ior-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-logical-and-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-logical-or-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-max-2-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-max-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-max-hlfir-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-min-byref.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-min2.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-mul-byref.f90
    M flang/test/Semantics/OpenMP/use_device_ptr1.f90
    M libc/CMakeLists.txt
    M libc/config/gpu/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/docs/gpu/support.rst
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/include/variant
    M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/generic_category.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/system_category.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.pass.cpp
    M libcxx/test/std/utilities/variant/variant.variant/variant.assign/T.pass.cpp
    M libcxx/test/std/utilities/variant/variant.variant/variant.assign/conv.pass.cpp
    M libcxx/test/std/utilities/variant/variant.variant/variant.ctor/T.pass.cpp
    M libcxx/test/std/utilities/variant/variant.variant/variant.ctor/conv.pass.cpp
    M libcxx/test/support/variant_test_helpers.h
    M lldb/source/Expression/IRExecutionUnit.cpp
    M lldb/test/API/functionalities/fork/concurrent_vfork/TestConcurrentVFork.py
    M lldb/test/API/python_api/run_locker/TestRunLocker.py
    M llvm/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/CommandGuide/llvm-ar.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm/ADT/STLExtras.h
    M llvm/include/llvm/CodeGen/AccelTable.h
    M llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/include/llvm/IR/BasicBlock.h
    M llvm/include/llvm/IR/DebugProgramInstruction.h
    M llvm/include/llvm/IR/Instruction.h
    M llvm/include/llvm/IR/PassManager.h
    M llvm/include/llvm/MC/MCInstBuilder.h
    M llvm/include/llvm/Object/Archive.h
    M llvm/include/llvm/Transforms/Scalar/Float2Int.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp
    M llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/SelectOptimize.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SjLjEHPrepare.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/LLVMContextImpl.cpp
    M llvm/lib/IR/LLVMContextImpl.h
    M llvm/lib/MC/MCSectionXCOFF.cpp
    M llvm/lib/Object/Archive.cpp
    M llvm/lib/Object/ArchiveWriter.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/SMEInstrFormats.td
    M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/DSInstructions.td
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.h
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/PowerPC/GISel/PPCInstructionSelector.cpp
    M llvm/lib/Target/PowerPC/P10InstrResources.td
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/PowerPC/PPCBack2BackFusion.def
    M llvm/lib/Target/PowerPC/PPCFastISel.cpp
    M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCMacroFusion.def
    M llvm/lib/Target/PowerPC/PPCSubtarget.cpp
    M llvm/lib/Target/PowerPC/PPCSubtarget.h
    M llvm/lib/Target/PowerPC/PPCTOCRegDeps.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Scalar/Float2Int.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/LoopConstrainer.cpp
    M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/ValueMapper.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    A llvm/test/Analysis/Lint/crash_empty_iterator.ll
    A llvm/test/Analysis/ValueTracking/knownbits-select-from-cond.ll
    M llvm/test/CodeGen/AArch64/arm64-convert-v4f64.ll
    M llvm/test/CodeGen/AArch64/bitcast.ll
    M llvm/test/CodeGen/AArch64/extbinopload.ll
    M llvm/test/CodeGen/AArch64/fold-global-offsets.ll
    M llvm/test/CodeGen/AArch64/fp-conversion-to-tbl.ll
    M llvm/test/CodeGen/AArch64/fptoi.ll
    M llvm/test/CodeGen/AArch64/neon-truncstore.ll
    M llvm/test/CodeGen/AArch64/sadd_sat_vec.ll
    M llvm/test/CodeGen/AArch64/shuffle-tbl34.ll
    M llvm/test/CodeGen/AArch64/shufflevector.ll
    A llvm/test/CodeGen/AArch64/sme-write-vg.ll
    M llvm/test/CodeGen/AArch64/ssub_sat_vec.ll
    M llvm/test/CodeGen/AArch64/tbl-loops.ll
    M llvm/test/CodeGen/AArch64/trunc-to-tbl.ll
    M llvm/test/CodeGen/AArch64/uadd_sat_vec.ll
    M llvm/test/CodeGen/AArch64/usub_sat_vec.ll
    M llvm/test/CodeGen/AArch64/vcvt-oversize.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-truncate-store.ll
    M llvm/test/CodeGen/AArch64/vec3-loads-ext-trunc-stores.ll
    M llvm/test/CodeGen/AArch64/xor.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/clamp.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize-elimination.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.f16.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.f16.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
    M llvm/test/CodeGen/AMDGPU/llvm.maxnum.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.minnum.f16.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
    M llvm/test/CodeGen/Hexagon/addrmode-immop.mir
    M llvm/test/CodeGen/NVPTX/b52037.ll
    M llvm/test/CodeGen/PowerPC/remove-copy-crunsetcrbit.mir
    A llvm/test/CodeGen/PowerPC/toc-data-large-array.ll
    A llvm/test/CodeGen/PowerPC/toc-data-large-array2.ll
    A llvm/test/CodeGen/PowerPC/toc-data-struct-array.ll
    A llvm/test/CodeGen/RISCV/rvv/compressstore.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-compressstore-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-compressstore-int.ll
    M llvm/test/CodeGen/SPIRV/ComparePointers.ll
    M llvm/test/CodeGen/SPIRV/capability-kernel.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-addressspace.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-base-type.ll
    M llvm/test/CodeGen/SPIRV/pointers/kernel-argument-pointer-addressspace.ll
    M llvm/test/CodeGen/SPIRV/pointers/kernel-argument-pointer-type-deduction-no-bitcast-to-generic.ll
    M llvm/test/CodeGen/SPIRV/pointers/kernel-argument-pointer-type.ll
    M llvm/test/CodeGen/SPIRV/pointers/load-addressspace.ll
    M llvm/test/CodeGen/SPIRV/pointers/store-operand-ptr-to-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/struct-opaque-pointers.ll
    M llvm/test/CodeGen/SPIRV/pointers/two-bitcast-or-param-users.ll
    M llvm/test/CodeGen/SPIRV/pointers/two-subsequent-bitcasts.ll
    A llvm/test/CodeGen/SPIRV/pointers/type-deduce-by-call-rev.ll
    A llvm/test/CodeGen/SPIRV/pointers/type-deduce-by-call.ll
    A llvm/test/CodeGen/SPIRV/pointers/typeof-ptr-int.ll
    M llvm/test/CodeGen/SPIRV/relationals.ll
    M llvm/test/CodeGen/SPIRV/simple.ll
    M llvm/test/CodeGen/SPIRV/transcoding/AtomicCompareExchangeExplicit_cl20.ll
    M llvm/test/CodeGen/SPIRV/transcoding/BitReversePref.ll
    M llvm/test/CodeGen/SPIRV/transcoding/BuildNDRange.ll
    M llvm/test/CodeGen/SPIRV/transcoding/BuildNDRange_2.ll
    M llvm/test/CodeGen/SPIRV/transcoding/ConvertPtr.ll
    M llvm/test/CodeGen/SPIRV/transcoding/DecorationAlignment.ll
    M llvm/test/CodeGen/SPIRV/transcoding/DecorationMaxByteOffset.ll
    M llvm/test/CodeGen/SPIRV/transcoding/DivRem.ll
    M llvm/test/CodeGen/SPIRV/transcoding/ExecutionMode_SPIR_to_SPIRV.ll
    M llvm/test/CodeGen/SPIRV/transcoding/GlobalFunAnnotate.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/atomic_cmpxchg.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/atomic_legacy.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/atomic_work_item_fence.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/barrier.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/sub_group_mask.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/work_group_barrier.ll
    M llvm/test/CodeGen/SPIRV/transcoding/atomic_flag.ll
    M llvm/test/CodeGen/SPIRV/transcoding/atomic_load_store.ll
    M llvm/test/CodeGen/SPIRV/transcoding/bitcast.ll
    M llvm/test/CodeGen/SPIRV/transcoding/block_w_struct_return.ll
    M llvm/test/CodeGen/SPIRV/transcoding/builtin_calls.ll
    M llvm/test/CodeGen/SPIRV/transcoding/builtin_vars.ll
    M llvm/test/CodeGen/SPIRV/transcoding/builtin_vars_arithmetics.ll
    M llvm/test/CodeGen/SPIRV/transcoding/builtin_vars_opt.ll
    M llvm/test/CodeGen/SPIRV/transcoding/check_ro_qualifier.ll
    M llvm/test/CodeGen/SPIRV/transcoding/cl-types.ll
    M llvm/test/CodeGen/SPIRV/transcoding/clk_event_t.ll
    M llvm/test/CodeGen/SPIRV/transcoding/enqueue_kernel.ll
    M llvm/test/CodeGen/SPIRV/transcoding/explicit-conversions.ll
    M llvm/test/CodeGen/SPIRV/transcoding/extract_insert_value.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fadd.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fclamp.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fcmp.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fdiv.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fmod.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fmul.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fneg.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fp_contract_reassoc_fast_mode.ll
    M llvm/test/CodeGen/SPIRV/transcoding/frem.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fsub.ll
    M llvm/test/CodeGen/SPIRV/transcoding/get_image_num_mip_levels.ll
    M llvm/test/CodeGen/SPIRV/transcoding/global_block.ll
    M llvm/test/CodeGen/SPIRV/transcoding/group_ops.ll
    M llvm/test/CodeGen/SPIRV/transcoding/isequal.ll
    M llvm/test/CodeGen/SPIRV/transcoding/relationals_double.ll
    M llvm/test/CodeGen/SPIRV/transcoding/relationals_float.ll
    M llvm/test/CodeGen/SPIRV/transcoding/relationals_half.ll
    M llvm/test/CodeGen/WinCFGuard/cfguard-mingw.ll
    M llvm/test/CodeGen/X86/tls-align.ll
    M llvm/test/DebugInfo/X86/tu-to-non-tu.ll
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mubuf.s
    M llvm/test/ThinLTO/X86/Inputs/devirt_single_hybrid_bar.ll
    M llvm/test/ThinLTO/X86/devirt_after_filtering_unreachable.ll
    M llvm/test/ThinLTO/X86/devirt_external_comdat_same_guid.ll
    M llvm/test/ThinLTO/X86/devirt_local_same_guid.ll
    M llvm/test/ThinLTO/X86/lower_type_test_phi.ll
    M llvm/test/ThinLTO/X86/nodevirt-nonpromoted-typeid.ll
    M llvm/test/ThinLTO/X86/type_test_noindircall.ll
    M llvm/test/Transforms/Float2Int/basic.ll
    M llvm/test/Transforms/IRCE/compound-loop-bound.ll
    A llvm/test/Transforms/InstCombine/shift-cttz-ctlz.ll
    M llvm/test/Transforms/InstCombine/zext.ll
    M llvm/test/Transforms/LoopVectorize/dbg-outer-loop-vect.ll
    A llvm/test/Transforms/SLPVectorizer/AArch64/gather-buildvector-with-minbitwidth-user.ll
    A llvm/test/Transforms/SLPVectorizer/AArch64/gather-with-minbith-user.ll
    A llvm/test/Transforms/SLPVectorizer/AArch64/user-node-not-in-bitwidths.ll
    A llvm/test/tools/llvm-ar/coff-symtab.test
    A llvm/test/tools/llvm-ar/no-symtab.yaml
    M llvm/test/tools/llvm-mca/RISCV/SiFive7/vector-integer-arithmetic.s
    M llvm/test/tools/llvm-objcopy/ELF/compress-debug-sections-zstd.test
    M llvm/tools/llvm-ar/llvm-ar.cpp
    M llvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
    M llvm/tools/llvm-exegesis/lib/SubprocessMemory.cpp
    M llvm/tools/llvm-exegesis/lib/SubprocessMemory.h
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
    M llvm/unittests/IR/BasicBlockDbgInfoTest.cpp
    M llvm/unittests/IR/DebugInfoTest.cpp
    M llvm/unittests/Transforms/Utils/CallPromotionUtilsTest.cpp
    M llvm/unittests/Transforms/Utils/DebugifyTest.cpp
    M llvm/unittests/tools/llvm-exegesis/X86/SubprocessMemoryTest.cpp
    M llvm/utils/TableGen/DecoderEmitter.cpp
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/Tensor/IR/TensorOps.td
    M mlir/include/mlir/Transforms/Inliner.h
    M mlir/include/mlir/Transforms/Passes.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Transforms/InlinerPass.cpp
    M mlir/lib/Transforms/Utils/Inliner.cpp
    M mlir/test/Conversion/TensorToLinalg/tensor-ops-to-linalg.mlir
    M mlir/test/Dialect/Linalg/drop-unit-extent-dims.mlir
    M mlir/test/Dialect/Linalg/generalize-pad-tensor.mlir
    M mlir/test/Dialect/Linalg/transform-op-matmul-to-outerproduct.mlir
    A mlir/test/Target/LLVMIR/openmp-reduction-byref.mlir
    M mlir/test/Transforms/inlining-dump-default-pipeline.mlir
    A mlir/test/Transforms/inlining-threshold.mlir

  Log Message:
  -----------
  [𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.5-bogner

[skip ci]


Compare: https://github.com/llvm/llvm-project/compare/795e3c3d94da...9ce8691dea8d

To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list