[all-commits] [llvm/llvm-project] acd0f6: [SafeStack] Allocate unsafe sigaltstack (#206463)
Pierre van Houtryve via All-commits
all-commits at lists.llvm.org
Wed Jul 1 01:49:06 PDT 2026
Branch: refs/heads/users/pierre-vh/remove-vmemtypes
Home: https://github.com/llvm/llvm-project
Commit: acd0f6fa1eb5b5cf78ddbd3281cdcf2e1e9587d3
https://github.com/llvm/llvm-project/commit/acd0f6fa1eb5b5cf78ddbd3281cdcf2e1e9587d3
Author: Jakob Koschel <jakobkoschel at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M compiler-rt/include/sanitizer/safestack_interface.h
M compiler-rt/lib/safestack/safestack.cpp
M compiler-rt/test/safestack/sigaltstack.c
Log Message:
-----------
[SafeStack] Allocate unsafe sigaltstack (#206463)
PR https://github.com/llvm/llvm-project/pull/196969 was approved and
merged but with `spr` the wrong base branch was set.
This merges the approved changes into `main`
---------
Co-authored-by: Paul Walker <paul.walker at arm.com>
Co-authored-by: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Commit: cf1f0e9d82abeb5b2283aee1614d98288403f4fe
https://github.com/llvm/llvm-project/commit/cf1f0e9d82abeb5b2283aee1614d98288403f4fe
Author: Lucas Mellone <github.snugness349 at passinbox.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M libcxx/include/__ranges/adjacent_view.h
A libcxx/test/libcxx/ranges/range.adaptors/range.adjacent/nodiscard.verify.cpp
Log Message:
-----------
[libc++][ranges] Applied [[nodiscard]] to `adjacent_view` (#205206)
[[nodiscard]] should be applied to functions where discarding the return
value is most likely a correctness issue.
- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/range.adjacent
Towards https://github.com/llvm/llvm-project/issues/172124
---------
Co-authored-by: A. Jiang <de34 at live.cn>
Co-authored-by: Hristo Hristov <zingam at outlook.com>
Commit: 787619a4072e0eb7887357d5d284e86c17548aed
https://github.com/llvm/llvm-project/commit/787619a4072e0eb7887357d5d284e86c17548aed
Author: Steffen Larsen <sholstla at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
A llvm/test/CodeGen/AMDGPU/issue196582-late-codegenprepare-crash-non-po2.ll
Log Message:
-----------
[AMDGPU] Fix bit-packing condition in LiveRegOptimizer (#201520)
This commit changes the condition for determining the eligibility for
bit-packing in LiveRegOptimizer from requiring that the scalar target
type is larger than the source type to instead require that the target
is a multiple of it.
Fixes https://github.com/llvm/llvm-project/issues/196582.
---------
Signed-off-by: Steffen Holst Larsen <sholstla at amd.com>
Commit: e60b4b69dc72b1f7d9faa2e811ae161e9aef78e4
https://github.com/llvm/llvm-project/commit/e60b4b69dc72b1f7d9faa2e811ae161e9aef78e4
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/dynamic-cast.cpp
Log Message:
-----------
[clang][bytecode] Fix an assertion failure in dynamic_cast handling (#206447)
If `Ptr` is already a root pointer, the `getBase()` call ran into an
assertion. Fix this by moving the check to the start of the loop.
Commit: f1caacf406bbbf26a184e1c08f7cd716a5898d61
https://github.com/llvm/llvm-project/commit/f1caacf406bbbf26a184e1c08f7cd716a5898d61
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
Log Message:
-----------
[SPIR-V] Reuse getIConstVal instead of custom one where applicable (NFC) (#206131)
Commit: 5c158012815d6f5d9ac5ec71a1273773ca5d070b
https://github.com/llvm/llvm-project/commit/5c158012815d6f5d9ac5ec71a1273773ca5d070b
Author: Raphael Isemann <rise at apple.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M lldb/source/Commands/CommandCompletions.cpp
M lldb/test/API/functionalities/completion/TestCompletion.py
Log Message:
-----------
[lldb] Show descriptions for settings (#206044)
This patch shows a description next to each settings completion.
Commit: 163653052803b8fd9d9f5fb2eeeaceddbae1fb1f
https://github.com/llvm/llvm-project/commit/163653052803b8fd9d9f5fb2eeeaceddbae1fb1f
Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/include/clang/Basic/OffloadArch.h
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/test/Driver/amdgpu-macros.cl
M clang/test/Driver/amdgpu-mcpu.cl
M clang/test/Driver/offload-arch-translation-amdgpu.cu
M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
M clang/test/Misc/target-invalid-cpu-note/nvptx.c
M llvm/docs/AMDGPUUsage.rst
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/include/llvm/TargetParser/AMDGPUTargetParser.def
M llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/GCNProcessors.td
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/TargetParser/AMDGPUTargetParser.cpp
M llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
M llvm/test/CodeGen/AMDGPU/elf-header-flags-mach.ll
M llvm/test/CodeGen/AMDGPU/generic-targets-require-v6.ll
M llvm/test/CodeGen/AMDGPU/hsa-generic-target-features.ll
M llvm/test/Object/AMDGPU/elf-header-flags-mach.yaml
M llvm/test/tools/llvm-objdump/ELF/AMDGPU/subtarget.ll
M llvm/test/tools/llvm-readobj/ELF/AMDGPU/elf-headers.test
M offload/plugins-nextgen/common/src/Utils/ELF.cpp
Log Message:
-----------
[AMDGPU] Add more generic targets (#205363)
gfx11-7-generic = 0x062
gfx13-generic = 0x063
Co-Authored-By: Claude noreply at anthropic.com
Commit: f8132d8a033ee1e0ff9a2d3cf4d2da04cd63e5e8
https://github.com/llvm/llvm-project/commit/f8132d8a033ee1e0ff9a2d3cf4d2da04cd63e5e8
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-reductions.ll
Log Message:
-----------
[X86] Fold broadcast(truncate(extract_vector_elt(x, 0))) -> bitcast(broadcast(x)) (#206461)
Fixes regressions in #205098
Commit: 2fbe136ff25870ce61af0331704409e8c69a3ce9
https://github.com/llvm/llvm-project/commit/2fbe136ff25870ce61af0331704409e8c69a3ce9
Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Lex/PPDirectives.cpp
M clang/lib/Lex/Pragma.cpp
A clang/test/Frontend/linemarker-invalid-escape.c
M clang/test/Preprocessor/line-directive-output.c
M clang/test/Preprocessor/line-directive.c
M clang/test/Preprocessor/pragma_module.c
Log Message:
-----------
Line and digit directives, OriginalFileName, ModuleName should be unevaluated strings (#201413)
Based on
https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2023/p2361r6.pdf,
line and digit directives should be unevaluated strings. This patch
changes the HandleLineDirective and HandleDigitDirective to parse
strings as unevaluated string literals and fixes the testcase to not
have escape sequences.
Commit: c06d04719cd6d127db25cf38c328cda2aa27f8a2
https://github.com/llvm/llvm-project/commit/c06d04719cd6d127db25cf38c328cda2aa27f8a2
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaChecking.cpp
M clang/test/Sema/attr-const-pure.c
Log Message:
-----------
Diagnose noreturn calls from a const or pure function (#206134)
The const and pure functions add the WillReturn LLVM IR attribute which
require the function to return. Calling a noreturn function is UB, so it
is now being diagnosed unless the call is known to be unevaluated.
This diagnostic is enabled by default.
Fixes #129022
Commit: bb9f0817a9c58f715ac0b0d615860c408eb78236
https://github.com/llvm/llvm-project/commit/bb9f0817a9c58f715ac0b0d615860c408eb78236
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectMatch.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/RunMatch.py
M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_address.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/invalid-address.test
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/parse-address.test
Log Message:
-----------
[Dexter] Add !address node (#202801)
Adds a node type for Dexter that allows checking abstract labels instead
of concrete addresses. Each address node has a label and optional
offset, and the first time during evaluation that a given address label
is matched against a valid pointer value, the address label will be
assigned a value that matches the seen address (adjusting for any
offset). From that point, the resolved address value will be used for
the remainder of the test evaluation.
Commit: 2852b8beb9a87e72f6eccb297bbe1f0c8fcf7083
https://github.com/llvm/llvm-project/commit/2852b8beb9a87e72f6eccb297bbe1f0c8fcf7083
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVRegularizer.cpp
M llvm/test/CodeGen/SPIRV/passes/SPIRVRegularizer-i1-icmp.ll
Log Message:
-----------
[SPIR-V] Extend runLowerI1Comparisons to cover vector i1 types (#206409)
Commit: c4dafb0c3bda13f40ded1e0f3f018dd5ec529fbb
https://github.com/llvm/llvm-project/commit/c4dafb0c3bda13f40ded1e0f3f018dd5ec529fbb
Author: Connector Switch <c8ef at outlook.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M libcxx/docs/Status/Cxx26Issues.csv
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_double.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++] Mark LWG4084 as resolved (#206224)
Closes https://github.com/llvm/llvm-project/issues/118346
Commit: 09d1b945b52e9cdb318842a051bab8fbc3d83d9f
https://github.com/llvm/llvm-project/commit/09d1b945b52e9cdb318842a051bab8fbc3d83d9f
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/test/Transforms/MemCpyOpt/memset-memmove-redundant-memmove.ll
Log Message:
-----------
[MemCpyOpt] Fix incorrect size check in memmove of memset opt (#206451)
We were only checking that the memset is at least as large as the
memmove size, but not accounting for the fact that the memmove occurs at
an offset.
Commit: ad2fbea7979a768b7525a895152322460cad8114
https://github.com/llvm/llvm-project/commit/ad2fbea7979a768b7525a895152322460cad8114
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M libcxx/include/__algorithm/clamp.h
M libcxx/include/__algorithm/lexicographical_compare_three_way.h
M libcxx/include/__algorithm/out_value_result.h
M libcxx/include/__algorithm/radix_sort.h
M libcxx/include/__algorithm/ranges_copy_n.h
M libcxx/include/__algorithm/three_way_comp_ref_type.h
M libcxx/include/__atomic/atomic_sync.h
M libcxx/include/__atomic/atomic_sync_timed.h
M libcxx/include/__atomic/atomic_waitable_traits.h
M libcxx/include/__atomic/floating_point_helper.h
M libcxx/include/__bit/bit_cast.h
M libcxx/include/__bit/bit_ceil.h
M libcxx/include/__charconv/to_chars.h
M libcxx/include/__chrono/gps_clock.h
M libcxx/include/__chrono/steady_clock.h
M libcxx/include/__chrono/tai_clock.h
M libcxx/include/__chrono/time_zone.h
M libcxx/include/__chrono/time_zone_link.h
M libcxx/include/__chrono/tzdb.h
M libcxx/include/__chrono/tzdb_list.h
M libcxx/include/__chrono/utc_clock.h
M libcxx/include/__chrono/zoned_time.h
M libcxx/include/__compare/common_comparison_category.h
M libcxx/include/__compare/compare_three_way.h
M libcxx/include/__compare/compare_three_way_result.h
M libcxx/include/__compare/ordering.h
M libcxx/include/__compare/synth_three_way.h
M libcxx/include/__compare/three_way_comparable.h
M libcxx/include/__concepts/arithmetic.h
M libcxx/include/__concepts/assignable.h
M libcxx/include/__concepts/boolean_testable.h
M libcxx/include/__concepts/class_or_enum.h
M libcxx/include/__concepts/common_reference_with.h
M libcxx/include/__concepts/comparison_common_type.h
M libcxx/include/__concepts/constructible.h
M libcxx/include/__concepts/convertible_to.h
M libcxx/include/__concepts/copyable.h
M libcxx/include/__concepts/derived_from.h
M libcxx/include/__concepts/destructible.h
M libcxx/include/__concepts/different_from.h
M libcxx/include/__concepts/equality_comparable.h
M libcxx/include/__concepts/invocable.h
M libcxx/include/__concepts/movable.h
M libcxx/include/__concepts/predicate.h
M libcxx/include/__concepts/regular.h
M libcxx/include/__concepts/relation.h
M libcxx/include/__concepts/same_as.h
M libcxx/include/__concepts/semiregular.h
M libcxx/include/__concepts/swappable.h
M libcxx/include/__concepts/totally_ordered.h
M libcxx/include/__condition_variable/condition_variable.h
M libcxx/include/__cstddef/max_align_t.h
M libcxx/include/__format/container_adaptor.h
M libcxx/include/__format/enable_insertable.h
M libcxx/include/__format/escaped_output_table.h
M libcxx/include/__format/fmt_pair_like.h
M libcxx/include/__format/formatter_tuple.h
M libcxx/include/__format/range_default_formatter.h
M libcxx/include/__format/range_format.h
M libcxx/include/__format/range_formatter.h
M libcxx/include/__functional/binary_negate.h
M libcxx/include/__functional/binder1st.h
M libcxx/include/__functional/binder2nd.h
M libcxx/include/__functional/compose.h
M libcxx/include/__functional/invoke.h
M libcxx/include/__functional/mem_fun_ref.h
M libcxx/include/__functional/perfect_forward.h
M libcxx/include/__functional/pointer_to_binary_function.h
M libcxx/include/__functional/pointer_to_unary_function.h
M libcxx/include/__functional/ranges_operations.h
M libcxx/include/__functional/unary_negate.h
M libcxx/include/__fwd/format.h
M libcxx/include/__fwd/span.h
M libcxx/include/__fwd/variant.h
M libcxx/include/__iterator/data.h
M libcxx/include/__iterator/default_sentinel.h
M libcxx/include/__iterator/empty.h
M libcxx/include/__iterator/incrementable_traits.h
M libcxx/include/__iterator/iter_move.h
M libcxx/include/__iterator/iter_swap.h
M libcxx/include/__iterator/move_sentinel.h
M libcxx/include/__iterator/ranges_iterator_traits.h
M libcxx/include/__iterator/readable_traits.h
M libcxx/include/__iterator/reverse_access.h
M libcxx/include/__iterator/size.h
M libcxx/include/__math/special_functions.h
M libcxx/include/__mdspan/aligned_accessor.h
M libcxx/include/__memory/compressed_pair.h
M libcxx/include/__memory/inout_ptr.h
M libcxx/include/__memory/out_ptr.h
M libcxx/include/__memory/raw_storage_iterator.h
M libcxx/include/__memory/uses_allocator_construction.h
M libcxx/include/__node_handle
M libcxx/include/__numeric/ranges_iota.h
M libcxx/include/__numeric/reduce.h
M libcxx/include/__numeric/transform_reduce.h
M libcxx/include/__random/random_device.h
M libcxx/include/__random/uniform_random_bit_generator.h
M libcxx/include/__ranges/access.h
M libcxx/include/__ranges/all.h
M libcxx/include/__ranges/concepts.h
M libcxx/include/__ranges/container_compatible_range.h
M libcxx/include/__ranges/dangling.h
M libcxx/include/__ranges/data.h
M libcxx/include/__ranges/elements_of.h
M libcxx/include/__ranges/empty.h
M libcxx/include/__ranges/enable_borrowed_range.h
M libcxx/include/__ranges/enable_view.h
M libcxx/include/__ranges/from_range.h
M libcxx/include/__ranges/owning_view.h
M libcxx/include/__ranges/range_adaptor.h
M libcxx/include/__ranges/ref_view.h
M libcxx/include/__ranges/repeat_view.h
M libcxx/include/__ranges/size.h
M libcxx/include/__ranges/subrange.h
M libcxx/include/__ranges/view_interface.h
M libcxx/include/__ranges/views.h
M libcxx/include/__stop_token/atomic_unique_lock.h
M libcxx/include/__stop_token/intrusive_list_view.h
M libcxx/include/__stop_token/intrusive_shared_ptr.h
M libcxx/include/__stop_token/stop_callback.h
M libcxx/include/__stop_token/stop_state.h
M libcxx/include/__stop_token/stop_token.h
M libcxx/include/__thread/id.h
M libcxx/include/__tuple/sfinae_helpers.h
M libcxx/include/__tuple/tuple_like.h
M libcxx/include/__tuple/tuple_like_no_subrange.h
M libcxx/include/__type_traits/common_reference.h
M libcxx/include/__type_traits/has_unique_object_representation.h
M libcxx/include/__type_traits/is_implicit_lifetime.h
M libcxx/include/__type_traits/is_implicitly_default_constructible.h
M libcxx/include/__type_traits/is_literal_type.h
M libcxx/include/__type_traits/reference_converts_from_temporary.h
M libcxx/include/__type_traits/result_of.h
M libcxx/include/__utility/as_const.h
M libcxx/include/__utility/forward_like.h
M libcxx/include/__utility/in_place.h
M libcxx/include/__variant/monostate.h
M libcxx/include/__verbose_trap
M libcxx/include/any
M libcxx/include/charconv
M libcxx/include/cuchar
M libcxx/include/experimental/memory
M libcxx/include/initializer_list
M libcxx/include/mutex
M libcxx/include/print
M libcxx/include/scoped_allocator
M libcxx/include/source_location
M libcxx/include/span
M libcxx/include/syncstream
M libcxx/include/tuple
M libcxx/include/variant
M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
A libcxx/test/tools/clang_tidy_checks/empty_namespaces.cpp
A libcxx/test/tools/clang_tidy_checks/empty_namespaces.hpp
M libcxx/test/tools/clang_tidy_checks/libcpp_module.cpp
M libcxx/utils/generate_escaped_output_table.py
Log Message:
-----------
[libc++] Consistently use version guards outside namespace macros (#181136)
This has the benefit of consistent placement for these macros (outside
the namespace, not inside it). This, in turn, makes it more obvious that
the condition applies to the entire namespace scope. Compile times are
also reduced a bit, since the compiler doesn't have to open a namespace
just to close it again.
This is enforced with a clang-tidy check.
As a drive-by this also fixes a few macro comments.
Commit: 195ca1f266d88b5f49fbb5a4612214a20b48886b
https://github.com/llvm/llvm-project/commit/195ca1f266d88b5f49fbb5a4612214a20b48886b
Author: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZMachineScheduler.cpp
M llvm/test/CodeGen/SystemZ/args-22.ll
M llvm/test/CodeGen/SystemZ/atomicrmw-ops-i128.ll
M llvm/test/CodeGen/SystemZ/bswap-09.ll
M llvm/test/CodeGen/SystemZ/bswap-10.ll
M llvm/test/CodeGen/SystemZ/call-zos-vec.ll
M llvm/test/CodeGen/SystemZ/canonicalize-vars.ll
M llvm/test/CodeGen/SystemZ/codegenprepare-sink-and-for-tm.ll
M llvm/test/CodeGen/SystemZ/dag-combine-05.ll
M llvm/test/CodeGen/SystemZ/dag-combine-07.ll
M llvm/test/CodeGen/SystemZ/fold-masked-merge.ll
M llvm/test/CodeGen/SystemZ/fp-copysign-03.ll
M llvm/test/CodeGen/SystemZ/fp-half-vector-binops.ll
M llvm/test/CodeGen/SystemZ/fp-half-vector-fcmp-select.ll
M llvm/test/CodeGen/SystemZ/fp-half.ll
M llvm/test/CodeGen/SystemZ/inline-asm-fp-int-casting-explicit-regs-zEC12.ll
M llvm/test/CodeGen/SystemZ/inline-asm-fp-int-casting-zEC12.ll
M llvm/test/CodeGen/SystemZ/int-cmp-65.ll
M llvm/test/CodeGen/SystemZ/int-conv-14.ll
M llvm/test/CodeGen/SystemZ/int-conv-15.ll
M llvm/test/CodeGen/SystemZ/int-mul-13.ll
M llvm/test/CodeGen/SystemZ/int-uadd-14.ll
M llvm/test/CodeGen/SystemZ/int-usub-13.ll
M llvm/test/CodeGen/SystemZ/knownbits-intrinsics-binop.ll
M llvm/test/CodeGen/SystemZ/misched-prera-cmp-elim.mir
M llvm/test/CodeGen/SystemZ/misched-prera-latencies.mir
M llvm/test/CodeGen/SystemZ/misched-prera-loads.mir
M llvm/test/CodeGen/SystemZ/regcoal-subranges-update.mir
M llvm/test/CodeGen/SystemZ/regcoal_remat_empty_subrange.ll
M llvm/test/CodeGen/SystemZ/risbg-04.ll
M llvm/test/CodeGen/SystemZ/rot-03.ll
M llvm/test/CodeGen/SystemZ/shift-12.ll
M llvm/test/CodeGen/SystemZ/shift-13.ll
M llvm/test/CodeGen/SystemZ/shift-14.ll
M llvm/test/CodeGen/SystemZ/shift-15.ll
M llvm/test/CodeGen/SystemZ/shift-16.ll
M llvm/test/CodeGen/SystemZ/shift-17.ll
M llvm/test/CodeGen/SystemZ/signbits-intrinsics-binop.ll
M llvm/test/CodeGen/SystemZ/soft-float-args.ll
M llvm/test/CodeGen/SystemZ/store_nonbytesized_vecs.ll
M llvm/test/CodeGen/SystemZ/vec-args-04.ll
M llvm/test/CodeGen/SystemZ/vec-cmp-cmp-logic-select.ll
M llvm/test/CodeGen/SystemZ/vec-cmpsel-01.ll
M llvm/test/CodeGen/SystemZ/vec-eval.ll
M llvm/test/CodeGen/SystemZ/vec-perm-12.ll
M llvm/test/CodeGen/SystemZ/vec-trunc-to-i16.ll
M llvm/test/CodeGen/SystemZ/vector-constrained-fp-intrinsics.ll
Log Message:
-----------
[SystemZ] Limit latency scheduling to SUs with latency of at least 5. (#206459)
The latency reduction heuristic is highly effective, but it seems preferred
to not "move everything around", but rather focus on instructions that have
somewhat longer latencies. The basic idea behind this is that the input
order is fairly good to begin with and not just "any random order", so it
should not be disturbed unnecessarily.
Commit: 12b20b36737094b1c521adff0c8f58aaaf2f41fb
https://github.com/llvm/llvm-project/commit/12b20b36737094b1c521adff0c8f58aaaf2f41fb
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/test/CodeGen/X86/phaddsub-extract.ll
M llvm/test/Transforms/PhaseOrdering/X86/horizontal-reduce-add.ll
Log Message:
-----------
[X86] Move more vector.reduce.add subvector pattern tests to PhaseOrdering/X86/horizontal-reduce-add.ll (#206467)
CodeGen test coverage is already in vector-reduce-add-subvector.ll
Commit: 531b3bdd03977db8a67a87484ff2051a87744160
https://github.com/llvm/llvm-project/commit/531b3bdd03977db8a67a87484ff2051a87744160
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
Log Message:
-----------
[NFC][LLVM] Minor code cleanup in BitcodeReader (#206105)
Use structured binding in the range for loop for iterating over upgraded
intrinsics. Also `UpdatedIntrinsicMap` type alias is used just once, so
eliminate it.
Commit: 829440b9e63eb3127e2af595aa45fa4b28b7a49a
https://github.com/llvm/llvm-project/commit/829440b9e63eb3127e2af595aa45fa4b28b7a49a
Author: Tim Corringham <timothy.corringham at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/lib/CodeGen/Targets/DirectX.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/AST/HLSL/Texture2DArray-scalar-AST.hlsl
A clang/test/AST/HLSL/Texture2DArray-shorthand-AST.hlsl
A clang/test/AST/HLSL/Texture2DArray-vector-AST.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-CalculateLevelOfDetail.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-Gather.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-GetDimensions.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-Load.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-Mips.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-Sample.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleBias.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleCmp.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleCmpLevelZero.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleGrad.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleLevel.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-Subscript.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-default-explicit-binding.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-default.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-shorthand-contexts.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-CalculateLevelOfDetail.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-GetDimensions.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-SampleBias.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-SampleCmp.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-SampleCmpLevelZero.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-SampleGrad.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-SampleLevel.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-Sema.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-Subscript.hlsl
A clang/test/SemaHLSL/Texture2DArray-Gather.hlsl
A clang/test/SemaHLSL/Texture2DArray-GatherCmp-Vulkan.hlsl
A clang/test/SemaHLSL/Texture2DArray-Load-errors.hlsl
A clang/test/SemaHLSL/Texture2DArray-mips-errors.hlsl
A llvm/test/CodeGen/DirectX/Texture2DArray-SampleBias.ll
A llvm/test/CodeGen/DirectX/Texture2DArray-SampleGrad.ll
A llvm/test/CodeGen/DirectX/Texture2DArray-annotateHandle.ll
A llvm/test/CodeGen/SPIRV/hlsl-resources/Gather2DArray.ll
A llvm/test/CodeGen/SPIRV/hlsl-resources/LoadLevel2DArray.ll
A llvm/test/CodeGen/SPIRV/hlsl-resources/Sample2DArray.ll
A llvm/test/CodeGen/SPIRV/hlsl-resources/SampleGrad2DArray.ll
Log Message:
-----------
[HLSL] Implement Texture2DArray for HLSL (#203951)
Add support for the Texture2DArray type, builtin argument checking,
codegen, and associated tests.
This change also implements the parts of #194910 which could not be
tested without a HLSL texture array type.
Assisted by Cursor
Fixes #194944
---------
Co-authored-by: Tim Corringham <tcorring at amd.com>
Commit: cdef97000c16bcac9803795ce65396d77c7a1b2e
https://github.com/llvm/llvm-project/commit/cdef97000c16bcac9803795ce65396d77c7a1b2e
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
R cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_aggregates_expected.cpp
R cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_list_aggregates_expected.cpp
R cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_aggregates.cpp
R cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_list_aggregates.cpp
Log Message:
-----------
Revert "[Dexter] Add rewriting for aggregate variables (#202800)" (#206495)
This reverts commit 2cf48dca3338951a7fbe83fecc9e6d35caaa9b11.
The original commit is failing sometimes in pre-commit CI for linux
builds, possibly due to some unspecified environmental dependency.
Commit: d5c982fb0ead0c8c9b8ac4bdf332a6084465a632
https://github.com/llvm/llvm-project/commit/d5c982fb0ead0c8c9b8ac4bdf332a6084465a632
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/IR/Verifier.cpp
M llvm/lib/IR/VerifierInternal.h
M llvm/test/Assembler/autoupgrade-invalid-mem-intrinsics.ll
M llvm/test/Assembler/invalid-vecreduce.ll
M llvm/test/CodeGen/AArch64/sme2p1-intrinsics-movaz.ll
M llvm/test/CodeGen/AArch64/sve-bad-intrinsics.ll
M llvm/test/CodeGen/AArch64/sve-ptest.ll
M llvm/test/CodeGen/AArch64/sve2-intrinsics-nt-gather-loads-32bit-unscaled-offset.ll
M llvm/test/CodeGen/AArch64/sve2-intrinsics-nt-scatter-stores-32bit-unscaled-offset.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.addrspacecast.nonnull.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-multiple-mem-operands-nontemporal-1.mir
M llvm/test/CodeGen/MIR/AMDGPU/syncscopes.mir
M llvm/test/CodeGen/NVPTX/shfl-sync.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/refract.ll
M llvm/test/Transforms/Coroutines/coro-heap-elide.ll
M llvm/test/Transforms/Coroutines/coro-split-eh-00.ll
M llvm/test/Transforms/Coroutines/coro-split-eh-01.ll
M llvm/test/Transforms/Coroutines/coro-split-final-suspend.ll
M llvm/test/Transforms/Coroutines/ex0.ll
M llvm/test/Transforms/Coroutines/phi-coro-end.ll
M llvm/test/Transforms/InstCombine/vector-reductions.ll
M llvm/test/Transforms/MergeFunc/vector.ll
M llvm/test/Transforms/ObjCARC/rv.ll
M llvm/test/Verifier/anyptr-bad.ll
M llvm/test/Verifier/callbr.ll
M llvm/test/Verifier/get-active-lane-mask.ll
M llvm/test/Verifier/intrinsic-bad-arg-type1.ll
M llvm/test/Verifier/masked-load-store.ll
M llvm/test/Verifier/matrix-intrinsics.ll
M llvm/test/Verifier/reduction-intrinsics.ll
M llvm/test/Verifier/scatter_gather.ll
M llvm/test/Verifier/stepvector-intrinsic.ll
M llvm/unittests/IR/VerifierTest.cpp
Log Message:
-----------
[LLVM][Verifier] Move intrinsic signature verification to declarations (#204478)
Commit: 0fc661dead4e9f76c0e91606c80839044bfc2296
https://github.com/llvm/llvm-project/commit/0fc661dead4e9f76c0e91606c80839044bfc2296
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/test/CodeGen/X86/phaddsub-extract.ll
A llvm/test/CodeGen/X86/vector-reduce-add-codesize.ll
Log Message:
-----------
[X86] phaddsub-extract.ll - pull out optsize / pgso tests and move to vector-reduce-add-codesize.ll test file (#206492)
We already have PhaseOrdering middle-end tests for the @llvm.vector.reduce.add pattern matching
Commit: dde20e52ed9b96f4515bc368b2a3281afe87d1be
https://github.com/llvm/llvm-project/commit/dde20e52ed9b96f4515bc368b2a3281afe87d1be
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-server/gdbremote_testcase.py
M lldb/test/API/tools/lldb-server/main.cpp
Log Message:
-----------
[lldb][windows] fix always falsy comparison (#206179)
This is a follow up to https://github.com/llvm/llvm-project/pull/206107,
which introduced a comparison that is always falsy. `os.environ.get`
returns a string and `('1' == 1) == False` in Python.
Compare to a string and return a string as a default value.
Commit: 5c57289bf017f7aa216f242080b7244e4cea88b7
https://github.com/llvm/llvm-project/commit/5c57289bf017f7aa216f242080b7244e4cea88b7
Author: Gábor Horváth <xazax.hun at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/include/clang/Analysis/CallGraph.h
M clang/lib/Analysis/CallGraph.cpp
M clang/test/Sema/LifetimeSafety/safety.cpp
Log Message:
-----------
[CallGraph] Collect callables from global variable initializers (#206458)
CallGraph::TraverseStmt is a no-op, so declaration traversal never
descends into a variable initializer. A lambda or block defined in a
global-storage variable's initializer was therefore never added to the
graph. TU-end lifetime safety analysis walks the call graph to find
functions to analyze, so such a lambda was silently skipped and a real
lifetime bug in it went unreported, while the default per-function mode
caught it.
Walk the initializer of every global-storage variable during declaration
visitation and add any callables defined within it. The hasGlobalStorage
guard excludes parameter default arguments, which CGBuilder already
handles at call sites.
Assisted-by: Claude Opus 4.8
Commit: 72c5132a2e52e816f67b342d101d0e6b1e081448
https://github.com/llvm/llvm-project/commit/72c5132a2e52e816f67b342d101d0e6b1e081448
Author: Konrad Kreczko <konradkreczko at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/DebugProgramInstruction.h
M llvm/lib/IR/DebugProgramInstruction.cpp
Log Message:
-----------
[IR] Add non-const DbgRecord::getInstruction() overload (#206059)
DbgRecord exposes const+non-const overload pairs for getParent(),
getModule() and getContext(), but getInstruction() was const-only and
returned a const Instruction*. Code holding a non-const DbgRecord that
needs a mutable host instruction, for example to use as a DIBuilder
insert position, was therefore forced to const_cast the result.
Add a non-const getInstruction() overload returning a mutable
Instruction*, matching the existing accessor pairs and removing the need
for those casts. The const overload is unchanged.
AI tools were used to write this description.
Commit: 98954ef689b4dd4c37092be7d4112a8f69c18dc8
https://github.com/llvm/llvm-project/commit/98954ef689b4dd4c37092be7d4112a8f69c18dc8
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/test/MC/AMDGPU/gfx11_asm_vopc.s
A llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc-fake16.txt
R llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc.txt
Log Message:
-----------
[AMDGPU][NFC] Templatise and roundtrip gfx11_asm_vopc.s (#206127)
Resolves another portion of differences vs the downstream True16 branch.
Commit: 855b6375859d4793454d653db7db55b05487a7fd
https://github.com/llvm/llvm-project/commit/855b6375859d4793454d653db7db55b05487a7fd
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplate.cpp
M clang/test/Parser/cxx1z-class-template-argument-deduction.cpp
M clang/test/SemaCXX/typo-correction.cpp
Log Message:
-----------
[clang] use typo-corrected name qualifier for template names (#206180)
This also prevents error-recovery from forming a member specialization
which is not a class member, which leads to crashes-on-invalid.
Fixes #204561
Commit: 4ab0976b85e3e9a9fe77fc0b01cb49c1d5542454
https://github.com/llvm/llvm-project/commit/4ab0976b85e3e9a9fe77fc0b01cb49c1d5542454
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/EarlyCSE.cpp
M llvm/test/Transforms/EarlyCSE/memset-load.ll
Log Message:
-----------
[EarlyCSE] Do not forward memset zero to intrinsic (#206452)
We can do this in principle, but it would require more precise handling.
E.g. for masked.load we'd have to respect the passthru argument for
masked out lanes. I don't think this is worthwhile, so just bail out.
Commit: 2f8525c57cb134afb43143d2a3db83088a42d387
https://github.com/llvm/llvm-project/commit/2f8525c57cb134afb43143d2a3db83088a42d387
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/dynamic-cast.cpp
Log Message:
-----------
[clang][bytecode] Ignore irrelevant InitializingPtrs in dynamic_cast (#206468)
If the initializing pointer is unrealted to the one we're operating on,
ignore it.
Commit: 27c707d19a2fc9c5043c8ae1ba1fd9b92ea799c8
https://github.com/llvm/llvm-project/commit/27c707d19a2fc9c5043c8ae1ba1fd9b92ea799c8
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/madd.ll
Log Message:
-----------
[X86] Don't form pmaddwd for shift by 15 (#206473)
I believe the transform is not correct for shifts by 15, because the
multiplier gets sign extended, turning a multiply by 2^15 into one by
-2^15.
Commit: 06724d07f46d77ed8724809fff525da15eedbb13
https://github.com/llvm/llvm-project/commit/06724d07f46d77ed8724809fff525da15eedbb13
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/VectorCombine/X86/extract-cmp-binop.ll
Log Message:
-----------
[VectorCombine] Fix assertion failure with out of bounds extractelement (#206489)
Bail out if the extractelement index is out of bounds, otherwise we'll
assert when trying to create the shuffle mask.
Commit: 88b394d75a2643ca6c17bacd870c74b3b30d175d
https://github.com/llvm/llvm-project/commit/88b394d75a2643ca6c17bacd870c74b3b30d175d
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M mlir/include/mlir-c/Rewrite.h
M mlir/lib/CAPI/Transforms/Rewrite.cpp
M mlir/test/CAPI/rewrite.c
Log Message:
-----------
[mlir-c] Add ConversionTarget dynamic legality C API (#206161)
Add `mlirConversionTargetAddDynamicallyLegalOp`,
`mlirConversionTargetAddDynamicallyLegalDialect`,
`mlirConversionTargetMarkOpRecursivelyLegal`, and
`mlirConversionTargetMarkUnknownOpDynamicallyLegal` to enable
per-instance legality callbacks from C.
Assisted by: Claude
Commit: 81a2ac204aea4281c8ed9162db5d4ed491cb2cfa
https://github.com/llvm/llvm-project/commit/81a2ac204aea4281c8ed9162db5d4ed491cb2cfa
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/Lanai/Lanai.h
M llvm/lib/Target/Lanai/LanaiISelDAGToDAG.cpp
M llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
Log Message:
-----------
[Lanai] Port SelectionDAGISel to NewPM
Similar to what was done for X86 in
7652a59407018c057cdc1163c9f64b5b6f0954eb.
Reviewers: jpienaar
Pull Request: https://github.com/llvm/llvm-project/pull/205997
Commit: 016954e1489dbd8daf94baf3372dae2b7f2684e3
https://github.com/llvm/llvm-project/commit/016954e1489dbd8daf94baf3372dae2b7f2684e3
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/Lanai/CMakeLists.txt
A llvm/lib/Target/Lanai/LanaiCodeGenPassBuilder.cpp
A llvm/lib/Target/Lanai/LanaiPassRegistry.def
M llvm/lib/Target/Lanai/LanaiTargetMachine.h
Log Message:
-----------
[Lanai] Add LanaiCodeGenPassBuilder
This is the basic skeleton that is needed for the new pass manager.
Reviewers: jpienaar
Pull Request: https://github.com/llvm/llvm-project/pull/205998
Commit: 9c1726191f5e8188befff3d6d25d92b45baa64e7
https://github.com/llvm/llvm-project/commit/9c1726191f5e8188befff3d6d25d92b45baa64e7
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/test/CodeGen/SPIRV/opencl/metadata/fp_contractions_metadata.ll
M llvm/test/CodeGen/SPIRV/opencl/metadata/no_fp_contractions_metadata.ll
Log Message:
-----------
[SPIR-V] Add --spirv-fp-contract option to control kernel ContractionOff emission (#206404)
mirror the corresponding option from LLVM SPIR-V translator
---------
Co-authored-by: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Commit: 71d84d29a624aa3f5a29d878d8768e2d8e0eebc8
https://github.com/llvm/llvm-project/commit/71d84d29a624aa3f5a29d878d8768e2d8e0eebc8
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp
Log Message:
-----------
[lldb][windows] fix long path support in debugger event loop (#206114)
`DebuggerThread.cpp` relied on `MAX_PATH` (260 characters) to allocate
buffers for file paths. This leads to truncation of paths that are
longer than that.
This patch allows longer path (up to the `0x8000` unicode limit).
rdar://180711797
Commit: 9abf59bcd002b735126adab4c8491f21478c34df
https://github.com/llvm/llvm-project/commit/9abf59bcd002b735126adab4c8491f21478c34df
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
M llvm/test/CodeGen/SPIRV/passes/SPIRVPrepareFunctions.ll
Log Message:
-----------
[SPIR-V] Propagate intrinsic param attributes to generated helper functions (#206061)
Commit: 0c265b1aef7d053f6b35ff6310621d1471dd570e
https://github.com/llvm/llvm-project/commit/0c265b1aef7d053f6b35ff6310621d1471dd570e
Author: Phoebe Liang <phoebe.natasha.liang at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-warning-data-invocation.cpp
Log Message:
-----------
Guard type size queries on incomplete types in -Wunsafe-buffer-usage (#205426)
When evaluating explicit pointer casts of container `.data()`
invocations, skip querying pointee size (falling back to emitting the
diagnostic) if the source or destination pointee type is incomplete or
dependent.
Previously, destination pointee types were checked using
`getAsTagDecl()->isCompleteDefinition()`, which missed incomplete array
types (`T[]`) and non-C++ tag declarations. Source pointee types were
passed directly to `Ctx.getTypeSize()` without any completeness guard.
Querying `getTypeSize()` on incomplete types resulted in assertion
failures in debug builds and segmentation faults in release builds. This
change guards both source and destination types.
*Disclosure: An AI coding assistant (Google Gemini) was used to assist
in diagnosing the struct layout crash trace.*
Commit: c886bbf8c95dba5d24756b4d5f60801accfd5703
https://github.com/llvm/llvm-project/commit/c886bbf8c95dba5d24756b4d5f60801accfd5703
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/Lanai/Lanai.h
M llvm/lib/Target/Lanai/LanaiCodeGenPassBuilder.cpp
M llvm/lib/Target/Lanai/LanaiDelaySlotFiller.cpp
M llvm/lib/Target/Lanai/LanaiPassRegistry.def
M llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
Log Message:
-----------
[Lanai] Port DelaySlotFiller to NewPM
Standard pass porting.
Reviewers: jpienaar
Pull Request: https://github.com/llvm/llvm-project/pull/206157
Commit: a6377f4997cefd8edfa1b645a92e3e0033daf66e
https://github.com/llvm/llvm-project/commit/a6377f4997cefd8edfa1b645a92e3e0033daf66e
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_no_integer_wrap_decoration.ll
Log Message:
-----------
[SPIR-V] Allow NoUnsignedWrap decoration on OpShiftLeftLogical (#206155)
Align the list of supported ops with spirv-val
(https://github.com/KhronosGroup/SPIRV-Tools/blob/eb5b9970f54bdc56ee957cf4b1306ed8dcb7af4c/source/val/validate_decorations.cpp#L1996-L2013)
- shl is missing from the list
- negate op is unreachable, so it is not added
- other ops are already present
Commit: ac85c0afe6c159eb18095569f669157c3e680a30
https://github.com/llvm/llvm-project/commit/ac85c0afe6c159eb18095569f669157c3e680a30
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/Lanai/Lanai.h
Log Message:
-----------
[Lanai] Remove SetflagAluCombinerPass creation function
This function is not implemented anywhere and the function is not called
anywhere, presumably because the pass was removed a while back and this
was not, or it was never implemented.
Either way, remove it to avoid confusion.
Reviewers: jpienaar
Pull Request: https://github.com/llvm/llvm-project/pull/206158
Commit: 3496d107c2633ae173c7071bb0ec15787df5db34
https://github.com/llvm/llvm-project/commit/3496d107c2633ae173c7071bb0ec15787df5db34
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/Lanai/Lanai.h
M llvm/lib/Target/Lanai/LanaiCodeGenPassBuilder.cpp
M llvm/lib/Target/Lanai/LanaiMemAluCombiner.cpp
M llvm/lib/Target/Lanai/LanaiPassRegistry.def
M llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
Log Message:
-----------
[Lanai] Port MemAluCombiner to NewPM
Standard porting.
Reviewers: jpienaar
Pull Request: https://github.com/llvm/llvm-project/pull/206162
Commit: 6f099e089e6fe720f8d454bf269e45621b926fb6
https://github.com/llvm/llvm-project/commit/6f099e089e6fe720f8d454bf269e45621b926fb6
Author: Erich Keane <ekeane at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
Log Message:
-----------
[CIR] Add NYI for fmaximum/fminimum/fmaximum_num/fminimum_num atomics (#206502)
These were added over the weekend and are breaking the build. The
implementation of these is pretty involved, and requires changes to the
lowering and LLVM dialect, as well as adding new atomic kinds, so I've
left implementing them to a future implementer. For now, this unblocks
the build by putting them in the switch locations with NYIs.
Commit: 56a1adfe2fac347bed28dca77fc45c80340d22f9
https://github.com/llvm/llvm-project/commit/56a1adfe2fac347bed28dca77fc45c80340d22f9
Author: Max Graey <maxgraey at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M mlir/lib/Dialect/Arith/IR/ArithDialect.cpp
M mlir/lib/Dialect/Arith/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/test/Dialect/Arith/value-bounds-op-interface-impl.mlir
Log Message:
-----------
[mlir][arith] Implement ValueBoundsOpInterface for ExtSI op (#204476)
Also fix minor style issues, conventions and inconsistencies for code
around these changes.
Commit: f3b58ad68cca340bdd12e3fd289048e5ecf0ad8d
https://github.com/llvm/llvm-project/commit/f3b58ad68cca340bdd12e3fd289048e5ecf0ad8d
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp
A llvm/lib/Target/Lanai/LanaiAsmPrinter.h
M llvm/lib/Target/Lanai/LanaiCodeGenPassBuilder.cpp
Log Message:
-----------
[Lanai] Port AsmPrinter to NewPM
Pretty much mirror the X86 setup. Use a separate header as that seems to
be more consistent with other backends.
Reviewers: jpienaar
Pull Request: https://github.com/llvm/llvm-project/pull/206169
Commit: a4ddd01177d64b51b1a59ac217af50b59e961901
https://github.com/llvm/llvm-project/commit/a4ddd01177d64b51b1a59ac217af50b59e961901
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/docs/tools/dump_ast_matchers.py
A clang/test/AST/ast_matchers_updated.test
Log Message:
-----------
[clang] Add test run of 'dump_ast_matchers.py' (#165472)
We use
[dump_ast_matchers.py](https://github.com/llvm/llvm-project/blob/main/clang/docs/tools/dump_ast_matchers.py)
script to update
[this](https://github.com/llvm/llvm-project/blob/main/clang/docs/LibASTMatchersReference.html)
auto-generated file in case someone make changes to
[ASTMatchers](https://github.com/llvm/llvm-project/blob/main/clang/include/clang/ASTMatchers/ASTMatchers.h).
This PR ensures that `dump_ast_matchers.py` was run after change in
ASTMatchers.
Closes https://github.com/llvm/llvm-project/issues/165418.
Commit: 2146d8278d47c1d8b1767f965b50a2e0162e2054
https://github.com/llvm/llvm-project/commit/2146d8278d47c1d8b1767f965b50a2e0162e2054
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.cpp
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_fma/fma.ll
Log Message:
-----------
[SPIR-V] Allow FPFastMathMode decoration on OpFmaKHR (#206143)
Commit: ab95a8e7bb519a91abdfa5722ec40c0e0909f8f4
https://github.com/llvm/llvm-project/commit/ab95a8e7bb519a91abdfa5722ec40c0e0909f8f4
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/test/CodeGenHIP/offload-pgo-sections.hip
M compiler-rt/include/profile/InstrProfData.inc
M compiler-rt/lib/profile/InstrProfiling.h
M compiler-rt/lib/profile/InstrProfilingBuffer.c
M compiler-rt/lib/profile/InstrProfilingFile.c
M compiler-rt/lib/profile/InstrProfilingInternal.h
M compiler-rt/lib/profile/InstrProfilingPlatformGPU.c
M compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp
M compiler-rt/lib/profile/InstrProfilingPlatformWindows.c
M compiler-rt/lib/profile/InstrProfilingWriter.c
M compiler-rt/test/profile/GPU/instrprof-hip-counter-correctness.hip
M llvm/include/llvm/IR/FixedMetadataKinds.def
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/include/llvm/ProfileData/InstrProf.h
M llvm/include/llvm/ProfileData/InstrProfData.inc
M llvm/include/llvm/ProfileData/InstrProfReader.h
M llvm/include/llvm/ProfileData/InstrProfWriter.h
M llvm/lib/ProfileData/InstrProf.cpp
M llvm/lib/ProfileData/InstrProfCorrelator.cpp
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/lib/ProfileData/InstrProfWriter.cpp
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
A llvm/test/Bitcode/block-uniformity-profile-metadata.ll
M llvm/test/CodeGen/AArch64/global-merge-profile-sections.ll
A llvm/test/Instrumentation/InstrProfiling/amdgpu-3d-grid.ll
A llvm/test/Instrumentation/InstrProfiling/amdgpu-contiguous-counters.ll
M llvm/test/Instrumentation/InstrProfiling/amdgpu-instrumentation.ll
R llvm/test/Instrumentation/InstrProfiling/amdgpu-profc-arrays.ll
A llvm/test/Instrumentation/InstrProfiling/amdgpu-uniform-counters.ll
A llvm/test/Instrumentation/InstrProfiling/amdgpu-wave32.ll
A llvm/test/Instrumentation/InstrProfiling/amdgpu-wave64.ll
M llvm/test/Instrumentation/InstrProfiling/coverage.ll
M llvm/test/Instrumentation/InstrProfiling/inline-data-var-create.ll
M llvm/test/Instrumentation/InstrProfiling/platform.ll
M llvm/test/Transforms/PGOProfile/Inputs/thinlto_indirect_call_promotion.profraw
M llvm/test/Transforms/PGOProfile/comdat_internal.ll
M llvm/test/Transforms/PGOProfile/instrprof_burst_sampling_fast.ll
M llvm/test/Transforms/PGOProfile/vtable_profile.ll
M llvm/test/tools/llvm-profdata/Inputs/c-general.profraw
M llvm/test/tools/llvm-profdata/Inputs/compressed.profraw
M llvm/test/tools/llvm-profdata/binary-ids-padding.test
M llvm/test/tools/llvm-profdata/large-binary-id-size.test
M llvm/test/tools/llvm-profdata/malformed-not-space-for-another-header.test
M llvm/test/tools/llvm-profdata/malformed-num-counters-zero.test
M llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
A llvm/test/tools/llvm-profdata/malformed-uniform-counter-array.test
M llvm/test/tools/llvm-profdata/misaligned-binary-ids-size.test
M llvm/test/tools/llvm-profdata/mismatched-raw-profile-header.test
M llvm/test/tools/llvm-profdata/profile-version.test
M llvm/test/tools/llvm-profdata/raw-32-bits-be.test
M llvm/test/tools/llvm-profdata/raw-32-bits-le.test
M llvm/test/tools/llvm-profdata/raw-64-bits-be.test
M llvm/test/tools/llvm-profdata/raw-64-bits-le.test
M llvm/test/tools/llvm-profdata/raw-two-profiles.test
M llvm/tools/llvm-profdata/llvm-profdata.cpp
M llvm/unittests/ProfileData/InstrProfTest.cpp
M offload/plugins-nextgen/common/include/GlobalHandler.h
M offload/plugins-nextgen/common/src/GlobalHandler.cpp
Log Message:
-----------
[PGO][AMDGPU] Add uniformity-aware offload profile format and instrumentation (#190708)
Add the producer-side format and instrumentation pieces that layer on
top
of the basic HIP offload PGO support.
This extends the raw/indexed profile format with wave size and uniform
counters, teaches llvm-profdata to read and merge them, adds the AMDGPU
sampling runtime, and emits block.uniformity.profile metadata during
PGO instrumentation.
Commit: c4ba21b2087ad2a31b5f898cb04615fbce178958
https://github.com/llvm/llvm-project/commit/c4ba21b2087ad2a31b5f898cb04615fbce178958
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
Log Message:
-----------
[flang][NFC] Avoid scoped-origin collection and instance churn in getCallModRef. (#206172)
getCallModRef computed the source of the queried variable via a freshly
constructed fir::AliasAnalysis and with the default collectScopedOrigins=true.
Both are unnecessary:
- The resulting Source is only used to classify the variable (kind,
attributes, escape checks); getCallModRef never inspects its
scopedOrigins. Collecting them is dead work, and it triggers the expensive
getDeclarationScope/dominance bookkeeping on every call-modref query.
- A fresh fir::AliasAnalysis discards this instance's caches.
getCallModRef is only reached from getModRef, and getSource/alias
never call getModRef, so reusing 'this' is safe (no recursion).
Reuse 'this' and pass collectScopedOrigins=false for the classification
query. The actual aliasing decision is still made by the separate alias(arg,
var) call, which builds its own Sources (with scoped origins, subject to the
multi-scope gate), so mod-ref precision is unchanged. This significantly
reduces FIR AA overhead in LICM-heavy compilations.
Commit: 5021bde6d333e9e9bbf08a439f69a3f00a198ff6
https://github.com/llvm/llvm-project/commit/5021bde6d333e9e9bbf08a439f69a3f00a198ff6
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/fir-ops.fir
Log Message:
-----------
[flang][fir] Add invariant attribute to fir.load (#206204)
Add an optional `invariant` unit attribute to `fir.load`, modeled on the
existing `nontemporal` attribute. When set, it indicates the referenced
memory location holds the same value at all points in the program where
it is dereferenceable, so the load may be treated as invariant.
The FIR-to-LLVM LoadOpConversion forwards the attribute to the invariant
flag of `llvm.load` (which lowers to `!invariant.load`).
`!invariant.load` metadata might be useful for OpenACC/OpenMP offload,
e.g. by using MLIR AA we can mark `fir.load`s inside the GPU kernels
letting the target codegen to generate read-only data cache load
instructions.
Commit: f9f52bbcbc55ee01760b1f3115e4bf18c5e05782
https://github.com/llvm/llvm-project/commit/f9f52bbcbc55ee01760b1f3115e4bf18c5e05782
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
M mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
M mlir/test/Dialect/MemRef/ops.mlir
Log Message:
-----------
[mlir][memref] Add invariant attribute to memref.load (#206197)
Add an optional `invariant` attribute to `memref.load`, modeled on the
existing `nontemporal` attribute. When set, it indicates the referenced
memory location holds the same value at all points in the program where
it is dereferenceable, so the load may be treated as invariant.
The MemRefToLLVM LoadOpLowering forwards the attribute to the invariant
flag of `llvm.load` (which lowers to `!invariant.load`).
Commit: eb836fa7c9851a14fe74802e65ca6d97d95aedd3
https://github.com/llvm/llvm-project/commit/eb836fa7c9851a14fe74802e65ca6d97d95aedd3
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/test/Shell/SymbolFile/DWARF/Inputs/gnu-ref-strp-alt.yaml
M lldb/test/Shell/SymbolFile/DWARF/gnu-ref-strp-alt.test
A lldb/test/Shell/SymbolFile/DWARF/wasm-dead-code-function-breakpoint.yaml
Log Message:
-----------
[lldb] Don't create functions for DWARF dead-code tombstones (#205691)
A function the linker eliminated (dead-stripped, or inlined into all its
callers) keeps a DWARF subprogram DIE whose DW_AT_low_pc is a "(dead
code)" tombstone: the all-ones value for the unit's address size. LLDB
has no explicit tombstone check; it only rejects dead code where
Address::IsValid() happens to catch it, i.e. when the tombstone equals
the 8-byte LLDB_INVALID_ADDRESS. On wasm32 the tombstone is the 4-byte
0xffffffff, which IsValid() lets through, so LLDB builds a section-less,
module-less lldb_private::Function and later crashes in
Block::GetRangeContainingAddress (reached from
Function::GetPrologueByteSize) dereferencing the empty module.
Require the low PC to resolve to a section in
SymbolFileDWARF::ParseFunction, using Address::IsSectionOffset() instead
of IsValid(). This is the single point where functions are created, so
it covers both the DW_AT_low/high_pc and DW_AT_ranges encodings, and it
rejects any low PC that doesn't land in real code regardless of address
width. It also avoids special-casing the all- ones tombstone value,
which is an LLVM convention; other linkers tombstone with zero or a
near-zero address, and those are already handled by the adjacent
range.valid()/m_first_code_address check.
Commit: 7e4c74348e4d4e912db9c103636b37dda3b4b22f
https://github.com/llvm/llvm-project/commit/7e4c74348e4d4e912db9c103636b37dda3b4b22f
Author: sujianIBM <Jian.Su at ibm.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/stack-protector-guard.c
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
A llvm/test/CodeGen/SystemZ/zos-stack-protector.ll
Log Message:
-----------
[SystemZ][z/OS] Add support of stack guard on z/OS (#206045)
This PR
- Adds support of stack guard for XPLINK64 on z/OS.
- Disables value `global` for option `-mstack-protector-guard=` on z/OS
since it is not supported.
Commit: 885ef9daac3570ddfdd20cc82296eeae5b2c6613
https://github.com/llvm/llvm-project/commit/885ef9daac3570ddfdd20cc82296eeae5b2c6613
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M cmake/Modules/CMakePolicy.cmake
M libcxx/CMakeLists.txt
M libcxx/src/CMakeLists.txt
M libcxxabi/CMakeLists.txt
M libcxxabi/src/CMakeLists.txt
M libunwind/CMakeLists.txt
M libunwind/src/CMakeLists.txt
Log Message:
-----------
[runtimes] Don't create shared library targets when unsupported (#205517)
On platforms that don't support shared libraries (e.g. CMAKE_SYSTEM_NAME
of "Generic", used for GPU and other baremetal targets), CMake's
Platform/Generic.cmake sets the global TARGET_SUPPORTS_SHARED_LIBS
property to FALSE. Under CMP0164's OLD behavior (the default, since the runtimes
set cmake_minimum_required(3.20)), CMake silently demotes SHARED library
targets to STATIC archives. libcxx, libcxxabi and libunwind always create their
shared target, so after demotion both the shared and static targets emit e.g.
"libc++abi.a" and Ninja fails with "multiple rules generate ...".
Rather than papering over the collision with a distinct output name,
skip creating the shared library targets entirely when the platform does not
support them, gating on the TARGET_SUPPORTS_SHARED_LIBS property (left
undefined on platforms that do support shared libraries). The few consumers of
the shared targets are guarded with TARGET checks so they fall back to the static
library or are skipped.
Also set policy CMP0164 to NEW so that any future unguarded
add_library(... SHARED ...) on an unsupported platform fails at
configure time instead of silently producing a colliding static archive.
See https://gitlab.kitware.com/cmake/cmake/-/issues/25759.
The bodies of the newly-conditional blocks are left at their original
indentation to keep this diff minimal. A follow-up commit will fix the
indentation. This was mostly AI generated with some comment fixups.
Co-authored-by: Claude (Opus 4.8) <noreply at anthropic.com>
Commit: 9b132a2ff80dac4bc8e78b242bebb97551c292c7
https://github.com/llvm/llvm-project/commit/9b132a2ff80dac4bc8e78b242bebb97551c292c7
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaTemplateVariadic.cpp
M clang/lib/Sema/SemaType.cpp
M clang/test/SemaCXX/cxx2c-pack-indexing.cpp
Log Message:
-----------
[Clang] Do not allowed narrowing in pack indexing expression. (#206040)
We were reusing CCEKind::Array which turned out to be incorrect. Note
that some diagnostics are emmitted multiple times as we do not have a
clean way to detect the error in all cases.
Fixes #205650
Commit: 53cbf88b6a38679ef466a12b2359e51d88864cb5
https://github.com/llvm/llvm-project/commit/53cbf88b6a38679ef466a12b2359e51d88864cb5
Author: Chris B <chris.bieneman at me.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
R llvm/test/CodeGen/DirectX/strip-debug-info.ll
Log Message:
-----------
Revert "[DirectX] Test stripping debug info for DirectX" (#206510)
Reverts llvm/llvm-project#206261
The test added in this PR fails in all supported build configurations
for the DirectX backend.
Commit: 76968fc856620b833b49335bad65b12e50b7402f
https://github.com/llvm/llvm-project/commit/76968fc856620b833b49335bad65b12e50b7402f
Author: A. Jiang <de34 at live.cn>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M libcxx/docs/Status/Cxx20Papers.csv
Log Message:
-----------
[libc++][docs] Remove superfluous entries for P1286R2 and P2085R0 (#166116)
These papers didn't impact library wording and didn't requirement
library implementations to change either, so perhaps we should remove
entries for them from the status documentation.
Closes #100009
Closes #100617
Commit: 45829d78f3c9cc0660a9abbfad4b01cf87e82fee
https://github.com/llvm/llvm-project/commit/45829d78f3c9cc0660a9abbfad4b01cf87e82fee
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M lldb/include/lldb/Interpreter/Interfaces/ScriptedFrameInterface.h
M lldb/include/lldb/Utility/ValueType.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/source/Commands/CommandObjectFrame.cpp
M lldb/source/Plugins/Process/scripted/ScriptedFrame.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedFramePythonInterface.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedFramePythonInterface.h
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
M lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
M lldb/test/API/functionalities/scripted_frame_provider/test_frame_providers.py
Log Message:
-----------
[lldb] Treat synthetic variables as locals (#204431)
>From the discussion in #204177: Synthetic variables were, if they
weren't variables already, created with their original type plus a flag
that they're synthetic (`ValueTypeSyntheticMask`). This could lead to
unexpected results. For example, when a synthetic frame would return a
value derived from a global variable in `GetVariables`, the created
variable would be treated as a synthetic global variable.
With this PR, synthetic frames can overwrite the value type of the
variables they return.
Commit: 683ddb8369cfae6a4ffcd1db32de21e0023f3fdf
https://github.com/llvm/llvm-project/commit/683ddb8369cfae6a4ffcd1db32de21e0023f3fdf
Author: PaulXiCao <paulxicao7 at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M libcxx/docs/Status/Cxx26Issues.csv
M libcxx/docs/Status/Cxx26Papers.csv
Log Message:
-----------
[libc++] LWG4557: Remove `constexpr` from `owner_less` and `owner_before` (#191534)
Closes #189885.
The implementation was already conformant. Adding status tracking
updates.
Commit: 21725d26dee4a527a99ec43fefd4b60ca319a14a
https://github.com/llvm/llvm-project/commit/21725d26dee4a527a99ec43fefd4b60ca319a14a
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M flang/docs/Extensions.md
M flang/lib/Parser/prescan.cpp
A flang/test/Preprocessing/carriage-return.f90
Log Message:
-----------
[flang] Treat a bare carriage return as whitespace outside literals (#206171)
Free-form (and fixed-form) source files authored or transferred on
Windows can contain a stray carriage return (0x0d or \r) in the interior
of a line, for example between a token and a trailing '&' continuation
marker:
COMMON/CM1/<CR> &
flang rejected such files with "bad character (0x0d) in Fortran token",
whereas the other compilers accept them. Carriage returns that form a
clean CRLF line ending were already tolerated; only a CR in the
significant part of a line tripped the error.
The fix is to skip over the stray <CR> outside of character literals.
Assisted-by: AI
Commit: c093e98f81f6b3a1a13416cf5db56f90ccb30565
https://github.com/llvm/llvm-project/commit/c093e98f81f6b3a1a13416cf5db56f90ccb30565
Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M mlir/cmake/modules/AddMLIRPython.cmake
Log Message:
-----------
[mlir][build] Pass extra compiler/linker flags to `add_mlir_python_modules` (#204230)
`add_mlir_python_modules()` is used to build the nanobind runtime
library and dialect extension DSOs with a default set of compile and
link options. Projects using these modules may need to augment these
options to handle the warnings of this specific part of the build
differently or to add specific libraries to the shared objects. This
patch introduces four optional CMake variables that allow callers to
provide additional compiler and linker flags:
```
MLIR_BINDINGS_PYTHON_EXTRA_NANOBIND_COMPILE_OPTIONS
MLIR_BINDINGS_PYTHON_EXTRA_NANOBIND_LINK_LIBS
MLIR_BINDINGS_PYTHON_EXTRA_EXTENSION_COMPILE_OPTIONS
MLIR_BINDINGS_PYTHON_EXTRA_EXTENSION_LINK_LIBS
```
NFC if the new cmake variables are unset.
Commit: 65e2b0ef53e17ecd32a4ec370535612d7b0acf09
https://github.com/llvm/llvm-project/commit/65e2b0ef53e17ecd32a4ec370535612d7b0acf09
Author: Igor Wodiany <igor.wodiany at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/docs/TableGen/BackEnds.rst
M llvm/include/llvm/TableGen/SearchableTable.td
M llvm/test/TableGen/generic-tables.td
M llvm/utils/TableGen/SearchableTableEmitter.cpp
Log Message:
-----------
[TableGen] Add support for sparse direct-lookup tables (#201158)
This change is motivated by the recent AMDGPU patch (#200241) where a
sparse direct-lookup table is generated manually to improve VOPD
eligibility lookup. The `GenericTable` only generates a direct lookup
for continuous tables, defaulting to binary search for non-continuous
spaces. This patch extends the `GenericTable` to support sparse tables.
Currently it is implemented as an opt-in feature, however the long-term
vision is to heuristically decide the best lookup scheme. Setting
`DisallowSparseTable = false` opts a table in: TableGen will emit a
sparse array as long as certain conditions are met (key space <= 4K
entries, single primary `bits<>` key, no secondary search indices,
etc.). For example:
```
def VOPDXYTable : GenericTable {
let FilterClass = "VOPDXY";
let CppTypeName = "VOPDXYInfo";
let Fields = ["VOPDXYKey", "IsX", "IsY"];
let PrimaryKey = ["VOPDXYKey"];
let PrimaryKeyName = "getVOPDXYInfo";
let DisallowSparseTable = false;
}
```
Generates following C++ code:
```c++
#ifdef GET_VOPDXYTable_DECL
const VOPDXYInfo *getVOPDXYInfo(uint16_t VOPDXYKey);
#endif
#ifdef GET_VOPDXYTable_IMPL
constexpr VOPDXYInfo VOPDXYTable[] = {
{ 0x1, {}, {} }, // 0
{ 0x0, {}, {} }, // 1
{ 0x0, {}, {} }, // 2
{ 0x0, {}, {} }, // 3
{ 0x0, {}, {} }, // 4
{ 0x0, {}, {} }, // 5
{ 0x0, {}, {} }, // 6
{ 0x0, {}, {} }, // 7
{ 0x0, {}, {} }, // 8
{ 0x0, {}, {} }, // 9
{ 0x0, {}, {} }, // 10
{ 0x0, {}, {} }, // 11
{ 0x0, {}, {} }, // 12
{ 0x0, {}, {} }, // 13
{ 0x0, {}, {} }, // 14
{ 0x0, {}, {} }, // 15
{ 0x0, {}, {} }, // 16
{ 0x0, {}, {} }, // 17
{ 0x0, {}, {} }, // 18
{ 0x0, {}, {} }, // 19
{ 0x14, true, true }, // 20
{ 0x0, {}, {} }, // 21
{ 0x16, true, true }, // 22
{ 0x0, {}, {} }, // 23
{ 0x18, true, true }, // 24
{ 0x0, {}, {} }, // 25
{ 0x1A, true, true }, // 26
{ 0x1B, true, true }, // 27
{ 0x1C, true, true }, // 28
{ 0x1D, true, true }, // 29
{ 0x0, {}, {} }, // 30
{ 0x0, {}, {} }, // 31
{ 0x0, {}, {} }, // 32
...
{ 0x0, {}, {} }, // 2046
{ 0x0, {}, {} }, // 2047
};
const VOPDXYInfo *getVOPDXYInfo(uint16_t VOPDXYKey) {
if (VOPDXYKey >= 2048)
return nullptr;
const auto *Entry = &VOPDXYTable[VOPDXYKey];
return Entry->VOPDXYKey == VOPDXYKey ? Entry : nullptr;
}
#endif
```
Assisted-by: Claude Code
Commit: 11332c60443d4c70923d5518f64fca54e513fe98
https://github.com/llvm/llvm-project/commit/11332c60443d4c70923d5518f64fca54e513fe98
Author: A. Jiang <de34 at live.cn>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M libcxx/docs/Status/Cxx29Issues.csv
M libcxx/include/__iterator/move_iterator.h
M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.const/default.pass.cpp
Log Message:
-----------
[libc++] Implement LWG4125: `move_iterator`'s default constructor should be constrained (#206427)
- The default constructor is not yet defaulted as indicated by the
resolution of LWG4125, because the effects of defaulted-ness is not
strictly observable. Also, it's arguable not feasible to use default
member initializer `= _Iter()` because it might cause non-conforming
behavior in pre-C++17 modes, due to lack of guaranteed RVO.
- In the test file, `NoDefaultCtr` is replaced with a proper iterator
type `cpp20_input_iterator<int*>` to make the test more pedantically
conforming.
Commit: e7ce27f5d7940850cf5f7c3517881f489f5a4b97
https://github.com/llvm/llvm-project/commit/e7ce27f5d7940850cf5f7c3517881f489f5a4b97
Author: Luke Lau <luke at igalia.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/test/CodeGen/RISCV/rvv/sifive-O0-ATM-ATK.ll
M llvm/test/CodeGen/RISCV/rvv/sifive-xsfmm-vset-insert.mir
Log Message:
-----------
[RISCV] Don't run insertVSETMTK if +xsfmmbase isn't present (#206426)
I'm not familiar with xsfmmbase but IIUC we don't need to run those
passes if the extension isn't present, so this saves some compile time
when the feature isn't enabled.
Some tests were missing the sifive-O0-ATM-ATK.ll extension so I've added
the feature, which caused one of the vsetvlis to turn into a sf.vsettnt
Commit: bb5c81ed00580c2df48c0dab502f83519662fc42
https://github.com/llvm/llvm-project/commit/bb5c81ed00580c2df48c0dab502f83519662fc42
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaChecking.cpp
M clang/test/Sema/attr-const-pure.c
Log Message:
-----------
Revert "Diagnose noreturn calls from a const or pure function" (#206523)
Reverts llvm/llvm-project#206134
```
llvm/llvm-project/llvm/lib/Support/APFloat.cpp:4370](https://cs.corp.google.com/piper///depot/google3/llvm/llvm-project/llvm/lib/Support/APFloat.cpp?l=4370&ws=llvm-integration/4563832&snapshot=44):3: error: calling a 'noreturn' function from a function with the 'pure' attribute is undefined behavior [-Werror,-Wnoreturn-const-pure]
4370 | llvm_unreachable("didn't find the set bit");
| ^
[llvm/llvm-project/llvm/include/llvm/Support/ErrorHandling.h:169](https://cs.corp.google.com/piper///depot/google3/llvm/llvm-project/llvm/include/llvm/Support/ErrorHandling.h?l=169&ws=llvm-integration/4563832&snapshot=44):31: note: expanded from macro 'llvm_unreachable'
169 | #define llvm_unreachable(msg) LLVM_BUILTIN_UNREACHABLE
| ^
[llvm/llvm-project/llvm/include/llvm/Support/Compiler.h:485](https://cs.corp.google.com/piper///depot/google3/llvm/llvm-project/llvm/include/llvm/Support/Compiler.h?l=485&ws=llvm-integration/4563832&snapshot=44):57: note: expanded from macro 'LLVM_BUILTIN_UNREACHABLE'
485 | # define LLVM_BUILTIN_UNREACHABLE __builtin_unreachable()
| ^
[llvm/llvm-project/llvm/lib/Support/APFloat.cpp:4344](https://cs.corp.google.com/piper///depot/google3/llvm/llvm-project/llvm/lib/Support/APFloat.cpp?l=4344&ws=llvm-integration/4563832&snapshot=44):16: note: function declared 'pure' here
4344 | int IEEEFloat::getExactLog2Abs() const {
| ^
1 error generated.
```
Commit: 857b0facaecf40aaee02d8aba5042db9663f3fce
https://github.com/llvm/llvm-project/commit/857b0facaecf40aaee02d8aba5042db9663f3fce
Author: jeanPerier <jperier at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/test/Fir/present-absent-if-fold.fir
Log Message:
-----------
[flang][fir] fix fir.if canonicalization pattern from #205353 (#205757)
Address
https://github.com/llvm/llvm-project/pull/205353/files#r3468970484
Commit: cd9acde3d0a1203e1dcb8fde3e1cfd600582ef42
https://github.com/llvm/llvm-project/commit/cd9acde3d0a1203e1dcb8fde3e1cfd600582ef42
Author: Erich Keane <ekeane at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Lowering/LoweringHelpers.cpp
M clang/test/CIR/CodeGen/agg-expr-lvalue.c
M clang/test/CIR/CodeGen/agg-init-constexpr.cpp
A clang/test/CIR/CodeGen/anonymous-nested-init.c
M clang/test/CIR/CodeGen/array.cpp
A clang/test/CIR/CodeGen/bitfield-init-values.c
M clang/test/CIR/CodeGen/bitfields.cpp
M clang/test/CIR/CodeGen/const-array-floating-point.c
M clang/test/CIR/CodeGen/constant-inits.cpp
M clang/test/CIR/CodeGen/constexpr-ptr-offset.cpp
A clang/test/CIR/CodeGen/cross-reference-globals.c
M clang/test/CIR/CodeGen/global-dtor-union-narrowed.cpp
M clang/test/CIR/CodeGen/globals.cpp
M clang/test/CIR/CodeGen/lambda.cpp
M clang/test/CIR/CodeGen/paren-list-agg-init.cpp
M clang/test/CIR/CodeGen/record-zero-init-padding.c
M clang/test/CIR/CodeGen/replace-global.cpp
M clang/test/CIR/CodeGen/self-ref-temporaries.cpp
M clang/test/CIR/CodeGen/struct-init.cpp
M clang/test/CIR/CodeGen/union-agg-init.c
A clang/test/CIR/CodeGenCXX/base-layout.cpp
M clang/test/CIR/CodeGenCXX/global-refs.cpp
M clang/test/CIR/CodeGenCXX/sizeof-pack.cpp
M clang/test/CIR/CodeGenCXX/zero_init_bases.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
A clang/test/CIR/IR/const-record-union.cir
M clang/test/CIR/IR/invalid-const-record.cir
M clang/test/CIR/Lowering/array.cpp
Log Message:
-----------
[CIR] Rewrite `ConstRecordBuilder` to be based on layout (#206137)
Note: this is a pretty sizable change, and for that I apologize.
Fortunately most of it is test changes, and the actual generation code
is fairly managable. Unfortunately this couldn't really get any smaller,
as the individual actual differences (unions, arrays, etc) all cascade.
The existing implementation of the ConstRecordBuilder mirrors the
ConstStructBuilder from classic codegen. In both cases, this is a type
that attempts to do a layout of the record/struct type in a
byte-compatible way with the actual struct layout for the purposes of a
constant.
This has a few problems:
First: it is another layout that we have to keep in sync with the main
one.
Second: it adds an additional layer of complexity to the IR in a way
that is mildly confusing.
Third: Most importantly, this attempts to be byte compatible, but NOT
field compatible. This results in inconsistent field/padding/etc in the
structs, so any time we access one via a member-wise GEP (rather than
casting to i8, which we've been attempting to do!), we end up with
mismatched GEPs, incorrect values, and in some cases, LLVM-IR Dialect
verification errors (since doing a member-wise GEP will cause mismatched
types).
For these reasons, I believe this to be the 'correct' way forward.
This DOES result in a handful of visible changes:
-Bitfields are represented as their storage type, which can make them
seem odd.
-Arrays are no longer stored as a struct of values + zeroes. Arrays in
CIR have 'trailing zeros' as a concept, so this is unnecessary for CIR
anyway. These are unfortunately currently lowered to full-arrays in
LLVM, so can result in massive 'zero' lists. However #205918 intends to
fix this.
-"Inline" constants are now promoted to private "global" constants more
often. This is because of an optimization we have in LoweringPrepare
which does this if it sees a constant immediately put in an alloca. This
didn't happen previously, because we would have to Bitcast it, losing
that ability.
-Fewer bitcasts: We lose a bunch of bitcasts because the types match
now!
Note: This is a pretty sizable change, so I suspect we'll see a handful
of regressions here on things that I missed as they don't have test
coverage that reproduces them. I will likely need to be responding to
these, so if you notice something like this, please let me know!
ONE such regression that I'm aware of is Flexible Array Members. I have
a patch in my local tree that fixes this, but it touches quite a bit of
other stuff and makes this an even bigger patch, so I've left an NYI
here. I'll do that as a followup after this is merged.
AI Disclosure: A few weeks ago I used Claude to generate #201430 which
attempts to accomplish the same thing. When doing self-review on that, I
found that it wasn't fit for task, and didn't accomplish what I wanted.
Therefore, I implemented this from scratch myself, however, influenced
by that patch at times. I also kept the tests from that implementation,
as I found them useful to cover the cases I was concerned about.
Commit: b787f869122662b29800407e381798b37c69a286
https://github.com/llvm/llvm-project/commit/b787f869122662b29800407e381798b37c69a286
Author: sujianIBM <Jian.Su at ibm.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/stack-protector-guard.c
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
R llvm/test/CodeGen/SystemZ/zos-stack-protector.ll
Log Message:
-----------
Revert "[SystemZ][z/OS] Add support of stack guard on z/OS (#206045)" (#206532)
This reverts commit 7e4c74348e4d4e912db9c103636b37dda3b4b22f.
The test added in the reverted PR fails on
https://lab.llvm.org/buildbot/#/builders/187/builds/21322/steps/7/logs/FAIL__LLVM__zos-stack-protector_ll.
Commit: 9061a88420f3ad73d372a09ce14fc175d80d499a
https://github.com/llvm/llvm-project/commit/9061a88420f3ad73d372a09ce14fc175d80d499a
Author: Yair Ben Avraham <yairba at protonmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
M clang/test/CodeGen/AArch64/neon-2velem.c
M clang/test/CodeGen/AArch64/neon-intrinsics.c
M clang/test/CodeGen/AArch64/neon-scalar-x-indexed-elem.c
M clang/test/CodeGen/AArch64/neon/fused-multiple-fullfp16.c
M clang/test/CodeGen/AArch64/neon/fused-multiply.c
M clang/test/CodeGen/AArch64/v8.2a-neon-intrinsics.c
Log Message:
-----------
[CIR][AArch64] Lower vfma and scalar FMA lane builtins (#204819)
Lower additional AArch64 NEON fused multiply-accumulate builtins in CIR.
This covers:
* `BI__builtin_neon_vfma_v`: `vfma_f16`, `vfma_f32`, `vfma_f64`
* `BI__builtin_neon_vfma_lane_v`: `vfma_lane_f16`, `vfma_lane_f32`,
`vfma_lane_f64`
* `BI__builtin_neon_vfmah_lane_f16`: `vfmah_lane_f16`
* `BI__builtin_neon_vfmah_laneq_f16`: `vfmah_laneq_f16`
* `BI__builtin_neon_vfmas_lane_f32`: `vfmas_lane_f32`
* `BI__builtin_neon_vfmas_laneq_f32`: `vfmas_laneq_f32`
`vfma_v` and `vfma_lane_v` reuse the corresponding quad FMA lowering
paths. Vector lane forms splat the selected vector element, while scalar
lane/laneq forms extract the selected lane before emitting `llvm.fma`.
Represent NEON `Poly128` as a 16-byte integer vector in CIR, matching
classic CodeGen. This avoids an unrelated `Poly128` NYI when lowering
the f16 laneq wrapper.
Add direct LLVM, CIR-to-LLVM, and CIR coverage for every listed ACLE
wrapper in the existing fused-multiply tests. Tighten the moved LLVM
checks so FileCheck captures are introduced where values are produced
instead of inside `llvm.fma` calls.
Part of #185382
Follow-up to #202337
Commit: 9f2d7111747d873e5c663d2fbb5c0ea088655912
https://github.com/llvm/llvm-project/commit/9f2d7111747d873e5c663d2fbb5c0ea088655912
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/X86/add-sub-nsw-intmin.ll
Log Message:
-----------
[SLP][NFC]Add a test with the incorrect nsw attr propagation, NFC
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/206539
Commit: 159d3779e3a9263e2881ed18a035ee9b937a5944
https://github.com/llvm/llvm-project/commit/159d3779e3a9263e2881ed18a035ee9b937a5944
Author: Vladimir Vereschaka <vvereschaka at accesssoftek.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M libcxx/test/libcxx/text/text_encoding/environment.pass.cpp
Log Message:
-----------
[libc++][test] XFAIL `text/text_encoding/environment.pass.cpp` test on Armv7/Linux Ubuntu targets. (#206188)
The test gets failed on Armv7/Linux Ubuntu board during remote execution
when cross-compiling on the Windows build host with the following
message:
Environment mismatch: Expected ID 3, received: {106,UTF-8}
Temporary XFAIL this test till investigation of the problem.
See #141312 for details
Commit: a20ff535969df253c878d6e512ccf482cd4af1b6
https://github.com/llvm/llvm-project/commit/a20ff535969df253c878d6e512ccf482cd4af1b6
Author: shivaramaarao <58245296+shivaramaarao at users.noreply.github.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M flang/test/Integration/split-lto-unit-2.f90
Log Message:
-----------
Fixing the testcase failure in arm64 darwin systems (#206223)
For apple targets, the string EnableSplitLTOUnit is not emitted in
fulllto. Marking the test unsupported for this targets.
Commit: 8444891e4d52b901066b26c313120aa771de182c
https://github.com/llvm/llvm-project/commit/8444891e4d52b901066b26c313120aa771de182c
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M libcxx/src/filesystem/path.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.gen/lexically_normal.pass.cpp
Log Message:
-----------
[libc++] Do not remove a root-name followed by ".." in `path::lexically_normal()` (#201261)
For Windows paths like `"C:.."`, `path::lexically_normal()` should
preserve both the root-name and the `".."` component. In
[fs.path.generic]p6, clause (5) prescribes removing `".."` only after
non-dot-dot filenames. Since a root-name is not a filename, this clause
does not apply. Clause (6) only applies when there is a root-directory,
which is absent in this case. Therefore, the root-name and these `".."`
components should not be removed.
This change aligns `libc++` with MSSTL.
Commit: dc84cd36b0ba398874bfaf523fd2db933cb156de
https://github.com/llvm/llvm-project/commit/dc84cd36b0ba398874bfaf523fd2db933cb156de
Author: yonghong-song <yhs at fb.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/BPF/BPFMIPeephole.cpp
M llvm/lib/Target/BPF/BPFTargetMachine.cpp
Log Message:
-----------
[BPF] Avoid stack argument fatal error with O0 optimization (#206398)
Upstream reported a compiler fatal error with stack arguments ([1]). The
source code:
```
void f(int, int, int, int, int, int);
int main(void)
{
f(0, 0, 0, 0, 0, 0);
return 0;
}
```
The compilation flag: `clang --target=bpf -O0 -c t.c`
The failure symptom:
```
fatal error: error in backend: Unsupported instruction : <MCInst 338 <MCOperand Imm:-8> <MCOperand Reg:2>>
```
The failure reason is due to `BPF PreEmit Peephole Optimization`. It is
supposed to convert
```
STORE_STACK_ARG_PSEUDO -8, killed $r1
```
to
```
STD killed $r1, $r11, -8
```
Otherwise, the `BPF Assembly Printer` pass does not understand
`STORE_STACK_ARG_PSEUDO` and caused the crash.
To fix the issue, two things happened:
1. In `BPFTargetMachine.cpp`, remove `getOptLevel() !=
CodeGenOptLevel::None` checking. This is redundant as the same checking
(with `skipFunction())` in `BPFMIPeephole.cpp`. For `skipFunction()`, if
opt level is `None`, the function will be skipped.
2. In `BPFMIPeephole.cpp`, do `expandStackArgPseudos()` before
`skipFunction()` checking. This fixed the problem.
[1] https://github.com/llvm/llvm-project/issues/205647
Commit: d0c64764ebd4be00a02d449250fe0436fcf8d70a
https://github.com/llvm/llvm-project/commit/d0c64764ebd4be00a02d449250fe0436fcf8d70a
Author: Andrew Haberlandt <ahaberlandt at apple.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
Log Message:
-----------
[sanitizer_common] [Darwin] Update version mapping for macOS 27-aligned releases (#204608)
This updates `MapToMacos` et. al. to produce correct results for macOS
26 and macOS 27-aligned releases.
rdar://177997021
rdar://169356606
Commit: 1e1d455e977d8028decd3af5e5af6f93cd64a7fc
https://github.com/llvm/llvm-project/commit/1e1d455e977d8028decd3af5e5af6f93cd64a7fc
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
A llvm/test/Transforms/LoopVectorize/VPlan/buildvector-first-lane-only.ll
Log Message:
-----------
[LV] Add test with missing fold of buildvector (NFC). (#206540)
Add test where we create a build vector with only the first lane used.
Commit: a8918b6bf3b983069fddc5c9bceef73fdf962a28
https://github.com/llvm/llvm-project/commit/a8918b6bf3b983069fddc5c9bceef73fdf962a28
Author: Aditya Medhane <sherlockedaditya at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/include/llvm/ADT/GenericUniformityImpl.h
M llvm/include/llvm/Bitcode/BitcodeConvenience.h
M llvm/include/llvm/ProfileData/Coverage/MCDCTypes.h
M llvm/include/llvm/Support/CheckedArithmetic.h
M llvm/lib/MC/MCParser/GOFFAsmParser.cpp
M llvm/lib/ProfileData/ItaniumManglingCanonicalizer.cpp
M llvm/tools/llvm-rc/ResourceFileWriter.cpp
Log Message:
-----------
Fix -Wunused-template in assorted LLVM library helpers (NFC) (#202988)
Function templates across a few low-level LLVM libraries trip
`-Wunused-template`. Two kinds of fix here:
- Header templates with internal linkage. `CheckedArithmetic.h`: move
`checkedOp` out of the anonymous namespace into `llvm::detail` and
update its callers. `BitcodeConvenience.h`: drop `static` on `emitOps`.
`MCDCTypes.h`: drop `static` on `getParams`. Templates are implicitly
inline, so this is a linkage-only change.
- Dead code with no callers, removed: `makeNode` in
`ItaniumManglingCanonicalizer.cpp` (a base-class helper shadowed by the
derived class), `addDirectiveHandler` in `GOFFAsmParser.cpp`, and
`getWithDefault` in `ResourceFileWriter.cpp`.
NFC.
Part of #202945.
Commit: c4bb83ea5bd8a1f61808932d80de8e49f2a08475
https://github.com/llvm/llvm-project/commit/c4bb83ea5bd8a1f61808932d80de8e49f2a08475
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M flang-rt/lib/runtime/__ppc_intrinsics.f90
M flang-rt/lib/runtime/__ppc_types.f90
M flang-rt/lib/runtime/mma.f90
Log Message:
-----------
[Flang-RT] Make implicit PPC intrinsic uses explicit (#206493)
The PPC-specific builtin moduls have implicit dependencies insert by
flang. For CMake to correctly setup the build order, they must be made
explicit.
This replicates the implicit module uses from
https://github.com/llvm/llvm-project/blob/12b20b36737094b1c521adff0c8f58aaaf2f41fb/flang/lib/Semantics/semantics.cpp#L680-L693
in the modules themselves. The PPC-specific modules compiled by Flang-RT
are listed here:
https://github.com/llvm/llvm-project/blob/12b20b36737094b1c521adff0c8f58aaaf2f41fb/flang-rt/lib/runtime/CMakeLists.txt#L213-L219
This should fix the intermittend build error mentioned in
https://github.com/llvm/llvm-project/pull/205634#issuecomment-4829653483.
Unfortunately I do not have a PowerPC (cross-)compilation build
environment ready to test, nor does the Premerge-CI build it.
Commit: e192ec42b426f6ffbc25419238a90f3c59088587
https://github.com/llvm/llvm-project/commit/e192ec42b426f6ffbc25419238a90f3c59088587
Author: Petr Hosek <phosek at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M bolt/CMakeLists.txt
M clang/CMakeLists.txt
M compiler-rt/CMakeLists.txt
M flang/CMakeLists.txt
M libc/CMakeLists.txt
M libclc/CMakeLists.txt
M libcxx/CMakeLists.txt
M libcxxabi/CMakeLists.txt
M libsycl/CMakeLists.txt
M libunwind/CMakeLists.txt
M lld/CMakeLists.txt
M lldb/CMakeLists.txt
M llvm-libgcc/CMakeLists.txt
M llvm/CMakeLists.txt
M mlir/CMakeLists.txt
M offload/CMakeLists.txt
M openmp/CMakeLists.txt
M orc-rt/CMakeLists.txt
M polly/CMakeLists.txt
M runtimes/CMakeLists.txt
Log Message:
-----------
[CMake] Warn when the version of CMake is older than 3.31.0 (#204203)
This is a preparation to raise the minimum required CMake version to
3.31.0 in LLVM 24.
See
https://discourse.llvm.org/t/rfc-raising-minimum-required-cmake-version-to-3-31/91086.
Commit: 7ef23059f29f9632d6dce4cc07577ac6c3681a97
https://github.com/llvm/llvm-project/commit/7ef23059f29f9632d6dce4cc07577ac6c3681a97
Author: Tim Besard <tim.besard at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/NVPTX/CMakeLists.txt
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.h
M llvm/lib/Target/NVPTX/NVPTX.h
A llvm/lib/Target/NVPTX/NVPTXAddressFolder.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrFormats.td
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
A llvm/test/CodeGen/NVPTX/address-folder.ll
A llvm/test/CodeGen/NVPTX/address-folder.mir
Log Message:
-----------
[NVPTX] Fold symbol addresses into memory operands (reland) (#205983)
Re-lands https://github.com/llvm/llvm-project/pull/202379, which was
reverted in https://github.com/llvm/llvm-project/pull/205852. The test
failures were introduced because the original PR was stale after
#204192, so I've updated the test in here.
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>
Commit: 1acc7ba87598c971570f7b7d57604f68e9c08f1a
https://github.com/llvm/llvm-project/commit/1acc7ba87598c971570f7b7d57604f68e9c08f1a
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/Lanai/CMakeLists.txt
Log Message:
-----------
[Lanai] Add missing dependencies (#206546)
For LanaiCodeGenPassBuilder introduced in
016954e1489dbd8daf94baf3372dae2b7f2684e3.
Commit: 387c0b0c114b05d8d739ae336a486d611edfc0b8
https://github.com/llvm/llvm-project/commit/387c0b0c114b05d8d739ae336a486d611edfc0b8
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/Lanai/LanaiDelaySlotFiller.cpp
A llvm/test/CodeGen/Lanai/machine-verifier-regression.ll
Log Message:
-----------
[Lanai] Fix delay slot filler for ret instructions
Ret instructions have two delay slots, but only one was being bundled.
This had the potential to leave instructions after the terminator.
Co-Authored-By: Jacques Pienaar <jpienaar at google.com>
Reviewers: jpienaar
Pull Request: https://github.com/llvm/llvm-project/pull/206191
Commit: e508d49da5c4518809976f2791516d9a72d38544
https://github.com/llvm/llvm-project/commit/e508d49da5c4518809976f2791516d9a72d38544
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/add-sub-nsw-intmin.ll
Log Message:
-----------
[SLP] Drop nsw when add/sub interchange negates INT_MIN
BinOpSameOpcodeHelper unifies add and sub by negating a constant operand.
Negating INT_MIN overflows and yields INT_MIN, but add nsw X, INT_MIN and
sub nsw X, INT_MIN have opposite validity domains, so nsw is invalid on the
converted lane and must be dropped.
Fixes #206474.
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/206558
Commit: e2eaf1c350de189663eba3db5e67f591a21a1059
https://github.com/llvm/llvm-project/commit/e2eaf1c350de189663eba3db5e67f591a21a1059
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/Lanai/LanaiDelaySlotFiller.cpp
M llvm/test/CodeGen/Lanai/constant_multiply.ll
M llvm/test/CodeGen/Lanai/delay_filler.ll
M llvm/test/CodeGen/Lanai/machine-verifier-regression.ll
M llvm/test/CodeGen/Lanai/multiply.ll
Log Message:
-----------
[Lanai] Make DelaySlotFiller handle implicit call operands
This allowed incorrectly moving an instruction defining a register
implicitly used by the call into the delay slot when the call dependend
on that register. We fix this by only skipping regmask operands.
Co-Authored-By: Jacques Pienaar <jpienaar at google.com>
Reviewers: jpienaar
Pull Request: https://github.com/llvm/llvm-project/pull/206192
Commit: 1b7c3e57bbc8e367ff8203e8818b018337319d7e
https://github.com/llvm/llvm-project/commit/1b7c3e57bbc8e367ff8203e8818b018337319d7e
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/Lanai/LanaiInstrInfo.td
M llvm/test/CodeGen/Lanai/machine-verifier-regression.ll
M llvm/test/CodeGen/Lanai/sub-cmp-peephole.ll
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/lanai_generated_funcs.ll.generated.expected
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/lanai_generated_funcs.ll.nogenerated.expected
Log Message:
-----------
[Lanai] BRCC should not set isBarrier
BRCC allows fall through, so we need to set isBarrier = 0, otherwise we
get machine verifier failures.
Co-Authored-By: Jacques Pienaar <jpienaar at google.com>
Reviewers: jpienaar
Pull Request: https://github.com/llvm/llvm-project/pull/206195
Commit: d9afdcf1b6d03f51059a1cbb298492a39b699825
https://github.com/llvm/llvm-project/commit/d9afdcf1b6d03f51059a1cbb298492a39b699825
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/test/CodeGen/Lanai/atomic-oversize.ll
M llvm/test/CodeGen/Lanai/codemodel.ll
M llvm/test/CodeGen/Lanai/comparisons_i32.ll
M llvm/test/CodeGen/Lanai/comparisons_i64.ll
M llvm/test/CodeGen/Lanai/constant_multiply.ll
M llvm/test/CodeGen/Lanai/delay_filler.ll
M llvm/test/CodeGen/Lanai/i32.ll
M llvm/test/CodeGen/Lanai/inlineasm-output-template.ll
M llvm/test/CodeGen/Lanai/lanai-misched-trivial-disjoint.ll
A llvm/test/CodeGen/Lanai/llc-pipeline-npm.ll
M llvm/test/CodeGen/Lanai/lowering-128.ll
M llvm/test/CodeGen/Lanai/lshift64.ll
M llvm/test/CodeGen/Lanai/machine-verifier-regression.ll
M llvm/test/CodeGen/Lanai/masking_setccs.ll
M llvm/test/CodeGen/Lanai/mem_alu_combiner.ll
M llvm/test/CodeGen/Lanai/multiply.ll
M llvm/test/CodeGen/Lanai/naked-fn-with-frame-pointer.ll
M llvm/test/CodeGen/Lanai/rshift64.ll
M llvm/test/CodeGen/Lanai/select.ll
M llvm/test/CodeGen/Lanai/set_and_hi.ll
M llvm/test/CodeGen/Lanai/shift.ll
M llvm/test/CodeGen/Lanai/stack-frame.ll
M llvm/test/CodeGen/Lanai/sub-cmp-peephole.ll
M llvm/test/CodeGen/Lanai/subword.ll
Log Message:
-----------
[Lanai] Add test coverage for NewPM
Just duplicate all the RUN lines to additionally call llc with the NewPM
given there are only a handful of tests.
Reviewers: jpienaar
Pull Request: https://github.com/llvm/llvm-project/pull/206200
Commit: 024987789acab7b41dbeb705a81b82b540836c79
https://github.com/llvm/llvm-project/commit/024987789acab7b41dbeb705a81b82b540836c79
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/Lanai/LanaiTargetMachine.h
Log Message:
-----------
[Lanai] Mark as verifier clean
Now that we have fixes for verifier failures on all the in-tree tests,
we can mark Lanai as verifier clean.
Reviewers: jpienaar
Pull Request: https://github.com/llvm/llvm-project/pull/206202
Commit: e86a26040872a3720196fa40148f150a0281b355
https://github.com/llvm/llvm-project/commit/e86a26040872a3720196fa40148f150a0281b355
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M flang/include/flang/Parser/openmp-utils.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Parser/openmp-utils.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/openmp-utils.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
Log Message:
-----------
[flang][OpenMP] Use utility functions to get things from OmpObject (#206066)
Instead of using std::get_if or parser::Unwrap, use utility functions.
This also adds two additional functions: GetLocatorFromObj and
GetCommonBlockFromObj.
Commit: d4b11ef0a5c1082af33aae119ca251da72e4375e
https://github.com/llvm/llvm-project/commit/d4b11ef0a5c1082af33aae119ca251da72e4375e
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fmed3.ll
Log Message:
-----------
[AMDGPU] Guard fneg-into-fmed3 fold with nnan (#203827)
Commit: 2a711f6cc2d4341a7c34ec6386cfbde718729ac5
https://github.com/llvm/llvm-project/commit/2a711f6cc2d4341a7c34ec6386cfbde718729ac5
Author: aokblast <aokblast at FreeBSD.org>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/Driver/ToolChains/Arch/X86.cpp
Log Message:
-----------
[Arch][X86] Raising FreeBSD low requirement to pentium4 (#183554)
Using pentium4 by default allows us to build 32bit compiler-rt.builtins
on x86_64 platform since _Float16 requires SSE2, which is only available
after pentium3. Since FreeBSD does not support x86 after 16-CURRENT. It
makes sense to put the x86_64 compatibility first.
In FreeBSD's base, we set the target to i686 with -sse2 to build 32bit
compiler-rt.builtins. But we don't ship x86 compiler-rt.builtins in our
llvm port.
Commit: debf392ce84868cec6b2dfece8940ba8e96acf89
https://github.com/llvm/llvm-project/commit/debf392ce84868cec6b2dfece8940ba8e96acf89
Author: Diksha <dgohlyan at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/tools/llvm-jitlink/CMakeLists.txt
Log Message:
-----------
[AArch64][llvm-jitlink] Fix two QNX cross-compile build failures (NFC) (#206290)
Fixes two build failures when cross-compiling LLVM for QNX
(aarch64-unknown-nto-qnx8.0.0).
gcc `-Wstringop-overread` false-positive in `AArch64InstructionSelector.cpp`:
GCC's static analysis misreads the SmallVector fill constructor in
`selectUnmergeValues()` as potentially reading `NumInsertRegs *
sizeof(Register)`
bytes from the 16-byte inline buffer of `SmallVector<Register, 4>`,
emitting:
```
warning: reading between 20 and 17179869180 bytes from a region of size 16 [-Wstringop-overread]
```
Replacing the constructor-then-move with `assign()` fills the already-live object in place,
which GCC can analyze correctly.
### 2. `llvm-jitlink` — undefined references to socket functions on QNX
On QNX, POSIX socket functions (`getaddrinfo`, `socket`, `connect`, `freeaddrinfo`, `gai_strerror`)
live in `libsocket` rather than libc. Without it the QNX cross-compile linker fails.
Mirrors the existing `target_link_libraries` pattern already present for SunOS and Haiku.
Assisted-by: Claude Sonnet 4.6 <noreply at anthropic.com>
Commit: 628fe7720ab3dd1e0997a613604d2d75d6e5b872
https://github.com/llvm/llvm-project/commit/628fe7720ab3dd1e0997a613604d2d75d6e5b872
Author: adams381 <adams at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
A clang/test/CIR/CodeGen/global-temporary-comdat.cpp
Log Message:
-----------
[CIR] Emit comdat for weak global temporaries (#206530)
A lifetime-extended temporary with static or thread storage takes its
extending variable's linkage. When that linkage is weak-for-linker -- an
inline variable or a variable template binding a const reference to a
temporary -- and the target supports COMDAT, classic CodeGen puts the
temporary's global in a comdat. CIRGen's getAddrOfGlobalTemporary hit
errorNYI for that case, so `inline const int &r = 42;` failed to compile
under -fclangir. It is a recurring blocker in the libcxx std/ suite
(flat_map/flat_set construction, vector<bool>, format ranges).
CIR globals already carry a comdat flag, and the weak-for-linker path
elsewhere in CIRGenModule already sets it; this does the same for the
materialized temporary. The existing comdat lowering emits the symbol-named
`comdat any`, so the lowered IR matches classic byte-for-byte.
Commit: 83bda78977d164b67d1ba2c4896514c2284d5bf4
https://github.com/llvm/llvm-project/commit/83bda78977d164b67d1ba2c4896514c2284d5bf4
Author: Lucas Chollet <lucas.chollet at serenityos.org>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
M llvm/lib/Target/RISCV/RISCVCallingConv.cpp
M llvm/lib/Target/RISCV/RISCVCallingConv.h
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
Log Message:
-----------
[RISCV] Make getArgGPRs take a const RISCVSubtarget & (NFC) (#206327)
This aligns the signature with getArgFPRs(), as suggested here:
https://github.com/llvm/llvm-project/pull/204929#discussion_r3462814724
Commit: 33feb48f59052e4a93766555d3944a036ef9a15f
https://github.com/llvm/llvm-project/commit/33feb48f59052e4a93766555d3944a036ef9a15f
Author: Fateme Hosseini <Fhossein at qti.qualcomm.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
A llvm/test/CodeGen/Hexagon/autohvx/postRA-qfp-v69-no-crash.ll
Log Message:
-----------
[Hexagon] Fix PostRA QFP pass crash on pre-v79 targets (#206529)
Gate the HexagonPostRAHandleQFP pass to only
run for v79+.
Fixes: https://github.com/llvm/llvm-project/issues/206301
Commit: 68600654ed72556b73dd5745f28bfe3c08883bfa
https://github.com/llvm/llvm-project/commit/68600654ed72556b73dd5745f28bfe3c08883bfa
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXMachineFunctionInfo.h
M llvm/test/CodeGen/NVPTX/call_bitcast_byval.ll
M llvm/test/CodeGen/NVPTX/convert-call-to-indirect.ll
M llvm/test/CodeGen/NVPTX/indirect_byval.ll
M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
M llvm/test/CodeGen/NVPTX/vaargs.ll
Log Message:
-----------
[NVPTX] Refactor prototype emission out of ISel (#203663)
Previously we horribly abused the TargetExternalSymbol operand to store
an assembly string. This required hacks and pushed assembly emission
into the SDAG ISel phase. Moving this will allow us to unify prototype
and function declaration/definition printing.
Commit: b2802b321e90215c3cae9793ccde8e3bc5b104ad
https://github.com/llvm/llvm-project/commit/b2802b321e90215c3cae9793ccde8e3bc5b104ad
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/Lanai/BUILD.gn
Log Message:
-----------
[gn build] Port 016954e1489d (#206571)
Commit: 73449c35dc358725b63c993ba79bceb520ec207f
https://github.com/llvm/llvm-project/commit/73449c35dc358725b63c993ba79bceb520ec207f
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/NVPTX/BUILD.gn
Log Message:
-----------
[gn build] Port 7ef23059f29f (#206572)
Commit: 2053a807f30d0fcba458255850e0eb0a17f18bde
https://github.com/llvm/llvm-project/commit/2053a807f30d0fcba458255850e0eb0a17f18bde
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
A llvm/test/Transforms/LoopVectorize/AArch64/widen-call-attrs-masked.ll
A llvm/test/Transforms/LoopVectorize/VPlan/print-attributes.ll
A llvm/test/Transforms/LoopVectorize/widen-call-attrs-interleave.ll
A llvm/test/Transforms/LoopVectorize/widen-call-attrs.ll
A llvm/test/Transforms/LoopVectorize/widen-intrinsic-cse.ll
A llvm/test/Transforms/LoopVectorize/widen-intrinsic-tail-fold.ll
M llvm/test/Transforms/LoopVectorize/widen-intrinsic.ll
Log Message:
-----------
[LV] Add call widening tests with various attributes. (NFC) (#206549)
Add tests with both wide library and intrinsic calls and various
function, return and argument attributes.
Commit: 5b116585a9a6b54c28c359fa92043335994592df
https://github.com/llvm/llvm-project/commit/5b116585a9a6b54c28c359fa92043335994592df
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Object/ArchiveWriter.cpp
Log Message:
-----------
[Object][ArchiveWriter] Factor out MemberData allocation (NFC) (#205157)
Factor out MemberData allocation in preparation for handling hybrid
object files, which may require creating additional archive members.
Commit: 86e23d23a2ee05d8f567ff6587b34a4de768b3b9
https://github.com/llvm/llvm-project/commit/86e23d23a2ee05d8f567ff6587b34a4de768b3b9
Author: adams381 <adams at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
A clang/test/CIR/CodeGen/enum-bool.cpp
Log Message:
-----------
[CIR] Load enums with a boolean underlying type (#205880)
emitLoadOfScalar reported NYI for any scalar whose type has a boolean
representation but isn't the builtin bool, so loading an enum with a fixed
bool underlying type (e.g. enum E : bool) failed to compile. The errorNYI
also left the function's entry block without a terminator, so the translation
unit then failed CIR module verification.
Such an enum converts to !cir.bool (via convertType of its underlying type),
and convertTypeForMem does not widen it, so the cir.load result is already the
literal CIR type CIR uses for that enum everywhere. CIR keeps bool in
!cir.bool through CIRGen and defers the in-memory i8 widening to LowerToLLVM
(see the emitToMemory comment), so no register/memory conversion is needed at
this point. The fix drops the errorNYI and returns the loaded value, matching
the plain-bool path directly above it.
The same guard also covered _BitInt(1), which converts to !cir.int<1> and
follows the identical deferral; it now loads too. This does not change the
in-memory representation of either type, which LowerToLLVM still owns.
The test covers load and store of an enum : bool across CIR, the CIR-lowered
LLVM, and classic CodeGen.
Commit: f15288c2af25d0aca6516ca0b9a09d0ca90f5888
https://github.com/llvm/llvm-project/commit/f15288c2af25d0aca6516ca0b9a09d0ca90f5888
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/VPlan/buildvector-first-lane-only.ll
Log Message:
-----------
[VPlan] Replace first-lane uses of BuildVector. (#206566)
Replace uses of the first lane of a BuildVector with the first operand.
Commit: 6197f832fff7d3ddeff5235848fba73e5b9b989b
https://github.com/llvm/llvm-project/commit/6197f832fff7d3ddeff5235848fba73e5b9b989b
Author: Vicky Nguyen <vicky.trucviennguyen at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/test/CodeGen/AArch64/neon/add.c
Log Message:
-----------
[CIR][test] Use global instcombine RUN line in AArch64 neon add.c (#206292)
Related to https://github.com/llvm/llvm-project/issues/185382
Follow-up to https://github.com/llvm/llvm-project/pull/204989
Include `instcombine` into the global LLVM RUN line and remove the
separate `LLVM-IC` prefix that only covered the narrowing-addition tests
in `clang/test/CodeGen/AArch64/neon/add.c`.
Update LLVM CHECK to match the `instcombine` output: bitcast checks are
dropped, the inferred `nsw`/`nuw` flags are added on the widening adds,
and unused shuffle operands are canonicalized to `poison`.
Commit: 1915dfacc28cec48e433cdab5352dfeaba00d2ed
https://github.com/llvm/llvm-project/commit/1915dfacc28cec48e433cdab5352dfeaba00d2ed
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp
Log Message:
-----------
[lldb][Windows] handle exception first to keep track of the stop reason (#206469)
`NativeProcessWindows::OnDebugException` called
`ProcessDebugger::OnDebugException` before handling the exception. That
ordering races on the first breakpoint:
1. The launch thread blocks in
`ProcessDebugger::WaitForDebuggerConnection`, waiting on
`m_initial_stop_event`.
2. A debug exception arrives and
`NativeProcessWindows::OnDebugException` is called.
3. It calls `ProcessDebugger::OnDebugException` first, which signals
`m_initial_stop_event` and wakes the launch thread.
4. Only then does `NativeProcessWindows::Handle...Exception` set the
process state and stop reason.
When the bug occurs, the launch thread wakes up (3) before the stop
reason is set (4), and the first stop can be reported with a missing or
wrong reason.
This patch handles the exception first, then calls
`ProcessDebugger::OnDebugException`.
It fixes the following flaky tests:
```
lldb-api :: commands/process/reverse-continue/TestReverseContinue.py
lldb-api :: functionalities/reverse-execution/TestReverseContinueBreakpoints.py
lldb-api :: functionalities/reverse-execution/TestReverseContinueWatchpoints.py
lldb-api :: tools/lldb-server/TestGdbRemoteAttach.py
lldb-api :: tools/lldb-server/TestGdbRemoteExitCode.py
lldb-api :: tools/lldb-server/TestGdbRemoteExpeditedRegisters.py
lldb-api :: tools/lldb-server/TestGdbRemoteThreadsInStopReply.py
lldb-api :: tools/lldb-server/TestGdbRemote_qThreadStopInfo.py
lldb-api :: tools/lldb-server/TestLldbGdbServer.py
lldb-api :: tools/lldb-server/TestNonStop.py
lldb-api :: tools/lldb-server/register-reading/TestGdbRemoteGPacket.py
```
Commit: b81dc125427ae769a270d160fe731e7ae40343c5
https://github.com/llvm/llvm-project/commit/b81dc125427ae769a270d160fe731e7ae40343c5
Author: adams381 <adams at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/test/CIR/CodeGenBuiltins/builtin-fpclassify.c
M clang/test/CIR/CodeGenBuiltins/builtin-isfpclass.c
M clang/test/CIR/CodeGenBuiltins/builtin-isinf-sign.c
Log Message:
-----------
[CIR] Model cir.is_fp_class flags as a bit-enum
`__builtin_isfpclass(x, flags)` takes an arbitrary 10-bit floating-point class mask, but `cir.is_fp_class` modeled its `flags` operand as a closed `I32EnumAttr` that only accepted the enumerated values. The generated `FPClassTestAttr::get` casts an `IntegerAttr` to `FPClassTestAttr`, and its `classof` rejects any non-enumerated mask, so CIRGen aborted on something as simple as `__builtin_isfpclass(x, 5)` (`fcSNan|fcNegInf`). The named classification builtins (`isnan`, `isinf`, `isfinite`, ...) dodged it only because they pass values that happen to be enumerated composites.
This remodels `FPClassTestEnum` as a bit-enum. The ten classes become single-bit cases at positions 0-9 (matching `llvm::FPClassTest`), with `fcNone` as the zero case and the composite aliases (`fcNan`, `fcInf`, `fcFinite`, and the rest) as case groups, so the generated `cir::FPClassTest::X` members and every existing call site keep working unchanged. Any mask in 0-1023 is now representable, and flags print pipe-delimited (`"fcSNan|fcNegInf"`) with `printBitEnumPrimaryGroups` so an exact group still prints as its keyword (`"fcInf"`). It adds a small `CIR_I32BitEnumAttr` wrapper, the dialect's first bit-enum.
`createIsFPClass` masks the flags to the valid 0-9 range (and asserts on stray bits) so the op cannot be built with an out-of-range mask; Sema already bounds the `__builtin_isfpclass` argument to `fcAllFlags`, so that path only guards against an internal slip.
@erichkeane suggested the bit-enum approach over a plain integer attribute; this follows that. `builtin-isfpclass.c` picks up non-enumerated-mask coverage, and the printed-flag form in the other `is_fp_class` tests is updated for the new syntax.
Commit: a873660edfcb5657fcdf7c2b74899f6583ccb598
https://github.com/llvm/llvm-project/commit/a873660edfcb5657fcdf7c2b74899f6583ccb598
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M lldb/include/lldb/Core/Debugger.h
M lldb/include/lldb/Core/Diagnostics.h
M lldb/source/Commands/CommandObjectDiagnostics.cpp
M lldb/source/Core/Debugger.cpp
M lldb/source/Core/Diagnostics.cpp
M lldb/test/Shell/Diagnostics/TestDump.test
Log Message:
-----------
[lldb] Collect a diagnostics bundle on the Diagnostics class (#206189)
Add Diagnostics::Collect, which gathers the state a triager needs into a
directory, best-effort (one failed section never sinks the rest): the
always-on log plus the debugger's file logs, statistics.json from
DebuggerStats, and a snapshot of the commands run first when triaging
(target list, image list, thread list, backtraces, image lookup, frame
variable).
It returns a Diagnostics::Report with the LLDB version, host, and how
LLDB was invoked, plus an Attachments holding the bundle directory and
the files written into it. Each file is recorded as it is written, so a
file that could not be created is simply absent from the list. The
report is expected to grow more fields over time.
`diagnostics dump` now calls Collect and prints the report as JSON to
the terminal instead of only reporting where the directory was written.
Here's what this all looks like:
```
(lldb) diagnostics dump
{
"attachments": {
"directory": "/var/folders/6b/3sb80ks56rz5vwlhsdvpsxmh0000gn/T/diagnostics-4b5e9f",
"files": [
"diagnostics.log",
"statistics.json",
"commands.txt"
]
},
"invocation": "./build/bin/count",
"os": "arm64-apple-macosx platform=host os=27.0 build=26A374",
"version": "lldb version 23.0.0git (git at github.com:llvm/llvm-project.git revision 85fa95f05bc5f0c6b4fd845141e522cd4b9589d7)\n clang revision 85fa95f05bc5f0c6b4fd845141e522cd4b9589d7\n llvm revision 85fa95f05bc5f0c6b4fd845141e522cd4b9589d7"
}
```
This is in preparation for a future PR which adds the ability to take
all this information and pre-fill a bug report with it.
Commit: 2628e61865a756a9375bf764cb81c6e0ddb722c2
https://github.com/llvm/llvm-project/commit/2628e61865a756a9375bf764cb81c6e0ddb722c2
Author: Sladyn <sladyn at meta.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/include/llvm/CodeGen/AsmPrinter.h
M llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
M llvm/include/llvm/CodeGen/MachinePassManager.h
M llvm/include/llvm/CodeGen/TargetFrameLowering.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/MachineFunctionPass.cpp
M llvm/test/CodeGen/AMDGPU/branch-folder-requires-no-phis.mir
M llvm/test/CodeGen/AMDGPU/machine-cse-ssa.mir
M llvm/test/CodeGen/AMDGPU/si-fold-operands-requires-ssa.mir
M llvm/test/CodeGen/MIR/AMDGPU/subreg-def-is-not-ssa.mir
M llvm/test/tools/llc/new-pm/machine-function-properties.mir
Log Message:
-----------
[CodeGen] Migrate report_fatal_error from CodeGen headers (#203656)
Replace deprecated report_fatal_error references in
llvm/include/llvm/CodeGen with reportFatalInternalError or
reportFatalUsageError based on the failure category.
MachineFunctionProperties verification failures indicate an internal
codegen pipeline invariant failure. Default target hooks for unsupported
functionality use reportFatalUsageError. Also update stale pseudocode in
IRTranslator.h.
Part of #138914.
Commit: 971a872cfa09d46a45aa9eed25d8879fbe8927aa
https://github.com/llvm/llvm-project/commit/971a872cfa09d46a45aa9eed25d8879fbe8927aa
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.ll
M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr.ll
M llvm/test/CodeGen/AMDGPU/siloadstoreopt-misaligned-regsequence.ll
A llvm/test/CodeGen/AMDGPU/v_mov_b64-isel.ll
Log Message:
-----------
[AMDGPU] Select `V_MOV_B64_e32` directly if a target supports it (#206135)
Commit: 2a215f473fb9ab5e4a2bf8cdc3ebe04a1ec560b0
https://github.com/llvm/llvm-project/commit/2a215f473fb9ab5e4a2bf8cdc3ebe04a1ec560b0
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clangd/Compiler.cpp
M clang/include/clang/Basic/DiagnosticOptions.def
M clang/include/clang/Basic/DiagnosticOptions.h
M clang/include/clang/Options/Options.td
M clang/lib/AST/ASTDumper.cpp
M clang/lib/Basic/Warnings.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/TextDiagnostic.cpp
M clang/lib/Frontend/TextDiagnosticPrinter.cpp
A clang/test/Misc/diagnostic-color-output-stream.cpp
M clang/unittests/Tooling/ToolingTest.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/TextDiagnosticPrinter.cpp
M flang/test/Driver/color-diagnostics.f90
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Log Message:
-----------
[Clang] Refactor and consolidate color diagnostic handling (#202441)
Summary:
This PR tries to consolidate the color output handling in Clang. The
motivation was noticing that `-Xclang -ast-dump` would not behave like
`-fcolor-diagnostics` and would output ANSI codes to a file when I tried
to pipe it.
This PR primarily turns the handling into a tri-state enum keyed off of
`-f[no]-color-diagnostics`. The default/auto case will be if the target
stream supports colors. Getting this to work required a lot of seemingly
unrelated plumbing.
Co-authored-by: Cursor <cursoragent at cursor.com>
Commit: aff85d3256dbfdf4934899a4b7336cff70d829bd
https://github.com/llvm/llvm-project/commit/aff85d3256dbfdf4934899a4b7336cff70d829bd
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
Log Message:
-----------
[AMDGPU] Add additional coverage tests for llvm.amdgcn.tanh, NFC (#202864)
Mainly for source modifiers: neg, abs and neg(abs)
---------
Co-authored-by: Claude Sonnet 4 <noreply at anthropic.com>
Commit: 162f44c11fafa1f4ce546f8ed22402e5d9bbc2aa
https://github.com/llvm/llvm-project/commit/162f44c11fafa1f4ce546f8ed22402e5d9bbc2aa
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-memory-op-decisions.ll
M llvm/test/Transforms/LoopVectorize/VPlan/vplan-print-before-after-all.ll
Log Message:
-----------
[VPlan] Widen unit stride accesses in makeMemOpWideningDecisions (NFCI) (#205013)
Add a new sub-pass to widen unit-stride accesses in
makeMemOpWideningDecisions.
Depends on https://github.com/llvm/llvm-project/pull/196842
PR: https://github.com/llvm/llvm-project/pull/205013
Commit: 88349019773ef26f7d68429fcfea93d09756aa2f
https://github.com/llvm/llvm-project/commit/88349019773ef26f7d68429fcfea93d09756aa2f
Author: Ben Langmuir <blangmuir at apple.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/CAS/ActionCaches.cpp
M llvm/lib/CAS/BuiltinCAS.cpp
Log Message:
-----------
[llvm][cas] Fix a couple of includes NFC (#206573)
Remove two unused includes, and add an include that was relying on
transitive includes. Noticed these in the diff between downstream and
upstream sources.
Commit: 25ae7149bc99333b4f8fdcd52bf7b8b551d1b3d0
https://github.com/llvm/llvm-project/commit/25ae7149bc99333b4f8fdcd52bf7b8b551d1b3d0
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M mlir/lib/Dialect/OpenACC/IR/OpenACCCG.cpp
M mlir/test/Dialect/OpenACC/invalid-cg.mlir
Log Message:
-----------
[mlir][acc] Improve verifier for workgroup memory operation (#206187)
Adds validity checks for the scaling and offset attributes that they
must be non-negative.
Commit: 0304e92b1578ab796c8eaa7538a3f4573284d6fb
https://github.com/llvm/llvm-project/commit/0304e92b1578ab796c8eaa7538a3f4573284d6fb
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.td
M clang/include/clang/Basic/BuiltinsAMDGPUDocs.td
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx9.cl
M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx9.cl
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
Log Message:
-----------
[AMDGPU] Add clang builtin for s_bitreplicate intrinsic (#206177)
Commit: f53db0093959cc0b7b02194789b38de7ca718373
https://github.com/llvm/llvm-project/commit/f53db0093959cc0b7b02194789b38de7ca718373
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
A clang/docs/AddressSanitizer.md
R clang/docs/AddressSanitizer.rst
A clang/docs/ClangStaticAnalyzer.md
R clang/docs/ClangStaticAnalyzer.rst
A clang/docs/CrossCompilation.md
R clang/docs/CrossCompilation.rst
A clang/docs/DataFlowSanitizer.md
R clang/docs/DataFlowSanitizer.rst
A clang/docs/FunctionEffectAnalysis.md
R clang/docs/FunctionEffectAnalysis.rst
A clang/docs/LanguageExtensions.md
R clang/docs/LanguageExtensions.rst
A clang/docs/LeakSanitizer.md
R clang/docs/LeakSanitizer.rst
A clang/docs/LifetimeSafety.md
R clang/docs/LifetimeSafety.rst
A clang/docs/MemorySanitizer.md
R clang/docs/MemorySanitizer.rst
A clang/docs/RealtimeSanitizer.md
R clang/docs/RealtimeSanitizer.rst
A clang/docs/ReleaseNotes.md
R clang/docs/ReleaseNotes.rst
A clang/docs/SafeBuffers.md
R clang/docs/SafeBuffers.rst
A clang/docs/SanitizerCoverage.md
R clang/docs/SanitizerCoverage.rst
A clang/docs/ScalableStaticAnalysis/index.md
R clang/docs/ScalableStaticAnalysis/index.rst
A clang/docs/ThreadSafetyAnalysis.md
R clang/docs/ThreadSafetyAnalysis.rst
A clang/docs/ThreadSanitizer.md
R clang/docs/ThreadSanitizer.rst
A clang/docs/Toolchain.md
R clang/docs/Toolchain.rst
A clang/docs/TypeSanitizer.md
R clang/docs/TypeSanitizer.rst
A clang/docs/UndefinedBehaviorSanitizer.md
R clang/docs/UndefinedBehaviorSanitizer.rst
A clang/docs/WarningSuppressionMappings.md
R clang/docs/WarningSuppressionMappings.rst
M llvm/utils/release/clear-release-notes.py
Log Message:
-----------
[docs] Rename selected clang docs to Markdown (#206181)
Tracking issue: https://github.com/llvm/llvm-project/issues/201242
Migration guide docs:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
RFC:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840
Rename 20 selected clang docs from reStructuredText to MyST Markdown
filenames.
This PR is intentionally limited to the rename phase and required
reference updates. The mechanical conversion and follow-up MyST cleanup
are in the stacked PR.
Commit: 609b651890d91b2157b4880ab74e8df1c1b73ae4
https://github.com/llvm/llvm-project/commit/609b651890d91b2157b4880ab74e8df1c1b73ae4
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/docs/AddressSanitizer.md
M clang/docs/ClangStaticAnalyzer.md
M clang/docs/CrossCompilation.md
M clang/docs/DataFlowSanitizer.md
M clang/docs/FunctionEffectAnalysis.md
M clang/docs/LanguageExtensions.md
M clang/docs/LeakSanitizer.md
M clang/docs/LifetimeSafety.md
M clang/docs/MemorySanitizer.md
M clang/docs/RealtimeSanitizer.md
M clang/docs/ReleaseNotes.md
M clang/docs/ReleaseNotesTemplate.txt
M clang/docs/SafeBuffers.md
M clang/docs/SanitizerCoverage.md
M clang/docs/ScalableStaticAnalysis/index.md
M clang/docs/ThreadSafetyAnalysis.md
M clang/docs/ThreadSanitizer.md
M clang/docs/Toolchain.md
M clang/docs/TypeSanitizer.md
M clang/docs/UndefinedBehaviorSanitizer.md
M clang/docs/WarningSuppressionMappings.md
M clang/docs/conf.py
Log Message:
-----------
[docs] Migrate 20 clang docs from reST to Markdown (#206182)
Tracking issue: https://github.com/llvm/llvm-project/issues/201242
Migration guide docs:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
RFC:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840
This stacked PR contains the rst2myst conversion and follow-up MyST
cleanup for the 20 clang docs renamed in #206181.
The migration was done with rst2myst with LLM cleanups.
Commit: 94f2ec5db59cd625266918d249f4b88aee038f88
https://github.com/llvm/llvm-project/commit/94f2ec5db59cd625266918d249f4b88aee038f88
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M .ci/green-dragon/lldb-windows.groovy
Log Message:
-----------
[lldb][Windows] also run tests with LLDB_TEST_USE_LLDB_SERVER=1 (#206511)
`LLDB_TEST_USE_LLDB_SERVER` defaults to 0, meaning that the green dragon
lldb config on Windows only tests lldb with the in process plugin.
This patch runs the test suite both with and without lldb-server.
This only affects
https://ci-external.swift.org/job/lldb-windows/job/main/.
Commit: ca80a06f96a42c675c7f30be6d240b81e8d17378
https://github.com/llvm/llvm-project/commit/ca80a06f96a42c675c7f30be6d240b81e8d17378
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M libc/hdr/CMakeLists.txt
M libc/hdr/regex_macros.h
M libc/src/__support/CMakeLists.txt
A libc/src/__support/regex/CMakeLists.txt
A libc/src/__support/regex/regex_ast.h
A libc/src/__support/regex/regex_expr_pool.cpp
A libc/src/__support/regex/regex_expr_pool.h
M libc/test/src/__support/CMakeLists.txt
A libc/test/src/__support/regex/CMakeLists.txt
A libc/test/src/__support/regex/expr_test.cpp
Log Message:
-----------
[libc] Add regex AST and ExprPool (#198728)
Implemented the core AST nodes and the ExprPool arena-based allocator.
Utilised AllocChecker for memory safety and enforced hardening at node
initialisation.
Assisted-by: Automated tooling, human reviewed.
Commit: 66ba51a9e0fbc62edc474f1cbf10f94554c80dd2
https://github.com/llvm/llvm-project/commit/66ba51a9e0fbc62edc474f1cbf10f94554c80dd2
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
Log Message:
-----------
[PGO] Fix malformed raw profile test (#206574)
PR #190708 added a uniform counter pointer to the raw profile data
record, but a hand-written raw profile test gained one extra zero word
in the record.
Remove the extra word so the name section starts at the offset expected
by the reader. This fixes the regression while keeping the test focused
on the malformed counter pointer.
Buildbot failure:
https://lab.llvm.org/buildbot/#/builders/24/builds/21581
Test:
```
~/git/scripts_shared/scripts/llvm/llvm-dev.sh llvm test llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
```
Commit: d50f1c06494679cf5590c9bf643bec80394be74c
https://github.com/llvm/llvm-project/commit/d50f1c06494679cf5590c9bf643bec80394be74c
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/include/clang/AST/HLSLResource.h
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
M clang/lib/CodeGen/HLSLBufferLayoutBuilder.h
A clang/test/CodeGenHLSL/resources/cbuffer_struct_passing_with_resources.hlsl
Log Message:
-----------
[HLSL] Implement codegen for copying cbuffer structs with resources (#204232)
Global-scope structs are in `hlsl_constant` address space and use
cbuffer layout. When those structs contain resources, the resources are
not stored inline in the constant buffer. Instead, they are represented
as separate globals, or in case of resource arrays initialized on
demand.
This change implements the HLSL codegen for cases where a cbuffer-backed
struct with embedded resources is copied into a local variable or passed
as a function argument. CodeGen materializes a temporary in the default
address space, copies the constant-data fields using the cbuffer struct
layout, and reconstruct the resource members in the local copy.
Fixes #182990
Commit: d939c77edaab3f513b3ce330382322834eb9970f
https://github.com/llvm/llvm-project/commit/d939c77edaab3f513b3ce330382322834eb9970f
Author: Delaram Talaashrafi <dtalaashrafi at nvidia.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M mlir/lib/Dialect/OpenACC/Transforms/ACCComputeLowering.cpp
M mlir/test/Dialect/OpenACC/acc-compute-lowering-compute.mlir
M mlir/test/Dialect/OpenACC/acc-compute-lowering-loop.mlir
Log Message:
-----------
[mlir][acc] Lower sequential acc.loop to scf.for in ACCComputeLowering (#206165)
Sequential loops already have fixed parallelism, so represent them with
`scf.for` rather than `scf.parallel`. To prevent further analysis and
parallelization, `parDimAttr` is set to seq.
Commit: 8fbed561ce0aa0dc9a3ab6678ecb6ed5ce986ce5
https://github.com/llvm/llvm-project/commit/8fbed561ce0aa0dc9a3ab6678ecb6ed5ce986ce5
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
Log Message:
-----------
[VPlan] Pass CostCtx to makeMemOpWideningDecisions (NFC). (#206580)
makeMemOpWideningDecisions already uses 2 members (PSE, L) and will need
more in the future. Direcly pass CostCtx.
Commit: 8cf09c5d5ca1eac658b721973709ef5153b0264b
https://github.com/llvm/llvm-project/commit/8cf09c5d5ca1eac658b721973709ef5153b0264b
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
A lldb/include/lldb/Core/BugReporter.h
M lldb/include/lldb/Core/PluginManager.h
M lldb/include/lldb/lldb-forward.h
M lldb/include/lldb/lldb-private-interfaces.h
M lldb/source/Commands/CommandObjectDiagnostics.cpp
M lldb/source/Commands/Options.td
M lldb/source/Core/PluginManager.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
A lldb/source/Plugins/BugReporter/CMakeLists.txt
A lldb/source/Plugins/BugReporter/None/BugReporterNone.cpp
A lldb/source/Plugins/BugReporter/None/BugReporterNone.h
A lldb/source/Plugins/BugReporter/None/CMakeLists.txt
M lldb/source/Plugins/CMakeLists.txt
A lldb/test/Shell/Diagnostics/TestReport.test
Log Message:
-----------
[lldb] Add a BugReporter plugin type and "diagnostics report" (#206578)
Introduce a BugReporter plugin kind that files an assembled
Diagnostics::Report through a pluggable destination, plus a "diagnostics
report" command (aliased "bugreport") that collects the bundle and files
it through the first registered reporter.
CreateBugReporterInstance() returns the first registered reporter, so a
reporter registered earlier wins and a downstream tree can take over by
registering ahead of the built-ins. BugReporterNone is the
always-registered, last-in-order fallback. Its File() returns an error
pointing at LLDB_BUG_REPORT_URL, so the command surfaces "no tracker
configured" through the normal error path instead of special-casing it.
"diagnostics report" writes the bundle, prints a review warning, and
files it unless --no-open is given. The upcoming GitHub reporter, gated
by a CMake option, is the first real destination.
Commit: d5e975dcf4180579e74697daad4f1beae0ca8549
https://github.com/llvm/llvm-project/commit/d5e975dcf4180579e74697daad4f1beae0ca8549
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M flang/lib/Semantics/openmp-utils.cpp
Log Message:
-----------
[flang][OpenMP] Add explicit return type to visitor lambdas (#206588)
This should silence MSVC (14.51.36231) error:
error C2338: static assertion failed: 'visit() requires the result of
all potential invocations to have the same type and value category
(N4950 [variant.visit]/5).'
e.g. https://lab.llvm.org/buildbot/#/builders/166/builds/9664
Commit: cc8549dafe0b5e844856284146438e21267cddab
https://github.com/llvm/llvm-project/commit/cc8549dafe0b5e844856284146438e21267cddab
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[VPlan] Remove unused InductionDescriptor VPDerivedIVRecipe constructor (#206583)
Both callers use the 5-argument (Kind, FPBinOp, ...) constructor; the
delegating InductionDescriptor overload has no users.
Commit: bce4b9cb5864d3930a879715d4c8ab7841f69275
https://github.com/llvm/llvm-project/commit/bce4b9cb5864d3930a879715d4c8ab7841f69275
Author: Hardik Kumar <hardikxk at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/docs/UsersManual.rst
M clang/include/clang/Basic/AttrDocs.td
Log Message:
-----------
[clang][docs]Refactor compiler standard references from c94 to C95 (#206403)
The patch changes references to a non existent c94 standard from
to C95 (C90 + AMD1)
Closes #206389
Commit: bcad6a03f27ba68893a5429f03cf5c52f6f744ec
https://github.com/llvm/llvm-project/commit/bcad6a03f27ba68893a5429f03cf5c52f6f744ec
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/tools/libclang/CLog.h
M llvm/include/llvm/Support/raw_ostream.h
Log Message:
-----------
[llvm][clang] Remove `format_object_base` forward declarations (#206526)
PR https://github.com/llvm/llvm-project/pull/206319 removed the
`format_object_base` class itself, but not some of its
forward-declarations. NFCI
Commit: 3349d8e7d3c272092a6af4476959d35a3e759376
https://github.com/llvm/llvm-project/commit/3349d8e7d3c272092a6af4476959d35a3e759376
Author: Jeremy Kun <jkun at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M mlir/docs/Passes.md
M mlir/include/mlir/Dialect/CMakeLists.txt
R mlir/include/mlir/Dialect/LLVMIR/Transforms/OptimizeForNVVM.h
M mlir/include/mlir/Dialect/LLVMIR/Transforms/Passes.h
M mlir/include/mlir/Dialect/LLVMIR/Transforms/Passes.td
A mlir/include/mlir/Dialect/NVVM/CMakeLists.txt
A mlir/include/mlir/Dialect/NVVM/Transforms/CMakeLists.txt
A mlir/include/mlir/Dialect/NVVM/Transforms/OptimizeForNVVM.h
A mlir/include/mlir/Dialect/NVVM/Transforms/Passes.h
A mlir/include/mlir/Dialect/NVVM/Transforms/Passes.td
M mlir/lib/Dialect/CMakeLists.txt
M mlir/lib/Dialect/LLVMIR/Transforms/CMakeLists.txt
R mlir/lib/Dialect/LLVMIR/Transforms/OptimizeForNVVM.cpp
A mlir/lib/Dialect/NVVM/CMakeLists.txt
A mlir/lib/Dialect/NVVM/Transforms/CMakeLists.txt
A mlir/lib/Dialect/NVVM/Transforms/OptimizeForNVVM.cpp
M mlir/lib/RegisterAllPasses.cpp
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[NFC][mlir][nvvm] move OptimizeForNVVM to its own directory (#206520)
This change moves the NVVM optimizations in the LLVM Dialect directory
to a dedicated `mlir/lib/Dialect/NVVM/Transforms/` directory.
Cf.
https://discourse.llvm.org/t/rfc-separate-gpu-specific-transforms-from-llvmirtransforms/91151
Commit: cc69878e754617ad556af30e9ea5fa7005379a32
https://github.com/llvm/llvm-project/commit/cc69878e754617ad556af30e9ea5fa7005379a32
Author: Jeremy Kun <jkun at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[mlir][bazel] fix TestAnalysis deps (#206599)
Separating build fixes from #206520
Commit: f3b3d7da5ffb824fa47cebefa72af5aef0b2d04d
https://github.com/llvm/llvm-project/commit/f3b3d7da5ffb824fa47cebefa72af5aef0b2d04d
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/test/Analysis/CostModel/AMDGPU/canonicalize.ll
M llvm/test/Analysis/CostModel/AMDGPU/control-flow.ll
M llvm/test/Analysis/CostModel/AMDGPU/fround.ll
M llvm/test/Analysis/CostModel/AMDGPU/fsub.ll
Log Message:
-----------
[AMDGPU] Autogen checks for tests in AMDGPU Cost Model. NFC (#206595)
Even though there are comments in the test files saying checks
are autogenerated, it seems some checks are not actually updated.
This work autogenerates checks based on the latest llvm source.
Commit: 148b8ca7305a00d521b21ec0778dd2bf9d63a50e
https://github.com/llvm/llvm-project/commit/148b8ca7305a00d521b21ec0778dd2bf9d63a50e
Author: Letu Ren <fantasquex at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-nondeterministic-value.c
Log Message:
-----------
[CIR] Support __builtin_nondeterministic_value (#206149)
Add a new CIR Op, FreezeOp, and use it to handle __builtin_nondeterministic_value
Commit: 8af496ee46dd5ab1ace6f88033ac06c7355082a8
https://github.com/llvm/llvm-project/commit/8af496ee46dd5ab1ace6f88033ac06c7355082a8
Author: Jeremy Kun <jkun at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[mlir] Bazel fix for #206520 (#206609)
I broke the bazel build in #206520 and pushed an incorrect fix in
#206599 which this PR also reverts.
Commit: f38611692e56b0a5ced4ac1cff48c472d8beff35
https://github.com/llvm/llvm-project/commit/f38611692e56b0a5ced4ac1cff48c472d8beff35
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/reduction-copyable-reused-scalars.ll
Log Message:
-----------
[SLP] Apply reused-scalar reduction counters at the vectorized lane
The horizontal reduction reuse-counter scale was placed by deduplicated
candidate order, but the emitted reduction vector lane order is defined by
the root node, which may be reordered or split (SplitVectorize). As a
result a repeat count could be applied to the wrong lane, producing a wrong
reduction result. Place each counter at the lane the matching candidate is
vectorized to.
Fixes #206476
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/206611
Commit: 3516fe0c2fe39bfaec843a0ec0ab98f5023bc31a
https://github.com/llvm/llvm-project/commit/3516fe0c2fe39bfaec843a0ec0ab98f5023bc31a
Author: Alex Langford <alangford at apple.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M lldb/include/lldb/Target/Target.h
M lldb/source/Target/Target.cpp
Log Message:
-----------
[lldb][NFC] Change how Target stores BreakpointNames (#205419)
This changes 2 things:
1) BreakpointNameList is now called BreakpointNameMap to reflect the
actual underlying data structure.
2) BreakpointNameMap goes from a `std::map` to a `llvm::StringMap` to
eliminate the use of ConstString.
Commit: 8ed0ecfc3fede92c55f4169e2b37987d90679b34
https://github.com/llvm/llvm-project/commit/8ed0ecfc3fede92c55f4169e2b37987d90679b34
Author: Alex Langford <alangford at apple.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M lldb/source/Commands/CommandCompletions.cpp
Log Message:
-----------
[lldb] Adjust SourceFileCompleter to use StringRef (#206603)
Instead of storing `const char *` (which are currently backed by
ConstStrings), it should instead store the FileSpec and extract the
Filename and Directory as needed.
Commit: df8b27d618d987e2d8961659514efdaa41ffea05
https://github.com/llvm/llvm-project/commit/df8b27d618d987e2d8961659514efdaa41ffea05
Author: Alex Langford <alangford at apple.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M lldb/source/Target/TraceDumper.cpp
Log Message:
-----------
[lldb][NFC] Change string types in static TraceDumper functions (#206604)
I plan on using this in a subsequent commit.
Commit: fc654d498ebdf49a5634a43f45cc82004975acf0
https://github.com/llvm/llvm-project/commit/fc654d498ebdf49a5634a43f45cc82004975acf0
Author: Kevin Sala Penades <salapenades1 at llnl.gov>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/include/clang/AST/OpenMPClause.h
Log Message:
-----------
[Clang][OpenMP][NFC] Remove unnecessary LParentLoc in clause classes (#206386)
The LParentLoc is already a data member of the OMPVarListClause class.
The OMPThreadLimitClause and OMPNumTeamsClause classes inherit from
OMPVarListClause and should not need to have their own LParentLoc.
Commit: f5faf2902744e133336ae728bd654f94860f4868
https://github.com/llvm/llvm-project/commit/f5faf2902744e133336ae728bd654f94860f4868
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Target/Lanai/LanaiCodeGenPassBuilder.cpp
Log Message:
-----------
[Lanai] Force AsmPrinterEndPass (#206623)
So that no pass instrumentation ends up preventing the addition of this
necessary pass.
Also makes this consistent with X86.
Commit: 925378c69722825f47afc170fe280d8af788c6c1
https://github.com/llvm/llvm-project/commit/925378c69722825f47afc170fe280d8af788c6c1
Author: Mark Zhuang <mark.zhuang at spacemit.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCV.td
Log Message:
-----------
[RISCV][NFC] Use true/false for boolean fields in RISCV.td (#206399)
Commit: df108f91d5b851e4a7012579d0fbb1c3fed8a995
https://github.com/llvm/llvm-project/commit/df108f91d5b851e4a7012579d0fbb1c3fed8a995
Author: Aviral Goel <aviralg at users.noreply.github.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/StaticLibrary.h
M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/TUSummaryEncoding.h
M clang/include/clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h
M clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def
M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/JSONFormat.h
M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormat.h
M clang/lib/ScalableStaticAnalysis/Core/CMakeLists.txt
M clang/lib/ScalableStaticAnalysis/Core/ModelStringConversions.h
M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/Artifact.cpp
M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/StaticLibrary.cpp
M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/TUSummaryEncoding.cpp
A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-static-library-empty.json
M clang/test/Analysis/Scalable/ssaf-format/Artifact/round-trip.test
M clang/test/Analysis/Scalable/ssaf-format/Artifact/top-level.test
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/duplicate-member.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/invalid-syntax.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-inner-error.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-mismatched-type.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-missing-type.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-not-object.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-triple-mismatch.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/members-not-array.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/mismatched-type.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-members.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-namespace.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-target-triple.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-type.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-invalid-kind.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-missing-kind.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-missing-name.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-wrong-kind.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/not-json-extension.txt
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/not-normalized-target-triple.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/not-object.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-empty.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-multiple-members.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-single-member.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/unsorted-members-input.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/io.test
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/permissions.test
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/round-trip.test
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/top-level.test
M clang/tools/clang-ssaf-format/SSAFFormat.cpp
M clang/unittests/ScalableStaticAnalysis/BuildNamespaceTest.cpp
M clang/unittests/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendActionTest.cpp
M clang/unittests/ScalableStaticAnalysis/ModelStringConversionsTest.cpp
M clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.cpp
M clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.h
M clang/unittests/ScalableStaticAnalysis/TestFixture.h
Log Message:
-----------
[clang][ssaf] Add `StaticLibrary` data structure (#205946)
This change introduces the `StaticLibrary` data structure, the SSAF analogue of `ar`, `libtool -static`, or `lib.exe`: a single-architecture bundle of `TUSummary` objects. `StaticLibrary` only stores `TUSummaryEncoding` because it will be used by `clang-ssaf-linker` that does not decode the summary data. We don't plan to create a decoded variant because there will be no consumer. Support for constructing and linking static libraries will be introduced in future PRs.
rdar://180665891
Commit: efd5fe3074aaf31907781ab84c9f360cf823e6aa
https://github.com/llvm/llvm-project/commit/efd5fe3074aaf31907781ab84c9f360cf823e6aa
Author: Jim Lin <jim at andestech.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/test/Driver/linux-ld.c
Log Message:
-----------
[Driver][RISCV] Fix musl dynamic linker path for RISC-V sf/sp ABI (#202513)
Musl adds -sf or -sp suffixes to the path of dynamic linker (e.g.,
ld-musl-riscv64-sf.so.1):
https://git.musl-libc.org/cgit/musl/tree/configure?h=v1.2.6&id=9fa28ece75d8a2191de7c5bb53bed224c5947417#n732
---------
Co-authored-by: Chih-Mao Chen <cmchen at andestech.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>
Commit: 71113eb33964b4e2bceb0f8af08e3aabe03135a1
https://github.com/llvm/llvm-project/commit/71113eb33964b4e2bceb0f8af08e3aabe03135a1
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/lib/Sema/SemaExprCXX.cpp
Log Message:
-----------
[Sema][NFC] Extract allocation overload diagnostics (#206219)
This extracts the code that emits diagnostics when no viable function is
found for allocation overload resolution to reduce the diff in #203824.
Commit: 93da31b66e5a65c3ee55bfa9ef0f7e82d1822a1b
https://github.com/llvm/llvm-project/commit/93da31b66e5a65c3ee55bfa9ef0f7e82d1822a1b
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M clang/lib/CodeGen/BackendConsumer.h
M clang/lib/CodeGen/CodeGenAction.cpp
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
M llvm/include/llvm/IR/DiagnosticInfo.h
M llvm/include/llvm/IR/Intrinsics.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/MC/MCSubtargetInfo.h
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/TargetSubtargetInfo.cpp
M llvm/lib/IR/DiagnosticInfo.cpp
M llvm/lib/IR/Intrinsics.cpp
M llvm/lib/MC/MCSubtargetInfo.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane16.swap.ll
A llvm/test/TableGen/intrinsic-target-features.td
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.cpp
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.h
M llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
Log Message:
-----------
[RFC][CodeGen] Add generic target feature checks for intrinsics (#201470)
This PR adds target-independent infrastructure for annotating LLVM
intrinsics with required subtarget feature expressions.
It introduces a TargetFeatures string field to intrinsic TableGen
records. TableGen emits an intrinsic-to-feature mapping table.
Both SelectionDAG and GlobalISel now perform this check before lowering
target intrinsics. This allows targets to opt in by annotating intrinsic
definitions directly, rather than adding custom checks during lowering,
legalization, or instruction selection.
This PR uses one AMDGPU intrinsic as an example.
Commit: d3b8ff3a4ef0ca0912bd131497511e2024b584d0
https://github.com/llvm/llvm-project/commit/d3b8ff3a4ef0ca0912bd131497511e2024b584d0
Author: wanglei <wanglei at loongson.cn>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/test/CodeGen/LoongArch/ir-instruction/double-convert.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/float-convert.ll
Log Message:
-----------
Revert "[LoongArch] Custom scalar UINT_TO_FP and FP_TO_UINT with LSX instructions" (#206632)
Reverts llvm/llvm-project#200901
buildbot: https://lab.llvm.org/staging/#/builders/20/builds/28603
Commit: fb20f9f66205f936c096bc45d52afd8bd0ac9d07
https://github.com/llvm/llvm-project/commit/fb20f9f66205f936c096bc45d52afd8bd0ac9d07
Author: Alok Kumar Sharma <AlokKumar.Sharma at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
A llvm/test/Transforms/MergeFunc/merge-functions-entry-count-alias.ll
A llvm/test/Transforms/MergeFunc/merge-functions-entry-count-no-alias.ll
Log Message:
-----------
[MergeFunctions] Preserve entry counts on folds (#202218)
**Summary**
`MergeFunctions` can fold equivalent functions into a single retained
implementation. When that happens, the retained body may be reached by
callers of both original functions, but its `function_entry_count`
metadata previously preserved only one side of the profile data.
For example, folding functions with entry counts `2000` and `1000` could
leave the retained body with only `2000`. This patch updates the
retained implementation after a successful merge, so the entry count
becomes `3000`, using saturating add.
For ODR/double-thunk merges, the private backing body gets the combined
count while the thunks keep their own entry counts. For alias-backed
merges, the backing function carries the combined count.
**AI Assistance Disclosure**
AI tools were used to browse the LLVM codebase and explore test-case
variations. All outputs were manually reviewed and validated, and I take
full responsibility for the final changes.
Commit: 0b664d91fe94ba0e8a51b408dec1e179bbf8c46c
https://github.com/llvm/llvm-project/commit/0b664d91fe94ba0e8a51b408dec1e179bbf8c46c
Author: lijinpei-amd <jinpli at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Utils/FixIrreducible.cpp
A llvm/test/Transforms/FixIrreducible/pr191979.ll
Log Message:
-----------
[FixIrreducible] Handle conditional branch with both successors as header (#206057)
A conditional branch redirecting edges to the cycle header may have both
successors equal to the header (e.g. `br i1 %c, label %h, label %h`),
which the previous `Succ1 = Succ0 ? nullptr : Header` logic mishandled
by dropping the second edge.
Check each successor independently against the header instead.
Fixes https://github.com/llvm/llvm-project/issues/191979.
Commit: 869c45984893870267deae65cdc2429888a7c1a4
https://github.com/llvm/llvm-project/commit/869c45984893870267deae65cdc2429888a7c1a4
Author: SiHuaN <liyongtai at iscas.ac.cn>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvp-simd-32.ll
M llvm/test/CodeGen/RISCV/rvp-simd-64.ll
Log Message:
-----------
[RISCV][P-ext] Avoid redundant accumulator extend for reduction sum (#206430)
For a reduction sum with an i32 accumulator on RV64, the result is
computed at i64 and truncated, so the accumulator's upper bits are
unused. Any-extend it instead of sign-/zero-extending, dropping a
redundant sext.w/zext.w. Follow-up to #206004.
Commit: 6600ad0949f8450406fd768d5cd9f1ce9819d2c5
https://github.com/llvm/llvm-project/commit/6600ad0949f8450406fd768d5cd9f1ce9819d2c5
Author: SiHuaN <liyongtai at iscas.ac.cn>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/include/clang/Basic/BuiltinsRISCV.td
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/Headers/riscv_packed_simd.h
M clang/test/CodeGen/RISCV/rvp-intrinsics.c
M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c
Log Message:
-----------
[Clang][RISCV] packed reduction sum intrinsics (#206441)
Add the __riscv_predsum/predsumu_* header wrappers over new
__builtin_riscv_* builtins, lowering to the llvm.riscv.predsum/predsumu
intrinsics.
Commit: 442c59c75ca384db53a6d6d81686b17ea4b397c3
https://github.com/llvm/llvm-project/commit/442c59c75ca384db53a6d6d81686b17ea4b397c3
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
R llvm/test/Transforms/MergeFunc/merge-functions-entry-count-alias.ll
R llvm/test/Transforms/MergeFunc/merge-functions-entry-count-no-alias.ll
Log Message:
-----------
Revert "[MergeFunctions] Preserve entry counts on folds" (#206640)
Reverts llvm/llvm-project#202218
Causes build failures and needs to be rebased on top of main before
relanding.
Commit: 45974112fd727b41fe3c4381b94392c1e7fbdd36
https://github.com/llvm/llvm-project/commit/45974112fd727b41fe3c4381b94392c1e7fbdd36
Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M mlir/cmake/modules/AddMLIRPython.cmake
Log Message:
-----------
[mlir][python][NFC] Clean up nanobind compile options (#206559)
Follow-up to #204230.
Refactor nanobind warning suppression flags into `build_nanobind_lib`.
Drop duplicate RTTI and exception flags.
Commit: 02de6f8ffed5ff3dae0ac01e526ede69dbdc8caa
https://github.com/llvm/llvm-project/commit/02de6f8ffed5ff3dae0ac01e526ede69dbdc8caa
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ExprConstant.cpp
M clang/test/AST/ByteCode/builtin-constant-p.cpp
A clang/test/AST/ByteCode/enable_if.c
M clang/test/SemaCXX/enable_if-nested-call-with-valuedependent-param.cpp
M clang/test/SemaCXX/enable_if.cpp
Log Message:
-----------
[clang][bytecode] Implement support for `Expr::EvaluateWithSubstitution()` (#204781)
This regresses `Sema/enable_if.c`, which now fails when run with the
bytecode interpreter. We also get 14 more diagnostic differences in
`SemaCXX/builtin-object-size-cxx14.cpp`.
Fixes https://github.com/llvm/llvm-project/issues/138473
Commit: 3b04eaa0e4c2a4e86719156ec4859ef26e577479
https://github.com/llvm/llvm-project/commit/3b04eaa0e4c2a4e86719156ec4859ef26e577479
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceGlobal.cpp
A flang/test/Fir/CUDA/cuda-device-global-internal-linkage.fir
Log Message:
-----------
[flang][cuda] Strip linkage from cloned gpu globals (#206624)
Commit: ceed988fba7bcb89400dab402bc4fb5e4c04324d
https://github.com/llvm/llvm-project/commit/ceed988fba7bcb89400dab402bc4fb5e4c04324d
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
Log Message:
-----------
[WebAssembly][NFC] Remove direct access to FeatureKV (#206232)
This is preparatory work for changing the representation of
FeatureKV/SubTypeKV, in which they will no longer be that easily
accessible as global variables. Therefore, get them from the subtarget
instead.
Commit: 673ddc9b838de69926b4f81a0acc93291b075104
https://github.com/llvm/llvm-project/commit/673ddc9b838de69926b4f81a0acc93291b075104
Author: jpwang <jpwang at smail.nju.edu.cn>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/test/Dialect/Linalg/transform-op-rewrite-in-destination-passing-style.mlir
Log Message:
-----------
[mlir][linalg] Handle existing destination-passing-style ops in `transform.structured.rewrite_in_destination_passing_style` (#205034)
`transform.structured.rewrite_in_destination_passing_style` may be
applied to an operation that is already in destination-passing style,
e.g. `linalg.add`. In this case, the operation does not need to be
rewritten, but the current `TypeSwitch` does not handle
`DestinationStyleOpInterface` and falls through to the unreachable case.
Such operations can be handled by returning them unchanged. This makes
the transform accept already destination-style operations and avoids the
crash.
An regression test for applying `rewrite_in_destination_passing_style`
is added to `linalg.add`.
Fixes #204099
Commit: a93f37bc1adf296e1522ec11485ff597d5c9aa70
https://github.com/llvm/llvm-project/commit/a93f37bc1adf296e1522ec11485ff597d5c9aa70
Author: Madhur Amilkanthwar <madhura at nvidia.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M flang/test/CMakeLists.txt
Log Message:
-----------
[flang][cmake] Order flang profdata generation after clang's (#206023)
The clang and flang PGO pipelines clean and regenerate the same shared
profraw directories, so running them concurrently can truncate a profraw
while the other merge has it mmap'd. Add an ordering edge so flang's
pipeline runs after clang's.
Fixes issues introduced by
https://github.com/llvm/llvm-project/pull/198863
Commit: d08e24ad5d437522ee765a8d43cb16545a0a9b2f
https://github.com/llvm/llvm-project/commit/d08e24ad5d437522ee765a8d43cb16545a0a9b2f
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/AST/ExprConstant.cpp
M clang/test/Misc/constexpr-source-ranges.cpp
Log Message:
-----------
[clang][ExprConst] Add a source range to invalid cast diagnostics (#206456)
Also fix this test to not have absolute line numbers
Commit: aba63c572000e14a6ad24f403c50e90f0001dd05
https://github.com/llvm/llvm-project/commit/aba63c572000e14a6ad24f403c50e90f0001dd05
Author: Yihan Wang <yronglin777 at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.md
M clang/lib/Sema/SemaTypeTraits.cpp
M clang/test/SemaCXX/type-traits.cpp
Log Message:
-----------
[clang] The `__reference_meows_from_temporary` builtins should SFINAE friendly when the 1st type is not a reference type (#206527)
Suppose that `__reference_constructs_from_temporary` is defined as:
```cpp
__reference_constructs_from_temporary(_Tp, _Up);
```
A non-reference type can never bind to a temporary, so the result is
always `false` for such a `_Tp`. We should short-circuit before reaching
the instantiations by check the type of `_Tp`. But clang's
`__reference_constructs_from_temporary` eagerly instantiates the
construction of `_Up` (including the element's constructor exception
specification) even when `_Tp` is not a reference, which can hard-error
on misbehaved types.
The following code should be accepted, but clang raise a hard error:
```cpp
struct NoConv {};
struct Bad { template<class T> Bad(T v) noexcept(noexcept(member_ = v)) {} int member_; };
static_assert(!__reference_constructs_from_temporary(Bad, NoConv&&));
static_assert(!__reference_converts_from_temporary(Bad, NoConv&&));
static_assert(!__reference_binds_to_temporary(Bad, NoConv&&));
```
The PR refine the implementation of these builtins by short-circuits on
a non-reference first operand.
Fixes https://github.com/llvm/llvm-project/issues/206524.
---------
Signed-off-by: yronglin <yronglin777 at gmail.com>
Commit: f06918d490cefac448c2de4457648661dc224135
https://github.com/llvm/llvm-project/commit/f06918d490cefac448c2de4457648661dc224135
Author: Srinivasa Ravi <srinivasar at nvidia.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
A llvm/test/CodeGen/NVPTX/insert-vector-elt-shuffle-i8.ll
Log Message:
-----------
[DAGCombiner][NVPTX] Avoid forming illegal-typed shuffles after type-legalization (#205056)
Currently, `combineInsertEltToShuffle` could create a shuffle of an
illegal type after type legalization, which when reaches the operation
legalizer, asserts ("Unexpected illegal type!").
https://github.com/llvm/llvm-project/pull/198259 fixed a crash resulting
from this in NVPTX but resulted in regressions with some types due to
the check blocking pre-type-legalization folds in addition to the
illegal post-type-legalization shuffle.
This change removes the TTI override in NVPTX and adds a guard in the
`combineInsertEltToShuffle` pattern to avoid forming illegal-typed
shuffles after type legalization.
Commit: ffa02793116a850767f34436d01344260ab03e1c
https://github.com/llvm/llvm-project/commit/ffa02793116a850767f34436d01344260ab03e1c
Author: Madhur Amilkanthwar <madhura at nvidia.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Utils/LoopUnroll.cpp
M llvm/test/Transforms/LoopUnroll/partial-unroll-reductions.ll
M llvm/test/Transforms/LoopUnroll/runtime-unroll-reductions-min-max.ll
M llvm/test/Transforms/LoopUnroll/runtime-unroll-reductions.ll
Log Message:
-----------
[LoopUnroll] Skip called function in constant-op reduction filter (#200868)
canParallelizeReductionWhenUnrolling iterates the latch instruction's
operands and rejects the reduction if any is a Constant. For calls the
called function is itself a Constant, falsely rejecting every intrinsic
form (fmuladd, smin/smax/umin/umax, etc.). Use CallBase::args() to
restrict the check to data operands.
Commit: 06cac128adafc6c93120db7a3ac44e97c5e2c23b
https://github.com/llvm/llvm-project/commit/06cac128adafc6c93120db7a3ac44e97c5e2c23b
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/lib/AST/ByteCode/Pointer.h
M clang/test/AST/ByteCode/cxx20.cpp
Log Message:
-----------
[clang][bytecode] Use ASTRecordLayout offsets when subtracting pointers (#206496)
What we did here didn't work properly for pointers casted to bases. Add
`Pointer::computeLayoutOffset()` and use that to return the proper
values.
Commit: 20100a277a449f1c013c7a4c00cbf6b8fa8ca0e4
https://github.com/llvm/llvm-project/commit/20100a277a449f1c013c7a4c00cbf6b8fa8ca0e4
Author: Ilpo Ruotsalainen <lonewolf at iki.fi>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/test/CodeGen/Mips/GlobalISel/legalizer/zextLoad_and_sextLoad.mir
Log Message:
-----------
[Mips][GISel][NFC] Regenerate CHECK lines in zextLoad_and_sextLoad.mir (#206631)
Commit: 77de767af99b151046d1f25df4e37ba61e79531c
https://github.com/llvm/llvm-project/commit/77de767af99b151046d1f25df4e37ba61e79531c
Author: Xiaomeng Zhang <zhangxiaomeng at hygon.cn>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/Basic/Targets/X86.cpp
M clang/test/CodeGen/target-builtin-noerror.c
M clang/test/Driver/x86-march.c
M clang/test/Frontend/x86-target-cpu.c
M clang/test/Misc/target-invalid-cpu-note/x86.c
M clang/test/Preprocessor/predefined-arch-macros.c
M compiler-rt/lib/builtins/cpu_model/x86.c
M llvm/include/llvm/TargetParser/X86TargetParser.def
M llvm/include/llvm/TargetParser/X86TargetParser.h
M llvm/lib/Target/X86/X86.td
A llvm/lib/Target/X86/X86ScheduleC864GM8.td
M llvm/lib/TargetParser/Host.cpp
M llvm/lib/TargetParser/X86TargetParser.cpp
M llvm/test/CodeGen/X86/bypass-slow-division-64.ll
M llvm/test/CodeGen/X86/cmp16.ll
M llvm/test/CodeGen/X86/cpus-hygon.ll
M llvm/test/CodeGen/X86/rdpru.ll
M llvm/test/CodeGen/X86/slow-unaligned-mem.ll
M llvm/test/CodeGen/X86/sqrt-fastmath-tune.ll
M llvm/test/CodeGen/X86/vector-shuffle-fast-per-lane.ll
M llvm/test/CodeGen/X86/x86-64-double-shifts-var.ll
M llvm/test/MC/X86/x86_long_nop.s
A llvm/test/tools/llvm-mca/X86/C864GM8/independent-load-stores.s
A llvm/test/tools/llvm-mca/X86/C864GM8/partially-overlapping-group-resources.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-adx.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-aes.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx1.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx2.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512bitalg.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512bitalgvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512bw.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512bwvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512cd.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512cdvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512dq.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512dqvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512gfni.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512gfnivl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512ifma.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512ifmavl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vaes.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vaesvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vbmi.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vbmi2.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vbmi2vl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vbmivl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vnni.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vnnivl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vp2intersect.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vp2intersectvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vpclmulqdq.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vpclmulqdqvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vpopcntdq.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vpopcntdqvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avxgfni.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avxvnni.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-bmi1.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-bmi2.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-clflushopt.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-clwb.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-cmov.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-cmpxchg.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-f16c.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-fma.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-fsgsbase.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-gfni.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-lea.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-lzcnt.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-mmx.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-movbe.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-mwaitx.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-pclmul.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-popcnt.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-prefetchw.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-rdrand.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-rdseed.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sha.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-shstk.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse1.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse2.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse3.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse41.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse42.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse4a.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-ssse3.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-vaes.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-vpclmulqdq.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-x86_32.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-x86_64.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-x87.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-xsave.s
A llvm/test/tools/llvm-mca/X86/C864GM8/zero-idioms.s
Log Message:
-----------
[X86] Hygon C86-4G-M8 Initial enablement (#204587)
This patch adds initial support for Hygon C86-4G-M8 architectures:
- Added C86-4G-M8 CPU targets recognition in Clang and LLVM
- Added C86-4G-M8 to target parser and host CPU detection
- Updated compiler-rt CPU model detection for C86-4G-M8
- Added C86-4G-M8 to various optimizer tests
- Added scheduler models and llvm-mca tests for C86-4G-M8 CPU targets
Commit: 3a25d9f2ee854904158c6fe773bf8ce1850197b5
https://github.com/llvm/llvm-project/commit/3a25d9f2ee854904158c6fe773bf8ce1850197b5
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/VectorCombine/AMDGPU/shuffles-of-length-changing-shuffles.ll
Log Message:
-----------
[VectorCombine] Bail out on all-poison leaves in shuffle transform (#206503)
foldShufflesOfLengthChangingShuffles() skips undef sources when
determining Y, so if all the leaves are undef, we can end up with Y
being nullptr after the loop. Bail out in this degenerate case.
Commit: fc20c57067f1aa35968d0a4c7542e2d732e6e159
https://github.com/llvm/llvm-project/commit/fc20c57067f1aa35968d0a4c7542e2d732e6e159
Author: Sven van Haastregt <sven.vanhaastregt at arm.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
Log Message:
-----------
[CodeGen] Avoid ambiguous Register comparison in C++20; NFC (#205814)
Fix an "ambiguous overload for ‘operator==’" error when compiling with
`-std=c++20`, caused by C++20's rewritten operator== candidate rules.
Commit: d79df25b12350671f48de63ab43493b671b496c2
https://github.com/llvm/llvm-project/commit/d79df25b12350671f48de63ab43493b671b496c2
Author: Demetrius Kanios <demetrius at kanios.net>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
M llvm/test/CodeGen/WebAssembly/funcref-call.ll
Log Message:
-----------
[WebAssembly] Define `__funcref_call_table` in generated asm and objects (#180900)
Currently, calls into funcref (`call addrspace(20)`) are lowered into a
store of the ref into a special single-element `__funcref_call_table`, a
call_indirect into said table, then a store of null into it.
It functions just fine when `-filetype=asm` (default), but when emitting
an object file directly from llc it fails with `LLVM ERROR: undefined
table symbol cannot be weak`
This fixes said error by "defining" it during `WebAssemblyAsmPrinter`,
and ensuring it is definitely emitted as weak (so duplicate tables in
multiple objects are merged into a single one).
Commit: 666b209298eef9a7b1c78c1391252dd25ceb6eaf
https://github.com/llvm/llvm-project/commit/666b209298eef9a7b1c78c1391252dd25ceb6eaf
Author: Demetrius Kanios <demetrius at kanios.net>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/GISel/WebAssemblyLegalizerInfo.cpp
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/bitcast.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/fptosi.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/fptoui.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/sitofp.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/uitofp.ll
Log Message:
-----------
[WebAssembly][GlobalISel] Implement conversion/cast ops between integer and floating-point (#197255)
Adds legalization and tests for operations converting between int and
float (`G_BITCAST`, `G_FPTOSI`, `G_FPTOUI`, `G_SITOFP` and `G_UITOFP`).
Saturating float => int ops will be finished later once comparison
operators are in place (which for this, `G_SELECT`, `G_FCMP`, `G_UMIN`,
and `G_SMIN` are needed at least).
Split from #157161
Commit: dce25be9ad415ec18b160db3379490cb2bd260e8
https://github.com/llvm/llvm-project/commit/dce25be9ad415ec18b160db3379490cb2bd260e8
Author: Demetrius Kanios <demetrius at kanios.net>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/GISel/WebAssemblyInstructionSelector.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.cpp
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/copy.mir
Log Message:
-----------
[WebAssembly][GlobalISel] Implement `COPY` (#197256)
Adds instruction select handling and tests for `COPY`. While `COPY` gets
dissolved in the end, these changes are required to keep the selector
from crashing when trying to assign a regclass to its operands.
Split from #157161
Commit: 231132317392e06e62c30fca4ae0860bba8b2cf5
https://github.com/llvm/llvm-project/commit/231132317392e06e62c30fca4ae0860bba8b2cf5
Author: Demetrius Kanios <demetrius at kanios.net>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/GISel/WebAssemblyLegalizerInfo.cpp
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/icmp.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/scmp.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/select.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/smax.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/smin.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/ucmp.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/umax.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/umin.ll
Log Message:
-----------
[WebAssembly][GlobalISel] Implement integer comparisons and `G_SELECT` (#197257)
Adds legalization and tests for various integer comparison operations
(namely `G_ICMP` is legal, but also enable `lower` for some other ones),
as well as `G_SELECT`.
Split from #157161
Commit: b792db95920052ee292e55a03a43d722e8eb3475
https://github.com/llvm/llvm-project/commit/b792db95920052ee292e55a03a43d722e8eb3475
Author: Nikhil Kotikalapudi <Nikhil.Kotikalapudi at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
Log Message:
-----------
[AMDGPU] Relocated getMaxNumWorkGroups function out of AMDGPUSubtarget (NFC) (#205636)
Commit: 5026b324736ea3ccd65d2a41f746126e5ee8a4f0
https://github.com/llvm/llvm-project/commit/5026b324736ea3ccd65d2a41f746126e5ee8a4f0
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M orc-rt/include/CMakeLists.txt
A orc-rt/include/orc-rt/StandaloneMachOUnwindInfoRegistrar.h
A orc-rt/include/orc-rt/sps-ci/StandaloneMachOUnwindInfoRegistrarSPSCI.h
M orc-rt/lib/executor/CMakeLists.txt
A orc-rt/lib/executor/StandaloneMachOUnwindInfoRegistrar.cpp
A orc-rt/lib/executor/sps-ci/StandaloneMachOUnwindInfoRegistrarSPSCI.cpp
M orc-rt/unittests/CMakeLists.txt
A orc-rt/unittests/StandaloneMachOUnwindInfoRegistrarTest.cpp
Log Message:
-----------
[orc-rt] Add StandaloneMachOUnwindInfoRegistrar. (#206669)
StandaloneMachOUnwindInfoRegistrar provides methods and SPS-CI
allocation actions for registering and deregistering MachO unwind-info
sections (DWARF EH-frame and compact-unwind) via libunwind's
find-dynamic-unwind-sections APIs.
A Registration handle returned by enable() represents the connection
with libunwind; clients must keep it alive for the lifetime of their
Session, and its destructor releases the registration. Concurrent
registrations are reference-counted so multiple sessions can share a
single underlying libunwind hook.
Registered code ranges are stored in an interval map. Overlapping ranges
are rejected; lookups for an address outside any registered range return
no info, so libunwind falls back to its other lookup mechanisms safely.
A future MachO-Platform will provide integrated unwind-info registration
and should be preferred when available. This class will then remain
appropriate for MachO executors that deliberately omit the full
platform.
Unit tests cover the UnwindInfoMap storage layer
(register/deregister/lookup, overlap rejection, edge cases). The
libunwind-facing layer — enable(), the Registration RAII, and the
find-dynamic-unwind-sections callback — is left to regression tests,
which will become possible in the near future (once initial
ControllerAccess implementations land).
Commit: c452e7edd9e9fec10bab4c9de09846529454dcab
https://github.com/llvm/llvm-project/commit/c452e7edd9e9fec10bab4c9de09846529454dcab
Author: Ilpo Ruotsalainen <lonewolf at iki.fi>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/arm64-fallback.ll
M llvm/test/CodeGen/RISCV/GlobalISel/riscv-unsupported.ll
Log Message:
-----------
[GISel][Inlineasm] Don't assert on multi-register inline asm inputs (#200612)
`lowerInlineAsm()` asserts that the number of registers allocated for an
input operand equals the number of source vregs, then separately bails
for `NumRegs > 1`. The assert is wrong: the counts legitimately differ
when a value is passed in a register pair/tuple (e.g. i128 in a RISC-V
"R" GPR pair, or i512 to an AArch64 ld64b operand), crashing
assertions-enabled builds instead of falling back to SelectionDAG.
Replace the assert and the `NumRegs > 1` check with a single guard
requiring exactly one source vreg in one register; anything else is
rejected so it falls back instead of asserting. The supported path is
unchanged.
https://godbolt.org/z/v6WTaYEsd
Commit: 816d3f25995595aa34ee3b65811dd5a5eab077e6
https://github.com/llvm/llvm-project/commit/816d3f25995595aa34ee3b65811dd5a5eab077e6
Author: Chris Copeland <chris at chrisnc.net>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/test/MC/ARM/basic-thumb2-instructions.s
M llvm/test/MC/ARM/thumb2-diagnostics.s
Log Message:
-----------
[ARM] Allow predicated `subs pc, lr, #imm` in Thumb2 (#205751)
ARMAsmParser has a special case for this instruction that used the
instruction name unmodified, but this would include the condition code,
so if the instruction has one, the tblgen entry doesn't match. The
condition code is already added as a separate operand.
Check for `CarrySetting` so that the special case does not falsely match
on `sub pc, lr, #imm`, which is not valid in Thumb2.
Commit: 46e376c6025f155ab4ec7a09a96e18c744b709f7
https://github.com/llvm/llvm-project/commit/46e376c6025f155ab4ec7a09a96e18c744b709f7
Author: StoeckOverflow <95052643+StoeckOverflow at users.noreply.github.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/include/clang/APINotes/APINotesReader.h
M clang/include/clang/APINotes/APINotesWriter.h
M clang/lib/APINotes/APINotesFormat.h
M clang/lib/APINotes/APINotesReader.cpp
M clang/lib/APINotes/APINotesWriter.cpp
M clang/lib/APINotes/APINotesYAMLCompiler.cpp
M clang/test/APINotes/Inputs/WhereParametersConvertDiag/APINotes.apinotes
M clang/test/APINotes/Inputs/WhereParametersConvertDiag/WhereParametersConvertDiag.h
A clang/test/APINotes/Inputs/WhereParametersEmptyWhereDiag/APINotes.apinotes
A clang/test/APINotes/Inputs/WhereParametersEmptyWhereDiag/WhereParametersConvertDiag.h
M clang/test/APINotes/where-parameters-convert-diags.cpp
Log Message:
-----------
[APINotes] Serialize function-like Where.Parameters (#204147)
This PR builds on #203227 by serializing function-like
`Where.Parameters` selectors into binary API notes.
The selector remains declaration-selection data, separate from
annotation payloads. Existing Sema paths still use name-only lookup and
keep legacy broad matching. Exact overload matching is left to the
follow-up Sema PR.
## Format
This bumps the API notes minor version because the global-function and
C++ method table key layout changes.
Function-like entries now use a shared binary key containing:
- parent context ID
- declaration name ID
- selector flags
- parameter count
- zero or more parameter type string IDs
The parameter type strings are stored through the existing identifier
table.
The selector flag records whether `Where.Parameters` was present. This
is needed because an absent selector and an explicitly empty selector
would otherwise both have parameter count `0`:
```yaml
- Name: currentWidget
```
versus:
```yaml
- Name: currentWidget
Where:
Parameters: []
```
The first entry is the legacy broad/name-only key. The second entry is
an exact zero-explicit-parameter selector.
## Implementation Details
This introduces a shared `FunctionTableKey` for global functions and C++
methods, so same-name entries can be distinguished by optional exact
parameter selectors.
Existing name-only reader/writer APIs are preserved as compatibility
wrappers. New selector-aware overloads accept optional parameter
strings:
- `std::nullopt` means broad/name-only key
- empty parameter list means exact zero-parameter selector
- non-empty parameter list means exact ordered parameter selector
The selector remains outside
`FunctionInfo`/`GlobalFunctionInfo`/`CXXMethodInfo`, because it
identifies which declaration an entry applies to rather than changing
the imported declaration effect.
Malformed empty `Where: {}` entries are rejected during conversion so
they do not silently fall back to broad name-only storage.
## Testing caveat
This PR keeps testing in the ordinary `clang/test/APINotes` FileCheck
path and does not add an APINotes binary lookup helper. As a result, the
tests cover YAML conversion and malformed selector diagnostics, but they
do not directly prove binary reader round-trip lookup for
same-name/different-parameter entries.
The binary reader/writer support is implemented here. Direct end-to-end
lookup coverage will come with the follow-up Sema matching PR.
Reviewers: @Xazax-hun @egorzhdan @j-hui
Commit: b8d7413fccb6574d721bbebcfd3b8d5de8a4570d
https://github.com/llvm/llvm-project/commit/b8d7413fccb6574d721bbebcfd3b8d5de8a4570d
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/Driver/OffloadBundler.cpp
R clang/test/Driver/Inputs/clang-offload-bundler-magic-collision.co
R clang/test/Driver/Inputs/clang-offload-bundler-magic-collision.py
R clang/test/Driver/clang-offload-bundler-magic-collision.c
M llvm/lib/Object/OffloadBundle.cpp
R llvm/test/tools/llvm-objdump/Offloading/fatbin-magic-collision.test
Log Message:
-----------
Revert "[OffloadBundler] Bound compressed bundles by header size, not magic scan (#205587)" (#206678)
Causes test failures on big-endian.
This reverts commit d2d80787af6e1d671563654171f34e8eec35fd1b.
This reverts commit bac7ca5f170f25517870e0876d710cc4226c3602.
Commit: 4b802fed943f420377c80fac82257000c1a11a9e
https://github.com/llvm/llvm-project/commit/4b802fed943f420377c80fac82257000c1a11a9e
Author: Igor Wodiany <igor.wodiany at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/VOPDInstructions.td
Log Message:
-----------
[AMDGPU] Use sparse direct lookup table for VOPD eligibility (#206534)
This replaces a manually generated table with a new TableGen feature
that enables sparse direct lookup. Additional changes are made to put
both X and Y eligibility into a single table.
Assisted-by: Claude Code
Commit: 024f7891a43c092b5a1e71411b6552186cb25cf1
https://github.com/llvm/llvm-project/commit/024f7891a43c092b5a1e71411b6552186cb25cf1
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/CMakeLists.txt
Log Message:
-----------
[lldb][Windows] Use (lib)python3.dll when linking with limited API (#206585)
In release builds, we already link liblldb against `(lib)python3.dll`
(#201407). However, we still defined
`LLDB_PYTHON_RUNTIME_LIBRARY_FILENAME` to `(lib)python3(.)xx.dll`. So
`LoadPythonRuntime` will try to load the version specific library. You
can reproduce this when trying to run a release build with a different
Python version in PATH.
With this PR, `LLDB_PYTHON_RUNTIME_LIBRARY_FILENAME` will use the stable
ABI library name if we use the limited Python API.
Commit: d8d626abab26d364292dd0c143c0d0d3b18b74d0
https://github.com/llvm/llvm-project/commit/d8d626abab26d364292dd0c143c0d0d3b18b74d0
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenTBAA.h
M clang/test/C/C11/n1285_1.c
M clang/test/CodeGen/AArch64/ls64-inline-asm.c
M clang/test/CodeGen/PowerPC/builtins-ppc-amo.c
M clang/test/CodeGen/allow-ubsan-check.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/errno-tbaa.c
M clang/test/CodeGen/sanitize-metadata-ignorelist.c
M clang/test/CodeGen/sanitize-metadata-nosanitize.c
M clang/test/CodeGen/sanitize-type-globals.cpp
M clang/test/CodeGen/tbaa-class.cpp
M clang/test/CodeGen/tbaa-matrix.c
M clang/test/CodeGen/tbaa-ms-abi.cpp
M clang/test/CodeGen/tbaa-pointers.c
M clang/test/CodeGen/tbaa-struct-bitfield-endianness.cpp
M clang/test/CodeGen/tbaa-struct.cpp
M clang/test/CodeGen/tbaa.c
M clang/test/CodeGen/tbaa.cpp
M clang/test/CodeGen/union-tbaa1.c
M clang/test/CodeGen/wasm-fp16.c
M clang/test/CodeGenCXX/attr-likelihood-if-branch-weights.cpp
M clang/test/CodeGenCXX/attr-likelihood-iteration-stmt.cpp
M clang/test/CodeGenCXX/attr-likelihood-switch-branch-weights.cpp
M clang/test/CodeGenCXX/load-reference-metadata.cpp
M clang/test/CodeGenCXX/std-byte.cpp
M clang/test/CodeGenHLSL/BasicFeatures/OutArgLifetime.hlsl
M clang/test/CodeGenOpenCL/amdgpu-cluster-dims.cl
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
M clang/test/CodeGenOpenCL/amdgpu-printf.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-workgroup-size.cl
M clang/test/CodeGenOpenCL/implicit-addrspacecast-function-parameter.cl
M clang/test/CodeGenOpenCL/preserve_vec3.cl
M clang/test/Headers/__clang_hip_math.hip
M clang/test/Headers/amdhsa_abi.cl
M clang/test/OpenMP/bug54082.c
M clang/test/OpenMP/bug56913.c
M clang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
M clang/test/OpenMP/parallel_if_codegen_PR51349.cpp
M clang/test/OpenMP/taskloop_strictmodifier_codegen.cpp
M llvm/test/Transforms/InstCombine/may-alias-errno.ll
Log Message:
-----------
[Clang] Emit struct TBAA for llvm.errno.tbaa (#201375)
For `!llvm.errno.tbaa`, emit TBAA for accessing the member of a virtual
`__libc_errno` struct. The purpose is to indicate that errno aliases
with `int` accesses, but not `int` member accesses in other structs.
This is an alternative to
https://github.com/llvm/llvm-project/pull/200367.
Commit: e7f7fbc8d38d6d60cd29d497e6a14b9ce26722fb
https://github.com/llvm/llvm-project/commit/e7f7fbc8d38d6d60cd29d497e6a14b9ce26722fb
Author: Krish Gupta <krishom70 at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
M mlir/lib/Dialect/Bufferization/Transforms/CMakeLists.txt
A mlir/lib/Dialect/Bufferization/Transforms/StaticMemoryPlannerAnalysis.cpp
A mlir/test/Dialect/Bufferization/Transforms/static-memory-planner-analysis.mlir
A mlir/test/Dialect/Bufferization/Transforms/static-memory-planner-arena-arg.mlir
Log Message:
-----------
[mlir][bufferization] Add static memory planner pass for compile-time buffer allocation (#205125)
This PR introduces a new bufferization-related pass that performs static memory
planning at compile time. The pass is part of my GSoC 2026 project on
improving MLIR's buffer allocation strategies:
https://summerofcode.withgoogle.com/programs/2026/projects/XsjxBQ9o
### What this does
The static memory planner analyzes buffer lifetimes within a function
and consolidates multiple small `memref.alloc`/`memref.dealloc` pairs
into a single arena allocation. Instead of making separate heap
allocations for each memref, we compute offsets ahead of time and carve
out slices from one large buffer using `memref.view`.
This is useful for embedded systems and other memory-constrained
environments where you want predictable memory usage without runtime
allocation overhead.
### Implementation details
The core idea is pretty straightforward - we scan the function for
allocations that have clear deallocation points, compute how much space
each one needs (including alignment padding), and then create one big i8
buffer to hold everything. Each original allocation gets replaced with a
view into the arena at the computed offset.
I split the planning logic into a pure C++ function
(`trivialMemoryPlanner`) so it can be unit tested independently. Right
now it just does sequential packing, but the design makes it easy to
plug in fancier algorithms later (like actually trying to overlap
non-interfering lifetimes).
A few notable choices:
- The arena is always `memref<Nxi8>` - this lets us handle mixed element
types in the same arena
- We use `memref.view` to reinterpret slices back to the original types.
I initially explored `memref.reinterpret_cast` but it can't change
element types, only adjust offsets/strides
- There's an optional `--arena-mode=arg` that assumes the arena is
passed as a function argument instead of allocated inside the function
- The pass conservatively bails on anything tricky: dynamic shapes,
allocations without clear deallocations, or allocations that escape via
return values
### Testing
Tests cover the main scenarios:
- Basic sequential allocations
- Alignment requirements (mixing 128-byte, 64-byte aligned memrefs,
etc.)
- Both arena modes (allocated vs passed as arg)
- All the error cases where we should skip transformation
Let me know if there are any concerns or if the approach needs
adjusting. Happy to iterate on this!
---------
Signed-off-by: KrxGu <krishom70 at gmail.com>
Commit: f931bae8f1525f8f8bbc0fbf433ca81e586cbc2d
https://github.com/llvm/llvm-project/commit/f931bae8f1525f8f8bbc0fbf433ca81e586cbc2d
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/test/Transforms/LoopIdiom/memset-multiple-accesses.ll
Log Message:
-----------
[LoopIdiom] Form memset on runtime-trip multi-store loops. (#206354)
For runtime trip counts, mayLoopAccessLocation cannot bound the size of
the access, which prevents forming memsets for loops with multiple
stores of the same value.
If all may-aliasing stores write the same value, we can still form
potentially overlapping memsets, as the order of the memsets or writing
the same location multiple times should not matter.
On a large C/C++ based corpus (32k modules), we form ~2% more memsets.
```
base patch
memsets formed 90,063 91,853 +1.99%
```
PR: https://github.com/llvm/llvm-project/pull/206354
Commit: be82f85c0cc80eb2e3b7ce612caf247212618708
https://github.com/llvm/llvm-project/commit/be82f85c0cc80eb2e3b7ce612caf247212618708
Author: Artem Kroviakov <71938912+akroviakov at users.noreply.github.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/test/Dialect/XeGPU/propagate-layout.mlir
Log Message:
-----------
[MLIR][XeGPU] Slice the new dim in broadcast properly (#206136)
Commit: 719f52b3d532a52393afe6b1ab4a3df4746acc23
https://github.com/llvm/llvm-project/commit/719f52b3d532a52393afe6b1ab4a3df4746acc23
Author: Hendrik Hübner <117831077+HendrikHuebner at users.noreply.github.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/include/clang/CIR/CIRToCIRPasses.h
M clang/include/clang/CIR/Dialect/Passes.h
M clang/include/clang/CIR/Dialect/Passes.td
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Options/Options.td
M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
A clang/lib/CIR/Dialect/Transforms/LibOpt.cpp
M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
M clang/lib/CIR/Lowering/CIRPasses.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
A clang/test/CIR/Transforms/lib-opt.cpp
Log Message:
-----------
[CIR] Intitial upstreaming of LibOpt pass (#172487)
This PR Upstreams a skeleton for the LibOpt pass, including the Clang frontend wiring.
Commit: 15d69510a17baa950137be4143f8877dee37cc7c
https://github.com/llvm/llvm-project/commit/15d69510a17baa950137be4143f8877dee37cc7c
Author: ConvolutedDog <yangjianchao16 at nudt.edu.cn>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M mlir/include/mlir/IR/CommonTypeConstraints.td
M mlir/test/Dialect/SparseTensor/invalid.mlir
Log Message:
-----------
[mlir] Fix StridedMemRefRankOf to check isStrided() (#201415)
StridedMemRefRankOf was equivalent to MemRefRankOf: it only applied
HasAnyRankOfPred and never HasStridesPred, so non-strided memref layouts
(e.g. multi-result affine maps) incorrectly passed ODS verification on
ops using this constraint (e.g. sparse_tensor.push_back).
The inBuffer of push_back uses StridedMemRefRankOf, which requires a
strided memref layout (HasStridesPred). A non-strided layout must be
rejected.
Commit: 201b694dc4d3bea93185356b7820221b75842c0d
https://github.com/llvm/llvm-project/commit/201b694dc4d3bea93185356b7820221b75842c0d
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/include/llvm-libc-macros/linux/sched-macros.h
M libc/include/sched.yaml
M libc/src/sched/CMakeLists.txt
M libc/src/sched/linux/CMakeLists.txt
A libc/src/sched/linux/sched_andcpuset.cpp
A libc/src/sched/linux/sched_cpuequal.cpp
A libc/src/sched/linux/sched_orcpuset.cpp
A libc/src/sched/linux/sched_xorcpuset.cpp
A libc/src/sched/sched_andcpuset.h
A libc/src/sched/sched_cpuequal.h
A libc/src/sched/sched_orcpuset.h
A libc/src/sched/sched_xorcpuset.h
M libc/test/src/sched/CMakeLists.txt
A libc/test/src/sched/sched_andcpuset_test.cpp
A libc/test/src/sched/sched_cpuequal_test.cpp
A libc/test/src/sched/sched_orcpuset_test.cpp
A libc/test/src/sched/sched_xorcpuset_test.cpp
Log Message:
-----------
[libc] Implement CPU_{AND,OR,XOR,EQUAL}(_S)? macros (#205412)
This patch implements CPU_AND, CPU_OR, CPU_XOR, and CPU_EQUAL macros
(along with their _S variants) from sched.h.
The implementation follows existing patterns by adding internal entry
points (__sched_andcpuset, __sched_orcpuset, __sched_xorcpuset, and
__sched_cpuequal) that perform bitwise operations on cpu_set_t. For
__sched_cpuequal, I use inline_memcmp instead of a manual loop.
Assisted by Gemini.
Commit: 05bb745dfa9336650ea06eb47f677f18da758b01
https://github.com/llvm/llvm-project/commit/05bb745dfa9336650ea06eb47f677f18da758b01
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstructions.td
Log Message:
-----------
[AMDGPU] Fix regclass for a true16 pattern. NFCI. (#206513)
Add an EXTRACT_SUBREG to make it clear that the result of the pattern is
only the low 16 bits of the result of the V_BFI_B32. This does not seem
to affect codegen, presumably because we are lax about allowing COPY
between VGPR_16 and VGPR_32.
Commit: 5e2b7dab75cf4831098759ce7b15d8810ecf7c31
https://github.com/llvm/llvm-project/commit/5e2b7dab75cf4831098759ce7b15d8810ecf7c31
Author: Prasoon Kumar <prasoonkumar054 at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/utils/lit/lit/builtin_commands/diff.py
Log Message:
-----------
[lit] Use provided streams in builtin diff (#204869)
We want to move the diff builtin to run in-process inside the lit
worker, instead of spawning a subprocess. The current implementation
talks to sys.stdin / stdout / stderr directly, so it can't be called
with different streams.
To fix this, pull diff's logic into run(argv, stdin, stdout, stderr,
cwd), which takes streams as arguments instead of reaching for sys.std*.
main() now just calls run() with the real process streams, so the
spawned-script path is unchanged.
This also makes the 'import util' dual-mode: lit.util when diff is
imported as part of the lit package, falling back to flat util for the
spawned script.
Commit: 67e6697e50d4820987d3f880e92fbb9f29f0d7db
https://github.com/llvm/llvm-project/commit/67e6697e50d4820987d3f880e92fbb9f29f0d7db
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
A llvm/test/CodeGen/MIR/X86/branch-folder-drop-undef.mir
A llvm/test/CodeGen/X86/branch-folder-drop-undef-end-to-end.ll
Log Message:
-----------
[BranchFolding] Introduce tests for PR205135 (NFC) (#206684)
Commit: 1d3d2f43dd00a569bb77e436a5e318baf7de7dbd
https://github.com/llvm/llvm-project/commit/1d3d2f43dd00a569bb77e436a5e318baf7de7dbd
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
A llvm/test/CodeGen/SPIRV/sat-shifts.ll
Log Message:
-----------
[SPIR-V] Lower G_SSHLSAT and G_USHLSAT (#206490)
Commit: a40b88d7f304239bb28845a38e3759052fcf38bf
https://github.com/llvm/llvm-project/commit/a40b88d7f304239bb28845a38e3759052fcf38bf
Author: Prasoon Kumar <prasoonkumar054 at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/utils/lit/lit/builtin_commands/cat.py
Log Message:
-----------
[lit] Add stream-injectable run() core to builtin cat (#204711)
Pull cat's logic out into run(argv, stdin, stdout, stderr, cwd) so it
takes explicit streams instead of touching sys.std* directly. main()
just calls run() with the real process streams, so nothing changes for
the spawned-script path.
Needed before cat can run in-process inside the lit worker
Also switched file reads to raw bytes throughout, since the old
text-mode read + win32 msvcrt.setmode was only there for sys.stdout's
encoding, which doesn't apply once we pass in a binary stream directly.
Error messages still report the original filename, not the cwd-joined
path.
Signed-off-by: Prasoon Kumar <prasoonkumar054 at gmail.com>
Commit: a4e53b05b8118201597e92e8c12fe6c73efc26a6
https://github.com/llvm/llvm-project/commit/a4e53b05b8118201597e92e8c12fe6c73efc26a6
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/BranchFolding.cpp
M llvm/test/CodeGen/MIR/X86/branch-folder-drop-undef.mir
M llvm/test/CodeGen/X86/branch-folder-drop-undef-end-to-end.ll
Log Message:
-----------
[BranchFolding] Drop undef flag when hoisting common code from successors (#205135)
Similarly to what already done during tail merging
(4040c0f4ec135c18e723c1807ec0d1dbbb4cf3fa), make sure the intersection
of undef flags is taken while hoisting common code from successors.
Fixes: https://github.com/llvm/llvm-project/issues/204549.
Commit: b885cfbb055839ea0aa9b2c0fdd95357cae8dfa6
https://github.com/llvm/llvm-project/commit/b885cfbb055839ea0aa9b2c0fdd95357cae8dfa6
Author: Zachary Yedidia <zyedidia at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/docs/LFI.rst
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.h
M llvm/test/MC/AArch64/LFI/exclusive.s
M llvm/test/MC/AArch64/LFI/fp.s
A llvm/test/MC/AArch64/LFI/guard-elim.s
M llvm/test/MC/AArch64/LFI/lse.s
M llvm/test/MC/AArch64/LFI/mem-lr.s
M llvm/test/MC/AArch64/LFI/mem.s
M llvm/test/MC/AArch64/LFI/prefetch.s
M llvm/test/MC/AArch64/LFI/rcpc.s
M llvm/test/MC/AArch64/LFI/simd.s
Log Message:
-----------
[LFI][AArch64] Add guard elimination optimization (#204693)
This adds support for the guard elimination optimization to the AArch64
LFI rewriter. Redundant guards (`add x28, x27, wN, uxtw` instructions)
will be skipped when possible. See the LFI.rst documentation for an
example of the optimization.
Commit: fa7a6025df042fab2bb69947b773c23eaa8dd62b
https://github.com/llvm/llvm-project/commit/fa7a6025df042fab2bb69947b773c23eaa8dd62b
Author: Chandana Mudda <quic_csinderi at quicinc.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
A llvm/test/CodeGen/Hexagon/cttz-elts-widen.ll
M llvm/test/CodeGen/RISCV/rvv/cttz-elts.ll
Log Message:
-----------
[CodeGen] Add widening support for ISD::CTTZ_ELTS (#205841)
WidenVectorOperand had no handler forCTTZ_ELTS/
CTTZ_ELTS_ZERO_POISON, causing a fatal error when the input vector type
needed widening.
Add WidenVecOp_CttzElements which widens the input vector and pads the
extra lanes with all-ones, ensuring they do not contribute spurious
trailing zeros to the count. This follows the same pattern as the
existing
WidenVecOp_VP_CttzElements.
Assisted-by: Claude (Anthropic)
Commit: 7fff69bcb787957a2db55f2b954e9deb2b6bf11e
https://github.com/llvm/llvm-project/commit/7fff69bcb787957a2db55f2b954e9deb2b6bf11e
Author: Tomas Matheson <Tomas.Matheson at arm.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/lib/TargetParser/AArch64TargetParser.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
Log Message:
-----------
[AArch64][NFC] remove CPUInfo.getImpliedExtensions() (#206422)
Commit: e11d7478b8ce55f2caab3e8c67622a7920788a57
https://github.com/llvm/llvm-project/commit/e11d7478b8ce55f2caab3e8c67622a7920788a57
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/fixed-point-math-i64.ll
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/fixed-point-math.ll
Log Message:
-----------
[SPIR-V] Lower G_SMULFIX and G_UMULFIX (#206507)
Commit: 0b834f08ad9d2f013632179b64b9232eb202a555
https://github.com/llvm/llvm-project/commit/0b834f08ad9d2f013632179b64b9232eb202a555
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/test/CodeGen/X86/vector-reduce-add-codesize.ll
M llvm/test/CodeGen/X86/vector-reduce-add-mask.ll
M llvm/test/CodeGen/X86/vector-reduce-add-sext.ll
M llvm/test/CodeGen/X86/vector-reduce-add-subvector.ll
M llvm/test/CodeGen/X86/vector-reduce-add-zext.ll
M llvm/test/CodeGen/X86/vector-reduce-add.ll
Log Message:
-----------
[X86] Add AVX512F-only test coverage to vector-reduce-add tests (#206686)
Many of the lowerings use AVX512BW instructions - make sure we don't try to use them without it
Commit: 9066c66061c523a096eb9a8a9c0c7cc3c8c1bba7
https://github.com/llvm/llvm-project/commit/9066c66061c523a096eb9a8a9c0c7cc3c8c1bba7
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/include/llvm/Object/COFF.h
M llvm/lib/Object/COFFObjectFile.cpp
A llvm/test/tools/llvm-readobj/COFF/arm64x-hybridobj.yaml
M llvm/tools/llvm-readobj/llvm-readobj.cpp
Log Message:
-----------
[Object][COFF] Introduce the .obj.arm64ec section (#205156)
Introduce a new extension section allowing the embedding of ARM64EC
object files inside native ARM64 object files. Its content consists of
an entire, valid ARM64EC COFF object file.
Commit: 2427da51ba44bb9404b74fed4b721735f767e1fc
https://github.com/llvm/llvm-project/commit/2427da51ba44bb9404b74fed4b721735f767e1fc
Author: Nashe Mncube <nashe.mncube at arm.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64.td
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64SchedC1Nano.td
M llvm/lib/Target/AArch64/AArch64SchedC1Premium.td
M llvm/lib/Target/AArch64/AArch64SchedC1Ultra.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN3.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV3.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV3AE.td
M llvm/lib/Target/AArch64/AArch64SchedOlympus.td
M llvm/lib/Target/AArch64/AArch64SchedPredicates.td
M llvm/lib/Target/AArch64/AArch64SchedTSV110.td
M llvm/lib/Target/AArch64/SMEInstrFormats.td
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-basic-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-bf16-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-complxnum-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-flag-manipulation-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-fp16fml-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-fptoint-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-i8mm-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-mte-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-neon-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-rcpc-immo-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sme-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-cme-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-sme-only-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Inputs/sme-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-cme-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-sme-only-instructions.s
M llvm/tools/llvm-mca/llvm-mca.cpp
Log Message:
-----------
[AArch64] SME definitions for C1-Ultra scheduling model (#194850)
This patch extends the C1-Ultra scheduling model to add support for SME
instructions. These instructions differ from legacy scheduling model
instruction definitions in that they are sent to the CME co-processor
when in streaming mode. Modelling these instructions requires several
changes to the scheduling model
- implementations of instructions added by SME but don't require the
processor to be in streaming mode
- definitions of CME processor resources. Instructions sent to this
co-processor are modelled as having latency derived from the SME
software optimization guide (SWOG),
- predicating the process resource groups for instructions sent to the
CME coprocessor when in streaming mode,
- tests for all SME instructions in the software optimization guide
C1-Ultra SWOG: https://developer.arm.com/documentation/111079/3-0
SME SWOG: https://developer.arm.com/documentation/111048/0103/
Assisted by: Codex
Commit: 761eb4e388639ca8d8bbe0855118d98b35736ef2
https://github.com/llvm/llvm-project/commit/761eb4e388639ca8d8bbe0855118d98b35736ef2
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
M llvm/include/llvm/ExecutionEngine/Orc/UnwindInfoRegistrationPlugin.h
M llvm/lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp
M llvm/lib/ExecutionEngine/Orc/TargetProcess/UnwindInfoManager.cpp
M llvm/lib/ExecutionEngine/Orc/UnwindInfoRegistrationPlugin.cpp
Log Message:
-----------
[ORC] Support new ORC runtime in UnwindInfoRegistrationPlugin. (#206680)
Reworks UnwindInfoRegistrationPlugin::Create(ES) to look up the
register/deregister implementation addresses by symbol name, with
default names matching the SPS-CI alloc actions provided by
orc_rt::StandaloneMachOUnwindInfoRegistrar. In OrcTargetProcess,
UnwindInfoManager::addBootstrapSymbols now also vends its register and
deregister actions under those same names, so the new Create overloads
work against either backend.
Also removes a declared but unused (and undefined) Create overload.
Commit: b74fc87d30d8f87c94c3838111ff6a25f86c3e64
https://github.com/llvm/llvm-project/commit/b74fc87d30d8f87c94c3838111ff6a25f86c3e64
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions_no_extension.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions_remove_cap_if.ll
M llvm/unittests/Target/SPIRV/CMakeLists.txt
A llvm/unittests/Target/SPIRV/SPIRVModuleAnalysisTests.cpp
Log Message:
-----------
[SPIR-V] Fix removeCapabilityIf not pruning MinimalCaps (#206478)
removeCapabilityIf erased from AllCaps but not MinimalCaps, which is
what the AsmPrinter iterates to emit OpCapability, so pruned
capabilities were still emitted
Commit: 5515188560107ef07fe1085d6779915ed47b32c0
https://github.com/llvm/llvm-project/commit/5515188560107ef07fe1085d6779915ed47b32c0
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
M llvm/test/CodeGen/AMDGPU/add.ll
M llvm/test/CodeGen/AMDGPU/add_i1.ll
M llvm/test/CodeGen/AMDGPU/addsub64_carry.ll
M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.160bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.16bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.192bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.224bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.288bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.32bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.352bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.48bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-miscellaneous-uniform-intrinsic.ll
M llvm/test/CodeGen/AMDGPU/anyext.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
M llvm/test/CodeGen/AMDGPU/av-split-dead-valno-crash.ll
M llvm/test/CodeGen/AMDGPU/blender-no-live-segment-at-def-implicit-def.ll
M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
M llvm/test/CodeGen/AMDGPU/branch-relaxation-gfx1250.ll
M llvm/test/CodeGen/AMDGPU/branch-relaxation.ll
M llvm/test/CodeGen/AMDGPU/bug-cselect-b64.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
M llvm/test/CodeGen/AMDGPU/coalescer_distribute.ll
M llvm/test/CodeGen/AMDGPU/coexec-scheduler.ll
M llvm/test/CodeGen/AMDGPU/combine-add-zext-xor.ll
M llvm/test/CodeGen/AMDGPU/combine_andor_with_cmps.ll
M llvm/test/CodeGen/AMDGPU/commute-compares-scalar-float.ll
M llvm/test/CodeGen/AMDGPU/ctpop.ll
M llvm/test/CodeGen/AMDGPU/ctpop16.ll
M llvm/test/CodeGen/AMDGPU/ctpop64.ll
M llvm/test/CodeGen/AMDGPU/dagcombine-fma-crash.ll
M llvm/test/CodeGen/AMDGPU/dagcombine-lshr-and-cmp.ll
M llvm/test/CodeGen/AMDGPU/dagcombine-select.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-trunc-to-i1.ll
M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
M llvm/test/CodeGen/AMDGPU/exec-mask-opt-cannot-create-empty-or-backward-segment.ll
M llvm/test/CodeGen/AMDGPU/expand-scalar-carry-out-select-user.ll
M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
M llvm/test/CodeGen/AMDGPU/extract_vector_dynelt.ll
M llvm/test/CodeGen/AMDGPU/fcmp.f16.ll
M llvm/test/CodeGen/AMDGPU/fcopysign.f16.ll
M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-phi-regression-issue130646-issue130119.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_system.ll
M llvm/test/CodeGen/AMDGPU/float-sopc-vopc.ll
M llvm/test/CodeGen/AMDGPU/fneg-modifier-casting.ll
M llvm/test/CodeGen/AMDGPU/fp-classify.ll
M llvm/test/CodeGen/AMDGPU/fp_to_sint.ll
M llvm/test/CodeGen/AMDGPU/fp_to_uint.ll
M llvm/test/CodeGen/AMDGPU/fptosi.f16.ll
M llvm/test/CodeGen/AMDGPU/fptoui.f16.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.ll
M llvm/test/CodeGen/AMDGPU/freeze.ll
M llvm/test/CodeGen/AMDGPU/frem.ll
M llvm/test/CodeGen/AMDGPU/gep-const-address-space.ll
M llvm/test/CodeGen/AMDGPU/implicit-kernarg-backend-usage.ll
M llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
M llvm/test/CodeGen/AMDGPU/infer-addrspace-flat-atomic.ll
M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
M llvm/test/CodeGen/AMDGPU/insert-waitcnts-merge.ll
M llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll
M llvm/test/CodeGen/AMDGPU/insert_vector_elt.ll
M llvm/test/CodeGen/AMDGPU/intrinsic-amdgcn-s-alloc-vgpr.ll
M llvm/test/CodeGen/AMDGPU/issue176578.ll
M llvm/test/CodeGen/AMDGPU/large-phi-search.ll
M llvm/test/CodeGen/AMDGPU/literal64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.kill.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.quadmask.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.signal.isfirst.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.set.inactive.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.fma.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.ll
M llvm/test/CodeGen/AMDGPU/llvm.set.rounding.ll
M llvm/test/CodeGen/AMDGPU/long-branch-reserve-register.ll
M llvm/test/CodeGen/AMDGPU/mad-combine.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-bf16.ll
M llvm/test/CodeGen/AMDGPU/memcpy-crash-issue63986.ll
M llvm/test/CodeGen/AMDGPU/min.ll
M llvm/test/CodeGen/AMDGPU/mixed-vmem-types.ll
M llvm/test/CodeGen/AMDGPU/mul.ll
M llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.ll
M llvm/test/CodeGen/AMDGPU/noclobber-barrier.ll
M llvm/test/CodeGen/AMDGPU/optimize-negated-cond.ll
M llvm/test/CodeGen/AMDGPU/or.ll
M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr-phi.ll
M llvm/test/CodeGen/AMDGPU/s-cluster-barrier.ll
M llvm/test/CodeGen/AMDGPU/s_cmp_0.ll
M llvm/test/CodeGen/AMDGPU/saddo.ll
M llvm/test/CodeGen/AMDGPU/sdiv64.ll
M llvm/test/CodeGen/AMDGPU/select-undef.ll
M llvm/test/CodeGen/AMDGPU/selectcc-opt.ll
M llvm/test/CodeGen/AMDGPU/setcc-opt.ll
M llvm/test/CodeGen/AMDGPU/setcc.ll
M llvm/test/CodeGen/AMDGPU/setcc64.ll
M llvm/test/CodeGen/AMDGPU/sgpr-control-flow.ll
M llvm/test/CodeGen/AMDGPU/sgpr-copy.ll
M llvm/test/CodeGen/AMDGPU/sgpr-to-vreg1-copy.ll
M llvm/test/CodeGen/AMDGPU/si-unify-exit-multiple-unreachables.ll
M llvm/test/CodeGen/AMDGPU/si-unify-exit-return-unreachable.ll
M llvm/test/CodeGen/AMDGPU/sign_extend.ll
M llvm/test/CodeGen/AMDGPU/simplifydemandedbits-recursion.ll
M llvm/test/CodeGen/AMDGPU/sink-addr-memory-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/sminmax.v2i16.ll
M llvm/test/CodeGen/AMDGPU/srem.ll
M llvm/test/CodeGen/AMDGPU/srem64.ll
M llvm/test/CodeGen/AMDGPU/ssubo.ll
M llvm/test/CodeGen/AMDGPU/structurize-hoist.ll
M llvm/test/CodeGen/AMDGPU/sub-zext-cc-zext-cc.ll
M llvm/test/CodeGen/AMDGPU/sub_i1.ll
M llvm/test/CodeGen/AMDGPU/trunc-cmp-constant.ll
M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
M llvm/test/CodeGen/AMDGPU/uaddo.ll
M llvm/test/CodeGen/AMDGPU/udiv64.ll
M llvm/test/CodeGen/AMDGPU/undefined-subreg-liverange.ll
M llvm/test/CodeGen/AMDGPU/uniform-cfg.ll
M llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll
M llvm/test/CodeGen/AMDGPU/urem64.ll
M llvm/test/CodeGen/AMDGPU/usubo.ll
M llvm/test/CodeGen/AMDGPU/v_cmp_gfx11.ll
M llvm/test/CodeGen/AMDGPU/wave32.ll
M llvm/test/CodeGen/AMDGPU/widen-vselect-and-mask.ll
M llvm/test/CodeGen/AMDGPU/workitem-intrinsic-opts.ll
M llvm/test/CodeGen/AMDGPU/wqm.ll
M llvm/test/CodeGen/AMDGPU/xor.ll
M llvm/test/CodeGen/AMDGPU/zero_extend.ll
Log Message:
-----------
[AMDGPU] Select S_CSELECT_B32/64 for uniform extensions from i1 (#204238)
Fixes #59869
Commit: 7738981927297a194246a651bf81a96267505b54
https://github.com/llvm/llvm-project/commit/7738981927297a194246a651bf81a96267505b54
Author: John Brawn <john.brawn at arm.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64Processors.td
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/insert-extract.ll
M llvm/test/Analysis/CostModel/AArch64/mem-op-cost-model.ll
M llvm/test/Analysis/CostModel/AArch64/shuffle-load.ll
M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
M llvm/test/Analysis/CostModel/AArch64/sve-ldst.ll
Log Message:
-----------
[AArch64] Implement latency costs for loads (#201567)
Adjust AArch64TTIImpl::getMemoryOpCost to query the scheduling model to
get the latency of loads, instead of using BasicTTIImpl which returns an
arbitrary cost of 4. For the generic cpu we still use a latency of 4, as
the scheduling model used for generic is a510 which has load latencies
that are too low for many cpus.
Commit: 817878427e0898a5b712456cc56b0c7cf89dfbc1
https://github.com/llvm/llvm-project/commit/817878427e0898a5b712456cc56b0c7cf89dfbc1
Author: Sergio Afonso <safonsof at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M flang/include/flang/Optimizer/OpenMP/Passes.td
M flang/lib/Optimizer/OpenMP/CMakeLists.txt
M flang/lib/Optimizer/OpenMP/FunctionFiltering.cpp
A flang/lib/Optimizer/OpenMP/HostOpFiltering.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/test/Fir/basic-program.fir
M flang/test/Lower/OpenMP/declare-target-link-tarop-cap.f90
M flang/test/Lower/OpenMP/host-eval.f90
M flang/test/Transforms/OpenMP/function-filtering-host-ops.mlir
Log Message:
-----------
[Flang][OpenMP] Split host op and function filtering (#184786)
The function filtering pass, intended to remove host-only functions from
a target device MLIR module on an OpenMP offloading application, also
removes any remaining host operations placed within functions containing
an `omp.target` region.
One problem with this approach is that the function filtering pass runs
relatively early, so followup passes can end up introducing new host
operations that would not be caught in advance. Specifically, there is a
known case where the `LowerWorkdistribute` pass can add
`omp.target_data` operations that then trigger an assertion during MLIR
to LLVM IR translation.
By splitting the host op deletion logic into its own pass, we can delay
it to run after `LowerWorkdistribute`, preventing these transformations
from producing an invalid target device MLIR module. The logic of the
new pass and associated test have been tweaked to properly handle FIR.
Fixes #180503
Commit: c0557795224eb4d664148d9f9c2c90bfb474dd50
https://github.com/llvm/llvm-project/commit/c0557795224eb4d664148d9f9c2c90bfb474dd50
Author: Xing Xue <xingxue at outlook.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M openmp/runtime/CMakeLists.txt
Log Message:
-----------
[libomp][AIX] Rename libatomic to libcompiler_rt (#203594)
This change updates the reference from `libatomic` to `libcompiler_rt`
to match the recent renaming on AIX.
Commit: e66e165da9c15365ff486e8159b868cfb7161192
https://github.com/llvm/llvm-project/commit/e66e165da9c15365ff486e8159b868cfb7161192
Author: Sergio Afonso <safonsof at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M mlir/include/mlir/IR/CommonTypeConstraints.td
Log Message:
-----------
[MLIR] Remove leftover field from Variadic, NFC (#176373)
There appears to be an unused field in the `Variadic` TableGen class,
introduced originally in commit
70b69c54fa8b24519cd549eec10e549471157bb8. It looks like, when removing
the associated `VariadicAtLeast` class
(bf8049dc483131365aea3d3626a2d27b5dfa92de), this field still remained.
Commit: 85bce2e5fc93f89ad5da229e7c3341355f45255a
https://github.com/llvm/llvm-project/commit/85bce2e5fc93f89ad5da229e7c3341355f45255a
Author: David Spickett <david.spickett at arm.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/include/lldb/Utility/Log.h
M lldb/source/Commands/CommandObjectLog.cpp
M lldb/source/Utility/Log.cpp
M lldb/test/API/commands/log/basic/TestLogging.py
M lldb/test/Shell/lldb-server/TestGdbserverErrorMessages.test
M lldb/test/Shell/lldb-server/TestPlatformErrorMessages.test
M lldb/tools/lldb-server/lldb-gdbserver.cpp
M lldb/tools/lldb-server/lldb-platform.cpp
M lldb/unittests/Utility/LogTest.cpp
Log Message:
-----------
[lldb] Fix surprising return values from Log::Enable/DisableChannel (#205561)
Fixes #202615, and the fact that the command "log enable" was not being
marked as a failure in some situations where it printed errors.
The root of this is some unexpected behaviour from Log::EnableChannel
and Log::DisableChannel. They only returned false if the channel was
invalid. If any of the categories were invalid, error messages would be
generated, but EnableChannel would return true.
This is what caused lldb-server not to exit or print any error when this
happened. The lldb command "log enable" was printing the error stream
regardless of result, but the command object was never set to failed
(the same applies to DisableChannel).
To fix this I have made them do what you'd expect. Return false if any
part of the log channel or categories was not recognised.
To do that, I had to allow for GetFlags failing. So that has changed
return type.
The existing behaviour of Log::Enable and Log::Disable is also not
obvious at first. I have not changed it in this patch but I have had to
preserve it, so I'll explain it:
* If given an empty optional for flags, use the default flags.
* If given a flags value of 0, use it, which results in disabling all
categories.
* If given a non-zero flags value, use it, enabling whatever categories
had flags set.
There is also an argument for changing all of this into llvm::expected,
but I'll do that in follow ups. This change only addresses the reported
bug.
Commit: 6dc301f1112dc63033c5e40d1eb6fa91f5409ba4
https://github.com/llvm/llvm-project/commit/6dc301f1112dc63033c5e40d1eb6fa91f5409ba4
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Analysis/Delinearization.cpp
Log Message:
-----------
[Delinearization] Limit the scope of collecting strides (#206688)
Similar to #204145, this patch limits the scope of stride collection
performed by `SCEVCollectStrides`. Before this change, it traversed all
kinds of SCEV expressions. For example, given the expression `{(sext
{0,+,%x}),+,%y}`, it would collect `%x` and `%y` as strides, even though
their integer types (bit widths) differ.
Collecting strides whose types differ from that of the original
expression is not particularly meaningful, because such strides probably
cannot contribute to a successful delinearization of the entire
expression. Furthermore, #204146 revealed that they can trigger
undesirable calls to `SCEVDivision::divide`. Currently, when such
strides are collected, `SCEVDivision::divide` may be invoked on
expressions with different integer types, resulting in division attempts
between incompatible types.
This patch does not add any tests because I could not find a case where
it changes the result. I also did not mark it as NFCI, since it changes
some debug output. However, I believe it does not affect the outcome of
the delinearization itself.
Commit: fef2533e887d3baa9724da52e474278f63be35fa
https://github.com/llvm/llvm-project/commit/fef2533e887d3baa9724da52e474278f63be35fa
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp
A mlir/test/Conversion/SCFToSPIRV/index-switch.mlir
Log Message:
-----------
[mlir][SPIR-V] Convert scf.index_switch to spirv.mlir.selection with spirv.Switch (#200573)
Commit: 42b46452f0c539f9dd3638d25e792eb7368cff72
https://github.com/llvm/llvm-project/commit/42b46452f0c539f9dd3638d25e792eb7368cff72
Author: Hagai Lev Hacohen <100465137+HagaiLevHacohen at users.noreply.github.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M mlir/lib/Dialect/Arith/IR/ArithDialect.cpp
M mlir/lib/Dialect/Arith/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/test/Dialect/Arith/value-bounds-op-interface-impl.mlir
Log Message:
-----------
[mlir][arith] Add ValueBoundsOpInterface external models for the arith operations DivUI and DivSI (#206514)
Add ValueBoundsOpInterface external models for the arith operations
DivUI and DivSI.
Commit: c2da3ace1beac5a7d94e58fd018bbce7298b660d
https://github.com/llvm/llvm-project/commit/c2da3ace1beac5a7d94e58fd018bbce7298b660d
Author: Kelvin Li <kli at ca.ibm.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M compiler-rt/test/builtins/CMakeLists.txt
M compiler-rt/test/builtins/Unit/lit.cfg.py
M compiler-rt/test/builtins/Unit/lit.site.cfg.py.in
Log Message:
-----------
[compiler-rt][test][builtins] Check linker support for --start-group (#205610)
This patch is to add a check for the linker whether the --start-group
option is supported before passing to the linker. This can accommodate
different linker requirements.
Commit: 34b3299f504eaf4a8dec63b48ca5af54e7a5927d
https://github.com/llvm/llvm-project/commit/34b3299f504eaf4a8dec63b48ca5af54e7a5927d
Author: Aaditya <115080342+easyonaadit at users.noreply.github.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll
Log Message:
-----------
[AMDGPU] Support Wave Reduction intrinsics for half types (#202916)
Supported Ops: `fmin`, `fmax`, `fadd`, `fsub`.
Commit: 2eb6379387a4f8dc7b89856afd6d99abfc0c1fec
https://github.com/llvm/llvm-project/commit/2eb6379387a4f8dc7b89856afd6d99abfc0c1fec
Author: Simi Pallipurath <simi.pallipurath at arm.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M libc/startup/baremetal/aarch64/start.cpp
M libc/startup/baremetal/arm/start.cpp
Log Message:
-----------
[LIBC][ARM] Enable MMU setup and alignment fault handling during startup. (#204803)
This change adds MMU initialisation for Arm targets and configures
alignment fault behaviour.
This patch:
1. Add MMU setup for AArch64 startup.
- Create a minimal flat-mapped translation table.
- Configure TTBR0_EL1, MAIR_EL1, and TCR_EL1.
- Mark stack/heap memory as execute-never (XN) when possible.
- Enable the MMU and configure alignment checking through SCTLR_EL1.
2. Add MMU setup for ARMA startup:
- Create a flat 1 MB section mapping covering the address space.
- Configure DACR, TTBCR, and TTBR0.
- Enable MMU, instruction cache, and data cache.
- Configure alignment fault handling through SCTLR.
3. Enable unaligned access trapping on Arm M-profile targets when
`__ARM_FEATURE_UNALIGNED` is not available by setting `CCR.UNALIGN_TRP`.
This allows libc startup code to provide consistent alignment checking
behaviour across Arm architectures while enabling the MMU and basic
memory protection features on A-profile systems.
Assisted-by: codex, reviewed and cross checked, also tested with
ATfE(Arm Toolchain for Embedded), by me.
Commit: bc5e47fb75c383ed6b27aa082a0114934d6bfbbe
https://github.com/llvm/llvm-project/commit/bc5e47fb75c383ed6b27aa082a0114934d6bfbbe
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/test/AST/ByteCode/codegen.cpp
Log Message:
-----------
[clang][bytecode] Check pointer types in ::toRValue() (#206712)
Now that we let more reinterpret_casts through, we need to check we have
the proper type here, too. We already did that for some of the types but
not for records and arrays.
Commit: d53a1a192b44fb9c9e801645f2c3af3d7a2d8445
https://github.com/llvm/llvm-project/commit/d53a1a192b44fb9c9e801645f2c3af3d7a2d8445
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
A llvm/test/Transforms/LoopInterchange/dependency-all-eq.ll
Log Message:
-----------
[LoopInterchange] Add test with dependency `[* =]` and `[= *]` (NFC) (#193479)
Add test cases that are legal to interchange but currently cannot be
interchanged due to restrictions in the legality check.
Commit: e5418e84fd8592c4dcaf412c064ac896aaa1f24c
https://github.com/llvm/llvm-project/commit/e5418e84fd8592c4dcaf412c064ac896aaa1f24c
Author: Prasoon Kumar <prasoonkumar054 at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/utils/lit/lit/builtin_commands/diff.py
Log Message:
-----------
[lit] Fix builtin diff importing system lit.util in subprocess mode (#206723)
'import lit.util' silently picks up a system-installed lit package
instead of the local one, which may lack abs_path_preserve_drive.
Switch to 'from .. import util': in subprocess mode __package__ is None,
so the relative import raises ImportError and the fallback correctly
picks up the local util.py via PYTHONPATH
Signed-off-by: Prasoon Kumar <prasoonkumar054 at gmail.com>
Commit: 00617c92e10fb55be86e6fcf60ef2f5717d8eb92
https://github.com/llvm/llvm-project/commit/00617c92e10fb55be86e6fcf60ef2f5717d8eb92
Author: Dan Blackwell <dan_blackwell at apple.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M compiler-rt/lib/tsan/rtl/tsan_interceptors_libdispatch.cpp
A compiler-rt/test/tsan/Darwin/dispatch_apply.mm
Log Message:
-----------
[Darwin][TSan] Fix false positive race report when using dispatch_apply (#204866)
Currently I have seen some false positive race reports caused by
instrumented block copy code that writes after the release-annotation.
When the block runs on another thread and reads the copied data, it
incorrectly reports this as a race.
This patch casts the block to a `void *` in order to avoid the block
copy - thus avoiding the reported race. This is safe because
`dispatch_apply` runs synchronously, so the block lives beyond all
invocations.
rdar://92286127
Commit: 221936bf981f51271cc8620268696f375b76eb4a
https://github.com/llvm/llvm-project/commit/221936bf981f51271cc8620268696f375b76eb4a
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/test/Dialect/Tosa/availability.mlir
Log Message:
-----------
[mlir][tosa] Add missing int16 extension for row_gather (#206687)
Updates "availability" to include int16 extension to avoid assertion.
Commit: 1196e270a58d6218715d4fb83ac83c34a99b2ca3
https://github.com/llvm/llvm-project/commit/1196e270a58d6218715d4fb83ac83c34a99b2ca3
Author: Valery Pykhtin <valery.pykhtin at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
M llvm/lib/Target/AMDGPU/SIDefines.h
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIPostRABundler.cpp
Log Message:
-----------
[NFC][AMDGPU] Use SIInstrFlags predicates in CodeGen passes (#204829)
Replace raw TSFlags accesses with SIInstrFlags predicate calls.
Part of a series following the introduction of SIInstrFlags predicates.
Commit: 8e61b6a20fe263902deeb779ecc7510a41a42387
https://github.com/llvm/llvm-project/commit/8e61b6a20fe263902deeb779ecc7510a41a42387
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/ProfileData/InstrProf.cpp
Log Message:
-----------
[PGO][NFC] Avoid floating-point block uniformity check (#206547)
Use an integer threshold when deciding whether a block is mostly
uniform.
This keeps the 90% rule exact and avoids relying on floating-point
arithmetic in profile merging.
Commit: b4ba7471a51c847241691238b341572aa64268f5
https://github.com/llvm/llvm-project/commit/b4ba7471a51c847241691238b341572aa64268f5
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[ProfCheck] Exclude FixIrreducible Test (#206731)
>From #206057. We have not gotten to fixing FixIrreducible yet, so
exclude the test for now.
Commit: f0ca72c6f4e177f735e6486f839acb296c4d02f0
https://github.com/llvm/llvm-project/commit/f0ca72c6f4e177f735e6486f839acb296c4d02f0
Author: Vachan <vachanvy05 at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-fshl-rot-128.ll
M llvm/test/CodeGen/X86/vector-fshl-rot-256.ll
M llvm/test/CodeGen/X86/vector-fshr-rot-128.ll
M llvm/test/CodeGen/X86/vector-fshr-rot-256.ll
M llvm/test/CodeGen/X86/vector-rotate-128.ll
M llvm/test/CodeGen/X86/vector-rotate-256.ll
Log Message:
-----------
[X86] Lower vector 8-bit `rotl(x, 1)` to `(x + x) - (x < 0)` pattern (#206221)
Fixes #198059
Commit: 6befe13812e6b5706aaf67c7dda0ba814464d1fe
https://github.com/llvm/llvm-project/commit/6befe13812e6b5706aaf67c7dda0ba814464d1fe
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M cross-project-tests/CMakeLists.txt
M cross-project-tests/lit.cfg.py
Log Message:
-----------
[Dexter] Require lldb-dap for Dexter and log when Dexter is disabled (#206734)
For some time, Dexter tests have been run using lldb-dap when it is
available rather than just lldb/lldb-server. However, the cross project
test dependencies have not been updated since then, meaning that
lldb-dap is not automatically built by check-cross-project. The
Dexter-specific lit config then skips the Dexter tests if lldb-dap is
unavailable, which leads to some check-cross-project builds never
running the Dexter tests. This patch adds lldb-dap to the build
dependencies, and also adds a small log message to inform when the
Dexter tests are skipped; most cases where we skip the Dexter test were
already logged, and this addition expands that to cover all cases.
Commit: 95b72fed788884b78f88032efb3c315e62cdcfd0
https://github.com/llvm/llvm-project/commit/95b72fed788884b78f88032efb3c315e62cdcfd0
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/test/tools/llvm-profdata/malformed-not-space-for-another-header.test
Log Message:
-----------
[PGO] Fix malformed raw profile test (#206738)
A hand-written raw profile test still wrote one extra word in the data
record after the raw profile format changed.
Remove the extra word so the name section starts at the offset expected
by the reader. This keeps the test focused on the trailing garbage that
should report that there is not enough space for another header.
Buildbot failure:
https://github.com/llvm/llvm-project/pull/190708#issuecomment-4839831651
Commit: 84e496da5f0e3e5dde1e405bf6a011347ad4c460
https://github.com/llvm/llvm-project/commit/84e496da5f0e3e5dde1e405bf6a011347ad4c460
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
Log Message:
-----------
[NFC][analyzer] Improve code quality in VisitBinaryOperator (#205151)
I started out to remove the `NodeBuilder` in
`ExprEngine::VisitBinaryOperator` (as a part of my commit series that
removes `NodeBuilder`s), but I noticed that this method is full of
technical debt, so I decided to do a through clean-up (which includes
the removal of the trivial `NodeBuilder`).
Commit: f801f9d0103dd715fde0d3518d47b5fe605f093c
https://github.com/llvm/llvm-project/commit/f801f9d0103dd715fde0d3518d47b5fe605f093c
Author: maflcko <6399679+maflcko at users.noreply.github.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M compiler-rt/lib/hwasan/hwasan_platform_interceptors.h
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
A compiler-rt/test/sanitizer_common/TestCases/Linux/read_pread_chk.c
M compiler-rt/test/tsan/signal_in_read.c
Log Message:
-----------
compiler-rt: intercept fortified read/pread wrappers (#206228)
Add TSAN/common interceptors for glibc fortified read/pread calls, so
that they follow the same blocking and signal-handling path as the plain
libc symbols.
The regression test from https://github.com/llvm/llvm-project/pull/77789
for `read`, when compiled with `-D_FORTIFY_SOURCE=3` fails without the
new interceptors.
I have a regression test for pread(64) as well, but I am not sure if
there is much value in adding it.
I've added a read smoke test in sanitizer common.
---------
Co-authored-by: MarcoFalke <*~=`'#}+{/-|&$^_ at 721217.xyz>
Commit: 57414efcaabfada02265ad59aa63796cd38de102
https://github.com/llvm/llvm-project/commit/57414efcaabfada02265ad59aa63796cd38de102
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DAP.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
Log Message:
-----------
[Dexter] Avoid incorrect state matching against frames below main (#206732)
This patch fixes an error that caused some Dexter test failures, driven
by two separate causes. The first issue is that frames below main were
appearing in the program stacktrace; while Dexter tries to filter frames
below main during the stacktrace collection step based on a pre-written
list, this list may not be comprehensive enough, as the symbol
"___lldb_unnamed_symbol_2a150" has also appeared. In order to guard
against this and future cases that might appear, this patch adds a check
to Dexter for "presentationHint: deemphasize" in the DAP response; this
is added by LLDB (and other dap-based debuggers) as a hint that the
frame is not user source, and should be a generally useful way of
avoiding evaluating frames that are not wanted.
The second issue is a mismatch between the breakpoint-setting logic and
the state-matching logic: the former allows root !where nodes to omit
the "file" field, using the script file as a default file. The state
matching logic does not perform any checking for an omitted file.
Together, this means that we may correctly set breakpoints for e.g.
"test.cpp:10", but when we go to match against frames, the !where node
may match against some other line-10 that appears below (e.g. as a
caller of) the frame at test.cpp:10. This patch copies the default_file
logic to state matching, meaning that we will only match against the
intended frame.
Commit: 1556da0226c25388cae6344f1c44865934a19f52
https://github.com/llvm/llvm-project/commit/1556da0226c25388cae6344f1c44865934a19f52
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/source/Commands/CommandObjectDiagnostics.cpp
M lldb/source/Plugins/BugReporter/CMakeLists.txt
A lldb/source/Plugins/BugReporter/GitHub/CMakeLists.txt
A lldb/source/Plugins/BugReporter/GitHub/GitHubReporter.cpp
A lldb/source/Plugins/BugReporter/GitHub/GitHubReporter.h
M lldb/test/Shell/Diagnostics/TestReport.test
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[lldb] Add a GitHub bug reporter (#206607)
Add a BugReporter plugin that files a diagnostics bundle as an
llvm/llvm-project GitHub issue. File() renders a short Markdown body
from the Diagnostics::Report (version, host, invocation, and a pointer
to the bundle directory to attach), truncates it under a GET-safe URL
length on a UTF-8 character boundary, and opens a pre-filled issues/new
page with Host::OpenURL.
It is gated by LLDB_ENABLE_GITHUB_BUG_REPORTER (default on) and
registers ahead of the no-op fallback, so it is the default destination
for "diagnostics report" while a downstream tree can still register its
own reporter ahead of it.
Commit: 083d2c4b1fa28b4c9f4b684ce260ae2ea648b820
https://github.com/llvm/llvm-project/commit/083d2c4b1fa28b4c9f4b684ce260ae2ea648b820
Author: Jan André Reuter <jan at zyten.de>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M offload/libomptarget/OpenMP/API.cpp
M offload/libomptarget/interface.cpp
M offload/libomptarget/omptarget.cpp
M offload/libomptarget/private.h
M offload/test/api/omp_device_uid.c
M offload/test/api/omp_host_pinned_memory.c
M offload/test/api/omp_target_memcpy_async1.c
M offload/test/api/omp_target_memcpy_async2.c
M offload/test/api/omp_target_memcpy_rect_async1.c
M offload/test/api/omp_target_memcpy_rect_async2.c
M offload/test/api/omp_target_memset.c
Log Message:
-----------
[Offload][OpenMP] Accept `omp_initial_device` for runtime calls (#205290)
In OpenMP v5.2, the constant `omp_initial_device` was introduced, which
was defined as a value of `-1`.
Support for this value was added to Clang and Flang in
09cd2944821fa43d97d8259194b9a0c4fa22de16 and
3c14034c55a296306ad0ea4990f0f1b34e9e5d6e.
However, runtime calls are not aware of this constant. As such,
execution of a runtime function, passing `omp_initial_device` as the
`device_num`, would abort with e.g.,:
```
omptarget fatal error -1: "invalid value" device number '-1' out of range, only 1 devices available
```
To fix this issue, also extend the host device checks in the API
functions to also check for `omp_initial_device`.
For testing, extend API tests using `omp_get_initial_device()` to also
test `omp_initial_device` and extend `omp_device_uid.c` to check if the
UID for `omp_initial_device` and `omp_get_initial_device()` matches.
Partially addresses https://github.com/llvm/llvm-project/issues/192980
(see
https://github.com/llvm/llvm-project/issues/192980#issuecomment-4404241994)
---------
Signed-off-by: Jan André Reuter <j.reuter at fz-juelich.de>
Signed-off-by: Jan André Reuter <jan at zyten.de>
Commit: 16ee9ad499a1d8c500f902571249925849f6f653
https://github.com/llvm/llvm-project/commit/16ee9ad499a1d8c500f902571249925849f6f653
Author: Paul Walker <paul.walker at arm.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AArch64/sve-intrinsics-pred-operations.ll
M llvm/test/CodeGen/AArch64/sve-pred-log.ll
M llvm/test/CodeGen/AArch64/sve-select.ll
Log Message:
-----------
[NFC][LLVM][CodeGen] Refactor testing of SVE predicate logical instructions. (#206737)
Commit: bbf80c543e32530e1e9253d456b705d09424cfbc
https://github.com/llvm/llvm-project/commit/bbf80c543e32530e1e9253d456b705d09424cfbc
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/MSP430/MSP430.h
M llvm/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp
Log Message:
-----------
[MSP430] Port SelctionDAGISel to NewPM
Similar to Lanai (81a2ac204aea4281c8ed9162db5d4ed491cb2cfa) and X86
(7652a59407018c057cdc1163c9f64b5b6f0954eb).
Reviewers: asl
Pull Request: https://github.com/llvm/llvm-project/pull/206615
Commit: 12628715ce61c8db841211eb8683e2f53fa74f0b
https://github.com/llvm/llvm-project/commit/12628715ce61c8db841211eb8683e2f53fa74f0b
Author: Luke Lau <luke at igalia.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
M llvm/test/CodeGen/Hexagon/cttz-elts-widen.ll
M llvm/test/CodeGen/RISCV/rvv/cttz-elts.ll
Log Message:
-----------
[LegalizeTypes] Don't pad cttz_elts_zero_poison with ones when widening op (#206705)
We only need to pad the widened lanes with ones to handle the case for
an all zeroes input. But for cttz_elts_zero_poison, this is already
poison.
The RISC-V scalable vector test can't be precomitted because it crashes
otherwise trying to lower a get_active_lane_mask from
getMaskFromElementCount.
Also while we're here, switch to using TLI.getTypeToTransformTo to be
consistent with other `WidenVecOp_*` implementations.
Commit: 42e975125c6dcf47ad530e680a98dd115e9559b2
https://github.com/llvm/llvm-project/commit/42e975125c6dcf47ad530e680a98dd115e9559b2
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/masked-stores.ll
Log Message:
-----------
[SLP] Initial support for masked stores
Lower non-consecutive stores as a single llvm.masked.store on
targets with masked but not strided store support. Add a TreeEntry::ExpandVectorize
state whose values are expanded into a wider vector via the reuse mask and stored
with a constant mask; reordering stays in ReorderIndices. Adds the analysis, cost,
codegen, and -slp-enable-masked-stores option (default on). Skipped for groups with
consecutive pairs.
Required to fix #203756
Reviewers: hiraditya, RKSimon, bababuck
Pull Request: https://github.com/llvm/llvm-project/pull/204893
Commit: 9ca7d24df396562d6fddddfacde0b4c0ff29246b
https://github.com/llvm/llvm-project/commit/9ca7d24df396562d6fddddfacde0b4c0ff29246b
Author: Victor Perez <victor.pc.upm at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
M mlir/include/mlir/Dialect/Vector/Transforms/LoweringPatterns.h
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorStep.cpp
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
M mlir/test/Dialect/Vector/canonicalize/vector-step.mlir
M mlir/test/Dialect/Vector/int-range-interface.mlir
M mlir/test/Dialect/Vector/invalid.mlir
M mlir/test/Dialect/Vector/ops.mlir
A mlir/test/Dialect/Vector/vector-step-lowering.mlir
Log Message:
-----------
[mlir][vector] Allow signless integer element types in `vector.step` (#205142)
`vector.step` previously produced only `index` vectors. Allow its result
element type to also be a signless integer of at least 8 bits. If a
lane's value in the sequence is not representable in the element type it
wraps around (the value is truncated to the element bitwidth),
consistent with the
[`llvm.stepvector`](https://llvm.org/docs/LangRef.html#llvm-stepvector-intrinsic)
intrinsic that `vector.step` lowers to.
ConvertVectorToLLVM now lowers `vector.step` to `llvm.intr.stepvector`
for all vector types (fixed-width and scalable) rather than
materializing an `arith.constant` for fixed-width vectors; the constant
form does not make sense at the LLVM boundary, where the intrinsic
already carries the target index bitwidth.
The in-dialect `arith.constant` lowering remains for other pipelines and
is exposed through a new `transform.apply_patterns.vector.lower_step`
op. `populateVectorStepLoweringPatterns` takes an `indexBitwidth` used
to materialize `index`-typed steps (default 64, preserving existing
behavior; 0 leaves them untouched). Integer range inference and the
VectorToSPIRV lowering are likewise updated for the new element types
and wrap-around.
The wrap-around path has no SPIR-V test: SPIR-V vector types are limited
to at most a handful of elements, so no legal SPIR-V vector is large
enough to exceed an 8-bit (or wider) element range.
---
**Note**: AI used to generate the code in this PR.
Signed-off-by: Víctor Pérez Carrasco <victorperez at fb.com>
Commit: 2902b031f0fd3e02444db4b536da798d4d358ea4
https://github.com/llvm/llvm-project/commit/2902b031f0fd3e02444db4b536da798d4d358ea4
Author: Raphael Isemann <rise at apple.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/include/lldb/Core/Debugger.h
M lldb/include/lldb/lldb-private-enumerations.h
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
M lldb/source/Core/IOHandler.cpp
M lldb/test/API/iohandler/autosuggestion/TestAutosuggestion.py
Log Message:
-----------
[lldb] Add tab-mode to autosuggestion feature (#206728)
Commit: 6d8e36361da33f1c86e64bddb07f94f0da6c5d7f
https://github.com/llvm/llvm-project/commit/6d8e36361da33f1c86e64bddb07f94f0da6c5d7f
Author: Deepak Eachempati <deepak.eachempati at hpe.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M flang/docs/GettingInvolved.md
M flang/docs/OpenMPSupport.md
M openmp/docs/SupportAndFAQ.rst
Log Message:
-----------
[flang][OpenMP] add Flang OpenMP Support page (NFC) (#205833)
This adds a dedicated Flang OpenMP Support page for tracking OpenMP
feature support that entails modifications to Flang compiler components.
The expectation is that all other OpenMP feature work will continue to
be tracked under the Clang OpenMP support page.
Tables are added for each released OpenMP version since 4.0, and an
additional for the next future release. A Notes column describes current
status, and a separate column is added for a developer to record that
they are working on a given feature.
Commit: f49ca7997a4976df71a9defd928fbdc95550a783
https://github.com/llvm/llvm-project/commit/f49ca7997a4976df71a9defd928fbdc95550a783
Author: Denys Fedoryshchenko <nuclearcat at nuclearcat.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.md
M clang/include/clang/Basic/BuiltinHeaders.def
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaExpr.cpp
A clang/test/Sema/Inputs/warn-fortify-source-umask-darwin.h
A clang/test/Sema/Inputs/warn-fortify-source-umask-glibc.h
A clang/test/Sema/Inputs/warn-fortify-source-umask.h
A clang/test/Sema/warn-fortify-source-umask-darwin.c
A clang/test/Sema/warn-fortify-source-umask-forward-decl.c
A clang/test/Sema/warn-fortify-source-umask-glibc.c
A clang/test/Sema/warn-fortify-source-umask-not-builtin.c
A clang/test/Sema/warn-fortify-source-umask-record-member.c
A clang/test/Sema/warn-fortify-source-umask-redecl.c
M clang/test/Sema/warn-fortify-source.c
Log Message:
-----------
[clang] Warn on umask() argument bits outside 0777 (#198130)
Add a -Wfortify-source warning when the constant-evaluated argument to
umask(mode_t) has bits set outside 0777. Those bits are silently
discarded by the kernel, so setting them is almost always a typo
(0xFFFF, 7777-as-decimal, etc.).
Match the corresponding bionic libc diagnose_if check.
The Sema-side dispatch is gated to identify the libc declaration of
umask and reject user-supplied lookalikes: at least one redeclaration of
the resolved function must come from a system header. That is where libc
declares umask.
Matching on the `mode_t` typedef name is not used because libcs disagree
on the spelling: glibc's <sys/types.h> writes the prototype as `__mode_t
umask(__mode_t)` via an internal typedef, bionic and musl use `mode_t`
directly, and so on. The system-header origin is the portable
libc-identity signal; coarser shape checks (name + extern "C" +
non-variadic + 1 integer arg + integer return) fill in the remaining
filtering.
The negative tests cover:
* `int umask(int)` in user code,
* `typedef unsigned mode_t; extern mode_t umask(mode_t);` in user code
(matches the libc typedef name but not the system-header origin).
A positive test mirrors glibc's `__mode_t umask(__mode_t)` shape from a
`#pragma GCC system_header`-marked Inputs/ header to lock the gate
against regressions on the spelling.
No Static Analyzer summary is added: modeling umask's argument as a
WithinRange precondition would prune feasible caller branches such as
`umask(m); if (m > 0777) ...`, even though umask is defined behavior for
any input (the kernel masks off the high bits). The Sema check covers
the constant-typo case that bionic's diagnose_if targets.
Commit: 19a0860da1e2fa0b65edb005b214abb2206e1e19
https://github.com/llvm/llvm-project/commit/19a0860da1e2fa0b65edb005b214abb2206e1e19
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_aggregates_expected.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_list_aggregates_expected.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_aggregates.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_list_aggregates.cpp
Log Message:
-----------
Reapply "[Dexter] Add rewriting for aggregate variables (#202800)" (#206535)
This reverts commit 5bf495456b9898c45c437b8dadae21417d04a9a5.
Reapply the original patch after the underlying issue was fixed in PR
#206732.
Commit: 668803fa73bdf2f8d095162a1f81c000d18458c9
https://github.com/llvm/llvm-project/commit/668803fa73bdf2f8d095162a1f81c000d18458c9
Author: Roman Beliaev <r.beliaev at ispras.ru>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M compiler-rt/lib/profile/InstrProfilingPlatformWindows.c
M compiler-rt/lib/profile/InstrProfilingWriter.c
A compiler-rt/test/profile/Darwin/instrprof-mcdc-correlation.c
A compiler-rt/test/profile/Inputs/instrprof-mcdc-correlation.cpp
A compiler-rt/test/profile/Linux/instrprof-mcdc-correlation.c
M compiler-rt/test/profile/instrprof-binary-correlate-debuginfod.c
M compiler-rt/test/profile/instrprof-binary-correlate.c
M llvm/include/llvm/ProfileData/InstrProfCorrelator.h
M llvm/include/llvm/ProfileData/InstrProfReader.h
M llvm/lib/ProfileData/InstrProfCorrelator.cpp
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
A llvm/test/Instrumentation/InstrProfiling/debug-info-correlate-bitmap.ll
Log Message:
-----------
Reland "[MC/DC][Coverage] Enable profile correlation for MC/DC" (#204675)
Commit: 2d98d55f7d97aee292fe22040d3e17ef6f7dba23
https://github.com/llvm/llvm-project/commit/2d98d55f7d97aee292fe22040d3e17ef6f7dba23
Author: jpwang <jpwang at smail.nju.edu.cn>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
A mlir/test/Dialect/SparseTensor/sparse_tensor_codegen_expand.mlir
Log Message:
-----------
[mlir][sparse_tensor] Handle block argument for sparse_tensor.expand codegen (#205487)
Handle the case where the source tensor of `sparse_tensor.expand` is a
block argument in SparseExpandConverter. Previously it unconditionally
uses `getDefiningOp()`, which is `null` for block arguments and causes a
crash.
A regression test is added to cover `sparse_tensor.expand` on a function
argument.
Fixes #204712
Commit: d71ef546a89548d5c04f47c272741583193abc8d
https://github.com/llvm/llvm-project/commit/d71ef546a89548d5c04f47c272741583193abc8d
Author: Matthias Wippich <mfwippich at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/include/clang/Sema/Sema.h
Log Message:
-----------
[clang][NFC] Fix attribute spelling in comment (#206645)
This patch fixes a typo/misspelling of the flag_enum attribute in a
comment.
Commit: c2ffcc0a49d92eddd989bf29eea7182ca98803fe
https://github.com/llvm/llvm-project/commit/c2ffcc0a49d92eddd989bf29eea7182ca98803fe
Author: Kelvin Li <kli at ca.ibm.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M flang-rt/test/lit.cfg.py
Log Message:
-----------
[flang-rt][AIX] Set OBJECT_MODE=any in flang-rt test (#206639)
This patch to set OBJECT_MODE=any on AIX to have tools able to handle
both different bit mode objects.
This fixes the compare_iso_fortran_env_symbols.f90 failure on AIX. The
default of llvm-nm is 32-bit but the objects in the test is 64-bit.
Setting OBJECT_MODE=any allows the tool accepts either bit modes.
Commit: 2b1720f41724c51fb719ee30504719c8fd37fb72
https://github.com/llvm/llvm-project/commit/2b1720f41724c51fb719ee30504719c8fd37fb72
Author: adams381 <adams at nvidia.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
M clang/test/CIR/Transforms/abi-lowering/coerce-record-to-record-via-memory.cir
A clang/test/CIR/Transforms/abi-lowering/direct-flatten.cir
Log Message:
-----------
[CIR] Implement Direct+canFlatten in CallConvLowering (#201719)
CallConvLowering previously ignored the `canFlatten` flag on Direct classifications: a Direct arg with a multi-field struct coerced type was passed as a single struct argument rather than N scalar register arguments. This is the register-passing pattern the x86-64 SysV ABI uses for structs like `struct { long a, b; }`.
A new helper `getFlattenedCoercedType` centralizes the detection (Direct classification, multi-field coerced struct, `canFlatten` set); the three lowering sites in `CIRABIRewriteContext.cpp` follow.
Commit: 53a09a5c86929eac80f2797f2432cf109e223e34
https://github.com/llvm/llvm-project/commit/53a09a5c86929eac80f2797f2432cf109e223e34
Author: Jeremy Kun <jkun at google.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.h
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/CMakeLists.txt
M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
M mlir/lib/RegisterAllDialects.cpp
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][nvvm] extract NVVM inliner interface from LLVM dialect (#206557)
This change extracts the NVVM inliner interface from the LLVM dialect
registration. This is intended to be a build-time optimization: you can
now register the LLVM dialect inliner without incurring a dependency on
the NVVM sub-dialect.
Cf.
https://discourse.llvm.org/t/rfc-separate-gpu-specific-transforms-from-llvmirtransforms/91151
Commit: 367498977c36bdb723d5298f6637c8a9a5c74d77
https://github.com/llvm/llvm-project/commit/367498977c36bdb723d5298f6637c8a9a5c74d77
Author: David Young <davidayoung at meta.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/include/llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h
M llvm/lib/DWP/DWP.cpp
M llvm/lib/DebugInfo/DWARF/DWARFDebugAbbrev.cpp
A llvm/test/tools/llvm-dwp/X86/abbrev_code_not_found.s
A llvm/test/tools/llvm-dwp/X86/implicit_const.s
A llvm/test/tools/llvm-dwp/X86/implicit_const_dwo_id.s
M llvm/unittests/DebugInfo/DWARF/DWARFDebugAbbrevTest.cpp
Log Message:
-----------
[llvm-dwp] Fix infinite loop on DWARFv5 DW_FORM_implicit_const (#205567)
llvm-dwp could spin forever (100% CPU, never terminating) when packaging
a
DWARFv5 .dwo whose abbreviation table uses DW_FORM_implicit_const.
A DWARF abbreviation declaration is a list of (attribute, form) ULEB128
pairs terminated by a (0, 0) pair. DW_FORM_implicit_const is the only
form
that stores an additional value -- an SLEB128 constant -- in the
abbreviation declaration itself (the value is not present in
.debug_info).
getCUAbbrev() and getCUIdentifiers() in llvm/lib/DWP/DWP.cpp walked
these
pairs but never consumed that extra SLEB128, so every implicit_const
entry
shifted the cursor by one ULEB and desynced the rest of the table walk.
With enough implicit_const attributes preceding the compile unit's
abbreviation code, the scan in getCUAbbrev() runs off the end of
.debug_abbrev without ever matching the code. Past end-of-buffer
DataExtractor::getULEB128 returns 0 without advancing the offset, so the
loop `while (getULEB128(&Offset) != AbbrCode)` spins on `0 != AbbrCode`
forever. The input is valid DWARFv5; the bug is entirely in llvm-dwp.
Consume the implicit_const SLEB128 in both abbreviation-walk loops so
the
(attribute, form) walk stays aligned, matching how
DWARFAbbreviationDeclaration::extract parses the same data.
Adds a regression test that hangs before this change and passes after
it.
AI assisted with: claude
Commit: 0f51760a342cd8fed1c657e6ca134097c9e8f88c
https://github.com/llvm/llvm-project/commit/0f51760a342cd8fed1c657e6ca134097c9e8f88c
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CMakeLists.txt
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.h
A lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.cpp
A lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.h
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.h
Log Message:
-----------
[lldb] Move common functionality out of Itanium ABI runtime (#191275)
To be able to support both the Microsoft ABI and Itanium ABI in the same
process, this moves out common functionality of the Itanium ABI. It
introduces the `CommonABIRuntime` which is the base class for both ABIs.
In `CPPLanguageRuntime` we store a vector of these runtimes. For
exception breakpoints, we let both add their functions and filters.
For dynamic values, we resolve the VTable first. This is identical on
both ABIs - the first "member" of a dynamic class will be the VTable.
Getting to the dynamic type afterward is ABI specific. So when we found
the VTable symbol, we ask each ABI if it's a symbol they can handle. If
so, we remember that and let the ABI do the rest.
When adding `GetDynamicTypeAndAddress` for the MS ABI, I needed the
functionality to find a type by name and cache the dynamic type info.
These were moved to `CommonABIRuntime` as well.
Commit: fa12670d2cc416a1d0cdf8bb8dd456853ef28afb
https://github.com/llvm/llvm-project/commit/fa12670d2cc416a1d0cdf8bb8dd456853ef28afb
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M flang/lib/Semantics/check-omp-variant.cpp
M flang/test/Semantics/OpenMP/declare-variant-match.f90
M flang/test/Semantics/OpenMP/declare-variant.f90
Log Message:
-----------
[flang][OpenMP] DECLARE VARIANT: add more semantic checks (#206714)
1. Require the base and variant procedures to have compatible
characteristics as required by OpenMP 6.0 section 9.6.
2. Reject adjust_args/append_args as not yet implemented.
Commit: bd6adfedc776c07caf158e59367d9c246c933510
https://github.com/llvm/llvm-project/commit/bd6adfedc776c07caf158e59367d9c246c933510
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/test/Shell/SymbolFile/NativePDB/local-variables.cpp
Log Message:
-----------
[lldb][Windows] Relax Filecheck requirements in local-variables.cpp (#205574)
When using `lldb-server` on Windows, lldb's output gets mangled with
lldb-server's info prints. This causes the `local-variables.cpp` test to
fail.
Relax that test by switching from `CHECK-NEXT` to `CHECK-DAG` where the
prints are emitted.
This is an alternative to
https://github.com/llvm/llvm-project/pull/205572.
rdar://181035363
Commit: 04079deb547c91eff6c6e2b820dbe6937c72fcf5
https://github.com/llvm/llvm-project/commit/04079deb547c91eff6c6e2b820dbe6937c72fcf5
Author: Maryam Moghadas <maryammo at ca.ibm.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/Headers/CMakeLists.txt
A clang/lib/Headers/zos_wrappers/grp.h
A clang/lib/Headers/zos_wrappers/locale.h
A clang/lib/Headers/zos_wrappers/math.h
A clang/lib/Headers/zos_wrappers/poll.h
A clang/lib/Headers/zos_wrappers/stdlib.h
A clang/lib/Headers/zos_wrappers/string.h
A clang/lib/Headers/zos_wrappers/time.h
A clang/lib/Headers/zos_wrappers/variant.h
A clang/test/Headers/Inputs/zos/usr/include/grp.h
A clang/test/Headers/Inputs/zos/usr/include/locale.h
A clang/test/Headers/Inputs/zos/usr/include/math.h
A clang/test/Headers/Inputs/zos/usr/include/poll.h
A clang/test/Headers/Inputs/zos/usr/include/stdlib.h
A clang/test/Headers/Inputs/zos/usr/include/string.h
A clang/test/Headers/Inputs/zos/usr/include/time.h
A clang/test/Headers/Inputs/zos/usr/include/variant.h
A clang/test/Headers/zos-guard.c
Log Message:
-----------
[z/OS][Clang] Add wrapper headers to avoid macro name conflicts (#204472)
Some z/OS system headers define macros (e.g. __time, __math) that
conflict with user identifiers and break compilation. These wrappers include
the system headers and neutralize the problematic macros.
Commit: 246a7a0da2eb988a2ffabd68ac9381b1adb86f8d
https://github.com/llvm/llvm-project/commit/246a7a0da2eb988a2ffabd68ac9381b1adb86f8d
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[llvm] Add readobj call graph section flag to release notes (#206627)
llvm-readelf supports --call-graph-section which dumps the
experimental call graph section. Adding this to release notes.
Commit: 276f45fcf2e9d3f59bc7dc3bb924888b0d6cbb56
https://github.com/llvm/llvm-project/commit/276f45fcf2e9d3f59bc7dc3bb924888b0d6cbb56
Author: Chinmay Deshpande <chdeshpa at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
A llvm/test/CodeGen/AMDGPU/s-barrier-signal-var-gep.ll
Log Message:
-----------
[AMDGPU][NFC] Pre-commit test for constant-offset named barrier signal_var (#205217)
Commit: 1c4c6f701ddd0645114f97b126654309a0d9dcb0
https://github.com/llvm/llvm-project/commit/1c4c6f701ddd0645114f97b126654309a0d9dcb0
Author: michaelselehov <michael.selehov at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/include/clang/Driver/OffloadBundler.h
M clang/lib/Driver/OffloadBundler.cpp
Log Message:
-----------
[Offload][NFC] Deduplicate CompressedOffloadBundle into llvm::object (#206741)
The compressed offload bundle (CCOB) format had two byte-for-byte
identical implementations: one in clang/lib/Driver/OffloadBundler.cpp
and the canonical one in llvm/lib/Object/OffloadBundle.cpp (already used
by llvm-objdump, comgr and others).
Remove the Clang-side copy (class declaration, compress/decompress/
tryParse, the RawCompressedBundleHeader union, getHeaderSize, the
formatWithCommas helper and the private timer group) and route the
driver through llvm::object::CompressedOffloadBundle, which is already
linked via the Object component.
The only API difference is the verbose-reporting channel (bool Verbose
vs. raw_ostream *VerboseStream); the driver now passes &llvm::errs()
when verbose output is requested, preserving the previous behavior.
No functional change intended.
Co-authored-by: mselehov <mselehov at amd.com>
Commit: d4c866a9edd45e53fab35b0d828ee35a47253983
https://github.com/llvm/llvm-project/commit/d4c866a9edd45e53fab35b0d828ee35a47253983
Author: sujianIBM <Jian.Su at ibm.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/stack-protector-guard.c
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
A llvm/test/CodeGen/SystemZ/zos-stack-protector.ll
Log Message:
-----------
[SystemZ][z/OS] Reapply "Add support of stack guard on z/OS (#206045)" (#206622)
This PR reapplies changes in PR Add support of stack guard on z/OS
(#206045) and then
- Fixes a bug when emitting instruction `llgt`. The dest reg should be
def.
- Adds `--verify-machineinstr` to lit test.
Commit: c49bda1f8d9c70d03d7e09a2db8a995aed2b5b22
https://github.com/llvm/llvm-project/commit/c49bda1f8d9c70d03d7e09a2db8a995aed2b5b22
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/include/llvm/Transforms/Instrumentation/CFGMST.h
Log Message:
-----------
[PGO][NFC] Make CFGMST debug dump order deterministic (#200835)
The PGO instrumentation pass can print a per-function CFG-MST dump under
-debug-only=pgo-instrumentation. The basic blocks were listed in the
iteration order of a DenseMap keyed by the block pointer, so the same
function could print its blocks in a different order from one run or
machine to the next, even when nothing about the MST actually changed.
That makes the dump hard to diff. For example, two runs of the same
build
could print the same blocks in different orders:
```
run 1: run 2:
BB: entry ... BB: if.else ...
BB: if.then ... BB: entry ...
BB: if.else ... BB: if.then ...
```
and a plain `diff` would flag every line, hiding any real difference.
Sort the blocks by their assigned MST Index (with the block name as a
stable tiebreaker) before printing, so the dump is reproducible across
runs and platforms. This only affects -debug/dump output; codegen is
unchanged (NFC).
Commit: 1fca1ae11e007c58b2dce781ad0d507ec6c1f69f
https://github.com/llvm/llvm-project/commit/1fca1ae11e007c58b2dce781ad0d507ec6c1f69f
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp
M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.h
M lldb/source/Plugins/Process/Windows/Common/ForwardDecl.h
M lldb/source/Plugins/Process/Windows/Common/IDebugDelegate.h
M lldb/source/Plugins/Process/Windows/Common/LocalDebugDelegate.cpp
M lldb/source/Plugins/Process/Windows/Common/LocalDebugDelegate.h
M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp
M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.h
M lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.h
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
Log Message:
-----------
[lldb][Windows] Synchronize on LOAD_DLL_DEBUG_EVENT in lldb-server (#203334)
On Windows, deferred breakpoints in dlopen'd DLLs never fire when using
lldb-server.exe. The debuggee runs past the loader and executes code in
the DLL before the client receives the load notification.
This patch surfaces `LOAD_DLL_DEBUG_EVENT` / `UNLOAD_DLL_DEBUG_EVENT` as
a synchronous stop, which mirrors the existing exception-event
mechanism. The debug loop parks on a predicate after sending the
notification.
lldb skips the handshake for `C:\Windows\*` (no user breakpoints can
resolve here) which drastically improves performances, and for clients
that didn't advertise `qXfer:libraries:read+`.
Fixes `TestBreakInLoadedDylib` and `TestLoadUnload` when running the
tests with `LLDB_USE_LLDB_SERVER=1`.
rdar://180500207
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: bdec41e358a9232c036f63e3f5b7b92ee02c292c
https://github.com/llvm/llvm-project/commit/bdec41e358a9232c036f63e3f5b7b92ee02c292c
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/Headers/CMakeLists.txt
R clang/lib/Headers/zos_wrappers/grp.h
R clang/lib/Headers/zos_wrappers/locale.h
R clang/lib/Headers/zos_wrappers/math.h
R clang/lib/Headers/zos_wrappers/poll.h
R clang/lib/Headers/zos_wrappers/stdlib.h
R clang/lib/Headers/zos_wrappers/string.h
R clang/lib/Headers/zos_wrappers/time.h
R clang/lib/Headers/zos_wrappers/variant.h
R clang/test/Headers/Inputs/zos/usr/include/grp.h
R clang/test/Headers/Inputs/zos/usr/include/locale.h
R clang/test/Headers/Inputs/zos/usr/include/math.h
R clang/test/Headers/Inputs/zos/usr/include/poll.h
R clang/test/Headers/Inputs/zos/usr/include/stdlib.h
R clang/test/Headers/Inputs/zos/usr/include/string.h
R clang/test/Headers/Inputs/zos/usr/include/time.h
R clang/test/Headers/Inputs/zos/usr/include/variant.h
R clang/test/Headers/zos-guard.c
Log Message:
-----------
Revert "[z/OS][Clang] Add wrapper headers to avoid macro name conflicts" (#206778)
Reverts llvm/llvm-project#204472
Test is failing in multiple configurations in multiple ways.
Commit: 5c02f7530c796c5b46c239111650588b69cc62f9
https://github.com/llvm/llvm-project/commit/5c02f7530c796c5b46c239111650588b69cc62f9
Author: kwyatt-ext <kwyatt.external at hpe.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/include/clang/Options/FlangOptions.td
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Semantics/expression.h
M flang/include/flang/Semantics/symbol.h
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Evaluate/fold-integer.cpp
M flang/lib/Evaluate/formatting.cpp
M flang/lib/Evaluate/tools.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Semantics/check-case.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/resolve-labels.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/rewrite-parse-tree.cpp
M flang/lib/Semantics/tools.cpp
M flang/lib/Support/Fortran-features.cpp
M flang/test/Semantics/case01.f90
A flang/test/Semantics/enumeration-type-declarations.f90
A flang/test/Semantics/enumeration-type-forward-ref.f90
A flang/test/Semantics/enumeration-type-relational.f90
Log Message:
-----------
[flang] Enumeration Type: (PR 2/5) Name Resolution + Expression + Relational + SELECT CASE (#193028)
This PR completes the addition of enumeration types to the symbol table.
It adds core semantic analysis for ENUMERATION TYPE, name resolution,
expression analysis for constructors and relational operators, and
SELECT CASE support. Also includes a bug fix for non-constant
enumeration comparisons in Relate() (scope() → GetScope()).
It is the 2nd of 5 stacked PRs.
AI Usage Disclosure: AI tools (Claude Opus 4.6) were used to assist with
implementation of this feature and test code generation. I have
reviewed, modified, and tested all AI-generated code.
---------
Co-authored-by: Kevin Wyatt <kwyatt at hpe.com>
Commit: ddb0f5fa5148cd73f9892ba17040d6d2b610dedc
https://github.com/llvm/llvm-project/commit/ddb0f5fa5148cd73f9892ba17040d6d2b610dedc
Author: Amr Hesham <amr96 at programmer.net>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
A clang/test/CIR/CodeGen/agg-atomic-cast.c
R clang/test/CIR/CodeGen/agg-atomic-cast.cpp
Log Message:
-----------
[CIR] Implement Aggregate atomic to non-atomic cast (#206322)
Implement support for the Aggregate atomic to non-atomic cast
Commit: 3325a1f02e35bf388fbb87cad8281ca7fab96a61
https://github.com/llvm/llvm-project/commit/3325a1f02e35bf388fbb87cad8281ca7fab96a61
Author: Jeremy Kun <jkun at google.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.h
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/CMakeLists.txt
M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
M mlir/lib/RegisterAllDialects.cpp
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][nvvm] Revert #206557 (#206770)
https://lab.llvm.org/buildbot/#/builders/230/builds/3247
https://github.com/llvm/llvm-project/pull/206557#issuecomment-4845803419
Commit: 638d71403a8598bb061b874ab39b8f9c6f0a97f0
https://github.com/llvm/llvm-project/commit/638d71403a8598bb061b874ab39b8f9c6f0a97f0
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/VPlan/buildvector-first-lane-only.ll
Log Message:
-----------
Revert "[VPlan] Replace first-lane uses of BuildVector." (#206774)
Reverts llvm/llvm-project#206566
Causes miscompiles, see discussion on the original PR.
Commit: 45afced2e7fedf05b0fd5a450e18cd33ce6d944b
https://github.com/llvm/llvm-project/commit/45afced2e7fedf05b0fd5a450e18cd33ce6d944b
Author: Greg Clayton <gclayton at fb.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/include/lldb/Core/ModuleSpec.h
M lldb/include/lldb/Target/DynamicLoader.h
M lldb/include/lldb/Target/Process.h
M lldb/source/Core/DynamicLoader.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.h
M lldb/source/Target/Process.cpp
M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
A lldb/test/API/functionalities/postmortem/elf-core/elf-dyld-nt-file-mismatch.yaml
Log Message:
-----------
Fix ProcessElfCore::FindModuleUUID() so it work with symlinks. (#206601)
Resumbitting https://github.com/llvm/llvm-project/pull/205235 with
disabled parallel module loading to fix buildbot deadlock.
ProcessElfCore was reading the NT_FILE list and using that to help
FindModuleUUID to provide UUID information when loading core files. The
NT_FILE list contains resolved paths only, while the
DynamicLoaderPOSIXDYLD plug-in was using paths found in the r_debug
structure which contains a linked list of all of the shared libraries in
a process. The issue was these paths could be symlinks which would cause
ProcessELFCore::FindModuleUUID(...) to fail because the paths wouldn't
match up. This led to the ProcessELFCore often not being able to provide
UUIDs for shared libraries and cause the incorrect binaries to be loaded
from the current machine even when the shared library UUIDs don't match.
The solution was to add the ability for a ModuleSpec to contain a load
address for the shared library. This allows ProcessELFCore to uniquely
identify a library regardless of the name used in NT_FILE. We can now
correctly supply the UUID from the .gnu-build-id to any binaries which
use symlinks when linking, but have differing resolved paths to the
libraries.
The process virtual function for finding a UUID was changed from:
virtual lldb_private::UUID FindModuleUUID(const llvm::StringRef path);
to:
virtual bool FindModuleUUID(ModuleSpec &spec);
to allow Process::FindModuleUUID to rely on other data in the ModuleSpec
since the path isn't enough.
We will be able to use the ModuleSpec's load address for creating a
module from a ModuleSpec, but that isn't in this PR.
Commit: 397eecf82a8a8a191f839039791b193d328f204b
https://github.com/llvm/llvm-project/commit/397eecf82a8a8a191f839039791b193d328f204b
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/docs/HIPSupport.rst
Log Message:
-----------
[docs][HIP] Document offload PGO workflow (#200208)
Add a section to HIPSupport.rst describing IR-level profile-guided
optimization for HIP device code. -fprofile-generate instruments both
host and device; the runtime writes a host .profraw and one set of
device .profraw files per --offload-arch= value, with the standard
LLVM_PROFILE_FILE substitutions applying to both. Host and each
per-architecture device profile are merged independently with
llvm-profdata, and the use-phase build feeds them back via -Xarch_host
-fprofile-use= and -Xarch_<gpu-arch> -fprofile-use= (with -Xarch_device
as a single-arch shorthand).
Also add a CUDA/HIP Language Changes entry in ReleaseNotes.rst.
Commit: c0af755c57ee5ed16defa0825ac463e603b06940
https://github.com/llvm/llvm-project/commit/c0af755c57ee5ed16defa0825ac463e603b06940
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/source/Plugins/Platform/WebAssembly/PlatformWasm.cpp
M lldb/source/Plugins/Platform/WebAssembly/PlatformWasmProperties.td
Log Message:
-----------
[lldb] Forward the inferior's environment to the Wasm runtime (#206780)
PlatformWasm::DebugProcess launches the Wasm runtime and lets it debug
the actual inferior. Environment variables requested for the inferior
(via target.env-vars / target.inherit-env, or a DAP launch "env") were
dropped. The runtime itself is launched with the host environment. A
Wasm inferior's environment must be set explicitly by the runtime.
Forward each variable from launch_info.GetEnvironment() to the runtime.
How a runtime accepts environment variables is runtime-specific, so the
per-variable argument prefix is a new configurable setting,
platform.plugin.wasm.env-arg, mirroring the port-arg. The new setting
defaults to empty, in which case no environment is forwarded.
For WAMR/iwasm, the option is `--env=`. This fixes various tests that
expect inferior args to be set when targeting Wasm running under the
micro runtime.
Commit: fa981b17cc609f4c4fd37ffd3652a8ceaef8b589
https://github.com/llvm/llvm-project/commit/fa981b17cc609f4c4fd37ffd3652a8ceaef8b589
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
A mlir/test/Target/LLVMIR/openmp-taskloop-charbox.mlir
Log Message:
-----------
[MLIR][OpenMP] Fix taskloop charbox privatization (#205568)
Load by-value privatizer arguments from task context storage when
lowering taskloop duplication and firstprivate copy regions. This keeps
pointer-based privatizers unchanged while allowing descriptor values
such as lowered Fortran boxchar values to be passed by value.
It is not at all ideal that boxchars get special treatment. MLIR to
LLVM-IR should not depend upon any particular frontend, but this is a
long-standing TODO. The purpose of this patch is to fix the reported
bug.
Fixes: #205479
Assisted-by: Codex
Commit: ce29fdf9345deee346b0480488473fc490f2af1a
https://github.com/llvm/llvm-project/commit/ce29fdf9345deee346b0480488473fc490f2af1a
Author: Sam Elliott <aelliott at qti.qualcomm.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M .github/new-prs-labeler.yml
Log Message:
-----------
[infra] Exclude libc config files from RISC-V label (#205407)
Currently, almost every single new function in libc is tagged with
`backend:RISC-V` because the configurations in `libc/config/**/riscv`
are changed when adding a function.
The intention of this PR is to exclude only changes to `libc/config`
which touch `riscv` paths from being tagged. There are other
files/directories in libc which contain risc-v specific code, which
should continue to be tagged with `backend:RISC-V`.
I'm not 100% sure of the syntax here, but I based this PR on this
example in the labeller readme:
https://github.com/actions/labeler/blob/f612d9ad188e81643862c2de70f57fbb1d17abd1/README.md?plain=1#L141-L145
Commit: 54f05f964bde020355def7c616257bcf69beddcc
https://github.com/llvm/llvm-project/commit/54f05f964bde020355def7c616257bcf69beddcc
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane16.swap.ll
Log Message:
-----------
AMDGPU: Remove dead check lines in a test (#206777)
Commit: b213a5454f178dabb07514454cf83dc38e41fdad
https://github.com/llvm/llvm-project/commit/b213a5454f178dabb07514454cf83dc38e41fdad
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M flang/lib/Lower/OpenACC.cpp
A flang/test/Lower/OpenACC/acc-declare-managed-no-global-ctor.f90
Log Message:
-----------
[flang][openacc] Skip implicit global declare constructor in managed mode (#206610)
When `-gpu=mem:managed` is enabled, the allocatable is placed in managed
memory. Skip the global declare constructor for the create case.
Commit: ede433bf09dd742f31154af1d8927bf5d0b8770d
https://github.com/llvm/llvm-project/commit/ede433bf09dd742f31154af1d8927bf5d0b8770d
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DAP.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerBase.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ScriptDebuggerController.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/dbgeng/dbgeng.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/StepIR.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Script.py
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/watch_scope.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/expect-all-with-value.test
Log Message:
-----------
[Dexter] Allow fetching "scopes" from the debugger (#202802)
To further improve Dexter's script writing ability, this patch starts
implementing the ability for Dexter to fetch all variables with in a
given "scope", as defined by the DAP "scopes" request. This allows the
test to collect all available variables without needing to specify them
explicitly in the script, aiding in fast script
generation/re-generation.
This patch does not add any script-writing functionality, but adds the
!value/all Node, which fetches all variable values from the given scope,
and enables fetching these values from DAP-based debuggers.
Commit: 166209c3b05c5e3c3eb930ae0e613b18c43797a9
https://github.com/llvm/llvm-project/commit/166209c3b05c5e3c3eb930ae0e613b18c43797a9
Author: Kay Hicketts <kay.hicketts at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.md
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
Log Message:
-----------
Fix false match on nullPointerConstant for array indices (#201893)
# Problem Detail
In the code
```
int *p[1];
(void) p[0];
```
The AST tree for ```p[0]``` looks like
```
|-CStyleCastExpr 0xc0ae6f1d8 <line:3:3, col:13> 'void' <ToVoid>
| `-ArraySubscriptExpr 0xc0ae6f1a8 <col:10, col:13> 'int *' lvalue
| |-ImplicitCastExpr 0xc0ae6f190 <col:10> 'int **' <ArrayToPointerDecay>
| | `-DeclRefExpr 0xc0ae6f118 <col:10> 'int *[1]' lvalue Var 0xc0ae6f098 'p' 'int *[1]'
| `-IntegerLiteral 0xc0ae6f138 <col:12> 'int' 0
```
So the previous matcher was finding the integer literal and then seeing
that the parent was a pointer type and thus we were getting a positive
match for something that should be replaced by a null pointer, even
though the index is just an integer.
# Solution
In a real null pointer scenario in cpp
```int *sausage = 0;```
The AST is like
```
| `-VarDecl 0xc0ae6f218 <col:3, col:18> col:8 sausage 'int *' cinit
| `-ImplicitCastExpr 0xc0ae6f2a0 <col:18> 'int *' <NullToPointer>
| `-IntegerLiteral 0xc0ae6f280 <col:18> 'int' 0
```
In C it's the same but with the exception of explicit casts
e.g.
```char *beans = (char*)0;```
which are represented as
```
| `-DeclStmt 0xacee134e8 <line:11:3, col:25>
| `-VarDecl 0xacee13420 <col:3, col:24> col:9 beans 'char *' cinit
| `-CStyleCastExpr 0xacee134c0 <col:17, col:24> 'char *' <NullToPointer>
| `-IntegerLiteral 0xacee13488 <col:24> 'int' 0
```
So the new matcher looks for an IntegerLiteral with value 0 that has a
parent that does any kind of cast to a null pointer
I used AI tools to help me build and understand the code.
# Original Issue
clang-tidy tools replace 0 with nullptr in index references due to
misinterpreting index numbers as pointers
Fixes: https://github.com/llvm/llvm-project/issues/87008
Commit: 1805f5f7d1fd8ac4f5225f8b87124f59d82759f5
https://github.com/llvm/llvm-project/commit/1805f5f7d1fd8ac4f5225f8b87124f59d82759f5
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M flang/lib/Semantics/check-cuda.cpp
M flang/lib/Semantics/check-declarations.cpp
A flang/test/Semantics/CUDA/cuf-hostdevice-host-call.cuf
Log Message:
-----------
[flang][cuda] Allow host procedure references in host,device subprograms (#206736)
An ATTRIBUTES(HOST,DEVICE) subprogram is compiled for the host as well
as the device, so referencing a host procedure (typically guarded at run
time by a test such as ON_DEVICE()) is legitimate in its host
compilation. Two semantic checks were wrongly rejecting such code:
* CheckSubprogram flagged an interface body declared inside a device
subprogram as "may not be an internal procedure of CUDA device
subprogram". An interface body (like a dummy procedure) is not an
internal procedure, so exclude both from this check. A real internal
procedure is still rejected.
* DeviceExprChecker rejected calls to host procedures with "may not be
called in device code" even from host,device subprograms. Thread the
existing isHostDevice flag of DeviceContextChecker down to
DeviceExprChecker and suppress only that diagnostic when the enclosing
subprogram is host,device. Pure device and global subprograms continue
to reject host calls, and all other device-code diagnostics are
preserved.
Assisted-by: AI
Commit: 92a84f255ec80c1d8a0ec51409d383e8828f0c1a
https://github.com/llvm/llvm-project/commit/92a84f255ec80c1d8a0ec51409d383e8828f0c1a
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/packages/Python/lldbsuite/test/make/WASI.rules
Log Message:
-----------
[lldb][test] Don't dead-strip WebAssembly test inferiors (#206799)
Unlike most native linkers, wasm-ld garbage-collects unreferenced
sections by default. Globals and functions that a test inspects but the
program never references therefore get dead-stripped from the inferior,
even though they would survive on other targets.
Default to `-Wl,--no-gc-sections` in WASI.rules so debug-info coverage
matches other targets.
Commit: 97f1c7c1850831ef54241f94ee2f1b4411fc04a6
https://github.com/llvm/llvm-project/commit/97f1c7c1850831ef54241f94ee2f1b4411fc04a6
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M mlir/utils/pygments/mlir_lexer.py
M utils/docs/llvm_sphinx/__init__.py
A utils/docs/llvm_sphinx/ext/mlir_pygments.py
Log Message:
-----------
[docs] Register MLIR lexer for Sphinx docs (#206194)
Fixes building `docs-clang-html` when `cmake -DCLANG_ENABLE_CIR=ON`.
Fragments of generated documentation contain code blocks tagged with the
`mlir` language, and that generates Pygments warnings, which fails the
build.
I chose to register a sphinx extension, which in turn registers the MLIR
pygments dialect from utils/docs/llvm_sphinx. The idea here is that
`mlir` syntax highlighting should work in any llvm-project documentation
anywhere (openmp, or anything else).
I'm a little less confident about the change to the mlir lexer itself,
which seems to be necessary in order to get pygments to run without
error. Here is an example error message of what happens if you don't
match whitespace tokens as Text:
```
Warning, treated as error:
/path/to/index.md:3:Lexing literal_block ' %0 = cir.foo : !cir.int<s, 32>\n' as "mlir" resulted in an error at token: ' '. Retrying in relaxed mode.
```
Authored with LLM assistance
Commit: c6c87fd48e39f58621d8edb76a9f2fdf5afef49e
https://github.com/llvm/llvm-project/commit/c6c87fd48e39f58621d8edb76a9f2fdf5afef49e
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/include/llvm/TargetParser/Triple.h
M llvm/lib/MC/MCContext.cpp
M llvm/lib/MC/TargetRegistry.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86MCInstLower.cpp
M llvm/lib/Target/X86/X86Subtarget.h
M llvm/lib/TargetParser/TargetDataLayout.cpp
M llvm/lib/TargetParser/Triple.cpp
M llvm/unittests/TargetParser/TripleTest.cpp
Log Message:
-----------
[llvm] Add Triple::isOSWindowsOrUEFI and use it, NFC (#206608)
I think this predicate has earned it's place in Triple.h.
Unfortunately, there isn't a really clear line between what Windows
behavior has to carry over to UEFI, so I went with the mechanical
`isOSWindowsOrUEFI` name.
I have a follow-up PR for Clang.
Commit: 31340a9222bbc20f35b892afde79f1beecce98a9
https://github.com/llvm/llvm-project/commit/31340a9222bbc20f35b892afde79f1beecce98a9
Author: Jason Molenda <jmolenda at apple.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
A lldb/include/lldb/Target/MemoryRegionInfoCache.h
M lldb/include/lldb/Target/Process.h
M lldb/source/Target/CMakeLists.txt
A lldb/source/Target/MemoryRegionInfoCache.cpp
M lldb/source/Target/Process.cpp
M lldb/test/API/functionalities/gdb_remote_client/TestMemoryRegionDirtyPages.py
A lldb/test/API/tools/lldb-server/cached-memory-region-info/Makefile
A lldb/test/API/tools/lldb-server/cached-memory-region-info/TestCachedMemoryRegionInfo.py
A lldb/test/API/tools/lldb-server/cached-memory-region-info/main.cpp
Log Message:
-----------
[lldb] Add memory region info cache to Process (#206208)
Every time a memory region is queried in the inferior with a
ProcessGDBRemote connection, lldb needs to send a packet requesting the
information. When we are querying multiple addresses within the same
region, this can result in many redundant packets - e.g. to test for
whether an address is in stack memory during a backtrace.
This adds a MemoryRegionInfoCache wrapper around RangeDataVector to save
the memory regions that we query, and supply them to future queries. The
cache is flushed on any process resume in the same way that the memory
cache is; the valid pages may change as a program executes.
This PR started as a combination of this cache plus extensions to gdb
remote serial protocol packets so the debug stub can provide memory
region infos when we have a public stop (e.g. the info about each
thread's stack memory region) - including changes to both debugserver
and ProcessGDBRemote to implement that (
https://github.com/llvm/llvm-project/pull/202509 ). I'm separating out
the two pieces into separate patchsets. The test in this PR retains the
full code in the .c file that I will need to test the expedited memory
region infos still, even though it doesn't do antyhing but launch the
inferior process in the current tests.
rdar://179067896
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: 24d187791ca014b01781ba6671985b95e9131130
https://github.com/llvm/llvm-project/commit/24d187791ca014b01781ba6671985b95e9131130
Author: Ehsan Amiri <ehsan.amiri at huawei.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
Log Message:
-----------
[LoopFusion] Reorder dependence checks to reduce compile time (NFC) (#206275)
Commit: 242d4b60fe91f7343dd607b33606074382d6a957
https://github.com/llvm/llvm-project/commit/242d4b60fe91f7343dd607b33606074382d6a957
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_scopes_expected.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_scopes_list_expected.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_scopes.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_scopes_list.cpp
Log Message:
-----------
[Dexter] Write expects for variables in Debugger scopes (#203254)
Following on from the previous patch, this patch adds support for
writing expects from !value/all nodes, generating separate expects for
each variable in the requested debugger scope, for each continuous range
of lines it is live for.
NB: As with the other patch that implements script-writing features,
each test in this patch has a corresponding "expected" file, which is
almost identical (including the `RUN` lines), and exists to be `diff`'d
against the output of Dexter's script generation.
Commit: aec1df1e5a4ba4a3f89399e9554e2c2ebd114076
https://github.com/llvm/llvm-project/commit/aec1df1e5a4ba4a3f89399e9554e2c2ebd114076
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/IR/AutoUpgrade.cpp
A llvm/test/Assembler/autoupgrade-lifetime-intrinsics-invalid.ll
Log Message:
-----------
[LLVM][Autoupgrade] Delete invalid lifetime.start/lifetime.end intrinsic decls and calls (#206769)
AutoUpgrade used to create invalid and unused `lifetime.start.i64` and
`lifetime.end.i64` intrinsics. This was fixed with
https://github.com/llvm/llvm-project/pull/204601. However, existing
bitcode generated prior to this fix might still have these unused and
invalid declarations in them, which now fail IR verification. Adopt
Autoupgrade to clean them up.
Invalid declaration of these intrinsics will be deleted, and if there
exists calls to these invalid intrinsics (not expected to be generated
by AutoUpgrade prior to the bug fix, but handling this case just for
completeness) these calls will be deleted as well.
Also tested with `sap_fct_splitting.bc` reported in
https://github.com/llvm/llvm-project/pull/204478#issuecomment-4845475424
(though not committing that as a unit test).
Commit: fb83b9b663e02a6db0e104faa6d14642a8d95e7f
https://github.com/llvm/llvm-project/commit/fb83b9b663e02a6db0e104faa6d14642a8d95e7f
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/docs/HIPSupport.rst
Log Message:
-----------
[docs][HIP] Document source-based device code coverage workflow (#200197)
Add a section to HIPSupport.rst describing how to produce source-based
code coverage reports for HIP device code on AMD GPUs: compile with
-fprofile-instr-generate -fcoverage-mapping, extract the device ELF from
the host binary's .hip_fatbin section, unbundle with
clang-offload-bundler using the hip-amdgcn-amd-amdhsa--<arch> target ID,
and run llvm-profdata / llvm-cov against the device object.
Commit: 0d828854dd2f20b3a01b33e441d8b982e3893aa8
https://github.com/llvm/llvm-project/commit/0d828854dd2f20b3a01b33e441d8b982e3893aa8
Author: Vijay Kandiah <vkandiah at nvidia.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M flang/lib/Lower/Allocatable.cpp
A flang/test/Lower/CUDA/cuda-allocatable-component.cuf
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
Log Message:
-----------
[flang][cuda] Propagate CUDA attrs from parent variable to component allocations (#206614)
When allocating a component of a CUDA-attributed derived type (e.g.,
`allocate(managed_var(1)%arr)`), Flang's lowering only checked the
component symbol (`arr`) for CUDA attributes — not the parent variable
(`managed_var`). Since `arr` has no CUDA attribute, the allocation used
`fir.allocmem` (host `malloc`) instead of `cuf.allocate`. Additionally,
the component descriptor's `allocator_idx` remained 0 (host default), so
`Descriptor::Allocate()` also dispatched to `std::malloc`.
## Changes
- **Attribute propagation**: For `StructureComponent` allocations,
propagate CUDA attributes from the base variable to the component in
both `genSimpleAllocation` and `genSourceMoldAllocation`.
- **Allocator index**: In `genAllocateObjectInit`, re-establish the
component descriptor with the correct `allocator_idx` via
`disassociateMutableBox` before allocation.
- Added lit test `cuda-allocatable-component.cuf` covering managed,
device, and `source=` component allocations.
Commit: 6ae0aab16af4c692ac0834fbdcd3bc2ce74a4147
https://github.com/llvm/llvm-project/commit/6ae0aab16af4c692ac0834fbdcd3bc2ce74a4147
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/source/Host/common/Host.cpp
M lldb/tools/lldb-dap/ClientLauncher.cpp
M llvm/include/llvm/ADT/StringExtras.h
M llvm/lib/Support/StringExtras.cpp
M llvm/unittests/ADT/StringExtrasTest.cpp
Log Message:
-----------
[ADT] Add printPercentEncoded to StringExtras (#206794)
Hoist URL query-component percent-encoding into llvm/ADT alongside the
other per-character string escapers (printEscapedString,
printHTMLEscaped, printLowerCase). Several near-identical copies of this
encoder exist across the tree, all using the same RFC 3986 charset.
Commit: 9cdea3b9d5c0a719c37bb0db6f54fb5c1a5e5c40
https://github.com/llvm/llvm-project/commit/9cdea3b9d5c0a719c37bb0db6f54fb5c1a5e5c40
Author: Fabian Parzefall <parzefall at meta.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinarySection.h
M bolt/include/bolt/Core/Relocation.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
A bolt/test/X86/relr-odd-unaligned.c
Log Message:
-----------
[BOLT] Preserve relocation to rela/relr association (#206612)
BOLT emits all dynamic relative relocations in .relr.dyn if it exists in
the input, including relative relocations from .rela.dyn. This can fail
for two reasons: first, relative relocations can target odd addresses.
These can never be emitted as relr relocations. Second, BOLT reuses the
existing .relr.dyn section. Even if a relative relocation from .rela.dyn
can be emitted as relr, there is simply no space in the existing
.relr.dyn section. This causes an overflow. Prevent this by emitting
relative relocations in the same section they originate from.
Commit: 5726f6ee8140fa49d5cd6bc961e6a404f6bb1873
https://github.com/llvm/llvm-project/commit/5726f6ee8140fa49d5cd6bc961e6a404f6bb1873
Author: Finn Plummer <mail at inbelic.dev>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/test/CodeGenHLSL/resources/StructuredBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-subscripts.hlsl
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
R llvm/test/Transforms/DirectX/getpointer-sink-behavior.ll
A llvm/test/Transforms/GVN/no-sink-dxgetbasepointer.ll
M llvm/test/Transforms/GVN/no-sink-dxgetpointer.ll
A llvm/test/Transforms/GVN/no-sink-spvcounterhandle.ll
A llvm/test/Transforms/GVN/no-sink-spvgetpointer.ll
A llvm/test/Transforms/SimplifyCFG/DirectX/no-phi-dxgetpointer.ll
M llvm/test/Transforms/SimplifyCFG/DirectX/no-sink-dxgetpointer.ll
A llvm/test/Transforms/SimplifyCFG/SPIRV/no-sink-spvgetpointer.ll
Log Message:
-----------
[DirectX][SPIRV] Consolidate the use of resource pointers across backends (#205433)
This pr consolidates how the hlsl backends represent ptr/handles of
resources, and counters for spir-v, to ensure the instructions do not
get optimized into illegal looking phi nodes of resource accesses.
This was initially addressed for directx in
https://github.com/llvm/llvm-project/pull/182099, however, equivalent
behaviour was not added to spir-v. It is the case that the spir-v
backend also crashed due to similar illegal looking instructions, as
reported by https://github.com/llvm/llvm-project/issues/162841.
By marking the spirv instructions as convergent it follows the precedent
to prevent the problematic transforms rather than undo it in the
backends. This prevents it from moving through code-flow in sink/hoist
optimizations.
https://github.com/llvm/llvm-project/pull/193593 attempted to remove
some of the restrictions of convergent but failed to account for the
case when the resource is written to instead of read from and introduced
a regression, as reported by
https://github.com/llvm/llvm-project/issues/201901.
As such, we revert the previous commit and mark each of these intrinsics
as convergent.
Testing for these cases are added.
Resolves: https://github.com/llvm/llvm-project/issues/201901 and
https://github.com/llvm/llvm-project/issues/162841.
Assisted by: Claude Opus 4.8
Commit: 0bd538ad4ce5380536bad8b27041c0f519111432
https://github.com/llvm/llvm-project/commit/0bd538ad4ce5380536bad8b27041c0f519111432
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ScriptDebuggerController.py
M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/StepIR.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/RunMatch.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_fn_hit_count.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_for_hit_count.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_hit_count_early_exit.cpp
Log Message:
-----------
[Dexter] Add for_hit_count for state nodes (#203359)
This patch adds the ability for state nodes to use a `for_hit_count:
<int>` field to limit the number of times that a given state node will
be active.
The hit count for each state node increments each time it is _entered_,
meaning it must be inactive (not matching any frame on the stack) in the
prior step; for example, if a `!where {lines}` node covers the entirety
of a loop, repeated iterations of that loop will not increment the
hit_count - only once the line range is existed and entered again will
the hit_count increment.
Commit: ab99d704c2ae98d3ff1341341831efd52d9818e0
https://github.com/llvm/llvm-project/commit/ab99d704c2ae98d3ff1341341831efd52d9818e0
Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.h
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/source_location/Makefile
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/source_location/TestDataFormatterStdSourceLocation.py
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/source_location/main.cpp
Log Message:
-----------
[lldb] Add std::source_location summary provider (#203185)
Added simple summary provider for `std::source_location` from C++20.
Commit: 6b5c27376a275ce34464631be3caed65967ab161
https://github.com/llvm/llvm-project/commit/6b5c27376a275ce34464631be3caed65967ab161
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CMakeLists.txt
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.h
R lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.cpp
R lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.h
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.h
Log Message:
-----------
Revert "[lldb] Move common functionality out of Itanium ABI runtime (#191275)" (#206816)
This reverts commit 0f51760a342cd8fed1c657e6ca134097c9e8f88c.
A test fails with the commit
(https://github.com/llvm/llvm-project/pull/191275#issuecomment-4846936554):
```
Traceback (most recent call last):
File "/home/tcwg-buildbot/worker/lldb-aarch64-ubuntu/llvm-project/lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py", line 596, in test_python_source_frames
self.assertNotIn("0xffffffffffffffff", output.lower())
AssertionError: '0xffffffffffffffff' unexpectedly found in "* thread #2, name = 'a.out', stop reason = breakpoint 1.1\n * frame #0: compute_fibonacci at python_helper.py:7 [synthetic]\n frame #1: process_data at python_helper.py:16 [synthetic]\n frame #2: main at python_helper.py:27 [synthetic]\n frame #3: 0x0000badc2de81358 a.out`thread_func(thread_num=0) at main.cpp:44:13\n frame #4: 0x0000badc2de81f9c a.out`void std::__invoke_impl<void, void (*)(int), int>((null)=__invoke_other @ 0x0000f1555ebae74f, __f=0x0000badc66845ec0, __args=0x0000badc66845eb8) at invoke.h:61:14\n frame #5: 0x0000badc2de81f18 a.out`std::__invoke_result<void (*)(int), int>::type std::__invoke<void (*)(int), int>(__fn=0x0000badc66845ec0, __args=0x0000badc66845eb8) at invoke.h:96:14\n frame #6: 0x0000badc2de81ee4 a.out`void std::thread::_invoker<std::tuple<void (*)(int), int>>::_m_invoke<0ul, 1ul>(this=0x0000badc66845eb8, (null)=_index_tuple<0ul, 1ul> @ 0x0000f1555ebae7af) at std_thread.h:259:13\n frame #7: 0x0000badc2de81e98 a.out`std::thread::_invoker<std::tuple<void (*)(int), int>>::operator()(this=0x0000badc66845eb8) at std_thread.h:266:11\n frame #8: 0x0000badc2de81d70 a.out`std::thread::_state_impl<std::thread::_invoker<std::tuple<void (*)(int), int>>>::_m_run(this=0xffffffffffffffff) at std_thread.h:211:13\n frame #9: 0x0000f1555ef029cc libstdc++.so.6`___lldb_unnamed_symbol_d29b0 + 28\n frame #10: 0x0000f1555ec30398 libc.so.6`___lldb_unnamed_symbol_800c0 + 728\n frame #11: 0x0000f1555ec99e9c libc.so.6`___lldb_unnamed_symbol_e9e90 + 12\n"
```
I don't know why this test fails with the PR, but I don't have time to
fix it now, so revert it to unblock CI.
The backtrace was
```
frame #0: compute_fibonacci at python_helper.py:7 [synthetic]
frame #1: process_data at python_helper.py:16 [synthetic]
frame #2: main at python_helper.py:27 [synthetic]
frame #3: 0x0000badc2de81358 a.out`thread_func(thread_num=0) at main.cpp:44:13
frame #4: 0x0000badc2de81f9c a.out`void std::__invoke_impl<void, void (*)(int), int>((null)=__invoke_other @ 0x0000f1555ebae74f, __f=0x0000badc66845ec0, __args=0x0000badc66845eb8) at invoke.h:61:14
frame #5: 0x0000badc2de81f18 a.out`std::__invoke_result<void (*)(int), int>::type std::__invoke<void (*)(int), int>(__fn=0x0000badc66845ec0, __args=0x0000badc66845eb8) at invoke.h:96:14
frame #6: 0x0000badc2de81ee4 a.out`void std::thread::_invoker<std::tuple<void (*)(int), int>>::_m_invoke<0ul, 1ul>(this=0x0000badc66845eb8, (null)=_index_tuple<0ul, 1ul> @ 0x0000f1555ebae7af) at std_thread.h:259:13
frame #7: 0x0000badc2de81e98 a.out`std::thread::_invoker<std::tuple<void (*)(int), int>>::operator()(this=0x0000badc66845eb8) at std_thread.h:266:11
frame #8: 0x0000badc2de81d70 a.out`std::thread::_state_impl<std::thread::_invoker<std::tuple<void (*)(int), int>>>::_m_run(this=0xffffffffffffffff) at std_thread.h:211:13
frame #9: 0x0000f1555ef029cc libstdc++.so.6`___lldb_unnamed_symbol_d29b0 + 28
frame #10: 0x0000f1555ec30398 libc.so.6`___lldb_unnamed_symbol_800c0 + 728
frame #11: 0x0000f1555ec99e9c libc.so.6`___lldb_unnamed_symbol_e9e90 + 12
```
This contains 0xffffffffffffffff in frame 8.
Commit: 675f3d260422fb195cf6f32dcdbd6cbc76f1a0df
https://github.com/llvm/llvm-project/commit/675f3d260422fb195cf6f32dcdbd6cbc76f1a0df
Author: Marcos Maronas <mmaronas at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/hipstdpar.c
Log Message:
-----------
[Clang][HIP] Forward hipstdpar flag to clang-linker-wrapper (#206497)
Fixes #206487.
Commit: 527c4e7e2baf190d466c7850db5e99c482b8ec06
https://github.com/llvm/llvm-project/commit/527c4e7e2baf190d466c7850db5e99c482b8ec06
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PackReuse.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PrintInstructionCount.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PrintRegion.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAcceptOrRevert.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAlwaysAccept.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAlwaysRevert.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionSave.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.cpp
A llvm/test/Transforms/SandboxVectorizer/region_pass_arg.ll
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/CMakeLists.txt
A llvm/unittests/Transforms/Vectorize/SandboxVectorizer/PassBuilderTest.cpp
Log Message:
-----------
[SandboxVec][PassBuilder] Add support for RegionPass aux args (#205643)
Pass auxiliary string arguments are used as a way to pass additional
information to a pass upon construction, which can be particularly
helpful with passes that support more than one mode/functionality.
You can specify an aux argument in the pass pipeline using the syntax:
`<pass>(<aux arg>)`.
FunctionPass already supports aux arguments (and are used in the
SeedCollection pass). This patch adds support for RegionPass too.
To help with testing this I modified the NullPass to add the ability to
echo the aux arg.
Commit: 7497cb1c1f7851ea9559e1a54407c38bd241bf02
https://github.com/llvm/llvm-project/commit/7497cb1c1f7851ea9559e1a54407c38bd241bf02
Author: satyanarayana reddy janga <satyajanga at fb.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/docs/resources/lldbgdbremote.md
M lldb/include/lldb/Utility/AcceleratorGDBRemotePackets.h
M lldb/source/Plugins/Process/gdb-remote/LLDBServerAcceleratorPlugin.cpp
M lldb/source/Plugins/Process/gdb-remote/LLDBServerAcceleratorPlugin.h
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
M lldb/source/Utility/AcceleratorGDBRemotePackets.cpp
A lldb/test/API/accelerator/mock/TestMockAcceleratorActions.py
R lldb/test/API/accelerator/mock/TestMockAcceleratorBreakpoints.py
A lldb/test/API/accelerator/mock/TestMockAcceleratorPackets.py
R lldb/test/API/accelerator/mock/TestMockAcceleratorPlugin.py
M lldb/test/API/accelerator/mock/main.c
M lldb/tools/lldb-server/Plugins/Accelerator/Mock/CMakeLists.txt
M lldb/tools/lldb-server/Plugins/Accelerator/Mock/LLDBServerMockAcceleratorPlugin.cpp
M lldb/tools/lldb-server/Plugins/Accelerator/Mock/LLDBServerMockAcceleratorPlugin.h
A lldb/tools/lldb-server/Plugins/Accelerator/Mock/ProcessMockAccelerator.cpp
A lldb/tools/lldb-server/Plugins/Accelerator/Mock/ProcessMockAccelerator.h
A lldb/tools/lldb-server/Plugins/Accelerator/Mock/RegisterContextMockAccelerator.cpp
A lldb/tools/lldb-server/Plugins/Accelerator/Mock/RegisterContextMockAccelerator.h
A lldb/tools/lldb-server/Plugins/Accelerator/Mock/ThreadMockAccelerator.cpp
A lldb/tools/lldb-server/Plugins/Accelerator/Mock/ThreadMockAccelerator.h
M lldb/unittests/Utility/AcceleratorGDBRemotePacketsTest.cpp
Log Message:
-----------
[lldb] Add accelerator plugin connection support (#201449)
Summary
This builds on the accelerator plugin protocol
(https://github.com/llvm/llvm-project/pull/201489) by letting a plugin
ask the client to create and connect a second
target — the mechanism a real backend (e.g. a GPU debug stub) uses to
surface
the accelerator alongside the CPU process being debugged.
### What this adds
**Protocol** — a new `AcceleratorConnectionInfo` describing how the
client
should bring up the accelerator target.
**Client** — when an `AcceleratorActions` carries `connect_info`,
`ProcessGDBRemote` creates a new (empty) target, reverse-connects it to
the GDB
server the plugin points.
**Mock server (for testing)** — to exercise this end to end, the mock
accelerator plugin stands up an in-process GDB server backed by a
minimal fake
process: `ProcessMockAccelerator`, `ThreadMockAccelerator` and
`RegisterContextMockAccelerator`.
### Scope
Intentionally minimal: the goal is to create and show the second
(accelerator)
target. There is no register/memory modeling beyond what a connection
requires. Next set of PRs will build up on this.
### Testing
Demo of how this looks with this PR. (explicitly asking the native
process to stop at every breakpoint for testability)
```
satyajanga at devgpu011:toolchain $ ./bin/lldb
(lldb) file /home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain/lldb-test-build.noindex/accelerator/mock/TestMockAcceleratorActions/a.out Current executable set to '/home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain/lldb-test-build.noindex/accelerator/mock/TestMockAcceleratorActions/a.out' (x86_64).
(lldb) log enable -f /tmp/packets.log gdb-remote packets (lldb) r
Process 1430531 launched: '/home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain/lldb-test-build.noindex/accelerator/mock/TestMockAcceleratorActions/a.out' (x86_64)
Process 1430531 stopped
(lldb) target list
Current targets:
* target #0: /home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain/lldb-test-build.noindex/accelerator/mock/TestMockAcceleratorActions/a.out ( arch=x86_64-unknown-linux-gnu, platform=host, pid=1430531, state=stopped )
(lldb) c
Process 1430531 resuming
Process 1 stopped
* thread #1, name = 'Mock Accelerator Thread', stop reason = trace
frame #0: 0x0000000000001004
error: memory read failed for 0x1000
Target 0: (a.out) stopped.
(lldb) target list
Current targets:
target #0: /home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain/lldb-test-build.noindex/accelerator/mock/TestMockAcceleratorActions/a.out ( arch=x86_64-unknown-linux-gnu, platform=host, pid=1430531, state=stopped )
* target #1: <none> ( arch=x86_64-unknown-linux-gnu, platform=host, pid=1, state=stopped )
(lldb) c
Process 1 resuming
(lldb) target select 0
Current targets:
* target #0: /home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain/lldb-test-build.noindex/accelerator/mock/TestMockAcceleratorActions/a.out ( arch=x86_64-unknown-linux-gnu, platform=host, pid=1430531, state=stopped )
target #1: <none> ( arch=x86_64-unknown-linux-gnu, platform=host, pid=1, state=running )
(lldb) c
Process 1430531 resuming
Process 1430531 stopped
(lldb) target list
Current targets:
* target #0: /home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain/lldb-test-build.noindex/accelerator/mock/TestMockAcceleratorActions/a.out ( arch=x86_64-unknown-linux-gnu, platform=host, pid=1430531, state=stopped )
target #1: <none> ( arch=x86_64-unknown-linux-gnu, platform=host, pid=1, state=running )
(lldb)
a.out │ internal accelerator-plugin (mock) breakpoint(-4).
```
Packet log,
you can notice the actions set with breakpoint info and later responding
with connection info. and you can also see the 5 GPRs
```
lldb < 104> send packet: $qSupported:xmlRegisters=i386,arm,mips,arc;multiprocess+;fork-events+;vfork-events+;swbreak+;hwbreak+#cd
lldb < 299> read packet: $PacketSize=131072;QStartNoAckMode+;qEcho+;native-signals+;QThreadSuffixSupported+;QListThreadsInStopReply+;qXfer:features:read+;QNonStop+;jMultiBreakpoint+;QPassSignals+;qXfer:auxv:read+;qXfer:libraries-svr4:read+;qXfer:siginfo:read+;accelerator-plugins+;multiprocess+;fork-events+;vfork-events+#86
..
lldb < 32> send packet: $jAcceleratorPluginInitialize#50
lldb < 238> read packet: $[{"breakpoints":[{"by_address":null,"by_name":{"function_name":"mock_gpu_accelerator_initialize","shlib":null}],"identifier":1,"symbol_names":["mock_gpu_accelerator_compute"]}]],"identifier":1,"plugin_name":"mock","session_name":""}]]#2f
..
intern-state < 314> send packet: $jAcceleratorPluginBreakpointHit:{"breakpoint":{"by_address":null,"by_name":{"function_name":"mock_gpu_accelerator_initialize","shlib":null}],"identifier":1,"symbol_names":["mock_gpu_accelerator_compute"]}],"plugin_name":"mock","symbol_values":[{"name":"mock_gpu_accelerator_compute","value":93824992235840}]]}]#e7
intern-state < 487> read packet: ${"actions":{"breakpoints":[{"by_address":null,"by_name":{"function_name":"mock_gpu_accelerator_finish","shlib":"a.out"}],"identifier":3,"symbol_names":[]}],{"by_address":{"load_address":93824992235840}],"by_name":null,"identifier":2,"symbol_names":[]}],{"by_address":null,"by_name":{"function_name":"mock_gpu_accelerator_connect","shlib":null}],"identifier":4,"symbol_names":[]}]],"identifier":2,"plugin_name":"mock","session_name":""}],"auto_resume_native":false,"disable_bp":true}]#7d
..
..
intern-state < 218> send packet: $jAcceleratorPluginBreakpointHit:{"breakpoint":{"by_address":null,"by_name":{"function_name":"mock_gpu_accelerator_connect","shlib":null}],"identifier":4,"symbol_names":[]}],"plugin_name":"mock","symbol_values":[]}]#d1
intern-state < 268> read packet: ${"actions":{"breakpoints":[],"connect_info":{"connect_url":"connect://localhost:32893","exe_path":null,"synchronous":true,"triple":null}],"identifier":4,"plugin_name":"mock","session_name":"Mock Accelerator Session"}],"auto_resume_native":false,"disable_bp":true}]#8e
intern-state < 1> send packet: +
intern-state history[1] tid=0x15d41f < 1> send packet: +
intern-state < 19> send packet: $QStartNoAckMode#b0
intern-state < 1> read packet: +
intern-state < 6> read packet: $OK#9a
intern-state < 1> send packet: +
intern-state < 104> send packet: $qSupported:xmlRegisters=i386,arm,mips,arc;multiprocess+;fork-events+;vfork-events+;swbreak+;hwbreak+#cd
intern-state < 159> read packet: $PacketSize=131072;QStartNoAckMode+;qEcho+;native-signals+;QThreadSuffixSupported+;QListThreadsInStopReply+;qXfer:features:read+;QNonStop+;jMultiBreakpoint+#f3
intern-state < 26> send packet: $QThreadSuffixSupported#e4
intern-state < 6> read packet: $OK#9a
intern-state < 27> send packet: $QListThreadsInStopReply#21
intern-state < 6> read packet: $OK#9a
intern-state < 13> send packet: $qHostInfo#9b
intern-state < 364> read packet: $triple:7838365f36342d2d6c696e75782d676e75;ptrsize:8;watchpoint_exceptions_received:after;endian:little;os_version:6.13.2;os_build:362e31332e322d305f66626b355f
68617264656e65645f7263325f305f67313733613962316463613431;os_kernel:233120534d5020576564204a756c2032332030393a32343a3330205044542032303235;hostname:6465766770753031312e656167322e66616365626f6f6b2e6
36f6d;#c4
intern-state < 10> send packet: $vCont?#49
intern-state < 19> read packet: $vCont;c;C;s;S;t#11
intern-state < 27> send packet: $qVAttachOrWaitSupported#38
intern-state < 6> read packet: $OK#9a
intern-state < 23> send packet: $QEnableErrorStrings#8c
intern-state < 6> read packet: $OK#9a
intern-state < 16> send packet: $qProcessInfo#dc
intern-state < 7> read packet: $E01#a6
intern-state < 6> send packet: $qC#b4
intern-state < 7> read packet: $QC1#c5
intern-state < 5> send packet: $?#3f
intern-state < 291> read packet: $T00thread:1;name:Mock Accelerator Thread;threads:1;thread-pcs:0000000000001004;00:0010000000000000;01:0110000000000000;02:0210000000000000;03:0310000000000000
;04:0410000000000000;05:0510000000000000;reason:trace;description:6d6f636b20616363656c657261746f72207468726561642073746f70706564;#83
intern-state < 16> send packet: $qProcessInfo#dc
intern-state < 7> read packet: $E01#a6
intern-state < 16> send packet: $qProcessInfo#dc
intern-state < 7> read packet: $E01#a6
intern-state < 43> send packet: $qXfer:features:read:target.xml:0,131071#78
intern-state < 889> read packet: $l<?xml version="1.0"?>
<target version="1.0">
<architecture>x86_64</architecture>
<feature>
<reg name="r0" bitsize="64" regnum="0" offset="0" encoding="uint" format="hex" group="General Purpose Registers" />
<reg name="r1" bitsize="64" regnum="1" offset="8" encoding="uint" format="hex" group="General Purpose Registers" />
<reg name="sp" bitsize="64" regnum="2" offset="16" encoding="uint" format="hex" group="General Purpose Registers" generic="sp" />
<reg name="fp" bitsize="64" regnum="3" offset="24" encoding="uint" format="hex" group="General Purpose Registers" generic="fp" />
<reg name="pc" bitsize="64" regnum="4" offset="32" encoding="uint" format="hex" group="General Purpose Registers" generic="pc" />
<reg name="flags" bitsize="64" regnum="5" offset="40" encoding="uint" format="hex" group="General Purpose Registers" />
</feature>
</target>
#82
intern-state < 19> send packet: $p0;thread:0001;#89
intern-state < 20> read packet: $0010000000000000#01
intern-state < 16> send packet: $qProcessInfo#dc
intern-state < 7> read packet: $E01#a6
intern-state < 19> send packet: $p0;thread:0001;#89
intern-state < 20> read packet: $0010000000000000#01
intern-state < 16> send packet: $qProcessInfo#dc
intern-state < 7> read packet: $E01#a6
intern-state < 16> send packet: $qProcessInfo#dc
intern-state < 7> read packet: $E01#a6
intern-state < 16> send packet: $qProcessInfo#dc
intern-state < 7> read packet: $E01#a6
intern-state < 26> send packet: $qStructuredDataPlugins#02
intern-state < 6> read packet: $[]#b8
intern-state < 26> send packet: $qMemoryRegionInfo:1004#d9
intern-state < 41> read packet: $error:6e6f7420696d706c656d656e746564;#f7
intern-state < 16> send packet: $jThreadsInfo#c1
intern-state < 198> read packet: $[{"description":"mock accelerator thread stopped","name":"Mock Accelerator Thread","reason":"trace","registers":{"2":"0210000000000000","3":"0310000000000000"
,"4":"0410000000000000"}],"tid":1}]]#4a
```
Commit: 3ceb3f2d3e32f02db7444b35f47228b27332c018
https://github.com/llvm/llvm-project/commit/3ceb3f2d3e32f02db7444b35f47228b27332c018
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/test/Transforms/LoopVectorize/pr33706.ll
M llvm/test/Transforms/LoopVectorize/predicated-inductions.ll
Log Message:
-----------
[VPlan] Extract IV exit value from vector loop if predicates are needed. (#200020)
When an IV needs predicates (e.g. to make sure it does not wrap in a
narrower range), the precomputed end value would use the inductions
narrowed step, which can lead to incorrect results for the exiting value
outside the loop. For example consider a loop where IV has a predicate
to not wrap in i16 with the top 16 bits stripped (something like
https://llvm.godbolt.org/z/nzfoWbcEG).
Building on top of tracking the predicates per-IV
(https://github.com/llvm/llvm-project/pull/192876), we can simply
extract the exit values from the vector values in the loop.
Depends on https://github.com/llvm/llvm-project/pull/192876
PR: https://github.com/llvm/llvm-project/pull/200020
Commit: a474af75689ea02b2de3738ffa1b949dc7669360
https://github.com/llvm/llvm-project/commit/a474af75689ea02b2de3738ffa1b949dc7669360
Author: Michael Spencer <bigcheesegs at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.md
M clang/include/clang/Basic/Features.def
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Options/Options.td
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/test/Lexer/has_feature_modules.m
Log Message:
-----------
[clang] __has_feature(modules) should only be true for Clang modules (#206199)
Before this patch `__has_feature(modules)` is true for any compilation
with `-std=c++20` as it was trigged by `LangOpts.Modules`. This is
unexpected and breaks some usages of `__has_feature(modules)`, which is
intended to only be true when Clang modules are in use. Public code
contains many examples of the form:
```
#if __has_feature(modules)
@import Foundation;
#else
#import <Foundation/Foundation.h>
#endif
```
which will never work if module maps are not in use, but is still
evaluated as true.
This patch adds a separate `LangOpts.ClangModules` which is set by
`-fmodules`. This indicates that the user intended the Clang modules
machinery to be used.
We should be extremely careful in usage of this LangOpt. Clang modules
and C++20 named modules are intended to work together, so this flag
really only means that module maps are expected to be in use.
Fixes rdar://177715262
Assisted-by Claude Code: opus-4-8
Commit: a96686a6c4903001bf9ab5359d7aaae64634c02d
https://github.com/llvm/llvm-project/commit/a96686a6c4903001bf9ab5359d7aaae64634c02d
Author: Lang Hames <lhames at gmail.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
A llvm/include/llvm/ExecutionEngine/Orc/InProcessEPC.h
M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
A llvm/lib/ExecutionEngine/Orc/InProcessEPC.cpp
M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
A llvm/unittests/ExecutionEngine/Orc/InProcessEPCTest.cpp
Log Message:
-----------
[ORC] Add InProcessEPC: orc_rt::InProcessControllerAccess partner. (#206725)
Adds an ExecutorProcessControl implementation for in-process JIT setups
that use the new ORC runtime (orc-rt). This is the LLVM-side partner of
orc_rt::InProcessControllerAccess (introduced in d1744cf76fbe) and is
intended to be constructed from orc_rt::InProcessControllerAccess's
OnConnect callback.
The two sides communicate through a shared refcounted C-ABI Connection
struct exchanged at connect time: the fields intended for use by the
controller side are populated by InProcessControllerAccess before
OnConnect fires, and the fields intended for use by the executor side
(IPEPC pointer, CallJITDispatch, ReturnWrapperResult) are populated by
InProcessEPC::Create. A parallel BootstrapInfoAccess struct exposes
page-size, target triple, and bootstrap key/value and symbol iterators
across the same C-only boundary.
Create returns an Expected<std::unique_ptr<InProcessEPC>> and reports
errors for missing page-size, missing triple, duplicate bootstrap keys,
and corrupted iterators, so the caller's OnConnect can surface a clean
failure back to InProcessControllerAccess (which then tears the
half-built connection down via the shared lifecycle hooks).
Disconnect is symmetric and idempotent, and guaranteed to be called in
all cases (including failed construction, and successful construction
with or without subsequent attachment to an ExecutionSession). In all
cases, pending wrapper-result handlers are also drained with an
out-of-band "disconnected" error.
Unit tests cover construction success and failure modes. A MockIPCA
mirrors the lifecycle and message-scope semantics of the real
ConnectionImpl so the tests exercise the contract end-to-end without
pulling in orc-rt.
Commit: 61cdb3366669f69106b7222f5456012766660df2
https://github.com/llvm/llvm-project/commit/61cdb3366669f69106b7222f5456012766660df2
Author: adams381 <adams at nvidia.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
A clang/test/CIR/CodeGen/builtin-multiprecision.c
Log Message:
-----------
[CIR] Lower add/sub-with-carry builtins (#206598)
[CIR] Lower add/sub-with-carry builtins (#206598)
The multiprecision add/sub-with-carry builtins -- `__builtin_addc{b,s,,l,ll}`
and `__builtin_subc{b,s,,l,ll}` -- were stubbed with errorNYI in CIRGen, so
any translation unit that uses them fails to compile. They are used by
128-bit fallback arithmetic in libraries such as libfmt (its
`uint128_fallback` add path calls `__builtin_addcll`).
The lowering mirrors classic CodeGen in `CGBuiltin.cpp`: emit two chained
checked-overflow operations (`sum1 = x +/- y`, then `result = sum1 +/-
carryin`), OR the two overflow flags for the carry-out, widen that to the
operand type, and store it through the carry-out pointer. CIR already has
the checked-overflow ops that `__builtin_add_overflow` uses
(`AddOverflowOp` / `SubOverflowOp`), so this reuses that path rather than
adding anything new.
The new `builtin-multiprecision.c` exercises add and sub across i8/i32/i64
and checks both the CIR ops and the lowered unsigned
`uadd`/`usub.with.overflow` form against classic CodeGen.
Commit: dd66f9eb9c875bdf517e136bd1c8724d599b9292
https://github.com/llvm/llvm-project/commit/dd66f9eb9c875bdf517e136bd1c8724d599b9292
Author: adams381 <adams at nvidia.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/enum-bool.cpp
Log Message:
-----------
[CIR] Skip int_to_bool when value is already bool (#206582)
A conversion to bool from a type whose representation is already boolean --
most commonly an enum with a `bool` underlying type -- reaches
`emitIntToBoolConversion`, which always emits `cir.cast int_to_bool`. Since
[#205880](https://github.com/llvm/llvm-project/pull/205880) made such enums
load as `!cir.bool`, that cast now receives a `!cir.bool` source and the
`int_to_bool` verifier (which requires a `!cir.int` source) rejects the
module. It shows up across the libcxx `std/` hash tests, whose shared
`poisoned_hash_helper.h` hashes an `enum : bool` by `static_cast`-ing it to
its underlying type.
The fix returns the value unchanged when it is already `!cir.bool`: a boolean
is its own truth value, so no conversion is needed. The guard sits in
`emitIntToBoolConversion`, the choke point shared by the
`CK_IntegralToBoolean` cast path and the integer branch of
`emitConversionToBool`. This is the cast-side companion to
[#205880](https://github.com/llvm/llvm-project/pull/205880), which handled
the load side.
`enum-bool.cpp` gains a `static_cast<bool>` case checked across CIR, the
CIR-lowered LLVM, and classic codegen.
Commit: 6207788c367fcbce5e59d84260967c39fd208ee1
https://github.com/llvm/llvm-project/commit/6207788c367fcbce5e59d84260967c39fd208ee1
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/utils/gn/secondary/compiler-rt/test/builtins/BUILD.gn
Log Message:
-----------
[gn] port c2da3ace1beac5a7 (#206837)
Commit: 31843e9d426b264a7e94cf0dab60c784317bcff0
https://github.com/llvm/llvm-project/commit/31843e9d426b264a7e94cf0dab60c784317bcff0
Author: Alex Langford <alangford at apple.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/include/lldb/Breakpoint/BreakpointResolver.h
M lldb/include/lldb/Breakpoint/BreakpointResolverFileRegex.h
Log Message:
-----------
[lldb][NFC] Remove ConstString from remaining Breakpoint headers (#206823)
Commit: d9528adce66ed78411fe210b2b9d3d3adfb73f0a
https://github.com/llvm/llvm-project/commit/d9528adce66ed78411fe210b2b9d3d3adfb73f0a
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/utils/gn/secondary/lldb/source/Target/BUILD.gn
Log Message:
-----------
[gn build] Port 31340a9222bb (#206841)
Commit: 04d8e842d600fc4ec573593b79d2b7f4e19236b3
https://github.com/llvm/llvm-project/commit/04d8e842d600fc4ec573593b79d2b7f4e19236b3
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/Transforms/Vectorize/SandboxVectorizer/BUILD.gn
Log Message:
-----------
[gn build] Port 527c4e7e2baf (#206842)
Commit: e9cf4b892d7d268d6ab1031b673e0ef7f1887710
https://github.com/llvm/llvm-project/commit/e9cf4b892d7d268d6ab1031b673e0ef7f1887710
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/ExecutionEngine/Orc/BUILD.gn
Log Message:
-----------
[gn build] Port a96686a6c490 (#206843)
Commit: 021d3a5c1c558eda190366722f1cf140c36e31b4
https://github.com/llvm/llvm-project/commit/021d3a5c1c558eda190366722f1cf140c36e31b4
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/Target/SPIRV/BUILD.gn
Log Message:
-----------
[gn build] Port b74fc87d30d8 (#206844)
Commit: a2cc0b6e997a4fa0ccbb8738ed01a842d08986a0
https://github.com/llvm/llvm-project/commit/a2cc0b6e997a4fa0ccbb8738ed01a842d08986a0
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Core/BUILD.gn
Log Message:
-----------
[gn build] Port df108f91d5b8 (#206845)
Commit: f9b5264523b1f0050b9b065da3c5b2bd62570964
https://github.com/llvm/llvm-project/commit/f9b5264523b1f0050b9b065da3c5b2bd62570964
Author: Alex Langford <alangford at apple.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
M lldb/include/lldb/Utility/FileSpec.h
M lldb/include/lldb/Utility/XcodeSDK.h
M lldb/source/API/SBFileSpec.cpp
M lldb/source/API/SBProcess.cpp
M lldb/source/Breakpoint/BreakpointLocation.cpp
M lldb/source/Breakpoint/BreakpointResolverFileLine.cpp
M lldb/source/Commands/CommandCompletions.cpp
M lldb/source/Commands/CommandObjectPlatform.cpp
M lldb/source/Commands/CommandObjectSource.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Core/Address.cpp
M lldb/source/Core/AddressRange.cpp
M lldb/source/Core/AddressResolverFileLine.cpp
M lldb/source/Core/Declaration.cpp
M lldb/source/Core/Disassembler.cpp
M lldb/source/Core/FileLineResolver.cpp
M lldb/source/Core/FormatEntity.cpp
M lldb/source/Core/IOHandlerCursesGUI.cpp
M lldb/source/Core/Module.cpp
M lldb/source/Core/ModuleList.cpp
M lldb/source/Core/PluginManager.cpp
M lldb/source/Core/SearchFilter.cpp
M lldb/source/Core/Section.cpp
M lldb/source/Core/SourceManager.cpp
M lldb/source/Host/common/FileSystem.cpp
M lldb/source/Host/common/HostInfoBase.cpp
M lldb/source/Host/macosx/objcxx/Host.mm
M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
M lldb/source/Host/posix/HostInfoPosix.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
M lldb/source/Plugins/DynamicLoader/FreeBSD-Kernel/DynamicLoaderFreeBSDKernel.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
M lldb/source/Plugins/ExpressionParser/Clang/CppModuleConfiguration.cpp
M lldb/source/Plugins/InstrumentationRuntime/Utility/Utility.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/GNUstepObjCRuntime/GNUstepObjCRuntime.cpp
M lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp
M lldb/source/Plugins/ObjectFile/COFF/ObjectFileCOFF.cpp
M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
M lldb/source/Plugins/ObjectFile/XCOFF/ObjectFileXCOFF.cpp
M lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp
M lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinDevice.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformRemoteDarwinDevice.cpp
M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
M lldb/source/Plugins/Protocol/MCP/Resource.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
M lldb/source/Plugins/SymbolLocator/DebugSymbols/SymbolLocatorDebugSymbols.cpp
M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
M lldb/source/Plugins/SymbolLocator/Default/SymbolLocatorDefault.cpp
M lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
M lldb/source/Symbol/DWARFCallFrameInfo.cpp
M lldb/source/Symbol/LineEntry.cpp
M lldb/source/Symbol/ObjectFile.cpp
M lldb/source/Target/AssertFrameRecognizer.cpp
M lldb/source/Target/InstrumentationRuntime.cpp
M lldb/source/Target/InstrumentationRuntimeStopInfo.cpp
M lldb/source/Target/ModuleCache.cpp
M lldb/source/Target/Platform.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/SectionLoadList.cpp
M lldb/source/Target/StackFrameRecognizer.cpp
M lldb/source/Target/Target.cpp
M lldb/source/Target/TargetList.cpp
M lldb/source/Target/Trace.cpp
M lldb/source/Target/TraceDumper.cpp
M lldb/source/Utility/Args.cpp
M lldb/source/Utility/FileSpec.cpp
M lldb/source/Utility/FileSpecList.cpp
M lldb/source/Utility/ProcessInfo.cpp
M lldb/source/Utility/XcodeSDK.cpp
M lldb/tools/lldb-server/lldb-platform.cpp
M lldb/tools/lldb-test/lldb-test.cpp
M lldb/unittests/Symbol/LocateSymbolFileTest.cpp
M lldb/unittests/Target/LocateModuleCallbackTest.cpp
M lldb/unittests/Target/ModuleCacheTest.cpp
M lldb/unittests/Utility/FileSpecTest.cpp
Log Message:
-----------
[lldb] Remove ConstString getters from FileSpec (#206802)
This finishes the removal of ConstString from FileSpec's interface. Note
that FileSpec is still _backed_ by ConstStrings, that will be changed in
a follow-up.
A non-goal for this change is to rewrite business logic, so I kept the
type of some variables as ConstString where a refactor would necessary
to change that. I converted printf-style formatting to formatv-style
formatting where required, and otherwise tried to leave callsites alone
to the extent that was possible.
Commit: 7dc0a37db17b845a9883e20749282bf89531b32f
https://github.com/llvm/llvm-project/commit/7dc0a37db17b845a9883e20749282bf89531b32f
Author: Tom Honermann <tom.honermann at intel.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/Sema/SemaDecl.cpp
Log Message:
-----------
[Clang][SYCL] Remove unnecessary null pointer check (#206813)
Static analysis identified a null pointer check in a control flow path
that unconditionally dereferences the checked pointer. This patch
removes the unnecessary check.
Commit: 99e855f10cf3cdba0f8708651c167ed7dcff07cd
https://github.com/llvm/llvm-project/commit/99e855f10cf3cdba0f8708651c167ed7dcff07cd
Author: Alex Langford <alangford at apple.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/include/lldb/Breakpoint/Breakpoint.h
M lldb/include/lldb/Target/Target.h
M lldb/source/API/SBBreakpoint.cpp
M lldb/source/Commands/CommandObjectBreakpoint.cpp
M lldb/source/Target/Target.cpp
Log Message:
-----------
[lldb][NFC] Target::RemoveNameFromBreakpoint should take a StringRef (#206834)
Commit: 7479a79433582bd251ede59c4dd89e7c3959ae0a
https://github.com/llvm/llvm-project/commit/7479a79433582bd251ede59c4dd89e7c3959ae0a
Author: Andre Kuhlenschmidt <akuhlenschmi at nvidia.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
A flang/test/Semantics/OpenACC/acc-component-ref-dsa.f90
A flang/test/Semantics/OpenACC/acc-default-none-arrays.f90
Log Message:
-----------
[flang][openacc] Fix DEFAULT(NONE) errors for array sections (#204248)
ResolveAccObject skipped DSA registration when
GetDesignatorNameIfDataRef returned nullptr (i.e. for subscripted
designators like copyin(a(1:n))). The DEFAULT(NONE) post-visitor then
found the base variable unregistered and emitted a false error even
though it was explicitly listed in a data clause.
Unify the path using GetFirstName, which extracts the base symbol from
both bare data references and array sections. Continue not registering component references. This will need to be followed up with more accurate designator checking in the near future.
Commit: 1f7a93d088f0b8549156aa2d4a241cdf8e36a066
https://github.com/llvm/llvm-project/commit/1f7a93d088f0b8549156aa2d4a241cdf8e36a066
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/source/Plugins/ABI/X86/ABIX86.cpp
M lldb/source/Plugins/ABI/X86/ABIX86.h
M lldb/source/Plugins/ABI/X86/ABIX86_64.h
M lldb/source/Plugins/ABI/X86/ABIX86_i386.h
Log Message:
-----------
[lldb][Windows] Fix "Invalid register name" for eax on x86_64 attach (#203498)
On Windows, when attaching to a process with no pre-existing target,
lldb reports "Invalid register name" for sub-registers like eax.
This is due to a bug in `ABIX86::AugmentRegisterInfo`, which determines
the GPR base size by reading
`Target::GetArchitecture().GetAddressByteSize()`. During attach, the
target's architecture has not yet been set when `AugmentRegisterInfo`
runs, so the lookup returns 0, the process is treated as 32-bit, and the
x86_64 sub-registers are never added.
This patch removes the dependency on the target's architecture: the X86
ABI plugins already know their own bitness, so `ABIX86_64` and
`ABIX86_i386` now report it directly via a new `Is64Bit()` virtual.
This patch fixes
`TestRegisters::test_convenience_registers_with_process_attach` and
`TestRegisters::test_convenience_registers_16bit_with_process_attach` on
Windows using `LLDB_USE_LLDB_SERVER=1`.
rdar://180307995
Commit: 9a725a7e86b1289893850127c63f5be9acdf9f07
https://github.com/llvm/llvm-project/commit/9a725a7e86b1289893850127c63f5be9acdf9f07
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.cpp
Log Message:
-----------
[lldb] Create a BSS section for WebAssembly object files (#206840)
Zero-initialized globals (BSS) live in a module's linear memory above
the initialized data segments, but wasm-ld emits no data segment for
them, so ObjectFileWasm created no section covering their addresses.
Reading those global without a running process fails with "unable to
resolve the module for file address", because the address resolved to no
section. Live reads did work because they go through process memory.
Synthesize a zero-fill section spanning from the end of the initialized
data to the linear memory's minimum size, and map it into linear memory
like the data segments. Live reads keep going through process memory
while zero-fill reads return zero.
Commit: 475bc045b47cc5df201c3b74ef8b40c90aeb2bba
https://github.com/llvm/llvm-project/commit/475bc045b47cc5df201c3b74ef8b40c90aeb2bba
Author: Vinay Deshmukh <vinay_deshmukh at outlook.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/include/__node_handle
M libcxx/include/__tree
M libcxx/include/set
M libcxx/include/version
M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each.associative.pass.cpp
M libcxx/test/std/containers/associative/from_range_associative_containers.h
M libcxx/test/std/containers/associative/set/clear.pass.cpp
M libcxx/test/std/containers/associative/set/contains.pass.cpp
M libcxx/test/std/containers/associative/set/contains_transparent.pass.cpp
M libcxx/test/std/containers/associative/set/count.pass.cpp
M libcxx/test/std/containers/associative/set/count_transparent.pass.cpp
M libcxx/test/std/containers/associative/set/emplace.pass.cpp
M libcxx/test/std/containers/associative/set/emplace_hint.pass.cpp
M libcxx/test/std/containers/associative/set/empty.pass.cpp
M libcxx/test/std/containers/associative/set/equal_range.pass.cpp
M libcxx/test/std/containers/associative/set/equal_range_transparent.pass.cpp
M libcxx/test/std/containers/associative/set/erase_iter.pass.cpp
M libcxx/test/std/containers/associative/set/erase_iter_iter.pass.cpp
M libcxx/test/std/containers/associative/set/erase_key.pass.cpp
M libcxx/test/std/containers/associative/set/extract_iterator.pass.cpp
M libcxx/test/std/containers/associative/set/extract_key.pass.cpp
M libcxx/test/std/containers/associative/set/find.pass.cpp
M libcxx/test/std/containers/associative/set/get_allocator.pass.cpp
M libcxx/test/std/containers/associative/set/incomplete_type.pass.cpp
M libcxx/test/std/containers/associative/set/insert_cv.pass.cpp
M libcxx/test/std/containers/associative/set/insert_initializer_list.pass.cpp
M libcxx/test/std/containers/associative/set/insert_iter_cv.pass.cpp
M libcxx/test/std/containers/associative/set/insert_iter_iter.pass.cpp
M libcxx/test/std/containers/associative/set/insert_iter_rv.pass.cpp
M libcxx/test/std/containers/associative/set/insert_node_type.pass.cpp
M libcxx/test/std/containers/associative/set/insert_node_type_hint.pass.cpp
M libcxx/test/std/containers/associative/set/insert_range.pass.cpp
M libcxx/test/std/containers/associative/set/insert_rv.pass.cpp
M libcxx/test/std/containers/associative/set/iterator.pass.cpp
M libcxx/test/std/containers/associative/set/lower_bound.pass.cpp
M libcxx/test/std/containers/associative/set/max_size.pass.cpp
M libcxx/test/std/containers/associative/set/merge.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/alloc.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/assign_initializer_list.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/compare.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/compare_alloc.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/copy.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/copy_alloc.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/copy_assign.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/deduct.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/default.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/default_noexcept.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/dtor_noexcept.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/from_range.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/initializer_list.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/initializer_list_compare.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/initializer_list_compare_alloc.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/iter_iter.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/iter_iter_comp.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/move.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/move_alloc.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/move_assign.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/move_noexcept.pass.cpp
M libcxx/test/std/containers/associative/set/set.erasure/erase_if.pass.cpp
M libcxx/test/std/containers/associative/set/set.nonmember/compare.three_way.pass.cpp
M libcxx/test/std/containers/associative/set/set.nonmember/op_compare.pass.cpp
M libcxx/test/std/containers/associative/set/set.observers/comp.pass.cpp
M libcxx/test/std/containers/associative/set/set.special/member_swap.pass.cpp
M libcxx/test/std/containers/associative/set/set.special/non_member_swap.pass.cpp
M libcxx/test/std/containers/associative/set/set.special/swap_noexcept.pass.cpp
M libcxx/test/std/containers/associative/set/size.pass.cpp
M libcxx/test/std/containers/associative/set/types.pass.cpp
M libcxx/test/std/containers/associative/set/upper_bound.pass.cpp
M libcxx/test/std/containers/container.node/node_handle.pass.cpp
M libcxx/test/std/containers/from_range_helpers.h
M libcxx/test/std/containers/insert_range_maps_sets.h
M libcxx/test/std/containers/set_allocator_requirement_test_templates.h
M libcxx/test/std/language.support/support.limits/support.limits.general/set.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++] Make `<set>` `std::set` constexpr as part of P3372R3 (#167241)
Commit: fe80adea429cceed029f7763c8eabc604eece988
https://github.com/llvm/llvm-project/commit/fe80adea429cceed029f7763c8eabc604eece988
Author: Xavier Roche <xavier.roche at algolia.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_signed_integer.compile.pass.cpp
M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_unsigned_integer.compile.pass.cpp
M libcxx/test/std/containers/views/mdspan/extents/bitint.pass.cpp
M libcxx/test/std/language.support/support.limits/limits/numeric.limits.members/digits10.pass.cpp
M libcxx/test/std/language.support/support.limits/limits/numeric.limits.members/max.pass.cpp
M libcxx/test/std/language.support/support.limits/limits/numeric.limits.members/min.pass.cpp
M libcxx/test/std/numerics/bit/bit.pow.two/bit_floor.pass.cpp
M libcxx/test/std/numerics/bit/bit.pow.two/bit_width.pass.cpp
M libcxx/test/std/numerics/bit/bitops.count/countl_zero.pass.cpp
M libcxx/test/std/numerics/bit/bitops.rot/rotl.pass.cpp
M libcxx/test/std/numerics/bit/bitops.rot/rotr.pass.cpp
M libcxx/test/std/numerics/bit/byteswap.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/saturating.bitint.pass.cpp
M libcxx/test/std/utilities/utility/utility.intcmp/intcmp.bitint.pass.cpp
Log Message:
-----------
[libc++][test][NFC] Remove implementation-detail noise from _BitInt test comments (#206666)
Several `_BitInt` test comments named the builtin the code lowers to,
restated macro equivalences, or pointed at another test file's
internals. They read as machine-generated and do not help a reader. This
rewords them across the `_BitInt` tests touched by #203876, where the
pattern was flagged in review.
Assisted-by: Claude (Anthropic)
Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
Commit: bc59f8f4f31b101cb4e338b4cb71591aa769911c
https://github.com/llvm/llvm-project/commit/bc59f8f4f31b101cb4e338b4cb71591aa769911c
Author: Lang Hames <lhames at gmail.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/InProcessEPC.cpp
Log Message:
-----------
[ORC] Add missing std::move. (#206859)
This should fix the build failure at
https://lab.llvm.org/buildbot/#/builders/116/builds/29995.
Commit: 443d933cef6ef8dc5179ff8ffe9feb133a265920
https://github.com/llvm/llvm-project/commit/443d933cef6ef8dc5179ff8ffe9feb133a265920
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M libunwind/src/Unwind-wasm.c
Log Message:
-----------
[libunwind] Fix comment about phase (NFC) (#206660)
We switched to use `_UA_SEARCH_PHASE` in
https://github.com/emscripten-core/emscripten/pull/17991, but the
comment above was not fixed, and it was upstreamed that way later.
Commit: f9f4331c2883fc441c5f146ef674e693acf2fc9b
https://github.com/llvm/llvm-project/commit/f9f4331c2883fc441c5f146ef674e693acf2fc9b
Author: hulxv <hulxxv at gmail.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M libc/shared/builtins.h
A libc/shared/builtins/muldf3.h
M libc/src/__support/builtins/CMakeLists.txt
A libc/src/__support/builtins/muldf3.h
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_builtins_test.cpp
Log Message:
-----------
[libc] add shared muldf3 builtin (#205674)
Re-exposes LLVM-libc's `__muldf3` as `shared::muldf3` for reuse by
compiler-rt's builtins.
Stacked change - merge these first:
- #200094
- #205669
- #205670
- #205671
- #205672
- #205673
Part of #197824
Commit: c7e2809a631a2fbe73a13e5f2d2e48bc3f3dcf18
https://github.com/llvm/llvm-project/commit/c7e2809a631a2fbe73a13e5f2d2e48bc3f3dcf18
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/include/clang/Sema/Initialization.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaInit.cpp
R clang/test/AST/HLSL/ConstantBuffers-AST-error.hlsl
M clang/test/AST/HLSL/ConstantBuffers-AST.hlsl
R clang/test/CodeGenHLSL/cbuffer_copy_layout.hlsl
A clang/test/CodeGenHLSL/resources/ConstantBufferT-struct-passing.hlsl
M clang/test/SemaHLSL/BuiltIns/asuint-errors.hlsl
M clang/test/SemaHLSL/Resources/ConstantBuffers.hlsl
Log Message:
-----------
[HLSL] Enable conversion of ConstantBuffer<T> to T (#205996)
HLSL allows assigning a `ConstantBuffer<T>` to an object of type `T`.
This change adds support for this.
Fixes #195093
Commit: e2fc1e7467e0b4c124aa6aa1422b1fed3afd1907
https://github.com/llvm/llvm-project/commit/e2fc1e7467e0b4c124aa6aa1422b1fed3afd1907
Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
A llvm/test/CodeGen/LoongArch/isel-set-invalid-rounding.ll
A llvm/test/CodeGen/LoongArch/set-rounding.ll
Log Message:
-----------
[LoongArch] Support ISD::SET_ROUNDING (llvm.set.rounding) (#206395)
Fix https://github.com/llvm/llvm-project/issues/205039.
The LoongArch FCSR RM field supports four rounding modes, whose
encodings differ from LLVM's rounding mode values:
FCSR: 0=RNE, 1=RZ, 2=RP, 3=RM
LLVM: 0=RTZ, 1=RNE, 2=RUP, 3=RDN
For LLVM rounding mode 4, round to nearest with ties away from zero,
diagnose an error when it is a constant.
---------
Co-authored-by: tangyuan0821 <tangyuan0821 at email.cn>
Commit: 80723e01f328a09e7e8374d4f61822288daabf9c
https://github.com/llvm/llvm-project/commit/80723e01f328a09e7e8374d4f61822288daabf9c
Author: lrzlin <linrunze at loongson.cn>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/test/CodeGen/LoongArch/ir-instruction/double-convert.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/float-convert.ll
Log Message:
-----------
Reland: [LoongArch] Custom scalar UINT_TO_FP and FP_TO_UINT with LSX instructions (#206655)
Using `vftintrz.lu.d` for converting scalar double/float values to
unsigned 64-bit integers, and `vffint.d.lu` vice versa.
Remove incorrect uint64 to float conversion, which is suffered
from double-rounding issue.
Commit: c311656883510568fc1ce027916a9534b825f91d
https://github.com/llvm/llvm-project/commit/c311656883510568fc1ce027916a9534b825f91d
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/test/CodeGen/call-graph-section-callback.cpp
M clang/test/CodeGen/call-graph-section-internal.cpp
M clang/test/CodeGen/call-graph-section-templates.cpp
M clang/test/CodeGen/call-graph-section-virtual-methods.cpp
M clang/test/CodeGen/call-graph-section.c
M clang/test/CodeGen/call-graph-section.cpp
R llvm/docs/CalleeTypeMetadata.rst
M llvm/docs/LangRef.rst
M llvm/docs/Reference.md
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/IR/FixedMetadataKinds.def
M llvm/include/llvm/IR/Metadata.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
M llvm/test/Assembler/callee-type-metadata.ll
M llvm/test/CodeGen/AArch64/calleetypeid-directcall-mismatched.ll
M llvm/test/CodeGen/AArch64/callsite-emit-calleetypeid-tailcall.ll
M llvm/test/CodeGen/AArch64/callsite-emit-calleetypeid.ll
M llvm/test/CodeGen/ARM/call-graph-section-addrtaken.ll
M llvm/test/CodeGen/ARM/call-graph-section-assembly.ll
M llvm/test/CodeGen/ARM/call-graph-section-tailcall.ll
M llvm/test/CodeGen/ARM/call-graph-section.ll
M llvm/test/CodeGen/ARM/calleetypeid-directcall-mismatched.ll
M llvm/test/CodeGen/ARM/callsite-emit-calleetypeid-tailcall.ll
M llvm/test/CodeGen/ARM/callsite-emit-calleetypeid.ll
M llvm/test/CodeGen/MIR/X86/call-site-info-ambiguous-indirect-call-typeid.mir
M llvm/test/CodeGen/MIR/X86/call-site-info-typeid.mir
M llvm/test/CodeGen/MIR/X86/callsite-emit-calleetypeid.ll
M llvm/test/CodeGen/Mips/calleetypeid-directcall-mismatched.ll
M llvm/test/CodeGen/Mips/callsite-emit-calleetypeid-tailcall.ll
M llvm/test/CodeGen/Mips/callsite-emit-calleetypeid.ll
M llvm/test/CodeGen/RISCV/calleetypeid-directcall-mismatched.ll
M llvm/test/CodeGen/RISCV/callsite-emit-calleetypeid-tailcall.ll
M llvm/test/CodeGen/RISCV/callsite-emit-calleetypeid.ll
M llvm/test/CodeGen/X86/call-graph-section-addrtaken.ll
M llvm/test/CodeGen/X86/call-graph-section-assembly.ll
M llvm/test/CodeGen/X86/call-graph-section-tailcall.ll
M llvm/test/CodeGen/X86/call-graph-section.ll
M llvm/test/CodeGen/X86/calleetypeid-directcall-mismatched.ll
M llvm/test/CodeGen/X86/callsite-emit-calleetypeid-tailcall.ll
M llvm/test/CodeGen/X86/callsite-emit-calleetypeid.ll
M llvm/test/Transforms/Inline/drop-callee-type-metadata.ll
M llvm/test/Transforms/InstCombine/drop-callee-type-metadata.ll
A llvm/test/Transforms/MergeFunc/callgraph-function-merging.ll
M llvm/test/Transforms/SimplifyCFG/merge-callee-type-metadata.ll
M llvm/test/Verifier/callee-type-metadata.ll
Log Message:
-----------
[clang][llvm]Uncorrelate CFI and Callgraph related type metadata annotations (#204266)
When -fexperimental-call-graph-section flag is set, it adds type
metadata to all the functions whose addresses are taken and does not
have local linkage. When this flag is set along with CFI, the type
metadata is added to all the vtable functions including destructors.
This changes which functions are to be treated as CFI functions and
includes such vtable entries to become part of the CFI check jumptables.
To disambiguate intentions of CFI and callgraph mechanisms, this patch
renames metadata set by callgraph mechanism to !callgraph
(MD_callgraph). This prevents inflating the list of CFI functions when
callgraph section is enabled along with CFI.
Commit: 6a2cd1fabaa738884ce70aa5720b8d52f1d12699
https://github.com/llvm/llvm-project/commit/6a2cd1fabaa738884ce70aa5720b8d52f1d12699
Author: Petr Hosek <phosek at google.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M libc/cmake/modules/LLVMLibCArchitectures.cmake
Log Message:
-----------
[libc] Support triples that start with thumb*- (#206847)
thumb*- can be used as an alias for arm*- (implying -mthumb).
Commit: 76c92ec7aeede1b31f70a0aa1e75295ad9782cf1
https://github.com/llvm/llvm-project/commit/76c92ec7aeede1b31f70a0aa1e75295ad9782cf1
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M lldb/test/API/commands/platform/basic/TestPlatformPython.py
M lldb/test/API/commands/platform/connect/TestPlatformConnect.py
M lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
M lldb/test/API/commands/process/launch-with-shellexpand/TestLaunchWithShellExpand.py
M lldb/test/API/commands/process/reverse-continue/TestReverseContinue.py
M lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py
M lldb/test/API/driver/batch_mode/TestBatchMode.py
M lldb/test/API/functionalities/breakpoint/breakpoint_conditions/crashing_condition/TestCrashingCondition.py
M lldb/test/API/functionalities/breakpoint/delayed_breakpoints/TestDelayedBreakpoint.py
M lldb/test/API/functionalities/breakpoint/hardware_breakpoints/require_hw_breakpoints/TestRequireHWBreakpoints.py
M lldb/test/API/functionalities/breakpoint/hardware_breakpoints/simple_hw_breakpoints/TestSimpleHWBreakpoints.py
M lldb/test/API/functionalities/completion/TestCompletion.py
M lldb/test/API/functionalities/gdb_remote_client/TestDynamicLoaderDarwin.py
M lldb/test/API/functionalities/memory/holes/TestMemoryHoles.py
M lldb/test/API/functionalities/module_cache/simple_exe/TestModuleCacheSimple.py
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueWatchpoints.py
M lldb/test/API/functionalities/tail_call_frames/ambiguous_tail_call_seq1/TestAmbiguousTailCallSeq1.py
M lldb/test/API/functionalities/tail_call_frames/ambiguous_tail_call_seq2/TestAmbiguousTailCallSeq2.py
M lldb/test/API/functionalities/tail_call_frames/cross_object/TestCrossObjectTailCalls.py
M lldb/test/API/functionalities/tail_call_frames/disambiguate_call_site/TestDisambiguateCallSite.py
M lldb/test/API/functionalities/tail_call_frames/disambiguate_paths_to_common_sink/TestDisambiguatePathsToCommonSink.py
M lldb/test/API/functionalities/tail_call_frames/disambiguate_tail_call_seq/TestDisambiguateTailCallSeq.py
M lldb/test/API/functionalities/tail_call_frames/inlining_and_tail_calls/TestInliningAndTailCalls.py
M lldb/test/API/functionalities/tail_call_frames/sbapi_support/TestTailCallFrameSBAPI.py
M lldb/test/API/functionalities/tail_call_frames/thread_step_out_message/TestArtificialFrameStepOutMessage.py
M lldb/test/API/functionalities/tail_call_frames/thread_step_out_or_return/TestSteppingOutWithArtificialFrames.py
M lldb/test/API/functionalities/tail_call_frames/unambiguous_sequence/TestUnambiguousTailCalls.py
M lldb/test/API/iohandler/sigint/TestProcessIOHandlerInterrupt.py
M lldb/test/API/lang/cpp/default-template-args/TestDefaultTemplateArgs.py
M lldb/test/API/macosx/mte/TestDarwinMTE.py
M lldb/test/API/python_api/global_module_cache/TestGlobalModuleCache.py
M lldb/test/API/python_api/sbenvironment/TestSBEnvironment.py
M lldb/test/API/python_api/sbplatform/TestSBPlatform.py
M lldb/test/API/qemu/TestQemuLaunch.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py
M lldb/test/API/tools/lldb-dap/databreakpoint/TestDAP_setDataBreakpoints.py
M lldb/test/API/tools/lldb-dap/disconnect/TestDAP_disconnect.py
Log Message:
-----------
[lldb][test] Skip more unsupported tests on WebAssembly (#206857)
These tests exercise functionality that WebAssembly does not provide, so
they cannot pass under the Wasm test configuration. The reasons vary by
test, captured by a short inline comment.
Skip them with @skipIfWasm (and @skipIfNoSignals for the SIGINT test) so
the suite reflects real failures.
Commit: 483d53409dd5b1540c1b0644b31c392e4a1b0406
https://github.com/llvm/llvm-project/commit/483d53409dd5b1540c1b0644b31c392e4a1b0406
Author: Mark Zhuang <mark.zhuang at spacemit.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/include/llvm/TargetParser/SubtargetFeature.h
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
Log Message:
-----------
[TargetParser][NFC] Make FeatureBitset iterable (#206394)
FeatureBitset had no way to iterate its bits, so callers scanned all
MAX_SUBTARGET_FEATURES positions by hand.
This adds begin()/end() that yield the index of each set bit, skipping
unset bits with countr_zero.
Callers can now write `for (unsigned Feature: Features)`.
Assisted-by: claude-opus
Commit: 14d9c0c469be442f16bafaff3299b7585e944ea5
https://github.com/llvm/llvm-project/commit/14d9c0c469be442f16bafaff3299b7585e944ea5
Author: Mark Zhuang <mark.zhuang at spacemit.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/test/MC/ARM/basic-arm-instructions-v8.1a.s
M llvm/test/MC/ARM/bfloat16-a32-errors2.s
M llvm/test/MC/ARM/cde-integer.s
M llvm/test/MC/ARM/diagnostics.s
M llvm/test/MC/ARM/invalid-neon-v8.s
M llvm/test/MC/ARM/ldrd-strd-gnu-arm-bad-regs.s
M llvm/test/MC/ARM/ldrd-strd-gnu-bad-inst.s
M llvm/test/MC/ARM/ldrd-strd-gnu-sp.s
M llvm/test/MC/ARM/ldrd-strd-gnu-thumb-bad-regs.s
M llvm/test/MC/ARM/mve-load-store.s
M llvm/test/MC/ARM/mve-misc.s
M llvm/test/MC/ARM/mve-scalar-shift.s
M llvm/test/MC/ARM/thumb-diagnostics.s
M llvm/test/MC/ARM/thumb2-diagnostics.s
M llvm/test/MC/ARM/thumb2-dsp-diag.s
M llvm/test/MC/ARM/thumbv7m.s
M llvm/test/MC/ARM/thumbv8m.s
M llvm/test/MC/ARM/vmrs_vmsr.s
M llvm/utils/TableGen/AsmMatcherEmitter.cpp
Log Message:
-----------
[AsmMatcher] Report a near-miss when all candidates mismatch multiple operands (#206390)
In the ReportMultipleNearMisses path, an opcode that mismatches more
than one operand is dropped, and its first near-miss is dropped with it. If
every opcode is dropped this way, the parser only reports a generic
"invalid instruction".
Now keep the first near-miss of each such opcode, and use it only when
no other opcode gives a near-miss.
Assisted-by: claude-opus
Commit: 14a19ce1580733ec75dd4cbc5214e7d40d90cbba
https://github.com/llvm/llvm-project/commit/14a19ce1580733ec75dd4cbc5214e7d40d90cbba
Author: Junji Watanabe <jwata at google.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/lib/Support/Windows/Path.inc
Log Message:
-----------
Fix Windows Path Separator issues in create_symlink and readlink (#206665)
- Force create_symlink target path to use backslashes on Windows, as
NTFS reparse points require backslashes.
- Normalize readlink output to native path separators to match preferred
style.
This fixes the following test failure:
```
PS C:\src\chromium\src\third_party\llvm> .\build_repro\unittests\Support\SupportTests.exe --gtest_filter=FileSystemTest.CreateRelativeDirectorySymlink
[ RUN ] FileSystemTest.CreateRelativeDirectorySymlink
Test Directory: C:/src/temp/file-system-test-a3fd42
C:\src\chromium\src\third_party\llvm\llvm\unittests\Support\Path.cpp(896): error: Value of: fs::is_directory(Link) Actual: false
Expected: true
```
Commit: b0e490ad4f8c12b38023e15cd08c8211f3262cfb
https://github.com/llvm/llvm-project/commit/b0e490ad4f8c12b38023e15cd08c8211f3262cfb
Author: Ivo Popov <popov.ivo at gmail.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M clang/lib/Serialization/ASTCommon.cpp
A clang/test/Modules/modules-lambda-dependent-crash.cppm
A clang/test/Modules/modules-local-class-dependent-crash.cppm
Log Message:
-----------
[Clang][Modules] Skip anonymous declaration numbering for local tags in dependent contexts (#202248)
Local tag declarations (classes, structs, enums, and lambdas) defined
within function template bodies or class templates do not require ODR
merging at the local declaration level across different modules. ODR
consistency is already guaranteed because the instantiator only walks
the canonical template definition body, which instantiates its own copy
of the local class.
Merging them across different modules causes their member definitions
(like methods or call operators) to be canonicalized to one module,
while the instantiator walks the template body from another module.
Since local variables within template bodies are not merged, this
mismatch leads to assertion crashes during template instantiation in
`LocalInstantiationScope::findInstantiationOf`.
Fixes https://github.com/llvm/llvm-project/issues/206203.
Co-authored-by: ipopov <ipopov at google.com>
Commit: e3f2e3505c234175c9f3b76fd9a129b228056562
https://github.com/llvm/llvm-project/commit/e3f2e3505c234175c9f3b76fd9a129b228056562
Author: Ivo Popov <popov.ivo at gmail.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M clang/lib/Serialization/ASTCommon.cpp
Log Message:
-----------
[Serialization] Delete an unreachable BlockDecl check (NFC) (#206298)
`needsAnonymousDeclarationNumber()` takes a `const NamedDecl *`. Both
`BlockDecl` and `NamedDecl` derive from `Decl`, in other words they're
siblings.
* https://clang.llvm.org/doxygen/classclang_1_1BlockDecl.html
* https://clang.llvm.org/doxygen/classclang_1_1NamedDecl.html
Thus `isa<BlockDecl>(D)` is statically false.
Commit: f5ebc1a2e48605f01f9464eb5e833862790e3499
https://github.com/llvm/llvm-project/commit/f5ebc1a2e48605f01f9464eb5e833862790e3499
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
A llvm/test/CodeGen/AMDGPU/mcinstlower-external-symbol-reloc.mir
Log Message:
-----------
[AMDGPU] Apply target flag specifier when lowering MO_ExternalSymbol operands (#202389)
The MO_ExternalSymbol case in AMDGPUMCInstLower dropped the operand
target flags emitting the wrong relocation type
Commit: 905c6d98f2d97a623b16d2e7242f4c9a7f7b4d97
https://github.com/llvm/llvm-project/commit/905c6d98f2d97a623b16d2e7242f4c9a7f7b4d97
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
A llvm/test/CodeGen/RISCV/rvv/pr206788.ll
Log Message:
-----------
[RISCV] Disable combineVectorSizedSetCCEquality when fixed length vectors are disabled. (#206829)
With VLEN=32 we don't support fixed vectors even if vector instructions are
enabled.
Fixes #206788
Commit: b5c555194be70b631847c51ba03855cbf38443cb
https://github.com/llvm/llvm-project/commit/b5c555194be70b631847c51ba03855cbf38443cb
Author: Lang Hames <lhames at gmail.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M orc-rt/include/orc-rt/CallableTraitsHelper.h
Log Message:
-----------
[orc-rt] Simplify CallableTraitsHelper specialization inheritance NFC. (#206869)
Make CallableTraitsHelper specializations inherit directly from ImplT.
This is a no-op, but will simplify upcoming patches that will capture
more information about the callable type.
Commit: 62ee075076deae88fd26b413493246c5bc2d80bd
https://github.com/llvm/llvm-project/commit/62ee075076deae88fd26b413493246c5bc2d80bd
Author: Shanzhi Chen <chenshanzhi at huawei.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Log Message:
-----------
[AArch64][ISel] Fix comment misalignment (NFC) (#206878)
Fix comment misalignment introduced by newly-added code in commit
2668971e14219205ddf6b1f753cf83f7cb22022a
Commit: e7290b1f1815626c4461d38671d93093590bf405
https://github.com/llvm/llvm-project/commit/e7290b1f1815626c4461d38671d93093590bf405
Author: Carlos Alberto Enciso <carlos.alberto.enciso at gmail.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/docs/CommandGuide/llvm-debuginfo-analyzer.rst
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVElement.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVLocation.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVReader.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVSupport.h
M llvm/include/llvm/DebugInfo/LogicalView/LVReaderHandler.h
M llvm/include/llvm/DebugInfo/LogicalView/Readers/LVBinaryReader.h
A llvm/include/llvm/DebugInfo/LogicalView/Readers/LVIRReader.h
M llvm/lib/DebugInfo/LogicalView/CMakeLists.txt
M llvm/lib/DebugInfo/LogicalView/Core/LVElement.cpp
M llvm/lib/DebugInfo/LogicalView/Core/LVLocation.cpp
M llvm/lib/DebugInfo/LogicalView/Core/LVReader.cpp
M llvm/lib/DebugInfo/LogicalView/LVReaderHandler.cpp
A llvm/lib/DebugInfo/LogicalView/Readers/LVIRReader.cpp
M llvm/lib/Transforms/Utils/DebugSSAUpdater.cpp
A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-compare-logical-elements.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-print-basic-details.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-select-logical-elements.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/02-ir-logical-lines.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/03-ir-incorrect-lexical-scope-typedef.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/04-ir-missing-nested-enumerators.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/05-ir-incorrect-lexical-scope-variable.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/06-ir-full-logical-view.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/07-ir-debug-formats.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/08-ir-multiple-compile-units.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-1.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-2.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-3.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/hello-world-clang.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-43860-clang.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-44884-clang.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-46466-clang.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/test-clang-intrinsics.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/test-clang.ll
M llvm/tools/llvm-debuginfo-analyzer/CMakeLists.txt
M llvm/unittests/DebugInfo/LogicalView/CMakeLists.txt
A llvm/unittests/DebugInfo/LogicalView/IRReaderTest.cpp
M llvm/unittests/DebugInfo/LogicalView/Inputs/README.md
A llvm/unittests/DebugInfo/LogicalView/Inputs/test-clang.bc
A llvm/unittests/DebugInfo/LogicalView/Inputs/test-clang.ll
Log Message:
-----------
[llvm-debuginfo-analyzer] Add support for LLVM IR format. (#202120)
llvm-debuginfo-analyzer is a command line tool that processes debug
info contained in a binary file and produces a debug information
format agnostic “Logical View”, which is a high-level semantic
representation of the debug info, independent of the low-level format.
Add support for the LLVM IR format and be able to generate logical
views. Both textual representation (.ll) and bitcode (.bc) formats
are supported.
This relands https://github.com/llvm/llvm-project/pull/135440,
which was:
reverted in: https://github.com/llvm/llvm-project/pull/199890
relanded in: https://github.com/llvm/llvm-project/pull/200603
reverted in: https://github.com/llvm/llvm-project/pull/201019
It includes the fixes for the buildbots problems.
Commit: 4a11eb33c70af70bbb5942bf644b6af64386970a
https://github.com/llvm/llvm-project/commit/4a11eb33c70af70bbb5942bf644b6af64386970a
Author: Lang Hames <lhames at gmail.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M orc-rt/include/orc-rt/CallableTraitsHelper.h
Log Message:
-----------
[orc-rt] Drop redundant 'public' base access specifiers. NFC. (#206883)
Commit: 2301475676b208c555273e7c1ac5d4470d5ee70e
https://github.com/llvm/llvm-project/commit/2301475676b208c555273e7c1ac5d4470d5ee70e
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M flang/lib/Lower/OpenACC.cpp
R flang/test/Lower/OpenACC/acc-declare-managed-no-global-ctor.f90
Log Message:
-----------
Revert "[flang][openacc] Skip implicit global declare constructor in managed mode" (#206884)
Reverts llvm/llvm-project#206610 as this might not be the right approach
Commit: bae9ddca423145baf0c35e31898b723aa273f85c
https://github.com/llvm/llvm-project/commit/bae9ddca423145baf0c35e31898b723aa273f85c
Author: owenca <owenpiano at gmail.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M clang/lib/Format/WhitespaceManager.cpp
M clang/unittests/Format/FormatTestComments.cpp
Log Message:
-----------
[clang-format] Fix a bug in recognizing trailing comments (#206393)
Test cases are borrowed/adapted from #196760.
Fixes #196663
Commit: 4bab60f2c63a3df35dd892a0f42666bdb7527be7
https://github.com/llvm/llvm-project/commit/4bab60f2c63a3df35dd892a0f42666bdb7527be7
Author: Lang Hames <lhames at gmail.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M orc-rt/include/orc-rt/CallableTraitsHelper.h
M orc-rt/include/orc-rt/Error.h
M orc-rt/include/orc-rt/WrapperFunction.h
M orc-rt/unittests/CallableTraitsHelperTest.cpp
Log Message:
-----------
[orc-rt] CallableTraitsHelper - record call operator's const-qualifier (#206889)
Adds a leading `bool IsConst` template parameter to
CallableTraitsHelper's impl-class template argument to record the
const-qualifier on the callable's function type.
Existing specializations are updated to report their const qualifiers,
and a new specialization handles `RetT(ArgTs...) const`.
CallableArgInfo is updated to expose the captured bool as `static
constexpr bool is_const`.
Existing impls that do not consume the new parameter are adapted via
pass-through wrappers (ErrorHandlerTraitsImplAdapter,
ErrorWrapImplAdapter, WFHandlerTraitsImplAdapter) that discard the
leading bool.
Commit: 67f027c83a84fe3e6e1d27267823b991e4256047
https://github.com/llvm/llvm-project/commit/67f027c83a84fe3e6e1d27267823b991e4256047
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/TargetParser/AArch64TargetParser.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
M llvm/utils/TableGen/Basic/ARMTargetDefEmitter.cpp
Log Message:
-----------
[TargetParser][AArch64][NFC] Use StringTable (#206698)
Store strings in a StringTable instead of referencing them via pointers.
This permits some data structures to be stored in .rodata instead of
.data.rel.ro, as they no longer require relocations. In particular this
affects the 16 kiB AArch64::Extensions.
Commit: 3d8fafbc863fe8702d589f822b4c121765371595
https://github.com/llvm/llvm-project/commit/3d8fafbc863fe8702d589f822b4c121765371595
Author: adalal-2441 <adalal at amd.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/lib/Target/X86/X86InsertX87Wait.cpp
A llvm/test/CodeGen/X86/x87-insert-wait.mir
Log Message:
-----------
[X86] Insert WAIT before fnstenv/fnsave and skip meta-instructions (#204108)
fnstenv/fnsave (FSTENVm/FSAVEm) are non-waiting, so they don't
synchronize a pending FP exception; the WAIT pass shouldn't skip the
WAIT before them.
Also skip meta-instructions when finding the next op so WAIT placement
doesn't depend on -g.
Added a new X87ControlKind enum class to classify x87 control
instructions in the pass, replacing the existing ad-hoc switches.
Found via @jlebar's X86 LLVM bug-hunt / FuzzX effort:
https://github.com/SemiAnalysisAI/FuzzX/blob/master/x86/bugs/047-x87-insertwait-too-eager-skip
cc @jlebar
Commit: 8461c3bd07b77c077812c6483f8a7f41ab25805f
https://github.com/llvm/llvm-project/commit/8461c3bd07b77c077812c6483f8a7f41ab25805f
Author: Lang Hames <lhames at gmail.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M orc-rt/include/orc-rt/CallableTraitsHelper.h
M orc-rt/include/orc-rt/Error.h
M orc-rt/include/orc-rt/WrapperFunction.h
M orc-rt/unittests/CallableTraitsHelperTest.cpp
Log Message:
-----------
[orc-rt] CallableTraitsHelper - record operator()'s noexcept-specifier (#206891)
Adds a `bool IsNoexcept` template parameter to CallableTraitsHelper's
impl-class template argument (after the existing IsConst from
4bab60f2c63). It records the noexcept-specification on the callable's
function type.
Specializations are added for noexcept-qualified forms. Existing
specializations propagate `IsNoexcept = false`. CallableArgInfoImpl
exposes the captured bool as `static constexpr bool is_noexcept`.
Existing pass-through adapters (ErrorHandlerTraitsImplAdapter,
ErrorWrapImplAdapter, WFHandlerTraitsImplAdapter) are updated to accept
and discard the additional argument.
Commit: 0b413b7d0f5a64e2bb1dea136688b3f4e4ea5e22
https://github.com/llvm/llvm-project/commit/0b413b7d0f5a64e2bb1dea136688b3f4e4ea5e22
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M bolt/lib/Core/MCPlusBuilder.cpp
M llvm/include/llvm/MC/MCRegisterInfo.h
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
M llvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp
M llvm/lib/Target/BPF/BPFMIChecking.cpp
M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/MSP430/AsmParser/MSP430AsmParser.cpp
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
M llvm/lib/Target/X86/AsmParser/X86Operand.h
M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
M llvm/lib/Target/X86/X86ExpandPseudo.cpp
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/test/TableGen/AsmPredicateCombiningRISCV.td
M llvm/test/TableGen/CompressInstEmitter/suboperands.td
M llvm/test/TableGen/RegClassByHwModeCompressPat.td
M llvm/test/TableGen/RegisterClassCopyCost.td
M llvm/utils/TableGen/CompressInstEmitter.cpp
M llvm/utils/TableGen/RegisterInfoEmitter.cpp
Log Message:
-----------
[MC][TableGen] Make MCRegisterClasses relocation-free (#206753)
MCRegisterClasses currently store pointers to the register list and the
bit set. Store these three types together in one data structure and use
relative offsets to avoid these relocations and move the large
MCRegisterClasses array from .data.rel.ro into .data. This reduces the
amount of data that needs to be relocated by 86 KB.
This has two side effects: first, MCRegisterClass is not copyable and
the few uses that did copy were changed. Second, the MCRegisterClasses
array is no longer easily accessible as a global (well, it *technically*
is, but that requires the type of the entire storage struct, which I
don't want to expose). Therefore, these accesses need to go through a
function; which shouldn't be too costly and be inlined in an LTO build.
Commit: 25d46e474debb04c55127e77fde8c99b61f2c065
https://github.com/llvm/llvm-project/commit/25d46e474debb04c55127e77fde8c99b61f2c065
Author: Alok Kumar Sharma <AlokKumar.Sharma at amd.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
A llvm/test/Transforms/MergeFunc/merge-functions-entry-count-alias.ll
A llvm/test/Transforms/MergeFunc/merge-functions-entry-count-no-alias.ll
Log Message:
-----------
[MergeFunctions] Fix build failure in PR #202218 (#206651)
Address the build issue that caused the original change to be reverted
and reapply the fix.
Commit: 030e141fa93aa13420f02fbcdc725a3ec604af19
https://github.com/llvm/llvm-project/commit/030e141fa93aa13420f02fbcdc725a3ec604af19
Author: Lang Hames <lhames at gmail.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M orc-rt/unittests/CallableTraitsHelperTest.cpp
Log Message:
-----------
[orc-rt] Silence an unneeded-internal-decl warning in testcase. (#206892)
Add an ODR-use of freeVoidVoidNoexcept to silence clang's
-Wunneeded-internal-declaration warning.
Commit: ac493bb6ab3e60bbff8b2786d32a36b18c6c7391
https://github.com/llvm/llvm-project/commit/ac493bb6ab3e60bbff8b2786d32a36b18c6c7391
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Driver/ToolChain.cpp
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/lib/TargetParser/AArch64TargetParser.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
M llvm/utils/TableGen/Basic/ARMTargetDefEmitter.cpp
Log Message:
-----------
[TargetParser][AArch64][NFC] Reference ArchInfo via index (#206699)
This removes all relocations from CpuInfos so that the 3-4 kiB structure
can be stored in .rodata. Additionally, the ArchInfos pointer array is
replaced by an ArchInfos value array and the architecture names are
replaced by constexpr references.
Commit: 3ad796ad06132e49d2a9c6d9deddf1604b3b575a
https://github.com/llvm/llvm-project/commit/3ad796ad06132e49d2a9c6d9deddf1604b3b575a
Author: Lang Hames <lhames at gmail.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M orc-rt/unittests/ErrorExceptionInteropTest.cpp
Log Message:
-----------
[orc-rt] Fix unused function warning in testcase. (#206894)
Fixes -Wunused-function warning on peekAtErrorMessage by only defining
that function when ORC_RT_ENABLE_EXCEPTIONS has been turned on.
Commit: 4c27981352753962ffeba8ba9a6d2d49b70a240b
https://github.com/llvm/llvm-project/commit/4c27981352753962ffeba8ba9a6d2d49b70a240b
Author: Petr Hosek <phosek at google.com>
Date: 2026-06-30 (Tue, 30 Jun 2026)
Changed paths:
M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
Log Message:
-----------
[compiler-rt] Support triples that start with thumb*- (#206848)
thumb*- can be used as an alias for arm*- (implying -mthumb).
Commit: 2b07bbf52cd734b81dd1d8529dc42c76359d5283
https://github.com/llvm/llvm-project/commit/2b07bbf52cd734b81dd1d8529dc42c76359d5283
Author: William Tran-Viet <wtranviet at proton.me>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M libcxx/docs/Status/Cxx26Issues.csv
M libcxx/include/__expected/expected.h
M libcxx/test/std/utilities/expected/expected.expected/equality/equality.T2.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/equality/equality.unexpected.pass.cpp
M libcxx/test/support/test_comparisons.h
Log Message:
-----------
[libc++] Resolve LWG4366: Heterogeneous comparison of `expected` may be ill-formed (#185342)
Resolves #171362
- Implement proposed resolution
- Refactor `operator==` code to be more in line with the standard as the
current way was making an explicit `bool()` conversion in the `x.meow()
== y.meow()` cases
- Add test cases
- Update issues paper
---------
Co-authored-by: A. Jiang <de34 at live.cn>
Commit: 58203500b5bd1628401c1a103eb264b7d78ea3bb
https://github.com/llvm/llvm-project/commit/58203500b5bd1628401c1a103eb264b7d78ea3bb
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
R libc/include/link.h.def
M libc/include/link.yaml
R libc/include/string.h.def
M libc/include/string.yaml
R libc/include/sys/ucontext.h.def
M libc/include/sys/ucontext.yaml
Log Message:
-----------
[libc] Migrate header .def files to public_includes (#206727)
Now that public_includes is supported in header yaml files, we don't
need custom .h.def templates just to include another header.
This patch removes link.h.def, string.h.def, and ucontext.h.def and
moves their inclusions directly into
their yaml definitions:
- link.yaml: add elf.h
- string.yaml: add strings.h
- sys/ucontext.yaml: add ucontext.h
Assisted by Gemini.
Commit: d1bd8d3f21bfd42edbaa78662a2ca47c65fa73b4
https://github.com/llvm/llvm-project/commit/d1bd8d3f21bfd42edbaa78662a2ca47c65fa73b4
Author: Daniel Cederman <cederman at gaisler.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/lib/Target/Sparc/Sparc.td
Log Message:
-----------
[Sparc] Enable CASA for the leon3 CPU target (#205810)
This matches the leon3 CPU target in GCC.
Commit: 9e0aa61f75299f91b9e063ba46d2e33aa164cf7a
https://github.com/llvm/llvm-project/commit/9e0aa61f75299f91b9e063ba46d2e33aa164cf7a
Author: Timur Golubovich <timur.golubovich at intel.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/lib/Analysis/ScalarEvolution.cpp
A llvm/test/Transforms/IndVarSimplify/X86/fold-correlated-iv-comparisons.ll
R llvm/test/Transforms/LoopStrengthReduce/X86/lsr-icmpzero-no-inttoptr.ll
Log Message:
-----------
[SCEV] Prove implied conditions via matching SCEV differences (#201839)
Add isImpliedCondOperandsViaMatchingDiff to fold equality comparisons
when getMinusSCEV(LHS, RHS) == getMinusSCEV(FoundLHS, FoundRHS).
This handles correlated IV comparisons in loops with multiple pointer
IVs sharing the same stride.
Commit: 429afacb27aaa0ce66920e9cbab47028d182bd8b
https://github.com/llvm/llvm-project/commit/429afacb27aaa0ce66920e9cbab47028d182bd8b
Author: Pan Tao <tao.pan at intel.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/StackProtector.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-stack-protector-windows.ll
M llvm/test/CodeGen/AArch64/arm64ec-indirect-call.ll
M llvm/test/CodeGen/AArch64/mingw-refptr.ll
M llvm/test/CodeGen/AArch64/stack-protector-target.ll
Log Message:
-----------
[aarch64] Mix the frame pointer with the stack cookie when protecting the stack (#197346)
For MSVC-compatible targets on AArch64, mix the stack cookie with the
frame pointer (FP) to create a position-dependent guard value. This
strengthens protection against attacks where the attacker knows or can
predict the cookie value, as they would also need to know the exact
frame pointer location.
Implementation details:
- Uses SUB (FP - Cookie) instead of XOR like X86 because:
* SUB maintains the existing AArch64 instruction selection patterns
* SUB provides equivalent security properties (bijective mixing)
* The result is still unpredictable without knowing both inputs
- The same SUB operation is performed in both prologue (to store the
mixed value) and epilogue (to unmix and verify the cookie)
- Forces frame pointer usage for functions with stack guards on MSVCRT
to ensure consistent addressing with dynamic stack allocation
This matches the MSVC behavior and strengthens stack protection on
AArch64 Windows platforms.
Fixes #156573.
Commit: f92c1fe56c4238396af9835436be49c6aecd975e
https://github.com/llvm/llvm-project/commit/f92c1fe56c4238396af9835436be49c6aecd975e
Author: Srinivasa Ravi <srinivasar at nvidia.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/docs/NVPTXUsage.rst
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
M llvm/lib/Target/NVPTX/NVPTX.td
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
A llvm/test/CodeGen/NVPTX/st_async_mbarrier.ll
A llvm/test/CodeGen/NVPTX/st_async_mbarrier_b128.ll
A llvm/test/CodeGen/NVPTX/st_async_release.ll
A llvm/test/CodeGen/NVPTX/st_async_release_multimem.ll
Log Message:
-----------
[NVPTX] Add asynchronous store intrinsics (#200768)
Adds the following intrinsics for asynchronous store operations:
- `st.async`
- `st.async.sys`
- `st.async.gpu`
- `st.async.mmio.sys`
Tests verified through `ptxas-13.3`.
Commit: 09d944e919564eaaa2f9cb956c44e1d69549a182
https://github.com/llvm/llvm-project/commit/09d944e919564eaaa2f9cb956c44e1d69549a182
Author: Kito Cheng <kito.cheng at sifive.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M bolt/lib/Passes/IdenticalCodeFolding.cpp
M bolt/test/X86/icf-safe-icp.test
M bolt/test/X86/icf-safe-test1.test
M bolt/test/X86/icf-safe-test2GlobalConstPtrNoPic.test
Log Message:
-----------
[BOLT] Make ICF bucket iteration order deterministic for single-threaded mode (#200706)
`CongruentBuckets` is an unordered_map, so iterating it directly
produces non-deterministic folding order across different build
environments. Sort buckets by the binary address of the representative
function before iterating to guarantee a stable debug output order.
That order isn't matter for the output binary, but it cause randomly
different debug output across different build environments, which makes
it hard to write stable tests for ICF.
Also the debug output of multi-threaded ICF is already non-deterministic
even we sort that by address, so we only try to stabilize the
single-threaded ICF output.
Update the icf-safe tests to reflect the new deterministic ordering.
Assisted-by: Sonnet 4.6
Commit: aa47e59245e24edb6d0c7d5f91b3a1c5a7bb35f1
https://github.com/llvm/llvm-project/commit/aa47e59245e24edb6d0c7d5f91b3a1c5a7bb35f1
Author: Folkert de Vries <folkert at folkertdev.nl>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M clang/lib/CodeGen/Targets/X86.cpp
M clang/test/CodeGen/win-fp128.c
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/X86/X86CallingConv.td
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/test/CodeGen/X86/fp128-libcalls-strict.ll
M llvm/test/CodeGen/X86/fp128-libcalls.ll
A llvm/test/CodeGen/X86/fp128-return-calling-conv.ll
M llvm/test/CodeGen/X86/i128-fp128-abi.ll
Log Message:
-----------
[X86][Windows] Return `fp128` on the stack (#204887)
Subsumes https://github.com/llvm/llvm-project/pull/194214
For x86-64 Windows targets, LLVM currently returns `fp128` in xmm0. This
does match `i128` (both Clang and GCC return `__int128` in xmm0) but
disagrees with GCC's behavior of returning `__float128` on the stack.
https://gcc.godbolt.org/z/xnWeGqcbW
Microsoft does not specify a `__float128` ABI so any decision is purely
an extension. The Windows x64 calling convention [1] does say that user-
defined types that do not fit in a register should be returned
indirectly, so the GCC behavior seems like a reasonable interpretation
of this rule.
Thus, change `fp128` to return on the stack for Windows targets. This is
done for both MinGW and MSVC targets; if official guidelines are ever
published, this can be revisited.
The change is made in LLVM (via sret demotion of f128), but also
explicitly in `clang`. Frontends should emit the `sret` explicitly, if
only for debug info, return value optimization, etc.
Relates to the pass ABI change in 5ee1c0b71485 ("[windows] Always pass
fp128 arguments indirectly").
[1]:
https://learn.microsoft.com/en-us/cpp/build/x64-calling-convention?view=msvc-170#return-values
Commit: abe984ce251f5a7d673ef6ab1fb00f8f367dcae1
https://github.com/llvm/llvm-project/commit/abe984ce251f5a7d673ef6ab1fb00f8f367dcae1
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
M llvm/include/llvm/Target/Target.td
M llvm/lib/Target/ARM/ARMArchitectures.td
M llvm/lib/Target/ARM/ARMFeatures.td
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
M llvm/test/Transforms/Inline/ARM/inline-target-attr.ll
M llvm/unittests/CodeGen/MFCommon.inc
M llvm/utils/TableGen/SubtargetEmitter.cpp
Log Message:
-----------
[ARM] Specify inlining behavior in TableGen (#205763)
Move the ARM inlining feature whitelist into the SubtargetFeature
definitions. For this purpose, add a new InlineMustMatch inlining
behavior, for features where no differences between caller/callee are
allowed.
Additionally, mark all the tuning features as InlineIgnore and fix some
cases that were incorrectly omitted from the feature whitelist.
Fixes https://github.com/llvm/llvm-project/issues/65152.
Commit: 7e31f2cffd397ae65a91b0fb2bb7b2097e8e8a4b
https://github.com/llvm/llvm-project/commit/7e31f2cffd397ae65a91b0fb2bb7b2097e8e8a4b
Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M clang/docs/ReleaseNotes.md
A clang/include/clang/AST/SubobjectVisitor.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaSYCL.cpp
A clang/test/SemaSYCL/sycl-kernel-param-restrictions.cpp
M clang/unittests/AST/CMakeLists.txt
A clang/unittests/AST/SubobjectVisitorTest.cpp
Log Message:
-----------
[clang][SYCL] Diagnose reference kernel parameters (#192957)
Per SYCL 2020 spec: Reference types are not trivially copyable, so they
may not be passed as kernel parameters.
This PR adds infrastructure for kernel object visiting and implements
diagnostics for reference kernel parameters.
The infrastructure will be also used for other kernel parameter
restrictions and functional code transformations that will be done in
separate PRs.
Assisted by: claude in unit test preparation
---------
Co-authored-by: Tom Honermann <tom at honermann.net>
Commit: 9f7dc772a32ad98d3bfe371021535d5863d87156
https://github.com/llvm/llvm-project/commit/9f7dc772a32ad98d3bfe371021535d5863d87156
Author: Daniel Cederman <cederman at gaisler.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/test/CodeGen/SPARC/tn0011.ll
Log Message:
-----------
[Sparc] Apply the GRLIB-TN-0011 errata workaround to ldstub (#205781)
Add ldstub to the list of atomic instruction that needs to be aligned.
Commit: 7f73dd43b1425034a1902d56820327a12fac6940
https://github.com/llvm/llvm-project/commit/7f73dd43b1425034a1902d56820327a12fac6940
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DAP.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerBase.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ScriptDebuggerController.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/dbgeng/dbgeng.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/FrameIR.py
M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/StepIR.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/RunMatch.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Script.py
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_at_frame.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_at_frame.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/reject-bad-at_frame_idx.test
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_at_frame_expected.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_at_frame.cpp
Log Message:
-----------
[Dexter] Add at_frame_idx to check values in frames above current (#203505)
This patch adds a new attribute for !and nodes, `at_frame_idx`, which
matches against frames above its parent node; for example, in the
script:
```
!where {function: foo}:
!where {function: bar}:
!and {at_frame_idx: 1}:
!value x: 0
```
The `!value x` node checks the value of 'x' in 'foo' while the debugger
is inside 'bar'. Use of this attribute comes with some restrictions: a
!where node can never be nested under a !and{at_frame_idx} node, and
neither can another !and{at_frame_idx} node.
Commit: 400e4be559e52ee6b24c17d4aa41e8c1edfafddc
https://github.com/llvm/llvm-project/commit/400e4be559e52ee6b24c17d4aa41e8c1edfafddc
Author: Yaxing Cai <caiyaxing666 at gmail.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/lib/ExecutionEngine/JITLink/x86_64.cpp
M llvm/test/ExecutionEngine/JITLink/x86-64/ELF_got_plt_optimizations.s
A llvm/test/ExecutionEngine/JITLink/x86-64/ELF_gotpcrelx_no_relax.s
Log Message:
-----------
[JITLink][x86-64] Fix GOTPCRELX call/jmp relaxation to use PC-relative fixup (#190179)
The GOTPCRELX optimization in `optimizeGOTAndStubAccesses()` relaxes
`call *foo at GOTPCREL(%rip)` → `addr32 call foo` and `jmp
*foo at GOTPCREL(%rip)` → `jmp foo; nop`,
but sets the edge kind to `Pointer32` (absolute). Since `e8`/`e9` are
PC-relative instructions,
`applyFixup` writes the absolute address instead of the displacement —
producing a garbage target
and SIGSEGV when JIT code is far from the callee (e.g., non-PIE
executable with an arena allocator).
**Fix:**
- Guard: `TargetInRangeForImmU32` → `DisplacementInRangeForImmS32`
(displacement must fit in signed 32-bit, not absolute address in
unsigned 32-bit)
- Edge kind: `Pointer32` → `BranchPCRel32` (so `applyFixup` writes
`Target - (Fixup + 4) + Addend`)
**Tests:**
- Updated `ELF_got_plt_optimizations.s` to validate PC-relative
displacement via `next_pc()` instead of raw absolute address. Also fixed
the jmp test which was incorrectly checking `test_call_gotpcrelx`
instead of `test_jmp_gotpcrelx`.
- Added `ELF_gotpcrelx_no_relax.s`: regression test with slab at
`0x7fff00000000` and extern at `0x00401000` — verifies relaxation is
correctly skipped when displacement is out of int32 range.
The `mov` → `lea` path (using `Delta32`) is unaffected and was already
correct.
cc: @tqchen
Co-authored-by: Michael Buch <michaelbuch12 at gmail.com>
Commit: cb95bffbb023dcb8ad02a75a4e1714aaa6d1e16e
https://github.com/llvm/llvm-project/commit/cb95bffbb023dcb8ad02a75a4e1714aaa6d1e16e
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M .ci/green-dragon/lldb-windows.groovy
M .github/new-prs-labeler.yml
M bolt/CMakeLists.txt
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinarySection.h
M bolt/include/bolt/Core/Relocation.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/MCPlusBuilder.cpp
M bolt/lib/Passes/IdenticalCodeFolding.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/test/X86/icf-safe-icp.test
M bolt/test/X86/icf-safe-test1.test
M bolt/test/X86/icf-safe-test2GlobalConstPtrNoPic.test
A bolt/test/X86/relr-odd-unaligned.c
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clangd/Compiler.cpp
M clang/CMakeLists.txt
A clang/docs/AddressSanitizer.md
R clang/docs/AddressSanitizer.rst
A clang/docs/ClangStaticAnalyzer.md
R clang/docs/ClangStaticAnalyzer.rst
A clang/docs/CrossCompilation.md
R clang/docs/CrossCompilation.rst
A clang/docs/DataFlowSanitizer.md
R clang/docs/DataFlowSanitizer.rst
A clang/docs/FunctionEffectAnalysis.md
R clang/docs/FunctionEffectAnalysis.rst
M clang/docs/HIPSupport.rst
A clang/docs/LanguageExtensions.md
R clang/docs/LanguageExtensions.rst
A clang/docs/LeakSanitizer.md
R clang/docs/LeakSanitizer.rst
A clang/docs/LifetimeSafety.md
R clang/docs/LifetimeSafety.rst
A clang/docs/MemorySanitizer.md
R clang/docs/MemorySanitizer.rst
A clang/docs/RealtimeSanitizer.md
R clang/docs/RealtimeSanitizer.rst
A clang/docs/ReleaseNotes.md
R clang/docs/ReleaseNotes.rst
M clang/docs/ReleaseNotesTemplate.txt
A clang/docs/SafeBuffers.md
R clang/docs/SafeBuffers.rst
A clang/docs/SanitizerCoverage.md
R clang/docs/SanitizerCoverage.rst
A clang/docs/ScalableStaticAnalysis/index.md
R clang/docs/ScalableStaticAnalysis/index.rst
A clang/docs/ThreadSafetyAnalysis.md
R clang/docs/ThreadSafetyAnalysis.rst
A clang/docs/ThreadSanitizer.md
R clang/docs/ThreadSanitizer.rst
A clang/docs/Toolchain.md
R clang/docs/Toolchain.rst
A clang/docs/TypeSanitizer.md
R clang/docs/TypeSanitizer.rst
A clang/docs/UndefinedBehaviorSanitizer.md
R clang/docs/UndefinedBehaviorSanitizer.rst
M clang/docs/UsersManual.rst
A clang/docs/WarningSuppressionMappings.md
R clang/docs/WarningSuppressionMappings.rst
M clang/docs/conf.py
M clang/docs/tools/dump_ast_matchers.py
M clang/include/clang/APINotes/APINotesReader.h
M clang/include/clang/APINotes/APINotesWriter.h
M clang/include/clang/AST/HLSLResource.h
M clang/include/clang/AST/OpenMPClause.h
A clang/include/clang/AST/SubobjectVisitor.h
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/include/clang/Analysis/CallGraph.h
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/BuiltinHeaders.def
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsAMDGPU.td
M clang/include/clang/Basic/BuiltinsAMDGPUDocs.td
M clang/include/clang/Basic/BuiltinsRISCV.td
M clang/include/clang/Basic/DiagnosticOptions.def
M clang/include/clang/Basic/DiagnosticOptions.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Features.def
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/OffloadArch.h
M clang/include/clang/CIR/CIRToCIRPasses.h
M clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Dialect/Passes.h
M clang/include/clang/CIR/Dialect/Passes.td
M clang/include/clang/Driver/OffloadBundler.h
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Options/FlangOptions.td
M clang/include/clang/Options/Options.td
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/StaticLibrary.h
M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/TUSummaryEncoding.h
M clang/include/clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h
M clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def
M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/JSONFormat.h
M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormat.h
M clang/include/clang/Sema/Initialization.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/APINotes/APINotesFormat.h
M clang/lib/APINotes/APINotesReader.cpp
M clang/lib/APINotes/APINotesWriter.cpp
M clang/lib/APINotes/APINotesYAMLCompiler.cpp
M clang/lib/AST/ASTDumper.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/lib/AST/ByteCode/Pointer.h
M clang/lib/AST/ExprConstant.cpp
M clang/lib/Analysis/CallGraph.cpp
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/X86.cpp
M clang/lib/Basic/Warnings.cpp
M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
A clang/lib/CIR/Dialect/Transforms/LibOpt.cpp
M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
M clang/lib/CIR/Lowering/CIRPasses.cpp
M clang/lib/CIR/Lowering/LoweringHelpers.cpp
M clang/lib/CodeGen/BackendConsumer.h
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenTBAA.h
M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
M clang/lib/CodeGen/HLSLBufferLayoutBuilder.h
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/CodeGen/Targets/DirectX.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/Arch/X86.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/lib/Format/WhitespaceManager.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/TextDiagnostic.cpp
M clang/lib/Frontend/TextDiagnosticPrinter.cpp
M clang/lib/Headers/riscv_packed_simd.h
M clang/lib/Lex/PPDirectives.cpp
M clang/lib/Lex/Pragma.cpp
M clang/lib/ScalableStaticAnalysis/Core/CMakeLists.txt
M clang/lib/ScalableStaticAnalysis/Core/ModelStringConversions.h
M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/Artifact.cpp
M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/StaticLibrary.cpp
M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/TUSummaryEncoding.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaSYCL.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateVariadic.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/SemaTypeTraits.cpp
M clang/lib/Serialization/ASTCommon.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
M clang/test/APINotes/Inputs/WhereParametersConvertDiag/APINotes.apinotes
M clang/test/APINotes/Inputs/WhereParametersConvertDiag/WhereParametersConvertDiag.h
A clang/test/APINotes/Inputs/WhereParametersEmptyWhereDiag/APINotes.apinotes
A clang/test/APINotes/Inputs/WhereParametersEmptyWhereDiag/WhereParametersConvertDiag.h
M clang/test/APINotes/where-parameters-convert-diags.cpp
M clang/test/AST/ByteCode/builtin-constant-p.cpp
M clang/test/AST/ByteCode/codegen.cpp
M clang/test/AST/ByteCode/cxx20.cpp
M clang/test/AST/ByteCode/dynamic-cast.cpp
A clang/test/AST/ByteCode/enable_if.c
R clang/test/AST/HLSL/ConstantBuffers-AST-error.hlsl
M clang/test/AST/HLSL/ConstantBuffers-AST.hlsl
A clang/test/AST/HLSL/Texture2DArray-scalar-AST.hlsl
A clang/test/AST/HLSL/Texture2DArray-shorthand-AST.hlsl
A clang/test/AST/HLSL/Texture2DArray-vector-AST.hlsl
A clang/test/AST/ast_matchers_updated.test
A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-static-library-empty.json
M clang/test/Analysis/Scalable/ssaf-format/Artifact/round-trip.test
M clang/test/Analysis/Scalable/ssaf-format/Artifact/top-level.test
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/duplicate-member.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/invalid-syntax.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-inner-error.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-mismatched-type.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-missing-type.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-not-object.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-triple-mismatch.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/members-not-array.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/mismatched-type.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-members.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-namespace.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-target-triple.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-type.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-invalid-kind.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-missing-kind.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-missing-name.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-wrong-kind.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/not-json-extension.txt
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/not-normalized-target-triple.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/not-object.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-empty.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-multiple-members.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-single-member.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/unsorted-members-input.json
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/io.test
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/permissions.test
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/round-trip.test
A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/top-level.test
M clang/test/C/C11/n1285_1.c
A clang/test/CIR/CodeGen/agg-atomic-cast.c
R clang/test/CIR/CodeGen/agg-atomic-cast.cpp
M clang/test/CIR/CodeGen/agg-expr-lvalue.c
M clang/test/CIR/CodeGen/agg-init-constexpr.cpp
A clang/test/CIR/CodeGen/anonymous-nested-init.c
M clang/test/CIR/CodeGen/array.cpp
A clang/test/CIR/CodeGen/bitfield-init-values.c
M clang/test/CIR/CodeGen/bitfields.cpp
A clang/test/CIR/CodeGen/builtin-multiprecision.c
M clang/test/CIR/CodeGen/const-array-floating-point.c
M clang/test/CIR/CodeGen/constant-inits.cpp
M clang/test/CIR/CodeGen/constexpr-ptr-offset.cpp
A clang/test/CIR/CodeGen/cross-reference-globals.c
A clang/test/CIR/CodeGen/enum-bool.cpp
M clang/test/CIR/CodeGen/global-dtor-union-narrowed.cpp
A clang/test/CIR/CodeGen/global-temporary-comdat.cpp
M clang/test/CIR/CodeGen/globals.cpp
M clang/test/CIR/CodeGen/lambda.cpp
M clang/test/CIR/CodeGen/paren-list-agg-init.cpp
M clang/test/CIR/CodeGen/record-zero-init-padding.c
M clang/test/CIR/CodeGen/replace-global.cpp
M clang/test/CIR/CodeGen/self-ref-temporaries.cpp
M clang/test/CIR/CodeGen/struct-init.cpp
M clang/test/CIR/CodeGen/union-agg-init.c
M clang/test/CIR/CodeGenBuiltins/builtin-fpclassify.c
M clang/test/CIR/CodeGenBuiltins/builtin-isfpclass.c
M clang/test/CIR/CodeGenBuiltins/builtin-isinf-sign.c
A clang/test/CIR/CodeGenBuiltins/builtin-nondeterministic-value.c
A clang/test/CIR/CodeGenCXX/base-layout.cpp
M clang/test/CIR/CodeGenCXX/global-refs.cpp
M clang/test/CIR/CodeGenCXX/sizeof-pack.cpp
M clang/test/CIR/CodeGenCXX/zero_init_bases.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
A clang/test/CIR/IR/const-record-union.cir
M clang/test/CIR/IR/invalid-const-record.cir
M clang/test/CIR/Lowering/array.cpp
M clang/test/CIR/Transforms/abi-lowering/coerce-record-to-record-via-memory.cir
A clang/test/CIR/Transforms/abi-lowering/direct-flatten.cir
A clang/test/CIR/Transforms/lib-opt.cpp
M clang/test/CodeGen/AArch64/ls64-inline-asm.c
M clang/test/CodeGen/AArch64/neon-2velem.c
M clang/test/CodeGen/AArch64/neon-intrinsics.c
M clang/test/CodeGen/AArch64/neon-scalar-x-indexed-elem.c
M clang/test/CodeGen/AArch64/neon/add.c
M clang/test/CodeGen/AArch64/neon/fused-multiple-fullfp16.c
M clang/test/CodeGen/AArch64/neon/fused-multiply.c
M clang/test/CodeGen/AArch64/v8.2a-neon-intrinsics.c
M clang/test/CodeGen/PowerPC/builtins-ppc-amo.c
M clang/test/CodeGen/RISCV/rvp-intrinsics.c
M clang/test/CodeGen/allow-ubsan-check.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/call-graph-section-callback.cpp
M clang/test/CodeGen/call-graph-section-internal.cpp
M clang/test/CodeGen/call-graph-section-templates.cpp
M clang/test/CodeGen/call-graph-section-virtual-methods.cpp
M clang/test/CodeGen/call-graph-section.c
M clang/test/CodeGen/call-graph-section.cpp
M clang/test/CodeGen/errno-tbaa.c
M clang/test/CodeGen/sanitize-metadata-ignorelist.c
M clang/test/CodeGen/sanitize-metadata-nosanitize.c
M clang/test/CodeGen/sanitize-type-globals.cpp
M clang/test/CodeGen/target-builtin-noerror.c
M clang/test/CodeGen/tbaa-class.cpp
M clang/test/CodeGen/tbaa-matrix.c
M clang/test/CodeGen/tbaa-ms-abi.cpp
M clang/test/CodeGen/tbaa-pointers.c
M clang/test/CodeGen/tbaa-struct-bitfield-endianness.cpp
M clang/test/CodeGen/tbaa-struct.cpp
M clang/test/CodeGen/tbaa.c
M clang/test/CodeGen/tbaa.cpp
M clang/test/CodeGen/union-tbaa1.c
M clang/test/CodeGen/wasm-fp16.c
M clang/test/CodeGen/win-fp128.c
M clang/test/CodeGenCXX/attr-likelihood-if-branch-weights.cpp
M clang/test/CodeGenCXX/attr-likelihood-iteration-stmt.cpp
M clang/test/CodeGenCXX/attr-likelihood-switch-branch-weights.cpp
M clang/test/CodeGenCXX/load-reference-metadata.cpp
M clang/test/CodeGenCXX/std-byte.cpp
M clang/test/CodeGenHIP/offload-pgo-sections.hip
M clang/test/CodeGenHLSL/BasicFeatures/OutArgLifetime.hlsl
R clang/test/CodeGenHLSL/cbuffer_copy_layout.hlsl
A clang/test/CodeGenHLSL/resources/ConstantBufferT-struct-passing.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-subscripts.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-CalculateLevelOfDetail.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-Gather.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-GetDimensions.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-Load.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-Mips.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-Sample.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleBias.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleCmp.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleCmpLevelZero.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleGrad.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleLevel.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-Subscript.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-default-explicit-binding.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-default.hlsl
A clang/test/CodeGenHLSL/resources/Texture2DArray-shorthand-contexts.hlsl
A clang/test/CodeGenHLSL/resources/cbuffer_struct_passing_with_resources.hlsl
M clang/test/CodeGenOpenCL/amdgpu-cluster-dims.cl
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
M clang/test/CodeGenOpenCL/amdgpu-printf.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx9.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-workgroup-size.cl
M clang/test/CodeGenOpenCL/implicit-addrspacecast-function-parameter.cl
M clang/test/CodeGenOpenCL/preserve_vec3.cl
R clang/test/Driver/Inputs/clang-offload-bundler-magic-collision.co
R clang/test/Driver/Inputs/clang-offload-bundler-magic-collision.py
M clang/test/Driver/amdgpu-macros.cl
M clang/test/Driver/amdgpu-mcpu.cl
R clang/test/Driver/clang-offload-bundler-magic-collision.c
M clang/test/Driver/hipstdpar.c
M clang/test/Driver/linux-ld.c
M clang/test/Driver/offload-arch-translation-amdgpu.cu
M clang/test/Driver/stack-protector-guard.c
M clang/test/Driver/x86-march.c
A clang/test/Frontend/linemarker-invalid-escape.c
M clang/test/Frontend/x86-target-cpu.c
M clang/test/Headers/__clang_hip_math.hip
M clang/test/Headers/amdhsa_abi.cl
M clang/test/Lexer/has_feature_modules.m
M clang/test/Misc/constexpr-source-ranges.cpp
A clang/test/Misc/diagnostic-color-output-stream.cpp
M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
M clang/test/Misc/target-invalid-cpu-note/nvptx.c
M clang/test/Misc/target-invalid-cpu-note/x86.c
A clang/test/Modules/modules-lambda-dependent-crash.cppm
A clang/test/Modules/modules-local-class-dependent-crash.cppm
M clang/test/OpenMP/bug54082.c
M clang/test/OpenMP/bug56913.c
M clang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
M clang/test/OpenMP/parallel_if_codegen_PR51349.cpp
M clang/test/OpenMP/taskloop_strictmodifier_codegen.cpp
M clang/test/Parser/cxx1z-class-template-argument-deduction.cpp
M clang/test/Preprocessor/line-directive-output.c
M clang/test/Preprocessor/line-directive.c
M clang/test/Preprocessor/pragma_module.c
M clang/test/Preprocessor/predefined-arch-macros.c
A clang/test/Sema/Inputs/warn-fortify-source-umask-darwin.h
A clang/test/Sema/Inputs/warn-fortify-source-umask-glibc.h
A clang/test/Sema/Inputs/warn-fortify-source-umask.h
M clang/test/Sema/LifetimeSafety/safety.cpp
A clang/test/Sema/warn-fortify-source-umask-darwin.c
A clang/test/Sema/warn-fortify-source-umask-forward-decl.c
A clang/test/Sema/warn-fortify-source-umask-glibc.c
A clang/test/Sema/warn-fortify-source-umask-not-builtin.c
A clang/test/Sema/warn-fortify-source-umask-record-member.c
A clang/test/Sema/warn-fortify-source-umask-redecl.c
M clang/test/Sema/warn-fortify-source.c
M clang/test/SemaCXX/cxx2c-pack-indexing.cpp
M clang/test/SemaCXX/enable_if-nested-call-with-valuedependent-param.cpp
M clang/test/SemaCXX/enable_if.cpp
M clang/test/SemaCXX/type-traits.cpp
M clang/test/SemaCXX/typo-correction.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-warning-data-invocation.cpp
M clang/test/SemaHLSL/BuiltIns/asuint-errors.hlsl
M clang/test/SemaHLSL/Resources/ConstantBuffers.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-CalculateLevelOfDetail.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-GetDimensions.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-SampleBias.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-SampleCmp.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-SampleCmpLevelZero.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-SampleGrad.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-SampleLevel.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-Sema.hlsl
A clang/test/SemaHLSL/Resources/Texture2DArray-Subscript.hlsl
A clang/test/SemaHLSL/Texture2DArray-Gather.hlsl
A clang/test/SemaHLSL/Texture2DArray-GatherCmp-Vulkan.hlsl
A clang/test/SemaHLSL/Texture2DArray-Load-errors.hlsl
A clang/test/SemaHLSL/Texture2DArray-mips-errors.hlsl
M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx9.cl
A clang/test/SemaSYCL/sycl-kernel-param-restrictions.cpp
M clang/tools/clang-ssaf-format/SSAFFormat.cpp
M clang/tools/libclang/CLog.h
M clang/unittests/AST/CMakeLists.txt
A clang/unittests/AST/SubobjectVisitorTest.cpp
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
M clang/unittests/Format/FormatTestComments.cpp
M clang/unittests/ScalableStaticAnalysis/BuildNamespaceTest.cpp
M clang/unittests/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendActionTest.cpp
M clang/unittests/ScalableStaticAnalysis/ModelStringConversionsTest.cpp
M clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.cpp
M clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.h
M clang/unittests/ScalableStaticAnalysis/TestFixture.h
M clang/unittests/Tooling/ToolingTest.cpp
M cmake/Modules/CMakePolicy.cmake
M compiler-rt/CMakeLists.txt
M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
M compiler-rt/include/profile/InstrProfData.inc
M compiler-rt/include/sanitizer/safestack_interface.h
M compiler-rt/lib/builtins/cpu_model/x86.c
M compiler-rt/lib/hwasan/hwasan_platform_interceptors.h
M compiler-rt/lib/profile/InstrProfiling.h
M compiler-rt/lib/profile/InstrProfilingBuffer.c
M compiler-rt/lib/profile/InstrProfilingFile.c
M compiler-rt/lib/profile/InstrProfilingInternal.h
M compiler-rt/lib/profile/InstrProfilingPlatformGPU.c
M compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp
M compiler-rt/lib/profile/InstrProfilingPlatformWindows.c
M compiler-rt/lib/profile/InstrProfilingWriter.c
M compiler-rt/lib/safestack/safestack.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/lib/tsan/rtl/tsan_interceptors_libdispatch.cpp
M compiler-rt/test/builtins/CMakeLists.txt
M compiler-rt/test/builtins/Unit/lit.cfg.py
M compiler-rt/test/builtins/Unit/lit.site.cfg.py.in
A compiler-rt/test/profile/Darwin/instrprof-mcdc-correlation.c
M compiler-rt/test/profile/GPU/instrprof-hip-counter-correctness.hip
A compiler-rt/test/profile/Inputs/instrprof-mcdc-correlation.cpp
A compiler-rt/test/profile/Linux/instrprof-mcdc-correlation.c
M compiler-rt/test/profile/instrprof-binary-correlate-debuginfod.c
M compiler-rt/test/profile/instrprof-binary-correlate.c
M compiler-rt/test/safestack/sigaltstack.c
A compiler-rt/test/sanitizer_common/TestCases/Linux/read_pread_chk.c
A compiler-rt/test/tsan/Darwin/dispatch_apply.mm
M compiler-rt/test/tsan/signal_in_read.c
M cross-project-tests/CMakeLists.txt
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DAP.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerBase.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ScriptDebuggerController.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/dbgeng/dbgeng.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/FrameIR.py
M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/StepIR.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectMatch.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/RunMatch.py
M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Script.py
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_at_frame.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/watch_scope.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_fn_hit_count.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_for_hit_count.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_hit_count_early_exit.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_address.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_at_frame.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/expect-all-with-value.test
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/invalid-address.test
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/parse-address.test
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/reject-bad-at_frame_idx.test
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_at_frame_expected.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_scopes_expected.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_scopes_list_expected.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_at_frame.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_scopes.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_scopes_list.cpp
M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c
M cross-project-tests/lit.cfg.py
M flang-rt/lib/runtime/__ppc_intrinsics.f90
M flang-rt/lib/runtime/__ppc_types.f90
M flang-rt/lib/runtime/mma.f90
M flang-rt/test/lit.cfg.py
M flang/CMakeLists.txt
M flang/docs/Extensions.md
M flang/docs/GettingInvolved.md
M flang/docs/OpenMPSupport.md
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/OpenMP/Passes.td
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Semantics/expression.h
M flang/include/flang/Semantics/symbol.h
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Evaluate/fold-integer.cpp
M flang/lib/Evaluate/formatting.cpp
M flang/lib/Evaluate/tools.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/TextDiagnosticPrinter.cpp
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/OpenMP/CMakeLists.txt
M flang/lib/Optimizer/OpenMP/FunctionFiltering.cpp
A flang/lib/Optimizer/OpenMP/HostOpFiltering.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceGlobal.cpp
M flang/lib/Parser/openmp-utils.cpp
M flang/lib/Parser/prescan.cpp
M flang/lib/Semantics/check-case.cpp
M flang/lib/Semantics/check-cuda.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-variant.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/openmp-utils.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-labels.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/rewrite-parse-tree.cpp
M flang/lib/Semantics/tools.cpp
M flang/lib/Support/Fortran-features.cpp
M flang/test/CMakeLists.txt
M flang/test/Driver/color-diagnostics.f90
A flang/test/Fir/CUDA/cuda-device-global-internal-linkage.fir
M flang/test/Fir/basic-program.fir
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/fir-ops.fir
M flang/test/Fir/present-absent-if-fold.fir
M flang/test/Integration/split-lto-unit-2.f90
A flang/test/Lower/CUDA/cuda-allocatable-component.cuf
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
M flang/test/Lower/OpenMP/declare-target-link-tarop-cap.f90
M flang/test/Lower/OpenMP/host-eval.f90
A flang/test/Preprocessing/carriage-return.f90
A flang/test/Semantics/CUDA/cuf-hostdevice-host-call.cuf
A flang/test/Semantics/OpenACC/acc-component-ref-dsa.f90
A flang/test/Semantics/OpenACC/acc-default-none-arrays.f90
M flang/test/Semantics/OpenMP/declare-variant-match.f90
M flang/test/Semantics/OpenMP/declare-variant.f90
M flang/test/Semantics/case01.f90
A flang/test/Semantics/enumeration-type-declarations.f90
A flang/test/Semantics/enumeration-type-forward-ref.f90
A flang/test/Semantics/enumeration-type-relational.f90
M flang/test/Transforms/OpenMP/function-filtering-host-ops.mlir
M libc/CMakeLists.txt
M libc/cmake/modules/LLVMLibCArchitectures.cmake
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/hdr/CMakeLists.txt
M libc/hdr/regex_macros.h
R libc/include/link.h.def
M libc/include/link.yaml
M libc/include/llvm-libc-macros/linux/sched-macros.h
M libc/include/sched.yaml
R libc/include/string.h.def
M libc/include/string.yaml
R libc/include/sys/ucontext.h.def
M libc/include/sys/ucontext.yaml
M libc/shared/builtins.h
A libc/shared/builtins/muldf3.h
M libc/src/__support/CMakeLists.txt
M libc/src/__support/builtins/CMakeLists.txt
A libc/src/__support/builtins/muldf3.h
A libc/src/__support/regex/CMakeLists.txt
A libc/src/__support/regex/regex_ast.h
A libc/src/__support/regex/regex_expr_pool.cpp
A libc/src/__support/regex/regex_expr_pool.h
M libc/src/sched/CMakeLists.txt
M libc/src/sched/linux/CMakeLists.txt
A libc/src/sched/linux/sched_andcpuset.cpp
A libc/src/sched/linux/sched_cpuequal.cpp
A libc/src/sched/linux/sched_orcpuset.cpp
A libc/src/sched/linux/sched_xorcpuset.cpp
A libc/src/sched/sched_andcpuset.h
A libc/src/sched/sched_cpuequal.h
A libc/src/sched/sched_orcpuset.h
A libc/src/sched/sched_xorcpuset.h
M libc/startup/baremetal/aarch64/start.cpp
M libc/startup/baremetal/arm/start.cpp
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_builtins_test.cpp
M libc/test/src/__support/CMakeLists.txt
A libc/test/src/__support/regex/CMakeLists.txt
A libc/test/src/__support/regex/expr_test.cpp
M libc/test/src/sched/CMakeLists.txt
A libc/test/src/sched/sched_andcpuset_test.cpp
A libc/test/src/sched/sched_cpuequal_test.cpp
A libc/test/src/sched/sched_orcpuset_test.cpp
A libc/test/src/sched/sched_xorcpuset_test.cpp
M libclc/CMakeLists.txt
M libcxx/CMakeLists.txt
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/Status/Cxx20Papers.csv
M libcxx/docs/Status/Cxx26Issues.csv
M libcxx/docs/Status/Cxx26Papers.csv
M libcxx/docs/Status/Cxx29Issues.csv
M libcxx/include/__algorithm/clamp.h
M libcxx/include/__algorithm/lexicographical_compare_three_way.h
M libcxx/include/__algorithm/out_value_result.h
M libcxx/include/__algorithm/radix_sort.h
M libcxx/include/__algorithm/ranges_copy_n.h
M libcxx/include/__algorithm/three_way_comp_ref_type.h
M libcxx/include/__atomic/atomic_sync.h
M libcxx/include/__atomic/atomic_sync_timed.h
M libcxx/include/__atomic/atomic_waitable_traits.h
M libcxx/include/__atomic/floating_point_helper.h
M libcxx/include/__bit/bit_cast.h
M libcxx/include/__bit/bit_ceil.h
M libcxx/include/__charconv/to_chars.h
M libcxx/include/__chrono/gps_clock.h
M libcxx/include/__chrono/steady_clock.h
M libcxx/include/__chrono/tai_clock.h
M libcxx/include/__chrono/time_zone.h
M libcxx/include/__chrono/time_zone_link.h
M libcxx/include/__chrono/tzdb.h
M libcxx/include/__chrono/tzdb_list.h
M libcxx/include/__chrono/utc_clock.h
M libcxx/include/__chrono/zoned_time.h
M libcxx/include/__compare/common_comparison_category.h
M libcxx/include/__compare/compare_three_way.h
M libcxx/include/__compare/compare_three_way_result.h
M libcxx/include/__compare/ordering.h
M libcxx/include/__compare/synth_three_way.h
M libcxx/include/__compare/three_way_comparable.h
M libcxx/include/__concepts/arithmetic.h
M libcxx/include/__concepts/assignable.h
M libcxx/include/__concepts/boolean_testable.h
M libcxx/include/__concepts/class_or_enum.h
M libcxx/include/__concepts/common_reference_with.h
M libcxx/include/__concepts/comparison_common_type.h
M libcxx/include/__concepts/constructible.h
M libcxx/include/__concepts/convertible_to.h
M libcxx/include/__concepts/copyable.h
M libcxx/include/__concepts/derived_from.h
M libcxx/include/__concepts/destructible.h
M libcxx/include/__concepts/different_from.h
M libcxx/include/__concepts/equality_comparable.h
M libcxx/include/__concepts/invocable.h
M libcxx/include/__concepts/movable.h
M libcxx/include/__concepts/predicate.h
M libcxx/include/__concepts/regular.h
M libcxx/include/__concepts/relation.h
M libcxx/include/__concepts/same_as.h
M libcxx/include/__concepts/semiregular.h
M libcxx/include/__concepts/swappable.h
M libcxx/include/__concepts/totally_ordered.h
M libcxx/include/__condition_variable/condition_variable.h
M libcxx/include/__cstddef/max_align_t.h
M libcxx/include/__expected/expected.h
M libcxx/include/__format/container_adaptor.h
M libcxx/include/__format/enable_insertable.h
M libcxx/include/__format/escaped_output_table.h
M libcxx/include/__format/fmt_pair_like.h
M libcxx/include/__format/formatter_tuple.h
M libcxx/include/__format/range_default_formatter.h
M libcxx/include/__format/range_format.h
M libcxx/include/__format/range_formatter.h
M libcxx/include/__functional/binary_negate.h
M libcxx/include/__functional/binder1st.h
M libcxx/include/__functional/binder2nd.h
M libcxx/include/__functional/compose.h
M libcxx/include/__functional/invoke.h
M libcxx/include/__functional/mem_fun_ref.h
M libcxx/include/__functional/perfect_forward.h
M libcxx/include/__functional/pointer_to_binary_function.h
M libcxx/include/__functional/pointer_to_unary_function.h
M libcxx/include/__functional/ranges_operations.h
M libcxx/include/__functional/unary_negate.h
M libcxx/include/__fwd/format.h
M libcxx/include/__fwd/span.h
M libcxx/include/__fwd/variant.h
M libcxx/include/__iterator/data.h
M libcxx/include/__iterator/default_sentinel.h
M libcxx/include/__iterator/empty.h
M libcxx/include/__iterator/incrementable_traits.h
M libcxx/include/__iterator/iter_move.h
M libcxx/include/__iterator/iter_swap.h
M libcxx/include/__iterator/move_iterator.h
M libcxx/include/__iterator/move_sentinel.h
M libcxx/include/__iterator/ranges_iterator_traits.h
M libcxx/include/__iterator/readable_traits.h
M libcxx/include/__iterator/reverse_access.h
M libcxx/include/__iterator/size.h
M libcxx/include/__math/special_functions.h
M libcxx/include/__mdspan/aligned_accessor.h
M libcxx/include/__memory/compressed_pair.h
M libcxx/include/__memory/inout_ptr.h
M libcxx/include/__memory/out_ptr.h
M libcxx/include/__memory/raw_storage_iterator.h
M libcxx/include/__memory/uses_allocator_construction.h
M libcxx/include/__node_handle
M libcxx/include/__numeric/ranges_iota.h
M libcxx/include/__numeric/reduce.h
M libcxx/include/__numeric/transform_reduce.h
M libcxx/include/__random/random_device.h
M libcxx/include/__random/uniform_random_bit_generator.h
M libcxx/include/__ranges/access.h
M libcxx/include/__ranges/adjacent_view.h
M libcxx/include/__ranges/all.h
M libcxx/include/__ranges/concepts.h
M libcxx/include/__ranges/container_compatible_range.h
M libcxx/include/__ranges/dangling.h
M libcxx/include/__ranges/data.h
M libcxx/include/__ranges/elements_of.h
M libcxx/include/__ranges/empty.h
M libcxx/include/__ranges/enable_borrowed_range.h
M libcxx/include/__ranges/enable_view.h
M libcxx/include/__ranges/from_range.h
M libcxx/include/__ranges/owning_view.h
M libcxx/include/__ranges/range_adaptor.h
M libcxx/include/__ranges/ref_view.h
M libcxx/include/__ranges/repeat_view.h
M libcxx/include/__ranges/size.h
M libcxx/include/__ranges/subrange.h
M libcxx/include/__ranges/view_interface.h
M libcxx/include/__ranges/views.h
M libcxx/include/__stop_token/atomic_unique_lock.h
M libcxx/include/__stop_token/intrusive_list_view.h
M libcxx/include/__stop_token/intrusive_shared_ptr.h
M libcxx/include/__stop_token/stop_callback.h
M libcxx/include/__stop_token/stop_state.h
M libcxx/include/__stop_token/stop_token.h
M libcxx/include/__thread/id.h
M libcxx/include/__tree
M libcxx/include/__tuple/sfinae_helpers.h
M libcxx/include/__tuple/tuple_like.h
M libcxx/include/__tuple/tuple_like_no_subrange.h
M libcxx/include/__type_traits/common_reference.h
M libcxx/include/__type_traits/has_unique_object_representation.h
M libcxx/include/__type_traits/is_implicit_lifetime.h
M libcxx/include/__type_traits/is_implicitly_default_constructible.h
M libcxx/include/__type_traits/is_literal_type.h
M libcxx/include/__type_traits/reference_converts_from_temporary.h
M libcxx/include/__type_traits/result_of.h
M libcxx/include/__utility/as_const.h
M libcxx/include/__utility/forward_like.h
M libcxx/include/__utility/in_place.h
M libcxx/include/__variant/monostate.h
M libcxx/include/__verbose_trap
M libcxx/include/any
M libcxx/include/charconv
M libcxx/include/cuchar
M libcxx/include/experimental/memory
M libcxx/include/initializer_list
M libcxx/include/mutex
M libcxx/include/print
M libcxx/include/scoped_allocator
M libcxx/include/set
M libcxx/include/source_location
M libcxx/include/span
M libcxx/include/syncstream
M libcxx/include/tuple
M libcxx/include/variant
M libcxx/include/version
M libcxx/src/CMakeLists.txt
M libcxx/src/filesystem/path.cpp
M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_signed_integer.compile.pass.cpp
M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_unsigned_integer.compile.pass.cpp
A libcxx/test/libcxx/ranges/range.adaptors/range.adjacent/nodiscard.verify.cpp
M libcxx/test/libcxx/text/text_encoding/environment.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each.associative.pass.cpp
M libcxx/test/std/containers/associative/from_range_associative_containers.h
M libcxx/test/std/containers/associative/set/clear.pass.cpp
M libcxx/test/std/containers/associative/set/contains.pass.cpp
M libcxx/test/std/containers/associative/set/contains_transparent.pass.cpp
M libcxx/test/std/containers/associative/set/count.pass.cpp
M libcxx/test/std/containers/associative/set/count_transparent.pass.cpp
M libcxx/test/std/containers/associative/set/emplace.pass.cpp
M libcxx/test/std/containers/associative/set/emplace_hint.pass.cpp
M libcxx/test/std/containers/associative/set/empty.pass.cpp
M libcxx/test/std/containers/associative/set/equal_range.pass.cpp
M libcxx/test/std/containers/associative/set/equal_range_transparent.pass.cpp
M libcxx/test/std/containers/associative/set/erase_iter.pass.cpp
M libcxx/test/std/containers/associative/set/erase_iter_iter.pass.cpp
M libcxx/test/std/containers/associative/set/erase_key.pass.cpp
M libcxx/test/std/containers/associative/set/extract_iterator.pass.cpp
M libcxx/test/std/containers/associative/set/extract_key.pass.cpp
M libcxx/test/std/containers/associative/set/find.pass.cpp
M libcxx/test/std/containers/associative/set/get_allocator.pass.cpp
M libcxx/test/std/containers/associative/set/incomplete_type.pass.cpp
M libcxx/test/std/containers/associative/set/insert_cv.pass.cpp
M libcxx/test/std/containers/associative/set/insert_initializer_list.pass.cpp
M libcxx/test/std/containers/associative/set/insert_iter_cv.pass.cpp
M libcxx/test/std/containers/associative/set/insert_iter_iter.pass.cpp
M libcxx/test/std/containers/associative/set/insert_iter_rv.pass.cpp
M libcxx/test/std/containers/associative/set/insert_node_type.pass.cpp
M libcxx/test/std/containers/associative/set/insert_node_type_hint.pass.cpp
M libcxx/test/std/containers/associative/set/insert_range.pass.cpp
M libcxx/test/std/containers/associative/set/insert_rv.pass.cpp
M libcxx/test/std/containers/associative/set/iterator.pass.cpp
M libcxx/test/std/containers/associative/set/lower_bound.pass.cpp
M libcxx/test/std/containers/associative/set/max_size.pass.cpp
M libcxx/test/std/containers/associative/set/merge.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/alloc.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/assign_initializer_list.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/compare.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/compare_alloc.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/copy.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/copy_alloc.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/copy_assign.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/deduct.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/default.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/default_noexcept.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/dtor_noexcept.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/from_range.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/initializer_list.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/initializer_list_compare.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/initializer_list_compare_alloc.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/iter_iter.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/iter_iter_comp.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/move.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/move_alloc.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/move_assign.pass.cpp
M libcxx/test/std/containers/associative/set/set.cons/move_noexcept.pass.cpp
M libcxx/test/std/containers/associative/set/set.erasure/erase_if.pass.cpp
M libcxx/test/std/containers/associative/set/set.nonmember/compare.three_way.pass.cpp
M libcxx/test/std/containers/associative/set/set.nonmember/op_compare.pass.cpp
M libcxx/test/std/containers/associative/set/set.observers/comp.pass.cpp
M libcxx/test/std/containers/associative/set/set.special/member_swap.pass.cpp
M libcxx/test/std/containers/associative/set/set.special/non_member_swap.pass.cpp
M libcxx/test/std/containers/associative/set/set.special/swap_noexcept.pass.cpp
M libcxx/test/std/containers/associative/set/size.pass.cpp
M libcxx/test/std/containers/associative/set/types.pass.cpp
M libcxx/test/std/containers/associative/set/upper_bound.pass.cpp
M libcxx/test/std/containers/container.node/node_handle.pass.cpp
M libcxx/test/std/containers/from_range_helpers.h
M libcxx/test/std/containers/insert_range_maps_sets.h
M libcxx/test/std/containers/set_allocator_requirement_test_templates.h
M libcxx/test/std/containers/views/mdspan/extents/bitint.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.gen/lexically_normal.pass.cpp
M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.const/default.pass.cpp
M libcxx/test/std/language.support/support.limits/limits/numeric.limits.members/digits10.pass.cpp
M libcxx/test/std/language.support/support.limits/limits/numeric.limits.members/max.pass.cpp
M libcxx/test/std/language.support/support.limits/limits/numeric.limits.members/min.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/set.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_double.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/numerics/bit/bit.pow.two/bit_floor.pass.cpp
M libcxx/test/std/numerics/bit/bit.pow.two/bit_width.pass.cpp
M libcxx/test/std/numerics/bit/bitops.count/countl_zero.pass.cpp
M libcxx/test/std/numerics/bit/bitops.rot/rotl.pass.cpp
M libcxx/test/std/numerics/bit/bitops.rot/rotr.pass.cpp
M libcxx/test/std/numerics/bit/byteswap.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/saturating.bitint.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/equality/equality.T2.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/equality/equality.unexpected.pass.cpp
M libcxx/test/std/utilities/utility/utility.intcmp/intcmp.bitint.pass.cpp
M libcxx/test/support/test_comparisons.h
M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
A libcxx/test/tools/clang_tidy_checks/empty_namespaces.cpp
A libcxx/test/tools/clang_tidy_checks/empty_namespaces.hpp
M libcxx/test/tools/clang_tidy_checks/libcpp_module.cpp
M libcxx/utils/generate_escaped_output_table.py
M libcxx/utils/generate_feature_test_macro_components.py
M libcxxabi/CMakeLists.txt
M libcxxabi/src/CMakeLists.txt
M libsycl/CMakeLists.txt
M libunwind/CMakeLists.txt
M libunwind/src/CMakeLists.txt
M libunwind/src/Unwind-wasm.c
M lld/CMakeLists.txt
M lldb/CMakeLists.txt
M lldb/docs/resources/lldbgdbremote.md
M lldb/include/lldb/Breakpoint/Breakpoint.h
M lldb/include/lldb/Breakpoint/BreakpointResolver.h
M lldb/include/lldb/Breakpoint/BreakpointResolverFileRegex.h
A lldb/include/lldb/Core/BugReporter.h
M lldb/include/lldb/Core/Debugger.h
M lldb/include/lldb/Core/Diagnostics.h
M lldb/include/lldb/Core/ModuleSpec.h
M lldb/include/lldb/Core/PluginManager.h
M lldb/include/lldb/Interpreter/Interfaces/ScriptedFrameInterface.h
M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
M lldb/include/lldb/Target/DynamicLoader.h
A lldb/include/lldb/Target/MemoryRegionInfoCache.h
M lldb/include/lldb/Target/Process.h
M lldb/include/lldb/Target/Target.h
M lldb/include/lldb/Utility/AcceleratorGDBRemotePackets.h
M lldb/include/lldb/Utility/FileSpec.h
M lldb/include/lldb/Utility/Log.h
M lldb/include/lldb/Utility/ValueType.h
M lldb/include/lldb/Utility/XcodeSDK.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/include/lldb/lldb-forward.h
M lldb/include/lldb/lldb-private-enumerations.h
M lldb/include/lldb/lldb-private-interfaces.h
M lldb/packages/Python/lldbsuite/test/make/WASI.rules
M lldb/packages/Python/lldbsuite/test/tools/lldb-server/gdbremote_testcase.py
M lldb/source/API/SBBreakpoint.cpp
M lldb/source/API/SBFileSpec.cpp
M lldb/source/API/SBProcess.cpp
M lldb/source/Breakpoint/BreakpointLocation.cpp
M lldb/source/Breakpoint/BreakpointResolverFileLine.cpp
M lldb/source/Commands/CommandCompletions.cpp
M lldb/source/Commands/CommandObjectBreakpoint.cpp
M lldb/source/Commands/CommandObjectDiagnostics.cpp
M lldb/source/Commands/CommandObjectFrame.cpp
M lldb/source/Commands/CommandObjectLog.cpp
M lldb/source/Commands/CommandObjectPlatform.cpp
M lldb/source/Commands/CommandObjectSource.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Commands/Options.td
M lldb/source/Core/Address.cpp
M lldb/source/Core/AddressRange.cpp
M lldb/source/Core/AddressResolverFileLine.cpp
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
M lldb/source/Core/Declaration.cpp
M lldb/source/Core/Diagnostics.cpp
M lldb/source/Core/Disassembler.cpp
M lldb/source/Core/DynamicLoader.cpp
M lldb/source/Core/FileLineResolver.cpp
M lldb/source/Core/FormatEntity.cpp
M lldb/source/Core/IOHandler.cpp
M lldb/source/Core/IOHandlerCursesGUI.cpp
M lldb/source/Core/Module.cpp
M lldb/source/Core/ModuleList.cpp
M lldb/source/Core/PluginManager.cpp
M lldb/source/Core/SearchFilter.cpp
M lldb/source/Core/Section.cpp
M lldb/source/Core/SourceManager.cpp
M lldb/source/Host/common/FileSystem.cpp
M lldb/source/Host/common/Host.cpp
M lldb/source/Host/common/HostInfoBase.cpp
M lldb/source/Host/macosx/objcxx/Host.mm
M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
M lldb/source/Host/posix/HostInfoPosix.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Plugins/ABI/X86/ABIX86.cpp
M lldb/source/Plugins/ABI/X86/ABIX86.h
M lldb/source/Plugins/ABI/X86/ABIX86_64.h
M lldb/source/Plugins/ABI/X86/ABIX86_i386.h
A lldb/source/Plugins/BugReporter/CMakeLists.txt
A lldb/source/Plugins/BugReporter/GitHub/CMakeLists.txt
A lldb/source/Plugins/BugReporter/GitHub/GitHubReporter.cpp
A lldb/source/Plugins/BugReporter/GitHub/GitHubReporter.h
A lldb/source/Plugins/BugReporter/None/BugReporterNone.cpp
A lldb/source/Plugins/BugReporter/None/BugReporterNone.h
A lldb/source/Plugins/BugReporter/None/CMakeLists.txt
M lldb/source/Plugins/CMakeLists.txt
M lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
M lldb/source/Plugins/DynamicLoader/FreeBSD-Kernel/DynamicLoaderFreeBSDKernel.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
M lldb/source/Plugins/ExpressionParser/Clang/CppModuleConfiguration.cpp
M lldb/source/Plugins/InstrumentationRuntime/Utility/Utility.cpp
M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.h
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/GNUstepObjCRuntime/GNUstepObjCRuntime.cpp
M lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp
M lldb/source/Plugins/ObjectFile/COFF/ObjectFileCOFF.cpp
M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
M lldb/source/Plugins/ObjectFile/XCOFF/ObjectFileXCOFF.cpp
M lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.cpp
M lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp
M lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinDevice.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformRemoteDarwinDevice.cpp
M lldb/source/Plugins/Platform/WebAssembly/PlatformWasm.cpp
M lldb/source/Plugins/Platform/WebAssembly/PlatformWasmProperties.td
M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp
M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.h
M lldb/source/Plugins/Process/Windows/Common/ForwardDecl.h
M lldb/source/Plugins/Process/Windows/Common/IDebugDelegate.h
M lldb/source/Plugins/Process/Windows/Common/LocalDebugDelegate.cpp
M lldb/source/Plugins/Process/Windows/Common/LocalDebugDelegate.h
M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp
M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.h
M lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.h
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.h
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
M lldb/source/Plugins/Process/gdb-remote/LLDBServerAcceleratorPlugin.cpp
M lldb/source/Plugins/Process/gdb-remote/LLDBServerAcceleratorPlugin.h
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
M lldb/source/Plugins/Process/scripted/ScriptedFrame.cpp
M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
M lldb/source/Plugins/Protocol/MCP/Resource.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedFramePythonInterface.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedFramePythonInterface.h
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
M lldb/source/Plugins/SymbolLocator/DebugSymbols/SymbolLocatorDebugSymbols.cpp
M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
M lldb/source/Plugins/SymbolLocator/Default/SymbolLocatorDefault.cpp
M lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Symbol/DWARFCallFrameInfo.cpp
M lldb/source/Symbol/LineEntry.cpp
M lldb/source/Symbol/ObjectFile.cpp
M lldb/source/Target/AssertFrameRecognizer.cpp
M lldb/source/Target/CMakeLists.txt
M lldb/source/Target/InstrumentationRuntime.cpp
M lldb/source/Target/InstrumentationRuntimeStopInfo.cpp
A lldb/source/Target/MemoryRegionInfoCache.cpp
M lldb/source/Target/ModuleCache.cpp
M lldb/source/Target/Platform.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/SectionLoadList.cpp
M lldb/source/Target/StackFrameRecognizer.cpp
M lldb/source/Target/Target.cpp
M lldb/source/Target/TargetList.cpp
M lldb/source/Target/Trace.cpp
M lldb/source/Target/TraceDumper.cpp
M lldb/source/Utility/AcceleratorGDBRemotePackets.cpp
M lldb/source/Utility/Args.cpp
M lldb/source/Utility/FileSpec.cpp
M lldb/source/Utility/FileSpecList.cpp
M lldb/source/Utility/Log.cpp
M lldb/source/Utility/ProcessInfo.cpp
M lldb/source/Utility/XcodeSDK.cpp
A lldb/test/API/accelerator/mock/TestMockAcceleratorActions.py
R lldb/test/API/accelerator/mock/TestMockAcceleratorBreakpoints.py
A lldb/test/API/accelerator/mock/TestMockAcceleratorPackets.py
R lldb/test/API/accelerator/mock/TestMockAcceleratorPlugin.py
M lldb/test/API/accelerator/mock/main.c
M lldb/test/API/commands/log/basic/TestLogging.py
M lldb/test/API/commands/platform/basic/TestPlatformPython.py
M lldb/test/API/commands/platform/connect/TestPlatformConnect.py
M lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
M lldb/test/API/commands/process/launch-with-shellexpand/TestLaunchWithShellExpand.py
M lldb/test/API/commands/process/reverse-continue/TestReverseContinue.py
M lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py
M lldb/test/API/driver/batch_mode/TestBatchMode.py
M lldb/test/API/functionalities/breakpoint/breakpoint_conditions/crashing_condition/TestCrashingCondition.py
M lldb/test/API/functionalities/breakpoint/delayed_breakpoints/TestDelayedBreakpoint.py
M lldb/test/API/functionalities/breakpoint/hardware_breakpoints/require_hw_breakpoints/TestRequireHWBreakpoints.py
M lldb/test/API/functionalities/breakpoint/hardware_breakpoints/simple_hw_breakpoints/TestSimpleHWBreakpoints.py
M lldb/test/API/functionalities/completion/TestCompletion.py
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/source_location/Makefile
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/source_location/TestDataFormatterStdSourceLocation.py
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/source_location/main.cpp
M lldb/test/API/functionalities/gdb_remote_client/TestDynamicLoaderDarwin.py
M lldb/test/API/functionalities/gdb_remote_client/TestMemoryRegionDirtyPages.py
M lldb/test/API/functionalities/memory/holes/TestMemoryHoles.py
M lldb/test/API/functionalities/module_cache/simple_exe/TestModuleCacheSimple.py
M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
A lldb/test/API/functionalities/postmortem/elf-core/elf-dyld-nt-file-mismatch.yaml
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueWatchpoints.py
M lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
M lldb/test/API/functionalities/scripted_frame_provider/test_frame_providers.py
M lldb/test/API/functionalities/tail_call_frames/ambiguous_tail_call_seq1/TestAmbiguousTailCallSeq1.py
M lldb/test/API/functionalities/tail_call_frames/ambiguous_tail_call_seq2/TestAmbiguousTailCallSeq2.py
M lldb/test/API/functionalities/tail_call_frames/cross_object/TestCrossObjectTailCalls.py
M lldb/test/API/functionalities/tail_call_frames/disambiguate_call_site/TestDisambiguateCallSite.py
M lldb/test/API/functionalities/tail_call_frames/disambiguate_paths_to_common_sink/TestDisambiguatePathsToCommonSink.py
M lldb/test/API/functionalities/tail_call_frames/disambiguate_tail_call_seq/TestDisambiguateTailCallSeq.py
M lldb/test/API/functionalities/tail_call_frames/inlining_and_tail_calls/TestInliningAndTailCalls.py
M lldb/test/API/functionalities/tail_call_frames/sbapi_support/TestTailCallFrameSBAPI.py
M lldb/test/API/functionalities/tail_call_frames/thread_step_out_message/TestArtificialFrameStepOutMessage.py
M lldb/test/API/functionalities/tail_call_frames/thread_step_out_or_return/TestSteppingOutWithArtificialFrames.py
M lldb/test/API/functionalities/tail_call_frames/unambiguous_sequence/TestUnambiguousTailCalls.py
M lldb/test/API/iohandler/autosuggestion/TestAutosuggestion.py
M lldb/test/API/iohandler/sigint/TestProcessIOHandlerInterrupt.py
M lldb/test/API/lang/cpp/default-template-args/TestDefaultTemplateArgs.py
M lldb/test/API/macosx/mte/TestDarwinMTE.py
M lldb/test/API/python_api/global_module_cache/TestGlobalModuleCache.py
M lldb/test/API/python_api/sbenvironment/TestSBEnvironment.py
M lldb/test/API/python_api/sbplatform/TestSBPlatform.py
M lldb/test/API/qemu/TestQemuLaunch.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py
M lldb/test/API/tools/lldb-dap/databreakpoint/TestDAP_setDataBreakpoints.py
M lldb/test/API/tools/lldb-dap/disconnect/TestDAP_disconnect.py
A lldb/test/API/tools/lldb-server/cached-memory-region-info/Makefile
A lldb/test/API/tools/lldb-server/cached-memory-region-info/TestCachedMemoryRegionInfo.py
A lldb/test/API/tools/lldb-server/cached-memory-region-info/main.cpp
M lldb/test/API/tools/lldb-server/main.cpp
M lldb/test/Shell/Diagnostics/TestDump.test
A lldb/test/Shell/Diagnostics/TestReport.test
M lldb/test/Shell/SymbolFile/DWARF/Inputs/gnu-ref-strp-alt.yaml
M lldb/test/Shell/SymbolFile/DWARF/gnu-ref-strp-alt.test
A lldb/test/Shell/SymbolFile/DWARF/wasm-dead-code-function-breakpoint.yaml
M lldb/test/Shell/SymbolFile/NativePDB/local-variables.cpp
M lldb/test/Shell/lldb-server/TestGdbserverErrorMessages.test
M lldb/test/Shell/lldb-server/TestPlatformErrorMessages.test
M lldb/tools/lldb-dap/ClientLauncher.cpp
M lldb/tools/lldb-server/Plugins/Accelerator/Mock/CMakeLists.txt
M lldb/tools/lldb-server/Plugins/Accelerator/Mock/LLDBServerMockAcceleratorPlugin.cpp
M lldb/tools/lldb-server/Plugins/Accelerator/Mock/LLDBServerMockAcceleratorPlugin.h
A lldb/tools/lldb-server/Plugins/Accelerator/Mock/ProcessMockAccelerator.cpp
A lldb/tools/lldb-server/Plugins/Accelerator/Mock/ProcessMockAccelerator.h
A lldb/tools/lldb-server/Plugins/Accelerator/Mock/RegisterContextMockAccelerator.cpp
A lldb/tools/lldb-server/Plugins/Accelerator/Mock/RegisterContextMockAccelerator.h
A lldb/tools/lldb-server/Plugins/Accelerator/Mock/ThreadMockAccelerator.cpp
A lldb/tools/lldb-server/Plugins/Accelerator/Mock/ThreadMockAccelerator.h
M lldb/tools/lldb-server/lldb-gdbserver.cpp
M lldb/tools/lldb-server/lldb-platform.cpp
M lldb/tools/lldb-test/lldb-test.cpp
M lldb/unittests/Symbol/LocateSymbolFileTest.cpp
M lldb/unittests/Target/LocateModuleCallbackTest.cpp
M lldb/unittests/Target/ModuleCacheTest.cpp
M lldb/unittests/Utility/AcceleratorGDBRemotePacketsTest.cpp
M lldb/unittests/Utility/FileSpecTest.cpp
M lldb/unittests/Utility/LogTest.cpp
M llvm-libgcc/CMakeLists.txt
M llvm/CMakeLists.txt
M llvm/docs/AMDGPUUsage.rst
R llvm/docs/CalleeTypeMetadata.rst
M llvm/docs/CommandGuide/llvm-debuginfo-analyzer.rst
M llvm/docs/LFI.rst
M llvm/docs/LangRef.rst
M llvm/docs/NVPTXUsage.rst
M llvm/docs/Reference.md
M llvm/docs/ReleaseNotes.md
M llvm/docs/TableGen/BackEnds.rst
M llvm/include/llvm/ADT/GenericUniformityImpl.h
M llvm/include/llvm/ADT/StringExtras.h
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/include/llvm/Bitcode/BitcodeConvenience.h
M llvm/include/llvm/CodeGen/AsmPrinter.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
M llvm/include/llvm/CodeGen/MachinePassManager.h
M llvm/include/llvm/CodeGen/TargetFrameLowering.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
M llvm/include/llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVElement.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVLocation.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVReader.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVSupport.h
M llvm/include/llvm/DebugInfo/LogicalView/LVReaderHandler.h
M llvm/include/llvm/DebugInfo/LogicalView/Readers/LVBinaryReader.h
A llvm/include/llvm/DebugInfo/LogicalView/Readers/LVIRReader.h
A llvm/include/llvm/ExecutionEngine/Orc/InProcessEPC.h
M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
M llvm/include/llvm/ExecutionEngine/Orc/UnwindInfoRegistrationPlugin.h
M llvm/include/llvm/IR/DebugProgramInstruction.h
M llvm/include/llvm/IR/DiagnosticInfo.h
M llvm/include/llvm/IR/FixedMetadataKinds.def
M llvm/include/llvm/IR/Intrinsics.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/include/llvm/IR/Metadata.h
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/include/llvm/MC/MCRegisterInfo.h
M llvm/include/llvm/MC/MCSubtargetInfo.h
M llvm/include/llvm/Object/COFF.h
M llvm/include/llvm/ProfileData/Coverage/MCDCTypes.h
M llvm/include/llvm/ProfileData/InstrProf.h
M llvm/include/llvm/ProfileData/InstrProfCorrelator.h
M llvm/include/llvm/ProfileData/InstrProfData.inc
M llvm/include/llvm/ProfileData/InstrProfReader.h
M llvm/include/llvm/ProfileData/InstrProfWriter.h
M llvm/include/llvm/Support/CheckedArithmetic.h
M llvm/include/llvm/Support/raw_ostream.h
M llvm/include/llvm/TableGen/SearchableTable.td
M llvm/include/llvm/Target/Target.td
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/include/llvm/TargetParser/AMDGPUTargetParser.def
M llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
M llvm/include/llvm/TargetParser/SubtargetFeature.h
M llvm/include/llvm/TargetParser/Triple.h
M llvm/include/llvm/TargetParser/X86TargetParser.def
M llvm/include/llvm/TargetParser/X86TargetParser.h
M llvm/include/llvm/Transforms/Instrumentation/CFGMST.h
M llvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PackReuse.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PrintInstructionCount.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PrintRegion.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAcceptOrRevert.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAlwaysAccept.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAlwaysRevert.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionSave.h
M llvm/lib/Analysis/Delinearization.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/CAS/ActionCaches.cpp
M llvm/lib/CAS/BuiltinCAS.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/BranchFolding.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/CodeGen/MachineFunctionPass.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/StackProtector.cpp
M llvm/lib/CodeGen/TargetSubtargetInfo.cpp
M llvm/lib/DWP/DWP.cpp
M llvm/lib/DebugInfo/DWARF/DWARFDebugAbbrev.cpp
M llvm/lib/DebugInfo/LogicalView/CMakeLists.txt
M llvm/lib/DebugInfo/LogicalView/Core/LVElement.cpp
M llvm/lib/DebugInfo/LogicalView/Core/LVLocation.cpp
M llvm/lib/DebugInfo/LogicalView/Core/LVReader.cpp
M llvm/lib/DebugInfo/LogicalView/LVReaderHandler.cpp
A llvm/lib/DebugInfo/LogicalView/Readers/LVIRReader.cpp
M llvm/lib/ExecutionEngine/JITLink/x86_64.cpp
M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
A llvm/lib/ExecutionEngine/Orc/InProcessEPC.cpp
M llvm/lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp
M llvm/lib/ExecutionEngine/Orc/TargetProcess/UnwindInfoManager.cpp
M llvm/lib/ExecutionEngine/Orc/UnwindInfoRegistrationPlugin.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/DebugProgramInstruction.cpp
M llvm/lib/IR/DiagnosticInfo.cpp
M llvm/lib/IR/Intrinsics.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/IR/VerifierInternal.h
M llvm/lib/MC/MCContext.cpp
M llvm/lib/MC/MCParser/GOFFAsmParser.cpp
M llvm/lib/MC/MCSubtargetInfo.cpp
M llvm/lib/MC/TargetRegistry.cpp
M llvm/lib/Object/ArchiveWriter.cpp
M llvm/lib/Object/COFFObjectFile.cpp
M llvm/lib/Object/OffloadBundle.cpp
M llvm/lib/ProfileData/InstrProf.cpp
M llvm/lib/ProfileData/InstrProfCorrelator.cpp
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/lib/ProfileData/InstrProfWriter.cpp
M llvm/lib/ProfileData/ItaniumManglingCanonicalizer.cpp
M llvm/lib/Support/StringExtras.cpp
M llvm/lib/Support/Windows/Path.inc
M llvm/lib/Target/AArch64/AArch64.td
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64Processors.td
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64SchedC1Nano.td
M llvm/lib/Target/AArch64/AArch64SchedC1Premium.td
M llvm/lib/Target/AArch64/AArch64SchedC1Ultra.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN3.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV3.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV3AE.td
M llvm/lib/Target/AArch64/AArch64SchedOlympus.td
M llvm/lib/Target/AArch64/AArch64SchedPredicates.td
M llvm/lib/Target/AArch64/AArch64SchedTSV110.td
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.h
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp
M llvm/lib/Target/AArch64/SMEInstrFormats.td
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/GCNProcessors.td
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/SIDefines.h
M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/SIPostRABundler.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VOPDInstructions.td
M llvm/lib/Target/ARM/ARMArchitectures.td
M llvm/lib/Target/ARM/ARMFeatures.td
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
M llvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp
M llvm/lib/Target/BPF/BPFMIChecking.cpp
M llvm/lib/Target/BPF/BPFMIPeephole.cpp
M llvm/lib/Target/BPF/BPFTargetMachine.cpp
M llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp
M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
M llvm/lib/Target/Lanai/CMakeLists.txt
M llvm/lib/Target/Lanai/Lanai.h
M llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp
A llvm/lib/Target/Lanai/LanaiAsmPrinter.h
A llvm/lib/Target/Lanai/LanaiCodeGenPassBuilder.cpp
M llvm/lib/Target/Lanai/LanaiDelaySlotFiller.cpp
M llvm/lib/Target/Lanai/LanaiISelDAGToDAG.cpp
M llvm/lib/Target/Lanai/LanaiInstrInfo.td
M llvm/lib/Target/Lanai/LanaiMemAluCombiner.cpp
A llvm/lib/Target/Lanai/LanaiPassRegistry.def
M llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
M llvm/lib/Target/Lanai/LanaiTargetMachine.h
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/MSP430/AsmParser/MSP430AsmParser.cpp
M llvm/lib/Target/MSP430/MSP430.h
M llvm/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/NVPTX/CMakeLists.txt
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.h
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTX.td
A llvm/lib/Target/NVPTX/NVPTXAddressFolder.cpp
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
M llvm/lib/Target/NVPTX/NVPTXInstrFormats.td
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXMachineFunctionInfo.h
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
M llvm/lib/Target/RISCV/RISCV.td
M llvm/lib/Target/RISCV/RISCVCallingConv.cpp
M llvm/lib/Target/RISCV/RISCVCallingConv.h
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
M llvm/lib/Target/SPIRV/SPIRVRegularizer.cpp
M llvm/lib/Target/Sparc/Sparc.td
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
M llvm/lib/Target/SystemZ/SystemZMachineScheduler.cpp
M llvm/lib/Target/WebAssembly/GISel/WebAssemblyInstructionSelector.cpp
M llvm/lib/Target/WebAssembly/GISel/WebAssemblyLegalizerInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
M llvm/lib/Target/X86/AsmParser/X86Operand.h
M llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
M llvm/lib/Target/X86/X86.td
M llvm/lib/Target/X86/X86CallingConv.td
M llvm/lib/Target/X86/X86ExpandPseudo.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/lib/Target/X86/X86InsertX87Wait.cpp
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86MCInstLower.cpp
A llvm/lib/Target/X86/X86ScheduleC864GM8.td
M llvm/lib/Target/X86/X86Subtarget.h
M llvm/lib/TargetParser/AArch64TargetParser.cpp
M llvm/lib/TargetParser/AMDGPUTargetParser.cpp
M llvm/lib/TargetParser/Host.cpp
M llvm/lib/TargetParser/TargetDataLayout.cpp
M llvm/lib/TargetParser/Triple.cpp
M llvm/lib/TargetParser/X86TargetParser.cpp
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Scalar/EarlyCSE.cpp
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/lib/Transforms/Utils/DebugSSAUpdater.cpp
M llvm/lib/Transforms/Utils/FixIrreducible.cpp
M llvm/lib/Transforms/Utils/LoopUnroll.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Analysis/CostModel/AArch64/insert-extract.ll
M llvm/test/Analysis/CostModel/AArch64/mem-op-cost-model.ll
M llvm/test/Analysis/CostModel/AArch64/shuffle-load.ll
M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
M llvm/test/Analysis/CostModel/AArch64/sve-ldst.ll
M llvm/test/Analysis/CostModel/AMDGPU/canonicalize.ll
M llvm/test/Analysis/CostModel/AMDGPU/control-flow.ll
M llvm/test/Analysis/CostModel/AMDGPU/fround.ll
M llvm/test/Analysis/CostModel/AMDGPU/fsub.ll
M llvm/test/Assembler/autoupgrade-invalid-mem-intrinsics.ll
A llvm/test/Assembler/autoupgrade-lifetime-intrinsics-invalid.ll
M llvm/test/Assembler/callee-type-metadata.ll
M llvm/test/Assembler/invalid-vecreduce.ll
A llvm/test/Bitcode/block-uniformity-profile-metadata.ll
M llvm/test/CodeGen/AArch64/GlobalISel/arm64-fallback.ll
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-stack-protector-windows.ll
M llvm/test/CodeGen/AArch64/arm64ec-indirect-call.ll
M llvm/test/CodeGen/AArch64/calleetypeid-directcall-mismatched.ll
M llvm/test/CodeGen/AArch64/callsite-emit-calleetypeid-tailcall.ll
M llvm/test/CodeGen/AArch64/callsite-emit-calleetypeid.ll
M llvm/test/CodeGen/AArch64/global-merge-profile-sections.ll
M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
M llvm/test/CodeGen/AArch64/mingw-refptr.ll
M llvm/test/CodeGen/AArch64/sme2p1-intrinsics-movaz.ll
M llvm/test/CodeGen/AArch64/stack-protector-target.ll
M llvm/test/CodeGen/AArch64/sve-bad-intrinsics.ll
M llvm/test/CodeGen/AArch64/sve-intrinsics-pred-operations.ll
M llvm/test/CodeGen/AArch64/sve-pred-log.ll
M llvm/test/CodeGen/AArch64/sve-ptest.ll
M llvm/test/CodeGen/AArch64/sve-select.ll
M llvm/test/CodeGen/AArch64/sve2-intrinsics-nt-gather-loads-32bit-unscaled-offset.ll
M llvm/test/CodeGen/AArch64/sve2-intrinsics-nt-scatter-stores-32bit-unscaled-offset.ll
M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
M llvm/test/CodeGen/AMDGPU/add.ll
M llvm/test/CodeGen/AMDGPU/add_i1.ll
M llvm/test/CodeGen/AMDGPU/addsub64_carry.ll
M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.160bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.16bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.192bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.224bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.288bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.32bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.352bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.48bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-miscellaneous-uniform-intrinsic.ll
M llvm/test/CodeGen/AMDGPU/anyext.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
M llvm/test/CodeGen/AMDGPU/av-split-dead-valno-crash.ll
M llvm/test/CodeGen/AMDGPU/blender-no-live-segment-at-def-implicit-def.ll
M llvm/test/CodeGen/AMDGPU/branch-folder-requires-no-phis.mir
M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
M llvm/test/CodeGen/AMDGPU/branch-relaxation-gfx1250.ll
M llvm/test/CodeGen/AMDGPU/branch-relaxation.ll
M llvm/test/CodeGen/AMDGPU/bug-cselect-b64.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
M llvm/test/CodeGen/AMDGPU/coalescer_distribute.ll
M llvm/test/CodeGen/AMDGPU/coexec-scheduler.ll
M llvm/test/CodeGen/AMDGPU/combine-add-zext-xor.ll
M llvm/test/CodeGen/AMDGPU/combine_andor_with_cmps.ll
M llvm/test/CodeGen/AMDGPU/commute-compares-scalar-float.ll
M llvm/test/CodeGen/AMDGPU/ctpop.ll
M llvm/test/CodeGen/AMDGPU/ctpop16.ll
M llvm/test/CodeGen/AMDGPU/ctpop64.ll
M llvm/test/CodeGen/AMDGPU/dagcombine-fma-crash.ll
M llvm/test/CodeGen/AMDGPU/dagcombine-lshr-and-cmp.ll
M llvm/test/CodeGen/AMDGPU/dagcombine-select.ll
M llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-trunc-to-i1.ll
M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
M llvm/test/CodeGen/AMDGPU/elf-header-flags-mach.ll
M llvm/test/CodeGen/AMDGPU/exec-mask-opt-cannot-create-empty-or-backward-segment.ll
M llvm/test/CodeGen/AMDGPU/expand-scalar-carry-out-select-user.ll
M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
M llvm/test/CodeGen/AMDGPU/extract_vector_dynelt.ll
M llvm/test/CodeGen/AMDGPU/fcmp.f16.ll
M llvm/test/CodeGen/AMDGPU/fcopysign.f16.ll
M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-phi-regression-issue130646-issue130119.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_system.ll
M llvm/test/CodeGen/AMDGPU/float-sopc-vopc.ll
M llvm/test/CodeGen/AMDGPU/fneg-modifier-casting.ll
M llvm/test/CodeGen/AMDGPU/fp-classify.ll
M llvm/test/CodeGen/AMDGPU/fp_to_sint.ll
M llvm/test/CodeGen/AMDGPU/fp_to_uint.ll
M llvm/test/CodeGen/AMDGPU/fptosi.f16.ll
M llvm/test/CodeGen/AMDGPU/fptoui.f16.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.ll
M llvm/test/CodeGen/AMDGPU/freeze.ll
M llvm/test/CodeGen/AMDGPU/frem.ll
M llvm/test/CodeGen/AMDGPU/generic-targets-require-v6.ll
M llvm/test/CodeGen/AMDGPU/gep-const-address-space.ll
M llvm/test/CodeGen/AMDGPU/hsa-generic-target-features.ll
M llvm/test/CodeGen/AMDGPU/implicit-kernarg-backend-usage.ll
M llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
M llvm/test/CodeGen/AMDGPU/infer-addrspace-flat-atomic.ll
M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
M llvm/test/CodeGen/AMDGPU/insert-waitcnts-merge.ll
M llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll
M llvm/test/CodeGen/AMDGPU/insert_vector_elt.ll
M llvm/test/CodeGen/AMDGPU/intrinsic-amdgcn-s-alloc-vgpr.ll
M llvm/test/CodeGen/AMDGPU/issue176578.ll
A llvm/test/CodeGen/AMDGPU/issue196582-late-codegenprepare-crash-non-po2.ll
M llvm/test/CodeGen/AMDGPU/large-phi-search.ll
M llvm/test/CodeGen/AMDGPU/literal64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.addrspacecast.nonnull.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fmed3.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.kill.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane16.swap.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.quadmask.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.signal.isfirst.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.set.inactive.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.fma.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.ll
M llvm/test/CodeGen/AMDGPU/llvm.set.rounding.ll
M llvm/test/CodeGen/AMDGPU/long-branch-reserve-register.ll
M llvm/test/CodeGen/AMDGPU/machine-cse-ssa.mir
M llvm/test/CodeGen/AMDGPU/mad-combine.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-bf16.ll
A llvm/test/CodeGen/AMDGPU/mcinstlower-external-symbol-reloc.mir
M llvm/test/CodeGen/AMDGPU/memcpy-crash-issue63986.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-multiple-mem-operands-nontemporal-1.mir
M llvm/test/CodeGen/AMDGPU/min.ll
M llvm/test/CodeGen/AMDGPU/mixed-vmem-types.ll
M llvm/test/CodeGen/AMDGPU/mul.ll
M llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.ll
M llvm/test/CodeGen/AMDGPU/noclobber-barrier.ll
M llvm/test/CodeGen/AMDGPU/optimize-negated-cond.ll
M llvm/test/CodeGen/AMDGPU/or.ll
M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr-phi.ll
M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr.ll
A llvm/test/CodeGen/AMDGPU/s-barrier-signal-var-gep.ll
M llvm/test/CodeGen/AMDGPU/s-cluster-barrier.ll
M llvm/test/CodeGen/AMDGPU/s_cmp_0.ll
M llvm/test/CodeGen/AMDGPU/saddo.ll
M llvm/test/CodeGen/AMDGPU/sdiv64.ll
M llvm/test/CodeGen/AMDGPU/select-undef.ll
M llvm/test/CodeGen/AMDGPU/selectcc-opt.ll
M llvm/test/CodeGen/AMDGPU/setcc-opt.ll
M llvm/test/CodeGen/AMDGPU/setcc.ll
M llvm/test/CodeGen/AMDGPU/setcc64.ll
M llvm/test/CodeGen/AMDGPU/sgpr-control-flow.ll
M llvm/test/CodeGen/AMDGPU/sgpr-copy.ll
M llvm/test/CodeGen/AMDGPU/sgpr-to-vreg1-copy.ll
M llvm/test/CodeGen/AMDGPU/si-fold-operands-requires-ssa.mir
M llvm/test/CodeGen/AMDGPU/si-unify-exit-multiple-unreachables.ll
M llvm/test/CodeGen/AMDGPU/si-unify-exit-return-unreachable.ll
M llvm/test/CodeGen/AMDGPU/sign_extend.ll
M llvm/test/CodeGen/AMDGPU/siloadstoreopt-misaligned-regsequence.ll
M llvm/test/CodeGen/AMDGPU/simplifydemandedbits-recursion.ll
M llvm/test/CodeGen/AMDGPU/sink-addr-memory-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/sminmax.v2i16.ll
M llvm/test/CodeGen/AMDGPU/srem.ll
M llvm/test/CodeGen/AMDGPU/srem64.ll
M llvm/test/CodeGen/AMDGPU/ssubo.ll
M llvm/test/CodeGen/AMDGPU/structurize-hoist.ll
M llvm/test/CodeGen/AMDGPU/sub-zext-cc-zext-cc.ll
M llvm/test/CodeGen/AMDGPU/sub_i1.ll
M llvm/test/CodeGen/AMDGPU/trunc-cmp-constant.ll
M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
M llvm/test/CodeGen/AMDGPU/uaddo.ll
M llvm/test/CodeGen/AMDGPU/udiv64.ll
M llvm/test/CodeGen/AMDGPU/undefined-subreg-liverange.ll
M llvm/test/CodeGen/AMDGPU/uniform-cfg.ll
M llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll
M llvm/test/CodeGen/AMDGPU/urem64.ll
M llvm/test/CodeGen/AMDGPU/usubo.ll
M llvm/test/CodeGen/AMDGPU/v_cmp_gfx11.ll
A llvm/test/CodeGen/AMDGPU/v_mov_b64-isel.ll
M llvm/test/CodeGen/AMDGPU/wave32.ll
M llvm/test/CodeGen/AMDGPU/widen-vselect-and-mask.ll
M llvm/test/CodeGen/AMDGPU/workitem-intrinsic-opts.ll
M llvm/test/CodeGen/AMDGPU/wqm.ll
M llvm/test/CodeGen/AMDGPU/xor.ll
M llvm/test/CodeGen/AMDGPU/zero_extend.ll
M llvm/test/CodeGen/ARM/call-graph-section-addrtaken.ll
M llvm/test/CodeGen/ARM/call-graph-section-assembly.ll
M llvm/test/CodeGen/ARM/call-graph-section-tailcall.ll
M llvm/test/CodeGen/ARM/call-graph-section.ll
M llvm/test/CodeGen/ARM/calleetypeid-directcall-mismatched.ll
M llvm/test/CodeGen/ARM/callsite-emit-calleetypeid-tailcall.ll
M llvm/test/CodeGen/ARM/callsite-emit-calleetypeid.ll
A llvm/test/CodeGen/DirectX/Texture2DArray-SampleBias.ll
A llvm/test/CodeGen/DirectX/Texture2DArray-SampleGrad.ll
A llvm/test/CodeGen/DirectX/Texture2DArray-annotateHandle.ll
R llvm/test/CodeGen/DirectX/strip-debug-info.ll
A llvm/test/CodeGen/Hexagon/autohvx/postRA-qfp-v69-no-crash.ll
A llvm/test/CodeGen/Hexagon/cttz-elts-widen.ll
M llvm/test/CodeGen/Lanai/atomic-oversize.ll
M llvm/test/CodeGen/Lanai/codemodel.ll
M llvm/test/CodeGen/Lanai/comparisons_i32.ll
M llvm/test/CodeGen/Lanai/comparisons_i64.ll
M llvm/test/CodeGen/Lanai/constant_multiply.ll
M llvm/test/CodeGen/Lanai/delay_filler.ll
M llvm/test/CodeGen/Lanai/i32.ll
M llvm/test/CodeGen/Lanai/inlineasm-output-template.ll
M llvm/test/CodeGen/Lanai/lanai-misched-trivial-disjoint.ll
A llvm/test/CodeGen/Lanai/llc-pipeline-npm.ll
M llvm/test/CodeGen/Lanai/lowering-128.ll
M llvm/test/CodeGen/Lanai/lshift64.ll
A llvm/test/CodeGen/Lanai/machine-verifier-regression.ll
M llvm/test/CodeGen/Lanai/masking_setccs.ll
M llvm/test/CodeGen/Lanai/mem_alu_combiner.ll
M llvm/test/CodeGen/Lanai/multiply.ll
M llvm/test/CodeGen/Lanai/naked-fn-with-frame-pointer.ll
M llvm/test/CodeGen/Lanai/rshift64.ll
M llvm/test/CodeGen/Lanai/select.ll
M llvm/test/CodeGen/Lanai/set_and_hi.ll
M llvm/test/CodeGen/Lanai/shift.ll
M llvm/test/CodeGen/Lanai/stack-frame.ll
M llvm/test/CodeGen/Lanai/sub-cmp-peephole.ll
M llvm/test/CodeGen/Lanai/subword.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/float-convert.ll
A llvm/test/CodeGen/LoongArch/isel-set-invalid-rounding.ll
A llvm/test/CodeGen/LoongArch/set-rounding.ll
M llvm/test/CodeGen/MIR/AMDGPU/subreg-def-is-not-ssa.mir
M llvm/test/CodeGen/MIR/AMDGPU/syncscopes.mir
A llvm/test/CodeGen/MIR/X86/branch-folder-drop-undef.mir
M llvm/test/CodeGen/MIR/X86/call-site-info-ambiguous-indirect-call-typeid.mir
M llvm/test/CodeGen/MIR/X86/call-site-info-typeid.mir
M llvm/test/CodeGen/MIR/X86/callsite-emit-calleetypeid.ll
M llvm/test/CodeGen/Mips/GlobalISel/legalizer/zextLoad_and_sextLoad.mir
M llvm/test/CodeGen/Mips/calleetypeid-directcall-mismatched.ll
M llvm/test/CodeGen/Mips/callsite-emit-calleetypeid-tailcall.ll
M llvm/test/CodeGen/Mips/callsite-emit-calleetypeid.ll
A llvm/test/CodeGen/NVPTX/address-folder.ll
A llvm/test/CodeGen/NVPTX/address-folder.mir
M llvm/test/CodeGen/NVPTX/call_bitcast_byval.ll
M llvm/test/CodeGen/NVPTX/convert-call-to-indirect.ll
M llvm/test/CodeGen/NVPTX/indirect_byval.ll
A llvm/test/CodeGen/NVPTX/insert-vector-elt-shuffle-i8.ll
M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
M llvm/test/CodeGen/NVPTX/shfl-sync.ll
A llvm/test/CodeGen/NVPTX/st_async_mbarrier.ll
A llvm/test/CodeGen/NVPTX/st_async_mbarrier_b128.ll
A llvm/test/CodeGen/NVPTX/st_async_release.ll
A llvm/test/CodeGen/NVPTX/st_async_release_multimem.ll
M llvm/test/CodeGen/NVPTX/vaargs.ll
M llvm/test/CodeGen/RISCV/GlobalISel/riscv-unsupported.ll
M llvm/test/CodeGen/RISCV/calleetypeid-directcall-mismatched.ll
M llvm/test/CodeGen/RISCV/callsite-emit-calleetypeid-tailcall.ll
M llvm/test/CodeGen/RISCV/callsite-emit-calleetypeid.ll
M llvm/test/CodeGen/RISCV/rvp-simd-32.ll
M llvm/test/CodeGen/RISCV/rvp-simd-64.ll
M llvm/test/CodeGen/RISCV/rvv/cttz-elts.ll
A llvm/test/CodeGen/RISCV/rvv/pr206788.ll
M llvm/test/CodeGen/RISCV/rvv/sifive-O0-ATM-ATK.ll
M llvm/test/CodeGen/RISCV/rvv/sifive-xsfmm-vset-insert.mir
M llvm/test/CodeGen/SPARC/tn0011.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions_no_extension.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions_remove_cap_if.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_fma/fma.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_no_integer_wrap_decoration.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/refract.ll
A llvm/test/CodeGen/SPIRV/hlsl-resources/Gather2DArray.ll
A llvm/test/CodeGen/SPIRV/hlsl-resources/LoadLevel2DArray.ll
A llvm/test/CodeGen/SPIRV/hlsl-resources/Sample2DArray.ll
A llvm/test/CodeGen/SPIRV/hlsl-resources/SampleGrad2DArray.ll
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/fixed-point-math-i64.ll
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/fixed-point-math.ll
M llvm/test/CodeGen/SPIRV/opencl/metadata/fp_contractions_metadata.ll
M llvm/test/CodeGen/SPIRV/opencl/metadata/no_fp_contractions_metadata.ll
M llvm/test/CodeGen/SPIRV/passes/SPIRVPrepareFunctions.ll
M llvm/test/CodeGen/SPIRV/passes/SPIRVRegularizer-i1-icmp.ll
A llvm/test/CodeGen/SPIRV/sat-shifts.ll
M llvm/test/CodeGen/SystemZ/args-22.ll
M llvm/test/CodeGen/SystemZ/atomicrmw-ops-i128.ll
M llvm/test/CodeGen/SystemZ/bswap-09.ll
M llvm/test/CodeGen/SystemZ/bswap-10.ll
M llvm/test/CodeGen/SystemZ/call-zos-vec.ll
M llvm/test/CodeGen/SystemZ/canonicalize-vars.ll
M llvm/test/CodeGen/SystemZ/codegenprepare-sink-and-for-tm.ll
M llvm/test/CodeGen/SystemZ/dag-combine-05.ll
M llvm/test/CodeGen/SystemZ/dag-combine-07.ll
M llvm/test/CodeGen/SystemZ/fold-masked-merge.ll
M llvm/test/CodeGen/SystemZ/fp-copysign-03.ll
M llvm/test/CodeGen/SystemZ/fp-half-vector-binops.ll
M llvm/test/CodeGen/SystemZ/fp-half-vector-fcmp-select.ll
M llvm/test/CodeGen/SystemZ/fp-half.ll
M llvm/test/CodeGen/SystemZ/inline-asm-fp-int-casting-explicit-regs-zEC12.ll
M llvm/test/CodeGen/SystemZ/inline-asm-fp-int-casting-zEC12.ll
M llvm/test/CodeGen/SystemZ/int-cmp-65.ll
M llvm/test/CodeGen/SystemZ/int-conv-14.ll
M llvm/test/CodeGen/SystemZ/int-conv-15.ll
M llvm/test/CodeGen/SystemZ/int-mul-13.ll
M llvm/test/CodeGen/SystemZ/int-uadd-14.ll
M llvm/test/CodeGen/SystemZ/int-usub-13.ll
M llvm/test/CodeGen/SystemZ/knownbits-intrinsics-binop.ll
M llvm/test/CodeGen/SystemZ/misched-prera-cmp-elim.mir
M llvm/test/CodeGen/SystemZ/misched-prera-latencies.mir
M llvm/test/CodeGen/SystemZ/misched-prera-loads.mir
M llvm/test/CodeGen/SystemZ/regcoal-subranges-update.mir
M llvm/test/CodeGen/SystemZ/regcoal_remat_empty_subrange.ll
M llvm/test/CodeGen/SystemZ/risbg-04.ll
M llvm/test/CodeGen/SystemZ/rot-03.ll
M llvm/test/CodeGen/SystemZ/shift-12.ll
M llvm/test/CodeGen/SystemZ/shift-13.ll
M llvm/test/CodeGen/SystemZ/shift-14.ll
M llvm/test/CodeGen/SystemZ/shift-15.ll
M llvm/test/CodeGen/SystemZ/shift-16.ll
M llvm/test/CodeGen/SystemZ/shift-17.ll
M llvm/test/CodeGen/SystemZ/signbits-intrinsics-binop.ll
M llvm/test/CodeGen/SystemZ/soft-float-args.ll
M llvm/test/CodeGen/SystemZ/store_nonbytesized_vecs.ll
M llvm/test/CodeGen/SystemZ/vec-args-04.ll
M llvm/test/CodeGen/SystemZ/vec-cmp-cmp-logic-select.ll
M llvm/test/CodeGen/SystemZ/vec-cmpsel-01.ll
M llvm/test/CodeGen/SystemZ/vec-eval.ll
M llvm/test/CodeGen/SystemZ/vec-perm-12.ll
M llvm/test/CodeGen/SystemZ/vec-trunc-to-i16.ll
M llvm/test/CodeGen/SystemZ/vector-constrained-fp-intrinsics.ll
A llvm/test/CodeGen/SystemZ/zos-stack-protector.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/bitcast.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/copy.mir
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/fptosi.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/fptoui.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/icmp.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/scmp.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/select.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/sitofp.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/smax.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/smin.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/ucmp.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/uitofp.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/umax.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/umin.ll
M llvm/test/CodeGen/WebAssembly/funcref-call.ll
A llvm/test/CodeGen/X86/branch-folder-drop-undef-end-to-end.ll
M llvm/test/CodeGen/X86/bypass-slow-division-64.ll
M llvm/test/CodeGen/X86/call-graph-section-addrtaken.ll
M llvm/test/CodeGen/X86/call-graph-section-assembly.ll
M llvm/test/CodeGen/X86/call-graph-section-tailcall.ll
M llvm/test/CodeGen/X86/call-graph-section.ll
M llvm/test/CodeGen/X86/calleetypeid-directcall-mismatched.ll
M llvm/test/CodeGen/X86/callsite-emit-calleetypeid-tailcall.ll
M llvm/test/CodeGen/X86/callsite-emit-calleetypeid.ll
M llvm/test/CodeGen/X86/cmp16.ll
M llvm/test/CodeGen/X86/combine-reductions.ll
M llvm/test/CodeGen/X86/cpus-hygon.ll
M llvm/test/CodeGen/X86/fp128-libcalls-strict.ll
M llvm/test/CodeGen/X86/fp128-libcalls.ll
A llvm/test/CodeGen/X86/fp128-return-calling-conv.ll
M llvm/test/CodeGen/X86/i128-fp128-abi.ll
M llvm/test/CodeGen/X86/madd.ll
M llvm/test/CodeGen/X86/phaddsub-extract.ll
M llvm/test/CodeGen/X86/rdpru.ll
M llvm/test/CodeGen/X86/slow-unaligned-mem.ll
M llvm/test/CodeGen/X86/sqrt-fastmath-tune.ll
M llvm/test/CodeGen/X86/vector-fshl-rot-128.ll
M llvm/test/CodeGen/X86/vector-fshl-rot-256.ll
M llvm/test/CodeGen/X86/vector-fshr-rot-128.ll
M llvm/test/CodeGen/X86/vector-fshr-rot-256.ll
A llvm/test/CodeGen/X86/vector-reduce-add-codesize.ll
M llvm/test/CodeGen/X86/vector-reduce-add-mask.ll
M llvm/test/CodeGen/X86/vector-reduce-add-sext.ll
M llvm/test/CodeGen/X86/vector-reduce-add-subvector.ll
M llvm/test/CodeGen/X86/vector-reduce-add-zext.ll
M llvm/test/CodeGen/X86/vector-reduce-add.ll
M llvm/test/CodeGen/X86/vector-rotate-128.ll
M llvm/test/CodeGen/X86/vector-rotate-256.ll
M llvm/test/CodeGen/X86/vector-shuffle-fast-per-lane.ll
M llvm/test/CodeGen/X86/x86-64-double-shifts-var.ll
A llvm/test/CodeGen/X86/x87-insert-wait.mir
M llvm/test/ExecutionEngine/JITLink/x86-64/ELF_got_plt_optimizations.s
A llvm/test/ExecutionEngine/JITLink/x86-64/ELF_gotpcrelx_no_relax.s
A llvm/test/Instrumentation/InstrProfiling/amdgpu-3d-grid.ll
A llvm/test/Instrumentation/InstrProfiling/amdgpu-contiguous-counters.ll
M llvm/test/Instrumentation/InstrProfiling/amdgpu-instrumentation.ll
R llvm/test/Instrumentation/InstrProfiling/amdgpu-profc-arrays.ll
A llvm/test/Instrumentation/InstrProfiling/amdgpu-uniform-counters.ll
A llvm/test/Instrumentation/InstrProfiling/amdgpu-wave32.ll
A llvm/test/Instrumentation/InstrProfiling/amdgpu-wave64.ll
M llvm/test/Instrumentation/InstrProfiling/coverage.ll
A llvm/test/Instrumentation/InstrProfiling/debug-info-correlate-bitmap.ll
M llvm/test/Instrumentation/InstrProfiling/inline-data-var-create.ll
M llvm/test/Instrumentation/InstrProfiling/platform.ll
M llvm/test/MC/AArch64/LFI/exclusive.s
M llvm/test/MC/AArch64/LFI/fp.s
A llvm/test/MC/AArch64/LFI/guard-elim.s
M llvm/test/MC/AArch64/LFI/lse.s
M llvm/test/MC/AArch64/LFI/mem-lr.s
M llvm/test/MC/AArch64/LFI/mem.s
M llvm/test/MC/AArch64/LFI/prefetch.s
M llvm/test/MC/AArch64/LFI/rcpc.s
M llvm/test/MC/AArch64/LFI/simd.s
M llvm/test/MC/AMDGPU/gfx11_asm_vopc.s
M llvm/test/MC/ARM/basic-arm-instructions-v8.1a.s
M llvm/test/MC/ARM/basic-thumb2-instructions.s
M llvm/test/MC/ARM/bfloat16-a32-errors2.s
M llvm/test/MC/ARM/cde-integer.s
M llvm/test/MC/ARM/diagnostics.s
M llvm/test/MC/ARM/invalid-neon-v8.s
M llvm/test/MC/ARM/ldrd-strd-gnu-arm-bad-regs.s
M llvm/test/MC/ARM/ldrd-strd-gnu-bad-inst.s
M llvm/test/MC/ARM/ldrd-strd-gnu-sp.s
M llvm/test/MC/ARM/ldrd-strd-gnu-thumb-bad-regs.s
M llvm/test/MC/ARM/mve-load-store.s
M llvm/test/MC/ARM/mve-misc.s
M llvm/test/MC/ARM/mve-scalar-shift.s
M llvm/test/MC/ARM/thumb-diagnostics.s
M llvm/test/MC/ARM/thumb2-diagnostics.s
M llvm/test/MC/ARM/thumb2-dsp-diag.s
M llvm/test/MC/ARM/thumbv7m.s
M llvm/test/MC/ARM/thumbv8m.s
M llvm/test/MC/ARM/vmrs_vmsr.s
A llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc-fake16.txt
R llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc.txt
M llvm/test/MC/X86/x86_long_nop.s
M llvm/test/Object/AMDGPU/elf-header-flags-mach.yaml
M llvm/test/TableGen/AsmPredicateCombiningRISCV.td
M llvm/test/TableGen/CompressInstEmitter/suboperands.td
M llvm/test/TableGen/RegClassByHwModeCompressPat.td
M llvm/test/TableGen/RegisterClassCopyCost.td
M llvm/test/TableGen/generic-tables.td
A llvm/test/TableGen/intrinsic-target-features.td
M llvm/test/Transforms/Coroutines/coro-heap-elide.ll
M llvm/test/Transforms/Coroutines/coro-split-eh-00.ll
M llvm/test/Transforms/Coroutines/coro-split-eh-01.ll
M llvm/test/Transforms/Coroutines/coro-split-final-suspend.ll
M llvm/test/Transforms/Coroutines/ex0.ll
M llvm/test/Transforms/Coroutines/phi-coro-end.ll
R llvm/test/Transforms/DirectX/getpointer-sink-behavior.ll
M llvm/test/Transforms/EarlyCSE/memset-load.ll
A llvm/test/Transforms/FixIrreducible/pr191979.ll
A llvm/test/Transforms/GVN/no-sink-dxgetbasepointer.ll
M llvm/test/Transforms/GVN/no-sink-dxgetpointer.ll
A llvm/test/Transforms/GVN/no-sink-spvcounterhandle.ll
A llvm/test/Transforms/GVN/no-sink-spvgetpointer.ll
A llvm/test/Transforms/IndVarSimplify/X86/fold-correlated-iv-comparisons.ll
M llvm/test/Transforms/Inline/ARM/inline-target-attr.ll
M llvm/test/Transforms/Inline/drop-callee-type-metadata.ll
M llvm/test/Transforms/InstCombine/drop-callee-type-metadata.ll
M llvm/test/Transforms/InstCombine/may-alias-errno.ll
M llvm/test/Transforms/InstCombine/vector-reductions.ll
M llvm/test/Transforms/LoopIdiom/memset-multiple-accesses.ll
A llvm/test/Transforms/LoopInterchange/dependency-all-eq.ll
R llvm/test/Transforms/LoopStrengthReduce/X86/lsr-icmpzero-no-inttoptr.ll
M llvm/test/Transforms/LoopUnroll/partial-unroll-reductions.ll
M llvm/test/Transforms/LoopUnroll/runtime-unroll-reductions-min-max.ll
M llvm/test/Transforms/LoopUnroll/runtime-unroll-reductions.ll
A llvm/test/Transforms/LoopVectorize/AArch64/widen-call-attrs-masked.ll
M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-memory-op-decisions.ll
A llvm/test/Transforms/LoopVectorize/VPlan/buildvector-first-lane-only.ll
A llvm/test/Transforms/LoopVectorize/VPlan/print-attributes.ll
M llvm/test/Transforms/LoopVectorize/VPlan/vplan-print-before-after-all.ll
M llvm/test/Transforms/LoopVectorize/pr33706.ll
M llvm/test/Transforms/LoopVectorize/predicated-inductions.ll
A llvm/test/Transforms/LoopVectorize/widen-call-attrs-interleave.ll
A llvm/test/Transforms/LoopVectorize/widen-call-attrs.ll
A llvm/test/Transforms/LoopVectorize/widen-intrinsic-cse.ll
A llvm/test/Transforms/LoopVectorize/widen-intrinsic-tail-fold.ll
M llvm/test/Transforms/LoopVectorize/widen-intrinsic.ll
M llvm/test/Transforms/MemCpyOpt/memset-memmove-redundant-memmove.ll
A llvm/test/Transforms/MergeFunc/callgraph-function-merging.ll
A llvm/test/Transforms/MergeFunc/merge-functions-entry-count-alias.ll
A llvm/test/Transforms/MergeFunc/merge-functions-entry-count-no-alias.ll
M llvm/test/Transforms/MergeFunc/vector.ll
M llvm/test/Transforms/ObjCARC/rv.ll
M llvm/test/Transforms/PGOProfile/Inputs/thinlto_indirect_call_promotion.profraw
M llvm/test/Transforms/PGOProfile/comdat_internal.ll
M llvm/test/Transforms/PGOProfile/instrprof_burst_sampling_fast.ll
M llvm/test/Transforms/PGOProfile/vtable_profile.ll
M llvm/test/Transforms/PhaseOrdering/X86/horizontal-reduce-add.ll
A llvm/test/Transforms/SLPVectorizer/X86/add-sub-nsw-intmin.ll
M llvm/test/Transforms/SLPVectorizer/X86/masked-stores.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduction-copyable-reused-scalars.ll
A llvm/test/Transforms/SandboxVectorizer/region_pass_arg.ll
A llvm/test/Transforms/SimplifyCFG/DirectX/no-phi-dxgetpointer.ll
M llvm/test/Transforms/SimplifyCFG/DirectX/no-sink-dxgetpointer.ll
A llvm/test/Transforms/SimplifyCFG/SPIRV/no-sink-spvgetpointer.ll
M llvm/test/Transforms/SimplifyCFG/merge-callee-type-metadata.ll
M llvm/test/Transforms/VectorCombine/AMDGPU/shuffles-of-length-changing-shuffles.ll
M llvm/test/Transforms/VectorCombine/X86/extract-cmp-binop.ll
M llvm/test/Verifier/anyptr-bad.ll
M llvm/test/Verifier/callbr.ll
M llvm/test/Verifier/callee-type-metadata.ll
M llvm/test/Verifier/get-active-lane-mask.ll
M llvm/test/Verifier/intrinsic-bad-arg-type1.ll
M llvm/test/Verifier/masked-load-store.ll
M llvm/test/Verifier/matrix-intrinsics.ll
M llvm/test/Verifier/reduction-intrinsics.ll
M llvm/test/Verifier/scatter_gather.ll
M llvm/test/Verifier/stepvector-intrinsic.ll
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/lanai_generated_funcs.ll.generated.expected
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/lanai_generated_funcs.ll.nogenerated.expected
M llvm/test/tools/llc/new-pm/machine-function-properties.mir
A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-compare-logical-elements.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-print-basic-details.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-select-logical-elements.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/02-ir-logical-lines.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/03-ir-incorrect-lexical-scope-typedef.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/04-ir-missing-nested-enumerators.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/05-ir-incorrect-lexical-scope-variable.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/06-ir-full-logical-view.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/07-ir-debug-formats.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/08-ir-multiple-compile-units.test
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-1.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-2.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-3.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/hello-world-clang.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-43860-clang.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-44884-clang.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-46466-clang.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/test-clang-intrinsics.ll
A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/test-clang.ll
A llvm/test/tools/llvm-dwp/X86/abbrev_code_not_found.s
A llvm/test/tools/llvm-dwp/X86/implicit_const.s
A llvm/test/tools/llvm-dwp/X86/implicit_const_dwo_id.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-basic-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-bf16-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-complxnum-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-flag-manipulation-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-fp16fml-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-fptoint-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-i8mm-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-mte-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-neon-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-rcpc-immo-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sme-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-cme-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-sme-only-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Inputs/sme-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-cme-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-sme-only-instructions.s
A llvm/test/tools/llvm-mca/X86/C864GM8/independent-load-stores.s
A llvm/test/tools/llvm-mca/X86/C864GM8/partially-overlapping-group-resources.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-adx.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-aes.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx1.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx2.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512bitalg.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512bitalgvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512bw.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512bwvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512cd.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512cdvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512dq.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512dqvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512gfni.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512gfnivl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512ifma.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512ifmavl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vaes.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vaesvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vbmi.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vbmi2.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vbmi2vl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vbmivl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vnni.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vnnivl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vp2intersect.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vp2intersectvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vpclmulqdq.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vpclmulqdqvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vpopcntdq.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vpopcntdqvl.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avxgfni.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avxvnni.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-bmi1.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-bmi2.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-clflushopt.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-clwb.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-cmov.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-cmpxchg.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-f16c.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-fma.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-fsgsbase.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-gfni.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-lea.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-lzcnt.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-mmx.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-movbe.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-mwaitx.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-pclmul.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-popcnt.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-prefetchw.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-rdrand.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-rdseed.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sha.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-shstk.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse1.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse2.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse3.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse41.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse42.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse4a.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-ssse3.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-vaes.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-vpclmulqdq.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-x86_32.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-x86_64.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-x87.s
A llvm/test/tools/llvm-mca/X86/C864GM8/resources-xsave.s
A llvm/test/tools/llvm-mca/X86/C864GM8/zero-idioms.s
M llvm/test/tools/llvm-objdump/ELF/AMDGPU/subtarget.ll
R llvm/test/tools/llvm-objdump/Offloading/fatbin-magic-collision.test
M llvm/test/tools/llvm-profdata/Inputs/c-general.profraw
M llvm/test/tools/llvm-profdata/Inputs/compressed.profraw
M llvm/test/tools/llvm-profdata/binary-ids-padding.test
M llvm/test/tools/llvm-profdata/large-binary-id-size.test
M llvm/test/tools/llvm-profdata/malformed-not-space-for-another-header.test
M llvm/test/tools/llvm-profdata/malformed-num-counters-zero.test
M llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
A llvm/test/tools/llvm-profdata/malformed-uniform-counter-array.test
M llvm/test/tools/llvm-profdata/misaligned-binary-ids-size.test
M llvm/test/tools/llvm-profdata/mismatched-raw-profile-header.test
M llvm/test/tools/llvm-profdata/profile-version.test
M llvm/test/tools/llvm-profdata/raw-32-bits-be.test
M llvm/test/tools/llvm-profdata/raw-32-bits-le.test
M llvm/test/tools/llvm-profdata/raw-64-bits-be.test
M llvm/test/tools/llvm-profdata/raw-64-bits-le.test
M llvm/test/tools/llvm-profdata/raw-two-profiles.test
A llvm/test/tools/llvm-readobj/COFF/arm64x-hybridobj.yaml
M llvm/test/tools/llvm-readobj/ELF/AMDGPU/elf-headers.test
M llvm/tools/llvm-debuginfo-analyzer/CMakeLists.txt
M llvm/tools/llvm-jitlink/CMakeLists.txt
M llvm/tools/llvm-mca/llvm-mca.cpp
M llvm/tools/llvm-profdata/llvm-profdata.cpp
M llvm/tools/llvm-rc/ResourceFileWriter.cpp
M llvm/tools/llvm-readobj/llvm-readobj.cpp
M llvm/unittests/ADT/StringExtrasTest.cpp
M llvm/unittests/CodeGen/MFCommon.inc
M llvm/unittests/DebugInfo/DWARF/DWARFDebugAbbrevTest.cpp
M llvm/unittests/DebugInfo/LogicalView/CMakeLists.txt
A llvm/unittests/DebugInfo/LogicalView/IRReaderTest.cpp
M llvm/unittests/DebugInfo/LogicalView/Inputs/README.md
A llvm/unittests/DebugInfo/LogicalView/Inputs/test-clang.bc
A llvm/unittests/DebugInfo/LogicalView/Inputs/test-clang.ll
M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
A llvm/unittests/ExecutionEngine/Orc/InProcessEPCTest.cpp
M llvm/unittests/IR/VerifierTest.cpp
M llvm/unittests/ProfileData/InstrProfTest.cpp
M llvm/unittests/Target/SPIRV/CMakeLists.txt
A llvm/unittests/Target/SPIRV/SPIRVModuleAnalysisTests.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
M llvm/unittests/TargetParser/TripleTest.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/CMakeLists.txt
A llvm/unittests/Transforms/Vectorize/SandboxVectorizer/PassBuilderTest.cpp
M llvm/utils/TableGen/AsmMatcherEmitter.cpp
M llvm/utils/TableGen/Basic/ARMTargetDefEmitter.cpp
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.cpp
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.h
M llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
M llvm/utils/TableGen/CompressInstEmitter.cpp
M llvm/utils/TableGen/RegisterInfoEmitter.cpp
M llvm/utils/TableGen/SearchableTableEmitter.cpp
M llvm/utils/TableGen/SubtargetEmitter.cpp
M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Core/BUILD.gn
M llvm/utils/gn/secondary/compiler-rt/test/builtins/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/Target/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/Lanai/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/NVPTX/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/ExecutionEngine/Orc/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Target/SPIRV/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Transforms/Vectorize/SandboxVectorizer/BUILD.gn
M llvm/utils/lit/lit/builtin_commands/cat.py
M llvm/utils/lit/lit/builtin_commands/diff.py
M llvm/utils/profcheck-xfail.txt
M llvm/utils/release/clear-release-notes.py
M mlir/CMakeLists.txt
M mlir/cmake/modules/AddMLIRPython.cmake
M mlir/docs/Passes.md
M mlir/include/mlir-c/Rewrite.h
M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
M mlir/include/mlir/Dialect/CMakeLists.txt
R mlir/include/mlir/Dialect/LLVMIR/Transforms/OptimizeForNVVM.h
M mlir/include/mlir/Dialect/LLVMIR/Transforms/Passes.h
M mlir/include/mlir/Dialect/LLVMIR/Transforms/Passes.td
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
A mlir/include/mlir/Dialect/NVVM/CMakeLists.txt
A mlir/include/mlir/Dialect/NVVM/Transforms/CMakeLists.txt
A mlir/include/mlir/Dialect/NVVM/Transforms/OptimizeForNVVM.h
A mlir/include/mlir/Dialect/NVVM/Transforms/Passes.h
A mlir/include/mlir/Dialect/NVVM/Transforms/Passes.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
M mlir/include/mlir/Dialect/Vector/Transforms/LoweringPatterns.h
M mlir/include/mlir/IR/CommonTypeConstraints.td
M mlir/lib/CAPI/Transforms/Rewrite.cpp
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
M mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/lib/Dialect/Arith/IR/ArithDialect.cpp
M mlir/lib/Dialect/Arith/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/lib/Dialect/Bufferization/Transforms/CMakeLists.txt
A mlir/lib/Dialect/Bufferization/Transforms/StaticMemoryPlannerAnalysis.cpp
M mlir/lib/Dialect/CMakeLists.txt
M mlir/lib/Dialect/LLVMIR/Transforms/CMakeLists.txt
R mlir/lib/Dialect/LLVMIR/Transforms/OptimizeForNVVM.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
A mlir/lib/Dialect/NVVM/CMakeLists.txt
A mlir/lib/Dialect/NVVM/Transforms/CMakeLists.txt
A mlir/lib/Dialect/NVVM/Transforms/OptimizeForNVVM.cpp
M mlir/lib/Dialect/OpenACC/IR/OpenACCCG.cpp
M mlir/lib/Dialect/OpenACC/Transforms/ACCComputeLowering.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorStep.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/lib/RegisterAllPasses.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/CAPI/rewrite.c
M mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
A mlir/test/Conversion/SCFToSPIRV/index-switch.mlir
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
M mlir/test/Dialect/Arith/value-bounds-op-interface-impl.mlir
A mlir/test/Dialect/Bufferization/Transforms/static-memory-planner-analysis.mlir
A mlir/test/Dialect/Bufferization/Transforms/static-memory-planner-arena-arg.mlir
M mlir/test/Dialect/Linalg/transform-op-rewrite-in-destination-passing-style.mlir
M mlir/test/Dialect/MemRef/ops.mlir
M mlir/test/Dialect/OpenACC/acc-compute-lowering-compute.mlir
M mlir/test/Dialect/OpenACC/acc-compute-lowering-loop.mlir
M mlir/test/Dialect/OpenACC/invalid-cg.mlir
M mlir/test/Dialect/SparseTensor/invalid.mlir
A mlir/test/Dialect/SparseTensor/sparse_tensor_codegen_expand.mlir
M mlir/test/Dialect/Tosa/availability.mlir
M mlir/test/Dialect/Vector/canonicalize/vector-step.mlir
M mlir/test/Dialect/Vector/int-range-interface.mlir
M mlir/test/Dialect/Vector/invalid.mlir
M mlir/test/Dialect/Vector/ops.mlir
A mlir/test/Dialect/Vector/vector-step-lowering.mlir
M mlir/test/Dialect/XeGPU/propagate-layout.mlir
A mlir/test/Target/LLVMIR/openmp-taskloop-charbox.mlir
M mlir/utils/pygments/mlir_lexer.py
M offload/CMakeLists.txt
M offload/libomptarget/OpenMP/API.cpp
M offload/libomptarget/interface.cpp
M offload/libomptarget/omptarget.cpp
M offload/libomptarget/private.h
M offload/plugins-nextgen/common/include/GlobalHandler.h
M offload/plugins-nextgen/common/src/GlobalHandler.cpp
M offload/plugins-nextgen/common/src/Utils/ELF.cpp
M offload/test/api/omp_device_uid.c
M offload/test/api/omp_host_pinned_memory.c
M offload/test/api/omp_target_memcpy_async1.c
M offload/test/api/omp_target_memcpy_async2.c
M offload/test/api/omp_target_memcpy_rect_async1.c
M offload/test/api/omp_target_memcpy_rect_async2.c
M offload/test/api/omp_target_memset.c
M openmp/CMakeLists.txt
M openmp/docs/SupportAndFAQ.rst
M openmp/runtime/CMakeLists.txt
M orc-rt/CMakeLists.txt
M orc-rt/include/CMakeLists.txt
M orc-rt/include/orc-rt/CallableTraitsHelper.h
M orc-rt/include/orc-rt/Error.h
A orc-rt/include/orc-rt/StandaloneMachOUnwindInfoRegistrar.h
M orc-rt/include/orc-rt/WrapperFunction.h
A orc-rt/include/orc-rt/sps-ci/StandaloneMachOUnwindInfoRegistrarSPSCI.h
M orc-rt/lib/executor/CMakeLists.txt
A orc-rt/lib/executor/StandaloneMachOUnwindInfoRegistrar.cpp
A orc-rt/lib/executor/sps-ci/StandaloneMachOUnwindInfoRegistrarSPSCI.cpp
M orc-rt/unittests/CMakeLists.txt
M orc-rt/unittests/CallableTraitsHelperTest.cpp
M orc-rt/unittests/ErrorExceptionInteropTest.cpp
A orc-rt/unittests/StandaloneMachOUnwindInfoRegistrarTest.cpp
M polly/CMakeLists.txt
M runtimes/CMakeLists.txt
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/docs/llvm_sphinx/__init__.py
A utils/docs/llvm_sphinx/ext/mlir_pygments.py
Log Message:
-----------
Merge branch 'main' into users/pierre-vh/remove-vmemtypes
Compare: https://github.com/llvm/llvm-project/compare/7d409e71fd7a...cb95bffbb023
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