[all-commits] [llvm/llvm-project] 5cfcd9: [cmake] Reenable FatLTO for Fuchsia toolchains
Alexey Bataev via All-commits
all-commits at lists.llvm.org
Fri Mar 22 11:34:53 PDT 2024
Branch: refs/heads/users/alexey-bataev/spr/slpbuildvector-for-alternate-instructions-with-non-profitable-gather
Home: https://github.com/llvm/llvm-project
Commit: 5cfcd9bc13ac0f1be519e2e2d69276c82cbba3b9
https://github.com/llvm/llvm-project/commit/5cfcd9bc13ac0f1be519e2e2d69276c82cbba3b9
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/cmake/caches/Fuchsia-stage2.cmake
Log Message:
-----------
[cmake] Reenable FatLTO for Fuchsia toolchains
We can reenable this now that FatLTO won't be enabled for Mac platforms
Pull Request: https://github.com/llvm/llvm-project/pull/85709
Commit: e3030f1e1958a2be51822bacce764395c16e682a
https://github.com/llvm/llvm-project/commit/e3030f1e1958a2be51822bacce764395c16e682a
Author: Alfie Richards <alfie.richards at arm.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAddressingModes.h
M llvm/test/MC/ARM/basic-arm-instructions.s
Log Message:
-----------
[ARM] FIX: Fix parsing `pkhtb` with a condition code
This was broken by https://github.com/llvm/llvm-project/pull/83436 as in
optional operands meant when the CC operand is provided the
`parsePKHImm` parser is applied to register operands, which previously
erroneously produced an error.
Commit: 31f4b329c8234fab9afa59494d7f8bdaeaefeaad
https://github.com/llvm/llvm-project/commit/31f4b329c8234fab9afa59494d7f8bdaeaefeaad
Author: quic-areg <aregmi at quicinc.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
A clang/test/Driver/hexagon-default-build-attributes.s
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/include/llvm/Object/ELFObjectFile.h
A llvm/include/llvm/Support/HexagonAttributeParser.h
A llvm/include/llvm/Support/HexagonAttributes.h
M llvm/lib/Object/ELF.cpp
M llvm/lib/Object/ELFObjectFile.cpp
M llvm/lib/ObjectYAML/ELFYAML.cpp
M llvm/lib/Support/CMakeLists.txt
A llvm/lib/Support/HexagonAttributeParser.cpp
A llvm/lib/Support/HexagonAttributes.cpp
M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.h
M llvm/lib/Target/Hexagon/HexagonTargetStreamer.h
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCELFStreamer.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.h
A llvm/test/CodeGen/Hexagon/build-attributes.ll
A llvm/test/MC/Hexagon/directive-attribute-err.s
A llvm/test/MC/Hexagon/directive-attribute.s
A llvm/test/MC/Hexagon/hexagon_attributes.s
M llvm/test/tools/llvm-readobj/ELF/machine-specific-section-types.test
M llvm/tools/llvm-readobj/ELFDumper.cpp
Log Message:
-----------
[Hexagon] ELF attributes for Hexagon (#85359)
Defines a subset of attributes and emits them to a section called
.hexagon.attributes.
The current attributes recorded are the attributes needed by
llvm-objdump to automatically determine target features and eliminate
the need to manually pass features.
Commit: 73302d3ca4c59db9ddd963d132ba07eb6e2f23e7
https://github.com/llvm/llvm-project/commit/73302d3ca4c59db9ddd963d132ba07eb6e2f23e7
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
Log Message:
-----------
[gn build] Port 31f4b329c823
Commit: 1678785ffc468cdd90adaa0a6806a34630b73e7b
https://github.com/llvm/llvm-project/commit/1678785ffc468cdd90adaa0a6806a34630b73e7b
Author: Michael Jones <michaelrj at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/__support/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/math/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/math/libc_math_test_rules.bzl
Log Message:
-----------
[libc][bazel] unglob libc macros (#85831)
In a previous patch an "internal_includes" target was created to give
access to the macro headers. This patch removes that in favor of
individual targets for these headers, better matching the existing code.
Commit: 23047dfbf1cffa4f060d5211bef43312b3bf9bc9
https://github.com/llvm/llvm-project/commit/23047dfbf1cffa4f060d5211bef43312b3bf9bc9
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/test/Transforms/InstCombine/icmp-and-lowbit-mask.ll
Log Message:
-----------
[InstCombine] Add more tests for simplifying `(icmp (and/or x, Mask), y)`; NFC
Commit: b60cf84e0965ac12b83494f803ea0dd6dec0db77
https://github.com/llvm/llvm-project/commit/b60cf84e0965ac12b83494f803ea0dd6dec0db77
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/icmp-and-lowbit-mask.ll
Log Message:
-----------
[InstCombine] Add more cases for simplifying `(icmp (and/or x, Mask), y)`
This cleans up basically all the regressions assosiated from #84688
Proof of all new cases: https://alive2.llvm.org/ce/z/5yYWLb
Closes #85445
Commit: ebd13796639ea7015b3672ff179612ee7d897bf9
https://github.com/llvm/llvm-project/commit/ebd13796639ea7015b3672ff179612ee7d897bf9
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
A llvm/test/CodeGen/X86/int-to-fp-demanded.ll
Log Message:
-----------
[DAGCombiner] Add tests for simplifying `{si|ui}tofp`; NFC
Commit: 353fbeb0a294d2c7cef6d88607fa0fd50ee81462
https://github.com/llvm/llvm-project/commit/353fbeb0a294d2c7cef6d88607fa0fd50ee81462
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/X86/combine-sse41-intrinsics.ll
M llvm/test/CodeGen/X86/int-to-fp-demanded.ll
Log Message:
-----------
[DAGCombiner] Simplifying `{si|ui}tofp` when only signbit is needed
If we only need the signbit `uitofp` simplified to 0, and `sitofp`
simplifies to `bitcast`.
Closes #85138
Commit: 888e2849036c7a216dd6208a2fe5a59393d4767a
https://github.com/llvm/llvm-project/commit/888e2849036c7a216dd6208a2fe5a59393d4767a
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
A llvm/test/CodeGen/NVPTX/bswap.ll
Log Message:
-----------
[NVPTX] Use PTX prmt for llvm.bswap (#85545)
Commit: 35bf8e798dc61aee9fcfbc0b162169295d1ce290
https://github.com/llvm/llvm-project/commit/35bf8e798dc61aee9fcfbc0b162169295d1ce290
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/include/llvm/Support/LEB128.h
M llvm/unittests/Support/LEB128Test.cpp
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[Support] Add decodeULEB128AndInc/decodeSLEB128AndInc
Many decodeULEB128/decodeSLEB128 users need to increment the pointer.
Add helpers to simplify this common pattern. We don't add `end` and
`error` parameters at present because many users don't need them.
Pull Request: https://github.com/llvm/llvm-project/pull/85739
Commit: e28d3e9b4e5779028a38ca39ed060938ff62c498
https://github.com/llvm/llvm-project/commit/e28d3e9b4e5779028a38ca39ed060938ff62c498
Author: Florian Mayer <fmayer at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
Log Message:
-----------
[NFC] [hwasan] factor get[PC|FP] out of HWASan class (#84404)
Also be consistent about naming SP / FP.
This is to prepare for stack history buffer for memtag-stack
Commit: b5d02bbd0d9595501597ddbcf93ac51b160fc8bf
https://github.com/llvm/llvm-project/commit/b5d02bbd0d9595501597ddbcf93ac51b160fc8bf
Author: dhruvachak <Dhruva.Chakrabarti at amd.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/test/OpenMP/bug60602.cpp
M clang/test/OpenMP/distribute_codegen.cpp
M clang/test/OpenMP/distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_num_threads_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_num_threads_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/distribute_private_codegen.cpp
M clang/test/OpenMP/distribute_simd_codegen.cpp
M clang/test/OpenMP/distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_simd_private_codegen.cpp
M clang/test/OpenMP/distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/map_struct_ordering.cpp
M clang/test/OpenMP/nvptx_lambda_capturing.cpp
M clang/test/OpenMP/reduction_implicit_map.cpp
M clang/test/OpenMP/target_codegen_global_capture.cpp
M clang/test/OpenMP/target_firstprivate_codegen.cpp
M clang/test/OpenMP/target_has_device_addr_codegen.cpp
M clang/test/OpenMP/target_has_device_addr_codegen_01.cpp
M clang/test/OpenMP/target_is_device_ptr_codegen.cpp
M clang/test/OpenMP/target_map_codegen_03.cpp
M clang/test/OpenMP/target_map_codegen_hold.cpp
M clang/test/OpenMP/target_map_deref_array_codegen.cpp
M clang/test/OpenMP/target_map_member_expr_codegen.cpp
M clang/test/OpenMP/target_offload_mandatory_codegen.cpp
M clang/test/OpenMP/target_ompx_dyn_cgroup_mem_codegen.cpp
M clang/test/OpenMP/target_parallel_codegen.cpp
M clang/test/OpenMP/target_parallel_for_codegen.cpp
M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-2.cpp
M clang/test/OpenMP/target_parallel_generic_loop_uses_allocators_codegen.cpp
M clang/test/OpenMP/target_parallel_if_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_codegen.cpp
M clang/test/OpenMP/target_task_affinity_codegen.cpp
M clang/test/OpenMP/target_teams_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_teams_generic_loop_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_if_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_uses_allocators_codegen.cpp
M clang/test/OpenMP/target_teams_map_codegen.cpp
M clang/test/OpenMP/target_teams_num_teams_codegen.cpp
M clang/test/OpenMP/target_teams_thread_limit_codegen.cpp
M clang/test/OpenMP/teams_codegen.cpp
M clang/test/OpenMP/teams_distribute_codegen.cpp
M clang/test/OpenMP/teams_distribute_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_copyin_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_num_threads_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_num_threads_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/teams_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/teams_generic_loop_collapse_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_reduction_codegen.cpp
M clang/test/OpenMP/teams_private_codegen.cpp
M llvm/include/llvm/Frontend/OpenMP/OMPConstants.h
M openmp/libomptarget/plugins-nextgen/common/include/PluginInterface.h
M openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
M openmp/libomptarget/src/interface.cpp
M openmp/libomptarget/src/omptarget.cpp
Log Message:
-----------
[OpenMP] Increment kernel args version, used by runtime for detecting dyn_ptr. (#85363)
A kernel implicit parameter (dyn_ptr) was introduced some time back.
This patch increments the kernel args version for a compiler supporting
dyn_ptr. The version will be used by the runtime to determine whether
the implicit parameter is generated by the compiler. The versioning is
required to support use cases where code generated by an older compiler
is linked with a newer runtime.
If approved, this patch should be backported to release 18.
Commit: 1bab88df075d87dd66e8a54d88d16f8540452b8f
https://github.com/llvm/llvm-project/commit/1bab88df075d87dd66e8a54d88d16f8540452b8f
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M lld/ELF/Driver.cpp
Log Message:
-----------
[ELF] Move some operations from link to setConfigs. NFC
Commit: 12a2bc301fe83eea3b214428827d712c8cfb28a9
https://github.com/llvm/llvm-project/commit/12a2bc301fe83eea3b214428827d712c8cfb28a9
Author: Lei Wang <wlei at fb.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Transforms/IPO/SampleProfile.cpp
A llvm/test/Transforms/SampleProfile/Inputs/csspgo-import-list-preinliner.prof
A llvm/test/Transforms/SampleProfile/csspgo-import-list-preinliner.ll
Log Message:
-----------
[CSSPGO] Fix the issue of preinliner import function list (#85719)
By design, when the nested profile is pre-inliner based, we should fully
honor pre-inliner decision, fix it by setting threshold to zero. We
observed a perf win on one internal service, no negative impact for
other big services.
Commit: f2bb6fb0ca0bfbaf39d9b8039df22b6918ac99b6
https://github.com/llvm/llvm-project/commit/f2bb6fb0ca0bfbaf39d9b8039df22b6918ac99b6
Author: Jeremy Kun <jkun at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/docs/GettingInvolved.rst
Log Message:
-----------
Add Maksim and me to office hours (#85824)
Followup from
https://discourse.llvm.org/t/extending-an-invitation-to-compiler-newbies-compilers-coffee/77776
Commit: 4bf06bebb9d34bb7e3e025442dd0c1cb4e9d3911
https://github.com/llvm/llvm-project/commit/4bf06bebb9d34bb7e3e025442dd0c1cb4e9d3911
Author: Jiahan Xie <88367305+jiahanxie353 at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
A llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/vec-ld.ll
Log Message:
-----------
[GISEL][RISCV] IRTranslator for scalable vector load (#80006)
Add IRTranslator for scalable vector load instruction and include
corresponding tests with alignment argument included, which can be
smaller/equal/larger than element size or smaller/equal/larger than the
minimum total vector size.
Commit: 36146d2b6be53e5e98dee3c1fce8699db9615728
https://github.com/llvm/llvm-project/commit/36146d2b6be53e5e98dee3c1fce8699db9615728
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
Log Message:
-----------
[ELF] Make LinkerDrive::link a template. NFC
This avoids many invokeELFT in `link`.
Commit: 595280af561fdba156efbdd654ed4076855aac9c
https://github.com/llvm/llvm-project/commit/595280af561fdba156efbdd654ed4076855aac9c
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Support/CMakeLists.txt
M llvm/lib/Support/CommandLine.cpp
Log Message:
-----------
Revert "[llvm] Include LLVM_REPOSITORY and LLVM_REVISION in tool version" (#85879)
Reverts llvm/llvm-project#84990 because this causes a full rebuild after
the commit hash changes.
Commit: 22ac5f743811ae1e5004fdd43be556ebbd0496d1
https://github.com/llvm/llvm-project/commit/22ac5f743811ae1e5004fdd43be556ebbd0496d1
Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M mlir/lib/Conversion/MemRefToLLVM/CMakeLists.txt
Log Message:
-----------
[MLIR] Add missing MLIRFuncDialect dep to MLIRMemRefToLLVM (#84546)
This fixes the following failure when doing a clean build (in particular
no .ninja* lying around) of lib/libMLIRMemRefToLLVM.a only:
```
In file included from mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp:18:
mlir/include/mlir/Dialect/Func/IR/FuncOps.h:29:10: fatal error: mlir/Dialect/Func/IR/FuncOps.h.inc: No such file or directory
```
Commit: f5f3d5d6534f0a38c771119653dac3330c9f207f
https://github.com/llvm/llvm-project/commit/f5f3d5d6534f0a38c771119653dac3330c9f207f
Author: Qizhi Hu <836744285 at qq.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/TreeTransform.h
A clang/test/Sema/PR85343.cpp
Log Message:
-----------
[Clang][Sema] Fix a crash in lambda instantiation (#85565)
Fix https://github.com/llvm/llvm-project/issues/85343
When build lambda expression in lambda instantiation, `ThisType` is
required in `Sema::CheckCXXThisCapture` to build `this` capture. Set
`this` type by import `Sema::CXXThisScopeRAII` and it will be used later
in lambda expression transformation.
Co-authored-by: huqizhi <836744285 at qq.com>
Commit: e2fa90fa0a4b7950dd0d7fae6933e89c075d0af0
https://github.com/llvm/llvm-project/commit/e2fa90fa0a4b7950dd0d7fae6933e89c075d0af0
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M lldb/include/lldb/API/SBTarget.h
Log Message:
-----------
[lldb/API] Add missing `eBroadcastBitSymbolsChanged` to SBTarget (NFC) (#85883)
This patch exposes the missing `eBroadcastBitSymbolsChanged` event bit
in `SBTarget`.
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
Commit: a289f66efd638c2af14cdb88968e4eaeea0c0605
https://github.com/llvm/llvm-project/commit/a289f66efd638c2af14cdb88968e4eaeea0c0605
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M lldb/include/lldb/Core/Disassembler.h
M lldb/include/lldb/Symbol/LineEntry.h
M lldb/include/lldb/Utility/SupportFile.h
M lldb/source/API/SBLineEntry.cpp
M lldb/source/API/SBThread.cpp
M lldb/source/Breakpoint/BreakpointResolver.cpp
M lldb/source/Breakpoint/BreakpointResolverFileLine.cpp
M lldb/source/Commands/CommandObjectBreakpoint.cpp
M lldb/source/Commands/CommandObjectSource.cpp
M lldb/source/Commands/CommandObjectThread.cpp
M lldb/source/Core/Address.cpp
M lldb/source/Core/Disassembler.cpp
M lldb/source/Core/FormatEntity.cpp
M lldb/source/Core/IOHandlerCursesGUI.cpp
M lldb/source/Core/SourceManager.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
M lldb/source/Symbol/CompileUnit.cpp
M lldb/source/Symbol/Function.cpp
M lldb/source/Symbol/LineEntry.cpp
M lldb/source/Symbol/LineTable.cpp
M lldb/source/Symbol/SymbolContext.cpp
M lldb/source/Target/StackFrame.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/source/Target/Thread.cpp
M lldb/source/Target/TraceDumper.cpp
Log Message:
-----------
Revert "[lldb] Store SupportFile in FileEntry (NFC)" (#85885)
Reverts llvm/llvm-project#85468 because @slackito reports this broke
stepping in one of their tests [1] and this patch was meant to be NFC.
[1]
https://github.com/llvm/llvm-project/commit/d5a277d309e92b1d3e493da6036cffdf815105b1#commitcomment-139991120
Commit: 6f31cf51dfdc2c317ba8149d57d2ffb583403833
https://github.com/llvm/llvm-project/commit/6f31cf51dfdc2c317ba8149d57d2ffb583403833
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/QualifierAlignmentFixer.cpp
M clang/lib/Format/QualifierAlignmentFixer.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/TokenAnnotator.h
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
Revert "[clang-format][NFC] Eliminate the IsCpp parameter in all functions (#84599)"
This reverts c3a1eb6207d8 (and the related commit f3c5278efa3b) which makes
cleanupAroundReplacements() no longer thread-safe.
Commit: 456c239d775e10a68c65cd9d461bb47e651ccbe5
https://github.com/llvm/llvm-project/commit/456c239d775e10a68c65cd9d461bb47e651ccbe5
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M lld/ELF/Arch/PPC64.cpp
Log Message:
-----------
[ELF] Set ctx.internalFile for PPC64 _savegpr[01]_{14..31} and _restgpr[01]_{14..31}. NFC
Ensure that every InputFile has a non-null file so that we enforce this
in the future.
Commit: 09db84cc5910a3546ab5b9410c295d93ed3e95cf
https://github.com/llvm/llvm-project/commit/09db84cc5910a3546ab5b9410c295d93ed3e95cf
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M lld/ELF/InputSection.cpp
Log Message:
-----------
[ELF] Remove unneeded null check in getRelocatedSection. NFC
Commit: de159aeca95edc38ddd4d729ea91b4b8160d9b83
https://github.com/llvm/llvm-project/commit/de159aeca95edc38ddd4d729ea91b4b8160d9b83
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
A llvm/test/DebugInfo/NVPTX/no-extra-loc.ll
Log Message:
-----------
[NVPTX][DebugInfo] avoid emitting extra .loc directives (#84584)
This change removes an extra, unneeded debug directive emitted in the
PTX at the beginning on non-empty functions:
```nvptx
.visible .func (.param .b32 func_retval0) foo(
.param .b32 foo_param_0,
.param .b32 foo_param_1
)
{
.reg .b32 %r<4>;
.loc 1 26 0 <---- unneeded (removed by the PR)
$L__func_begin0:
.loc 1 26 0
```
Commit: 936519f25cb4fabc19f1241e838e938926801156
https://github.com/llvm/llvm-project/commit/936519f25cb4fabc19f1241e838e938926801156
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/include/clang/AST/Availability.h
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticInstallAPIKinds.td
M clang/include/clang/InstallAPI/DylibVerifier.h
M clang/include/clang/InstallAPI/Frontend.h
M clang/include/clang/InstallAPI/MachO.h
M clang/lib/AST/Availability.cpp
M clang/lib/InstallAPI/DylibVerifier.cpp
M clang/lib/InstallAPI/Visitor.cpp
A clang/test/InstallAPI/availability.test
A clang/test/InstallAPI/diagnostics-cpp.test
A clang/test/InstallAPI/hiddens.test
M clang/tools/clang-installapi/ClangInstallAPI.cpp
M clang/tools/clang-installapi/Options.cpp
M clang/tools/diagtool/DiagnosticNames.cpp
Log Message:
-----------
[InstallAPI] Verify that declarations in headers map to exports found in dylib (#85348)
* This completes support for verifying every declaration found in a
header is discovered in the dylib. Diagnostics are reported for each
class for differences that are representable in TBD files.
* This patch also now captures unavailable attributes that depend on
target triples. This is needed for proper tbd file generation.
Commit: 0412840ef877b0b4efe117f0328ac57fc669a871
https://github.com/llvm/llvm-project/commit/0412840ef877b0b4efe117f0328ac57fc669a871
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M lld/MachO/ObjC.cpp
Log Message:
-----------
[lld] Fix -Wstring-conversion in ObjC.cpp (NFC)
llvm-project/lld/MachO/ObjC.cpp:617:12:
error: implicit conversion turns string literal into bool: 'const char[55]' to 'bool' [-Werror,-Wstring-conversion]
617 | assert("Tried to read pointer list beyond protocol section end");
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Commit: db7d0ed71c6444bbe710ba107c1601d9c90bfdcc
https://github.com/llvm/llvm-project/commit/db7d0ed71c6444bbe710ba107c1601d9c90bfdcc
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M lldb/unittests/SymbolFile/PDB/SymbolFilePDBTests.cpp
Log Message:
-----------
Revert "[lldb] Update SymbolFilePDBTests for LineEntry change (d5a277d309e9)"
This reverts commit 113214e15b5ce3f3ec313eb1fa91a7038ecd072f as the
corresponding change was reverted in a289f66.
Commit: e7175b07047d1ba7b012f811064091f12ebf8a40
https://github.com/llvm/llvm-project/commit/e7175b07047d1ba7b012f811064091f12ebf8a40
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/test/Driver/hip-partial-link.hip
M clang/test/Driver/hip-runtime-libs-linux.hip
Log Message:
-----------
[HIP] do not link runtime for -r (#85675)
since it will cause duplicate symbols when the partially linked object
is linked again.
Commit: 92b2b49994eb804253db1deeb7e9f63904cd96d1
https://github.com/llvm/llvm-project/commit/92b2b49994eb804253db1deeb7e9f63904cd96d1
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M lldb/include/lldb/Symbol/LineEntry.h
Log Message:
-----------
[lldb] Outline Doxygen comments in LineEntry.h (NFC)
Outline and correct Doxygen comments in LineEntry.
Commit: a29234445ca7162a6db4913ec900fd9aae1fa18e
https://github.com/llvm/llvm-project/commit/a29234445ca7162a6db4913ec900fd9aae1fa18e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
Log Message:
-----------
[RISCV] Refactor code to reduce nesting and remove repeated calls to getOpcode(). NFC (#85847)
Commit: f375aff594d97fc9f6cf2cffb502882833c15cdd
https://github.com/llvm/llvm-project/commit/f375aff594d97fc9f6cf2cffb502882833c15cdd
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/docs/ReleaseNotes.rst
M llvm/lib/Target/RISCV/RISCVSystemOperands.td
M llvm/test/MC/RISCV/rv32-machine-csr-names.s
Log Message:
-----------
[RISCV] Add the CSR names from Smrnmi. (#83370)
Specification is here
https://github.com/riscv/riscv-isa-manual/blob/main/src/rnmi.adoc
CSRs numbers defined here
https://github.com/riscv/riscv-isa-manual/blob/main/src/priv-csrs.adoc
Commit: b2082a98175b0e5356f23bf21d3dc5b76edea390
https://github.com/llvm/llvm-project/commit/b2082a98175b0e5356f23bf21d3dc5b76edea390
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/Format/AffectedRangeManager.cpp
M clang/lib/Format/BreakableToken.cpp
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/DefinitionBlockSeparator.cpp
M clang/lib/Format/FormatToken.cpp
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/MacroCallReconstructor.cpp
M clang/lib/Format/MacroExpander.cpp
M clang/lib/Format/NamespaceEndCommentsFixer.cpp
M clang/lib/Format/ObjCPropertyAttributeOrderFixer.cpp
M clang/lib/Format/QualifierAlignmentFixer.cpp
M clang/lib/Format/SortJavaScriptImports.cpp
M clang/lib/Format/TokenAnalyzer.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UsingDeclarationsSorter.cpp
M clang/lib/Format/WhitespaceManager.cpp
M clang/tools/clang-format/ClangFormat.cpp
Log Message:
-----------
Revert "[clang-format][NFC] Delete 100+ redundant #include lines in .cpp files"
This reverts commit b92d6dd704d789240685a336ad8b25a9f381b4cc. See
github.com/llvm/llvm-project/commit/b92d6dd704d7#commitcomment-139992444
We should use a tool like Visual Studio to clean up the headers.
Commit: 3eb9ff30959a670559bcba03d149d4c51bf7c9c9
https://github.com/llvm/llvm-project/commit/3eb9ff30959a670559bcba03d149d4c51bf7c9c9
Author: Yeoul Na <yeoul_na at apple.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/PropertiesBase.td
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/TypeNodes.td
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Serialization/ASTRecordReader.h
M clang/include/clang/Serialization/ASTRecordWriter.h
M clang/include/clang/Serialization/TypeBitCodes.def
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
A clang/test/Modules/bounds-safety-attributed-type.c
A clang/test/PCH/Inputs/bounds-safety-attributed-type.h
A clang/test/PCH/bounds-safety-attributed-type.c
M clang/test/Sema/attr-counted-by.c
M clang/tools/libclang/CIndex.cpp
Log Message:
-----------
Turn 'counted_by' into a type attribute and parse it into 'CountAttributedType' (#78000)
In `-fbounds-safety`, bounds annotations are considered type attributes
rather than declaration attributes. Constructing them as type attributes
allows us to extend the attribute to apply nested pointers, which is
essential to annotate functions that involve out parameters: `void
foo(int *__counted_by(*out_count) *out_buf, int *out_count)`.
We introduce a new sugar type to support bounds annotated types,
`CountAttributedType`. In order to maintain extra data (the bounds
expression and the dependent declaration information) that is not
trackable in `AttributedType` we create a new type dedicate to this
functionality.
This patch also extends the parsing logic to parse the `counted_by`
argument as an expression, which will allow us to extend the model to
support arguments beyond an identifier, e.g., `__counted_by(n + m)` in
the future as specified by `-fbounds-safety`.
This also adjusts `__bdos` and array-bounds sanitizer code that already
uses `CountedByAttr` to check `CountAttributedType` instead to get the
field referred to by the attribute.
Commit: 4a026b5092d77426b70ab299447af4dbd5a012d9
https://github.com/llvm/llvm-project/commit/4a026b5092d77426b70ab299447af4dbd5a012d9
Author: Peter Rong <peterrong96 at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-break-large-phis.ll
Log Message:
-----------
[AMDGCN] Use ZExt when handling indices in insertment element (#85718)
When i1 true is used as an index, SExt extends it to i32 -1. This would
cause BitVector to overflow.
The language manual have specified that the index shall be treated as an
unsigned number, this patch fixes that.
(https://llvm.org/docs/LangRef.html#insertelement-instruction)
This patch fixes #85717
---------
Signed-off-by: Peter Rong <PeterRong96 at gmail.com>
Commit: c2423024923bae9176eda6cd958217c83955150d
https://github.com/llvm/llvm-project/commit/c2423024923bae9176eda6cd958217c83955150d
Author: Billy Zhu <billyzhu at modular.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.h
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
Log Message:
-----------
[MLIR][LLVM] DI Recursive Type fix for recursion via scope of composites (#85850)
Fixes this bug for the previous recursive DI type PR:
https://github.com/llvm/llvm-project/pull/80251#issuecomment-2007254788.
Drawing inspiration from how clang uses DIBuilder to build forward
decls, this PR changes how placeholders are created & updated. Instead
of requiring each recursive DIType to do in-place mutation, we simply
ask for a temporary node as the placeholder, and run RAUW at the end
when the concrete node is translated.
This has the side effect of simplifying what's needed to add recursion
support for a type. Now only one additional method needs to be created
for exporting. Concretely, for this PR, `translateImpl` for
DICompositeType is back to the state it was before the previous PR, and
the only net addition for DICompositeType is `translateTemporaryImpl`.
---------
Co-authored-by: Tobias Gysi <tobias.gysi at nextsilicon.com>
Commit: 6960ace534c4021301dd5a9933ca06ba96edea23
https://github.com/llvm/llvm-project/commit/6960ace534c4021301dd5a9933ca06ba96edea23
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/test/Headers/__clang_hip_math.hip
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/test/Transforms/InstCombine/add-sitofp.ll
M llvm/test/Transforms/InstCombine/binop-itofp.ll
M llvm/test/Transforms/InstCombine/clamp-to-minmax.ll
M llvm/test/Transforms/InstCombine/fpcast.ll
M llvm/test/Transforms/InstCombine/minmax-fold.ll
M llvm/test/Transforms/InstCombine/minmax-fp.ll
M llvm/test/Transforms/InstCombine/pr27236.ll
M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
M llvm/test/Transforms/LoopVectorize/float-induction.ll
Log Message:
-----------
Revert "[InstCombine] Canonicalize `(sitofp x)` -> `(uitofp x)` if `x >= 0`"
This reverts commit d80d5b923c6f611590a12543bdb33e0c16044d44.
It wasn't a particularly important transform to begin with and caused
some codegen regressions on targets that prefer `sitofp` so dropping.
Might re-visit along with adding `nneg` flag to `uitofp` so its easily
reversable for the backend.
Commit: d7e28cd82bd3141093f96f7ce2e7b36f1b115fad
https://github.com/llvm/llvm-project/commit/d7e28cd82bd3141093f96f7ce2e7b36f1b115fad
Author: YunQiang Su <syq at debian.org>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Arch/Mips.cpp
M clang/test/Driver/mips-features.c
M llvm/lib/Target/Mips/Mips.td
M llvm/lib/Target/Mips/MipsISelLowering.cpp
M llvm/lib/Target/Mips/MipsSEISelLowering.cpp
M llvm/lib/Target/Mips/MipsSubtarget.cpp
M llvm/lib/Target/Mips/MipsSubtarget.h
M llvm/test/CodeGen/Mips/msa/f16-llvm-ir.ll
A llvm/test/CodeGen/Mips/no-unaligned-access-r6.ll
Log Message:
-----------
MIPS: Support -m(no-)unaligned-access for r6 (#85174)
MIPSr6 ISA requires normal load/store instructions support
misunaligned memory access, while it is not always do so
by hardware. On some microarchitectures or some corner cases
it may need support by OS.
Don't confuse with pre-R6's lwl/lwr famlily: MIPSr6 doesn't
support them, instead, r6 requires lw instruction support
misunaligned memory access. So, if -mstrict-align is used for
pre-R6, lwl/lwr won't be disabled.
If -mstrict-align is used for r6 and the access is not well
aligned, some lb/lh instructions will be used to replace lw.
This is useful for OS kernels.
To be back-compatible with GCC, -m(no-)unaligned-access are also
added as Neg-Alias of -m(no-)strict-align.
Commit: d538c5616f4d25c6f50a1285984aba806252ce17
https://github.com/llvm/llvm-project/commit/d538c5616f4d25c6f50a1285984aba806252ce17
Author: Matteo Franciolini <mfranciolini at tesla.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
Log Message:
-----------
[mlir][bufferize] Fix broken implementation of denyDialect (#85881)
The current implementation is not functional and does not compile. The
patch allows to correctly mark a dialect as denied for the purpose of
bufferization.
Commit: 807fd07646646d7f96bd3561e79435b5d7bb4a64
https://github.com/llvm/llvm-project/commit/807fd07646646d7f96bd3561e79435b5d7bb4a64
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
Log Message:
-----------
[clangd] Handle variable templates consistently with class templates in code completion (#85740)
The option --function-arg-placeholders=0 results in placeholders being
omitted for class template argument lists. This patch extends the same
treatment to variable template argument lists.
Fixes https://github.com/clangd/clangd/issues/1976
Commit: 5e78417db5acbcbfb33e6503e97be0734fca0631
https://github.com/llvm/llvm-project/commit/5e78417db5acbcbfb33e6503e97be0734fca0631
Author: Justin Holewinski <jholewinski at nvidia.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/lib/ExecutionEngine/CudaRuntimeWrappers.cpp
Log Message:
-----------
[MLIR][CUDA] Use _alloca instead of alloca on Windows (#85853)
MSVC/Windows does not support `alloca()`; instead it defines `_alloca()`
in `malloc.h`.
Commit: 9848fa4aa2a83b0fc3a93e5f905ef09c8dd85226
https://github.com/llvm/llvm-project/commit/9848fa4aa2a83b0fc3a93e5f905ef09c8dd85226
Author: Krishna Narayanan <84722531+Krishna-13-cyber at users.noreply.github.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Analysis/TargetLibraryInfo.cpp
M llvm/test/Transforms/InstCombine/double-float-shrink-1.ll
M llvm/test/Transforms/InstCombine/pow-1.ll
M llvm/test/Transforms/InstCombine/pow-exp.ll
Log Message:
-----------
Enable exp10 libcall on linux (#68736)
Commit: 756c20561efa1e58bd7d2a6df1499997b6b52e23
https://github.com/llvm/llvm-project/commit/756c20561efa1e58bd7d2a6df1499997b6b52e23
Author: kadir çetinkaya <kadircet at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
A clang/lib/Tooling/Inclusions/Stdlib/CSpecialSymbolMap.inc
M clang/lib/Tooling/Inclusions/Stdlib/StandardLibrary.cpp
M clang/unittests/Tooling/StandardLibraryTest.cpp
Log Message:
-----------
[clang][Tooling] Add special symbol mappings for C, starting with size_t (#85784)
Commit: f0420c7bc67339e080cb2a13b6f3eb824faf9288
https://github.com/llvm/llvm-project/commit/f0420c7bc67339e080cb2a13b6f3eb824faf9288
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
A llvm/test/Transforms/InstCombine/and-or-implied-cond-not.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
Log Message:
-----------
[ValueTracking] Handle `not` in `isImpliedCondition` (#85397)
This patch handles `not` in `isImpliedCondition` to enable more fold in
some multi-use cases.
Commit: 27df1b23e07009b1450ebb2072abac97e2958b07
https://github.com/llvm/llvm-project/commit/27df1b23e07009b1450ebb2072abac97e2958b07
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLPVectorizer] Use TargetFolder (#85800)
Use IRBuilder with TargetFolder in SLPVectorizer to avoid the custom
constant folding code.
This fixes the remaining part of
https://github.com/llvm/llvm-project/issues/61240.
Commit: 4462bb58be7d68274fb9b443b7bf4803306df87d
https://github.com/llvm/llvm-project/commit/4462bb58be7d68274fb9b443b7bf4803306df87d
Author: Christian Sigg <chsigg at users.noreply.github.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[InstallAPI][bazel] Update BUILD after 936519f25cb4fabc19f1241e838e938926801156
Commit: 11dd881b9cca5f70720ead353169603589e6c494
https://github.com/llvm/llvm-project/commit/11dd881b9cca5f70720ead353169603589e6c494
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M libcxx/include/__format/format_arg_store.h
A libcxx/test/std/utilities/format/format.functions/bug_81590.compile.pass.cpp
Log Message:
-----------
[libc++][format] Fixes nested concept evaluation. (#85548)
Before the __formattable concept depended on itself in a contrieved
example. By using the underlying concept directly the cycle is broken.
Fixes https://github.com/llvm/llvm-project/issues/81590
Commit: 272d1b44efdedb68c194970a610f0ca1b7b769c5
https://github.com/llvm/llvm-project/commit/272d1b44efdedb68c194970a610f0ca1b7b769c5
Author: Martin Storsjö <martin at martin.st>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M libcxx/modules/CMakeLists.txt
Log Message:
-----------
[libcxx] [modules] Fix relative paths with absolute LIBCXX_INSTALL_MODULES_DIR (#85756)
In other contexts, install directories such as
LIBCXX_INSTALL_LIBRARY_DIR and LIBCXX_INSTALL_MODULES_DIR can be
specified either as a relative path, relative to CMAKE_INSTALL_PREFIX,
or as an absolute path.
When calculating the relative path between the two, account for the fact
that LIBCXX_INSTALL_MODULES_DIR and LIBCXX_INSTALL_LIBRARY_DIR can be
absolute paths too.
Commit: cf09b7dec463178fbdefc72dc262d209d865c1c9
https://github.com/llvm/llvm-project/commit/cf09b7dec463178fbdefc72dc262d209d865c1c9
Author: Xiaoyang Liu <siujoeng.lau at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M libcxx/docs/Status/Cxx23Issues.csv
M libcxx/include/__ranges/view_interface.h
M libcxx/test/std/ranges/range.utility/view.interface/view.interface.pass.cpp
Log Message:
-----------
[libc++][ranges] LWG3715: `view_interface::empty` is overconstrained (#85004)
## Abstract
This pull request implements LWG3715: `view_interface::empty` is
overconstrained. Here is an example similar to those described in the
report, which compiles with `-stdlib=libstdc++` but failed to compile
with `-stdlib=libc++`:
```cpp
// https://godbolt.org/z/EWEoTzah3
std::istringstream input("1 2 3 4 5");
auto i = std::views::istream<int>(input);
auto r = std::views::counted(i.begin(), 4) | std::views::take(2);
assert(!r.empty());
```
## Reference
- [Draft C++ Standard:
[view.interface.general]](https://eel.is/c++draft/view.interface.general)
- [LWG3715](https://wg21.link/LWG3715)
Commit: 211eebf44fb7076d59c2d683d9211f9d44e50cce
https://github.com/llvm/llvm-project/commit/211eebf44fb7076d59c2d683d9211f9d44e50cce
Author: Xiaoyang Liu <siujoeng.lau at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M libcxx/include/__concepts/class_or_enum.h
M libcxx/include/__ranges/access.h
M libcxx/include/__ranges/data.h
M libcxx/include/__ranges/empty.h
M libcxx/include/__ranges/rbegin.h
M libcxx/include/__ranges/rend.h
M libcxx/include/__ranges/size.h
Log Message:
-----------
[libc++][ranges] remove `__workaround_52970` (#85683)
## Abstract
This pull request removes the `__workaround_52970` concept. This concept
is a workaround for a bug described in #52970, which causes the compiler
to trigger ADL on a pointer to an incomplete type in an SFINAE context.
This bug is fixed in Clang 14.
## Reference
- [[clang] Don't typo-fix an expression in a SFINAE
context](https://reviews.llvm.org/D117603)
- [[libc++] [ranges] ADL-proof the [range.access]
CPOs.](https://reviews.llvm.org/D116239)
Commit: 070d1e83213f0e9eb71582141dd2323131a307e3
https://github.com/llvm/llvm-project/commit/070d1e83213f0e9eb71582141dd2323131a307e3
Author: Pravin Jagtap <prjagtap at amd.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
A llvm/test/CodeGen/AMDGPU/bf16-conversions.ll
Log Message:
-----------
[AMDGPU] Add test for fpext & fptrunc with bf16. (#85909)
Authored-by: Pravin Jagtap <Pravin.Jagtap at amd.com>
Commit: e6b5bd5854c80eac05f415ad282ba84b840b8af8
https://github.com/llvm/llvm-project/commit/e6b5bd5854c80eac05f415ad282ba84b840b8af8
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGenCXX/attr-target-version.cpp
Log Message:
-----------
[FMV] Emit the resolver along with the default version definition. (#84405)
We would like the resolver to be generated eagerly, even if the
versioned function is not called from the current translation
unit. Fixes #81494. It further allows Multi Versioning to work
even if the default target version attribute is omitted from
function declarations.
Commit: 9fd1c4121f7c797ff7222161cb40cd68ecf0fbc8
https://github.com/llvm/llvm-project/commit/9fd1c4121f7c797ff7222161cb40cd68ecf0fbc8
Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/lib/Conversion/LinalgToStandard/CMakeLists.txt
Log Message:
-----------
[MLIR] Add missing MLIRLinalgTransforms to LinalgToStandard conv (#84545)
This fixes the following failure when doing a clean build (in particular
no .ninja* lying around) of lib/libMLIRLinalgToStandard.a only:
```
In file included from mlir/include/mlir/Dialect/Vector/Transforms/VectorTransforms.h:12,
from mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h:21,
from mlir/lib/Conversion/LinalgToStandard/LinalgToStandard.cpp:15:
mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h:20:10: fatal error: mlir/Dialect/Vector/Transforms/VectorTransformsEnums.h.inc: No such file or directory
```
Commit: d03263814aa1a686e5aaca99ab9d87408b2c6cb5
https://github.com/llvm/llvm-project/commit/d03263814aa1a686e5aaca99ab9d87408b2c6cb5
Author: Qiu Chaofan <qiucofan at cn.ibm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/PowerPC/PPCInstrVSX.td
Log Message:
-----------
[PowerPC] Fix operand regclass of XSTSTDCSP
Commit: 1f1e0948f20338961f995426c11497e8f21ceb08
https://github.com/llvm/llvm-project/commit/1f1e0948f20338961f995426c11497e8f21ceb08
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Tools/CLOptions.inc
M flang/lib/Optimizer/Transforms/ControlFlowConverter.cpp
M flang/test/Driver/bbc-mlir-pass-pipeline.f90
M flang/test/Driver/mlir-debug-pass-pipeline.f90
M flang/test/Driver/mlir-pass-pipeline.f90
M flang/test/Fir/array-value-copy-2.fir
M flang/test/Fir/basic-program.fir
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Fir/loop01.fir
M flang/test/Fir/loop02.fir
M flang/test/Lower/OpenMP/FIR/flush.f90
M flang/test/Lower/OpenMP/FIR/master.f90
M flang/test/Lower/OpenMP/FIR/parallel-sections.f90
A flang/test/Transforms/omp-reduction-cfg-conversion.fir
Log Message:
-----------
[flang] run CFG conversion on omp reduction declare ops (#84953)
Most FIR passes only look for FIR operations inside of functions (either
because they run only on func.func or they run on the module but iterate
over functions internally). But there can also be FIR operations inside
of fir.global, some OpenMP and OpenACC container operations.
This has worked so far for fir.global and OpenMP reductions because they
only contained very simple FIR code which doesn't need most passes to be
lowered into LLVM IR. I am not sure how OpenACC works.
In the long run, I hope to see a more systematic approach to making sure
that every pass runs on all of these container operations. I will write
an RFC for this soon.
In the meantime, this pass duplicates the CFG conversion pass to also
run on omp reduction operations. This is similar to how the
AbstractResult pass is already duplicated for fir.global operations.
OpenMP array reductions 2/6
Previous PR: https://github.com/llvm/llvm-project/pull/84952
Next PR: https://github.com/llvm/llvm-project/pull/84954
---------
Co-authored-by: Mats Petersson <mats.petersson at arm.com>
Commit: 1f63a56cede85bcd5f4fea3663bd3a47b801a396
https://github.com/llvm/llvm-project/commit/1f63a56cede85bcd5f4fea3663bd3a47b801a396
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
Log Message:
-----------
[flang][CodeGen] Run PreCGRewrite on omp reduction declare ops (#84954)
OpenMP reduction declare operations can contain FIR code which needs to
be lowered to LLVM. With array reductions, these regions can contain
more complicated operations which need PreCGRewriting. A similar extra
case was already needed for fir::GlobalOp.
OpenMP array reductions 3/6
Previous PR: https://github.com/llvm/llvm-project/pull/84953
Next PR: https://github.com/llvm/llvm-project/pull/84955
Commit: 0f46e31cfbf415fcd3d3ce121bef94e92c6ccfc8
https://github.com/llvm/llvm-project/commit/0f46e31cfbf415fcd3d3ce121bef94e92c6ccfc8
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CGVTT.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/test/CodeGenCXX/RelativeVTablesABI/diamond-virtual-inheritance.cpp
M clang/test/CodeGenCXX/auto-var-init.cpp
M clang/test/CodeGenCXX/const-init-cxx11.cpp
M clang/test/CodeGenCXX/constructor-init.cpp
M clang/test/CodeGenCXX/copy-constructor-synthesis-2.cpp
M clang/test/CodeGenCXX/copy-constructor-synthesis.cpp
M clang/test/CodeGenCXX/dynamic-cast-exact.cpp
M clang/test/CodeGenCXX/microsoft-interface.cpp
M clang/test/CodeGenCXX/skip-vtable-pointer-initialization.cpp
M clang/test/CodeGenCXX/static-init.cpp
M clang/test/CodeGenCXX/strict-vtable-pointers.cpp
M clang/test/CodeGenCXX/visibility.cpp
M clang/test/CodeGenCXX/vtable-assume-load-address-space.cpp
M clang/test/CodeGenCXX/vtable-assume-load.cpp
M clang/test/CodeGenCXX/vtable-pointer-initialization-address-space.cpp
M clang/test/CodeGenCXX/vtable-pointer-initialization.cpp
M clang/test/CodeGenCXX/vtt-address-space.cpp
M clang/test/CodeGenCXX/vtt-layout-address-space.cpp
M clang/test/CodeGenCXX/vtt-layout.cpp
M clang/test/OpenMP/target_data_use_device_ptr_inheritance_codegen.cpp
M lld/test/ELF/lto/Inputs/devirt_validate_vtable_typeinfos_ref.ll
M lld/test/ELF/lto/Inputs/devirt_validate_vtable_typeinfos_undef.ll
M lld/test/ELF/lto/devirt_split_unit_localize.ll
M lld/test/ELF/lto/devirt_validate_vtable_typeinfos_ref.ll
M lld/test/MachO/thinlto-split-unit-start-lib.ll
M llvm/docs/LangRef.rst
M llvm/include/llvm/AsmParser/LLParser.h
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/IR/ConstantFold.h
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/Operator.h
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/ConstantFold.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/ConstantsContext.h
M llvm/lib/IR/Operator.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/lib/Transforms/IPO/GlobalSplit.cpp
M llvm/lib/Transforms/Utils/FunctionComparator.cpp
M llvm/test/Assembler/getelementptr.ll
A llvm/test/Assembler/inrange-errors.ll
M llvm/test/Bitcode/compatibility-4.0.ll
M llvm/test/Bitcode/compatibility-5.0.ll
M llvm/test/Bitcode/compatibility-6.0.ll
M llvm/test/Bitcode/compatibility.ll
M llvm/test/Other/optimize-inrange-gep.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions-base-call.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions-base-pointer-call.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions-derived-call.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions-derived-pointer-call.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions-novfe.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions-visibility-post-lto.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions-visibility-pre-lto.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions.ll
M llvm/test/Transforms/GlobalDCE/vtable-rtti.ll
M llvm/test/Transforms/GlobalSplit/basic.ll
M llvm/test/Transforms/GlobalSplit/non-beneficial.ll
M llvm/test/Transforms/GlobalSplit/nonlocal.ll
M llvm/test/Transforms/Inline/devirtualize-4.ll
M llvm/test/Transforms/InstCombine/fmul.ll
M llvm/test/Transforms/InstSimplify/ConstProp/gep.ll
M llvm/test/Transforms/Internalize/vcall-visibility.ll
M llvm/test/Transforms/MergeFunc/constexpr.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/pr33536.ll
Log Message:
-----------
[IR] Change representation of getelementptr inrange (#84341)
As part of the migration to ptradd
(https://discourse.llvm.org/t/rfc-replacing-getelementptr-with-ptradd/68699),
we need to change the representation of the `inrange` attribute, which
is used for vtable splitting.
Currently, inrange is specified as follows:
```
getelementptr inbounds ({ [4 x ptr], [4 x ptr] }, ptr @vt, i64 0, inrange i32 1, i64 2)
```
The `inrange` is placed on a GEP index, and all accesses must be "in
range" of that index. The new representation is as follows:
```
getelementptr inbounds inrange(-16, 16) ({ [4 x ptr], [4 x ptr] }, ptr @vt, i64 0, i32 1, i64 2)
```
This specifies which offsets are "in range" of the GEP result. The new
representation will continue working when canonicalizing to ptradd
representation:
```
getelementptr inbounds inrange(-16, 16) (i8, ptr @vt, i64 48)
```
The inrange offsets are relative to the return value of the GEP. An
alternative design could make them relative to the source pointer
instead. The result-relative format was chosen on the off-chance that we
want to extend support to non-constant GEPs in the future, in which case
this variant is more expressive.
This implementation "upgrades" the old inrange representation in bitcode
by simply dropping it. This is a very niche feature, and I don't think
trying to upgrade it is worthwhile. Let me know if you disagree.
Commit: 27534d69e275eeb6669296c038bf29d8a9b163e5
https://github.com/llvm/llvm-project/commit/27534d69e275eeb6669296c038bf29d8a9b163e5
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
A mlir/test/Target/LLVMIR/openmp-reduction-call.mlir
Log Message:
-----------
[mlir][LLVM] erase call mappings in forgetMapping() (#84955)
It looks like the mappings for call instructions were forgotten here.
This fixes a bug in OpenMP when in-lining a region containing call
operations multiple times.
OpenMP array reductions 4/6
Previous PR: https://github.com/llvm/llvm-project/pull/84954
Next PR: https://github.com/llvm/llvm-project/pull/84957
Commit: 56e32491526e21687ed1466a99ae39a9374e30b0
https://github.com/llvm/llvm-project/commit/56e32491526e21687ed1466a99ae39a9374e30b0
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/FLATInstructions.td
Log Message:
-----------
[AMDGPU] Simplify GFX11/GFX12 FLAT instruction definitions. NFC. (#85819)
- Give the tablegen record for the Real the same name as the tablegen
record for the pseudo. This removes all cases where the same
instruction name has to be mentioned more than once on the definition
line.
- Use multiclasses for all Real definitions, to allow suffixes to be
added bit by bit, e.g. first _SADDR and then _gfx11.
This is a similar approach to the one used in BUFInstructions.td.
Commit: eefef900c6a24f2acd724726bc52884e058575da
https://github.com/llvm/llvm-project/commit/eefef900c6a24f2acd724726bc52884e058575da
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Analysis/TargetLibraryInfo.cpp
M llvm/test/Transforms/InstCombine/double-float-shrink-1.ll
M llvm/test/Transforms/InstCombine/pow-1.ll
M llvm/test/Transforms/InstCombine/pow-exp.ll
Log Message:
-----------
Revert "Enable exp10 libcall on linux (#68736)"
This reverts commit 9848fa4aa2a83b0fc3a93e5f905ef09c8dd85226.
Causes buildbot failures.
Commit: 3b0a426b3fbe99e128b718a4761ea30b394ce9bb
https://github.com/llvm/llvm-project/commit/3b0a426b3fbe99e128b718a4761ea30b394ce9bb
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIRType.h
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Optimizer/Dialect/FIRType.cpp
Log Message:
-----------
[flang][NFC] move extractSequenceType helper out of OpenACC to share code (#84957)
Moving extractSequenceType to FIRType.h so that this can also be used
from OpenMP.
OpenMP array reductions 5/6
Previous PR: https://github.com/llvm/llvm-project/pull/84955
Next PR: https://github.com/llvm/llvm-project/pull/84958
Commit: 260ac8e52f6dac02958aca874ba46dea0b99fef3
https://github.com/llvm/llvm-project/commit/260ac8e52f6dac02958aca874ba46dea0b99fef3
Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/lib/Dialect/Affine/Analysis/AffineAnalysis.cpp
Log Message:
-----------
[MLIR] Remove unneeded FuncOps.h include in AffineAnalysis (#85912)
This fixes the following failure when doing a clean build (in particular
no .ninja* lying around) of lib/libMLIRAffineAnalysis.a only:
In file included from
mlir/lib/Dialect/Affine/Analysis/AffineAnalysis.cpp:20:
mlir/include/mlir/Dialect/Func/IR/FuncOps.h:29:10: fatal error:
mlir/Dialect/Func/IR/FuncOps.h.inc: No such file or directory
Commit: fe1341248d7dd9abd0545ddb48373756645c3f9f
https://github.com/llvm/llvm-project/commit/fe1341248d7dd9abd0545ddb48373756645c3f9f
Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M openmp/libomptarget/test/offloading/workshare_chunk.c
Log Message:
-----------
[OpenMP] Disable workshare_chunk.c test case on SystemZ
The test added by https://github.com/llvm/llvm-project/pull/83261
has been consistently failing. Mark as UNSUPPORTED just like on
x86_64 and aarch64.
Commit: cd768ec9837afed4d226a5abc8035a1559c18bc5
https://github.com/llvm/llvm-project/commit/cd768ec9837afed4d226a5abc8035a1559c18bc5
Author: Graham Hunter <graham.hunter at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/unittests/Target/AArch64/AddressingModes.cpp
Log Message:
-----------
[AArch64] Support scalable offsets with isLegalAddressingMode (#83255)
Allows us to indicate that an addressing mode featuring a
vscale-relative immediate offset is supported.
Commit: 0247564c14ffc7f6a13ed9d127e32bfdfbf93a19
https://github.com/llvm/llvm-project/commit/0247564c14ffc7f6a13ed9d127e32bfdfbf93a19
Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/lib/Dialect/SPIRV/IR/CMakeLists.txt
Log Message:
-----------
[MLIR] Add missing MLIRGPUDialect dep to MLIRSPIRVDialect (#84554)
This fixes the following failure when doing a clean build (in particular
no .ninja* lying around) of lib/libMLIRSPIRVDialect.a only:
```
mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp:17:
mlir/include/mlir/Dialect/GPU/IR/CompilationInterfaces.h:120:10: fatal error: mlir/Dialect/GPU/IR/CompilationAttrInterfaces.h.inc: No such file or directory
```
Commit: b7975cae7b18485e704a86ed4690a621e5064e13
https://github.com/llvm/llvm-project/commit/b7975cae7b18485e704a86ed4690a621e5064e13
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGenCXX/attr-target-version.cpp
Log Message:
-----------
Revert "[FMV] Emit the resolver along with the default version definition." (#85914)
Reverts llvm/llvm-project#84405
In between of passing the precommit tests on github and being merged
some change (perhaps in the AArch64 backend?) landed which resulted
in altering the generated resolver. I will regenerate the tests
perhaps using a less sensitive runline to such changes.
Commit: d93cfd8dab577b09a8d01ef10a279b02572e4814
https://github.com/llvm/llvm-project/commit/d93cfd8dab577b09a8d01ef10a279b02572e4814
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[bazel] Add a missing dependency for aa95aa69b96f51a3c19a24a0387ebc1fb7e6e52c
Commit: 7227ec98ad9a5e8e973d0c831e6f8bc0f7029f9f
https://github.com/llvm/llvm-project/commit/7227ec98ad9a5e8e973d0c831e6f8bc0f7029f9f
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M libcxx/include/__iterator/iterator_traits.h
M libcxx/include/__iterator/ranges_iterator_traits.h
M libcxx/include/__tuple/tuple_element.h
M libcxx/include/__type_traits/copy_cv.h
M libcxx/include/__type_traits/is_assignable.h
M libcxx/include/__type_traits/is_constructible.h
M libcxx/include/__type_traits/is_nothrow_assignable.h
M libcxx/include/__type_traits/is_nothrow_constructible.h
M libcxx/include/__type_traits/is_trivially_assignable.h
Log Message:
-----------
[libc++][NFC] Remove uses of add_{const,cv,volatile} (#85635)
These traits can be expressed without having to instantiate any classes,
reducing compile times slightly.
Commit: 36a3f8f6471ba04b7ebf32a3393708b8fb32aecf
https://github.com/llvm/llvm-project/commit/36a3f8f6471ba04b7ebf32a3393708b8fb32aecf
Author: Graham Hunter <graham.hunter at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/unittests/Target/AArch64/CMakeLists.txt
A llvm/unittests/Target/AArch64/Immediates.cpp
Log Message:
-----------
[TTI][TLI][AArch64] Support scalable immediates with isLegalAddImmediate (#84173)
Adds a second parameter (default to 0) to isLegalAddImmediate, to
represent a scalable immediate.
Extends the AArch64 implementation to match immediates based on what addvl and inc[h|w|d] support.
Commit: 22f20564a8fc29ce6d3f5de075a2849ff8acb874
https://github.com/llvm/llvm-project/commit/22f20564a8fc29ce6d3f5de075a2849ff8acb874
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M libcxx/test/libcxx/module_std.gen.py
M libcxx/test/libcxx/module_std_compat.gen.py
Log Message:
-----------
[libc++][CI] Reenables the module tests. (#85799)
These were disabled due to ODR violations with mixed versions of
clang-tidy and the clang libraries. This issue was fixed in
e19e8600cf743690e1a23fb8a2b0dfbe2dafe559.
This reverts commit 0bbada93a559b604797fe57978f3eca5e41edaeb.
Commit: 197f3ecf92b91ad1626307a17edf0761f2e4136b
https://github.com/llvm/llvm-project/commit/197f3ecf92b91ad1626307a17edf0761f2e4136b
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M flang/include/flang/Optimizer/Builder/HLFIRTools.h
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.h
M flang/lib/Optimizer/Builder/HLFIRTools.cpp
R flang/test/Lower/OpenMP/Todo/reduction-arrays.f90
A flang/test/Lower/OpenMP/parallel-reduction-array.f90
A flang/test/Lower/OpenMP/parallel-reduction-array2.f90
A flang/test/Lower/OpenMP/wsloop-reduction-array.f90
A flang/test/Lower/OpenMP/wsloop-reduction-array2.f90
Log Message:
-----------
[flang][OpenMP] lower simple array reductions (#84958)
This has been tested with arrays with compile-time constant bounds.
Allocatable arrays and arrays with non-constant bounds are not yet
supported. User-defined reduction functions are also not yet supported.
The design is intended to work for arrays with non-constant bounds too
without a lot of extra work (mostly there are bugs in OpenMPIRBuilder I
haven't fixed yet).
We need some way to get these runtime bounds into the reduction init and
combiner regions. To keep things simple for now I opted to always box
the array arguments so the box can be passed as one argument and the
lower bounds and extents read from the box. This has the disadvantage of
resulting in fir.box_dim operations inside of the critical section. If
these prove to be a performance issue, we could follow OpenACC reading
box lower bounds and extents before the reduction and passing them as
block arguments to the reduction init and combiner regions. I would
prefer to keep things simple for now.
Note: this implementation only works when the HLFIR lowering is used. I
don't think it is worth supporting FIR-only lowering because the plan is
for that to be removed soon.
OpenMP array reductions 6/6
Previous PR: https://github.com/llvm/llvm-project/pull/84957
Commit: 6086937976889ac082fbda9d76e94edf4c466410
https://github.com/llvm/llvm-project/commit/6086937976889ac082fbda9d76e94edf4c466410
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/Target/AArch64/BUILD.gn
Log Message:
-----------
[gn build] Port 36a3f8f6471b
Commit: fe2119a7b08b6e468b2a67768904ea85b1bf0a45
https://github.com/llvm/llvm-project/commit/fe2119a7b08b6e468b2a67768904ea85b1bf0a45
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
Log Message:
-----------
[VectorCombine] foldBitcastShuffle - include the cost of bitcasts in the comparison
This makes no real difference currently as we only fold unary shuffles, but I'm hoping to handle binary shuffles in a future patch.
Commit: d84252e064b3f35aa879c10e207f77e931f351d9
https://github.com/llvm/llvm-project/commit/d84252e064b3f35aa879c10e207f77e931f351d9
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M flang/docs/OpenMP-descriptor-management.md
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Tools/CLOptions.inc
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.h
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/test/Driver/bbc-mlir-pass-pipeline.f90
M flang/test/Driver/mlir-debug-pass-pipeline.f90
M flang/test/Driver/mlir-pass-pipeline.f90
M flang/test/Fir/basic-program.fir
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Fir/omp-reduction-embox-codegen.fir
M flang/test/Lower/OpenMP/FIR/array-bounds.f90
M flang/test/Lower/OpenMP/FIR/map-component-ref.f90
M flang/test/Lower/OpenMP/FIR/ordered-threads.f90
M flang/test/Lower/OpenMP/FIR/parallel-reduction-add-byref.f90
M flang/test/Lower/OpenMP/FIR/parallel-reduction-add.f90
M flang/test/Lower/OpenMP/FIR/target.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-add-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-add.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-iand-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-iand.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-ieor-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-ieor.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-ior-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-ior.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-eqv-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-eqv.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-neqv-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-neqv.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-max-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-max.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-min-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-min.f90
M flang/test/Lower/OpenMP/allocatable-array-bounds.f90
M flang/test/Lower/OpenMP/allocatable-map.f90
M flang/test/Lower/OpenMP/array-bounds.f90
M flang/test/Lower/OpenMP/declare-target-link-tarop-cap.f90
M flang/test/Lower/OpenMP/delayed-privatization-reduction-byref.f90
M flang/test/Lower/OpenMP/delayed-privatization-reduction.f90
M flang/test/Lower/OpenMP/map-component-ref.f90
M flang/test/Lower/OpenMP/ordered-threads.f90
M flang/test/Lower/OpenMP/parallel-reduction-add-byref.f90
M flang/test/Lower/OpenMP/parallel-reduction-add.f90
M flang/test/Lower/OpenMP/parallel-reduction-array.f90
M flang/test/Lower/OpenMP/parallel-reduction-array2.f90
M flang/test/Lower/OpenMP/parallel-reduction-byref.f90
M flang/test/Lower/OpenMP/parallel-reduction-rename.f90
M flang/test/Lower/OpenMP/parallel-reduction.f90
M flang/test/Lower/OpenMP/target.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add-hlfir-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add-hlfir.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-iand-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-iand.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ieor-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ieor.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ior-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ior.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-and-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-and.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-or-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-or.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-hlfir-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-hlfir.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-mul-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-mul.f90
M flang/test/Transforms/omp-descriptor-map-info-gen.fir
M flang/test/Transforms/omp-reduction-cfg-conversion.fir
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
M mlir/lib/Conversion/SCFToOpenMP/SCFToOpenMP.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
M mlir/test/Conversion/SCFToOpenMP/reductions.mlir
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
M mlir/test/Target/LLVMIR/omptarget-array-sectioning-host.mlir
M mlir/test/Target/LLVMIR/omptarget-byref-bycopy-generation-device.mlir
M mlir/test/Target/LLVMIR/omptarget-byref-bycopy-generation-host.mlir
M mlir/test/Target/LLVMIR/omptarget-constant-alloca-raise.mlir
M mlir/test/Target/LLVMIR/omptarget-constant-indexing-device-region.mlir
M mlir/test/Target/LLVMIR/omptarget-declare-target-llvm-device.mlir
M mlir/test/Target/LLVMIR/omptarget-fortran-allocatable-types-host.mlir
M mlir/test/Target/LLVMIR/omptarget-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-nowait-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-parallel-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-region-device-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-region-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-region-parallel-llvm.mlir
M mlir/test/Target/LLVMIR/openmp-llvm.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-byref.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-call.mlir
M mlir/test/Target/LLVMIR/openmp-reduction.mlir
Log Message:
-----------
[MLIR][OpenMP] NFC: Uniformize OpenMP ops names (#85393)
This patch proposes the renaming of certain OpenMP dialect operations with the
goal of improving readability and following a uniform naming convention for
MLIR operations and associated classes. In particular, the following operations
are renamed:
- `omp.map_info` -> `omp.map.info`
- `omp.target_update_data` -> `omp.target_update`
- `omp.ordered_region` -> `omp.ordered.region`
- `omp.cancellationpoint` -> `omp.cancellation_point`
- `omp.bounds` -> `omp.map.bounds`
- `omp.reduction.declare` -> `omp.declare_reduction`
Also, the following MLIR operation classes have been renamed:
- `omp::TaskLoopOp` -> `omp::TaskloopOp`
- `omp::TaskGroupOp` -> `omp::TaskgroupOp`
- `omp::DataBoundsOp` -> `omp::MapBoundsOp`
- `omp::DataOp` -> `omp::TargetDataOp`
- `omp::EnterDataOp` -> `omp::TargetEnterDataOp`
- `omp::ExitDataOp` -> `omp::TargetExitDataOp`
- `omp::UpdateDataOp` -> `omp::TargetUpdateOp`
- `omp::ReductionDeclareOp` -> `omp::DeclareReductionOp`
- `omp::WsLoopOp` -> `omp::WsloopOp`
Commit: 7ccb31a5bcd60d6e691a57bf02ebd1e1ebfbe675
https://github.com/llvm/llvm-project/commit/7ccb31a5bcd60d6e691a57bf02ebd1e1ebfbe675
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] splitVectorOp - share the same SDLoc argument instead of recreating it over and over again.
Commit: f24d68a1078c4330a764a837eff58e9934637c1a
https://github.com/llvm/llvm-project/commit/f24d68a1078c4330a764a837eff58e9934637c1a
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/FLATInstructions.td
Log Message:
-----------
[AMDGPU] Remove FLAT_Real_AllAddr_gfx11 in favor of GLOBAL_Real_AllAddr_gfx11
Plus some related cleanups. NFC.
Commit: e66cfebb04ff4fcf313905f49dbd863e7113432c
https://github.com/llvm/llvm-project/commit/e66cfebb04ff4fcf313905f49dbd863e7113432c
Author: Andreas Jonson <andjo403 at hotmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/Argument.h
M llvm/include/llvm/IR/InstrTypes.h
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/test/Analysis/ValueTracking/known-non-zero.ll
M llvm/test/Transforms/InstSimplify/icmp-constant.ll
M llvm/test/Transforms/InstSimplify/shift-knownbits.ll
Log Message:
-----------
[ValueTracking] Handle range attributes (#85143)
Handle the range attribute in ValueTracking.
Commit: 4b369ff076d9205ddbcfcdef89276a737a83ce0e
https://github.com/llvm/llvm-project/commit/4b369ff076d9205ddbcfcdef89276a737a83ce0e
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
Log Message:
-----------
[analyzer][NFC] Fix unused variable warning
Commit: e52a68787122f8f17f2923818b98f3cea4e881a1
https://github.com/llvm/llvm-project/commit/e52a68787122f8f17f2923818b98f3cea4e881a1
Author: Pravin Jagtap <prjagtap at amd.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/bf16-conversions.ll
Log Message:
-----------
[AMDGPU][NFC] Test clean up (#85922)
Authored-by: Pravin Jagtap <Pravin.Jagtap at amd.com>
Commit: 3a90cb4c1819c5ad90ba1cba266c5e94cc4ce230
https://github.com/llvm/llvm-project/commit/3a90cb4c1819c5ad90ba1cba266c5e94cc4ce230
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/horizontal.ll
Log Message:
-----------
Revert "[SLP]Do extra analysis int minbitwidth if some checks return false."
This reverts commit da118c93b40f74f6770cf8550903721555d3c97b to fix
crashes reported in https://github.com/llvm/llvm-project/pull/84363.
Commit: 81ec95ff983afd7f31c2713891bbc37bd630a100
https://github.com/llvm/llvm-project/commit/81ec95ff983afd7f31c2713891bbc37bd630a100
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Log Message:
-----------
Silence -Wswitch warnings
TypeSystemClang.cpp:4074:11: error: enumeration value 'CountAttributed' not handled in switch [-Werror,-Wswitch]
4074 | switch (qual_type->getTypeClass()) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~
TypeSystemClang.cpp:4755:11: error: enumeration value 'CountAttributed' not handled in switch [-Werror,-Wswitch]
4755 | switch (qual_type->getTypeClass()) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~
TypeSystemClang.cpp:5088:11: error: enumeration value 'CountAttributed' not handled in switch [-Werror,-Wswitch]
5088 | switch (qual_type->getTypeClass()) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~
Commit: 357f00dddbe069f75e126188e35cb20edef32a5f
https://github.com/llvm/llvm-project/commit/357f00dddbe069f75e126188e35cb20edef32a5f
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/lib/Driver/Driver.cpp
M clang/test/Driver/hip-phases.hip
Log Message:
-----------
[HIP] Correctly omit bundling with the new driver (#85842)
Summary:
The HIP phases do not emit the offload bundler output when we do not
invoke the final linker phase in device only mode. Check this propery.
Commit: da2c98b5582436d2f58c98403671cc1fd5bf5186
https://github.com/llvm/llvm-project/commit/da2c98b5582436d2f58c98403671cc1fd5bf5186
Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
M mlir/lib/Dialect/Utils/CMakeLists.txt
M mlir/lib/Dialect/Utils/StaticValueUtils.cpp
Log Message:
-----------
[MLIR] Remove UtilsDialect dep on ArithUtils (#85919)
This will reduce the amount of libraries pulled through the de facto
dependency of TilingInterface on UtilsDialect for its IteratorType.
Commit: 679e594d9d400ab688f6cc47b3ca26fe69265cae
https://github.com/llvm/llvm-project/commit/679e594d9d400ab688f6cc47b3ca26fe69265cae
Author: Yuta Saito <kateinoigakukun at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Features.def
M clang/test/Sema/swift-call-conv.c
Log Message:
-----------
[clang] Add `__has_extension(swiftcc)` support (#85347)
Commit: 1de7e6c8cba27296f3fc16d107822ea0ee856759
https://github.com/llvm/llvm-project/commit/1de7e6c8cba27296f3fc16d107822ea0ee856759
Author: Abhin P Jose <abhinjose at live.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/test/Sema/warn-cast-function-type-strict.c
M clang/test/Sema/warn-cast-function-type.c
M clang/test/SemaCXX/warn-cast-function-type-strict.cpp
M clang/test/SemaCXX/warn-cast-function-type.cpp
Log Message:
-----------
[clang] move -Wcast-function-type under -Wextra (#77178)
The -Wcast-fuction-type-strict has been moved under dignstic group
-Wextra.
Edited the test cases for -Wcast-fuction-type-strict and
-Wcast-fuction-type in Sema an SemaCXX.
Added a new test case which include a functionality that was already in
the -Wextra group, i.e -Wignored-qualifiers with
-Wcast-fuction-type-strict.
Fixes: #76872
Commit: 254bfe955ac3deba08dbbe490ef3cf5004a3bd6e
https://github.com/llvm/llvm-project/commit/254bfe955ac3deba08dbbe490ef3cf5004a3bd6e
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/include/llvm/Object/ArchiveWriter.h
M llvm/lib/Object/ArchiveWriter.cpp
A llvm/test/tools/llvm-ar/ecsymbols.ll
A llvm/test/tools/llvm-ar/ecsymbols.yaml
A llvm/test/tools/llvm-lib/empty.test
Log Message:
-----------
[llvm-ar][Object][COFF] Add support for EC symbols to llvm-ar. (#85230)
Make writeArchive IsEC argument optional and use EC symbol map when indicated by input object files.
Commit: fb5fd2d82f9befba9cf5152d1a0c5e6f91ee48f0
https://github.com/llvm/llvm-project/commit/fb5fd2d82f9befba9cf5152d1a0c5e6f91ee48f0
Author: Michael Klemm <michael.klemm at amd.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
R flang/module/omp_lib.f90
R flang/module/omp_lib.h
M flang/test/Driver/include-omp-header.f90
M flang/test/Lower/OpenMP/FIR/atomic-capture.f90
M flang/test/Lower/OpenMP/FIR/atomic-read.f90
M flang/test/Lower/OpenMP/FIR/atomic-update.f90
M flang/test/Lower/OpenMP/FIR/atomic-write.f90
M flang/test/Lower/OpenMP/FIR/critical.f90
M flang/test/Lower/OpenMP/FIR/parallel-sections.f90
M flang/test/Lower/OpenMP/FIR/parallel.f90
M flang/test/Lower/OpenMP/FIR/sections.f90
M flang/test/Lower/OpenMP/FIR/single.f90
M flang/test/Lower/OpenMP/FIR/task.f90
M flang/test/Lower/OpenMP/FIR/taskgroup.f90
M flang/test/Lower/OpenMP/FIR/teams.f90
M flang/test/Lower/OpenMP/atomic-capture.f90
M flang/test/Lower/OpenMP/atomic-read.f90
M flang/test/Lower/OpenMP/atomic-update.f90
M flang/test/Lower/OpenMP/atomic-write.f90
M flang/test/Lower/OpenMP/critical.f90
M flang/test/Lower/OpenMP/omp-lib-num-threads.f90
M flang/test/Lower/OpenMP/parallel-sections.f90
M flang/test/Lower/OpenMP/parallel.f90
M flang/test/Lower/OpenMP/sections.f90
M flang/test/Lower/OpenMP/single.f90
M flang/test/Lower/OpenMP/task.f90
M flang/test/Lower/OpenMP/taskgroup.f90
M flang/test/Lower/OpenMP/teams.f90
M flang/test/Lower/OpenMP/threadprivate-default-clause.f90
M flang/test/Parser/OpenMP/allocate-tree-spec-part.f90
M flang/test/Parser/OpenMP/allocate-tree.f90
M flang/test/Parser/OpenMP/target_device_parse.f90
M flang/test/Semantics/OpenMP/allocate-clause01.f90
M flang/test/Semantics/OpenMP/allocate-directive.f90
M flang/test/Semantics/OpenMP/allocate01.f90
M flang/test/Semantics/OpenMP/allocate02.f90
M flang/test/Semantics/OpenMP/allocate03.f90
M flang/test/Semantics/OpenMP/allocate04.f90
M flang/test/Semantics/OpenMP/allocate05.f90
M flang/test/Semantics/OpenMP/allocate06.f90
M flang/test/Semantics/OpenMP/allocate07.f90
M flang/test/Semantics/OpenMP/allocate08.f90
M flang/test/Semantics/OpenMP/allocate09.f90
M flang/test/Semantics/OpenMP/allocators01.f90
M flang/test/Semantics/OpenMP/allocators02.f90
M flang/test/Semantics/OpenMP/allocators03.f90
M flang/test/Semantics/OpenMP/allocators04.f90
M flang/test/Semantics/OpenMP/allocators05.f90
M flang/test/Semantics/OpenMP/allocators06.f90
M flang/test/Semantics/OpenMP/atomic-hint-clause.f90
M flang/test/Semantics/OpenMP/atomic01.f90
M flang/test/Semantics/OpenMP/atomic02.f90
M flang/test/Semantics/OpenMP/atomic03.f90
M flang/test/Semantics/OpenMP/atomic04.f90
M flang/test/Semantics/OpenMP/atomic05.f90
M flang/test/Semantics/OpenMP/clause-validity01.f90
M flang/test/Semantics/OpenMP/critical-hint-clause.f90
M flang/test/Semantics/OpenMP/declare-target01.f90
M flang/test/Semantics/OpenMP/flush02.f90
M flang/test/Semantics/OpenMP/omp-atomic-assignment-stmt.f90
M flang/test/Semantics/OpenMP/parallel-sections01.f90
M flang/test/Semantics/OpenMP/resolve06.f90
M flang/test/Semantics/OpenMP/sections02.f90
M flang/test/Semantics/OpenMP/sync-critical02.f90
M flang/test/Semantics/OpenMP/taskgroup01.f90
M flang/test/Semantics/OpenMP/threadprivate01.f90
M flang/test/lit.cfg.py
M flang/test/lit.site.cfg.py.in
M flang/tools/f18/CMakeLists.txt
M llvm/runtimes/CMakeLists.txt
M openmp/runtime/src/CMakeLists.txt
A openmp/runtime/src/include/omp_lib.F90.var
R openmp/runtime/src/include/omp_lib.f90.var
M openmp/runtime/src/include/omp_lib.h.var
Log Message:
-----------
[flang][OpenMP] Compile proper `omp_lib.mod` from the `openmp/src/include` sources (#80874)
This PR changes the build system to use use the sources for the module
`omp_lib` and the `omp_lib.h` include file from the `openmp` runtime
project and not from a separate copy of these files. This will greatly
reduce potential for inconsistencies when adding features to the OpenMP
runtime implementation.
When the OpenMP subproject is not configured, this PR also disables the
corresponding LIT tests with a "REQUIRES" directive at the beginning of
the OpenMP test files.
---------
Co-authored-by: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Commit: 81d9ed605b126d163f2f1cc226c639f1dfdc5224
https://github.com/llvm/llvm-project/commit/81d9ed605b126d163f2f1cc226c639f1dfdc5224
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/horizontal.ll
A llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-node-but-not-operands.ll
Log Message:
-----------
[SLP]Do extra analysis int minbitwidth if some checks return false.
The instruction itself can be considered good for minbitwidth casting,
even if one of the operand checks returns false.
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/84363
Commit: 6c1d4454ad00414cf20f9a69e04856de99f6bf1d
https://github.com/llvm/llvm-project/commit/6c1d4454ad00414cf20f9a69e04856de99f6bf1d
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/reorder-possible-strided-node.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder_diamond_match.ll
Log Message:
-----------
[SLP]Improve minbitwidth analysis for shifts.
Adds improved bitwidth analysis for shl/ashr/lshr instructions. The
analysis is based on similar version in InstCombiner.
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/84356
Commit: bdc77d1ecc9219dfc641aaaa4fb088233e9a32d1
https://github.com/llvm/llvm-project/commit/bdc77d1ecc9219dfc641aaaa4fb088233e9a32d1
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/docs/RemoveDIsDebugInfo.md
M llvm/include/llvm/IR/DebugProgramInstruction.h
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/DIBuilder.cpp
M llvm/lib/IR/DebugProgramInstruction.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/ValueMapper.cpp
M llvm/unittests/IR/IRBuilderTest.cpp
Log Message:
-----------
[RemoveDIs][NFC] Rename DPLabel->DbgLabelRecord (#85918)
This patch renames DPLabel to DbgLabelRecord, in accordance with the
ongoing DbgRecord rename. This rename was fairly trivial, since DPLabel
isn't as widely used as DPValue and has no real conflicts in either its
full or abbreviated name. As usual, the entire replacement was done
automatically, with `s/DPLabel/DbgLabelRecord/` and `s/DPL/DLR/`.
Commit: 2ac85d8d200a9e1e0ced501c2d2f04404c400bd9
https://github.com/llvm/llvm-project/commit/2ac85d8d200a9e1e0ced501c2d2f04404c400bd9
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/PhaseOrdering/X86/pr67803.ll
Log Message:
-----------
[VectorCombine] foldBitcastShuf - add support for binary shuffles
Generalise fold to "bitcast (shuf V0, V1, MaskC) --> shuf (bitcast V0), (bitcast V1), MaskC'".
Further prep work for #67803
Commit: 3eb806373e3164b242db65f8c900e4adb5a2eddf
https://github.com/llvm/llvm-project/commit/3eb806373e3164b242db65f8c900e4adb5a2eddf
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/test/CodeGenCXX/copy-constructor-synthesis-2.cpp
Log Message:
-----------
[CodeGen] Fix test on 32-bit targets (NFC)
The range here will be different for 32-bit targets. Use a wildcard,
just like all te other target-sensitive parts in this test.
Commit: 98c6bc531d091215896087b94e4e047c67f892c2
https://github.com/llvm/llvm-project/commit/98c6bc531d091215896087b94e4e047c67f892c2
Author: Christian Ulmann <christianulmann at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/include/mlir/Interfaces/MemorySlotInterfaces.td
M mlir/include/mlir/Transforms/Mem2Reg.h
M mlir/include/mlir/Transforms/SROA.h
M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefMemorySlot.cpp
M mlir/lib/Transforms/Mem2Reg.cpp
M mlir/lib/Transforms/SROA.cpp
Log Message:
-----------
[MLIR][SROA][Mem2Reg] Add data layout to interface methods (#85644)
This commit expends the Mem2Reg and SROA interface methods with passed
in handles to a `DataLayout` structure. This is done to avoid
superfluous retreiving of data layouts during each conversion of
intrinsics.
This change, additionally, enables subsequent changes to make the LLVM
dialect implementation of these interfaces type agnostic.
Commit: ada24ae5e6e3da1002fe4debe9d37a8279d11c11
https://github.com/llvm/llvm-project/commit/ada24ae5e6e3da1002fe4debe9d37a8279d11c11
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/PhaseOrdering/X86/pr67803.ll
Log Message:
-----------
Revert 2ac85d8d200a9e1e0ced501c2d2f04404c400bd9 "[VectorCombine] foldBitcastShuf - add support for binary shuffles"
Breaks some tests in other subprojects - will recommit with a fix later
Commit: 9d1cb18d19862fc0627e4a56e1e491a498e84c71
https://github.com/llvm/llvm-project/commit/9d1cb18d19862fc0627e4a56e1e491a498e84c71
Author: Hans <hans at hanshq.net>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
A clang/test/CodeGenCoroutines/coro-symmetric-transfer-04.cpp
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/test/Transforms/Coroutines/coro-split-musttail7.ll
Log Message:
-----------
[Coroutines] Ignore instructions more aggressively in addMustTailToCoroResumes() (#85271)
The old code used isInstructionTriviallyDead() and removed instructions
when walking the path from a resume call to function return to check if
the call is in tail position.
However, since the code was walking forwards it was not able to get past
instructions such as:
%gep = getelementptr inbounds i64, ptr %alloc.var, i32 0
%foo = ptrtoint ptr %gep to i64
This patch instead ignores such instructions as long as their values are
not needed. This enables the code to emit tail calls in more situations.
Commit: abed4b74764de7df2a40272699e304f43e118994
https://github.com/llvm/llvm-project/commit/abed4b74764de7df2a40272699e304f43e118994
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/FLATInstructions.td
Log Message:
-----------
[AMDGPU] Simplify definition of GLOBAL_LOAD_TR Real instructions
Commit: 3fbac79064e405a54388d11370ab5a8f0f23914d
https://github.com/llvm/llvm-project/commit/3fbac79064e405a54388d11370ab5a8f0f23914d
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/test/CodeGen/aarch64-soft-float-abi-errors.c
Log Message:
-----------
[AArch64] Don't write to source directory in test
Commit: 12329648e2c3f8651228f17d3619b1e1ddab80f0
https://github.com/llvm/llvm-project/commit/12329648e2c3f8651228f17d3619b1e1ddab80f0
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M lldb/source/Interpreter/OptionGroupVariable.cpp
M lldb/test/API/functionalities/target_var/TestTargetVar.py
Log Message:
-----------
[lldb] Omit --show-globals in `help target var` (#85855)
This option doesn't exist. It is currently displayed by `help target
var` due to a bug introduced by 41ae8e7445 in 2018.
Some code for `target var` and `frame var` is shared, and some hard-code
constants are used in order to filter out options that belong only to
`frame var`. However, the aforementioned commit failed to update these
constants properly. This patch addresses the issue by having a _single_
place where the filtering of options needs to be done.
Commit: 5f5a64134b679d0b97d8fbd4ea65da361bb22cae
https://github.com/llvm/llvm-project/commit/5f5a64134b679d0b97d8fbd4ea65da361bb22cae
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/X86/combine-sse41-intrinsics.ll
M llvm/test/CodeGen/X86/int-to-fp-demanded.ll
Log Message:
-----------
Revert "[DAGCombiner] Simplifying `{si|ui}tofp` when only signbit is needed"
This reverts commit 353fbeb0a294d2c7cef6d88607fa0fd50ee81462. It crashes
when it encounters an UINT_TO_FP.
llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:1618 in SDValue llvm::SelectionDAG::getConstant(const ConstantInt &, const SDLoc &, EVT, bool, bool): VT.isInteger() && "Cannot create FP integer constant!"
Commit: 2137894a6f5475e51c541b6d16e8902125a8f002
https://github.com/llvm/llvm-project/commit/2137894a6f5475e51c541b6d16e8902125a8f002
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M libc/src/__support/CMakeLists.txt
M libc/src/__support/FPUtil/CMakeLists.txt
M libc/src/__support/FPUtil/FPBits.h
M libc/src/__support/FPUtil/fpbits_str.h
A libc/src/__support/sign.h
M libc/src/__support/str_to_float.h
M libc/src/math/generic/acosf.cpp
M libc/src/math/generic/asinf.cpp
M libc/src/math/generic/atanf.cpp
M libc/src/math/generic/atanhf.cpp
M libc/src/math/generic/cosf.cpp
M libc/src/math/generic/coshf.cpp
M libc/src/math/generic/exp.cpp
M libc/src/math/generic/exp10.cpp
M libc/src/math/generic/exp2.cpp
M libc/src/math/generic/expm1.cpp
M libc/src/math/generic/log.cpp
M libc/src/math/generic/log10.cpp
M libc/src/math/generic/log10f.cpp
M libc/src/math/generic/log1p.cpp
M libc/src/math/generic/log1pf.cpp
M libc/src/math/generic/log2.cpp
M libc/src/math/generic/log2f.cpp
M libc/src/math/generic/log_range_reduction.h
M libc/src/math/generic/logf.cpp
M libc/src/math/generic/powf.cpp
M libc/src/stdio/printf_core/float_dec_converter.h
M libc/test/UnitTest/FPMatcher.h
M libc/test/src/__support/FPUtil/CMakeLists.txt
M libc/test/src/__support/FPUtil/dyadic_float_test.cpp
M libc/test/src/__support/FPUtil/fpbits_test.cpp
M libc/test/src/math/FDimTest.h
M libc/test/src/math/FmaTest.h
M libc/test/src/math/HypotTest.h
M libc/test/src/math/ILogbTest.h
M libc/test/src/math/LdExpTest.h
M libc/test/src/math/NextAfterTest.h
M libc/test/src/math/RIntTest.h
M libc/test/src/math/RemQuoTest.h
M libc/test/src/math/RoundToIntegerTest.h
M libc/test/src/math/atanhf_test.cpp
M libc/test/src/math/smoke/FDimTest.h
M libc/test/src/math/smoke/FmaTest.h
M libc/test/src/math/smoke/HypotTest.h
M libc/test/src/math/smoke/ILogbTest.h
M libc/test/src/math/smoke/LdExpTest.h
M libc/test/src/math/smoke/NextAfterTest.h
M libc/test/src/math/smoke/NextTowardTest.h
M libc/test/src/math/smoke/RIntTest.h
M libc/test/src/math/smoke/RemQuoTest.h
M libc/test/src/math/smoke/RoundToIntegerTest.h
M libc/test/src/math/smoke/atanhf_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/__support/FPUtil/BUILD.bazel
Log Message:
-----------
[libc][NFC] Move `Sign` type to separate header (#85930)
Commit: f872043e055f4163c3c4b1b86ca0354490174987
https://github.com/llvm/llvm-project/commit/f872043e055f4163c3c4b1b86ca0354490174987
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/X86/pr81872.ll
Log Message:
-----------
Revert "[VPlan] Replace disjoint or with add instead of dropping disjoint. (#83821)"
This reverts commit c2c1e6ee4ce0df3d000ba880fa6cf58441da6462. It creates
a use after free.
==8342==ERROR: AddressSanitizer: heap-use-after-free on address 0x50f000001760 at pc 0x55b9fb84a8fb bp 0x7ffc18468a10 sp 0x7ffc18468a08
READ of size 1 at 0x50f000001760 thread T0
#0 0x55b9fb84a8fa in dropPoisonGeneratingFlags llvm/lib/Transforms/Vectorize/VPlan.h:1040:13
#1 0x55b9fb84a8fa in llvm::VPlanTransforms::dropPoisonGeneratingRecipes(llvm::VPlan&, llvm::function_ref<bool (llvm::BasicBlock*)>)::$_0::operator()(llvm::VPRecipeBase*) const llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp:1236:23
#2 0x55b9fb84a196 in llvm::VPlanTransforms::dropPoisonGeneratingRecipes(llvm::VPlan&, llvm::function_ref<bool (llvm::BasicBlock*)>) llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Can be reproduced with asan on
Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
Transforms/LoopVectorize/X86/pr81872.ll
Transforms/LoopVectorize/X86/x86-interleaved-accesses-masked-group.ll
Commit: 9f168591f36952d8cca543a5ba67906dc07096ff
https://github.com/llvm/llvm-project/commit/9f168591f36952d8cca543a5ba67906dc07096ff
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/include/clang/InstallAPI/DylibVerifier.h
M clang/include/clang/InstallAPI/MachO.h
M clang/lib/InstallAPI/DylibVerifier.cpp
M clang/test/InstallAPI/diagnostics-cpp.test
Log Message:
-----------
[InstallAPI] Simplify & improve symbol printing for diagnostics (#85894)
* Defer mangling of symbols until an error is ready to report
* Pass around fewer parameters when reporting
Commit: 05bde30585710a51592eee0a6cf6df8184d09c92
https://github.com/llvm/llvm-project/commit/05bde30585710a51592eee0a6cf6df8184d09c92
Author: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/PrologEpilogInserter.cpp
M llvm/test/CodeGen/AArch64/clear-dead-implicit-def-impdef.mir
M llvm/test/CodeGen/AArch64/implicit-def-remat-requires-impdef-check.mir
M llvm/test/CodeGen/AArch64/implicit-def-with-impdef-greedy-assert.mir
M llvm/test/CodeGen/AMDGPU/fold-restore-undef-use.mir
M llvm/test/CodeGen/AMDGPU/greedy-alloc-fail-sgpr1024-spill.mir
M llvm/test/CodeGen/AMDGPU/ran-out-of-sgprs-allocation-failure.mir
M llvm/test/CodeGen/AMDGPU/sched-crash-dbg-value.mir
M llvm/test/CodeGen/AMDGPU/sgpr-spill-wrong-stack-id.mir
M llvm/test/CodeGen/AMDGPU/snippet-copy-bundle-regression.mir
M llvm/test/CodeGen/AMDGPU/virtregrewrite-undef-identity-copy.mir
M llvm/test/CodeGen/ARM/no-register-coalescing-in-returnsTwice.mir
M llvm/test/CodeGen/Hexagon/regalloc-bad-undef.mir
M llvm/test/CodeGen/SystemZ/RAbasic-invalid-LR-update.mir
M llvm/test/CodeGen/SystemZ/clear-liverange-spillreg.mir
M llvm/test/CodeGen/SystemZ/int-cmp-56.mir
M llvm/test/CodeGen/SystemZ/regcoal-subranges-update.mir
M llvm/test/CodeGen/X86/callbr-asm-kill.mir
M llvm/test/CodeGen/X86/regalloc-copy-hints.mir
M llvm/test/CodeGen/X86/statepoint-fastregalloc.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-enter-at-end.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-hoist-copies.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-inline-spiller.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-remove-back-copies.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra.mir
M llvm/test/CodeGen/X86/statepoint-vreg-folding.mir
M llvm/test/DebugInfo/MIR/InstrRef/phi-coalescing.mir
M llvm/test/DebugInfo/MIR/Mips/livedebugvars-stop-trimming-loc.mir
A llvm/test/MachineVerifier/test_adjustsstack.mir
Log Message:
-----------
Move assertion for AdjustsStack from PEI to MachineVerifier. (#85698)
Have the verifier report a missing AdjustsStack flag rather than waiting until
PEI asserts.
Commit: 5fb2797f23343999cace3afe24480e8711df4566
https://github.com/llvm/llvm-project/commit/5fb2797f23343999cace3afe24480e8711df4566
Author: Neumann Hon <neumann.hon at ibm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/test/CodeGen/SystemZ/systemz-ppa2.c
M llvm/include/llvm/IR/DataLayout.h
M llvm/lib/MC/MCAsmInfoGOFF.cpp
M llvm/test/CodeGen/SystemZ/call-zos-01.ll
M llvm/test/CodeGen/SystemZ/call-zos-i128.ll
M llvm/test/CodeGen/SystemZ/call-zos-vararg.ll
M llvm/test/CodeGen/SystemZ/zos-ada-relocations.ll
M llvm/test/CodeGen/SystemZ/zos-landingpad.ll
M llvm/test/CodeGen/SystemZ/zos-ppa2.ll
M llvm/test/CodeGen/SystemZ/zos-prologue-epilog.ll
M llvm/test/MC/GOFF/ppa1.ll
M llvm/unittests/IR/ManglerTest.cpp
Log Message:
-----------
[GOFF][z/OS] Change PrivateGlobalPrefix and PrivateLabelPrefix to be L# (#85730)
The current values for PrivateGlobalPrefix and PrivateLabelPrefix (@@
and @ respectively) are, in hindsight, poor choices for multiple
reasons:
First, there exist externally visible routines from the language
environment that begin with @@. These functions are certainly not
local/private by any means and they should not share a prefix with
private globals.
Secondly, both private globals and private labels should be handled the
same way by GOFF, so it doesn't make much sense for them to have
separate prefixes. GOFF remains the only file format where these are
different and there is no reason for that to be the case
Commit: 972f65a83f933b0f90cf975ef89452f4210e9b06
https://github.com/llvm/llvm-project/commit/972f65a83f933b0f90cf975ef89452f4210e9b06
Author: martinboehme <mboehme at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/include/clang/AST/Expr.h
Log Message:
-----------
[clang][NFC] Add documentation for `CastExpr::path()`. (#85623)
This didn't have any documentation, so I had to do some experimenting in
godbolt when I used this in
https://github.com/llvm/llvm-project/pull/84138, and my reviewer later
also had some
[questions](https://github.com/llvm/llvm-project/pull/84138#discussion_r1524855434)
about this, so I figured it would be worth adding documentation.
Commit: 647d75d3a883c008c19a79bce265388b3c95e742
https://github.com/llvm/llvm-project/commit/647d75d3a883c008c19a79bce265388b3c95e742
Author: Tina Jung <tinamaria.jung at amd.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.h
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
M mlir/include/mlir/Dialect/EmitC/IR/EmitCTypes.td
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/test/Dialect/EmitC/invalid_ops.mlir
M mlir/test/Dialect/EmitC/invalid_types.mlir
Log Message:
-----------
[mlir][emitc] Restrict integer and float types (#85788)
Restrict which integers and floating-point types are valid in EmitC.
This should cover the types which are supported in C++ and is aligned
with what the emitter currently supports.
The checks are implemented as functions and not fully in tablegen to
allow them to be re-used by conversions to EmitC.
Commit: a9fe23cde3ee554f4bd6118edcc2e747f3a8d8d5
https://github.com/llvm/llvm-project/commit/a9fe23cde3ee554f4bd6118edcc2e747f3a8d8d5
Author: chrulski-intel <christopher.m.chrulski at intel.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M lld/COFF/Config.h
M lld/COFF/Driver.cpp
M lld/COFF/LTO.cpp
M lld/COFF/Options.td
A lld/test/COFF/Inputs/lto-sample-profile.prof
A lld/test/COFF/lto-sample-profile.ll
Log Message:
-----------
[LLD] [COFF] Port -lto-sample-profile to COFF version of LLD (#85701)
Following the commit of #83972 which added COFF support for SPGO, this
patch ports the support of the option -lto-sample-profile that was only
available in the ELF variant of LLD to the COFF variant to enable
running the SPGO passes in the LTO/thinLTO pipelines.
Commit: caf8b1f654122342dc846ae4d9a86d5c6f93f945
https://github.com/llvm/llvm-project/commit/caf8b1f654122342dc846ae4d9a86d5c6f93f945
Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/lib/Interfaces/CMakeLists.txt
Log Message:
-----------
[MLIR] Add missing MLIRDialectUtils dep to TilingInterface (#84544)
This fixes the following failure when doing a clean build (in particular
no .ninja* lying around) of lib/libMLIRTilingInterface.a only:
```
In file included from mlir/include/mlir/Interfaces/TilingInterface.h:17,
from mlir/lib/Interfaces/TilingInterface.cpp:13:
mlir/include/mlir/Dialect/Utils/StructuredOpsUtils.h:27:10: fatal error: mlir/Dialect/Utils/DialectUtilsEnums.h.inc: No such file or directory
```
Commit: 7812fcf3d79ef7fe9ec6bcdfc8fd9143864956cb
https://github.com/llvm/llvm-project/commit/7812fcf3d79ef7fe9ec6bcdfc8fd9143864956cb
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/test/CodeGen/X86/avx-shuffle-builtins.c
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/PhaseOrdering/X86/pr67803.ll
Log Message:
-----------
[VectorCombine] foldBitcastShuf - add support for binary shuffles (REAPPLIED)
Generalise fold to "bitcast (shuf V0, V1, MaskC) --> shuf (bitcast V0), (bitcast V1), MaskC'".
Reapplied with a clang codegen test fix.
Further prep work for #67803
Commit: 55c82f149c5065947f3de3fcde137e8172eee223
https://github.com/llvm/llvm-project/commit/55c82f149c5065947f3de3fcde137e8172eee223
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/X86/cmp-after-intrinsic-call-minbitwidth.ll
Log Message:
-----------
[SLP][NFC]Add a test with arguments of functions, reduced by minbitwidth
analysis.
Commit: 4095a326c026a2b6dcb839a8c1c75906c6ba5b0a
https://github.com/llvm/llvm-project/commit/4095a326c026a2b6dcb839a8c1c75906c6ba5b0a
Author: Christian Ulmann <christianulmann at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/lib/CAPI/Dialect/LLVM.cpp
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
M mlir/test/CAPI/llvm.c
M mlir/test/Dialect/LLVMIR/debuginfo.mlir
M mlir/test/Target/LLVMIR/Import/debug-info.ll
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
Log Message:
-----------
[MLIR][LLVM] Add extraData field to the DIDerivedType attribute (#85935)
This commit extends the DIDerivedTypeAttr with the `extraData` field.
For now, the type of it is limited to be a `DINodeAttr`, as extending
the debug metadata handling to support arbitrary metadata nodes does not
seem to be necessary so far.
Commit: aa8cffb9583afb583b7a329a56cbd1c7b743f6a3
https://github.com/llvm/llvm-project/commit/aa8cffb9583afb583b7a329a56cbd1c7b743f6a3
Author: ChiaHungDuan <chiahungduan at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/allocator_config.def
M compiler-rt/lib/scudo/standalone/allocator_config_wrapper.h
Log Message:
-----------
[scudo] Fix type mismatch on DefaultMaxEntrySize (#85897)
Commit: 48a1a9b26048d2a88eaf5b09de0525ab557615de
https://github.com/llvm/llvm-project/commit/48a1a9b26048d2a88eaf5b09de0525ab557615de
Author: Chris B <chris.bieneman at me.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/docs/HLSL/HLSLSupport.rst
Log Message:
-----------
[HLSL][docs] Document hlsl.h in the HLSL docs (#84081)
This adds a brief blurb about hlsl.h in the HLSLSupport documentation
where a high level view of the architecture is explained.
Commit: 927308a52bc51ae786db1bd645ad5ef5889fdb2a
https://github.com/llvm/llvm-project/commit/927308a52bc51ae786db1bd645ad5ef5889fdb2a
Author: Gheorghe-Teodor Bercea <doru.bercea at amd.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M libc/utils/gpu/loader/amdgpu/Loader.cpp
M openmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp
Log Message:
-----------
[libomptarget][nextgen-plugin] Use SCRELEASE/SCACQUIRE in packet headers (#85678)
This patch updates the construction of packet headers to replace the
usage of ACQUIRE/RELEASE with SCACQUIRE/SCRELEASE which is now
recommended.
The patch also ensures consistency across kernel dispatches.
Commit: 04f7cd7f4545f3368ccda625cadbe3265c3566c9
https://github.com/llvm/llvm-project/commit/04f7cd7f4545f3368ccda625cadbe3265c3566c9
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Make findBestRootPair() member function constant.
Commit: c25e77436ea44b4c980f4974dee8984298d13a08
https://github.com/llvm/llvm-project/commit/c25e77436ea44b4c980f4974dee8984298d13a08
Author: Gheorghe-Teodor Bercea <doru.bercea at amd.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M libc/utils/gpu/loader/amdgpu/Loader.cpp
M openmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp
Log Message:
-----------
Revert "[libomptarget][nextgen-plugin] Use SCRELEASE/SCACQUIRE in packet headers" (#85950)
Reverts llvm/llvm-project#85678
Commit: 767e0c8bcef9cfcc57e76e66e23489ba60042762
https://github.com/llvm/llvm-project/commit/767e0c8bcef9cfcc57e76e66e23489ba60042762
Author: Thomas Lively <tlively at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
A llvm/test/CodeGen/WebAssembly/pr63817.ll
Log Message:
-----------
[WebAssembly] Select BUILD_VECTOR with large unsigned lane values (#85880)
Previously we expected lane constants to be in the range of signed
values for each lane size, but the included test case produced large
unsigned values that fall outside that range. Allow instruction
selection to proceed in this case rather than failing.
Fixes #63817.
Commit: 576d81baa5cf1801bae0fd05892be34acde33c6a
https://github.com/llvm/llvm-project/commit/576d81baa5cf1801bae0fd05892be34acde33c6a
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
M llvm/test/CodeGen/RISCV/double-arith-strict.ll
M llvm/test/CodeGen/RISCV/double-arith.ll
M llvm/test/CodeGen/RISCV/double-bitmanip-dagcombines.ll
M llvm/test/CodeGen/RISCV/double-br-fcmp.ll
M llvm/test/CodeGen/RISCV/double-calling-conv.ll
M llvm/test/CodeGen/RISCV/double-convert-strict.ll
M llvm/test/CodeGen/RISCV/double-convert.ll
M llvm/test/CodeGen/RISCV/double-fcmp-strict.ll
M llvm/test/CodeGen/RISCV/double-fcmp.ll
M llvm/test/CodeGen/RISCV/double-imm.ll
M llvm/test/CodeGen/RISCV/double-intrinsics-strict.ll
M llvm/test/CodeGen/RISCV/double-intrinsics.ll
M llvm/test/CodeGen/RISCV/double-isnan.ll
M llvm/test/CodeGen/RISCV/double-maximum-minimum.ll
M llvm/test/CodeGen/RISCV/double-mem.ll
M llvm/test/CodeGen/RISCV/double-previous-failure.ll
M llvm/test/CodeGen/RISCV/double-round-conv-sat.ll
M llvm/test/CodeGen/RISCV/double-round-conv.ll
M llvm/test/CodeGen/RISCV/double-select-fcmp.ll
M llvm/test/CodeGen/RISCV/double-select-icmp.ll
M llvm/test/CodeGen/RISCV/double-stack-spill-restore.ll
M llvm/test/CodeGen/RISCV/fastcc-without-f-reg.ll
M llvm/test/CodeGen/RISCV/half-convert-strict.ll
M llvm/test/CodeGen/RISCV/half-convert.ll
M llvm/test/CodeGen/RISCV/pr64645.ll
M llvm/test/CodeGen/RISCV/zdinx-asm-constraint.ll
M llvm/test/CodeGen/RISCV/zdinx-boundary-check.ll
Log Message:
-----------
[RISCV] Use REG_SEQUENCE/EXTRACT_SUBREG to move between individual GPRs and GPRPair. (#85887)
Previously we used memory like we do to move between GPRs and FPR64 with
the D extension on RV32.
We can instead use REG_SEQUENCE/EXTRACT_SUBREG to inform register
allocation how to do the copy without memory.
Commit: 3deaa77f1a25f0cdfcf23c34fac0b51293f32f9c
https://github.com/llvm/llvm-project/commit/3deaa77f1a25f0cdfcf23c34fac0b51293f32f9c
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.h
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-add-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-add.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-iand-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-ieor-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-ior-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-max-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-min-byref.f90
M flang/test/Lower/OpenMP/default-clause-byref.f90
M flang/test/Lower/OpenMP/default-clause.f90
M flang/test/Lower/OpenMP/parallel-reduction-array.f90
M flang/test/Lower/OpenMP/parallel-reduction-array2.f90
M flang/test/Lower/OpenMP/parallel-reduction-rename.f90
M flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f90
M flang/test/Lower/OpenMP/parallel-wsloop-reduction.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add-hlfir-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add-hlfir.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-iand-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-iand.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ieor-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ior-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ior.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-2-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-hlfir-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-hlfir.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-mul-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-mul.f90
Log Message:
-----------
[flang][OpenMP] simplify getReductionName (#85666)
Re-use fir::getTypeAsString instead of creating something new here. This
spells integer names like i32 instead of i_32 so there is a lot of test
churn.
Commit: 9ebd329ad87ca4cde3ce62e1bf5612c4fc0fcb7f
https://github.com/llvm/llvm-project/commit/9ebd329ad87ca4cde3ce62e1bf5612c4fc0fcb7f
Author: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/PrologEpilogInserter.cpp
M llvm/test/CodeGen/AArch64/clear-dead-implicit-def-impdef.mir
M llvm/test/CodeGen/AArch64/implicit-def-remat-requires-impdef-check.mir
M llvm/test/CodeGen/AArch64/implicit-def-with-impdef-greedy-assert.mir
M llvm/test/CodeGen/AMDGPU/fold-restore-undef-use.mir
M llvm/test/CodeGen/AMDGPU/greedy-alloc-fail-sgpr1024-spill.mir
M llvm/test/CodeGen/AMDGPU/ran-out-of-sgprs-allocation-failure.mir
M llvm/test/CodeGen/AMDGPU/sched-crash-dbg-value.mir
M llvm/test/CodeGen/AMDGPU/sgpr-spill-wrong-stack-id.mir
M llvm/test/CodeGen/AMDGPU/snippet-copy-bundle-regression.mir
M llvm/test/CodeGen/AMDGPU/virtregrewrite-undef-identity-copy.mir
M llvm/test/CodeGen/ARM/no-register-coalescing-in-returnsTwice.mir
M llvm/test/CodeGen/Hexagon/regalloc-bad-undef.mir
M llvm/test/CodeGen/SystemZ/RAbasic-invalid-LR-update.mir
M llvm/test/CodeGen/SystemZ/clear-liverange-spillreg.mir
M llvm/test/CodeGen/SystemZ/int-cmp-56.mir
M llvm/test/CodeGen/SystemZ/regcoal-subranges-update.mir
M llvm/test/CodeGen/X86/callbr-asm-kill.mir
M llvm/test/CodeGen/X86/regalloc-copy-hints.mir
M llvm/test/CodeGen/X86/statepoint-fastregalloc.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-enter-at-end.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-hoist-copies.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-inline-spiller.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-remove-back-copies.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra.mir
M llvm/test/CodeGen/X86/statepoint-vreg-folding.mir
M llvm/test/DebugInfo/MIR/InstrRef/phi-coalescing.mir
M llvm/test/DebugInfo/MIR/Mips/livedebugvars-stop-trimming-loc.mir
R llvm/test/MachineVerifier/test_adjustsstack.mir
Log Message:
-----------
Revert "Move assertion for AdjustsStack from PEI to MachineVerifier. (#85698)"
This reverts commit 05bde30585710a51592eee0a6cf6df8184d09c92.
Reverting due to verifier complaints with expensive checks on build-bot.
Commit: d209d1340b99d4fbd325dffb5e13b757ab8264ea
https://github.com/llvm/llvm-project/commit/d209d1340b99d4fbd325dffb5e13b757ab8264ea
Author: Martin Storsjö <martin at martin.st>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M libcxx/modules/CMakeLists.txt
Log Message:
-----------
[libcxx] [cmake] Fix cmake_path(ABSOLUTE_PATH) for empty CMAKE_INSTALL_PREFIX
This should hopefully fix the issue brought up at
https://github.com/llvm/llvm-project/pull/85756#issuecomment-2009852291.
Commit: eb861acd49e4c6777e2fe09dd2004ac1f4731bba
https://github.com/llvm/llvm-project/commit/eb861acd49e4c6777e2fe09dd2004ac1f4731bba
Author: Steven Varoumas <steven.varoumas at huawei.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/python/CMakeLists.txt
A mlir/python/mlir/dialects/IndexOps.td
A mlir/python/mlir/dialects/index.py
A mlir/test/python/dialects/index_dialect.py
Log Message:
-----------
[mlir][python] Enable python bindings for Index dialect (#85827)
This small patch enables python bindings for the index dialect.
---------
Co-authored-by: Steven Varoumas <steven.varoumas1 at huawei.com>
Commit: 75dfa58ea93aa93b97534906778cb3dd24ba841a
https://github.com/llvm/llvm-project/commit/75dfa58ea93aa93b97534906778cb3dd24ba841a
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/docs/RemoveDIsDebugInfo.md
M llvm/include/llvm/IR/BasicBlock.h
M llvm/include/llvm/IR/DebugProgramInstruction.h
M llvm/include/llvm/IR/Instruction.h
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/DebugProgramInstruction.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/IR/Value.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Transforms/Scalar/JumpThreading.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/unittests/IR/BasicBlockDbgInfoTest.cpp
M llvm/unittests/IR/DebugInfoTest.cpp
M llvm/unittests/Transforms/Utils/LocalTest.cpp
Log Message:
-----------
[RemoveDIs][NFC] Rename DPMarker->DbgMarker (#85931)
Another trivial rename patch, the last big one for now, which renamed
DPMarkers to DbgMarkers. This required the field `DbgMarker` in
`Instruction` to be renamed to `DebugMarker` to avoid a clash, but
otherwise was a simple string substitution of `s/DPMarker/DbgMarker` and
a manual renaming of `DPM` to `DM` in the few places where that acronym
was used for debug markers.
Commit: 407937036fa7640f61f225474b1ea6623a40dbdd
https://github.com/llvm/llvm-project/commit/407937036fa7640f61f225474b1ea6623a40dbdd
Author: Martin Storsjö <martin at martin.st>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M libcxx/modules/CMakeLists.txt
Log Message:
-----------
Revert "[libcxx] [modules] Fix relative paths with absolute LIBCXX_INSTALL_MODULES_DIR (#85756)"
This reverts commit 272d1b44efdedb68c194970a610f0ca1b7b769c5,
and the follow-up fix in d209d1340b99d4fbd325dffb5e13b757ab8264ea.
Even after the follow-up fix, building with an empty
CMAKE_INSTALL_PREFIX errors out with errors like this:
CMake Error at /b/s/w/ir/x/w/llvm-llvm-project/libcxx/modules/CMakeLists.txt:215 (file):
file RELATIVE_PATH must be passed a full path to the directory:
lib/x86_64-pc-windows-msvc
Commit: 12028cb1dab9ba1b4ac826c3d70ca19c3b379255
https://github.com/llvm/llvm-project/commit/12028cb1dab9ba1b4ac826c3d70ca19c3b379255
Author: Will Hawkins <hawkinsw at obs.cr>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/unittests/DebugInfo/DWARF/DwarfGenerator.cpp
Log Message:
-----------
[DwarfGenerator] Calculate relative offset according to Dwarf Version (#84847)
The relative offset for a CU in Dwarf v5 (and later) is different than
the relative offset for a CU in Dwarf v4 (and before).
Signed-off-by: Will Hawkins <hawkinsw at obs.cr>
Commit: 1b5b4eebb6a012cf223954013d34c6e896720822
https://github.com/llvm/llvm-project/commit/1b5b4eebb6a012cf223954013d34c6e896720822
Author: Thurston Dang <thurston at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M compiler-rt/lib/memprof/memprof_allocator.h
Log Message:
-----------
[memprof] Move allocator base to avoid conflict with high-entropy ASLR (#85834)
memprof often fails when ASLR entropy is too high ('sudo sysctl
vm.mmap_rnd_bits=32; ninja check-memprof'), which is the default setting
for newer versions of Ubuntu
(https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/jammy/commit/?h=hwe-6.5-next--2024.03.04-1--auto&id=6b522637c6a7dabd8530026ae933fb5ff17e877f).
This patch fixes the issue by moving the allocator base, analogously to
ASan (https://reviews.llvm.org/D148280).
Explanation from the ASan patch: when CONFIG_ARCH_MMAP_RND_BITS == 32,
it will frequently conflict with memprof's allocator, because the PIE
program segment base address of 0x555555555554 plus an ASLR shift of up
to ((2**32) * 4K == 0x100000000000) will sometimes exceed memprof's
hardcoded base address of 0x600000000000. We fix this by simply moving
the allocator base to 0x500000000000, which is below the PIE program
segment base address. This is cleaner than trying to move it to another
location that is sandwiched between the PIE program and library
segments, because if either of those grow too large, it will collide
with the allocator region.
Note that we will never need to change this base address again (unless
we want to increase the size of the allocator), because ASLR cannot be
set above 32-bits for x86-64 Linux (the PIE program segment and library
segments would collide with each other; see also ARCH_MMAP_RND_BITS_MAX
in https://github.com/torvalds/linux/blob/master/arch/x86/Kconfig).
Commit: a6a6066290679f23f2bd6b27afc7a06aab07590f
https://github.com/llvm/llvm-project/commit/a6a6066290679f23f2bd6b27afc7a06aab07590f
Author: Eric Li <li.zhe.hua at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/lib/Analysis/FlowSensitive/AdornedCFG.cpp
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
Log Message:
-----------
[clang][dataflow] Fix crash when analyzing a coroutine (#85957)
A coroutine function body (`CoroutineBodyStmt`) may have null children,
which causes `isa` to segfault.
Commit: 9cb5004209323d6fa8af8c41e456818c20585984
https://github.com/llvm/llvm-project/commit/9cb5004209323d6fa8af8c41e456818c20585984
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGenCXX/attr-target-version.cpp
Log Message:
-----------
Reland [FMV] Emit the resolver along with the default version definit… (#85923)
…ion.
This was reverted because the resolver didn't look as expected in one of
the tests. I believe it had some interaction with #84146. I have now
regenerated it using -target-feature -fp-armv8.
Commit: 0e47dfede468a292dd8cd893d6d0179052501383
https://github.com/llvm/llvm-project/commit/0e47dfede468a292dd8cd893d6d0179052501383
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M lld/ELF/InputFiles.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/LinkerScript.cpp
M lld/ELF/MarkLive.cpp
M lld/ELF/OutputSections.cpp
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Add isStaticRelSecType to simplify SHT_REL/SHT_RELA testing. NFC
and make it easier to introduce a new relocation format.
https://discourse.llvm.org/t/rfc-relleb-a-compact-relocation-format-for-elf/77600
Pull Request: https://github.com/llvm/llvm-project/pull/85893
Commit: 25d61be8a5e563988661709c5d01f67c06b388e2
https://github.com/llvm/llvm-project/commit/25d61be8a5e563988661709c5d01f67c06b388e2
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/test/CodeGen/X86/avx-shuffle-builtins.c
Log Message:
-----------
[X86] avx-shuffle-builtins.c - limit to x86 targets
Attempt to fix issue with non-x86 buildbots (sorry its blind but I can't test this)
Commit: decd88ef0538504707c5d1f0fd8b9de60a5b9b4c
https://github.com/llvm/llvm-project/commit/decd88ef0538504707c5d1f0fd8b9de60a5b9b4c
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/DebugProgramInstruction.h
Log Message:
-----------
[RemoveDIs][NFC] Delete a now-redundant comment
Submitted without review for being a trivial comment-only change, deletes
a line that requests the DbgLabelRecord class be renamed to DbgLabelRecord
in the future.
Commit: b754e6f6900e8c4205567fb2a13ff3c90811f5bc
https://github.com/llvm/llvm-project/commit/b754e6f6900e8c4205567fb2a13ff3c90811f5bc
Author: Job Henandez Lara <jobhdezlara93 at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M libc/test/src/math/smoke/FMaxTest.h
Log Message:
-----------
Fix typo (#85869)
Commit: b20360abeb3a80281dc082f1e093abd13cb1ee4c
https://github.com/llvm/llvm-project/commit/b20360abeb3a80281dc082f1e093abd13cb1ee4c
Author: AdityaK <hiraditya at msn.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Arch/RISCV.cpp
M clang/test/Driver/riscv-features.c
Log Message:
-----------
clang driver: enable fast unaligned access for Android on RISCV64 (#85704)
Android CTS test already requires fast unaligned access
https://android-review.googlesource.com/c/platform/cts/+/2675633
Commit: 721e8f366f8665468f69dd8e29f97c6da1614a8f
https://github.com/llvm/llvm-project/commit/721e8f366f8665468f69dd8e29f97c6da1614a8f
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M lld/test/ELF/driver.test
Log Message:
-----------
[ELF] Improve unknown -z test
Commit: 49c3e78961f841717c0aeec0c04b6e5401ddd6ce
https://github.com/llvm/llvm-project/commit/49c3e78961f841717c0aeec0c04b6e5401ddd6ce
Author: Augie Fackler <augie at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[bazel] add missing dependency for 2137894a6f5475e51c541b6d16e8902125a8f002
Commit: 66a2ed50ccb6de64fdf82957ca0d4b55ef76f3cd
https://github.com/llvm/llvm-project/commit/66a2ed50ccb6de64fdf82957ca0d4b55ef76f3cd
Author: Alex Langford <alangford at apple.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M lldb/test/API/source-manager/TestSourceManager.py
Log Message:
-----------
[lldb] Remove process restart prompt from TestSourceManager (#85861)
In TestSourceManager, test_artificial_source_location will give the
process restart prompt if you run the test individually. The reason is
that we run the process twice: first using a convenience function to run
to a specific breakpoint and then again to check for a specific message
emitted when you hit the breakpoint. Instead of running twice and making
the test difficult to run individually, we can just check for the
specific messages using other commands.
Commit: d42992e71c660d57c89056f6ee4a5be74fa4d1f4
https://github.com/llvm/llvm-project/commit/d42992e71c660d57c89056f6ee4a5be74fa4d1f4
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Cleanup setOperationAction for ISD::BITCAST with Zfa and D extension. NFC
We only need Custom handling for i64 on RV32. This will be used by
type legalization. We don't need to make it custom for f64 to get
type legalization to custom split i64.
If f64 and i64 are legal types, then ISD::BITCAST should be legal.
Commit: 10b0e355372fab1f4d585555536525545eef8523
https://github.com/llvm/llvm-project/commit/10b0e355372fab1f4d585555536525545eef8523
Author: Alex Langford <alangford at apple.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M lldb/include/lldb/Target/Process.h
M lldb/include/lldb/Utility/AddressableBits.h
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Utility/AddressableBits.cpp
Log Message:
-----------
[lldb] Invert relationship between Process and AddressableBits (#85858)
AddressableBits is in the Utility module of LLDB. It currently directly
refers to Process, which is from the Target LLDB module. This is a
layering violation which concretely means that it is impossible to link
anything that uses Utility without it also using Target as well. This is
generally not an issue for LLDB (since everything is built together) but
it may make it difficult to write unit tests for AddressableBits later
on.
Commit: 5ea152033ee99ac7ccde791009c372a0983b4eaf
https://github.com/llvm/llvm-project/commit/5ea152033ee99ac7ccde791009c372a0983b4eaf
Author: Vinayak Dev <104419489+vinayakdsci at users.noreply.github.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M libc/config/linux/x86_64/entrypoints.txt
M libc/spec/stdc.td
M libc/src/stdlib/CMakeLists.txt
A libc/src/stdlib/str_from_util.h
A libc/src/stdlib/strfromf.cpp
A libc/src/stdlib/strfromf.h
M libc/test/src/stdlib/CMakeLists.txt
A libc/test/src/stdlib/strfromf_test.cpp
Log Message:
-----------
[libc]: Implement strfromf() and shared utilities (#85438)
Fixes #84244.
Implements the function `strfromf()` introduced in C23, and adds shared
utilities for implementation of other `strfrom*()` functions, including
`strfromd()` and `strfroml()`.
Commit: 5e6bb1fb885abec2e8bc85422bbd83fe4ece6d3b
https://github.com/llvm/llvm-project/commit/5e6bb1fb885abec2e8bc85422bbd83fe4ece6d3b
Author: Jason Eckhardt <jeckhardt at nvidia.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/include/llvm/Target/Target.td
Log Message:
-----------
[TableGen][Target] Add documentation to `Constraints`. (#85951)
This patch adds some basic documentation for `Constraints`, along with
some "see also" pointers for backend writers to learn more.
Commit: 4df099e447840bae24e88efca1ab4c03a5d7b21b
https://github.com/llvm/llvm-project/commit/4df099e447840bae24e88efca1ab4c03a5d7b21b
Author: Augie Fackler <augie at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[bazel] another BUILD fix for 2137894a6f5475e51c541b6d16e8902125a8f002
Commit: 62ed009ce218897d7707144de54fa1e2beec59dc
https://github.com/llvm/llvm-project/commit/62ed009ce218897d7707144de54fa1e2beec59dc
Author: Thurston Dang <thurston at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M compiler-rt/lib/dfsan/dfsan.cpp
M compiler-rt/lib/dfsan/dfsan_allocator.cpp
M compiler-rt/lib/dfsan/dfsan_platform.h
Log Message:
-----------
[dfsan] Re-exec with no ASLR if memory layout is incompatible on Linux (#85674)
DFSan's shadow mappings are incompatible with 32 bits of ASLR entropy
('sudo sysctl vm.mmap_rnd_bits=32; ninja check-dfsan') and it is
difficult to fix this via increasing the size of the shadow mappings,
due to the overhead of shadow memory. This patch works around the issue
by detecting if the memory layout is incompatible, and if so,
re-exec'ing without ASLR.
DFSan and MSan share copy-pasted shadow memory code, hence this
workaround is ported from MSan:
- "[msan] Re-exec with no ASLR if memory layout is incompatible on
Linux"
(https://github.com/llvm/llvm-project/commit/58f7251820b14c93168726a24816d8a094599be5)
- "[msan] Add 'MappingDesc::ALLOCATOR' type and check it is available"
(https://github.com/llvm/llvm-project/commit/af2bf86a372cacf5f536bae06e2f2d3886eefb7b)
(which in turn are inspired by TSan: "Re-exec TSan with no ASLR if
memory layout is incompatible on Linux"
(https://github.com/llvm/llvm-project/commit/0784b1eefa36d4acbb0dacd2d18796e26313b6c5
))
aeubanks had remarked in
https://github.com/llvm/llvm-project/pull/85142#issuecomment-2004442883
that this issue occurs in Chromium:
https://ci.chromium.org/ui/p/chromium/builders/try/linux_upload_clang/5066/overview
Commit: 5231005193afb8db01afe9a8a1aa308d25f60ba1
https://github.com/llvm/llvm-project/commit/5231005193afb8db01afe9a8a1aa308d25f60ba1
Author: Sirraide <aeternalmail at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/lib/Lex/PPMacroExpansion.cpp
M clang/test/C/C2x/n2975.c
M clang/test/Lexer/gnu-flags.c
M clang/test/Preprocessor/empty_va_arg.cpp
M clang/test/Preprocessor/macro_fn.c
Log Message:
-----------
[Clang] Update missing varargs arg extension warnings (#84520)
This updates a few warnings that were diagnosing no arguments for a
`...` variadic macro parameter as a GNU extension when it actually is a
C++20/C23 extension now.
This fixes #84495.
Commit: cc9186060ad75c68a052bbcf43d7d1ee93143a60
https://github.com/llvm/llvm-project/commit/cc9186060ad75c68a052bbcf43d7d1ee93143a60
Author: Guray Ozen <guray.ozen at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M .github/CODEOWNERS
Log Message:
-----------
[mlir][nvgpu][nvvm] Add myself as a primary reviewer for nvgpu and nvvm dialects (#85414)
Commit: 949d70d5e023b34b741b7d577c61a7ef60c3316f
https://github.com/llvm/llvm-project/commit/949d70d5e023b34b741b7d577c61a7ef60c3316f
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
A llvm/test/CodeGen/SPIRV/instructions/bitwise-i1.ll
Log Message:
-----------
[SPIR-V] Fix incorrect bitwise instructions applied to the bool type (#85929)
This PR ensures that LLVM IR bitwise instructions result in logical
SPIR-V instructions when applied to i1 type.
Commit: c2483ed52d6f600a91663a49e35bab1dff2ed977
https://github.com/llvm/llvm-project/commit/c2483ed52d6f600a91663a49e35bab1dff2ed977
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/test/CodeGen/SPIRV/empty-logical.ll
M llvm/test/CodeGen/SPIRV/empty-module.ll
M llvm/test/CodeGen/SPIRV/empty-opencl32.ll
M llvm/test/CodeGen/SPIRV/empty-opencl64.ll
M llvm/test/CodeGen/SPIRV/empty.ll
A llvm/test/CodeGen/SPIRV/fence.ll
Log Message:
-----------
[SPIRV] Add __spirv_ builtins for existing instructions (#85654)
This PR:
* adds __spirv_ builtins for existing instructions;
* fixes parsing of "syncscope" values in atomic instructions;
* fix a special case of binary header emision.
Commit: f676e84bba016157f5879fa66d86737ac8920c4b
https://github.com/llvm/llvm-project/commit/f676e84bba016157f5879fa66d86737ac8920c4b
Author: Jason Eckhardt <jeckhardt at nvidia.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/test/TableGen/ConstraintChecking3.td
A llvm/test/TableGen/ConstraintChecking8.td
M llvm/utils/TableGen/CodeGenInstruction.cpp
Log Message:
-----------
[TableGen] Fix operand constraint checking problem. (#85859)
Currently operand constraint checks on "$dest = $src" are inadvertently
accepting any token that contains "=". This has surprising results, e.g,
"$dest != $src" is accepted as a constraint but then treated as "=".
This patch ensures that only exactly the token "=" is accepted.
Commit: 891172d9be01dd7c7e5298f2d8fdb143add448da
https://github.com/llvm/llvm-project/commit/891172d9be01dd7c7e5298f2d8fdb143add448da
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
A llvm/test/CodeGen/RISCV/attributes-module-flag.ll
A llvm/test/CodeGen/RISCV/module-elf-flags.ll
Log Message:
-----------
[RISCV] Use 'riscv-isa' module flag to set ELF flags and attributes. (#85155)
Walk all the ISA strings and set the subtarget bits for any extension we
find in any string.
This allows LTO output to have a ELF attributes from the union of all of
the files used to compile it.
Commit: 3f39571228fe2cf402e6ea5727cd5b32f9299356
https://github.com/llvm/llvm-project/commit/3f39571228fe2cf402e6ea5727cd5b32f9299356
Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
M llvm/lib/Target/DirectX/DXILOpBuilder.h
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
A llvm/test/CodeGen/DirectX/isinf.ll
A llvm/test/CodeGen/DirectX/isinf_error.ll
M llvm/utils/TableGen/DXILEmitter.cpp
Log Message:
-----------
[DirectX][DXIL] Distinguish return type for overload type resolution. (#85646)
Return type of DXIL Ops may be different from valid overload type of the
parameters, if any. Such DXIL Ops are correctly represented in DXIL.td.
However, DXILEmitter assumes the return type to be the same as parameter
overload type, if one exists. This results in generation in incorrect
overload index value in DXILOperation.inc for the DXIL Op and incorrect
DXIL operation function call in DXILOpLowering pass.
This change distinguishes return types correctly from parameter overload
types in DXILEmitter backend to handle such DXIL ops.
Add specification for DXIL Op `isinf` and corresponding tests to verify
the above change.
Fixes issue #85125
Commit: 2e817bfb4890249d1f5c0e50827d1d742c4f3df4
https://github.com/llvm/llvm-project/commit/2e817bfb4890249d1f5c0e50827d1d742c4f3df4
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
Log Message:
-----------
[RISCV] Add missing feature predicates to some of the RVV pseudos (#85983)
Some of the RVV pseudos are missing HasVInstructions. This is
effectively a NFC.
Commit: 7955bde64ef9aebbcaf6b6308a25fac31041ea9a
https://github.com/llvm/llvm-project/commit/7955bde64ef9aebbcaf6b6308a25fac31041ea9a
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
A clang/test/C/C11/n1310.c
M clang/www/c_status.html
Log Message:
-----------
[C11] Add test coverage for N1310 and claim conformance
This is about the best I could do for testing that `signed char` does
not have any padding bits.
Commit: d9c4c312d81b4a2059d0ca2bb454c3452e52042e
https://github.com/llvm/llvm-project/commit/d9c4c312d81b4a2059d0ca2bb454c3452e52042e
Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/docs/UsersManual.rst
M clang/include/clang/Basic/DiagnosticCommonKinds.td
M clang/include/clang/Basic/LangOptions.h
M clang/include/clang/Driver/Options.td
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Parse/ParsePragma.cpp
A clang/test/CodeGen/X86/cx-complex-range.c
M clang/test/CodeGen/complex-math.c
M clang/test/CodeGen/cx-complex-range.c
M clang/test/CodeGen/pragma-cx-limited-range.c
M clang/test/CodeGen/smiths-complex-div.c
M clang/test/Driver/range.c
Log Message:
-----------
[CLANG] Full support of complex multiplication and division. (#81514)
In clang there are two options `-f[no]cx-limited-range` and
`-f[no]cx-fortran-rules` that control the range of complex
multiplication and division. However, it is unclear how these options
interact with one another. For instance, what should happen when the
users compile with `-fcx-fortran-rules -fno-cx-limited-range` or
`-fcx-limited-range -fno-cx-fortran-rules`?
In this patch we are introducing a new option to solve the issue and
give a greater flexibility to the user to control the behavior of the
compiler when performing multiplication and division of complex
floating-point values.
`-fcomplex-arihmetic=[full|improved|promoted|basic]`
`full`: Implementation of complex division and multiplication using a
call to runtime library functions (generally the case, but the BE might
sometimes replace the library call if it knows enough about the
potential range of the inputs). Overflow and non-finite values are
handled by the library implementation. For the case of multiplication
overflow will occur in accordance with normal floating-point rules. This
is the default value.
`improved`: Implementation of complex division using the Smith algorithm
at source precision. Smith's algorithm for complex division. See SMITH,
R. L. Algorithm 116: Complex division. Commun. ACM 5, 8 (1962). This
value offers improved handling for overflow in intermediate
calculations, but overflow may occur. NaN and infinite values are not
handled in some cases.
`promoted`: Implementation of complex division using algebraic formulas
at higher precision. Overflow is handled. Non-finite values are handled
in some cases. If the target does not have native support for a higher
precision data type, the implementation for the complex operation using
the Smith algorithm will be used. Overflow may still occur in some
cases. NaN and infinite values are not handled.
`basic`: Implementation of complex division and multiplication using
algebraic formulas at source precision. No special handling to avoid
overflow. NaN and infinite values are not handled.
`fcx-limited-range` will alias `-fcomplex-arithmetic=basic`
`-fcx-fortran-rules` will alias `-fcomplex-arithmetic=improved`
`-fno-cx-limited-range` and `-fno-cx-fortran-rules` will alias
`-fcomplex-arithmetic=full`
The complex division and multiplication will be implemented as follows
depending on the option used.
<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns:m="http://schemas.microsoft.com/office/2004/12/omml"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 15">
<meta name=Originator content="Microsoft Word 15">
<link rel=File-List
href="file:///C:/Users/zahiraam/AppData/Local/Temp/msohtmlclip1/01/clip_filelist.xml">
<!--[if gte mso 9]><xml>
<o:OfficeDocumentSettings>
<o:AllowPNG/>
</o:OfficeDocumentSettings>
</xml><![endif]-->
<link rel=themeData
href="file:///C:/Users/zahiraam/AppData/Local/Temp/msohtmlclip1/01/clip_themedata.thmx">
<link rel=colorSchemeMapping
href="file:///C:/Users/zahiraam/AppData/Local/Temp/msohtmlclip1/01/clip_colorschememapping.xml">
<!--[if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:TrackMoves/>
<w:TrackFormatting/>
<w:PunctuationKerning/>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:DoNotPromoteQF/>
<w:LidThemeOther>EN-US</w:LidThemeOther>
<w:LidThemeAsian>X-NONE</w:LidThemeAsian>
<w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
<w:Compatibility>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
<w:SplitPgBreakAndParaMark/>
<w:EnableOpenTypeKerning/>
<w:DontFlipMirrorIndents/>
<w:OverrideTableStyleHps/>
</w:Compatibility>
<m:mathPr>
<m:mathFont m:val="Cambria Math"/>
<m:brkBin m:val="before"/>
<m:brkBinSub m:val="--"/>
<m:smallFrac m:val="off"/>
<m:dispDef/>
<m:lMargin m:val="0"/>
<m:rMargin m:val="0"/>
<m:defJc m:val="centerGroup"/>
<m:wrapIndent m:val="1440"/>
<m:intLim m:val="subSup"/>
<m:naryLim m:val="undOvr"/>
</m:mathPr></w:WordDocument>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false"
DefSemiHidden="false" DefQFormat="false" DefPriority="99"
LatentStyleCount="376">
<w:LsdException Locked="false" Priority="0" QFormat="true"
Name="Normal"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading
1"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 2"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 3"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 4"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 5"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 6"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 7"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 8"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 9"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 1"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 2"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 3"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 4"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 5"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 6"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 7"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 8"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="header"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footer"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index heading"/>
<w:LsdException Locked="false" Priority="35" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="caption"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of figures"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope return"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="line number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="page number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of authorities"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="macro"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="toa heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 5"/>
<w:LsdException Locked="false" Priority="10" QFormat="true"
Name="Title"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Closing"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Signature"/>
<w:LsdException Locked="false" Priority="1" SemiHidden="true"
UnhideWhenUsed="true" Name="Default Paragraph Font"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Message Header"/>
<w:LsdException Locked="false" Priority="11" QFormat="true"
Name="Subtitle"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Salutation"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Date"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Note Heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Block Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Hyperlink"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="FollowedHyperlink"/>
<w:LsdException Locked="false" Priority="22" QFormat="true"
Name="Strong"/>
<w:LsdException Locked="false" Priority="20" QFormat="true"
Name="Emphasis"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Document Map"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Plain Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="E-mail Signature"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Top of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Bottom of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal (Web)"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Acronym"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Cite"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Code"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Definition"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Keyboard"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Preformatted"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Sample"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Typewriter"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Variable"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Table"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation subject"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="No List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Contemporary"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Elegant"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Professional"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Balloon Text"/>
<w:LsdException Locked="false" Priority="39" Name="Table Grid"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Theme"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Placeholder
Text"/>
<w:LsdException Locked="false" Priority="1" QFormat="true" Name="No
Spacing"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading"/>
<w:LsdException Locked="false" Priority="61" Name="Light List"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent
1"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent
1"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent
1"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1
Accent 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2
Accent 1"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent
1"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Revision"/>
<w:LsdException Locked="false" Priority="34" QFormat="true"
Name="List Paragraph"/>
<w:LsdException Locked="false" Priority="29" QFormat="true"
Name="Quote"/>
<w:LsdException Locked="false" Priority="30" QFormat="true"
Name="Intense Quote"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent
1"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent
1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent
1"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent
1"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading
Accent 1"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent
1"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent
1"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent
2"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent
2"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent
2"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1
Accent 2"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2
Accent 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent
2"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent
2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent
2"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent
2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent
2"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading
Accent 2"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent
2"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent
2"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent
3"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent
3"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent
3"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1
Accent 3"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2
Accent 3"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent
3"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent
3"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent
3"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent
3"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent
3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading
Accent 3"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent
3"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent
3"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent
4"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent
4"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent
4"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1
Accent 4"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2
Accent 4"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent
4"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent
4"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent
4"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent
4"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent
4"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading
Accent 4"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent
4"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent
4"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent
5"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent
5"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent
5"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1
Accent 5"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2
Accent 5"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent
5"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent
5"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent
5"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent
5"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent
5"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading
Accent 5"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent
5"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent
5"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent
6"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent
6"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent
6"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1
Accent 6"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2
Accent 6"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent
6"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent
6"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent
6"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent
6"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent
6"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading
Accent 6"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent
6"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent
6"/>
<w:LsdException Locked="false" Priority="19" QFormat="true"
Name="Subtle Emphasis"/>
<w:LsdException Locked="false" Priority="21" QFormat="true"
Name="Intense Emphasis"/>
<w:LsdException Locked="false" Priority="31" QFormat="true"
Name="Subtle Reference"/>
<w:LsdException Locked="false" Priority="32" QFormat="true"
Name="Intense Reference"/>
<w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book
Title"/>
<w:LsdException Locked="false" Priority="37" SemiHidden="true"
UnhideWhenUsed="true" Name="Bibliography"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/>
<w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/>
<w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/>
<w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/>
<w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/>
<w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/>
<w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/>
<w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="Grid Table 6
Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="Grid Table 7
Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent
1"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent
1"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent
1"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark
Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent
2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent
2"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent
2"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark
Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent
3"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent
3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent
3"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark
Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent
4"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent
4"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent
4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark
Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent
5"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent
5"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent
5"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark
Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent
6"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent
6"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent
6"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark
Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="List Table 6
Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="List Table 7
Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent
1"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent
1"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent
1"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark
Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent
2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent
2"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent
2"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark
Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent
3"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent
3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent
3"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark
Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent
4"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent
4"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent
4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark
Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent
5"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent
5"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent
5"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark
Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent
6"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent
6"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent
6"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark
Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Mention"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Smart Hyperlink"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Hashtag"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Unresolved Mention"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Smart Link"/>
</w:LatentStyles>
</xml><![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;
mso-font-charset:0;
mso-generic-font-family:roman;
mso-font-pitch:variable;
mso-font-signature:-536869121 1107305727 33554432 0 415 0;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;
mso-font-charset:0;
mso-generic-font-family:swiss;
mso-font-pitch:variable;
mso-font-signature:-469750017 -1040178053 9 0 511 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-unhide:no;
mso-style-qformat:yes;
mso-style-parent:"";
margin-top:0in;
margin-right:0in;
margin-bottom:8.0pt;
margin-left:0in;
line-height:107%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-fareast-font-family:Calibri;
mso-fareast-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-bidi-font-family:"Times New Roman";
mso-bidi-theme-font:minor-bidi;
mso-font-kerning:1.0pt;
mso-ligatures:standardcontextual;}
.MsoChpDefault
{mso-style-type:export-only;
mso-default-props:yes;
font-family:"Calibri",sans-serif;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-fareast-font-family:Calibri;
mso-fareast-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-bidi-font-family:"Times New Roman";
mso-bidi-theme-font:minor-bidi;}
.MsoPapDefault
{mso-style-type:export-only;
margin-bottom:8.0pt;
line-height:107%;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;
mso-header-margin:.5in;
mso-footer-margin:.5in;
mso-paper-source:0;}
div.WordSection1
{page:WordSection1;}
-->
</style>
<!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0in 5.4pt 0in 5.4pt;
mso-para-margin-top:0in;
mso-para-margin-right:0in;
mso-para-margin-bottom:8.0pt;
mso-para-margin-left:0in;
line-height:107%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-bidi-font-family:"Times New Roman";
mso-bidi-theme-font:minor-bidi;
mso-font-kerning:1.0pt;
mso-ligatures:standardcontextual;}
</style>
<![endif]-->
</head>
<body lang=EN-US style='tab-interval:.5in;word-wrap:break-word'>
<!--StartFragment-->
-fcomplex-arithmetic | div | mul
-- | -- | --
basic | algebraic form | algebraic form
improved | smith's algorithm | algebraic form
full | libcall | libcall + nan processing
promoted | algebraic form + higher precision | algebraic form
<!--EndFragment-->
</body>
</html>
Commit: 0177a9547e588222acaf6d006747b5f7014e6fd8
https://github.com/llvm/llvm-project/commit/0177a9547e588222acaf6d006747b5f7014e6fd8
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/test/Lower/CUDA/cuda-kernel-calls.cuf
Log Message:
-----------
[flang][cuda] Fix fir.cuda_kernel_launch assembly with no args (#85987)
When the kernel launch has no arguments, the generated parser was
expecting at least a type to be present. Make the last part of the
assemble format optional.
Add a run line to round-trip the output through fir-opt so we make sure
the IR can be parsed and printed correctly.
Commit: 84115494d6475e1aea3cdd1163d3a88243b75f36
https://github.com/llvm/llvm-project/commit/84115494d6475e1aea3cdd1163d3a88243b75f36
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M flang/include/flang/Evaluate/tools.h
M flang/lib/Lower/DirectivesCommon.h
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/test/Lower/OpenACC/acc-bounds.f90
M flang/test/Lower/OpenACC/acc-enter-data.f90
Log Message:
-----------
[flang][Lower] Convert OMP Map and related functions to evaluate::Expr (#81626)
The related functions are `gatherDataOperandAddrAndBounds` and
`genBoundsOps`. The former is used in OpenACC as well, and it was
updated to pass evaluate::Expr instead of parser objects.
The difference in the test case comes from unfolded conversions of index
expressions, which are explicitly of type integer(kind=8).
Delete now unused `findRepeatableClause2` and `findClause2`.
Add `AsGenericExpr` that takes std::optional. It already returns
optional Expr. Making it accept an optional Expr as input would reduce
the number of necessary checks when handling frequent optional values in
evaluator.
[Clause representation 4/6]
Commit: 17af9addbbd0dc675c962bf034ea083b2b61a01a
https://github.com/llvm/llvm-project/commit/17af9addbbd0dc675c962bf034ea083b2b61a01a
Author: Marc Auberer <marc.auberer at chillibits.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
Log Message:
-----------
[DAG] Add SDPatternMatch m_ZExtOrSelf/m_SExtOrSelf/m_AExtOrSelf/m_TruncOrSelf matchers (#85480)
Fixes #85395
Commit: 1f1f569b29f42161ea978328aea60044f16eee49
https://github.com/llvm/llvm-project/commit/1f1f569b29f42161ea978328aea60044f16eee49
Author: Christudasan Devadasan <Christudasan.Devadasan at amd.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Target/PowerPC/PPCFrameLowering.cpp
Log Message:
-----------
[PowerPC] Clang format (NFC).
Commit: c2fd0e4398a90be2f4640964f3c1f2a73a3a1487
https://github.com/llvm/llvm-project/commit/c2fd0e4398a90be2f4640964f3c1f2a73a3a1487
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SOPInstructions.td
Log Message:
-----------
[AMDGPU] Copy SOP properties from pseudo to real. NFCI. (#85997)
This is to help llvm-obdump to analyze instructions in a future patch.
Commit: 294a6c3b650d2411e50487b287b24b7d85847162
https://github.com/llvm/llvm-project/commit/294a6c3b650d2411e50487b287b24b7d85847162
Author: Kazu Hirata <kazu at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CGExprComplex.cpp
Log Message:
-----------
[clang] Fix a warning
This patch fixes:
clang/lib/CodeGen/CGExprComplex.cpp:1037:14: error: unused variable
'ComplexElementTy' [-Werror,-Wunused-variable]
Commit: f6f474c4ef9694a4ca8f08d59fd112c250fb9c73
https://github.com/llvm/llvm-project/commit/f6f474c4ef9694a4ca8f08d59fd112c250fb9c73
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M lld/test/ELF/riscv-tlsdesc.s
A llvm/test/CodeGen/RISCV/tlsdesc-symbol.ll
Log Message:
-----------
[llvm][lld] Pre-commit tests for RISCV TLSDESC symbols
Currently, we mistakenly mark the local labels used in RISC-V TLSDESC as
TLS symbols, when they should not be. This patch adds tests with the
current incorrect behavior, and subsequent patches will address the
issue.
Reviewers: MaskRay, topperc
Reviewed By: MaskRay
Pull Request: https://github.com/llvm/llvm-project/pull/85816
Commit: b7324b6a9c6bd43786ea853bf1a9730486b4bc88
https://github.com/llvm/llvm-project/commit/b7324b6a9c6bd43786ea853bf1a9730486b4bc88
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/Vector/Utils/VectorUtils.h
M mlir/lib/Dialect/Vector/Transforms/LowerVectorContract.cpp
Log Message:
-----------
[mlir][vector] Adds pattern rewrite for maskable Ops (#83827)
Adds a generic pattern rewrite for maskable Ops, `MaskableOpRewritePattern`,
that will work for both masked and un-masked cases, e.g. for both:
* `vector.mask {vector.contract}` (masked), and
* `vector.contract` (not masked).
This helps to reduce code-duplication and standardise how we implement such
patterns.
Fixes #78787
Commit: 5a9bdd85ee4d8527e2cedf44f3ce26ff414f9b6a
https://github.com/llvm/llvm-project/commit/5a9bdd85ee4d8527e2cedf44f3ce26ff414f9b6a
Author: Oleksandr "Alex" Zinenko <zinenko at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/docs/Tutorials/transform/Ch2.md
M mlir/examples/transform/Ch2/include/MyExtension.h
M mlir/examples/transform/Ch2/include/MyExtension.td
M mlir/examples/transform/Ch2/lib/MyExtension.cpp
M mlir/examples/transform/Ch3/include/MyExtension.h
M mlir/examples/transform/Ch3/include/MyExtension.td
M mlir/examples/transform/Ch3/include/MyExtensionTypes.td
M mlir/examples/transform/Ch3/lib/MyExtension.cpp
M mlir/examples/transform/Ch4/include/MyExtension.h
M mlir/examples/transform/Ch4/include/MyExtension.td
M mlir/include/mlir/Dialect/AMDGPU/TransformOps/AMDGPUTransformOps.h
M mlir/include/mlir/Dialect/AMDGPU/TransformOps/AMDGPUTransformOps.td
M mlir/include/mlir/Dialect/Affine/TransformOps/AffineTransformOps.h
M mlir/include/mlir/Dialect/Affine/TransformOps/AffineTransformOps.td
M mlir/include/mlir/Dialect/Bufferization/TransformOps/BufferizationTransformOps.h
M mlir/include/mlir/Dialect/Bufferization/TransformOps/BufferizationTransformOps.td
M mlir/include/mlir/Dialect/Func/TransformOps/FuncTransformOps.h
M mlir/include/mlir/Dialect/Func/TransformOps/FuncTransformOps.td
M mlir/include/mlir/Dialect/GPU/TransformOps/GPUTransformOps.h
M mlir/include/mlir/Dialect/GPU/TransformOps/GPUTransformOps.td
M mlir/include/mlir/Dialect/GPU/TransformOps/Utils.h
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.h
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/include/mlir/Dialect/MemRef/TransformOps/MemRefTransformOps.h
M mlir/include/mlir/Dialect/MemRef/TransformOps/MemRefTransformOps.td
M mlir/include/mlir/Dialect/NVGPU/TransformOps/NVGPUTransformOps.h
M mlir/include/mlir/Dialect/NVGPU/TransformOps/NVGPUTransformOps.td
M mlir/include/mlir/Dialect/SCF/TransformOps/SCFTransformOps.h
M mlir/include/mlir/Dialect/SCF/TransformOps/SCFTransformOps.td
M mlir/include/mlir/Dialect/SparseTensor/TransformOps/SparseTensorTransformOps.h
M mlir/include/mlir/Dialect/Tensor/TransformOps/TensorTransformOps.h
M mlir/include/mlir/Dialect/Tensor/TransformOps/TensorTransformOps.td
M mlir/include/mlir/Dialect/Transform/CMakeLists.txt
M mlir/include/mlir/Dialect/Transform/DebugExtension/DebugExtensionOps.h
M mlir/include/mlir/Dialect/Transform/DebugExtension/DebugExtensionOps.td
M mlir/include/mlir/Dialect/Transform/IR/CMakeLists.txt
M mlir/include/mlir/Dialect/Transform/IR/MatchInterfaces.h
M mlir/include/mlir/Dialect/Transform/IR/MatchInterfaces.td
M mlir/include/mlir/Dialect/Transform/IR/TransformDialect.td
R mlir/include/mlir/Dialect/Transform/IR/TransformInterfaces.h
R mlir/include/mlir/Dialect/Transform/IR/TransformInterfaces.td
M mlir/include/mlir/Dialect/Transform/IR/TransformOps.h
M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
M mlir/include/mlir/Dialect/Transform/IR/TransformTypes.h
M mlir/include/mlir/Dialect/Transform/IR/TransformTypes.td
A mlir/include/mlir/Dialect/Transform/Interfaces/CMakeLists.txt
A mlir/include/mlir/Dialect/Transform/Interfaces/TransformInterfaces.h
A mlir/include/mlir/Dialect/Transform/Interfaces/TransformInterfaces.td
M mlir/include/mlir/Dialect/Transform/LoopExtension/LoopExtensionOps.h
M mlir/include/mlir/Dialect/Transform/LoopExtension/LoopExtensionOps.td
M mlir/include/mlir/Dialect/Transform/PDLExtension/PDLExtensionOps.h
M mlir/include/mlir/Dialect/Transform/PDLExtension/PDLExtensionOps.td
M mlir/include/mlir/Dialect/Transform/Transforms/TransformInterpreterPassBase.h
M mlir/include/mlir/Dialect/Transform/Transforms/TransformInterpreterUtils.h
M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.h
M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
M mlir/lib/CAPI/Dialect/TransformInterpreter.cpp
M mlir/lib/Dialect/Affine/TransformOps/AffineTransformOps.cpp
M mlir/lib/Dialect/Func/TransformOps/FuncTransformOps.cpp
M mlir/lib/Dialect/GPU/TransformOps/GPUTransformOps.cpp
M mlir/lib/Dialect/GPU/TransformOps/Utils.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgMatchOps.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/MemRef/TransformOps/MemRefTransformOps.cpp
M mlir/lib/Dialect/SCF/TransformOps/SCFTransformOps.cpp
M mlir/lib/Dialect/Tensor/IR/TensorDialect.cpp
M mlir/lib/Dialect/Tensor/TransformOps/TensorTransformOps.cpp
M mlir/lib/Dialect/Transform/CMakeLists.txt
M mlir/lib/Dialect/Transform/IR/CMakeLists.txt
M mlir/lib/Dialect/Transform/IR/TransformDialect.cpp
R mlir/lib/Dialect/Transform/IR/TransformInterfaces.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
M mlir/lib/Dialect/Transform/IR/TransformTypes.cpp
A mlir/lib/Dialect/Transform/Interfaces/CMakeLists.txt
A mlir/lib/Dialect/Transform/Interfaces/TransformInterfaces.cpp
M mlir/lib/Dialect/Transform/Transforms/CheckUses.cpp
M mlir/lib/Dialect/Transform/Transforms/InferEffects.cpp
M mlir/lib/Dialect/Transform/Transforms/InterpreterPass.cpp
M mlir/lib/Dialect/Transform/Transforms/TransformInterpreterPassBase.cpp
M mlir/lib/Dialect/Transform/Transforms/TransformInterpreterUtils.cpp
M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
M mlir/test/Dialect/Tensor/decompose-concat.mlir
M mlir/test/Dialect/Tensor/fold-empty-op.mlir
M mlir/test/Dialect/Tensor/fold-tensor-subset-ops-into-vector-transfers.mlir
M mlir/test/Dialect/Tensor/rewrite-as-constant.mlir
M mlir/test/Dialect/Vector/vector-contract-to-outerproduct-matvec-transforms.mlir
M mlir/test/Dialect/Vector/vector-materialize-mask.mlir
M mlir/test/Dialect/Vector/vector-multi-reduction-lowering.mlir
M mlir/test/Dialect/Vector/vector-multi-reduction-outer-lowering.mlir
M mlir/test/Dialect/Vector/vector-transfer-drop-unit-dims-patterns.mlir
M mlir/test/Dialect/Vector/vector-transfer-full-partial-split-copy-transform.mlir
M mlir/test/Dialect/Vector/vector-transfer-full-partial-split.mlir
M mlir/test/Dialect/Vector/vector-transfer-to-vector-load-store.mlir
M mlir/test/Dialect/Vector/vector-transpose-lowering.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-shuffle16x16.mlir
M mlir/test/lib/Dialect/Tensor/TestTensorTransforms.cpp
M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.h
M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.td
M mlir/test/lib/Dialect/Transform/TestTransformDialectInterpreter.cpp
M mlir/test/lib/Dialect/Transform/TestTransformStateExtension.h
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.td
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[mlir] split transform interfaces into a separate library (#85221)
Transform interfaces are implemented, direction or via extensions, in
libraries belonging to multiple other dialects. Those dialects don't
need to depend on the non-interface part of the transform dialect, which
includes the growing number of ops and transitive dependency footprint.
Split out the interfaces into a separate library. This in turn requires
flipping the dependency from the interface on the dialect that has crept
in because both co-existed in one library. The interface shouldn't
depend on the transform dialect either.
As a consequence of splitting, the capability of the interpreter to
automatically walk the payload IR to identify payload ops of a certain
kind based on the type used for the entry point symbol argument is
disabled. This is a good move by itself as it simplifies the interpreter
logic. This functionality can be trivially replaced by a
`transform.structured.match` operation.
Commit: de4ce5dd2bde7f9d7cbfe47a542a308779c43ce3
https://github.com/llvm/llvm-project/commit/de4ce5dd2bde7f9d7cbfe47a542a308779c43ce3
Author: John McCall <rjmccall at apple.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CGStmt.cpp
M clang/test/CodeGen/swift-async-call-conv.c
Log Message:
-----------
Rebase swiftasynccall's musttail support onto the [[clang::musttail]] logic (#86011)
The old logic expects the call to be the last thing we emitted, and
since it kicks in before we emit cleanups, and since `swiftasynccall`
functions always return void, that's likely to be true. "Likely" isn't
very reassuring when we're talking about slapping attributes on random
calls, though. And indeed, while I can't find any way to break the logic
directly in current main, our previous (ongoing?) experiments with
shortening argument temporary lifetimes definitely broke it wide open.
So while this commit is prophylactic for now, it's clearly the right
thing to do, and it can cherry-picked to other branches to fix problems.
Commit: 2b7289d48a36563a6b33187f4bda581cb021aba7
https://github.com/llvm/llvm-project/commit/2b7289d48a36563a6b33187f4bda581cb021aba7
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
A llvm/test/Transforms/PGOProfile/memop_profile_funclet_wasm.ll
Log Message:
-----------
[PGO] Use isScopedEHPersonality for funclet check (#85671)
This line should be `isScopedEHPersonality` rather than
`isFuncletEHPersonality` because this line is used for checking whether
we need to add `funclet` op bundles to newly added calls, and Wasm EH
needs that too.
The new test case is adapted from
https://github.com/llvm/llvm-project/blob/main/llvm/test/Transforms/PGOProfile/memop_profile_funclet.ll.
Commit: 061b40896470f6f1840d340fe52deb761026d3ef
https://github.com/llvm/llvm-project/commit/061b40896470f6f1840d340fe52deb761026d3ef
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M bolt/include/bolt/Profile/YAMLProfileWriter.h
M bolt/lib/Profile/YAMLProfileWriter.cpp
Log Message:
-----------
[BOLT][NFC] Expose YAMLProfileWriter::convert function
The function is to be used by YAML profile emission in BAT mode for
BinaryFunctions not covered by BAT tables (same as in original binary).
Test Plan: NFC
Reviewers: rafaelauler, ayermolo, dcci, maksfb
Reviewed By: dcci
Pull Request: https://github.com/llvm/llvm-project/pull/76909
Commit: de0abc0983d355bbd971c5c571ba4c209a0c63ea
https://github.com/llvm/llvm-project/commit/de0abc0983d355bbd971c5c571ba4c209a0c63ea
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M bolt/lib/Profile/YAMLProfileWriter.cpp
Log Message:
-----------
[BOLT][NFC] Simplify YAMLProfileWriter::convert
Use `getAnnotationWithDefault` instead of testing if the annotation is
set. If the default value is used, and `CSI.Count` is set to zero, the
target is discarded by a check below.
Test Plan: NFC
Reviewers: maksfb, dcci, rafaelauler, ayermolo
Reviewed By: ayermolo
Pull Request: https://github.com/llvm/llvm-project/pull/82129
Commit: 61b24c61a90802e06e40a7ab0aa5e2138486bd73
https://github.com/llvm/llvm-project/commit/61b24c61a90802e06e40a7ab0aa5e2138486bd73
Author: Chao Chen <116223022+chencha3 at users.noreply.github.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPU.h
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUDialect.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
A mlir/test/Dialect/XeGPU/XeGPUOps.mlir
Log Message:
-----------
[MLIR][XeGPU] Adding XeGPU 2d block operators (#85804)
This PR adds XeGPU 2D block operators. It contains:
1. TensorDescType and TensorDescAttr definitions
2. MemoryScopeAttr and CacheHintAttr definitions which are used by
TensorDescAttr.
3. CreateNdDescOp, PrefetchNdOp, LoadNdOp, and StoreNdOp definitions,
and their corresponding testcases for illustration.
It cherry-picks daebe5c4f27ba140ac8d13abf41e3fe4db72b91a with asan fix.
---------
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: a7d5f73a03c81cab8df64dbd099e8acb40f5dfe1
https://github.com/llvm/llvm-project/commit/a7d5f73a03c81cab8df64dbd099e8acb40f5dfe1
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M openmp/libomptarget/plugins-nextgen/CMakeLists.txt
R openmp/libomptarget/plugins-nextgen/aarch64/CMakeLists.txt
R openmp/libomptarget/plugins-nextgen/generic-elf-64bit/dynamic_ffi/ffi.cpp
R openmp/libomptarget/plugins-nextgen/generic-elf-64bit/dynamic_ffi/ffi.h
R openmp/libomptarget/plugins-nextgen/generic-elf-64bit/src/rtl.cpp
A openmp/libomptarget/plugins-nextgen/host/CMakeLists.txt
A openmp/libomptarget/plugins-nextgen/host/dynamic_ffi/ffi.cpp
A openmp/libomptarget/plugins-nextgen/host/dynamic_ffi/ffi.h
A openmp/libomptarget/plugins-nextgen/host/src/rtl.cpp
R openmp/libomptarget/plugins-nextgen/ppc64/CMakeLists.txt
R openmp/libomptarget/plugins-nextgen/ppc64le/CMakeLists.txt
R openmp/libomptarget/plugins-nextgen/s390x/CMakeLists.txt
R openmp/libomptarget/plugins-nextgen/x86_64/CMakeLists.txt
Log Message:
-----------
[Libomptarget] Consolidate CPU offloading into 'host' directory (#86014)
Summary:
All of these CPU targets use the same underlying implementation. We
should consolidate them into a single target to make it easier to update
this to a static library based approach. I have decided to call this the
'host' target so it can be given a single name. We still only build
these if the system processor matches and we are on Linux.
Commit: 1918d4bcb21af6a7e4de32073455ac51f2f9673f
https://github.com/llvm/llvm-project/commit/1918d4bcb21af6a7e4de32073455ac51f2f9673f
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M bolt/CMakeLists.txt
Log Message:
-----------
[BOLT][CMake] Build rt library despite unreadable map_files (#77876)
Emit a warning and print a suggested workaround.
Fixes https://github.com/llvm/llvm-project/issues/77822.
Commit: ad00e7e5ed5ab050151c115b627e11a8e3960e25
https://github.com/llvm/llvm-project/commit/ad00e7e5ed5ab050151c115b627e11a8e3960e25
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M bolt/docs/BAT.md
M bolt/include/bolt/Profile/BoltAddressTranslation.h
M bolt/lib/Profile/BoltAddressTranslation.cpp
M bolt/test/X86/bolt-address-translation.test
Log Message:
-----------
[BOLT] Write and parse BF/BB hashes in BAT
This increases BAT section size to:
- large binary: 34832976 bytes (0.90x original),
- medium binary: 3586800 bytes (0.60x original),
- small binary: 816 bytes (0.57x original).
Test Plan: Updated bolt/test/X86/bolt-address-translation.test
Reviewers: rafaelauler, dcci, ayermolo, maksfb
Reviewed By: rafaelauler
Pull Request: https://github.com/llvm/llvm-project/pull/76907
Commit: 5a6c69132fb427d9ba71a72274c66ddb76ae66d5
https://github.com/llvm/llvm-project/commit/5a6c69132fb427d9ba71a72274c66ddb76ae66d5
Author: Caroline Tice <cmtice at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
Log Message:
-----------
[LLVM][DebugInfo] Add accessor for NameIndex header.
This is needed for pending LLD work to create a single unified .debug_names
index (rather than just appending all the indices from each .o file).
Commit: 258091e76df69072e7088a5e251a2db7f8e3d0a9
https://github.com/llvm/llvm-project/commit/258091e76df69072e7088a5e251a2db7f8e3d0a9
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
Log Message:
-----------
[mlir] Fix -Wunused-variable in XeGPUOps.cpp (NFC)
llvm-project/mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp:47:8:
error: unused variable 'ty' [-Werror,-Wunused-variable]
auto ty = source.getType();
^
1 error generated.
Commit: af90e1975c15edc9195f1a1a87269bed4c83887a
https://github.com/llvm/llvm-project/commit/af90e1975c15edc9195f1a1a87269bed4c83887a
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M compiler-rt/test/dfsan/custom.cpp
Log Message:
-----------
[dfsan] Use non-existent file in test for real
Commit: aa7e4ba3cad0e00dd37d4baca680ed1633bbdb70
https://github.com/llvm/llvm-project/commit/aa7e4ba3cad0e00dd37d4baca680ed1633bbdb70
Author: Kazu Hirata <kazu at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M bolt/lib/Profile/BoltAddressTranslation.cpp
Log Message:
-----------
[BOLT] Fix an unused variable warning
This patch fixes:
bolt/lib/Profile/BoltAddressTranslation.cpp:26:12: error: unused
variable 'HotFuncAddress' [-Werror,-Wunused-variable]
Commit: 893717446bbc8f31427b581af5fbaf4154b63402
https://github.com/llvm/llvm-project/commit/893717446bbc8f31427b581af5fbaf4154b63402
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M libc/CMakeLists.txt
Log Message:
-----------
[libc] Add an option to always build GPU loader utilities (#86040)
Summary:
Right now it's difficult to build these utilities standalone becayse
they're keyed off of the other GPU handling. if someone wants to *just*
build these utilities it's not possible without setting up the runtimes
build. Since we can't just build these by default add an option to
enable it.
We can't just use the handling like LIBC_HDRGEN does because this is
only for the GPU build, which isn't fully set up until way later. So
this is probably the easiest way to just allow people to build these
tools even without a GPU build setup.
Commit: 3cd988914e53c4c94e48edd4b6bc7b97b2dd4b49
https://github.com/llvm/llvm-project/commit/3cd988914e53c4c94e48edd4b6bc7b97b2dd4b49
Author: Alexander Yermolovich <43973793+ayermolo at users.noreply.github.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M bolt/test/X86/dwarf5-label-low-pc.s
Log Message:
-----------
[BOLT][DWARF] Fix Test (#86042)
Test was not actually checking bolt binary, and had extra POSTCHECK-NEXT
lines.
Commit: 71defe40b7df18508d63fb1b1233324e8a28688f
https://github.com/llvm/llvm-project/commit/71defe40b7df18508d63fb1b1233324e8a28688f
Author: Thurston Dang <thurston at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp
Log Message:
-----------
[sanitizer_common] Suppress warning of cast from SignalHandlerType to sa_sigaction_t (#86046)
Some buildbots (e.g.,
https://lab.llvm.org/buildbot/#/builders/18/builds/16061/steps/10/logs/stdio)
have recently started complaining about
```
cast from 'SignalHandlerType' (aka 'void (*)(int, void *, void *)') to 'sa_sigaction_t' (aka 'void (*)(int, siginfo_t *, void *)') converts to incompatible function type [-Werror,-Wcast-function-type-strict]
219 | sigact.sa_sigaction = (sa_sigaction_t)handler;
```
This patch does an intermediate cast to `'(void (*) (void))'` to suppress the warning.
N.B. SignalHandlerType has `'void*'` instead of `'siginfo_t*'` because it is typedef'ed in sanitizer_common/sanitizer_common.h, which does not have access to the header (signal.h) that defines siginfo_t; we therefore cannot fix SignalHandlerType.
Commit: 631248dcd26fdec772cedb569be94ff8f12d0901
https://github.com/llvm/llvm-project/commit/631248dcd26fdec772cedb569be94ff8f12d0901
Author: hstk30-hw <hanwei62 at huawei.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/lib/CodeGen/Targets/X86.cpp
A clang/test/CodeGenCXX/x86_64-vaarg.cpp
Log Message:
-----------
[X86_64] fix empty structure vaarg in c++ (#77907)
SizeInBytes of empty structure is 0 in C, while 1 in C++. And empty
structure argument of the function is ignored in X86_64 backend.As a
result, the value of variable arguments in C++ is incorrect. fix #77036
Co-authored-by: Longsheng Mou <moulongsheng at huawei.com>
Commit: 35a66f965c0ea3b806b2b1736bfe4e6eb61d3613
https://github.com/llvm/llvm-project/commit/35a66f965c0ea3b806b2b1736bfe4e6eb61d3613
Author: Freddy Ye <freddy.ye at intel.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
A llvm/test/CodeGen/X86/domain-reassignment-ndd.mir
Log Message:
-----------
Precommit test for #85737 (#86056)
Copied from llvm/test/CodeGen/X86/domain-reassignment.mir
Commit: 44a81af510801edce842e9574ec4d52cc7bd0ae9
https://github.com/llvm/llvm-project/commit/44a81af510801edce842e9574ec4d52cc7bd0ae9
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/test/Transforms/LoopIdiom/AArch64/byte-compare-index.ll
Log Message:
-----------
[AArch64] Run LoopSimplifyPass in byte-compare-index.ll (#86053)
Make this test case work on both new and legacy pass manager. See also
#85215
Commit: 0d08282310e4007dfb748132e5c196765b1ffcd2
https://github.com/llvm/llvm-project/commit/0d08282310e4007dfb748132e5c196765b1ffcd2
Author: Michael Liao <michael.hliao at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/lib/Dialect/XeGPU/IR/CMakeLists.txt
Log Message:
-----------
[MLIR][XeGPU] Fix shared build. NFC
Commit: 0e3fbfd1e106dd027aab9ea4a9a6f116d05a0987
https://github.com/llvm/llvm-project/commit/0e3fbfd1e106dd027aab9ea4a9a6f116d05a0987
Author: Thurston Dang <thurston at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp
Log Message:
-----------
Revert "[sanitizer_common] Suppress warning of cast from SignalHandlerType to sa_sigaction_t"
This reverts commit 9d79589e7c8b728a592a4b6b3dee53ac471d7946
because it failed to suppress the warning.
Commit: 5c95484061a58250de7e5abe150c6ebb25898523
https://github.com/llvm/llvm-project/commit/5c95484061a58250de7e5abe150c6ebb25898523
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/test/Analysis/AliasSet/intrinsics.ll
Log Message:
-----------
[Analysis] Use implicit-check-not in test
Commit: 07a5e31cb3836bf1f00d2f56f03db70145f536c1
https://github.com/llvm/llvm-project/commit/07a5e31cb3836bf1f00d2f56f03db70145f536c1
Author: Freddy Ye <freddy.ye at intel.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
A llvm/test/CodeGen/X86/apx/domain-reassignment.mir
R llvm/test/CodeGen/X86/domain-reassignment-ndd.mir
Log Message:
-----------
Move pre-commit test for #85737 (#86062)
Commit: deefe3fbc93b3bdc77fbaf718403a45dae983d12
https://github.com/llvm/llvm-project/commit/deefe3fbc93b3bdc77fbaf718403a45dae983d12
Author: Thorsten Schütt <schuett at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/combine-overflow.mir
M llvm/test/CodeGen/AArch64/arm64-xaluo.ll
M llvm/test/CodeGen/AArch64/overflow.ll
M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
Log Message:
-----------
[GlobalIsel] Post-review combine ADDO (#85961)
https://github.com/llvm/llvm-project/pull/82927
Commit: 29bf32efbb646b2ab3dec25f100419fc75635878
https://github.com/llvm/llvm-project/commit/29bf32efbb646b2ab3dec25f100419fc75635878
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
A llvm/include/llvm/Passes/TargetPassRegistry.inc
A llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/test/Transforms/LoopIdiom/AArch64/byte-compare-index.ll
Log Message:
-----------
[NewPM][AArch64] Add AArch64PassRegistry.def (#85215)
PR #83567 ports `SelectionDAGISel` to the new pass manager, then each
backend should provide `<Target>DagToDagISel()` in new pass manager
style. Then each target should provide `<Target>PassRegistry.def` to
register backend passes in `registerPassBuilderCallbacks` to reduce
duplicate code.
This PR adds `AArch64PassRegistry.def` to AArch64 backend and
boilerplate code in `registerPassBuilderCallbacks`.
Commit: a5d7fc1d1000ffb1d21796f5d587f277c2957d66
https://github.com/llvm/llvm-project/commit/a5d7fc1d1000ffb1d21796f5d587f277c2957d66
Author: Matthias Springer <me at m-sp.org>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack_d.mlir
Log Message:
-----------
[mlir][sparse] Fix typos in comments (#86074)
Commit: 7bb87d533891c2bcfa1c9132605f0d3e8227d444
https://github.com/llvm/llvm-project/commit/7bb87d533891c2bcfa1c9132605f0d3e8227d444
Author: Madhur Amilkanthwar <madhura at nvidia.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-abs.mir
M llvm/test/CodeGen/AArch64/abs.ll
Log Message:
-----------
[AArch64][GlobalISel] Take abs scalar codegen closer to SDAG (#84886)
This patch improves codegen for scalar (<128bits) version
of llvm.abs intrinsic by using the existing non-XOR based lowering.
This takes the generated code closer to SDAG.
codegen with GISel for > 128 bit types is not very good
with these method so not doing so.
Commit: 35d3b3430eff16403d004d9f0b0369f0814cf140
https://github.com/llvm/llvm-project/commit/35d3b3430eff16403d004d9f0b0369f0814cf140
Author: Matthias Springer <me at m-sp.org>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
M mlir/include/mlir/Dialect/Bufferization/Transforms/OneShotAnalysis.h
M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
M mlir/lib/Dialect/Bufferization/Transforms/OneShotAnalysis.cpp
M mlir/test/Dialect/Arith/one-shot-bufferize.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-allow-return-allocs.mlir
A mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-analysis-bottom-up-from-terminators.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-partial.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize-allow-return-allocs.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize-analysis.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize.mlir
M mlir/test/Dialect/Linalg/one-shot-bufferize.mlir
M mlir/test/Dialect/SCF/one-shot-bufferize-analysis.mlir
M mlir/test/Dialect/SCF/one-shot-bufferize.mlir
M mlir/test/Dialect/Tensor/one-shot-bufferize.mlir
Log Message:
-----------
[mlir][bufferization] Add "bottom-up from terminators" analysis heuristic (#83964)
One-Shot Bufferize currently does not support loops where a yielded
value bufferizes to a buffer that is different from the buffer of the
region iter_arg. In such a case, the bufferization fails with an error
such as:
```
Yield operand #0 is not equivalent to the corresponding iter bbArg
scf.yield %0 : tensor<5xf32>
```
One common reason for non-equivalent buffers is that an op on the path
from the region iter_arg to the terminator bufferizes out-of-place. Ops
that are analyzed earlier are more likely to bufferize in-place.
This commit adds a new heuristic that gives preference to ops that are
reachable on the reverse SSA use-def chain from a region terminator and
are within the parent region of the terminator. This is expected to work
better than the existing heuristics for loops where an iter_arg is
written to multiple times within a loop, but only one write is fed into
the terminator.
Current users of One-Shot Bufferize are not affected by this change.
"Bottom-up" is still the default heuristic. Users can switch to the new
heuristic manually.
This commit also turns the "fuzzer" pass option into a heuristic,
cleaning up the code a bit.
Commit: 733640d29ede70585e0e3e1dcc47b935981f791e
https://github.com/llvm/llvm-project/commit/733640d29ede70585e0e3e1dcc47b935981f791e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/test/Transforms/Attributor/align.ll
M llvm/test/Transforms/Attributor/nocapture-1.ll
M llvm/test/Transforms/Attributor/nofpclass.ll
Log Message:
-----------
Attributor: Handle inferring align from use by atomics (#85762)
Commit: df9ed9cf52f82aed023adc968ca2a0e7f7cccc69
https://github.com/llvm/llvm-project/commit/df9ed9cf52f82aed023adc968ca2a0e7f7cccc69
Author: srcarroll <50210727+srcarroll at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/test/Dialect/Linalg/flatten-elementwise.mlir
Log Message:
-----------
[mlir][transform] Fix failure in flattening already flattened linalg ops (#86037)
The previous implementation was doing an early successful return on
`rank <= 1` without adding the original op to transform results. This
resulted in errors about number of returns. This patch fixes this by
adding the original op to results. Additionally, we first check if op is
elementwise and return a slienceable failure early if not.
Commit: 26c290b46ac6b4a81feb28ae1862fac961138a24
https://github.com/llvm/llvm-project/commit/26c290b46ac6b4a81feb28ae1862fac961138a24
Author: Nathan Lanza <nathanlanza at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/tools/CMakeLists.txt
Log Message:
-----------
[cmake] Place clang behind mlir in the list of external projects (#86050)
In preparation for the initial ClangIR upstreaming process, move clang
behind MLIR in the list of external projects. Otherwise, cmake will
attempt to build clang before MLIR.
Commit: d59730d7060f33dd1607be1fd7813be78759a953
https://github.com/llvm/llvm-project/commit/d59730d7060f33dd1607be1fd7813be78759a953
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M clang/CMakeLists.txt
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[CMake] Change GCC_INSTALL_PREFIX from warning to fatal error (#85891)
unless USE_DEPRECATED_GCC_INSTALL_PREFIX (temporary escape hatch) is
set. Setting GCC_INSTALL_PREFIX leads to a warning for Clang 18.1
(#77537) and will be completely removed for Clang 20.
Link:
discourse.llvm.org/t/add-gcc-install-dir-deprecate-gcc-toolchain-and-remove-gcc-install-prefix/65091
Link:
discourse.llvm.org/t/correct-cmake-parameters-for-building-clang-and-lld-for-riscv/72833
Commit: ce8e86971036cb34c3d32cf0b70169379c85ae2f
https://github.com/llvm/llvm-project/commit/ce8e86971036cb34c3d32cf0b70169379c85ae2f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
Log Message:
-----------
[RISCV] Convert an assertion to an if condition in getRegAllocationHints (#85998)
With GPR pairs from Zdinx, we can't guarantee there are no subregisters
on integer instruction operands. I've been able to get these assertions
to fire after some other recent PRs.
I've added a FIXME to support this properly. I just wanted to prevent
the assertion failure for now.
No test case because my other patch #85982 that allowed me to fail the assert
hasn't been approved yet, and I don't know for that that patch is
required to hit this assert. It's just what exposed it for me. So I
think this patch is a good precaution regardless.
Commit: cbcdf126ccc774c063b5d5140c1393ff5305dded
https://github.com/llvm/llvm-project/commit/cbcdf126ccc774c063b5d5140c1393ff5305dded
Author: Nathan Lanza <nathanlanza at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/tools/CMakeLists.txt
Log Message:
-----------
Revert "[cmake] Place clang behind mlir in the list of external projects (#86050)"
This reverts commit 26c290b46ac6b4a81feb28ae1862fac961138a24.
Commit: 8fb2160a76b5f051f4cc8f5c8c097830bc91c22c
https://github.com/llvm/llvm-project/commit/8fb2160a76b5f051f4cc8f5c8c097830bc91c22c
Author: Luke Lau <luke at igalia.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFoldMasks.cpp
Log Message:
-----------
[RISCV] Use DenseMap to track V0 definition. NFC (#84465)
Reviving some of the progress on #71764. To recap, we explored removing
the V0 register copies to simplify the pass, but hit a limitation with
the register allocator due to our use of the vmv0 singleton reg class
and early-clobber constraints.
So since we will have to continue to track the definition of V0
ourselves, this patch simplifies it by storing it in a map. It will
allow us to move about copies to V0 in #71764 without having to do extra
bookkeeping.
Commit: adda597388dc148ac235e755b3e8bbd0a12a3e15
https://github.com/llvm/llvm-project/commit/adda597388dc148ac235e755b3e8bbd0a12a3e15
Author: Tobias Gysi <tobias.gysi at nextsilicon.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M mlir/docs/DataLayout.md
M mlir/include/mlir/Dialect/LLVMIR/LLVMTypes.td
M mlir/include/mlir/Interfaces/DataLayoutInterfaces.h
M mlir/include/mlir/Interfaces/DataLayoutInterfaces.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
M mlir/lib/Interfaces/DataLayoutInterfaces.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/test/Dialect/LLVMIR/layout.mlir
M mlir/test/Interfaces/DataLayoutInterfaces/module.mlir
M mlir/test/Interfaces/DataLayoutInterfaces/query.mlir
M mlir/test/Interfaces/DataLayoutInterfaces/types.mlir
M mlir/test/Target/LLVMIR/data-layout.mlir
M mlir/test/lib/Dialect/DLTI/TestDataLayoutQuery.cpp
M mlir/test/lib/Dialect/Test/TestTypeDefs.td
M mlir/test/lib/Dialect/Test/TestTypes.cpp
M mlir/unittests/Interfaces/DataLayoutInterfacesTest.cpp
Log Message:
-----------
[MLIR] Add index bitwidth to the DataLayout (#85927)
When importing from LLVM IR the data layout of all pointer types
contains an index bitwidth that should be used for index computations.
This revision adds a getter to the DataLayout that provides access to
the already stored bitwidth. The function returns an optional since only
pointer-like types have an index bitwidth. Querying the bitwidth of a
non-pointer type returns std::nullopt.
The new function works for the built-in Index type and, using a type
interface, for the LLVMPointerType.
Commit: a29e9e32c50273abffc53e3700bbc23985f0a7af
https://github.com/llvm/llvm-project/commit/a29e9e32c50273abffc53e3700bbc23985f0a7af
Author: Roberto Bampi <gigaroby at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/docs/ClangFormat.rst
A clang/test/Format/fail-on-incomplete.cpp
M clang/tools/clang-format/ClangFormat.cpp
Log Message:
-----------
[clang-format] Add --fail-on-incomplete-format. (#84346)
At the moment clang-format will return exit code 0 on incomplete
results. In scripts it would sometimes be useful if clang-format would
instead fail in those cases, signalling that there was something wrong
with the code being formatted.
---------
Co-authored-by: Björn Schäpers <github at hazardy.de>
Co-authored-by: Owen Pan <owenpiano at gmail.com>
Commit: 1404640533fdeda5fb381019a436e4ee84bb2174
https://github.com/llvm/llvm-project/commit/1404640533fdeda5fb381019a436e4ee84bb2174
Author: Adrian Kuegel <akuegel at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/python/BUILD.bazel
Log Message:
-----------
[mlir][Bazel] Add target for index dialect python bindings
Commit: b6b703b2dfc1d1ba45ebc64ed6b53a3a46f531f5
https://github.com/llvm/llvm-project/commit/b6b703b2dfc1d1ba45ebc64ed6b53a3a46f531f5
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
A llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
M llvm/test/CodeGen/AMDGPU/copy-vgpr-clobber-spill-vgpr.mir
M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
M llvm/test/CodeGen/AMDGPU/preload-kernargs-inreg-hints.ll
M llvm/test/CodeGen/AMDGPU/propagate-flat-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
M llvm/test/CodeGen/AMDGPU/recursive_global_initializer.ll
M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
M llvm/test/CodeGen/AMDGPU/vgpr-agpr-limit-gfx90a.ll
Log Message:
-----------
AMDGPU: Infer no-agpr usage in AMDGPUAttributor (#85948)
SIMachineFunctionInfo has a scan of the function body for inline asm
which may use AGPRs, or callees in SIMachineFunctionInfo. Move this
into the attributor, so it actually works interprocedurally.
Could probably avoid most of the test churn if this bothered to avoid
adding this on subtargets without AGPRs. We should also probably
try to delete the MIR scan in usesAGPRs but it seems to be trickier
to eliminate.
Commit: b433076fcbacba8a3b91446390bbea5843322bcd
https://github.com/llvm/llvm-project/commit/b433076fcbacba8a3b91446390bbea5843322bcd
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CGDecl.cpp
M clang/test/CodeGen/aapcs-align.cpp
M clang/test/CodeGen/aapcs64-align.cpp
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGenCXX/auto-var-init.cpp
M clang/test/CodeGenOpenCL/amdgpu-printf.cl
M clang/test/OpenMP/bug54082.c
Log Message:
-----------
[clang][CodeGen] Allow `memcpy` replace with trivial auto var init
When emitting the storage (or memory copy operations) for constant
initializers, the decision whether to split a constant structure or
array store into a sequence of field stores or to use `memcpy` is
based upon the optimization level and the size of the initializer.
In afe8b93ffdfef5d8879e1894b9d7dda40dee2b8d, we extended this by
allowing constants to be split when the array (or struct) type does
not match the type of data the address to the object (constant) is
expected to contain. This may happen when `emitStoresForConstant` is
called by `EmitAutoVarInit`, as the element type of the address gets
shrunk. When this occurs, let the initializer be split into a bunch
of stores only under `-ftrivial-auto-var-init=pattern`.
Fixes: https://github.com/llvm/llvm-project/issues/84178.
Commit: 9fb85b09946122aa5793b647d7939ac17817c5f5
https://github.com/llvm/llvm-project/commit/9fb85b09946122aa5793b647d7939ac17817c5f5
Author: Christian Sigg <csigg at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[mlir][bazel] Update BUILD after 29bf32efbb646b2ab3dec25f100419fc75635878.
Commit: 7b5a5be2a7216906c20f9bcac2209ea3502a7a73
https://github.com/llvm/llvm-project/commit/7b5a5be2a7216906c20f9bcac2209ea3502a7a73
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] visitSUB/visitSUBO - move getAsNonOpaqueConstant into the if() where its used. NFC.
Noticed while beginning some cleanup for moving to pattern matchers
Commit: ee5e027cc64957c0e18b8c38ce10d4b84314511c
https://github.com/llvm/llvm-project/commit/ee5e027cc64957c0e18b8c38ce10d4b84314511c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/test/Transforms/PhaseOrdering/X86/pr67803.ll
Log Message:
-----------
[X86] getShuffleCost - recognise concat_vector(X,Y) shuffle as InsertSubvector instead of PermuteTwoSrc
We don't have a concat_vector shuffle kind and improveShuffleKindFromMask won't alter the base type to match it as InsertSubvector.
But since this is how X86 will lower concat_vector anyhow, just recognise it explicitly.
Another step for #67803
Commit: a6a9215b93bcbf901cd11d2dd02cce1a245d3ffe
https://github.com/llvm/llvm-project/commit/a6a9215b93bcbf901cd11d2dd02cce1a245d3ffe
Author: Johannes Reifferscheid <jreiffers at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
Log Message:
-----------
Lower shuffle to single-result form if possible. (#84321)
We currently always lower shuffle to the struct-returning variant. I saw
some cases where this survived all the way through ptx, resulting in
increased register usage. The easiest fix is to simply lower to the
single-result version when the predicate is unused.
Commit: 11aa95f83b7bf980ea13f1bb75e09af89a733acb
https://github.com/llvm/llvm-project/commit/11aa95f83b7bf980ea13f1bb75e09af89a733acb
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] visitSUB - pull out repeated getScalarSizeInBits() calls. NFC.
Commit: 23de3862dce582ce91c1aa914467d982cb1a73b4
https://github.com/llvm/llvm-project/commit/23de3862dce582ce91c1aa914467d982cb1a73b4
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] visitSUB - use sd_match to match SUB(MAX,MIN) -> ABD pattern. NFC.
Seriously simplifies the commutation matching logic.
Commit: ccb3a8feaa5b132dc829e55e069dde62008df4a8
https://github.com/llvm/llvm-project/commit/ccb3a8feaa5b132dc829e55e069dde62008df4a8
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
A llvm/test/CodeGen/AMDGPU/lds-mixed-absolute-addresses-unused.ll
M llvm/test/CodeGen/AMDGPU/lds-reject-mixed-absolute-addresses.ll
Log Message:
-----------
[AMDGPU][LowerModuleLDS] Refactor partially lowered module detection (#85793)
Refactor the logic that checks if a module contains mixed
absolute/non-lowered LDS GVs.
The check now happens latter when the "worklists" are formed. This is
because in some cases (OpenMP) we can have non-lowered GVs in a lowered
module, and this is normal because those GVs are just unused and removed
from the list at some point before the end of `getUsesOfLDSByFunction`.
Doing the check later ensures that if a mixed module is spotted, then
it's a _real_ mixed module that needs rejection, not a module containing
an intentionally ignored GV.
Commit: 8ecc377c88ba32978ace6a67de895403eeba3a22
https://github.com/llvm/llvm-project/commit/8ecc377c88ba32978ace6a67de895403eeba3a22
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Object/COFFImportFile.cpp
M llvm/test/tools/llvm-lib/arm64ec-implib.test
Log Message:
-----------
[llvm-lib] Use ARM64EC machine type for import libraries when -machine:arm64x is used. (#85972)
This is compatible with MSVC, `-machine:arm64x` is essentially an alias
to `-machine:arm64ec`. To make a type library that exposes both native
and EC symbols, an additional `-defArm64Native` argument is needed in
both cases.
Commit: 0124e0821dd87bb021f31d1d9aecc2e0f3a52514
https://github.com/llvm/llvm-project/commit/0124e0821dd87bb021f31d1d9aecc2e0f3a52514
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/include/llvm/BinaryFormat/COFF.h
M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
Log Message:
-----------
[Object][COFF][NFC] Introduce Arm64ECThunkType enum. (#85936)
And use it in EC lowering code. It will be useful for LLD too.
Commit: 95a834a16c3de0de615d0cfa20a6c8bd973b6a1d
https://github.com/llvm/llvm-project/commit/95a834a16c3de0de615d0cfa20a6c8bd973b6a1d
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
A llvm/test/CodeGen/AMDGPU/lto-lower-module-lds.ll
Log Message:
-----------
(Reland) [AMDGPU] Run LowerLDS at the end of the fullLTO pipeline (#85626)
Reland of #75333
Commit: 2096f37d7a580a4b4ddce2a44abb80ff90f273ee
https://github.com/llvm/llvm-project/commit/2096f37d7a580a4b4ddce2a44abb80ff90f273ee
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M libcxx/include/__string/char_traits.h
Log Message:
-----------
[libc++][NFC] Use __constexpr_memmove instead of copy_n in <__string/char_traits.h> (#85920)
`copy_n` has been used to allow constant evaluation of `char_traits`. We
now have `__constexpr_memmove`, which `copy_n` just forwards to. We can
call `__constexpr_memmove` directly, avoiding a bunch of instantiations.
This reduces the time it takes to include `<string>` from 321ms to
285ms.
Commit: cb071942f881e743b8131688a873dab760c7b88d
https://github.com/llvm/llvm-project/commit/cb071942f881e743b8131688a873dab760c7b88d
Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M openmp/libomptarget/plugins-nextgen/host/CMakeLists.txt
Log Message:
-----------
[OpenMP] Fix SystemZ build failure
Commit a7d5f73a03c81cab8df64dbd099e8acb40f5dfe1 introduced an
error in a target_compile_definitions on the SystemZ, causing
the build to break. Fixed by adding the missing "PRIVATE".
Commit: e8cf1754988cf281e76ae463b3e1f3c0cda3f230
https://github.com/llvm/llvm-project/commit/e8cf1754988cf281e76ae463b3e1f3c0cda3f230
Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/runtimes/CMakeLists.txt
Log Message:
-----------
[runtimes] Fix OpenMP dependencies (#85977)
When building the OpenMP runtime with libomptarget support, the runtimes
configure step needs to have a dependency on various tools, in
particular opt, so that cmake configure checks yield the correct
results.
This did not work correctly, as the dependencies were only added if the
OPENMP_ENABLE_LIBOMPTARGET was set - but that variable is only set by
the openmp/CMakeLists.txt file, which isn't even parsed during the
initial cmake run (in fact, it is only parsed when executing the
runtimes configure step itself, but then it is too late).
Fixed by just adding those dependencies always.
In addition, the list of dependencies collected in ${extra_deps},
including those required for OpenMP, was only actually used when
configuring runtimes for the default set of targets - when the user
specifies a non-default LLVM_RUNTIME_TARGETS, those extra dependencies
were ignored (with the exception of ${hdrgen_deps}).
Fixed by passing the full ${extra_deps} in this case as well.
Fixes: https://github.com/llvm/llvm-project/issues/85933
Commit: 8779edb8b33e8ae7e021c8fa7fff80d77567b28c
https://github.com/llvm/llvm-project/commit/8779edb8b33e8ae7e021c8fa7fff80d77567b28c
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M libcxx/docs/Status/Cxx23Issues.csv
M libcxx/include/__system_error/errc.h
M libcxx/include/cerrno
M libcxx/src/random.cpp
A libcxx/test/std/depr.cerro/cerrno.syn.verify.cpp
A libcxx/test/std/depr.cerro/system.error.syn.verify.cpp
M libcxx/test/std/diagnostics/syserr/errc.pass.cpp
Log Message:
-----------
[libc++] Deprecates std::errc constants. (#80542)
Implements:
- LWG3869 Deprecate std::errc constants related to UNIX STREAMS
Commit: 7e72cafd68335e45d95ea6b7705bb5b9e7e442c8
https://github.com/llvm/llvm-project/commit/7e72cafd68335e45d95ea6b7705bb5b9e7e442c8
Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/X86/dagcombine-shifts.ll
Log Message:
-----------
[SelectionDAG] Add MaskedValueIsZero check to allow folding of zero extended variables we know are safe to extend (#85573)
Add ones for every high bit that will cleared.
This will allow us to evaluate variables that have their bits known to
see if they have no risk of overflow despite the shift amount being
greater than the difference between the two types.
Commit: 83e5a1239242d64110e3dfa96ed3889170ab96b2
https://github.com/llvm/llvm-project/commit/83e5a1239242d64110e3dfa96ed3889170ab96b2
Author: Christian Sigg <chsigg at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch5/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch6/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch7/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/unittests/BUILD.bazel
Log Message:
-----------
[mlir][bazel] Don't expose interface headers from //mlir:IR. (#85867)
Move 3 interface headers in `//mlir:IR` from `hdrs` to `srcs`.
Header files should not be added to multiple targets, but this is hard
to avoid because CMake is less strict with headers. But we should at
least avoid exposing them as headers by multiple targets because it
confuses tooling.
Commit: 3ac243bc0d7922d083af2cf025247b5698556062
https://github.com/llvm/llvm-project/commit/3ac243bc0d7922d083af2cf025247b5698556062
Author: SahilPatidar <patidarsahil2001 at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-non-fixed.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/combine_andor_with_cmps.ll
M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
M llvm/test/CodeGen/AMDGPU/indirect-call.ll
M llvm/test/CodeGen/AMDGPU/schedule-addrspaces.ll
M llvm/test/CodeGen/AMDGPU/scratch-pointer-sink.ll
Log Message:
-----------
Update amdgpu_gfx functions to use s0-s3 for inreg SGPR arguments on targets using scratch instructions for stack #78226 (#81394)
Resolve #78226
Commit: 34f0a8aaba11bf703ddd2de92eee8ecbb77be5c8
https://github.com/llvm/llvm-project/commit/34f0a8aaba11bf703ddd2de92eee8ecbb77be5c8
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/orig-btiwidth-les-projected.ll
Log Message:
-----------
[SLP]Fix comparison in bitwidth check.
Projected bitwidth should be less than the original, not greater.
Commit: df6a1d44094e187d7d5ea3ee5b54b9bccc8a4798
https://github.com/llvm/llvm-project/commit/df6a1d44094e187d7d5ea3ee5b54b9bccc8a4798
Author: Christian Sigg <chsigg at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M mlir/include/mlir/IR/TensorEncoding.td
Log Message:
-----------
[mlir][tensor] NFC: fully qualify verifyEncoding arguments.
Commit: 2699072b4bc8d8d5e84eb66af38face73ceeb4d3
https://github.com/llvm/llvm-project/commit/2699072b4bc8d8d5e84eb66af38face73ceeb4d3
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/Features.def
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/ParseInit.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/test/Lexer/has_extension_cxx.cpp
M clang/test/OpenMP/declare_reduction_messages.cpp
M clang/test/OpenMP/openmp_check.cpp
A clang/test/Parser/cxx03-lambda-extension.cpp
M clang/test/Parser/cxx0x-lambda-expressions.cpp
M clang/test/Parser/cxx2b-lambdas.cpp
M clang/test/Parser/objcxx-lambda-expressions-neg.mm
M clang/test/ParserHLSL/group_shared.hlsl
M clang/test/SemaCXX/cxx2a-template-lambdas.cpp
M clang/test/SemaCXX/lambda-expressions.cpp
M clang/test/SemaCXX/lambda-implicit-this-capture.cpp
M clang/test/SemaCXX/lambda-invalid-capture.cpp
M clang/test/SemaCXX/new-delete.cpp
Log Message:
-----------
[clang] Accept lambdas in C++03 as an extensions (#73376)
Implements
https://discourse.llvm.org/t/rfc-allow-c-11-lambdas-in-c-03-as-an-extension/75262
Commit: 4946cc37f4865b89fbebcfa0120183a11ae8d4ab
https://github.com/llvm/llvm-project/commit/4946cc37f4865b89fbebcfa0120183a11ae8d4ab
Author: Ilia Kuklin <ikuklin at accesssoftek.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/docs/CommandGuide/llvm-objcopy.rst
M llvm/docs/ReleaseNotes.rst
M llvm/include/llvm/ObjCopy/CommonConfig.h
M llvm/lib/ObjCopy/ConfigManager.cpp
M llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp
A llvm/test/tools/llvm-objcopy/ELF/skip-symbol.test
M llvm/tools/llvm-objcopy/ObjcopyOptions.cpp
M llvm/tools/llvm-objcopy/ObjcopyOpts.td
Log Message:
-----------
[llvm-objcopy] Add --skip-symbol and --skip-symbols options (#80873)
Add --skip-symbol and --skip-symbols options that allow to skip symbols
when executing other options that can change the symbol's name, binding
or visibility, similar to an existing option --keep-symbol that keeps a
symbol from being removed by other options.
Commit: 02cb89b36a7ae9be4ab657306b69dc9d2830d0d5
https://github.com/llvm/llvm-project/commit/02cb89b36a7ae9be4ab657306b69dc9d2830d0d5
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/include/llvm/Passes/TargetPassRegistry.inc
Log Message:
-----------
[NewPM] Handle error in TargetPassRegistry.inc (#86112)
Mistakenly believing that checking Expected is sufficient.
Commit: 734026347cca85cf0e242ef5f04896f55e0ac113
https://github.com/llvm/llvm-project/commit/734026347cca85cf0e242ef5f04896f55e0ac113
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
A flang/test/Lower/OpenMP/wsloop-reduction-multi.f90
Log Message:
-----------
Reapply "[Flang][OpenMP][Lower] NFC: Move clause processing helpers into the ClauseProcessor (#85258)" (#85807)
This patch contains slight modifications to the reverted PR #85258 to
avoid issues with constructs containing multiple reduction clauses,
uncovered by a test on the gfortran testsuite.
This reverts commit 9f80444c2e669237a5c92013f1a42b91b5609012.
Commit: fa6e4338369c787710f1fe682cf6bd62348b9104
https://github.com/llvm/llvm-project/commit/fa6e4338369c787710f1fe682cf6bd62348b9104
Author: Spenser Bauman <sbauman at mathworks.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp
M mlir/test/Dialect/Tosa/constant-op-fold.mlir
Log Message:
-----------
[mlir][tosa] Fix assertion failure in tosa-layerwise-constant-fold (#85670)
The existing implementation of tosa-layerwise-constant-fold only works
for constant values backed by DenseElementsAttr. For constants which
hold DenseResourceAttrs, the folder will end up asserting at runtime, as
it assumes that the backing data can always be accessed through
ElementsAttr::getValues.
This change reworks the logic so that types types used to perform
folding are based on whether the ElementsAttr can be converted to a
range of that particular type.
---------
Co-authored-by: Spenser Bauman <sabauma at mathworks.com>
Co-authored-by: Tina Jung <tinamaria.jung at amd.com>
Commit: 49b520856967c2354339d3c2a05fcf1d2d637f30
https://github.com/llvm/llvm-project/commit/49b520856967c2354339d3c2a05fcf1d2d637f30
Author: Paul T Robinson <paul.robinson at sony.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/lib/Headers/avxintrin.h
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/xmmintrin.h
Log Message:
-----------
[X86][Headers] Specify result of NaN comparisons (#85862)
Make sure all float/double comparison intrinsics specify what happens
with a NaN input. Update some existing descriptions of comparison
results to make them all consistent.
Also replace "yields" with "returns" throughout.
Commit: aa4cbaba1dd3882932ab8772392325242f3c7bee
https://github.com/llvm/llvm-project/commit/aa4cbaba1dd3882932ab8772392325242f3c7bee
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/X86/store-abs-minbitwidth.ll
Log Message:
-----------
[SLP][NFC]Add a test with @llvm.abs nodes, which can be analyzed for
better bitwidth.
Commit: 538257bf00960f6134a51a17c8477b298ff87c30
https://github.com/llvm/llvm-project/commit/538257bf00960f6134a51a17c8477b298ff87c30
Author: Christian Sigg <chsigg at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bazel] Update BUILD after 61b24c61a90802e06e40a7ab0aa5e2138486bd73
Commit: 0aa6d57e575dd920db81bef7ff509c4d3a9c6891
https://github.com/llvm/llvm-project/commit/0aa6d57e575dd920db81bef7ff509c4d3a9c6891
Author: Matthias Gehre <matthias.gehre at amd.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
A mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitC.h
A mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitCPass.h
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/lib/Conversion/CMakeLists.txt
A mlir/lib/Conversion/MemRefToEmitC/CMakeLists.txt
A mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
A mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitCPass.cpp
A mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-failed.mlir
A mlir/test/Conversion/MemRefToEmitC/memref-to-emitc.mlir
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[MLIR] Add initial convert-memref-to-emitc pass (#85389)
This converts `memref.alloca`, `memref.load` & `memref.store` to
`emitc.variable`, `emitc.subscript` and `emitc.assign`.
Commit: 276283d8641f13b6ecde736ab1a8720f742d9d02
https://github.com/llvm/llvm-project/commit/276283d8641f13b6ecde736ab1a8720f742d9d02
Author: chrulski-intel <christopher.m.chrulski at intel.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M lld/MinGW/Driver.cpp
M lld/MinGW/Options.td
M lld/test/MinGW/driver.test
Log Message:
-----------
[LLD] [MinGW] Implement the -lto-sample-profile option (#85841)
This has been a supported option for ELF and is added to the COFF Linker
in #85701
Commit: 5344a370fe85d9119729d9036540bbd91956da38
https://github.com/llvm/llvm-project/commit/5344a370fe85d9119729d9036540bbd91956da38
Author: Kirill Chibisov <contact at kchibisov.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M mlir/lib/Dialect/EmitC/Transforms/FormExpressions.cpp
M mlir/test/Dialect/EmitC/transforms.mlir
Log Message:
-----------
[mlir][emitc] Fix form-expressions inside expression (#86081)
Make form-expressions not create `emitc.expression`s for operations
inside the `emitc.expression`s, since they are invalid.
Commit: 15eba9c12a1486ee600e35ecb83b1f2c8459416e
https://github.com/llvm/llvm-project/commit/15eba9c12a1486ee600e35ecb83b1f2c8459416e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
Log Message:
-----------
[VectorCombine] Add DataLayout to VectorCombine class instead of repeated calls to getDataLayout(). NFC.
Commit: 686f4599cfa444aa62db4e22bf752f3d9614c30d
https://github.com/llvm/llvm-project/commit/686f4599cfa444aa62db4e22bf752f3d9614c30d
Author: David Green <david.green at arm.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/test/CodeGen/ARM/arm-and-tst-peephole.ll
M llvm/test/CodeGen/ARM/select.ll
Log Message:
-----------
[ARM] Regenerate some check lines. NFC
Commit: 2bfa7d0e1691dcff095c602a0387a6d13213dc91
https://github.com/llvm/llvm-project/commit/2bfa7d0e1691dcff095c602a0387a6d13213dc91
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
M llvm/test/Transforms/InstCombine/binop-itofp.ll
M llvm/test/Transforms/InstCombine/fmul.ll
M llvm/test/Transforms/InstCombine/fpcast.ll
Log Message:
-----------
[InstCombine] Fold `fmul X, -0.0` into `copysign(0.0, -X)` (#85772)
`fneg + copysign` is better than fmul for analysis/codegen.
godbolt: https://godbolt.org/z/eEs6dGd1G
Alive2: https://alive2.llvm.org/ce/z/K3M5BA
Commit: 857161c367a1cdca926dbe0d2601e3afc52f03f9
https://github.com/llvm/llvm-project/commit/857161c367a1cdca926dbe0d2601e3afc52f03f9
Author: Janek van Oirschot <5994977+JanekvO at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
A llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.cpp
A llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/CMakeLists.txt
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
A llvm/test/MC/AMDGPU/hsa-amdgpu-exprs.s
A llvm/test/MC/AMDGPU/hsa-sym-expr-failure.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx10.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx11.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx12.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx7.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx8.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx90a.s
A llvm/test/MC/AMDGPU/hsa-tg-split.s
Log Message:
-----------
[AMDGPU] MCExpr-ify MC layer kernel descriptor (#80855)
Kernel descriptor attributes, with their respective emit and asm parse functionality, converted to MCExpr.
Commit: 26c3d018b1f57b33779c53d4fed5ea895810c314
https://github.com/llvm/llvm-project/commit/26c3d018b1f57b33779c53d4fed5ea895810c314
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/MCTargetDesc/BUILD.gn
Log Message:
-----------
[gn build] Port 857161c367a1
Commit: a11d9b463966d31ecedb373115abdcca54f704c3
https://github.com/llvm/llvm-project/commit/a11d9b463966d31ecedb373115abdcca54f704c3
Author: Akira Hatanaka <ahatanak at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/test/Driver/clang-offload-bundler-asserts-on.c
M clang/test/Driver/clang-offload-bundler-standardize.c
M clang/test/Driver/clang-offload-bundler.c
M clang/test/Driver/fat-archive-unbundle-ext.c
Log Message:
-----------
Disable driver tests on macosx that are currently disabled on darwin (#85990)
macosx and darwin in triples are equivalent.
rdar://124246653
Commit: 2152094a45af98c9ccfef6d5913f38c66ab8b165
https://github.com/llvm/llvm-project/commit/2152094a45af98c9ccfef6d5913f38c66ab8b165
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/lib/Driver/Driver.cpp
M clang/test/Driver/modules-print-library-module-manifest-path.cpp
Log Message:
-----------
[clang] Improves -print-library-module-manifest-path. (#85943)
This adds a libc++ to modules.json as is currently used by libc++. When
libc++.so is not found the function will search for libc++.a as
fallback.
Commit: 2861856baf16e43a5e465e87022c6c2c2d238969
https://github.com/llvm/llvm-project/commit/2861856baf16e43a5e465e87022c6c2c2d238969
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
A mlir/include/mlir/Dialect/Vector/IR/ScalableValueBoundsConstraintSet.h
A mlir/include/mlir/Dialect/Vector/IR/ValueBoundsOpInterfaceImpl.h
M mlir/include/mlir/InitAllDialects.h
M mlir/include/mlir/Interfaces/ValueBoundsOpInterface.h
M mlir/lib/Dialect/Vector/IR/CMakeLists.txt
A mlir/lib/Dialect/Vector/IR/ScalableValueBoundsConstraintSet.cpp
A mlir/lib/Dialect/Vector/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
A mlir/test/Dialect/Vector/test-scalable-bounds.mlir
M mlir/test/lib/Dialect/Affine/TestReifyValueBounds.cpp
Log Message:
-----------
[mlir][Vector] Add utility for computing scalable value bounds (#83876)
This adds a new API built with the `ValueBoundsConstraintSet` to compute
the bounds of possibly scalable quantities. It uses knowledge of the
range of vscale (which is defined by the target architecture), to solve
for the bound as either a constant or an expression in terms of vscale.
The result is an `AffineMap` that will always take at most one
parameter, vscale, and returns a single result, which is the bound of
`value`.
The API is defined as follows:
```c++
FailureOr<ConstantOrScalableBound>
vector::ScalableValueBoundsConstraintSet::computeScalableBound(
Value value, std::optional<int64_t> dim,
unsigned vscaleMin, unsigned vscaleMax,
presburger::BoundType boundType,
bool closedUB = true,
StopConditionFn stopCondition = nullptr);
```
Note: `ConstantOrScalableBound` is a thin wrapper over the `AffineMap`
with a utility for converting the bound to a single quantity (i.e. a
size and scalable flag).
We believe this API could prove useful downstream in IREE (which uses a
similar analysis to hoist allocas, which currently fails for scalable
vectors).
Commit: d1f182c895728d89c5c3d198b133e212a5d9d4a3
https://github.com/llvm/llvm-project/commit/d1f182c895728d89c5c3d198b133e212a5d9d4a3
Author: Joe Nash <Sisyph at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
R llvm/test/MC/AMDGPU/gfx11_asm_vinterp.s
A llvm/test/MC/AMDGPU/vinterp-fake16.s
R llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vinterp.txt
R llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vinterp.txt
A llvm/test/MC/Disassembler/AMDGPU/vinterp-fake16.txt
Log Message:
-----------
[AMDGPU][MC][True16] Rename and combine VINTERP MC tests (#85949)
NFC.
gfx11_asm_vinterp.s already contained GFX12 run lines. Rename the
assembler and disassembler tests to be sorted based on real16 or fake16
instead of gfxip. Note, both GFX11 and GFX12 currently only have fake16
(fake16 in encoding, but not by name) upstream, so that is why the test
files have a -fake16 suffix.
One test input is changed, and that is the disassembler test for
unsupported bits in the instruction. It is now an input that is valid on
both GFX11 and GFX12. This was necessary because the size of the opcode
field changed.
Commit: 44278f2326e0df463f6d5dd43820858ee4cffc6f
https://github.com/llvm/llvm-project/commit/44278f2326e0df463f6d5dd43820858ee4cffc6f
Author: Joe Nash <joseph.nash at amd.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_features.txt
Log Message:
-----------
[AMDGPU][MC] Fix GFX12 check line typo and move test
NFC.
Fix CHECK lines that seem to have a copy paste error.
Move the test that was formerly in gfx12_dasm_vinterp.txt (see #85949).
Commit: b4b5e8277a86d441830dbba54917bf22b0ad8608
https://github.com/llvm/llvm-project/commit/b4b5e8277a86d441830dbba54917bf22b0ad8608
Author: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/FinalizeISel.cpp
A llvm/test/CodeGen/SystemZ/frame-adjstack.ll
Log Message:
-----------
Check for all frame instructions in finalize isel. (#85945)
Check for all frame instructions in finalize isel, not just for the
frame setup opcode. This was proven necessary, see #78001
for discussion.
Commit: 6898147b9f38c3bb46be5704bdad22abed7af339
https://github.com/llvm/llvm-project/commit/6898147b9f38c3bb46be5704bdad22abed7af339
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
A llvm/docs/InstCombineContributorGuide.md
M llvm/docs/UserGuides.rst
Log Message:
-----------
[InstCombine] Add contributor guide (#79007)
Document expectations for contributions to InstCombine, especially
regarding test coverage and alive2 proofs.
Commit: 8d7a6e2fd8beadc54a2e54fa361d35c66fdb40a4
https://github.com/llvm/llvm-project/commit/8d7a6e2fd8beadc54a2e54fa361d35c66fdb40a4
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/gather-nodes-different-bb.ll
Log Message:
-----------
[SLP]Fix a crash for gather node with instructions from different bbs,
if cost threshold is very low.
Commit: e4fa2e3562f20106f0fe4a4d09df03a548db4eae
https://github.com/llvm/llvm-project/commit/e4fa2e3562f20106f0fe4a4d09df03a548db4eae
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Log Message:
-----------
[DAG] isGuaranteedNotToBeUndefOrPoisonForTargetNode - add fallback implementation (#86125)
Allow targets to rely on TargetLowering::isGuaranteedNotToBeUndefOrPoisonForTargetNode to test nodes for canCreateUndefOrPoisonForTargetNode + all arguments are isGuaranteedNotToBeUndefOrPoison.
Targets can still perform this themselves for specific special case nodes (e.g. target shuffles).
Matches the fallback in SelectionDAG::isGuaranteedNotToBeUndefOrPoison
Commit: 7678e6e562811688b472ad19900fa64cd00b7c06
https://github.com/llvm/llvm-project/commit/7678e6e562811688b472ad19900fa64cd00b7c06
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
A llvm/test/CodeGen/RISCV/zdinx-large-spill.mir
Log Message:
-----------
[RISCV] Lower the alignment requirement for a GPR pair spill for Zdinx on RV32. (#85871)
I believe we can use XLen alignment as long as eliminateFrameIndex
limits the maximum folded offset to 2043. This way when we split
the load/store into two 2 instructions we'll be able to add 4
without overflowing simm12.
Commit: c04807c84e2a2653ab325f1b8ec73916565e6c54
https://github.com/llvm/llvm-project/commit/c04807c84e2a2653ab325f1b8ec73916565e6c54
Author: aniplcc <aniplccode at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/stdio.rst
M libc/spec/stdc.td
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/linux/CMakeLists.txt
A libc/src/stdio/linux/rename.cpp
A libc/src/stdio/rename.h
M libc/test/src/stdio/CMakeLists.txt
A libc/test/src/stdio/rename_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][c11] Add stdio.h's rename() function (#85068)
Adds stdio.h's rename() function as defined in n3096. Fixes #84980.
Commit: 50801f1095d33e712c3a51fdeef82569bd09007f
https://github.com/llvm/llvm-project/commit/50801f1095d33e712c3a51fdeef82569bd09007f
Author: Martin Storsjö <martin at martin.st>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M libcxx/modules/CMakeLists.txt
Log Message:
-----------
Reapply [libcxx] [modules] Fix relative paths with absolute LIBCXX_INSTALL_MODULES_DIR (#86020)
This reapplies 272d1b44efdedb68c194970a610f0ca1b7b769c5 (from #85756),
which was reverted in
407937036fa7640f61f225474b1ea6623a40dbdd.
In the previous attempt, empty CMAKE_INSTALL_PREFIX was handled by
quoting them, in d209d1340b99d4fbd325dffb5e13b757ab8264ea. That made the
calls to cmake_path(ABSOLUTE_PATH) succeed, but the output paths of that
weren't actually absolute, which was required by file(RELATIVE_PATH).
Avoid this issue by constructing a non-empty base directory variable
to use for calculating the relative path.
Commit: 7650a01927b8488b1d6d0930109e78c695193faf
https://github.com/llvm/llvm-project/commit/7650a01927b8488b1d6d0930109e78c695193faf
Author: timoh-ba <t.habighorst at beckhoff.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/MC/MCDwarf.cpp
A llvm/test/MC/COFF/dwarf5lineinfo.s
Log Message:
-----------
[DWARF5][COFF] Emit section-relative .debug_line_str relocations (#83773)
Dwarf 5 allows separating filenames from .debug_line into a separate
.debug_line_str section. The strings are referenced relative to the
start of the .debug_line_str section. Previously, on COFF, the
relocation information instead caused offsets to be relocated to the
base address of the COFF-File. This lead to wrong offsets in linked
COFF (PE) files which caused the debugger to be unable to find the
correct source files.
This patch fixes this problem by making the offsets relative to the
start of the .debug_line_str section instead. There should be no
changes for ELF-Files as everything seems to be working there.
A test is also added to ensure that the correct relocation entries are
emitted.
Commit: 0c8dfc85c3740bd8905e21642f616e6fd54854e0
https://github.com/llvm/llvm-project/commit/0c8dfc85c3740bd8905e21642f616e6fd54854e0
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/rename_test.cpp
Log Message:
-----------
[libc][stdio][test] fixup rename test (#86136)
Link: #84980
Link: #85068
Commit: 556fe5f290ea88dcbb7ced16b0f057dcebce1fd0
https://github.com/llvm/llvm-project/commit/556fe5f290ea88dcbb7ced16b0f057dcebce1fd0
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M lldb/include/lldb/Core/Disassembler.h
M lldb/include/lldb/Symbol/LineEntry.h
M lldb/include/lldb/Utility/SupportFile.h
M lldb/source/API/SBLineEntry.cpp
M lldb/source/API/SBThread.cpp
M lldb/source/Breakpoint/BreakpointResolver.cpp
M lldb/source/Breakpoint/BreakpointResolverFileLine.cpp
M lldb/source/Commands/CommandObjectBreakpoint.cpp
M lldb/source/Commands/CommandObjectSource.cpp
M lldb/source/Commands/CommandObjectThread.cpp
M lldb/source/Core/Address.cpp
M lldb/source/Core/Disassembler.cpp
M lldb/source/Core/FormatEntity.cpp
M lldb/source/Core/IOHandlerCursesGUI.cpp
M lldb/source/Core/SourceManager.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
M lldb/source/Symbol/CompileUnit.cpp
M lldb/source/Symbol/Function.cpp
M lldb/source/Symbol/LineEntry.cpp
M lldb/source/Symbol/LineTable.cpp
M lldb/source/Symbol/SymbolContext.cpp
M lldb/source/Target/StackFrame.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/source/Target/Thread.cpp
M lldb/source/Target/TraceDumper.cpp
M lldb/unittests/SymbolFile/PDB/SymbolFilePDBTests.cpp
Log Message:
-----------
[lldb] Reland: Store SupportFile in FileEntry (NFC) (#85892)
This is another step towards supporting DWARF5 checksums and inline
source code in LLDB. This is a reland of #85468 but without the
functional change of storing the support file from the line table (yet).
Commit: 6295e677220bb6ec1fa8abe2f4a94b513b91b786
https://github.com/llvm/llvm-project/commit/6295e677220bb6ec1fa8abe2f4a94b513b91b786
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
A llvm/test/Transforms/Float2Int/pr79158.ll
Log Message:
-----------
[Float2Int] Pre-commit test for SIToFP/UIToFP ConstantRange bug. NFC
The range for these operations is being constructed without the
maximum value for the range due to an incorrect usage of the
ConstantRange constructor.
This causes Float2Int to think the range for 'uitofp i1' only
contains 0 instead of 0 and 1.
Commit: 38f8a3cf0d75cd25e13d3757027f7356e4466cb9
https://github.com/llvm/llvm-project/commit/38f8a3cf0d75cd25e13d3757027f7356e4466cb9
Author: Finn Plummer <50529406+inbelic at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
M mlir/test/Conversion/GPUToSPIRV/load-store.mlir
M mlir/test/Conversion/MemRefToSPIRV/bitwidth-emulation.mlir
M mlir/test/Conversion/MemRefToSPIRV/memref-to-spirv.mlir
M mlir/test/Conversion/SCFToSPIRV/for.mlir
M mlir/test/Conversion/TensorToSPIRV/tensor-ops-to-spirv.mlir
M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
Log Message:
-----------
[mlir][spirv] Improve folding of MemRef to SPIRV Lowering (#85433)
Investigate the lowering of MemRef Load/Store ops and implement
additional folding of created ops
Aims to improve readability of generated lowered SPIR-V code.
Part of work llvm#70704
Commit: 6317c780d81327bd06701a6aa374fc92aa3d73ad
https://github.com/llvm/llvm-project/commit/6317c780d81327bd06701a6aa374fc92aa3d73ad
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M lldb/include/lldb/Core/Progress.h
Log Message:
-----------
[lldb][progress][NFC] Clarify Doxygen comments for `details` field (#86002)
The Doxygen comments for the `details` field of a progress report
currently does not specify that this field will act as the initial set
of details for a progress report that gets updated with
`Progress::Increment()`. This commit clarifies this.
Commit: f5c90f3000bc75a344bf01bd4e0401e3fb7f9453
https://github.com/llvm/llvm-project/commit/f5c90f3000bc75a344bf01bd4e0401e3fb7f9453
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/double-convert.ll
M llvm/test/CodeGen/RISCV/inline-asm-d-constraint-f.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitcast.ll
M llvm/test/CodeGen/RISCV/spill-fill-fold.ll
Log Message:
-----------
[RISCV] Use BuildPairF64 and SplitF64 for bitcast i64<->f64 on rv32 regardless of Zfa. (#85982)
Previously we used BuildPairF64 and SplitF64 only if Zfa was supported
since they will select register file moves that are only available with
Zfa.
We recently changed the handling of BuildPairF64/SplitF64 for Zdinx to
not go through memory so we should use that for bitcast.
That leaves the D without Zfa case that does need to go through memory.
Previously we let type legalization expand to loads and stores using a
new stack temporary created for each bitcast. After this patch we will
create the loads ands stores in the custom inserter and share the same
stack slot for all. This also allows DAGCombiner to optimize when
bitcast is mixed with BuildPairF64/SplitF64.
Commit: 81bd799819f498a55e32599bce51fa98b2e73238
https://github.com/llvm/llvm-project/commit/81bd799819f498a55e32599bce51fa98b2e73238
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M lldb/source/Symbol/LineEntry.cpp
Log Message:
-----------
[lldb] Add missing initialization in LineEntry ctor
Commit: d8b0d8d6713d474cfd622e03090a7ad5206ee574
https://github.com/llvm/llvm-project/commit/d8b0d8d6713d474cfd622e03090a7ad5206ee574
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
Log Message:
-----------
AMDGPU: Use defset to cleanup marking MFMA intrinsics as divergent (#85915)
Commit: d9f0d9a1452ed78e943423c9fbbd63674625f7f5
https://github.com/llvm/llvm-project/commit/d9f0d9a1452ed78e943423c9fbbd63674625f7f5
Author: Tarun Prabhu <tarun at lanl.gov>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M flang/include/flang/Common/Version.h
M flang/include/flang/Frontend/CodeGenOptions.h
M flang/include/flang/Frontend/LangOptions.h
Log Message:
-----------
[flang][NFC] Fix header guards
Some header guards conflicted with clang. Fix a few others to follow the
convention in the rest of the headers in flang.
Commit: 12836467b76c56872b4c22a6fd44bcda696ea720
https://github.com/llvm/llvm-project/commit/12836467b76c56872b4c22a6fd44bcda696ea720
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/IR/ConstantRange.cpp
M llvm/test/Transforms/Float2Int/pr79158.ll
M llvm/unittests/IR/ConstantRangeTest.cpp
Log Message:
-----------
[ConstantRange] Fix off by 1 bugs in UIToFP and SIToFP handling. (#86041)
We were passing the min and max values of the range to the ConstantRange
constructor, but the constructor expects the upper bound to 1 more than
the max value so we need to add 1.
We also need to use getNonEmpty so that passing 0, 0 to the constructor
creates a full range rather than an empty range. And passing smin,
smax+1 doesn't cause an assertion.
I believe this fixes at least some of the reason #79158 was reverted.
Commit: 9a87d4d546a4382879b1beb96687acbad0ef4cc0
https://github.com/llvm/llvm-project/commit/9a87d4d546a4382879b1beb96687acbad0ef4cc0
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M libc/src/__support/CPP/CMakeLists.txt
M libc/src/__support/CPP/type_traits.h
A libc/src/__support/CPP/type_traits/is_constant_evaluated.h
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc] Add `is_constant_evaluated` type_traits (#86139)
This will replace `__builtin_is_constant_evaluated` in math_extras.h.
Commit: c1c2551a2876f536b5a06f48fa809aeedbc3d7ba
https://github.com/llvm/llvm-project/commit/c1c2551a2876f536b5a06f48fa809aeedbc3d7ba
Author: OverMighty <its.overmighty at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/test/CodeGen/builtins.c
M clang/test/CodeGen/ubsan-builtin-checks.c
R clang/test/Sema/builtin-popcountg.c
A clang/test/Sema/count-builtins.c
Log Message:
-----------
[clang] Implement __builtin_{clzg,ctzg} (#83431)
Fixes #83075, fixes #83076.
Commit: 6eff53b4f07c1d8f6ae271254499ec087f40cc83
https://github.com/llvm/llvm-project/commit/6eff53b4f07c1d8f6ae271254499ec087f40cc83
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M libc/src/stdio/linux/rename.cpp
M libc/test/src/stdio/rename_test.cpp
Log Message:
-----------
[libc][stdio] implement rename via SYS_renameat2 (#86140)
SYS_rename may be unavailable on architectures such as aarch64 and
riscv.
rename can be implemented in terms of SYS_rename, SYS_renameat, or
SYS_renameat2. I don't have a full picture of the history here, but it
seems
that SYS_renameat might also be unavailable on some platforms.
`man 2 rename` mentions that SYS_renameat2 was added in Linux 3.15. We
don't
need to support such ancient kernel versions prior.
Link: #84980
Link: #85068
Commit: 69429276098df2f2cf67dcab1c96ce8f56280c11
https://github.com/llvm/llvm-project/commit/69429276098df2f2cf67dcab1c96ce8f56280c11
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] combineConcatVectorOfScalars - stop always creating UNDEF nodes. NFC.
Noticed in debug logs - most calls to visitVECTOR_SHUFFLE resulted into wasteful UNDEF node creations, despite almost never being used.
Commit: 4bf8dc1a0f9546afb2c13c121e34237ce16cfca6
https://github.com/llvm/llvm-project/commit/4bf8dc1a0f9546afb2c13c121e34237ce16cfca6
Author: Ilya Biryukov <ibiryukov at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M libcxx/docs/ReleaseNotes/19.rst
M libcxx/docs/UsingLibcxx.rst
M libcxx/include/__config
M libcxx/include/__memory/allocator.h
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.cxx20.pass.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.cxx20.verify.cpp
R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.cxx2a.pass.cpp
M libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.depr_in_cxx17.verify.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx20.pass.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx20.verify.cpp
R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx2a.pass.cpp
R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx2a.verify.cpp
M libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.depr_in_cxx17.verify.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/construct.cxx20.pass.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/construct.cxx20.verify.cpp
R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/construct.cxx2a.pass.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/max_size.cxx20.pass.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/max_size.cxx20.verify.cpp
R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/max_size.cxx2a.pass.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator_types.cxx20.pass.cpp
R libcxx/test/libcxx/depr/depr.default.allocator/allocator_types.cxx2a.pass.cpp
R libcxx/test/libcxx/depr/depr.default.allocator/enable_removed_allocator_members.deprecated.verify.cpp
R libcxx/test/libcxx/utilities/memory/default.allocator/allocator_types.void.cxx20_allocator_void_no_members.verify.cpp
R libcxx/test/libcxx/utilities/memory/default.allocator/allocator_types.void.cxx20_with_removed_members.compile.pass.cpp
M libcxx/test/std/containers/sequences/deque/types.pass.cpp
M libcxx/test/std/containers/sequences/list/types.pass.cpp
M libcxx/test/std/containers/sequences/vector/types.pass.cpp
Log Message:
-----------
[libc++] Remove macros for keeping std::allocator members and void specialization after C++20 (#85806)
Fixes #75975.
Remove `_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS` for the LLVM 19
release, it was previously marked as deprecated in LLVM 18.
I believe that
`_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_VOID_SPECIALIZATION` was only
used by Google in conjunction with
`_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS`.
Removing both macros together should not cause any issues in practice,
even though we did not announce the removal of
`_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_VOID_SPECIALIZATION` before.
Commit: 797336b1278cb7a8b788e467f8fbbc11939143a8
https://github.com/llvm/llvm-project/commit/797336b1278cb7a8b788e467f8fbbc11939143a8
Author: Janek van Oirschot <5994977+JanekvO at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
R llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.cpp
R llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/CMakeLists.txt
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
R llvm/test/MC/AMDGPU/hsa-amdgpu-exprs.s
R llvm/test/MC/AMDGPU/hsa-sym-expr-failure.s
R llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx10.s
R llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx11.s
R llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx12.s
R llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx7.s
R llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx8.s
R llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx90a.s
R llvm/test/MC/AMDGPU/hsa-tg-split.s
Log Message:
-----------
Revert "[AMDGPU] MCExpr-ify MC layer kernel descriptor" (#86151)
Reverts llvm/llvm-project#80855
Commit: c8772940ee4d85b1a4578b3faea7c825300ce59f
https://github.com/llvm/llvm-project/commit/c8772940ee4d85b1a4578b3faea7c825300ce59f
Author: Balazs Benics <benicsbalazs at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
M clang/test/Analysis/inlining/false-positive-suppression.cpp
Log Message:
-----------
[analyzer] Wrap SymbolicRegions by ElementRegions before getting a FieldRegion (#85211)
Inside the ExprEngine when we process the initializers, we create a
PostInitializer program-point, which will refer to the field being
initialized, see `FieldLoc` inside `ExprEngine::ProcessInitializer`.
When a constructor (of which we evaluate the initializer-list) is
analyzed in top-level context, then the `this` pointer will be
represented by a `SymbolicRegion`, (as it should be).
This means that we will form a `FieldRegion{SymbolicRegion{.}}` as the
initialized region.
```c++
class Bear {
public:
void brum() const;
};
class Door {
public:
// PostInitializer would refer to "FieldRegion{SymRegion{this}}"
// whereas in the store and everywhere else it would be:
// "FieldRegion{ELementRegion{SymRegion{Ty*, this}, 0, Ty}".
Door() : ptr(nullptr) {
ptr->brum(); // Bug
}
private:
Bear* ptr;
};
```
We (as CSA folks) decided to avoid the creation of FieldRegions directly
of symbolic regions in the past:
https://github.com/llvm/llvm-project/commit/f8643a9b31c4029942f67d4534c9139b45173504
---
In this patch, I propose to also canonicalize it as in the mentioned
patch, into this: `FieldRegion{ElementRegion{SymbolicRegion{Ty*, .}, 0,
Ty}`
This would mean that FieldRegions will/should never simply wrap a
SymbolicRegion directly, but rather an ElementRegion that is sitting in
between.
This patch should have practically no observable effects, as the store
(due to the mentioned patch) was made resilient to this issue, but we
use `PostInitializer::getLocationValue()` for an alternative reporting,
where we faced this issue.
Note that in really rare cases it suppresses now dereference bugs, as
demonstrated in the test. It is because in the past we failed to follow
the region of the PostInitializer inside the StoreSiteFinder visitor -
because it was using this code:
```c++
// If this is a post initializer expression, initializing the region, we
// should track the initializer expression.
if (std::optional<PostInitializer> PIP =
Pred->getLocationAs<PostInitializer>()) {
const MemRegion *FieldReg = (const MemRegion *)PIP->getLocationValue();
if (FieldReg == R) {
StoreSite = Pred;
InitE = PIP->getInitializer()->getInit();
}
}
```
Notice that the equality check didn't pass for the regions I'm
canonicalizing in this patch.
Given the nature of this change, we would rather upstream this patch.
CPP-4954
Commit: 86d479fd7c837e97be116ffb9e4c92812b87360f
https://github.com/llvm/llvm-project/commit/86d479fd7c837e97be116ffb9e4c92812b87360f
Author: T-Gruber <100079402+T-Gruber at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
M clang/unittests/StaticAnalyzer/CMakeLists.txt
A clang/unittests/StaticAnalyzer/MemRegionDescriptiveNameTest.cpp
M llvm/utils/gn/secondary/clang/unittests/StaticAnalyzer/BUILD.gn
Log Message:
-----------
Adapted MemRegion::getDescriptiveName to handle ElementRegions (#85104)
Fixes https://github.com/llvm/llvm-project/issues/84463
Changes:
- Adapted MemRegion::getDescriptiveName
- Added unittest to check name for a given clang::ento::ElementRegion
- Some format changes due to clang-format
---------
Co-authored-by: Andreas Steinhausen <andreas.steinhausen at concenrio.io>
Co-authored-by: Balazs Benics <benicsbalazs at gmail.com>
Commit: aa571a1e8f03faa311fb135ea4b24b9414db1b74
https://github.com/llvm/llvm-project/commit/aa571a1e8f03faa311fb135ea4b24b9414db1b74
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/MCTargetDesc/BUILD.gn
Log Message:
-----------
[gn build] Port 797336b1278c
Commit: e84a985cbf4b26c10812e9bd339db9cfd037f581
https://github.com/llvm/llvm-project/commit/e84a985cbf4b26c10812e9bd339db9cfd037f581
Author: Daniel Chen <cdchen at ca.ibm.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M flang/lib/Lower/ConvertConstant.cpp
A flang/test/Lower/HLFIR/procedure-pointer-component-structure-constructor.f90
Log Message:
-----------
[Flang] Support for NULL() and procedure in structure constructor for procedure pointer component. (#85991)
This PR fixes a subset of procedure pointer component initialization in
structure constructor.
It covers
1. NULL()
2. procedure
For example:
```
MODULE M
TYPE :: DT
!PROCEDURE(Fun), POINTER, NOPASS :: pp1
PROCEDURE(Fun), POINTER :: pp1
END TYPE
CONTAINS
INTEGER FUNCTION Fun(Arg)
class(dt) :: arg
END FUNCTION
END MODULE
PROGRAM MAIN
USE M
IMPLICIT NONE
TYPE (DT), PARAMETER :: v1 = DT(NULL())
TYPE (DT) :: v2
v2 = DT(fun)
END
```
Passing a procedure pointer itself or reference to a function that
returns a procedure pointer is TODO.
Commit: 3218570620a320573dfd3315da8277600a010bc1
https://github.com/llvm/llvm-project/commit/3218570620a320573dfd3315da8277600a010bc1
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/test/CodeGen/X86/oddshuffles.ll
Log Message:
-----------
[X86] Add shuffle test case for Issue #86068
Commit: aa7f8200ac29823e6c662d1f41763c2509514161
https://github.com/llvm/llvm-project/commit/aa7f8200ac29823e6c662d1f41763c2509514161
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/PatternMatch.h
Log Message:
-----------
[IR] Add helpers for `NUWAddLike` and `NSWAddLike` to also match `or disjoint`; NFC
`or disjoint` implies `add nuw nsw`: https://alive2.llvm.org/ce/z/VABhDA
Commit: ac13e5c0f698c1e3f759e622d2d3cf36ab3b77f3
https://github.com/llvm/llvm-project/commit/ac13e5c0f698c1e3f759e622d2d3cf36ab3b77f3
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/test/Transforms/InstCombine/add.ll
M llvm/test/Transforms/InstCombine/div.ll
M llvm/test/Transforms/InstCombine/sadd-with-overflow.ll
M llvm/test/Transforms/InstCombine/shift-add.ll
M llvm/test/Transforms/InstCombine/uadd-with-overflow.ll
Log Message:
-----------
[InstCombine] Add tests for integrating `N{U,S}WAddLike`; NFC
Commit: b3ee127e7dead25fa284b26d2c5a067671d0e896
https://github.com/llvm/llvm-project/commit/b3ee127e7dead25fa284b26d2c5a067671d0e896
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
M llvm/test/Transforms/InstCombine/add.ll
M llvm/test/Transforms/InstCombine/div.ll
M llvm/test/Transforms/InstCombine/sadd-with-overflow.ll
M llvm/test/Transforms/InstCombine/shift-add.ll
M llvm/test/Transforms/InstCombine/uadd-with-overflow.ll
Log Message:
-----------
[InstCombine] integrate `N{U,S}WAddLike` into existing folds
Just went a quick replacement of `N{U,S}WAdd` with the `Like` variant
that old matches `or disjoint`
Closes #86082
Commit: 796efa8cd5800a42eb8362564be64f3d72512a05
https://github.com/llvm/llvm-project/commit/796efa8cd5800a42eb8362564be64f3d72512a05
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/Float2Int.cpp
Log Message:
-----------
[Float2Int] Fix pessimization in the MinBW calculation. (#86051)
The MinBW was being calculated using the significant bits of the upper
and lower bounds. The upper bound is 1 past the last value in the range
so I don't think it should be included. Instead use ConstantRange::getMinSignedBits.
I'm still not sure if the +1 is needed after the getMinSignedBits call.
Commit: f5ef9bd26d531d104f44f9e5b283bd2f80c024be
https://github.com/llvm/llvm-project/commit/f5ef9bd26d531d104f44f9e5b283bd2f80c024be
Author: Kazu Hirata <kazu at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/ProfileData/RawMemProfReader.cpp
Log Message:
-----------
[memprof] Call SmallVector::reserve (#86055)
With one raw memprof file I have, NumPCs averages about 41. Given the
default number of inline elements being 8 for SmallVector<uint64_t>,
we should reserve the storage in advance.
Commit: 999d4f840777bf8de26d45947192aa0728edc0fb
https://github.com/llvm/llvm-project/commit/999d4f840777bf8de26d45947192aa0728edc0fb
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/test/Sema/warn-cast-function-type-strict.c
M clang/test/SemaCXX/warn-cast-function-type-strict.cpp
Log Message:
-----------
Split -Wcast-function-type into a separate group (#86131)
We want to add -Wcast-function-type to -Wextra (as done in
1de7e6c8cba27296f3fc16d107822ea0ee856759), but we do not want to add
-Wcast-function-type-strict in at the same time
(https://lab.llvm.org/buildbot/#/builders/57/builds/33601/steps/5/logs/stdio).
This moves the existing warning to a new group
(-Wcast-function-type-mismatch), puts the new group under the existing
-Wcast-function-type warning group, and adds
-Wcast-function-type-mismatch to -Wextra.
Commit: 3fefeafa49299ef924414bfa1b678e0f656b3618
https://github.com/llvm/llvm-project/commit/3fefeafa49299ef924414bfa1b678e0f656b3618
Author: dmaclach <dmaclach at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/lib/Sema/SemaType.cpp
A clang/test/SemaObjC/attr-objc-NSObject.m
Log Message:
-----------
[OBJC] Allow __attribute__((NSObject)) types be used as lightweight generic specifiers (#84593)
As per
https://clang.llvm.org/docs/AutomaticReferenceCounting.html#retainable-object-pointers,
types with `__attribute__((NSObject))` are retainable, and thus should
be eligible to be used as lightweight generic specifiers.
Fix for #84592 84592
Commit: 22e7e68a40b8b1aac8b44137685d21ac4b98bd17
https://github.com/llvm/llvm-project/commit/22e7e68a40b8b1aac8b44137685d21ac4b98bd17
Author: lorenzo chelini <lchelini at nvidia.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M mlir/lib/Dialect/Affine/Utils/Utils.cpp
Log Message:
-----------
[mlir][Affine] Fix unused variable warning (NFC)
Commit: c96b61adc33b9d4ab26e2d0e4bce929b31c48768
https://github.com/llvm/llvm-project/commit/c96b61adc33b9d4ab26e2d0e4bce929b31c48768
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M libc/src/__support/CPP/iterator.h
Log Message:
-----------
[libc] Add reverse_iterator comparisons (#86147)
https://en.cppreference.com/w/cpp/iterator/reverse_iterator/operator_cmp
Commit: 3eb58d15b353534fd42a3a0d1eeb7cd33d128b34
https://github.com/llvm/llvm-project/commit/3eb58d15b353534fd42a3a0d1eeb7cd33d128b34
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M libc/src/__support/CPP/iterator.h
Log Message:
-----------
Revert "[libc] Add reverse_iterator comparisons" (#86186)
Reverts llvm/llvm-project#86147
Commit: 536cb1fad3ea3edaba8264992c8de2f4b07abc84
https://github.com/llvm/llvm-project/commit/536cb1fad3ea3edaba8264992c8de2f4b07abc84
Author: Michele Scandale <michele.scandale at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
M llvm/test/Transforms/InstCombine/shuffle_select-inseltpoison.ll
M llvm/test/Transforms/InstCombine/shuffle_select.ll
Log Message:
-----------
[InstCombine] Fix for folding select-like `shufflevector` into floating point binary operators. (#85452)
Folding a select-like `shufflevector` into a floating point binary
operators can only be done if the result is preserved for both case. In
particular, if the common operand of the `shufflevector` and the
floating point binary operator can be a NaN, then the transformation
won't preserve the result value.
Commit: 85ccfb5ed5389a5fb2d58eab12a9266e7ea064ce
https://github.com/llvm/llvm-project/commit/85ccfb5ed5389a5fb2d58eab12a9266e7ea064ce
Author: Florian Mayer <fmayer at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
Log Message:
-----------
[HWASan] [NFC] pull logic to get sanitizer ptr out of hwasan (#86024)
Also some drive by cleanup removing an unnnecessary argument and a
redundant condition.
Commit: 6d939a6ec69adf284cdbef2034b49fd02ba503fc
https://github.com/llvm/llvm-project/commit/6d939a6ec69adf284cdbef2034b49fd02ba503fc
Author: Kevin Frei <kevinfrei at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
A lldb/test/API/debuginfod/Normal/Makefile
A lldb/test/API/debuginfod/Normal/TestDebuginfod.py
A lldb/test/API/debuginfod/Normal/main.c
A lldb/test/API/debuginfod/SplitDWARF/Makefile
A lldb/test/API/debuginfod/SplitDWARF/TestDebuginfodDWP.py
A lldb/test/API/debuginfod/SplitDWARF/main.c
Log Message:
-----------
DebugInfoD tests + fixing issues exposed by tests (#85693)
Finally getting back to Debuginfod tests:
I've migrated the tests in my [earlier
PR](https://github.com/llvm/llvm-project/pull/79181) from shell to API
(at @JDevlieghere's suggestion) and addressed a couple issues that came
about during testing.
The tests first test the "normal" situation (no DebugInfoD involvement,
just normal debug files sitting around), then the "no debug info"
situation (to make sure the test is seeing failure properly), then it
tests to validate that when Debuginfod returns the symbols, things work
properly. This is duplicated for DWP/split-dwarf scenarios.
---------
Co-authored-by: Kevin Frei <freik at meta.com>
Commit: 2ab106cbd428984df3dda2f6983d5f956917cb69
https://github.com/llvm/llvm-project/commit/2ab106cbd428984df3dda2f6983d5f956917cb69
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
Log Message:
-----------
[flang][OpenMP] Convert processTODO and remove unused objects (#81627)
Remove `ClauseIterator2` and `clauses2` from ClauseProcessor.
[Clause representation 5/6]
Commit: 6b1cf0040059c407264d2609403c4fc090673167
https://github.com/llvm/llvm-project/commit/6b1cf0040059c407264d2609403c4fc090673167
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M bolt/include/bolt/Core/MCPlus.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Core/MCPlusBuilder.cpp
M bolt/lib/Passes/BinaryPasses.cpp
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
A bolt/test/X86/linux-static-keys.s
Log Message:
-----------
[BOLT] Add support for Linux kernel static keys jump table (#86090)
Runtime code modification used by static keys is the most ubiquitous
self-modifying feature of the Linux kernel. The idea is to to eliminate
the condition check and associated conditional jump on a hot path if
that condition (based on a boolean value of a static key) does not
change often. Whenever they condition changes, the kernel runtime
modifies all code paths associated with that key flipping the code
between nop and (unconditional) jump.
Commit: 70a9c527b8c9857fb63a87b2d2025bf9defea7f2
https://github.com/llvm/llvm-project/commit/70a9c527b8c9857fb63a87b2d2025bf9defea7f2
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][bazel] Fix bazel build (#86190)
Follow up on #86140
Commit: 628068113710d501e88b63a1506d66dd20ce7e94
https://github.com/llvm/llvm-project/commit/628068113710d501e88b63a1506d66dd20ce7e94
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M bolt/docs/BAT.md
M bolt/include/bolt/Profile/BoltAddressTranslation.h
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/Utils/CommandLineOpts.cpp
A bolt/test/X86/Inputs/blarge_new.preagg.txt
A bolt/test/X86/Inputs/blarge_new.yaml
A bolt/test/X86/Inputs/blarge_new_bat.preagg.txt
A bolt/test/X86/bolt-address-translation-yaml.test
Log Message:
-----------
[BOLT] Output basic YAML profile in BAT mode
Relax assumptions that YAML output is not supported in BAT mode.
Set up basic infrastructure for emitting YAML for functions not covered
by BAT, such as from `.bolt.org.text` section (code identical to input binary
sans external refs), or non-rewritten functions in non-relocation mode (where
the function stays in the same section but BAT mapping is not emitted).
This diff only produces YAML profile for non-BAT functions (skipped,
non-simple). YAML profile for BAT functions is added in follow-up diffs:
- https://github.com/llvm/llvm-project/pull/76911 emits YAML profile with
internal control flow information only (branch profile),
- https://github.com/llvm/llvm-project/pull/76896 adds cross-function profile
(calls profile).
Test Plan: Added bolt/test/X86/bolt-address-translation-yaml.test
Reviewers: ayermolo, dcci, maksfb, rafaelauler
Reviewed By: rafaelauler
Pull Request: https://github.com/llvm/llvm-project/pull/76910
Commit: cde54df39cab3a1d60a3e1862ab341609bee3cc3
https://github.com/llvm/llvm-project/commit/cde54df39cab3a1d60a3e1862ab341609bee3cc3
Author: Cooper Partin <coopp at microsoft.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/include/llvm/BinaryFormat/DXContainer.h
M llvm/include/llvm/MC/DXContainerPSVInfo.h
M llvm/include/llvm/MC/StringTableBuilder.h
M llvm/include/llvm/Object/DXContainer.h
M llvm/include/llvm/ObjectYAML/DXContainerYAML.h
M llvm/lib/MC/DXContainerPSVInfo.cpp
M llvm/lib/Object/DXContainer.cpp
M llvm/lib/ObjectYAML/DXContainerEmitter.cpp
M llvm/lib/ObjectYAML/DXContainerYAML.cpp
A llvm/test/ObjectYAML/DXContainer/PSVv3-amplification.yaml
A llvm/test/ObjectYAML/DXContainer/PSVv3-compute.yaml
A llvm/test/ObjectYAML/DXContainer/PSVv3-domain.yaml
A llvm/test/ObjectYAML/DXContainer/PSVv3-geometry.yaml
A llvm/test/ObjectYAML/DXContainer/PSVv3-hull.yaml
A llvm/test/ObjectYAML/DXContainer/PSVv3-mesh.yaml
A llvm/test/ObjectYAML/DXContainer/PSVv3-pixel.yaml
A llvm/test/ObjectYAML/DXContainer/PSVv3-vertex.yaml
M llvm/tools/obj2yaml/dxcontainer2yaml.cpp
Log Message:
-----------
Add support for PSV EntryFunctionName (#84409)
This change introduces a version 3 of the PSV data that includes support
for the name of the entry function as an offset into StringTable data to
a null-terminated utf-8 string.
Additional tests were added to ensure that the new value was properly
serialized/deserialized from object data.
Fixes #80175
---------
Co-authored-by: Cooper Partin <coopp at ntdev.microsoft.com>
Commit: b19bf3e888f95c35bf641cd0eee18a8da702f6fe
https://github.com/llvm/llvm-project/commit/b19bf3e888f95c35bf641cd0eee18a8da702f6fe
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/unsupported-option-gpu.c
Log Message:
-----------
[clang][SPIRV] Don't warn on -mcmodel (#86039)
The code model doesn't affect the sub-compilation, so don't check it.
Followup to #70740.
Commit: b609a4d7ea8b716f5f0ec83d10945362f42e730d
https://github.com/llvm/llvm-project/commit/b609a4d7ea8b716f5f0ec83d10945362f42e730d
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M lld/MachO/Driver.cpp
M lld/MachO/InputSection.cpp
M lld/MachO/InputSection.h
M lld/MachO/ObjC.cpp
M lld/MachO/SyntheticSections.cpp
Log Message:
-----------
[lld-macho][NFC] Refactor insertions into inputSections (#85692)
Before this change, after `InputSection` objects are created, they need
to be added to the appropriate container for tracking.
The logic for selecting the appropriate container lives in `Driver.cpp`
/ `gatherInputSections`, where the `InputSection` is added to the
matching container depending on the input config and the type of
`InputSection`.
Also, multiple other locations also insert directly into `inputSections`
array - assuming that that is the appropriate container for the
`InputSection`'s they create. Currently this is the correct assumption,
however an upcoming feature will change this.
For an upcoming feature (relative method lists), we need to route
`InputSection`'s either to `inputSections` array or to a synthetic
section, depending on weather the relative method list optimization is
enabled or not.
We can achieve the above either by duplicating some of the logic or
refactoring the routing and `InputSection`'s and reusing that.
The refactoring & code sharing approach seems the correct way to go - as
such this diff performs the refactoring while not introducing any
functional changes. Later on we can just call `addInputSection` and not
have to worry about routing logic.
---------
Commit: e4a672ef85f76c3402b81640e1e83e5d3069d1b9
https://github.com/llvm/llvm-project/commit/e4a672ef85f76c3402b81640e1e83e5d3069d1b9
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M lld/MachO/ObjC.cpp
Log Message:
-----------
[lld][macho] Fix gcc category merging warning (#86091)
Fixing gcc warning regarding creating non-null-terminated string:
```
../../lld/MachO/ObjC.cpp:1226:10: warning: 'char* strncpy(char*, const char*, size_t)' output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
1226 | strncpy(strData, str, len);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~
../../lld/MachO/ObjC.cpp: In member function 'void {anonymous}::ObjcCategoryMerger::emitAndLinkPointerList(lld::macho::Defined*, uint32_t, const {anonymous}::ObjcCategoryMerger::ClassExtensionInfo&, const {anonymous}::ObjcCategoryMerger::PointerListInfo&)':
../../lld/MachO/ObjC.cpp:1223:24: note: length computed here
1223 | uint32_t len = strlen(str);
| ~~~~~~^~~~~
```
This is not actually a bug, as `newSectionData` returns a
zero-initialized memory region, so the null terminator will be there.
Commit: e470ca89ba77b2f200ff3a8ad65c74028f42c5f7
https://github.com/llvm/llvm-project/commit/e470ca89ba77b2f200ff3a8ad65c74028f42c5f7
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticInstallAPIKinds.td
M clang/include/clang/InstallAPI/DylibVerifier.h
M clang/lib/InstallAPI/DylibVerifier.cpp
M clang/test/InstallAPI/diagnostics-cpp.test
A clang/test/InstallAPI/linker-symbols.test
A clang/test/InstallAPI/mismatching-objc-class-symbols.test
A clang/test/InstallAPI/symbol-flags.test
M clang/tools/clang-installapi/ClangInstallAPI.cpp
M llvm/lib/TextAPI/BinaryReader/DylibReader.cpp
Log Message:
-----------
[InstallAPI] Report exports discovered in binary but not in interface (#86025)
This patch completes the classes of errors installapi can detect.
Commit: b8e53630f899ddb8a2ec0d37bcb86608d58c4960
https://github.com/llvm/llvm-project/commit/b8e53630f899ddb8a2ec0d37bcb86608d58c4960
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_printer.h
Log Message:
-----------
[compiler-rt] Avoid pulling in __cxa_pure_virtual
When building optimized versions of the runtime libraries the compiler
is generally able to elide these references, but when building them
for maximum debug info (with -O0), these references remain which causes
the test suite to fail for tests that do not pull in the C++ standard
library.
Reviewed By: vitalybuka
Pull Request: https://github.com/llvm/llvm-project/pull/84613
Commit: c56211b2430cf63ba3a469a4ae89cf2e829e9332
https://github.com/llvm/llvm-project/commit/c56211b2430cf63ba3a469a4ae89cf2e829e9332
Author: Roland McGrath <mcgrathr at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M libc/include/llvm-libc-macros/math-macros.h
Log Message:
-----------
[libc] Make math-macros.h C++-friendly (#86206)
The isfinite, isnan, and isinf "functions" are specified by C99..C23 to
be macros that act as type-generic functions. Defining them as their
__builtin_* counterparts works fine for this. However, in C++ the
identifiers need to be usable in different contexts, such as being
declared inside a C++ namespace. So define inline constexpr template
functions for them under `#ifdef __cplusplus`.
Commit: 00f3454bbe04ae8cf0eeda981c439e7f97390bd4
https://github.com/llvm/llvm-project/commit/00f3454bbe04ae8cf0eeda981c439e7f97390bd4
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M flang/runtime/CMakeLists.txt
A flang/runtime/external-unit.cpp
M flang/runtime/io-stmt.cpp
M flang/runtime/lock.h
A flang/runtime/pseudo-unit.cpp
M flang/runtime/tools.h
M flang/runtime/unit.cpp
M flang/runtime/unit.h
Log Message:
-----------
[flang][runtime] Added pseudo file unit for simplified PRINT. (#86134)
A file unit is emulated via a temporary buffer that accumulates
the output, which is printed out via std::printf at the end
of the IO statement. This implementation will be used for the offload
devices.
Commit: 6f9297fc4da9df776aef7ee9a18ac426053aaed4
https://github.com/llvm/llvm-project/commit/6f9297fc4da9df776aef7ee9a18ac426053aaed4
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M compiler-rt/cmake/Modules/CompilerRTCompile.cmake
M compiler-rt/lib/msan/tests/CMakeLists.txt
M compiler-rt/lib/tsan/tests/CMakeLists.txt
Log Message:
-----------
[compiler-rt] Fix build race with COMPILER_RT_TEST_STANDALONE_BUILD_LIBS
Since this standalone build configuration uses the runtime libraries that
are being built just now, we need to ensure that e.g. the TSan unit tests
depend on the tsan runtime library. Also fix TSAN_DEPS being overridden
to not include the tsan runtime (commit .....).
This change fixes a build race seen in the CI checks for
TsanRtlTest-x86_64-Test in https://github.com/llvm/llvm-project/pull/83088.
Reviewed By: vitalybuka
Pull Request: https://github.com/llvm/llvm-project/pull/83650
Commit: 8d1affb87181b9636b87e04a245bcde06f8a7d47
https://github.com/llvm/llvm-project/commit/8d1affb87181b9636b87e04a245bcde06f8a7d47
Author: Diego Caballero <diegocaballero at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M .github/CODEOWNERS
Log Message:
-----------
Update @dcaballe in CODEOWNERS (#86177)
It fixes a few rules that don't seem to be working and adding myself to a few paths where I've been contributing and can offer my review. Also minor sorting changes.
Commit: 1538b82fd395a2fba90842b8a8010b8dcc919499
https://github.com/llvm/llvm-project/commit/1538b82fd395a2fba90842b8a8010b8dcc919499
Author: Cooper Partin <coopp at microsoft.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/include/llvm/BinaryFormat/DXContainer.h
M llvm/include/llvm/MC/DXContainerPSVInfo.h
M llvm/include/llvm/MC/StringTableBuilder.h
M llvm/include/llvm/Object/DXContainer.h
M llvm/include/llvm/ObjectYAML/DXContainerYAML.h
M llvm/lib/MC/DXContainerPSVInfo.cpp
M llvm/lib/Object/DXContainer.cpp
M llvm/lib/ObjectYAML/DXContainerEmitter.cpp
M llvm/lib/ObjectYAML/DXContainerYAML.cpp
R llvm/test/ObjectYAML/DXContainer/PSVv3-amplification.yaml
R llvm/test/ObjectYAML/DXContainer/PSVv3-compute.yaml
R llvm/test/ObjectYAML/DXContainer/PSVv3-domain.yaml
R llvm/test/ObjectYAML/DXContainer/PSVv3-geometry.yaml
R llvm/test/ObjectYAML/DXContainer/PSVv3-hull.yaml
R llvm/test/ObjectYAML/DXContainer/PSVv3-mesh.yaml
R llvm/test/ObjectYAML/DXContainer/PSVv3-pixel.yaml
R llvm/test/ObjectYAML/DXContainer/PSVv3-vertex.yaml
M llvm/tools/obj2yaml/dxcontainer2yaml.cpp
Log Message:
-----------
Revert "Add support for PSV EntryFunctionName (#84409)" (#86211)
This reverts commit cde54df39cab3a1d60a3e1862ab341609bee3cc3.
Co-authored-by: Cooper Partin <coopp at ntdev.microsoft.com>
Commit: dc74bf7a5412df82223f7062d9a6b814abbfca45
https://github.com/llvm/llvm-project/commit/dc74bf7a5412df82223f7062d9a6b814abbfca45
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M .github/CODEOWNERS
Log Message:
-----------
Add myself as codeowner for InstallAPI & TextAPI
Commit: 06d245242e3e24cd4558f545fb5ceba0582c4f03
https://github.com/llvm/llvm-project/commit/06d245242e3e24cd4558f545fb5ceba0582c4f03
Author: Luke Lau <luke at igalia.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/active_lane_mask.ll
M llvm/test/CodeGen/RISCV/rvv/combine-store-extract-crash.ll
M llvm/test/CodeGen/RISCV/rvv/extract-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-combine.ll
M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/pr63596.ll
Log Message:
-----------
[RISCV] Recursively split concat_vector into smaller LMULs when lowering (#85825)
This is a reimplementation of the combine added in #83035 but as a
lowering instead of a combine, so we don't regress the test case added
in e59f120e3a14ccdc55fcb7be996efaa768daabe0 by interfering with the
strided load combine
Previously the combine had to concatenate the split vectors with
insert_subvector instead of concat_vectors to prevent an infinite
combine loop. And the reasoning behind keeping it as a combine was
because if we emitted the insert_subvector during lowering then we
didn't fold away inserts of undef subvectors.
However it turns out we can avoid this if we just do this in lowering
and select a concat_vector directly, since we get the undef folding for
free with `DAG.getNode(ISD::CONCAT_VECTOR, ...)` via foldCONCAT_VECTORS.
Commit: 51d5b6581912c8495360a09a0e6be978e0374d90
https://github.com/llvm/llvm-project/commit/51d5b6581912c8495360a09a0e6be978e0374d90
Author: Luke Lau <luke at igalia.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/vscale-vw-web-simplification.ll
M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vwmul-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vwsub-sdnode.ll
Log Message:
-----------
[RISCV] Handle scalable ops with < EEW / 2 narrow types in combineBinOp_VLToVWBinOp_VL (#84158)
We can remove the restriction that the narrow type needs to be exactly
EEW / 2 for scalable ISD::{ADD,SUB,MUL} nodes. This allows us to perform
the combine even if we can't fully fold the extend into the widening op.
VP intrinsics already do this, since they are lowered to _VL nodes which
don't have this restriction.
The "exactly EEW / 2" narrow type restriction prevented us from emitting
V{S,Z}EXT_VL nodes with i1 element types which crash when we try to
select them, since no other legal type is double the size of i1, see the
test case added in this PR `i1_zext`. So to preserve this, this adds a
check for i1 narrow types instead.
Commit: d22cf4365ca58ccf1db21341d63ac49921f1c47a
https://github.com/llvm/llvm-project/commit/d22cf4365ca58ccf1db21341d63ac49921f1c47a
Author: Nathan Lanza <nathanlanza at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/tools/CMakeLists.txt
Log Message:
-----------
[cmake] Place clang behind mlir in the liist of external projects
In preparation for the initial ClangIR upstreaming process, move clang
behind MLIR in the list of external projects. Otherwise, cmake will
attempt to build clang before MLIR.
reland of https://github.com/llvm/llvm-project/pull/86050
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/86210
Commit: e66b670f3bf9312f696e66c31152ae535207d6bb
https://github.com/llvm/llvm-project/commit/e66b670f3bf9312f696e66c31152ae535207d6bb
Author: Nathan Lanza <nathanlanza at gmail.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M clang/include/clang/Basic/LangStandard.h
M clang/include/clang/Driver/Types.def
M clang/lib/Basic/LangStandards.cpp
M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/FrontendOptions.cpp
Log Message:
-----------
[CIR][Basic][NFC] Add the CIR language to the Language enum
Add the CIR language to the Language enum and the standard usages of it.
commit-id:fd12b2c2
Reviewers: bcardosolopes, AaronBallman, erichkeane
Reviewed By: AaronBallman, bcardosolopes
Pull Request: https://github.com/llvm/llvm-project/pull/86072
Commit: 3942bd2fb56380aa050977dc6aede011e191d9b0
https://github.com/llvm/llvm-project/commit/3942bd2fb56380aa050977dc6aede011e191d9b0
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/call-arg-reduced-by-minbitwidth.ll
Log Message:
-----------
[SLP]Fix a crash if the argument of call was affected by minbitwidt
analysis.
Need to support proper type conversion for function arguments to avoid
compiler crash.
Commit: 7564566779eb07e9daf41a351b09cf7607871845
https://github.com/llvm/llvm-project/commit/7564566779eb07e9daf41a351b09cf7607871845
Author: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/test/CodeGen/AArch64/clear-dead-implicit-def-impdef.mir
M llvm/test/CodeGen/AArch64/implicit-def-remat-requires-impdef-check.mir
M llvm/test/CodeGen/AArch64/implicit-def-with-impdef-greedy-assert.mir
M llvm/test/CodeGen/AMDGPU/fold-restore-undef-use.mir
M llvm/test/CodeGen/AMDGPU/greedy-alloc-fail-sgpr1024-spill.mir
M llvm/test/CodeGen/AMDGPU/ran-out-of-sgprs-allocation-failure.mir
M llvm/test/CodeGen/AMDGPU/sched-crash-dbg-value.mir
M llvm/test/CodeGen/AMDGPU/sgpr-spill-wrong-stack-id.mir
M llvm/test/CodeGen/AMDGPU/snippet-copy-bundle-regression.mir
M llvm/test/CodeGen/AMDGPU/virtregrewrite-undef-identity-copy.mir
M llvm/test/CodeGen/ARM/no-register-coalescing-in-returnsTwice.mir
M llvm/test/CodeGen/Hexagon/regalloc-bad-undef.mir
M llvm/test/CodeGen/SystemZ/RAbasic-invalid-LR-update.mir
M llvm/test/CodeGen/SystemZ/clear-liverange-spillreg.mir
M llvm/test/CodeGen/SystemZ/int-cmp-56.mir
M llvm/test/CodeGen/SystemZ/regcoal-subranges-update.mir
M llvm/test/CodeGen/X86/callbr-asm-kill.mir
M llvm/test/CodeGen/X86/late-remat-update.mir
M llvm/test/CodeGen/X86/limit-split-cost.mir
M llvm/test/CodeGen/X86/regalloc-copy-hints.mir
M llvm/test/CodeGen/X86/statepoint-fastregalloc.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-enter-at-end.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-hoist-copies.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-inline-spiller.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-remove-back-copies.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra.mir
M llvm/test/CodeGen/X86/statepoint-vreg-folding.mir
M llvm/test/DebugInfo/MIR/InstrRef/memory-operand-folding-tieddef.mir
M llvm/test/DebugInfo/MIR/InstrRef/memory-operand-load-folding.mir
M llvm/test/DebugInfo/MIR/InstrRef/phi-coalesce-subreg.mir
M llvm/test/DebugInfo/MIR/InstrRef/phi-coalescing.mir
M llvm/test/DebugInfo/MIR/InstrRef/phi-on-stack-coalesced.mir
M llvm/test/DebugInfo/MIR/InstrRef/phi-on-stack-coalesced2.mir
M llvm/test/DebugInfo/MIR/InstrRef/phi-regallocd-to-stack.mir
M llvm/test/DebugInfo/MIR/InstrRef/phi-through-regalloc.mir
M llvm/test/DebugInfo/MIR/InstrRef/stack-coloring-dbg-phi.mir
M llvm/test/DebugInfo/MIR/InstrRef/survives-livedebugvars.mir
M llvm/test/DebugInfo/MIR/Mips/livedebugvars-stop-trimming-loc.mir
M llvm/test/DebugInfo/MIR/X86/live-debug-vars-unused-arg-debugonly.mir
M llvm/test/DebugInfo/MIR/X86/live-debug-vars-unused-arg.mir
M llvm/test/DebugInfo/MIR/X86/livedebugvars-crossbb-interval.mir
M llvm/test/DebugInfo/X86/live-debug-vars-intervals.mir
A llvm/test/MachineVerifier/test_adjustsstack.mir
Log Message:
-----------
Reapply "Move assertion for AdjustsStack from PEI to MachineVerifier (#85698)"
- The check is now actually done in both PEI and the MachineVerifier.
- More .mir tests trivially updated with "adjustsStack: true" as needed.
Commit: 8cb2d436ca50117026a8dc901c8039d9bd39b507
https://github.com/llvm/llvm-project/commit/8cb2d436ca50117026a8dc901c8039d9bd39b507
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/include/llvm/Passes/PassBuilder.h
M llvm/lib/Passes/PassBuilder.cpp
Log Message:
-----------
[Passes] Expose parseSinglePassOption (#86117)
BPF and some machine function passes need it.
Commit: a2dfc9ac7da23ccf0077081c8825a23aed1df0c0
https://github.com/llvm/llvm-project/commit/a2dfc9ac7da23ccf0077081c8825a23aed1df0c0
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
A llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/test/CodeGen/AMDGPU/global_atomic_optimizer_fp_rtn.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_iterative_scan_fp.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_optimizer_fp_no_rtn.ll
Log Message:
-----------
[NewPM][AMDGPU] Add AMDGPUPassRegistry.def (#86095)
Move the pass registry to a separate file, prepare for porting dag-isel.
Commit: 3e4caa9da4356247444e973eb470a25adae083b0
https://github.com/llvm/llvm-project/commit/3e4caa9da4356247444e973eb470a25adae083b0
Author: Freddy Ye <freddy.ye at intel.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/Target/X86/X86DomainReassignment.cpp
M llvm/test/CodeGen/X86/apx/domain-reassignment.mir
Log Message:
-----------
[X86] Support DomainReassignment for APX NDD instructions (#85737)
Commit: 8d7d581ad2a96ebe54aed0e5a626048d2e2a8d2d
https://github.com/llvm/llvm-project/commit/8d7d581ad2a96ebe54aed0e5a626048d2e2a8d2d
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/include/llvm/Passes/PassBuilder.h
M llvm/lib/Passes/PassBuilder.cpp
Log Message:
-----------
Revert "[Passes] Expose parseSinglePassOption" (#86225)
Reverts llvm/llvm-project#86117
Commit: 718fbbef5f18a2b7e7fc4f842b1452ae9bee581a
https://github.com/llvm/llvm-project/commit/718fbbef5f18a2b7e7fc4f842b1452ae9bee581a
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
Log Message:
-----------
[llvm-exegesis] Kill process that recieve a signal (#86069)
Before this patch, llvm-exegesis would leave processes lingering that
experienced signals like segmentation faults. They would up in a
signal-delivery-stop state under the ptrace and never exit. This does
not cause problems (or at least many) in llvm-exegesis as they are
cleaned up after the main process exits, which usually happens quickly.
However, in downstream use, when many blocks are being executed (many of
which run into signals) within a single process, these processes stay
around and can easily exhaust the process limit on some systems.
This patch cleans them up by sending SIGKILL after information about the
signal that was sent has been gathered.
Commit: 4d7f28a2c4b187f0bef3877081100786156defc7
https://github.com/llvm/llvm-project/commit/4d7f28a2c4b187f0bef3877081100786156defc7
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/include/llvm/Passes/PassBuilder.h
M llvm/lib/Passes/PassBuilder.cpp
Log Message:
-----------
[Passes] Expose parseSinglePassOption (#86226)
Reland #86225, adjust the name space.
Commit: 40beb9b001a3c67c60b98fae9e999dcaa2d88717
https://github.com/llvm/llvm-project/commit/40beb9b001a3c67c60b98fae9e999dcaa2d88717
Author: Kazu Hirata <kazu at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Log Message:
-----------
[lldb] Handle clang::Language::CIR (#86234)
commit e66b670f3bf9312f696e66c31152ae535207d6bb
Author: Nathan Lanza <nathanlanza at gmail.com>
Date: Thu Mar 21 19:53:48 2024 -0400
triggers:
lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp:478:16:
error: enumeration value 'CIR' not handled in switch
[-Werror,-Wswitch]
This patch teaches lldb to handle clang::Language::CIR the same way as
clang::Language::LLVM_IR.
Commit: 4865dab04cad1c5ce47468b0a52ea968e5a5503b
https://github.com/llvm/llvm-project/commit/4865dab04cad1c5ce47468b0a52ea968e5a5503b
Author: Kazu Hirata <kazu at google.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
Log Message:
-----------
[BOLT] Fix unused variable warnings
This patch fixes:
bolt/lib/Rewrite/LinuxKernelRewriter.cpp:1664:20: error: unused
variable 'TargetAddress' [-Werror,-Wunused-variable]
bolt/lib/Rewrite/LinuxKernelRewriter.cpp:1666:20: error: unused
variable 'KeyAddress' [-Werror,-Wunused-variable]
Commit: c67ed2f1e12e1b0e16b25606e67b67a47ca848d5
https://github.com/llvm/llvm-project/commit/c67ed2f1e12e1b0e16b25606e67b67a47ca848d5
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
Log Message:
-----------
[SelectionDAG][RISCV] Use TypeSize version of ComputeValueVTs in TargetLowering::LowerCallTo. (#86166)
This is needed to support non-intrinsic functions returning tuple types
which are represented as structs with scalable vector types in IR.
I suspect this may have been broken since
https://reviews.llvm.org/D158115
Commit: e1a8120a63cdb6c9567b0f68d9a0390e4f5da184
https://github.com/llvm/llvm-project/commit/e1a8120a63cdb6c9567b0f68d9a0390e4f5da184
Author: Pravin Jagtap <prjagtap at amd.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/global_atomic_optimizer_fp_rtn.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_optimizer_fp_no_rtn.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
Log Message:
-----------
[AMDGPU] Support double type in atomic optimizer. (#84307)
Presently the atomic optimizer supports only 32-bit operations. Plan is
to extend the atomic optimizer for 64-bit operations for compute and
graphics. This patch extends support for double type for `uniform
values` only. Going forward, will extend the support for divergent
values. Adding support for divergent values requires
extending/legalizing readfirstlane, readlane, writelane, etc ops for
64-bit operations to avoid `bitcast` noise that we have currently.
---------
Authored-by: Pravin Jagtap <Pravin.Jagtap at amd.com>
Commit: 4e165dd5ab7f7c022e23b645cd8f4676b03a9ec4
https://github.com/llvm/llvm-project/commit/4e165dd5ab7f7c022e23b645cd8f4676b03a9ec4
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-21 (Thu, 21 Mar 2024)
Changed paths:
M llvm/utils/TableGen/InfoByHwMode.cpp
M llvm/utils/TableGen/InfoByHwMode.h
Log Message:
-----------
[TableGen] Remove unused CodeGenHwModes argument from RegSizeInfo constructor. NFC
Commit: 90454a609894ab278a87be2b9f5c49714caba8df
https://github.com/llvm/llvm-project/commit/90454a609894ab278a87be2b9f5c49714caba8df
Author: Chen Zheng <czhengsz at cn.ibm.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
A llvm/test/CodeGen/PowerPC/aix-xcoff-funcsect-explicitsect.ll
Log Message:
-----------
[PowerPC][AIX] support explicit sections for -ffunction-sections (#85351)
Fix crashes in https://godbolt.org/z/6voEa1o6Y
Commit: 0289ae51aa375fd297f1d03d27ff517223e5e998
https://github.com/llvm/llvm-project/commit/0289ae51aa375fd297f1d03d27ff517223e5e998
Author: Christian Ulmann <christianulmann at gmail.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/include/mlir/Dialect/LLVMIR/Transforms/TypeConsistency.h
M mlir/include/mlir/Interfaces/MemorySlotInterfaces.h
M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/TypeConsistency.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefMemorySlot.cpp
M mlir/test/Dialect/LLVMIR/sroa.mlir
M mlir/test/Dialect/LLVMIR/type-consistency.mlir
Log Message:
-----------
[MLIR][LLVM][SROA] Support incorrectly typed memory accesses (#85813)
This commit relaxes the assumption of type consistency for LLVM dialect
load and store operations in SROA. Instead, there is now a check that
loads and stores are in the bounds specified by the sub-slot they
access.
This commit additionally removes the corresponding patterns from the
type consistency pass, as they are no longer necessary.
Note: It will be necessary to extend Mem2Reg with the logic for
differently sized accesses as well. This is non-the-less a strict
upgrade for productive flows, as the type consistency pass can produce
invalid IR for some odd cases.
Commit: c5f839bd58e7f888acc4cb39a18e9e5bbaa9fb0a
https://github.com/llvm/llvm-project/commit/c5f839bd58e7f888acc4cb39a18e9e5bbaa9fb0a
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M libc/src/__support/CPP/iterator.h
Log Message:
-----------
[reland][libc] Add reverse_iterator comparisons (#86188)
This is a reland of #86147 but with a proper `base()` function.
https://en.cppreference.com/w/cpp/iterator/reverse_iterator/operator_cmp
Commit: 5f1b2cffe5fab0aa733fc8d5f1546c1c800faac4
https://github.com/llvm/llvm-project/commit/5f1b2cffe5fab0aa733fc8d5f1546c1c800faac4
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/Vector/Transforms/VectorTransforms.h
M mlir/include/mlir/Dialect/Vector/Utils/VectorUtils.h
M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
M mlir/test/Dialect/Vector/vector-dropleadunitdim-transforms.mlir
Log Message:
-----------
[mlir][vector] Add support for masks in castAwayContractionLeadingOneDim (#81906)
Updates `castAwayContractionLeadingOneDim` to inherit from
`MaskableOpRewritePattern` so that this pattern can support masking.
Builds on top of #83827
Commit: 99d8c25b3104fc07f46532bd681515c5f3c71133
https://github.com/llvm/llvm-project/commit/99d8c25b3104fc07f46532bd681515c5f3c71133
Author: David Green <david.green at arm.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/insert-subvector.ll
Log Message:
-----------
[AArch64] Extra tests for v2i8 concat loads. NFC
Commit: 465ea0bfa69aa48afef58666b084467a1c96c81b
https://github.com/llvm/llvm-project/commit/465ea0bfa69aa48afef58666b084467a1c96c81b
Author: Crefeda Rodrigues <65665931+cfRod at users.noreply.github.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/LowerVectorTransfer.cpp
M mlir/test/Dialect/Vector/vector-transfer-permutation-lowering.mlir
Log Message:
-----------
[mlir][vector] Propagate scalability in TransferWriteNonPermutationLowering (#85632)
Updates `extendVectorRank` so that scalability in patterns
that use it (in particular, `TransferWriteNonPermutationLowering`),
is correctly propagated.
Closed related previous PR
https://github.com/llvm/llvm-project/pull/85270
---------
Signed-off-by: Crefeda Rodrigues <crefeda.rodrigues at arm.com>
Co-authored-by: Benjamin Maxwell <macdue at dueutil.tech>
Commit: de7a50fb88faa1dafee33f10149561936214062b
https://github.com/llvm/llvm-project/commit/de7a50fb88faa1dafee33f10149561936214062b
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M flang/include/flang/Lower/ConvertVariable.h
M flang/include/flang/Semantics/tools.h
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/HostAssociations.cpp
M flang/lib/Lower/PFTBuilder.cpp
M flang/lib/Semantics/tools.cpp
M flang/test/Lower/HLFIR/cray-pointers.f90
M flang/test/Lower/cray-pointer.f90
Log Message:
-----------
[flang] Fix lowering of host associated cray pointee symbols (#86121)
Cray pointee symbols can be host associated from a module or host
procedure while the related cray pointer is not explicitly associated.
This caused the "not yet implemented: lowering symbol to HLFIR" to fire
when lowering a reference to the cray pointee and fetching the cray
pointer.
This patch:
- Ensures cray pointers are always instantiated when instantiating a
cray pointee.
- Fix internal procedure lowering to deal with cray pointee host
association like it does for pointers (the lowering strategy for cray
pointee is to create a pointer that is updated with the cray pointer
value before being fetched).
This should fix the bug reported in
https://github.com/llvm/llvm-project/issues/85420.
Commit: 66f88de80599ec4461b0fdac3d1e396b6e83052d
https://github.com/llvm/llvm-project/commit/66f88de80599ec4461b0fdac3d1e396b6e83052d
Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
A clang/test/Driver/riscv-profiles.c
M llvm/lib/Support/RISCVISAInfo.cpp
Log Message:
-----------
[RISCV] Support RISC-V Profiles in -march option (#76357)
This PR implements the draft
https://github.com/riscv-non-isa/riscv-toolchain-conventions/pull/36.
Currently, we replace specified profile in `-march` with standard
arch string.
Commit: cb4453dc69d75064c9a82e9a6a9bf0d0ded4b204
https://github.com/llvm/llvm-project/commit/cb4453dc69d75064c9a82e9a6a9bf0d0ded4b204
Author: XChy <xxs_chy at outlook.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/X86/addcarry.ll
Log Message:
-----------
[SelectionDAG] Prevent combination on inconsistent type in `combineCarryDiamond` (#84888)
Fixes #84831
When matching carry pattern with `getAsCarry`, it may produce different
type of carryout. This patch checks such case and does early exit.
I'm new to DAG, any suggestion is appreciated.
Commit: 6e755c51a916dc521ffe89738bcab47a5442ad06
https://github.com/llvm/llvm-project/commit/6e755c51a916dc521ffe89738bcab47a5442ad06
Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
R clang/test/Driver/riscv-profiles.c
M llvm/lib/Support/RISCVISAInfo.cpp
Log Message:
-----------
Revert "[RISCV] Support RISC-V Profiles in -march option (#76357)"
This reverts commit 66f88de80599ec4461b0fdac3d1e396b6e83052d as
there are some failures.
Commit: a62441d4bb6bd0cd8eccab8c5692340c5a2c60bb
https://github.com/llvm/llvm-project/commit/a62441d4bb6bd0cd8eccab8c5692340c5a2c60bb
Author: Alejandro Álvarez Ayllón <alejandro.alvarez at sonarsource.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
Log Message:
-----------
[clang][analyzer][NFC] UnixAPIMisuseChecker inherits from Checker<check::PreCall> (#83027)
Commit: 730ca47a0cc7380def6df1d25b30c1378fd8bf14
https://github.com/llvm/llvm-project/commit/730ca47a0cc7380def6df1d25b30c1378fd8bf14
Author: Alejandro Álvarez Ayllón <alejandro.alvarez at sonarsource.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerHelpers.h
M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
M clang/lib/StaticAnalyzer/Core/CheckerHelpers.cpp
A clang/test/Analysis/getline-unixapi.c
M clang/test/Analysis/stream.c
Log Message:
-----------
[clang][analyzer] Model getline/getdelim preconditions and evaluation (#83027)
According to POSIX 2018.
1. lineptr, n and stream can not be NULL.
2. If *n is non-zero, *lineptr must point to a region of at least *n
bytes, or be a NULL pointer.
Additionally, if *lineptr is not NULL, *n must not be undefined.
Commit: d8e5c0b4e546c73b2d10956a9517f1f2727702ae
https://github.com/llvm/llvm-project/commit/d8e5c0b4e546c73b2d10956a9517f1f2727702ae
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
A llvm/test/CodeGen/DirectX/abs-vec.ll
A llvm/test/CodeGen/DirectX/abs.ll
A llvm/test/CodeGen/DirectX/fabs.ll
Log Message:
-----------
[DXIL] Complete abs lowering (#86158)
This change completes #86155
- `DXIL.td` - lowering `fabs` intrinsic to the float dxil op.
- `DXILIntrinsicExpansion.cpp` - Add intrinsic expansion for the abs
case.
Commit: 79c32eb03d9ee4dd0a913c4130bc87c5e8ce7908
https://github.com/llvm/llvm-project/commit/79c32eb03d9ee4dd0a913c4130bc87c5e8ce7908
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/Target/DirectX/DXIL.td
A llvm/test/CodeGen/DirectX/cos.ll
A llvm/test/CodeGen/DirectX/cos_error.ll
A llvm/test/CodeGen/DirectX/floor.ll
A llvm/test/CodeGen/DirectX/floor_error.ll
Log Message:
-----------
[DXIL] Add lowerings for cosine and floor (#86173)
Completes #86170
Completes #86172
- `DXIL.td` - Add changes to lower the cosine and floor intrinsics to
dxilOps.
Commit: db33444ffa7e210e7040d8def958a14171f52eef
https://github.com/llvm/llvm-project/commit/db33444ffa7e210e7040d8def958a14171f52eef
Author: Oleksandr "Alex" Zinenko <zinenko at google.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M .github/CODEOWNERS
Log Message:
-----------
CODEOWNERS: extend scope of MLIR transform dialect
There are a bunch of related directories in another dialects.
Commit: e925968e7815ac3810fdb54bb884b8a8bed02eb5
https://github.com/llvm/llvm-project/commit/e925968e7815ac3810fdb54bb884b8a8bed02eb5
Author: Balazs Benics <benicsbalazs at gmail.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
A clang/test/Analysis/cxx23-static-operator.cpp
Log Message:
-----------
[analyzer] Support C++23 static operator calls (#84972)
Made by following:
https://github.com/llvm/llvm-project/pull/83585#issuecomment-1980340866
Thanks for the details Tomek!
CPP-5080
Commit: 74c3150ffc86a149abc68acdf8af1eed1ea0f038
https://github.com/llvm/llvm-project/commit/74c3150ffc86a149abc68acdf8af1eed1ea0f038
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
Log Message:
-----------
[X86] Add shuffle tests from Issue #86076
SLP should be doing a better job, but both shuffles lower to poorer codegen than necessary
Commit: ceabaa7e7a2d02b20cbd2b31e8336dedb1d4d9f5
https://github.com/llvm/llvm-project/commit/ceabaa7e7a2d02b20cbd2b31e8336dedb1d4d9f5
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] Fix some missing formatting when I rewrote the SUB(MAX,MIN) -> ABD patterns. NFC.
Commit: c41286af3f30e099556c6edbef0001466afaefcb
https://github.com/llvm/llvm-project/commit/c41286af3f30e099556c6edbef0001466afaefcb
Author: Pablo Antonio Martinez <pablo.antonio.martinez at huawei.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
M mlir/test/Dialect/Linalg/tile-to-forall.mlir
Log Message:
-----------
[mlir][linalg] Emit a warning when tile_using_forall generates non thread-safe code (#80813)
**Description**
The documentation of `transform.structured.tile_using_forall` says:
_"It is the user’s responsibility to ensure that num_threads/tile_sizes
is a valid tiling specification (i.e. that only tiles parallel
dimensions, e.g. in the Linalg case)."_
In other words, tiling a non-parallel dimension would generate code with
data races which is not safe to parallelize. For example, consider this
example (included in the tests in this PR):
```
func.func @tile_thread_safety2(%arg0: tensor<100x300x8xf32>, %arg1: tensor<300x8xf32>) -> tensor<300x8xf32> {
%0 = scf.forall (%arg2) in (8) shared_outs(%arg3 = %arg1) -> (tensor<300x8xf32>) {
%1 = affine.min #map(%arg2)
%2 = affine.max #map1(%1)
%3 = affine.apply #map2(%arg2)
%extracted_slice = tensor.extract_slice %arg0[%3, 0, 0] [%2, 300, 8] [1, 1, 1] : tensor<100x300x8xf32> to tensor<?x300x8xf32>
%4 = linalg.generic {indexing_maps = [#map3, #map4], iterator_types = ["reduction", "parallel", "parallel"]} ins(%extracted_slice : tensor<?x300x8xf32>) outs(%arg3 : tensor<300x8xf32>) {
^bb0(%in: f32, %out: f32):
%5 = arith.addf %in, %out : f32
linalg.yield %5 : f32
} -> tensor<300x8xf32>
scf.forall.in_parallel {
tensor.parallel_insert_slice %4 into %arg3[0, 0] [300, 8] [1, 1] : tensor<300x8xf32> into tensor<300x8xf32>
}
}
return %0 : tensor<300x8xf32>
}
```
We can easily see that this is not safe to parallelize because all
threads would be writing to the same position in `%arg3` (in the
`scf.forall.in_parallel`.
This PR detects wether it's safe to `tile_using_forall` and emits a
warning in the case it is not.
**Brief explanation**
It first generates a vector of affine expressions representing the tile
values and stores it in `dimExprs`. These affine expressions are
compared with the affine expressions coming from the results of the
affine map of each output in the linalg op. So going back to the
previous example, the original transform is:
```
#map = affine_map<(d0, d1, d2) -> (d0, d1, d2)>
#map1 = affine_map<(d0, d1, d2) -> (d1, d2)>
func.func @tile_thread_safety2(%arg0: tensor<100x300x8xf32>, %arg1: tensor<300x8xf32>) -> tensor<300x8xf32> {
// expected-warning at +1 {{tiling is not thread safe at axis #0}}
%0 = linalg.generic {indexing_maps = [#map, #map1], iterator_types = ["reduction", "parallel", "parallel"]} ins(%arg0 : tensor<100x300x8xf32>) outs(%arg1 : tensor<300x8xf32>) {
^bb0(%in: f32, %out: f32):
%1 = arith.addf %in, %out : f32
linalg.yield %1 : f32
} -> tensor<300x8xf32>
return %0 : tensor<300x8xf32>
}
module attributes {transform.with_named_sequence} {
transform.named_sequence @__transform_main(%arg0: !transform.any_op {transform.readonly}) {
%0 = transform.structured.match ops{["linalg.generic"]} in %arg0 : (!transform.any_op) -> !transform.any_op
%forall, %tiled_generic = transform.structured.tile_using_forall %0 num_threads [8]
: (!transform.any_op) -> (!transform.any_op, !transform.any_op)
transform.yield
}
}
```
The `num_threads` attribute would be represented as `(d0)`. Because the
linalg op has only one output (`arg1`) it would only check against the
results of `#map1`, which are `(d1, d2)`. The idea is to check that all
affine expressions in `dimExprs` are present in the output affine map.
In this example, `d0` is not in `(d1, d2)`, so tiling that axis is
considered not thread safe.
Commit: d03f470cbdbae3f86469ea4d79bb54d3ef680512
https://github.com/llvm/llvm-project/commit/d03f470cbdbae3f86469ea4d79bb54d3ef680512
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M clang/lib/Driver/ToolChains/CommonArgs.cpp
Log Message:
-----------
[Clang] Make '-frtlib-add-rpath' include the standard library directory (#86217)
Summary:
The original intention of the `openmp-add-rpath` option was to add the
rpath to the language runtime directory. However, the current
implementation only adds it to the compiler's resource directory. This
patch adds support for appending the `-rpath` to the compiler's standard
library directory as well. Currently this is `<exe>/../lib/<triple>`.
Commit: d51f1c442b1dc999267726a33e25b7d019726c89
https://github.com/llvm/llvm-project/commit/d51f1c442b1dc999267726a33e25b7d019726c89
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/docs/DirectX/DXILArchitecture.rst
Log Message:
-----------
[DirectX][Docs] Add DXILIntrinsicExpansion Pass to DXILArchitecture.rst (#86198)
Completes #84839
---------
Co-authored-by: Farzon Lotfi <farzon at farzon.com>
Commit: fe64b26df9429c82f706424dcdae3d65723c3e5e
https://github.com/llvm/llvm-project/commit/fe64b26df9429c82f706424dcdae3d65723c3e5e
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
Log Message:
-----------
NFC Rename LoadBitcodeIntoNewDbgInforFormat to LoadBitcodeIntoNewDbgInfoFormat
(drop additional 'r' before Format)
Commit: e1f50fdc03efecb5da39c1df4fc08d2ce5da90e9
https://github.com/llvm/llvm-project/commit/e1f50fdc03efecb5da39c1df4fc08d2ce5da90e9
Author: Ingo Müller <ingomueller at google.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M mlir/include/mlir/Tools/mlir-opt/MlirOptMain.h
Log Message:
-----------
[mlir] Remove unused and untested `shouldSplitInputFile`. (#85622)
This was changed by #84765 but turned out to be buggy. Since it isn't
used and isn't tested, it is probably best to remove it.
Commit: 83da7b6338053ca04cf0afe3c70ef5b8a9f6d300
https://github.com/llvm/llvm-project/commit/83da7b6338053ca04cf0afe3c70ef5b8a9f6d300
Author: Ingo Müller <ingomueller at google.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M mlir/test/mlir-opt/split-markers.mlir
M mlir/test/mlir-pdll/split-markers.pdll
Log Message:
-----------
[mlir] Extend split marker tests of `mlir-opt` and `mlir-pdll`. (#85620)
Recently #84765 made the split markers of various tools configurable but
did not test *not* using the split markers for two of them. This PR adds
those tests.
Commit: 04a6e0f1634f9a53120c27a30250d26dff4ada1c
https://github.com/llvm/llvm-project/commit/04a6e0f1634f9a53120c27a30250d26dff4ada1c
Author: Paul Robinson <paul.robinson at sony.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M clang/lib/Headers/mmintrin.h
M clang/lib/Headers/smmintrin.h
M clang/lib/Headers/xmmintrin.h
Log Message:
-----------
[X86][Headers] change 'yields' to 'returns' in more places
Commit: 31a9a4b83720af79110941824abe28fc6ff42355
https://github.com/llvm/llvm-project/commit/31a9a4b83720af79110941824abe28fc6ff42355
Author: yronglin <yronglin777 at gmail.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M libcxx/docs/Status/Cxx23Issues.csv
M libcxx/include/tuple
M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.apply/make_from_tuple.pass.cpp
Log Message:
-----------
[libc++] Implement LWG3528 (`make_from_tuple` can perform (the equivalent of) a C-style cast) (#85263)
Implement [LWG3528](https://wg21.link/LWG3528).
Based on LWG3528(https://wg21.link/LWG3528) and
http://eel.is/c++draft/description#structure.requirements-9, the
standard allows to impose requirements, we constraint
`std::make_from_tuple` to make `std::make_from_tuple` SFINAE friendly
and also avoid worse diagnostic messages. We still keep the constraints
of `std::__make_from_tuple_impl` so that `std::__make_from_tuple_impl`
will have the same advantages when used alone.
---------
Signed-off-by: yronglin <yronglin777 at gmail.com>
Commit: 3b3de48fd84b8269d5f45ee0a9dc6b7448368424
https://github.com/llvm/llvm-project/commit/3b3de48fd84b8269d5f45ee0a9dc6b7448368424
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M bolt/docs/BAT.md
M bolt/include/bolt/Profile/BoltAddressTranslation.h
M bolt/lib/Profile/BoltAddressTranslation.cpp
M bolt/test/X86/bolt-address-translation-yaml.test
M bolt/test/X86/bolt-address-translation.test
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/unsupported-option-gpu.c
M lld/MachO/Driver.cpp
M lld/MachO/InputSection.cpp
M lld/MachO/InputSection.h
M lld/MachO/ObjC.cpp
M lld/MachO/SyntheticSections.cpp
Log Message:
-----------
[BOLT] Add BB index to BAT (#86044)
Commit: b3f98dff75469b115e3d4b1f10cbf270c8ee81af
https://github.com/llvm/llvm-project/commit/b3f98dff75469b115e3d4b1f10cbf270c8ee81af
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/LTO/LTO.cpp
M llvm/tools/llvm-lto/llvm-lto.cpp
M llvm/tools/llvm-lto2/llvm-lto2.cpp
Log Message:
-----------
[RemoveDIs] Load into new debug info format by default in llvm-lto and llvm-lto2 (#86271)
Directly load all bitcode into the new debug info format in `llvm-lto`
and `llvm-lto2`. This means that new-mode bitcode no longer round-trips
back to old-mode after parsing, and that old-mode bitcode gets
auto-upgraded to new-mode debug info (which is the current in-memory
default in LLVM).
Commit: a277dd82d89a17849cf99fb335660ea0b8894878
https://github.com/llvm/llvm-project/commit/a277dd82d89a17849cf99fb335660ea0b8894878
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/test/CodeGen/X86/vector-half-conversions.ll
Log Message:
-----------
[X86] vector-half-conversions.ll - add v4f16->v4i32 fptosi/fptoui test coverage
Commit: f82d0187a7e581d4f8f825021dbcb08e8eb37d61
https://github.com/llvm/llvm-project/commit/f82d0187a7e581d4f8f825021dbcb08e8eb37d61
Author: David Green <david.green at arm.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
A llvm/test/CodeGen/AArch64/misched-bundle.mir
Log Message:
-----------
[AArch64] Add a test to show incorrect latencies into Bundle instructions. NFC
Commit: e54af608160350baa7ae1b8069f916eb625beadd
https://github.com/llvm/llvm-project/commit/e54af608160350baa7ae1b8069f916eb625beadd
Author: Hirofumi Nakamura <k.nakamura.hirofumi at gmail.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/WhitespaceManager.cpp
M clang/lib/Format/WhitespaceManager.h
M clang/unittests/Format/FormatTestTableGen.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Added AlignConsecutiveTableGenBreakingDAGArgColons option. (#86150)
The option to specify the style of alignment of the colons inside TableGen's DAGArg.
Commit: 46b853a82ce64e5213f8dfa2c12c6e6a950018a0
https://github.com/llvm/llvm-project/commit/46b853a82ce64e5213f8dfa2c12c6e6a950018a0
Author: Billy Laws <blaws05 at gmail.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/MC/WinCOFFObjectWriter.cpp
M llvm/test/MC/AArch64/coff-relocations.s
Log Message:
-----------
[MC][COFF][AArch64] Treat ARM64EC/X as ARM64 for relocations (#86019)
Since ARM64EC/X objects use regular ARM64 relocations, any special
handling must be done for them too.
Commit: d231e3b10ead90e4360f7ceb88e4bca9d42d7d04
https://github.com/llvm/llvm-project/commit/d231e3b10ead90e4360f7ceb88e4bca9d42d7d04
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
A clang/test/C/C11/n1282.c
M clang/test/C/drs/dr0xx.c
M clang/www/c_dr_status.html
M clang/www/c_status.html
Log Message:
-----------
[C11] Add test & update status of N1282 and DR087
Our existing diagnostics for catching unsequenced modifications handles
test coverage for N1282, which is correcting the standard based on the
resolution of DR087.
Commit: 8612fa0d84c730a753d04de012a8372ba5a10677
https://github.com/llvm/llvm-project/commit/8612fa0d84c730a753d04de012a8372ba5a10677
Author: agozillon <Andrew.Gozillon at amd.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/omptarget-fortran-allocatable-types-host.mlir
M mlir/test/Target/LLVMIR/omptarget-llvm.mlir
A openmp/libomptarget/test/offloading/fortran/target-map-enter-exit-array-2.f90
A openmp/libomptarget/test/offloading/fortran/target-map-enter-exit-array-bounds.f90
A openmp/libomptarget/test/offloading/fortran/target-map-enter-exit-scalar.f90
Log Message:
-----------
[MLIR][OpenMP] Refactor bounds offsetting and fix to apply to all directives (#84349)
This PR refactors bounds offsetting by combining the two differing
implementations (one applying to initial derived type member map
implementation for descriptors and the other for regular arrays,
effectively allocatable array vs regular array in fortran) now that it's
a little simpler to do.
The PR also moves the utilization of createAlteredByCaptureMap into
genMapInfoOp, where it will be correctly applied to all MapInfoData,
appropriately offsetting and altering Pointer data set in the kernel
argument structure on the host. This primarily means bounds offsets will
now correctly apply to enter/exit/update map clauses as opposed to just
the Target directive that is currently the case. A few fortran runtime
tests have been added to verify this new behavior.
This PR depends on: https://github.com/llvm/llvm-project/pull/84328 and
is an extraction of the larger derived type member map PR stack (so a
requirement for it to land).
Commit: 71db97152173a524a3e16e02b7fdc50f405c8695
https://github.com/llvm/llvm-project/commit/71db97152173a524a3e16e02b7fdc50f405c8695
Author: Matthias Gehre <matthias.gehre at amd.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
A mlir/test/Conversion/ArithToEmitC/arith-to-emitc-failed.mlir
M mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir
Log Message:
-----------
[mlir][emitc] Arith to EmitC: Handle addi, subi and muli (#86120)
Important to consider that `arith` has wrap around semantics, and in C++
signed overflow is UB.
Unless the operation guarantees that no signed overflow happens, we will
perform the arithmetic in an equivalent unsigned type.
`bool` also doesn't wrap around in C++, and is not addressed here.
Commit: 9c0a0659d40f613e873e416833d2293365b48e06
https://github.com/llvm/llvm-project/commit/9c0a0659d40f613e873e416833d2293365b48e06
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/RISCV/small-tree-not-schedulable-bv-node.ll
Log Message:
-----------
[SLP]Fix a crash for non-profitable non-schedulable single buildvector node tree, if the threshold allows its vectorization.
Commit: 6f44bb7717897191be25aa01161831c67cdf5b84
https://github.com/llvm/llvm-project/commit/6f44bb7717897191be25aa01161831c67cdf5b84
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/Object/OffloadBinary.cpp
Log Message:
-----------
[Object] Ensure header size not to underflow in `OffloadBinary::create`
Prevent potential integer underflows when header size is not valid.
Fixes: https://github.com/llvm/llvm-project/issues/86280.
Commit: b44771f480385fa93ba7719a57e759e19747e709
https://github.com/llvm/llvm-project/commit/b44771f480385fa93ba7719a57e759e19747e709
Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
A clang/test/Driver/riscv-profiles.c
M llvm/lib/Support/RISCVISAInfo.cpp
Log Message:
-----------
[RISCV] Support RISC-V Profiles in -march option (#76357)
This PR implements the draft
https://github.com/riscv-non-isa/riscv-toolchain-conventions/pull/36.
Currently, we replace specified profile in `-march` with standard
arch string.
This is recommitted as 66f88de was reverted because of failures
caused by lacking `--target` option.
Commit: cdbec7baf1bc31b59526442c9d4d5f53aac746eb
https://github.com/llvm/llvm-project/commit/cdbec7baf1bc31b59526442c9d4d5f53aac746eb
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M libc/include/arpa/inet.h.def
M libc/include/assert.h.def
M libc/include/ctype.h.def
M libc/include/dirent.h.def
M libc/include/errno.h.def
M libc/include/fcntl.h.def
M libc/include/features.h.def
M libc/include/fenv.h.def
M libc/include/float.h.def
M libc/include/gpu/rpc.h.def
M libc/include/inttypes.h.def
M libc/include/limits.h.def
M libc/include/llvm-libc-macros/containerof-macro.h
M libc/include/llvm-libc-macros/sys-queue-macros.h
M libc/include/llvm-libc-types/__mutex_type.h
M libc/include/llvm-libc-types/cookie_io_functions_t.h
M libc/include/llvm-libc-types/fd_set.h
M libc/include/llvm-libc-types/mtx_t.h
M libc/include/llvm-libc-types/once_flag.h
M libc/include/llvm-libc-types/pthread_attr_t.h
M libc/include/llvm-libc-types/pthread_mutex_t.h
M libc/include/llvm-libc-types/pthread_once_t.h
M libc/include/llvm-libc-types/pthread_t.h
M libc/include/llvm-libc-types/siginfo_t.h
M libc/include/llvm-libc-types/sigset_t.h
M libc/include/llvm-libc-types/stack_t.h
M libc/include/llvm-libc-types/struct_dirent.h
M libc/include/llvm-libc-types/struct_epoll_event.h
M libc/include/llvm-libc-types/struct_rlimit.h
M libc/include/llvm-libc-types/struct_rusage.h
M libc/include/llvm-libc-types/struct_sched_param.h
M libc/include/llvm-libc-types/struct_sigaction.h
M libc/include/llvm-libc-types/struct_sockaddr.h
M libc/include/llvm-libc-types/struct_sockaddr_un.h
M libc/include/llvm-libc-types/struct_stat.h
M libc/include/llvm-libc-types/struct_termios.h
M libc/include/llvm-libc-types/struct_timespec.h
M libc/include/llvm-libc-types/struct_timeval.h
M libc/include/llvm-libc-types/thrd_t.h
M libc/include/math.h.def
M libc/include/pthread.h.def
M libc/include/sched.h.def
M libc/include/search.h.def
M libc/include/setjmp.h.def
M libc/include/signal.h.def
M libc/include/spawn.h.def
M libc/include/stdbit.h.def
M libc/include/stdckdint.h.def
M libc/include/stdfix.h.def
M libc/include/stdint.h.def
M libc/include/stdio.h.def
M libc/include/stdlib.h.def
M libc/include/string.h.def
M libc/include/strings.h.def
M libc/include/sys/auxv.h.def
M libc/include/sys/epoll.h.def
M libc/include/sys/ioctl.h.def
M libc/include/sys/mman.h.def
M libc/include/sys/prctl.h.def
M libc/include/sys/queue.h
M libc/include/sys/random.h.def
M libc/include/sys/resource.h.def
M libc/include/sys/select.h.def
M libc/include/sys/sendfile.h.def
M libc/include/sys/socket.h.def
M libc/include/sys/stat.h.def
M libc/include/sys/time.h.def
M libc/include/sys/types.h.def
M libc/include/sys/utsname.h.def
M libc/include/sys/wait.h.def
M libc/include/termios.h.def
M libc/include/threads.h.def
M libc/include/time.h.def
M libc/include/uchar.h.def
M libc/include/unistd.h.def
M libc/include/wchar.h.def
Log Message:
-----------
[libc] fix up the use of angle includes in include/ (#86027)
Performed en-masse via:
$ grep -rn "#include <ll" libc/include -l | \
xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/'
$ grep -rn "#include <__" libc/include -l | \
xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/'
Link: #83463
Link: #83210
Commit: 4318f7e5301fb737a7abaacb3b43b6a9289055f3
https://github.com/llvm/llvm-project/commit/4318f7e5301fb737a7abaacb3b43b6a9289055f3
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M libc/src/stdlib/atexit.cpp
M libc/src/stdlib/exit.cpp
Log Message:
-----------
[libc][stdlib] initial support for __cxa_finalize (#85865)
I'm trying to break up the pieces of supporting __cxa_finalize into smaller
commits. Provide this symbol first, and make use of it from exit.
Next will be to store __dso_handle, then finally to only run callbacks that
were registered from a specific dso.
Link: #85651
Link: https://itanium-cxx-abi.github.io/cxx-abi/abi.html#dso-dtor
Commit: 6e28ecd79995a72a8dbde8f16a1afc18309442a1
https://github.com/llvm/llvm-project/commit/6e28ecd79995a72a8dbde8f16a1afc18309442a1
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/lib/Object/ELF.cpp
Log Message:
-----------
[Object][ELF] Ensure offset to locate dyn section does not go past size
Validate `p_offset` in `dynamicEntries` before computing the entry offset.
Fixes: https://github.com/llvm/llvm-project/issues/85568.
Commit: f66d631bf8dc0fe33c6ba88c3dc7f00ac5946065
https://github.com/llvm/llvm-project/commit/f66d631bf8dc0fe33c6ba88c3dc7f00ac5946065
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M bolt/docs/BAT.md
M bolt/include/bolt/Profile/BoltAddressTranslation.h
M bolt/lib/Profile/BoltAddressTranslation.cpp
M bolt/test/X86/bolt-address-translation-yaml.test
M bolt/test/X86/bolt-address-translation.test
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/unsupported-option-gpu.c
M lld/MachO/Driver.cpp
M lld/MachO/InputSection.cpp
M lld/MachO/InputSection.h
M lld/MachO/ObjC.cpp
M lld/MachO/SyntheticSections.cpp
Log Message:
-----------
Revert "[BOLT] Add BB index to BAT (#86044)"
This reverts commit 3b3de48fd84b8269d5f45ee0a9dc6b7448368424.
Commit: b0e23639c5b19030bee2b307173802914f64aad6
https://github.com/llvm/llvm-project/commit/b0e23639c5b19030bee2b307173802914f64aad6
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M bolt/docs/BAT.md
M bolt/include/bolt/Profile/BoltAddressTranslation.h
M bolt/lib/Profile/BoltAddressTranslation.cpp
M bolt/test/X86/bolt-address-translation-yaml.test
M bolt/test/X86/bolt-address-translation.test
Log Message:
-----------
[BOLT] Add BB index to BAT
Add input basic block index to BAT metadata. This addresses the case
where some basic blocks are eliminated, and output index is not equal
to the input block index. These indices are used in non-stale-matching
mode.
Increases BAT section size to:
- large binary: 39521512 bytes (1.02x original),
- medium binary: 3799988 bytes (0.64x),
- small binary: 920 bytes (0.64x).
Test Plan:
Updated bolt-address-translation{,-yaml}.test
Pull Request: https://github.com/llvm/llvm-project/pull/86044
Commit: cb300c33059c1d14f72392ce5dffcf050ad7567d
https://github.com/llvm/llvm-project/commit/cb300c33059c1d14f72392ce5dffcf050ad7567d
Author: Christian Ulmann <christianulmann at gmail.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
M mlir/test/Dialect/LLVMIR/sroa.mlir
Log Message:
-----------
[MLIR][LLVM][SROA] Fix pointer escape through stores bug (#86291)
This commit resolves a SROA bug caused by not properly checking if a
llvm store operation writes the pointer to memory or not. Now, we do no
longer consider stores that use a slot pointer as a value to store as
fixable.
Commit: ceba3a38e8f7b378ad20641832d568460892af1d
https://github.com/llvm/llvm-project/commit/ceba3a38e8f7b378ad20641832d568460892af1d
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M bolt/docs/BAT.md
M bolt/include/bolt/Profile/BoltAddressTranslation.h
M bolt/lib/Profile/BoltAddressTranslation.cpp
M bolt/test/X86/bolt-address-translation-yaml.test
Log Message:
-----------
[BOLT] Add number of basic blocks to BAT
YAML profile reader checks the number of basic blocks in regular,
no-stale-matching mode. Add it to BAT.
This increases the size of BAT section to:
- large binary: 39583080 bytes (1.02x of the original),
- medium binary: 3816492 bytes (0.64x),
- small binary: 920 bytes (0.64x, no change due to alignment).
Test Plan: Updated bolt-address-translation-yaml.test
Reviewers: rafaelauler, ayermolo, maksfb, dcci
Reviewed By: rafaelauler
Pull Request: https://github.com/llvm/llvm-project/pull/86045
Commit: 2091c74796b1dac68e622284c63a870b88b7554f
https://github.com/llvm/llvm-project/commit/2091c74796b1dac68e622284c63a870b88b7554f
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/docs/RemoveDIsDebugInfo.md
M llvm/include/llvm-c/DebugInfo.h
M llvm/lib/IR/DebugInfo.cpp
M llvm/tools/llvm-c-test/debuginfo.c
Log Message:
-----------
[RemoveDIs] Update DIBuilder C API with DbgRecord functions [2/2] (#85657)
Follow on from #84915 which adds the DbgRecord function variants.
Update the LLVMDIBuilderInsert... functions to insert DbgRecords instead
of debug intrinsics.
LLVMDIBuilderInsertDeclareBefore
LLVMDIBuilderInsertDeclareAtEnd
LLVMDIBuilderInsertDbgValueBefore
LLVMDIBuilderInsertDbgValueAtEnd
Calling these functions will now cause an assertion if the module is in the
wrong debug info format. They should only be used when the module is in "new
debug format".
Use LLVMIsNewDbgInfoFormat to query and LLVMSetIsNewDbgInfoFormat to change the
debug info format of a module.
Please see https://llvm.org/docs/RemoveDIsDebugInfo.html#c-api-change
(RemoveDIsDebugInfo.md) for more info.
Commit: 3054d0dae7a813c493d2bb8e969aa2321145a83b
https://github.com/llvm/llvm-project/commit/3054d0dae7a813c493d2bb8e969aa2321145a83b
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx11-err.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx12-w32-err.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx12-w64-err.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-w32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-w64.cl
Log Message:
-----------
AMDGPU: Rename and add bf16 support for global_load_tr builtins (#86202)
Make the name of a clang builtin as close to the mnemonic instruction
name as possible. The data type suffix may not be enough to tell what
instruction the builtin is going to produce.
This patch also add the bf16 support for global_load_tr_b128 builtins.
Commit: 631e54aa1a0b7a79d0dec8dce7ec0f5e506acf6c
https://github.com/llvm/llvm-project/commit/631e54aa1a0b7a79d0dec8dce7ec0f5e506acf6c
Author: long.chen <lipracer at gmail.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
M mlir/test/Dialect/Arith/expand-ops.mlir
M mlir/test/Integration/Dialect/Standard/CPU/test-ceil-floor-pos-neg.mlir
M mlir/test/Transforms/canonicalize.mlir
Log Message:
-----------
[mlir][arith] fix wrong floordivsi fold (#83248)
Fixs https://github.com/llvm/llvm-project/issues/83079
Commit: 01b1b0c1f728e2c2639edc654424f50830295989
https://github.com/llvm/llvm-project/commit/01b1b0c1f728e2c2639edc654424f50830295989
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
A mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/1d-depthwise-conv.mlir
Log Message:
-----------
[mlir][SVE] Add e2e for 1D depthwise WC convolution (#85225)
Follow-up for https://github.com/llvm/llvm-project/pull/81625
Commit: ab8ace3bfd5165a8532f710f9c2d8dd40c3fac39
https://github.com/llvm/llvm-project/commit/ab8ace3bfd5165a8532f710f9c2d8dd40c3fac39
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M utils/bazel/.bazelrc
M utils/bazel/.bazelversion
Log Message:
-----------
[bazel] Update to 7.x (#86297)
Commit: 26857582e5ee7980a71133ef8f8f579bcd90bdc8
https://github.com/llvm/llvm-project/commit/26857582e5ee7980a71133ef8f8f579bcd90bdc8
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/docs/RemoveDIsDebugInfo.md
M llvm/include/llvm-c/DebugInfo.h
M llvm/lib/IR/DebugInfo.cpp
M llvm/tools/llvm-c-test/debuginfo.c
Log Message:
-----------
Revert "[RemoveDIs] Update DIBuilder C API with DbgRecord functions [2/2] (#85657)"
This reverts commit 2091c74796b1dac68e622284c63a870b88b7554f.
Builtbot failure: https://lab.llvm.org/buildbot/#/builders/16/builds/63080
Commit: 8155ec13968b6457c61b8507f2ae8ba3ac3b748b
https://github.com/llvm/llvm-project/commit/8155ec13968b6457c61b8507f2ae8ba3ac3b748b
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CGCUDANV.cpp
Log Message:
-----------
[HIP][NFC] Refactor managed var codegen (#85976)
Refactor managed variable handling in codegen so that the transformation
is done separately from registration.
This will allow the new driver to register the managed var in the linker
wrapper.
Commit: 7269570e4b2a5197201c959652c3e86804ed1eeb
https://github.com/llvm/llvm-project/commit/7269570e4b2a5197201c959652c3e86804ed1eeb
Author: Abhin P Jose <abhinjose at live.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M compiler-rt/lib/asan/tests/asan_noinst_test.cpp
Log Message:
-----------
Fixed build breaking due to #77178 and #86131 (#86290)
Fixed a small issue of matching pthread signature, which was causing the
build to break for the compiler-rt project after adding
-Wcast-function-type-mismatch to -Wextra dignostic group
(https://github.com/llvm/llvm-project/pull/77178 &
https://github.com/llvm/llvm-project/pull/86131).
Commit: d2f684685afeffcffba7e889e7267bce1d905911
https://github.com/llvm/llvm-project/commit/d2f684685afeffcffba7e889e7267bce1d905911
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
A clang/test/C/drs/dr290.c
M clang/www/c_dr_status.html
Log Message:
-----------
[C99] Update status of DR290, which we do not yet implement
Commit: 527a624205748814dd9309eda7ee308b40b2359a
https://github.com/llvm/llvm-project/commit/527a624205748814dd9309eda7ee308b40b2359a
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
A clang/test/C/C11/n1365.c
M clang/www/c_status.html
Log Message:
-----------
[C11] Update the status of N1365 on constant expression handling
This paper is about constant expression handling in the presence of
FLT_EVAL_METHOD, which we handle via insertion of implicit cast nodes
in the AST.
Commit: 72c729f354d71697a1402720c90b57ff521b6739
https://github.com/llvm/llvm-project/commit/72c729f354d71697a1402720c90b57ff521b6739
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M utils/bazel/.bazelrc
M utils/bazel/llvm-project-overlay/bolt/BUILD.bazel
M utils/bazel/llvm-project-overlay/clang-tools-extra/clang-tidy/defs.bzl
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/lld/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/unittests/BUILD.bazel
Log Message:
-----------
[bazel] Add support for --incompatible_disallow_empty_glob (#85999)
This bazel flag, that should be flipped in an upcoming release
https://github.com/bazelbuild/bazel/pull/15327, fails if globs have no
matches. This helps find libraries where you are accidentally not
including files because of typos. This change removes the various globs
that were not matching anything, and uncovered some targets that were
doing nothing because their source files were deleted. There are a few
cases where globs were intentionally optional in the case of loops that
expanded to different potential options, so those now use `allow_empty =
True`. This allows downstream consumers to also flip this flags for
their own builds, where previously this would fail in LLVM instead.
The downside to this change is that if files are added in these
relatively standard locations, manual work will have to be done to add
this patterns back. If folks prefer we could instead add `allow_empty =
True` to every glob.
Commit: 5184e6ad69b0ca69dfba6fb0982a675c595f49a2
https://github.com/llvm/llvm-project/commit/5184e6ad69b0ca69dfba6fb0982a675c595f49a2
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M clang/test/C/C11/n1365.c
Log Message:
-----------
Removing accidental code from 527a624205748814dd9309eda7ee308b40b2359a
Commit: bd493756fa51e538575fc320aae50d75394f0567
https://github.com/llvm/llvm-project/commit/bd493756fa51e538575fc320aae50d75394f0567
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
Log Message:
-----------
[llvm-exegesis] Refactor parent code to separate function (#86232)
This patch refactors the parent code to a separate function in the
subprocess executor to make the code more clear and easy to follow.
Commit: d2f8ba7d6dc7251815f1431cf8715053576615f4
https://github.com/llvm/llvm-project/commit/d2f8ba7d6dc7251815f1431cf8715053576615f4
Author: Sacha Coppey <sacha.coppey at oracle.com>
Date: 2024-03-23 (Sat, 23 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMatInt.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMatInt.h
Log Message:
-----------
[RISCV][NFC] Add generateMCInstSeq in RISCVMatInt (#84462)
This allows to avoid duplicating the code handling the instructions
outputted by `generateInstSeq` when emitting `MCInst`s.
Commit: c3a41aac5f32475b9a0499e6e888e713763566dc
https://github.com/llvm/llvm-project/commit/c3a41aac5f32475b9a0499e6e888e713763566dc
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
Log Message:
-----------
Revert "[llvm-exegesis] Refactor parent code to separate function (#86232)"
This reverts commit bd493756fa51e538575fc320aae50d75394f0567.
Causes build failures on non-X86 platforms.
https://lab.llvm.org/buildbot/#/changes/128363
Commit: 36a6afdd2c7fa02548260ebe4c993b705c6e6e38
https://github.com/llvm/llvm-project/commit/36a6afdd2c7fa02548260ebe4c993b705c6e6e38
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M llvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
Log Message:
-----------
Reland "[llvm-exegesis] Refactor parent code to separate function (#86232)"
This reverts commit c3a41aac5f32475b9a0499e6e888e713763566dc.
This relands commit bd493756fa51e538575fc320aae50d75394f0567.
Apparently I forgot to update a couple values, so this change failed on
every builder that builds those sections (should be every Linux
platform) rather than something architecture specific like originally
thought. I swore I updated the values and ran check-llvm before merging.
Wondering If I forgot to push those changes...
Commit: bbcfe6f4311af8cf6095a5bc5937fa68a87b4289
https://github.com/llvm/llvm-project/commit/bbcfe6f4311af8cf6095a5bc5937fa68a87b4289
Author: srcarroll <50210727+srcarroll at users.noreply.github.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
A mlir/test/Dialect/Linalg/flatten-unsupported.mlir
Log Message:
-----------
[mlir][transform] Emit error message with `emitSilenceableFailure` (#86146)
The previous implementation used a `notifyMatchFailure` to emit failure
message inappropriately and then used the
`emitDefaultSilenceableFailure`. This patch changes this to use the more
appropriate `emitSilenceableFailure` with error message. Additionally a
failure test has been added.
Commit: 7c582a3d9c6f68730ac2618e13716982cf53c983
https://github.com/llvm/llvm-project/commit/7c582a3d9c6f68730ac2618e13716982cf53c983
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-22 (Fri, 22 Mar 2024)
Changed paths:
M .github/CODEOWNERS
M bolt/CMakeLists.txt
M bolt/docs/BAT.md
M bolt/include/bolt/Core/MCPlus.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Profile/BoltAddressTranslation.h
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/include/bolt/Profile/YAMLProfileWriter.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Core/MCPlusBuilder.cpp
M bolt/lib/Passes/BinaryPasses.cpp
M bolt/lib/Profile/BoltAddressTranslation.cpp
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Profile/YAMLProfileWriter.cpp
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
M bolt/lib/Utils/CommandLineOpts.cpp
A bolt/test/X86/Inputs/blarge_new.preagg.txt
A bolt/test/X86/Inputs/blarge_new.yaml
A bolt/test/X86/Inputs/blarge_new_bat.preagg.txt
A bolt/test/X86/bolt-address-translation-yaml.test
M bolt/test/X86/bolt-address-translation.test
M bolt/test/X86/dwarf5-label-low-pc.s
A bolt/test/X86/linux-static-keys.s
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang/CMakeLists.txt
M clang/cmake/caches/Fuchsia-stage2.cmake
M clang/docs/ClangFormat.rst
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/HLSL/HLSLSupport.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/UsersManual.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/Availability.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/PropertiesBase.td
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/include/clang/Basic/DiagnosticCommonKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticInstallAPIKinds.td
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Features.def
M clang/include/clang/Basic/LangOptions.h
M clang/include/clang/Basic/LangStandard.h
M clang/include/clang/Basic/TypeNodes.td
M clang/include/clang/Driver/Options.td
M clang/include/clang/Driver/Types.def
M clang/include/clang/Format/Format.h
M clang/include/clang/InstallAPI/DylibVerifier.h
M clang/include/clang/InstallAPI/Frontend.h
M clang/include/clang/InstallAPI/MachO.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Serialization/ASTRecordReader.h
M clang/include/clang/Serialization/ASTRecordWriter.h
M clang/include/clang/Serialization/TypeBitCodes.def
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerHelpers.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/Availability.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/Analysis/FlowSensitive/AdornedCFG.cpp
M clang/lib/Basic/LangStandards.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CGVTT.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Arch/Mips.cpp
M clang/lib/Driver/ToolChains/Arch/RISCV.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
M clang/lib/Format/AffectedRangeManager.cpp
M clang/lib/Format/BreakableToken.cpp
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/DefinitionBlockSeparator.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/MacroCallReconstructor.cpp
M clang/lib/Format/MacroExpander.cpp
M clang/lib/Format/NamespaceEndCommentsFixer.cpp
M clang/lib/Format/ObjCPropertyAttributeOrderFixer.cpp
M clang/lib/Format/QualifierAlignmentFixer.cpp
M clang/lib/Format/QualifierAlignmentFixer.h
M clang/lib/Format/SortJavaScriptImports.cpp
M clang/lib/Format/TokenAnalyzer.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/TokenAnnotator.h
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/lib/Format/UsingDeclarationsSorter.cpp
M clang/lib/Format/WhitespaceManager.cpp
M clang/lib/Format/WhitespaceManager.h
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/FrontendOptions.cpp
M clang/lib/Headers/avxintrin.h
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/mmintrin.h
M clang/lib/Headers/smmintrin.h
M clang/lib/Headers/xmmintrin.h
M clang/lib/InstallAPI/DylibVerifier.cpp
M clang/lib/InstallAPI/Visitor.cpp
M clang/lib/Lex/PPMacroExpansion.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/ParseInit.cpp
M clang/lib/Parse/ParsePragma.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
M clang/lib/StaticAnalyzer/Core/CheckerHelpers.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
A clang/lib/Tooling/Inclusions/Stdlib/CSpecialSymbolMap.inc
M clang/lib/Tooling/Inclusions/Stdlib/StandardLibrary.cpp
A clang/test/Analysis/cxx23-static-operator.cpp
A clang/test/Analysis/getline-unixapi.c
M clang/test/Analysis/inlining/false-positive-suppression.cpp
M clang/test/Analysis/stream.c
A clang/test/C/C11/n1282.c
A clang/test/C/C11/n1310.c
A clang/test/C/C11/n1365.c
M clang/test/C/C2x/n2975.c
M clang/test/C/drs/dr0xx.c
A clang/test/C/drs/dr290.c
M clang/test/CodeGen/SystemZ/systemz-ppa2.c
M clang/test/CodeGen/X86/avx-shuffle-builtins.c
A clang/test/CodeGen/X86/cx-complex-range.c
M clang/test/CodeGen/aapcs-align.cpp
M clang/test/CodeGen/aapcs64-align.cpp
M clang/test/CodeGen/aarch64-soft-float-abi-errors.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGen/builtins.c
M clang/test/CodeGen/complex-math.c
M clang/test/CodeGen/cx-complex-range.c
M clang/test/CodeGen/pragma-cx-limited-range.c
M clang/test/CodeGen/smiths-complex-div.c
M clang/test/CodeGen/swift-async-call-conv.c
M clang/test/CodeGen/ubsan-builtin-checks.c
M clang/test/CodeGenCXX/RelativeVTablesABI/diamond-virtual-inheritance.cpp
M clang/test/CodeGenCXX/attr-target-version.cpp
M clang/test/CodeGenCXX/auto-var-init.cpp
M clang/test/CodeGenCXX/const-init-cxx11.cpp
M clang/test/CodeGenCXX/constructor-init.cpp
M clang/test/CodeGenCXX/copy-constructor-synthesis-2.cpp
M clang/test/CodeGenCXX/copy-constructor-synthesis.cpp
M clang/test/CodeGenCXX/dynamic-cast-exact.cpp
M clang/test/CodeGenCXX/microsoft-interface.cpp
M clang/test/CodeGenCXX/skip-vtable-pointer-initialization.cpp
M clang/test/CodeGenCXX/static-init.cpp
M clang/test/CodeGenCXX/strict-vtable-pointers.cpp
M clang/test/CodeGenCXX/visibility.cpp
M clang/test/CodeGenCXX/vtable-assume-load-address-space.cpp
M clang/test/CodeGenCXX/vtable-assume-load.cpp
M clang/test/CodeGenCXX/vtable-pointer-initialization-address-space.cpp
M clang/test/CodeGenCXX/vtable-pointer-initialization.cpp
M clang/test/CodeGenCXX/vtt-address-space.cpp
M clang/test/CodeGenCXX/vtt-layout-address-space.cpp
M clang/test/CodeGenCXX/vtt-layout.cpp
A clang/test/CodeGenCXX/x86_64-vaarg.cpp
A clang/test/CodeGenCoroutines/coro-symmetric-transfer-04.cpp
M clang/test/CodeGenOpenCL/amdgpu-printf.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx11-err.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx12-w32-err.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx12-w64-err.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-w32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-w64.cl
M clang/test/Driver/clang-offload-bundler-asserts-on.c
M clang/test/Driver/clang-offload-bundler-standardize.c
M clang/test/Driver/clang-offload-bundler.c
M clang/test/Driver/fat-archive-unbundle-ext.c
A clang/test/Driver/hexagon-default-build-attributes.s
M clang/test/Driver/hip-partial-link.hip
M clang/test/Driver/hip-phases.hip
M clang/test/Driver/hip-runtime-libs-linux.hip
M clang/test/Driver/mips-features.c
M clang/test/Driver/modules-print-library-module-manifest-path.cpp
M clang/test/Driver/range.c
M clang/test/Driver/riscv-features.c
A clang/test/Driver/riscv-profiles.c
M clang/test/Driver/unsupported-option-gpu.c
A clang/test/Format/fail-on-incomplete.cpp
M clang/test/Headers/__clang_hip_math.hip
A clang/test/InstallAPI/availability.test
A clang/test/InstallAPI/diagnostics-cpp.test
A clang/test/InstallAPI/hiddens.test
A clang/test/InstallAPI/linker-symbols.test
A clang/test/InstallAPI/mismatching-objc-class-symbols.test
A clang/test/InstallAPI/symbol-flags.test
M clang/test/Lexer/gnu-flags.c
M clang/test/Lexer/has_extension_cxx.cpp
A clang/test/Modules/bounds-safety-attributed-type.c
M clang/test/OpenMP/bug54082.c
M clang/test/OpenMP/bug60602.cpp
M clang/test/OpenMP/declare_reduction_messages.cpp
M clang/test/OpenMP/distribute_codegen.cpp
M clang/test/OpenMP/distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_num_threads_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_num_threads_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/distribute_private_codegen.cpp
M clang/test/OpenMP/distribute_simd_codegen.cpp
M clang/test/OpenMP/distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_simd_private_codegen.cpp
M clang/test/OpenMP/distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/map_struct_ordering.cpp
M clang/test/OpenMP/nvptx_lambda_capturing.cpp
M clang/test/OpenMP/openmp_check.cpp
M clang/test/OpenMP/reduction_implicit_map.cpp
M clang/test/OpenMP/target_codegen_global_capture.cpp
M clang/test/OpenMP/target_data_use_device_ptr_inheritance_codegen.cpp
M clang/test/OpenMP/target_firstprivate_codegen.cpp
M clang/test/OpenMP/target_has_device_addr_codegen.cpp
M clang/test/OpenMP/target_has_device_addr_codegen_01.cpp
M clang/test/OpenMP/target_is_device_ptr_codegen.cpp
M clang/test/OpenMP/target_map_codegen_03.cpp
M clang/test/OpenMP/target_map_codegen_hold.cpp
M clang/test/OpenMP/target_map_deref_array_codegen.cpp
M clang/test/OpenMP/target_map_member_expr_codegen.cpp
M clang/test/OpenMP/target_offload_mandatory_codegen.cpp
M clang/test/OpenMP/target_ompx_dyn_cgroup_mem_codegen.cpp
M clang/test/OpenMP/target_parallel_codegen.cpp
M clang/test/OpenMP/target_parallel_for_codegen.cpp
M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-2.cpp
M clang/test/OpenMP/target_parallel_generic_loop_uses_allocators_codegen.cpp
M clang/test/OpenMP/target_parallel_if_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_codegen.cpp
M clang/test/OpenMP/target_task_affinity_codegen.cpp
M clang/test/OpenMP/target_teams_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_teams_generic_loop_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_if_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_uses_allocators_codegen.cpp
M clang/test/OpenMP/target_teams_map_codegen.cpp
M clang/test/OpenMP/target_teams_num_teams_codegen.cpp
M clang/test/OpenMP/target_teams_thread_limit_codegen.cpp
M clang/test/OpenMP/teams_codegen.cpp
M clang/test/OpenMP/teams_distribute_codegen.cpp
M clang/test/OpenMP/teams_distribute_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_copyin_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_num_threads_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_num_threads_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/teams_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/teams_generic_loop_collapse_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_reduction_codegen.cpp
M clang/test/OpenMP/teams_private_codegen.cpp
A clang/test/PCH/Inputs/bounds-safety-attributed-type.h
A clang/test/PCH/bounds-safety-attributed-type.c
A clang/test/Parser/cxx03-lambda-extension.cpp
M clang/test/Parser/cxx0x-lambda-expressions.cpp
M clang/test/Parser/cxx2b-lambdas.cpp
M clang/test/Parser/objcxx-lambda-expressions-neg.mm
M clang/test/ParserHLSL/group_shared.hlsl
M clang/test/Preprocessor/empty_va_arg.cpp
M clang/test/Preprocessor/macro_fn.c
A clang/test/Sema/PR85343.cpp
M clang/test/Sema/attr-counted-by.c
R clang/test/Sema/builtin-popcountg.c
A clang/test/Sema/count-builtins.c
M clang/test/Sema/swift-call-conv.c
M clang/test/Sema/warn-cast-function-type-strict.c
M clang/test/Sema/warn-cast-function-type.c
M clang/test/SemaCXX/cxx2a-template-lambdas.cpp
M clang/test/SemaCXX/lambda-expressions.cpp
M clang/test/SemaCXX/lambda-implicit-this-capture.cpp
M clang/test/SemaCXX/lambda-invalid-capture.cpp
M clang/test/SemaCXX/new-delete.cpp
M clang/test/SemaCXX/warn-cast-function-type-strict.cpp
M clang/test/SemaCXX/warn-cast-function-type.cpp
A clang/test/SemaObjC/attr-objc-NSObject.m
M clang/tools/clang-format/ClangFormat.cpp
M clang/tools/clang-installapi/ClangInstallAPI.cpp
M clang/tools/clang-installapi/Options.cpp
M clang/tools/diagtool/DiagnosticNames.cpp
M clang/tools/libclang/CIndex.cpp
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
M clang/unittests/Format/FormatTestTableGen.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/StaticAnalyzer/CMakeLists.txt
A clang/unittests/StaticAnalyzer/MemRegionDescriptiveNameTest.cpp
M clang/unittests/Tooling/StandardLibraryTest.cpp
M clang/www/c_dr_status.html
M clang/www/c_status.html
M compiler-rt/cmake/Modules/CompilerRTCompile.cmake
M compiler-rt/lib/asan/tests/asan_noinst_test.cpp
M compiler-rt/lib/dfsan/dfsan.cpp
M compiler-rt/lib/dfsan/dfsan_allocator.cpp
M compiler-rt/lib/dfsan/dfsan_platform.h
M compiler-rt/lib/memprof/memprof_allocator.h
M compiler-rt/lib/msan/tests/CMakeLists.txt
M compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_printer.h
M compiler-rt/lib/scudo/standalone/allocator_config.def
M compiler-rt/lib/scudo/standalone/allocator_config_wrapper.h
M compiler-rt/lib/tsan/tests/CMakeLists.txt
M compiler-rt/test/dfsan/custom.cpp
M flang/docs/OpenMP-descriptor-management.md
M flang/include/flang/Common/Version.h
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Frontend/CodeGenOptions.h
M flang/include/flang/Frontend/LangOptions.h
M flang/include/flang/Lower/ConvertVariable.h
M flang/include/flang/Optimizer/Builder/HLFIRTools.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/Dialect/FIRType.h
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Semantics/tools.h
M flang/include/flang/Tools/CLOptions.inc
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/ConvertConstant.cpp
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/DirectivesCommon.h
M flang/lib/Lower/HostAssociations.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.h
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
M flang/lib/Lower/PFTBuilder.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/HLFIRTools.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
M flang/lib/Optimizer/Dialect/FIRType.cpp
M flang/lib/Optimizer/Transforms/ControlFlowConverter.cpp
M flang/lib/Semantics/tools.cpp
R flang/module/omp_lib.f90
R flang/module/omp_lib.h
M flang/runtime/CMakeLists.txt
A flang/runtime/external-unit.cpp
M flang/runtime/io-stmt.cpp
M flang/runtime/lock.h
A flang/runtime/pseudo-unit.cpp
M flang/runtime/tools.h
M flang/runtime/unit.cpp
M flang/runtime/unit.h
M flang/test/Driver/bbc-mlir-pass-pipeline.f90
M flang/test/Driver/include-omp-header.f90
M flang/test/Driver/mlir-debug-pass-pipeline.f90
M flang/test/Driver/mlir-pass-pipeline.f90
M flang/test/Fir/array-value-copy-2.fir
M flang/test/Fir/basic-program.fir
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Fir/loop01.fir
M flang/test/Fir/loop02.fir
M flang/test/Fir/omp-reduction-embox-codegen.fir
M flang/test/Lower/CUDA/cuda-kernel-calls.cuf
M flang/test/Lower/HLFIR/cray-pointers.f90
A flang/test/Lower/HLFIR/procedure-pointer-component-structure-constructor.f90
M flang/test/Lower/OpenACC/acc-bounds.f90
M flang/test/Lower/OpenACC/acc-enter-data.f90
M flang/test/Lower/OpenMP/FIR/array-bounds.f90
M flang/test/Lower/OpenMP/FIR/atomic-capture.f90
M flang/test/Lower/OpenMP/FIR/atomic-read.f90
M flang/test/Lower/OpenMP/FIR/atomic-update.f90
M flang/test/Lower/OpenMP/FIR/atomic-write.f90
M flang/test/Lower/OpenMP/FIR/critical.f90
M flang/test/Lower/OpenMP/FIR/flush.f90
M flang/test/Lower/OpenMP/FIR/map-component-ref.f90
M flang/test/Lower/OpenMP/FIR/master.f90
M flang/test/Lower/OpenMP/FIR/ordered-threads.f90
M flang/test/Lower/OpenMP/FIR/parallel-reduction-add-byref.f90
M flang/test/Lower/OpenMP/FIR/parallel-reduction-add.f90
M flang/test/Lower/OpenMP/FIR/parallel-sections.f90
M flang/test/Lower/OpenMP/FIR/parallel.f90
M flang/test/Lower/OpenMP/FIR/sections.f90
M flang/test/Lower/OpenMP/FIR/single.f90
M flang/test/Lower/OpenMP/FIR/target.f90
M flang/test/Lower/OpenMP/FIR/task.f90
M flang/test/Lower/OpenMP/FIR/taskgroup.f90
M flang/test/Lower/OpenMP/FIR/teams.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-add-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-add.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-iand-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-iand.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-ieor-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-ieor.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-ior-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-ior.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-eqv-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-eqv.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-neqv-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-neqv.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-max-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-max.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-min-byref.f90
M flang/test/Lower/OpenMP/FIR/wsloop-reduction-min.f90
R flang/test/Lower/OpenMP/Todo/reduction-arrays.f90
M flang/test/Lower/OpenMP/allocatable-array-bounds.f90
M flang/test/Lower/OpenMP/allocatable-map.f90
M flang/test/Lower/OpenMP/array-bounds.f90
M flang/test/Lower/OpenMP/atomic-capture.f90
M flang/test/Lower/OpenMP/atomic-read.f90
M flang/test/Lower/OpenMP/atomic-update.f90
M flang/test/Lower/OpenMP/atomic-write.f90
M flang/test/Lower/OpenMP/critical.f90
M flang/test/Lower/OpenMP/declare-target-link-tarop-cap.f90
M flang/test/Lower/OpenMP/default-clause-byref.f90
M flang/test/Lower/OpenMP/default-clause.f90
M flang/test/Lower/OpenMP/delayed-privatization-reduction-byref.f90
M flang/test/Lower/OpenMP/delayed-privatization-reduction.f90
M flang/test/Lower/OpenMP/map-component-ref.f90
M flang/test/Lower/OpenMP/omp-lib-num-threads.f90
M flang/test/Lower/OpenMP/ordered-threads.f90
M flang/test/Lower/OpenMP/parallel-reduction-add-byref.f90
M flang/test/Lower/OpenMP/parallel-reduction-add.f90
A flang/test/Lower/OpenMP/parallel-reduction-array.f90
A flang/test/Lower/OpenMP/parallel-reduction-array2.f90
M flang/test/Lower/OpenMP/parallel-reduction-byref.f90
M flang/test/Lower/OpenMP/parallel-reduction-rename.f90
M flang/test/Lower/OpenMP/parallel-reduction.f90
M flang/test/Lower/OpenMP/parallel-sections.f90
M flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f90
M flang/test/Lower/OpenMP/parallel-wsloop-reduction.f90
M flang/test/Lower/OpenMP/parallel.f90
M flang/test/Lower/OpenMP/sections.f90
M flang/test/Lower/OpenMP/single.f90
M flang/test/Lower/OpenMP/target.f90
M flang/test/Lower/OpenMP/task.f90
M flang/test/Lower/OpenMP/taskgroup.f90
M flang/test/Lower/OpenMP/teams.f90
M flang/test/Lower/OpenMP/threadprivate-default-clause.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add-hlfir-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add-hlfir.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add.f90
A flang/test/Lower/OpenMP/wsloop-reduction-array.f90
A flang/test/Lower/OpenMP/wsloop-reduction-array2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-iand-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-iand.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ieor-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ieor.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ior-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ior.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-and-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-and.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-or-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-or.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-2-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-hlfir-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-hlfir.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-mul-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-mul.f90
A flang/test/Lower/OpenMP/wsloop-reduction-multi.f90
M flang/test/Lower/cray-pointer.f90
M flang/test/Parser/OpenMP/allocate-tree-spec-part.f90
M flang/test/Parser/OpenMP/allocate-tree.f90
M flang/test/Parser/OpenMP/target_device_parse.f90
M flang/test/Semantics/OpenMP/allocate-clause01.f90
M flang/test/Semantics/OpenMP/allocate-directive.f90
M flang/test/Semantics/OpenMP/allocate01.f90
M flang/test/Semantics/OpenMP/allocate02.f90
M flang/test/Semantics/OpenMP/allocate03.f90
M flang/test/Semantics/OpenMP/allocate04.f90
M flang/test/Semantics/OpenMP/allocate05.f90
M flang/test/Semantics/OpenMP/allocate06.f90
M flang/test/Semantics/OpenMP/allocate07.f90
M flang/test/Semantics/OpenMP/allocate08.f90
M flang/test/Semantics/OpenMP/allocate09.f90
M flang/test/Semantics/OpenMP/allocators01.f90
M flang/test/Semantics/OpenMP/allocators02.f90
M flang/test/Semantics/OpenMP/allocators03.f90
M flang/test/Semantics/OpenMP/allocators04.f90
M flang/test/Semantics/OpenMP/allocators05.f90
M flang/test/Semantics/OpenMP/allocators06.f90
M flang/test/Semantics/OpenMP/atomic-hint-clause.f90
M flang/test/Semantics/OpenMP/atomic01.f90
M flang/test/Semantics/OpenMP/atomic02.f90
M flang/test/Semantics/OpenMP/atomic03.f90
M flang/test/Semantics/OpenMP/atomic04.f90
M flang/test/Semantics/OpenMP/atomic05.f90
M flang/test/Semantics/OpenMP/clause-validity01.f90
M flang/test/Semantics/OpenMP/critical-hint-clause.f90
M flang/test/Semantics/OpenMP/declare-target01.f90
M flang/test/Semantics/OpenMP/flush02.f90
M flang/test/Semantics/OpenMP/omp-atomic-assignment-stmt.f90
M flang/test/Semantics/OpenMP/parallel-sections01.f90
M flang/test/Semantics/OpenMP/resolve06.f90
M flang/test/Semantics/OpenMP/sections02.f90
M flang/test/Semantics/OpenMP/sync-critical02.f90
M flang/test/Semantics/OpenMP/taskgroup01.f90
M flang/test/Semantics/OpenMP/threadprivate01.f90
M flang/test/Transforms/omp-descriptor-map-info-gen.fir
A flang/test/Transforms/omp-reduction-cfg-conversion.fir
M flang/test/lit.cfg.py
M flang/test/lit.site.cfg.py.in
M flang/tools/f18/CMakeLists.txt
M libc/CMakeLists.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/stdio.rst
M libc/include/arpa/inet.h.def
M libc/include/assert.h.def
M libc/include/ctype.h.def
M libc/include/dirent.h.def
M libc/include/errno.h.def
M libc/include/fcntl.h.def
M libc/include/features.h.def
M libc/include/fenv.h.def
M libc/include/float.h.def
M libc/include/gpu/rpc.h.def
M libc/include/inttypes.h.def
M libc/include/limits.h.def
M libc/include/llvm-libc-macros/containerof-macro.h
M libc/include/llvm-libc-macros/math-macros.h
M libc/include/llvm-libc-macros/sys-queue-macros.h
M libc/include/llvm-libc-types/__mutex_type.h
M libc/include/llvm-libc-types/cookie_io_functions_t.h
M libc/include/llvm-libc-types/fd_set.h
M libc/include/llvm-libc-types/mtx_t.h
M libc/include/llvm-libc-types/once_flag.h
M libc/include/llvm-libc-types/pthread_attr_t.h
M libc/include/llvm-libc-types/pthread_mutex_t.h
M libc/include/llvm-libc-types/pthread_once_t.h
M libc/include/llvm-libc-types/pthread_t.h
M libc/include/llvm-libc-types/siginfo_t.h
M libc/include/llvm-libc-types/sigset_t.h
M libc/include/llvm-libc-types/stack_t.h
M libc/include/llvm-libc-types/struct_dirent.h
M libc/include/llvm-libc-types/struct_epoll_event.h
M libc/include/llvm-libc-types/struct_rlimit.h
M libc/include/llvm-libc-types/struct_rusage.h
M libc/include/llvm-libc-types/struct_sched_param.h
M libc/include/llvm-libc-types/struct_sigaction.h
M libc/include/llvm-libc-types/struct_sockaddr.h
M libc/include/llvm-libc-types/struct_sockaddr_un.h
M libc/include/llvm-libc-types/struct_stat.h
M libc/include/llvm-libc-types/struct_termios.h
M libc/include/llvm-libc-types/struct_timespec.h
M libc/include/llvm-libc-types/struct_timeval.h
M libc/include/llvm-libc-types/thrd_t.h
M libc/include/math.h.def
M libc/include/pthread.h.def
M libc/include/sched.h.def
M libc/include/search.h.def
M libc/include/setjmp.h.def
M libc/include/signal.h.def
M libc/include/spawn.h.def
M libc/include/stdbit.h.def
M libc/include/stdckdint.h.def
M libc/include/stdfix.h.def
M libc/include/stdint.h.def
M libc/include/stdio.h.def
M libc/include/stdlib.h.def
M libc/include/string.h.def
M libc/include/strings.h.def
M libc/include/sys/auxv.h.def
M libc/include/sys/epoll.h.def
M libc/include/sys/ioctl.h.def
M libc/include/sys/mman.h.def
M libc/include/sys/prctl.h.def
M libc/include/sys/queue.h
M libc/include/sys/random.h.def
M libc/include/sys/resource.h.def
M libc/include/sys/select.h.def
M libc/include/sys/sendfile.h.def
M libc/include/sys/socket.h.def
M libc/include/sys/stat.h.def
M libc/include/sys/time.h.def
M libc/include/sys/types.h.def
M libc/include/sys/utsname.h.def
M libc/include/sys/wait.h.def
M libc/include/termios.h.def
M libc/include/threads.h.def
M libc/include/time.h.def
M libc/include/uchar.h.def
M libc/include/unistd.h.def
M libc/include/wchar.h.def
M libc/spec/stdc.td
M libc/src/__support/CMakeLists.txt
M libc/src/__support/CPP/CMakeLists.txt
M libc/src/__support/CPP/iterator.h
M libc/src/__support/CPP/type_traits.h
A libc/src/__support/CPP/type_traits/is_constant_evaluated.h
M libc/src/__support/FPUtil/CMakeLists.txt
M libc/src/__support/FPUtil/FPBits.h
M libc/src/__support/FPUtil/fpbits_str.h
A libc/src/__support/sign.h
M libc/src/__support/str_to_float.h
M libc/src/math/generic/acosf.cpp
M libc/src/math/generic/asinf.cpp
M libc/src/math/generic/atanf.cpp
M libc/src/math/generic/atanhf.cpp
M libc/src/math/generic/cosf.cpp
M libc/src/math/generic/coshf.cpp
M libc/src/math/generic/exp.cpp
M libc/src/math/generic/exp10.cpp
M libc/src/math/generic/exp2.cpp
M libc/src/math/generic/expm1.cpp
M libc/src/math/generic/log.cpp
M libc/src/math/generic/log10.cpp
M libc/src/math/generic/log10f.cpp
M libc/src/math/generic/log1p.cpp
M libc/src/math/generic/log1pf.cpp
M libc/src/math/generic/log2.cpp
M libc/src/math/generic/log2f.cpp
M libc/src/math/generic/log_range_reduction.h
M libc/src/math/generic/logf.cpp
M libc/src/math/generic/powf.cpp
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/linux/CMakeLists.txt
A libc/src/stdio/linux/rename.cpp
M libc/src/stdio/printf_core/float_dec_converter.h
A libc/src/stdio/rename.h
M libc/src/stdlib/CMakeLists.txt
M libc/src/stdlib/atexit.cpp
M libc/src/stdlib/exit.cpp
A libc/src/stdlib/str_from_util.h
A libc/src/stdlib/strfromf.cpp
A libc/src/stdlib/strfromf.h
M libc/test/UnitTest/FPMatcher.h
M libc/test/src/__support/FPUtil/CMakeLists.txt
M libc/test/src/__support/FPUtil/dyadic_float_test.cpp
M libc/test/src/__support/FPUtil/fpbits_test.cpp
M libc/test/src/math/FDimTest.h
M libc/test/src/math/FmaTest.h
M libc/test/src/math/HypotTest.h
M libc/test/src/math/ILogbTest.h
M libc/test/src/math/LdExpTest.h
M libc/test/src/math/NextAfterTest.h
M libc/test/src/math/RIntTest.h
M libc/test/src/math/RemQuoTest.h
M libc/test/src/math/RoundToIntegerTest.h
M libc/test/src/math/atanhf_test.cpp
M libc/test/src/math/smoke/FDimTest.h
M libc/test/src/math/smoke/FMaxTest.h
M libc/test/src/math/smoke/FmaTest.h
M libc/test/src/math/smoke/HypotTest.h
M libc/test/src/math/smoke/ILogbTest.h
M libc/test/src/math/smoke/LdExpTest.h
M libc/test/src/math/smoke/NextAfterTest.h
M libc/test/src/math/smoke/NextTowardTest.h
M libc/test/src/math/smoke/RIntTest.h
M libc/test/src/math/smoke/RemQuoTest.h
M libc/test/src/math/smoke/RoundToIntegerTest.h
M libc/test/src/math/smoke/atanhf_test.cpp
M libc/test/src/stdio/CMakeLists.txt
A libc/test/src/stdio/rename_test.cpp
M libc/test/src/stdlib/CMakeLists.txt
A libc/test/src/stdlib/strfromf_test.cpp
M libcxx/docs/ReleaseNotes/19.rst
M libcxx/docs/Status/Cxx23Issues.csv
M libcxx/docs/UsingLibcxx.rst
M libcxx/include/__concepts/class_or_enum.h
M libcxx/include/__config
M libcxx/include/__format/format_arg_store.h
M libcxx/include/__iterator/iterator_traits.h
M libcxx/include/__iterator/ranges_iterator_traits.h
M libcxx/include/__memory/allocator.h
M libcxx/include/__ranges/access.h
M libcxx/include/__ranges/data.h
M libcxx/include/__ranges/empty.h
M libcxx/include/__ranges/rbegin.h
M libcxx/include/__ranges/rend.h
M libcxx/include/__ranges/size.h
M libcxx/include/__ranges/view_interface.h
M libcxx/include/__string/char_traits.h
M libcxx/include/__system_error/errc.h
M libcxx/include/__tuple/tuple_element.h
M libcxx/include/__type_traits/copy_cv.h
M libcxx/include/__type_traits/is_assignable.h
M libcxx/include/__type_traits/is_constructible.h
M libcxx/include/__type_traits/is_nothrow_assignable.h
M libcxx/include/__type_traits/is_nothrow_constructible.h
M libcxx/include/__type_traits/is_trivially_assignable.h
M libcxx/include/cerrno
M libcxx/include/tuple
M libcxx/modules/CMakeLists.txt
M libcxx/src/random.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.cxx20.pass.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.cxx20.verify.cpp
R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.cxx2a.pass.cpp
M libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.depr_in_cxx17.verify.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx20.pass.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx20.verify.cpp
R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx2a.pass.cpp
R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx2a.verify.cpp
M libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.depr_in_cxx17.verify.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/construct.cxx20.pass.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/construct.cxx20.verify.cpp
R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/construct.cxx2a.pass.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/max_size.cxx20.pass.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/max_size.cxx20.verify.cpp
R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/max_size.cxx2a.pass.cpp
A libcxx/test/libcxx/depr/depr.default.allocator/allocator_types.cxx20.pass.cpp
R libcxx/test/libcxx/depr/depr.default.allocator/allocator_types.cxx2a.pass.cpp
R libcxx/test/libcxx/depr/depr.default.allocator/enable_removed_allocator_members.deprecated.verify.cpp
M libcxx/test/libcxx/module_std.gen.py
M libcxx/test/libcxx/module_std_compat.gen.py
R libcxx/test/libcxx/utilities/memory/default.allocator/allocator_types.void.cxx20_allocator_void_no_members.verify.cpp
R libcxx/test/libcxx/utilities/memory/default.allocator/allocator_types.void.cxx20_with_removed_members.compile.pass.cpp
M libcxx/test/std/containers/sequences/deque/types.pass.cpp
M libcxx/test/std/containers/sequences/list/types.pass.cpp
M libcxx/test/std/containers/sequences/vector/types.pass.cpp
A libcxx/test/std/depr.cerro/cerrno.syn.verify.cpp
A libcxx/test/std/depr.cerro/system.error.syn.verify.cpp
M libcxx/test/std/diagnostics/syserr/errc.pass.cpp
M libcxx/test/std/ranges/range.utility/view.interface/view.interface.pass.cpp
A libcxx/test/std/utilities/format/format.functions/bug_81590.compile.pass.cpp
M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.apply/make_from_tuple.pass.cpp
M lld/COFF/Config.h
M lld/COFF/Driver.cpp
M lld/COFF/LTO.cpp
M lld/COFF/Options.td
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/LinkerScript.cpp
M lld/ELF/MarkLive.cpp
M lld/ELF/OutputSections.cpp
M lld/ELF/Writer.cpp
M lld/MachO/Driver.cpp
M lld/MachO/InputSection.cpp
M lld/MachO/InputSection.h
M lld/MachO/ObjC.cpp
M lld/MachO/SyntheticSections.cpp
M lld/MinGW/Driver.cpp
M lld/MinGW/Options.td
A lld/test/COFF/Inputs/lto-sample-profile.prof
A lld/test/COFF/lto-sample-profile.ll
M lld/test/ELF/driver.test
M lld/test/ELF/lto/Inputs/devirt_validate_vtable_typeinfos_ref.ll
M lld/test/ELF/lto/Inputs/devirt_validate_vtable_typeinfos_undef.ll
M lld/test/ELF/lto/devirt_split_unit_localize.ll
M lld/test/ELF/lto/devirt_validate_vtable_typeinfos_ref.ll
M lld/test/ELF/riscv-tlsdesc.s
M lld/test/MachO/thinlto-split-unit-start-lib.ll
M lld/test/MinGW/driver.test
M lldb/include/lldb/API/SBTarget.h
M lldb/include/lldb/Core/Progress.h
M lldb/include/lldb/Symbol/LineEntry.h
M lldb/include/lldb/Target/Process.h
M lldb/include/lldb/Utility/AddressableBits.h
M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
M lldb/source/API/SBLineEntry.cpp
M lldb/source/Commands/CommandObjectThread.cpp
M lldb/source/Core/Disassembler.cpp
M lldb/source/Interpreter/OptionGroupVariable.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Symbol/LineEntry.cpp
M lldb/source/Symbol/LineTable.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Utility/AddressableBits.cpp
A lldb/test/API/debuginfod/Normal/Makefile
A lldb/test/API/debuginfod/Normal/TestDebuginfod.py
A lldb/test/API/debuginfod/Normal/main.c
A lldb/test/API/debuginfod/SplitDWARF/Makefile
A lldb/test/API/debuginfod/SplitDWARF/TestDebuginfodDWP.py
A lldb/test/API/debuginfod/SplitDWARF/main.c
M lldb/test/API/functionalities/target_var/TestTargetVar.py
M lldb/test/API/source-manager/TestSourceManager.py
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/CommandGuide/llvm-objcopy.rst
M llvm/docs/DirectX/DXILArchitecture.rst
M llvm/docs/GettingInvolved.rst
A llvm/docs/InstCombineContributorGuide.md
M llvm/docs/LangRef.rst
M llvm/docs/ReleaseNotes.rst
M llvm/docs/RemoveDIsDebugInfo.md
M llvm/docs/UserGuides.rst
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/AsmParser/LLParser.h
M llvm/include/llvm/BinaryFormat/COFF.h
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
M llvm/include/llvm/Frontend/OpenMP/OMPConstants.h
M llvm/include/llvm/IR/Argument.h
M llvm/include/llvm/IR/BasicBlock.h
M llvm/include/llvm/IR/ConstantFold.h
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/DataLayout.h
M llvm/include/llvm/IR/DebugProgramInstruction.h
M llvm/include/llvm/IR/InstrTypes.h
M llvm/include/llvm/IR/Instruction.h
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/IR/Operator.h
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/ObjCopy/CommonConfig.h
M llvm/include/llvm/Object/ArchiveWriter.h
M llvm/include/llvm/Object/ELFObjectFile.h
M llvm/include/llvm/Passes/PassBuilder.h
A llvm/include/llvm/Passes/TargetPassRegistry.inc
A llvm/include/llvm/Support/HexagonAttributeParser.h
A llvm/include/llvm/Support/HexagonAttributes.h
M llvm/include/llvm/Support/LEB128.h
M llvm/include/llvm/Target/Target.td
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
M llvm/lib/CodeGen/FinalizeISel.cpp
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/ConstantFold.cpp
M llvm/lib/IR/ConstantRange.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/ConstantsContext.h
M llvm/lib/IR/DIBuilder.cpp
M llvm/lib/IR/DebugProgramInstruction.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/IR/Operator.cpp
M llvm/lib/IR/Value.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/MC/MCAsmInfoGOFF.cpp
M llvm/lib/MC/MCDwarf.cpp
M llvm/lib/MC/WinCOFFObjectWriter.cpp
M llvm/lib/ObjCopy/ConfigManager.cpp
M llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp
M llvm/lib/Object/ArchiveWriter.cpp
M llvm/lib/Object/COFFImportFile.cpp
M llvm/lib/Object/ELF.cpp
M llvm/lib/Object/ELFObjectFile.cpp
M llvm/lib/Object/OffloadBinary.cpp
M llvm/lib/ObjectYAML/ELFYAML.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/ProfileData/RawMemProfReader.cpp
M llvm/lib/Support/CMakeLists.txt
M llvm/lib/Support/CommandLine.cpp
A llvm/lib/Support/HexagonAttributeParser.cpp
A llvm/lib/Support/HexagonAttributes.cpp
M llvm/lib/Support/RISCVISAInfo.cpp
M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
A llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
A llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAddressingModes.h
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
M llvm/lib/Target/DirectX/DXILOpBuilder.h
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.h
M llvm/lib/Target/Hexagon/HexagonTargetStreamer.h
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCELFStreamer.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.h
M llvm/lib/Target/Mips/Mips.td
M llvm/lib/Target/Mips/MipsISelLowering.cpp
M llvm/lib/Target/Mips/MipsSEISelLowering.cpp
M llvm/lib/Target/Mips/MipsSubtarget.cpp
M llvm/lib/Target/Mips/MipsSubtarget.h
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCFrameLowering.cpp
M llvm/lib/Target/PowerPC/PPCInstrVSX.td
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMatInt.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMatInt.h
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVFoldMasks.cpp
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
M llvm/lib/Target/RISCV/RISCVSystemOperands.td
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/lib/Target/X86/X86DomainReassignment.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/TextAPI/BinaryReader/DylibReader.cpp
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/lib/Transforms/IPO/GlobalSplit.cpp
M llvm/lib/Transforms/IPO/SampleProfile.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Scalar/Float2Int.cpp
M llvm/lib/Transforms/Scalar/JumpThreading.cpp
M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/FunctionComparator.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
M llvm/lib/Transforms/Utils/ValueMapper.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/runtimes/CMakeLists.txt
M llvm/test/Analysis/AliasSet/intrinsics.ll
M llvm/test/Analysis/ValueTracking/known-non-zero.ll
M llvm/test/Assembler/getelementptr.ll
A llvm/test/Assembler/inrange-errors.ll
M llvm/test/Bitcode/compatibility-4.0.ll
M llvm/test/Bitcode/compatibility-5.0.ll
M llvm/test/Bitcode/compatibility-6.0.ll
M llvm/test/Bitcode/compatibility.ll
M llvm/test/CodeGen/AArch64/GlobalISel/combine-overflow.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-abs.mir
M llvm/test/CodeGen/AArch64/abs.ll
M llvm/test/CodeGen/AArch64/arm64-xaluo.ll
M llvm/test/CodeGen/AArch64/clear-dead-implicit-def-impdef.mir
M llvm/test/CodeGen/AArch64/implicit-def-remat-requires-impdef-check.mir
M llvm/test/CodeGen/AArch64/implicit-def-with-impdef-greedy-assert.mir
M llvm/test/CodeGen/AArch64/insert-subvector.ll
A llvm/test/CodeGen/AArch64/misched-bundle.mir
M llvm/test/CodeGen/AArch64/overflow.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-non-fixed.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
A llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-break-large-phis.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
A llvm/test/CodeGen/AMDGPU/bf16-conversions.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/combine_andor_with_cmps.ll
M llvm/test/CodeGen/AMDGPU/copy-vgpr-clobber-spill-vgpr.mir
M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
M llvm/test/CodeGen/AMDGPU/fold-restore-undef-use.mir
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
M llvm/test/CodeGen/AMDGPU/global_atomic_optimizer_fp_rtn.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_iterative_scan_fp.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_optimizer_fp_no_rtn.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
M llvm/test/CodeGen/AMDGPU/greedy-alloc-fail-sgpr1024-spill.mir
M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
M llvm/test/CodeGen/AMDGPU/indirect-call.ll
A llvm/test/CodeGen/AMDGPU/lds-mixed-absolute-addresses-unused.ll
M llvm/test/CodeGen/AMDGPU/lds-reject-mixed-absolute-addresses.ll
A llvm/test/CodeGen/AMDGPU/lto-lower-module-lds.ll
M llvm/test/CodeGen/AMDGPU/preload-kernargs-inreg-hints.ll
M llvm/test/CodeGen/AMDGPU/propagate-flat-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
M llvm/test/CodeGen/AMDGPU/ran-out-of-sgprs-allocation-failure.mir
M llvm/test/CodeGen/AMDGPU/recursive_global_initializer.ll
M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
M llvm/test/CodeGen/AMDGPU/sched-crash-dbg-value.mir
M llvm/test/CodeGen/AMDGPU/schedule-addrspaces.ll
M llvm/test/CodeGen/AMDGPU/scratch-pointer-sink.ll
M llvm/test/CodeGen/AMDGPU/sgpr-spill-wrong-stack-id.mir
M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/snippet-copy-bundle-regression.mir
M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
M llvm/test/CodeGen/AMDGPU/vgpr-agpr-limit-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/virtregrewrite-undef-identity-copy.mir
M llvm/test/CodeGen/ARM/arm-and-tst-peephole.ll
M llvm/test/CodeGen/ARM/no-register-coalescing-in-returnsTwice.mir
M llvm/test/CodeGen/ARM/select.ll
A llvm/test/CodeGen/DirectX/abs-vec.ll
A llvm/test/CodeGen/DirectX/abs.ll
A llvm/test/CodeGen/DirectX/cos.ll
A llvm/test/CodeGen/DirectX/cos_error.ll
A llvm/test/CodeGen/DirectX/fabs.ll
A llvm/test/CodeGen/DirectX/floor.ll
A llvm/test/CodeGen/DirectX/floor_error.ll
A llvm/test/CodeGen/DirectX/isinf.ll
A llvm/test/CodeGen/DirectX/isinf_error.ll
A llvm/test/CodeGen/Hexagon/build-attributes.ll
M llvm/test/CodeGen/Hexagon/regalloc-bad-undef.mir
M llvm/test/CodeGen/Mips/msa/f16-llvm-ir.ll
A llvm/test/CodeGen/Mips/no-unaligned-access-r6.ll
A llvm/test/CodeGen/NVPTX/bswap.ll
A llvm/test/CodeGen/PowerPC/aix-xcoff-funcsect-explicitsect.ll
A llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/vec-ld.ll
A llvm/test/CodeGen/RISCV/attributes-module-flag.ll
M llvm/test/CodeGen/RISCV/double-arith-strict.ll
M llvm/test/CodeGen/RISCV/double-arith.ll
M llvm/test/CodeGen/RISCV/double-bitmanip-dagcombines.ll
M llvm/test/CodeGen/RISCV/double-br-fcmp.ll
M llvm/test/CodeGen/RISCV/double-calling-conv.ll
M llvm/test/CodeGen/RISCV/double-convert-strict.ll
M llvm/test/CodeGen/RISCV/double-convert.ll
M llvm/test/CodeGen/RISCV/double-fcmp-strict.ll
M llvm/test/CodeGen/RISCV/double-fcmp.ll
M llvm/test/CodeGen/RISCV/double-imm.ll
M llvm/test/CodeGen/RISCV/double-intrinsics-strict.ll
M llvm/test/CodeGen/RISCV/double-intrinsics.ll
M llvm/test/CodeGen/RISCV/double-isnan.ll
M llvm/test/CodeGen/RISCV/double-maximum-minimum.ll
M llvm/test/CodeGen/RISCV/double-mem.ll
M llvm/test/CodeGen/RISCV/double-previous-failure.ll
M llvm/test/CodeGen/RISCV/double-round-conv-sat.ll
M llvm/test/CodeGen/RISCV/double-round-conv.ll
M llvm/test/CodeGen/RISCV/double-select-fcmp.ll
M llvm/test/CodeGen/RISCV/double-select-icmp.ll
M llvm/test/CodeGen/RISCV/double-stack-spill-restore.ll
M llvm/test/CodeGen/RISCV/fastcc-without-f-reg.ll
M llvm/test/CodeGen/RISCV/half-convert-strict.ll
M llvm/test/CodeGen/RISCV/half-convert.ll
M llvm/test/CodeGen/RISCV/inline-asm-d-constraint-f.ll
A llvm/test/CodeGen/RISCV/module-elf-flags.ll
M llvm/test/CodeGen/RISCV/pr64645.ll
M llvm/test/CodeGen/RISCV/rvv/active_lane_mask.ll
M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
M llvm/test/CodeGen/RISCV/rvv/combine-store-extract-crash.ll
M llvm/test/CodeGen/RISCV/rvv/extract-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitcast.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-combine.ll
M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/pr63596.ll
M llvm/test/CodeGen/RISCV/rvv/vscale-vw-web-simplification.ll
M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vwmul-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vwsub-sdnode.ll
M llvm/test/CodeGen/RISCV/spill-fill-fold.ll
A llvm/test/CodeGen/RISCV/tlsdesc-symbol.ll
M llvm/test/CodeGen/RISCV/zdinx-asm-constraint.ll
M llvm/test/CodeGen/RISCV/zdinx-boundary-check.ll
A llvm/test/CodeGen/RISCV/zdinx-large-spill.mir
M llvm/test/CodeGen/SPIRV/empty-logical.ll
M llvm/test/CodeGen/SPIRV/empty-module.ll
M llvm/test/CodeGen/SPIRV/empty-opencl32.ll
M llvm/test/CodeGen/SPIRV/empty-opencl64.ll
M llvm/test/CodeGen/SPIRV/empty.ll
A llvm/test/CodeGen/SPIRV/fence.ll
A llvm/test/CodeGen/SPIRV/instructions/bitwise-i1.ll
M llvm/test/CodeGen/SystemZ/RAbasic-invalid-LR-update.mir
M llvm/test/CodeGen/SystemZ/call-zos-01.ll
M llvm/test/CodeGen/SystemZ/call-zos-i128.ll
M llvm/test/CodeGen/SystemZ/call-zos-vararg.ll
M llvm/test/CodeGen/SystemZ/clear-liverange-spillreg.mir
A llvm/test/CodeGen/SystemZ/frame-adjstack.ll
M llvm/test/CodeGen/SystemZ/int-cmp-56.mir
M llvm/test/CodeGen/SystemZ/regcoal-subranges-update.mir
M llvm/test/CodeGen/SystemZ/zos-ada-relocations.ll
M llvm/test/CodeGen/SystemZ/zos-landingpad.ll
M llvm/test/CodeGen/SystemZ/zos-ppa2.ll
M llvm/test/CodeGen/SystemZ/zos-prologue-epilog.ll
A llvm/test/CodeGen/WebAssembly/pr63817.ll
M llvm/test/CodeGen/X86/addcarry.ll
A llvm/test/CodeGen/X86/apx/domain-reassignment.mir
M llvm/test/CodeGen/X86/callbr-asm-kill.mir
M llvm/test/CodeGen/X86/dagcombine-shifts.ll
A llvm/test/CodeGen/X86/int-to-fp-demanded.ll
M llvm/test/CodeGen/X86/late-remat-update.mir
M llvm/test/CodeGen/X86/limit-split-cost.mir
M llvm/test/CodeGen/X86/oddshuffles.ll
M llvm/test/CodeGen/X86/regalloc-copy-hints.mir
M llvm/test/CodeGen/X86/statepoint-fastregalloc.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-enter-at-end.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-hoist-copies.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-inline-spiller.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra-remove-back-copies.mir
M llvm/test/CodeGen/X86/statepoint-invoke-ra.mir
M llvm/test/CodeGen/X86/statepoint-vreg-folding.mir
M llvm/test/CodeGen/X86/vector-half-conversions.ll
M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
M llvm/test/DebugInfo/MIR/InstrRef/memory-operand-folding-tieddef.mir
M llvm/test/DebugInfo/MIR/InstrRef/memory-operand-load-folding.mir
M llvm/test/DebugInfo/MIR/InstrRef/phi-coalesce-subreg.mir
M llvm/test/DebugInfo/MIR/InstrRef/phi-coalescing.mir
M llvm/test/DebugInfo/MIR/InstrRef/phi-on-stack-coalesced.mir
M llvm/test/DebugInfo/MIR/InstrRef/phi-on-stack-coalesced2.mir
M llvm/test/DebugInfo/MIR/InstrRef/phi-regallocd-to-stack.mir
M llvm/test/DebugInfo/MIR/InstrRef/phi-through-regalloc.mir
M llvm/test/DebugInfo/MIR/InstrRef/stack-coloring-dbg-phi.mir
M llvm/test/DebugInfo/MIR/InstrRef/survives-livedebugvars.mir
M llvm/test/DebugInfo/MIR/Mips/livedebugvars-stop-trimming-loc.mir
M llvm/test/DebugInfo/MIR/X86/live-debug-vars-unused-arg-debugonly.mir
M llvm/test/DebugInfo/MIR/X86/live-debug-vars-unused-arg.mir
M llvm/test/DebugInfo/MIR/X86/livedebugvars-crossbb-interval.mir
A llvm/test/DebugInfo/NVPTX/no-extra-loc.ll
M llvm/test/DebugInfo/X86/live-debug-vars-intervals.mir
M llvm/test/MC/AArch64/coff-relocations.s
R llvm/test/MC/AMDGPU/gfx11_asm_vinterp.s
A llvm/test/MC/AMDGPU/vinterp-fake16.s
M llvm/test/MC/ARM/basic-arm-instructions.s
A llvm/test/MC/COFF/dwarf5lineinfo.s
R llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vinterp.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_features.txt
R llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vinterp.txt
A llvm/test/MC/Disassembler/AMDGPU/vinterp-fake16.txt
M llvm/test/MC/GOFF/ppa1.ll
A llvm/test/MC/Hexagon/directive-attribute-err.s
A llvm/test/MC/Hexagon/directive-attribute.s
A llvm/test/MC/Hexagon/hexagon_attributes.s
M llvm/test/MC/RISCV/rv32-machine-csr-names.s
A llvm/test/MachineVerifier/test_adjustsstack.mir
M llvm/test/Other/optimize-inrange-gep.ll
M llvm/test/TableGen/ConstraintChecking3.td
A llvm/test/TableGen/ConstraintChecking8.td
M llvm/test/Transforms/Attributor/align.ll
M llvm/test/Transforms/Attributor/nocapture-1.ll
M llvm/test/Transforms/Attributor/nofpclass.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail7.ll
A llvm/test/Transforms/Float2Int/pr79158.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions-base-call.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions-base-pointer-call.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions-derived-call.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions-derived-pointer-call.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions-novfe.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions-visibility-post-lto.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions-visibility-pre-lto.ll
M llvm/test/Transforms/GlobalDCE/virtual-functions.ll
M llvm/test/Transforms/GlobalDCE/vtable-rtti.ll
M llvm/test/Transforms/GlobalSplit/basic.ll
M llvm/test/Transforms/GlobalSplit/non-beneficial.ll
M llvm/test/Transforms/GlobalSplit/nonlocal.ll
M llvm/test/Transforms/Inline/devirtualize-4.ll
M llvm/test/Transforms/InstCombine/add-sitofp.ll
M llvm/test/Transforms/InstCombine/add.ll
A llvm/test/Transforms/InstCombine/and-or-implied-cond-not.ll
M llvm/test/Transforms/InstCombine/binop-itofp.ll
M llvm/test/Transforms/InstCombine/clamp-to-minmax.ll
M llvm/test/Transforms/InstCombine/div.ll
M llvm/test/Transforms/InstCombine/fmul.ll
M llvm/test/Transforms/InstCombine/fpcast.ll
M llvm/test/Transforms/InstCombine/icmp-and-lowbit-mask.ll
M llvm/test/Transforms/InstCombine/minmax-fold.ll
M llvm/test/Transforms/InstCombine/minmax-fp.ll
M llvm/test/Transforms/InstCombine/pr27236.ll
M llvm/test/Transforms/InstCombine/sadd-with-overflow.ll
M llvm/test/Transforms/InstCombine/shift-add.ll
M llvm/test/Transforms/InstCombine/shuffle_select-inseltpoison.ll
M llvm/test/Transforms/InstCombine/shuffle_select.ll
M llvm/test/Transforms/InstCombine/uadd-with-overflow.ll
M llvm/test/Transforms/InstSimplify/ConstProp/gep.ll
M llvm/test/Transforms/InstSimplify/icmp-constant.ll
M llvm/test/Transforms/InstSimplify/shift-knownbits.ll
M llvm/test/Transforms/Internalize/vcall-visibility.ll
M llvm/test/Transforms/LoopIdiom/AArch64/byte-compare-index.ll
M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
M llvm/test/Transforms/LoopVectorize/X86/pr81872.ll
M llvm/test/Transforms/LoopVectorize/float-induction.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
M llvm/test/Transforms/MergeFunc/constexpr.ll
A llvm/test/Transforms/PGOProfile/memop_profile_funclet_wasm.ll
M llvm/test/Transforms/PhaseOrdering/X86/pr67803.ll
A llvm/test/Transforms/SLPVectorizer/RISCV/small-tree-not-schedulable-bv-node.ll
A llvm/test/Transforms/SLPVectorizer/X86/call-arg-reduced-by-minbitwidth.ll
A llvm/test/Transforms/SLPVectorizer/X86/cmp-after-intrinsic-call-minbitwidth.ll
A llvm/test/Transforms/SLPVectorizer/X86/gather-nodes-different-bb.ll
A llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-node-but-not-operands.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder-possible-strided-node.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder_diamond_match.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder_with_external_users.ll
A llvm/test/Transforms/SLPVectorizer/X86/store-abs-minbitwidth.ll
M llvm/test/Transforms/SLPVectorizer/X86/vectorize-widest-phis.ll
A llvm/test/Transforms/SLPVectorizer/orig-btiwidth-les-projected.ll
A llvm/test/Transforms/SampleProfile/Inputs/csspgo-import-list-preinliner.prof
A llvm/test/Transforms/SampleProfile/csspgo-import-list-preinliner.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/pr33536.ll
A llvm/test/tools/llvm-ar/ecsymbols.ll
A llvm/test/tools/llvm-ar/ecsymbols.yaml
M llvm/test/tools/llvm-lib/arm64ec-implib.test
A llvm/test/tools/llvm-lib/empty.test
A llvm/test/tools/llvm-objcopy/ELF/skip-symbol.test
M llvm/test/tools/llvm-readobj/ELF/machine-specific-section-types.test
M llvm/tools/CMakeLists.txt
M llvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
M llvm/tools/llvm-lto/llvm-lto.cpp
M llvm/tools/llvm-lto2/llvm-lto2.cpp
M llvm/tools/llvm-objcopy/ObjcopyOptions.cpp
M llvm/tools/llvm-objcopy/ObjcopyOpts.td
M llvm/tools/llvm-readobj/ELFDumper.cpp
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
M llvm/unittests/DebugInfo/DWARF/DwarfGenerator.cpp
M llvm/unittests/IR/BasicBlockDbgInfoTest.cpp
M llvm/unittests/IR/ConstantRangeTest.cpp
M llvm/unittests/IR/DebugInfoTest.cpp
M llvm/unittests/IR/IRBuilderTest.cpp
M llvm/unittests/IR/ManglerTest.cpp
M llvm/unittests/Support/LEB128Test.cpp
M llvm/unittests/Target/AArch64/AddressingModes.cpp
M llvm/unittests/Target/AArch64/CMakeLists.txt
A llvm/unittests/Target/AArch64/Immediates.cpp
M llvm/unittests/Transforms/Utils/LocalTest.cpp
M llvm/utils/TableGen/CodeGenInstruction.cpp
M llvm/utils/TableGen/DXILEmitter.cpp
M llvm/utils/TableGen/DecoderEmitter.cpp
M llvm/utils/TableGen/InfoByHwMode.cpp
M llvm/utils/TableGen/InfoByHwMode.h
M llvm/utils/gn/secondary/clang/unittests/StaticAnalyzer/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Target/AArch64/BUILD.gn
M mlir/docs/DataLayout.md
M mlir/docs/Tutorials/transform/Ch2.md
M mlir/examples/transform/Ch2/include/MyExtension.h
M mlir/examples/transform/Ch2/include/MyExtension.td
M mlir/examples/transform/Ch2/lib/MyExtension.cpp
M mlir/examples/transform/Ch3/include/MyExtension.h
M mlir/examples/transform/Ch3/include/MyExtension.td
M mlir/examples/transform/Ch3/include/MyExtensionTypes.td
M mlir/examples/transform/Ch3/lib/MyExtension.cpp
M mlir/examples/transform/Ch4/include/MyExtension.h
M mlir/examples/transform/Ch4/include/MyExtension.td
M mlir/include/mlir-c/Dialect/LLVM.h
A mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitC.h
A mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitCPass.h
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Dialect/AMDGPU/TransformOps/AMDGPUTransformOps.h
M mlir/include/mlir/Dialect/AMDGPU/TransformOps/AMDGPUTransformOps.td
M mlir/include/mlir/Dialect/Affine/TransformOps/AffineTransformOps.h
M mlir/include/mlir/Dialect/Affine/TransformOps/AffineTransformOps.td
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
M mlir/include/mlir/Dialect/Bufferization/TransformOps/BufferizationTransformOps.h
M mlir/include/mlir/Dialect/Bufferization/TransformOps/BufferizationTransformOps.td
M mlir/include/mlir/Dialect/Bufferization/Transforms/OneShotAnalysis.h
M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.h
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
M mlir/include/mlir/Dialect/EmitC/IR/EmitCTypes.td
M mlir/include/mlir/Dialect/Func/TransformOps/FuncTransformOps.h
M mlir/include/mlir/Dialect/Func/TransformOps/FuncTransformOps.td
M mlir/include/mlir/Dialect/GPU/TransformOps/GPUTransformOps.h
M mlir/include/mlir/Dialect/GPU/TransformOps/GPUTransformOps.td
M mlir/include/mlir/Dialect/GPU/TransformOps/Utils.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMTypes.td
M mlir/include/mlir/Dialect/LLVMIR/Transforms/TypeConsistency.h
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.h
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/include/mlir/Dialect/MemRef/TransformOps/MemRefTransformOps.h
M mlir/include/mlir/Dialect/MemRef/TransformOps/MemRefTransformOps.td
M mlir/include/mlir/Dialect/NVGPU/TransformOps/NVGPUTransformOps.h
M mlir/include/mlir/Dialect/NVGPU/TransformOps/NVGPUTransformOps.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/include/mlir/Dialect/SCF/TransformOps/SCFTransformOps.h
M mlir/include/mlir/Dialect/SCF/TransformOps/SCFTransformOps.td
M mlir/include/mlir/Dialect/SparseTensor/TransformOps/SparseTensorTransformOps.h
M mlir/include/mlir/Dialect/Tensor/TransformOps/TensorTransformOps.h
M mlir/include/mlir/Dialect/Tensor/TransformOps/TensorTransformOps.td
M mlir/include/mlir/Dialect/Transform/CMakeLists.txt
M mlir/include/mlir/Dialect/Transform/DebugExtension/DebugExtensionOps.h
M mlir/include/mlir/Dialect/Transform/DebugExtension/DebugExtensionOps.td
M mlir/include/mlir/Dialect/Transform/IR/CMakeLists.txt
M mlir/include/mlir/Dialect/Transform/IR/MatchInterfaces.h
M mlir/include/mlir/Dialect/Transform/IR/MatchInterfaces.td
M mlir/include/mlir/Dialect/Transform/IR/TransformDialect.td
R mlir/include/mlir/Dialect/Transform/IR/TransformInterfaces.h
R mlir/include/mlir/Dialect/Transform/IR/TransformInterfaces.td
M mlir/include/mlir/Dialect/Transform/IR/TransformOps.h
M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
M mlir/include/mlir/Dialect/Transform/IR/TransformTypes.h
M mlir/include/mlir/Dialect/Transform/IR/TransformTypes.td
A mlir/include/mlir/Dialect/Transform/Interfaces/CMakeLists.txt
A mlir/include/mlir/Dialect/Transform/Interfaces/TransformInterfaces.h
A mlir/include/mlir/Dialect/Transform/Interfaces/TransformInterfaces.td
M mlir/include/mlir/Dialect/Transform/LoopExtension/LoopExtensionOps.h
M mlir/include/mlir/Dialect/Transform/LoopExtension/LoopExtensionOps.td
M mlir/include/mlir/Dialect/Transform/PDLExtension/PDLExtensionOps.h
M mlir/include/mlir/Dialect/Transform/PDLExtension/PDLExtensionOps.td
M mlir/include/mlir/Dialect/Transform/Transforms/TransformInterpreterPassBase.h
M mlir/include/mlir/Dialect/Transform/Transforms/TransformInterpreterUtils.h
M mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
A mlir/include/mlir/Dialect/Vector/IR/ScalableValueBoundsConstraintSet.h
A mlir/include/mlir/Dialect/Vector/IR/ValueBoundsOpInterfaceImpl.h
M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.h
M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
M mlir/include/mlir/Dialect/Vector/Transforms/VectorTransforms.h
M mlir/include/mlir/Dialect/Vector/Utils/VectorUtils.h
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPU.h
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUDialect.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
M mlir/include/mlir/IR/TensorEncoding.td
M mlir/include/mlir/InitAllDialects.h
M mlir/include/mlir/Interfaces/DataLayoutInterfaces.h
M mlir/include/mlir/Interfaces/DataLayoutInterfaces.td
M mlir/include/mlir/Interfaces/MemorySlotInterfaces.h
M mlir/include/mlir/Interfaces/MemorySlotInterfaces.td
M mlir/include/mlir/Interfaces/ValueBoundsOpInterface.h
M mlir/include/mlir/Tools/mlir-opt/MlirOptMain.h
M mlir/include/mlir/Transforms/Mem2Reg.h
M mlir/include/mlir/Transforms/SROA.h
M mlir/lib/CAPI/Dialect/LLVM.cpp
M mlir/lib/CAPI/Dialect/TransformInterpreter.cpp
M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
M mlir/lib/Conversion/CMakeLists.txt
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Conversion/LinalgToStandard/CMakeLists.txt
A mlir/lib/Conversion/MemRefToEmitC/CMakeLists.txt
A mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
A mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitCPass.cpp
M mlir/lib/Conversion/MemRefToLLVM/CMakeLists.txt
M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
M mlir/lib/Conversion/SCFToOpenMP/SCFToOpenMP.cpp
M mlir/lib/Dialect/Affine/Analysis/AffineAnalysis.cpp
M mlir/lib/Dialect/Affine/TransformOps/AffineTransformOps.cpp
M mlir/lib/Dialect/Affine/Utils/Utils.cpp
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
M mlir/lib/Dialect/Bufferization/Transforms/OneShotAnalysis.cpp
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/lib/Dialect/EmitC/Transforms/FormExpressions.cpp
M mlir/lib/Dialect/Func/TransformOps/FuncTransformOps.cpp
M mlir/lib/Dialect/GPU/TransformOps/GPUTransformOps.cpp
M mlir/lib/Dialect/GPU/TransformOps/Utils.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/TypeConsistency.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgMatchOps.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefMemorySlot.cpp
M mlir/lib/Dialect/MemRef/TransformOps/MemRefTransformOps.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Dialect/SCF/TransformOps/SCFTransformOps.cpp
M mlir/lib/Dialect/SPIRV/IR/CMakeLists.txt
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
M mlir/lib/Dialect/Tensor/IR/TensorDialect.cpp
M mlir/lib/Dialect/Tensor/TransformOps/TensorTransformOps.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp
M mlir/lib/Dialect/Transform/CMakeLists.txt
M mlir/lib/Dialect/Transform/IR/CMakeLists.txt
M mlir/lib/Dialect/Transform/IR/TransformDialect.cpp
R mlir/lib/Dialect/Transform/IR/TransformInterfaces.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
M mlir/lib/Dialect/Transform/IR/TransformTypes.cpp
A mlir/lib/Dialect/Transform/Interfaces/CMakeLists.txt
A mlir/lib/Dialect/Transform/Interfaces/TransformInterfaces.cpp
M mlir/lib/Dialect/Transform/Transforms/CheckUses.cpp
M mlir/lib/Dialect/Transform/Transforms/InferEffects.cpp
M mlir/lib/Dialect/Transform/Transforms/InterpreterPass.cpp
M mlir/lib/Dialect/Transform/Transforms/TransformInterpreterPassBase.cpp
M mlir/lib/Dialect/Transform/Transforms/TransformInterpreterUtils.cpp
M mlir/lib/Dialect/Utils/CMakeLists.txt
M mlir/lib/Dialect/Utils/StaticValueUtils.cpp
M mlir/lib/Dialect/Vector/IR/CMakeLists.txt
A mlir/lib/Dialect/Vector/IR/ScalableValueBoundsConstraintSet.cpp
A mlir/lib/Dialect/Vector/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorContract.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorTransfer.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
M mlir/lib/Dialect/XeGPU/IR/CMakeLists.txt
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
M mlir/lib/ExecutionEngine/CudaRuntimeWrappers.cpp
M mlir/lib/Interfaces/CMakeLists.txt
M mlir/lib/Interfaces/DataLayoutInterfaces.cpp
M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.h
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/lib/Transforms/Mem2Reg.cpp
M mlir/lib/Transforms/SROA.cpp
M mlir/python/CMakeLists.txt
A mlir/python/mlir/dialects/IndexOps.td
A mlir/python/mlir/dialects/index.py
M mlir/test/CAPI/llvm.c
A mlir/test/Conversion/ArithToEmitC/arith-to-emitc-failed.mlir
M mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
M mlir/test/Conversion/GPUToSPIRV/load-store.mlir
A mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-failed.mlir
A mlir/test/Conversion/MemRefToEmitC/memref-to-emitc.mlir
M mlir/test/Conversion/MemRefToSPIRV/bitwidth-emulation.mlir
M mlir/test/Conversion/MemRefToSPIRV/memref-to-spirv.mlir
M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
M mlir/test/Conversion/SCFToOpenMP/reductions.mlir
M mlir/test/Conversion/SCFToSPIRV/for.mlir
M mlir/test/Conversion/TensorToSPIRV/tensor-ops-to-spirv.mlir
M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
M mlir/test/Dialect/Arith/expand-ops.mlir
M mlir/test/Dialect/Arith/one-shot-bufferize.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-allow-return-allocs.mlir
A mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-analysis-bottom-up-from-terminators.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-partial.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize-allow-return-allocs.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize-analysis.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize.mlir
M mlir/test/Dialect/EmitC/invalid_ops.mlir
M mlir/test/Dialect/EmitC/invalid_types.mlir
M mlir/test/Dialect/EmitC/transforms.mlir
M mlir/test/Dialect/LLVMIR/debuginfo.mlir
M mlir/test/Dialect/LLVMIR/layout.mlir
M mlir/test/Dialect/LLVMIR/sroa.mlir
M mlir/test/Dialect/LLVMIR/type-consistency.mlir
M mlir/test/Dialect/Linalg/flatten-elementwise.mlir
A mlir/test/Dialect/Linalg/flatten-unsupported.mlir
M mlir/test/Dialect/Linalg/one-shot-bufferize.mlir
M mlir/test/Dialect/Linalg/tile-to-forall.mlir
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
M mlir/test/Dialect/SCF/one-shot-bufferize-analysis.mlir
M mlir/test/Dialect/SCF/one-shot-bufferize.mlir
M mlir/test/Dialect/Tensor/decompose-concat.mlir
M mlir/test/Dialect/Tensor/fold-empty-op.mlir
M mlir/test/Dialect/Tensor/fold-tensor-subset-ops-into-vector-transfers.mlir
M mlir/test/Dialect/Tensor/one-shot-bufferize.mlir
M mlir/test/Dialect/Tensor/rewrite-as-constant.mlir
M mlir/test/Dialect/Tosa/constant-op-fold.mlir
A mlir/test/Dialect/Vector/test-scalable-bounds.mlir
M mlir/test/Dialect/Vector/vector-contract-to-outerproduct-matvec-transforms.mlir
M mlir/test/Dialect/Vector/vector-dropleadunitdim-transforms.mlir
M mlir/test/Dialect/Vector/vector-materialize-mask.mlir
M mlir/test/Dialect/Vector/vector-multi-reduction-lowering.mlir
M mlir/test/Dialect/Vector/vector-multi-reduction-outer-lowering.mlir
M mlir/test/Dialect/Vector/vector-transfer-drop-unit-dims-patterns.mlir
M mlir/test/Dialect/Vector/vector-transfer-full-partial-split-copy-transform.mlir
M mlir/test/Dialect/Vector/vector-transfer-full-partial-split.mlir
M mlir/test/Dialect/Vector/vector-transfer-permutation-lowering.mlir
M mlir/test/Dialect/Vector/vector-transfer-to-vector-load-store.mlir
M mlir/test/Dialect/Vector/vector-transpose-lowering.mlir
A mlir/test/Dialect/XeGPU/XeGPUOps.mlir
A mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/1d-depthwise-conv.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack_d.mlir
M mlir/test/Integration/Dialect/Standard/CPU/test-ceil-floor-pos-neg.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-shuffle16x16.mlir
M mlir/test/Interfaces/DataLayoutInterfaces/module.mlir
M mlir/test/Interfaces/DataLayoutInterfaces/query.mlir
M mlir/test/Interfaces/DataLayoutInterfaces/types.mlir
M mlir/test/Target/LLVMIR/Import/debug-info.ll
M mlir/test/Target/LLVMIR/data-layout.mlir
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
M mlir/test/Target/LLVMIR/omptarget-array-sectioning-host.mlir
M mlir/test/Target/LLVMIR/omptarget-byref-bycopy-generation-device.mlir
M mlir/test/Target/LLVMIR/omptarget-byref-bycopy-generation-host.mlir
M mlir/test/Target/LLVMIR/omptarget-constant-alloca-raise.mlir
M mlir/test/Target/LLVMIR/omptarget-constant-indexing-device-region.mlir
M mlir/test/Target/LLVMIR/omptarget-declare-target-llvm-device.mlir
M mlir/test/Target/LLVMIR/omptarget-fortran-allocatable-types-host.mlir
M mlir/test/Target/LLVMIR/omptarget-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-nowait-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-parallel-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-region-device-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-region-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-region-parallel-llvm.mlir
M mlir/test/Target/LLVMIR/openmp-llvm.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-byref.mlir
A mlir/test/Target/LLVMIR/openmp-reduction-call.mlir
M mlir/test/Target/LLVMIR/openmp-reduction.mlir
M mlir/test/Transforms/canonicalize.mlir
M mlir/test/lib/Dialect/Affine/TestReifyValueBounds.cpp
M mlir/test/lib/Dialect/DLTI/TestDataLayoutQuery.cpp
M mlir/test/lib/Dialect/Tensor/TestTensorTransforms.cpp
M mlir/test/lib/Dialect/Test/TestTypeDefs.td
M mlir/test/lib/Dialect/Test/TestTypes.cpp
M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.h
M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.td
M mlir/test/lib/Dialect/Transform/TestTransformDialectInterpreter.cpp
M mlir/test/lib/Dialect/Transform/TestTransformStateExtension.h
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.td
M mlir/test/mlir-opt/split-markers.mlir
M mlir/test/mlir-pdll/split-markers.pdll
A mlir/test/python/dialects/index_dialect.py
M mlir/unittests/Interfaces/DataLayoutInterfacesTest.cpp
M openmp/libomptarget/plugins-nextgen/CMakeLists.txt
R openmp/libomptarget/plugins-nextgen/aarch64/CMakeLists.txt
M openmp/libomptarget/plugins-nextgen/common/include/PluginInterface.h
M openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
R openmp/libomptarget/plugins-nextgen/generic-elf-64bit/dynamic_ffi/ffi.cpp
R openmp/libomptarget/plugins-nextgen/generic-elf-64bit/dynamic_ffi/ffi.h
R openmp/libomptarget/plugins-nextgen/generic-elf-64bit/src/rtl.cpp
A openmp/libomptarget/plugins-nextgen/host/CMakeLists.txt
A openmp/libomptarget/plugins-nextgen/host/dynamic_ffi/ffi.cpp
A openmp/libomptarget/plugins-nextgen/host/dynamic_ffi/ffi.h
A openmp/libomptarget/plugins-nextgen/host/src/rtl.cpp
R openmp/libomptarget/plugins-nextgen/ppc64/CMakeLists.txt
R openmp/libomptarget/plugins-nextgen/ppc64le/CMakeLists.txt
R openmp/libomptarget/plugins-nextgen/s390x/CMakeLists.txt
R openmp/libomptarget/plugins-nextgen/x86_64/CMakeLists.txt
M openmp/libomptarget/src/interface.cpp
M openmp/libomptarget/src/omptarget.cpp
A openmp/libomptarget/test/offloading/fortran/target-map-enter-exit-array-2.f90
A openmp/libomptarget/test/offloading/fortran/target-map-enter-exit-array-bounds.f90
A openmp/libomptarget/test/offloading/fortran/target-map-enter-exit-scalar.f90
M openmp/libomptarget/test/offloading/workshare_chunk.c
M openmp/runtime/src/CMakeLists.txt
A openmp/runtime/src/include/omp_lib.F90.var
R openmp/runtime/src/include/omp_lib.f90.var
M openmp/runtime/src/include/omp_lib.h.var
M utils/bazel/.bazelrc
M utils/bazel/.bazelversion
M utils/bazel/llvm-project-overlay/bolt/BUILD.bazel
M utils/bazel/llvm-project-overlay/clang-tools-extra/clang-tidy/defs.bzl
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/__support/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/__support/FPUtil/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/math/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/math/libc_math_test_rules.bzl
M utils/bazel/llvm-project-overlay/lld/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch5/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch6/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch7/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/python/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/unittests/BUILD.bazel
Log Message:
-----------
Rebase, address comments, add a check for addsub instruction, which are profitable
Created using spr 1.3.5
Compare: https://github.com/llvm/llvm-project/compare/b1ad1e54e6ee...7c582a3d9c6f
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