[all-commits] [llvm/llvm-project] 7d5376: [AArch64] Migrate from SearchableTable to GenericT...
Paul Kirth via All-commits
all-commits at lists.llvm.org
Fri Jan 10 13:00:06 PST 2025
Branch: refs/heads/users/ilovepi/spr/libunwindcmake-compile-_unwind-routines-with-fexceptions
Home: https://github.com/llvm/llvm-project
Commit: 7d5376270ae5807a29597a91d7cf59f967ccf39e
https://github.com/llvm/llvm-project/commit/7d5376270ae5807a29597a91d7cf59f967ccf39e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SystemOperands.td
M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp
M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
Log Message:
-----------
[AArch64] Migrate from SearchableTable to GenericTable/Enum. NFC (#121661)
SearchableTable is the legacy version that does not appear to be well
documented. Not sure if the plan was to delete it eventually.
We can eventually use the PrimaryKey feature of GenericTable to remove
one of the SearchIndex declarations. This will sort the generated table
by the primary key and remove the separately generated indexing table to
reduce .rodata size.
This patch is just the mechanical migration. The size savings will be
done in follow ups.
Commit: c388da6ed38ba8892edb90803b76bcfe759fe3cf
https://github.com/llvm/llvm-project/commit/c388da6ed38ba8892edb90803b76bcfe759fe3cf
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl
Log Message:
-----------
[libc][bazel] Simplify libc_build_rules by grouping release copts (#121630)
Extract all compiler options used to build "release" versions of libc
API functions into a separate helper function, instead of burying this
logic inside libc_function() macro.
With this change, we further split two "flavors" of cc_library()
produced for each libc public function:
* `<function>.__internal__` library used in unit tests is *not* built
with release copts and is thus indistinguishable from regular
libc_support_library(). Arguably, it's a good thing, because all sources
in a unit test are built with the same set of compiler flags, instead of
"franken-build" when a subset of sources is always built with -O3. If a
user needs to run the tests in optimized mode, they should really be
using Bazel invocation-level compile flags instead.
* `<function>` library that libc users can use to construct their own
static archive *is* built with the same release copts as before. There
is a pre-existing problem that its libc_support_library() dependencies
are not built with the same copts. We're not addressing it here now.
Commit: f4bab06c97060088922c5f6f2702bd12fb74c459
https://github.com/llvm/llvm-project/commit/f4bab06c97060088922c5f6f2702bd12fb74c459
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
A libc/config/gpu/amdgpu/config.json
A libc/config/gpu/amdgpu/entrypoints.txt
A libc/config/gpu/amdgpu/headers.txt
R libc/config/gpu/config.json
R libc/config/gpu/entrypoints.txt
R libc/config/gpu/headers.txt
A libc/config/gpu/nvptx/config.json
A libc/config/gpu/nvptx/entrypoints.txt
A libc/config/gpu/nvptx/headers.txt
Log Message:
-----------
[libc] Split AMDGPU and NVPTX configs into separate folders (#120153)
Summary:
This is a holdover from when these targets were merged. They're
basically the same but there's no reason they should be treated as
identical. I think we will live with a little duplication.
Commit: dc0e258fe4d9d97cefdfeefc932e1e9e15dc542d
https://github.com/llvm/llvm-project/commit/dc0e258fe4d9d97cefdfeefc932e1e9e15dc542d
Author: Emma Pilkington <emma.pilkington95 at gmail.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
M llvm/test/CodeGen/AMDGPU/waitcnt-meta-instructions.mir
M llvm/unittests/MC/AMDGPU/DwarfRegMappings.cpp
M llvm/unittests/Target/AMDGPU/DwarfRegMappings.cpp
Log Message:
-----------
[AMDGPU] Remove Dwarf encodings for subregisters (#117891)
Previously, registers and subregisters mapped to the same Dwarf
encoding. We don't really have any way to refer to subregisters directly
from Dwarf, the expression emitter should instead use DW_OPs to stencil
out the subregister from the whole register. This was also confusing
tools that need to map back to the llvm reg (e.g. dwarfdump), since
getLLVMRegNum() would arbitrarily return the _LO16 register.
Commit: 6f28b4b5e960e1c4eeebad18b48e667df1e806a8
https://github.com/llvm/llvm-project/commit/6f28b4b5e960e1c4eeebad18b48e667df1e806a8
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M llvm/include/llvm/DebugInfo/GSYM/FunctionInfo.h
M llvm/include/llvm/DebugInfo/GSYM/GsymReader.h
M llvm/include/llvm/DebugInfo/GSYM/MergedFunctionsInfo.h
M llvm/lib/DebugInfo/GSYM/FunctionInfo.cpp
M llvm/lib/DebugInfo/GSYM/GsymReader.cpp
M llvm/lib/DebugInfo/GSYM/MergedFunctionsInfo.cpp
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-merged-funcs-dwarf.yaml
M llvm/tools/llvm-gsymutil/Opts.td
M llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp
Log Message:
-----------
[GSYM] Add support for querying merged functions in llvm-gsymutil (#120991)
Adds the ability to lookup and display all merged functions for an
address in llvm-gsymutil.
Now, when `--merged-functions` is used in combination with
`--address/--addresses-from-stdin`, lookup results will contain
information about merged functions, if available.
To support printing merged function information when using the
`--verbose` option, the `LookupResult` data structure also had to be
extended with pointers to the raw function data and raw merged function
data. This is because merged functions share the same address range, so
it's not easy to look up the raw merged function data for a particular
`LookupResult` that is based on a merged function.
Commit: ce831a231a7509b558121808ab03407916bf1dff
https://github.com/llvm/llvm-project/commit/ce831a231a7509b558121808ab03407916bf1dff
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/test/CodeGen/AMDGPU/fma.f16.ll
M llvm/test/CodeGen/AMDGPU/gfx11-twoaddr-fma.mir
M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp8.s
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp8.txt
Log Message:
-----------
[AMDGPU][True16][MC] true16 for v_fma_f16 (#119477)
Support true16 format for v_fma_f16 in MC.
Since we are replacing v_fma_f16 to v_fma_f16_t16/v_fma_f16_fake16 in
Post-GFX11, have to update the CodeGen pattern for v_fma_f16_fake16 to
get CodeGen test passing. There is no pattern modified/created, but just
replacing the v_fma_f16 with fake16 format.
Commit: 97ea0aba15f7f618d7a0caabf0627793563f3850
https://github.com/llvm/llvm-project/commit/97ea0aba15f7f618d7a0caabf0627793563f3850
Author: Markus Böck <markus.boeck02 at gmail.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M llvm/lib/TableGen/TGParser.cpp
M llvm/lib/TableGen/TGParser.h
M llvm/test/TableGen/template-args.td
A mlir/test/tblgen-lsp-server/templ-arg-check.test
Log Message:
-----------
[TableGen] Do not exit in template argument check (#121636)
The signature of `CheckTemplateArgValues` implements error handling via
the `bool` return type, yet always returned false. The single possible
error case instead used `PrintFatalError,` which exits the program
afterward.
This behavior is undesirable: It prevents any further errors from being
printed and makes TableGen less usable as a library as it crashes the
entire process (e.g. `tblgen-lsp-server`).
This PR therefore fixes the issue by using `Error` instead and returning
true if an error occurred. All callers already perform proper error
handling.
As `llvm-tblgen` exits on error, a test was also added to the LSP to
ensure it exits normally despite the error.
Commit: 40a00af3ea529aba93b87d666f3090b4686ff9d0
https://github.com/llvm/llvm-project/commit/40a00af3ea529aba93b87d666f3090b4686ff9d0
Author: Nico Weber <thakis at chromium.org>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
Log Message:
-----------
[gn] port 21edac25f09f (BuiltinsSPIRV)
Commit: 4af3332015c8473642a454ae5f521ae709188d4d
https://github.com/llvm/llvm-project/commit/4af3332015c8473642a454ae5f521ae709188d4d
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_promote.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop1.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop1.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_promote.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp8.s
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp8.txt
Log Message:
-----------
[AMDGPU][True16][MC] true16 for v_cvt_u32_u16 (#120646)
Support true16 format for v_cvt_u32_u16 in MC
Commit: 6e6f89cba0fd70ef1ea8c9abfbdf03d8f69492c4
https://github.com/llvm/llvm-project/commit/6e6f89cba0fd70ef1ea8c9abfbdf03d8f69492c4
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M flang/test/Driver/parse-error.ll
Log Message:
-----------
[flang][test] One more fix in flang/test/Driver/parse-error.ll
The file suffix .f95 remained after 7a07d8e9df, change it to .ll.
Commit: 15f30e70eb18340fc422805707870e298d93161f
https://github.com/llvm/llvm-project/commit/15f30e70eb18340fc422805707870e298d93161f
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M libcxx/test/benchmarks/numeric/gcd.bench.cpp
Log Message:
-----------
[libc++] Fix the batch size used in the std::gcd benchmark (#120618)
Since that benchmark is testing n*n inputs, the batch size reported to
GoogleBenchmark should be that amount. Otherwise, GoogleBenchmark
reports the timing for calling std::gcd on the whole sequence, which is
misleading.
Commit: cb1c15639f012838ba1ef202aa9c55551e9019ff
https://github.com/llvm/llvm-project/commit/cb1c15639f012838ba1ef202aa9c55551e9019ff
Author: Jannik Glückert <jannik.glueckert at gmail.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M libcxx/src/filesystem/operations.cpp
A libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file_procfs.pass.cpp
Log Message:
-----------
[libc++] Use copy_file_range for fs::copy (#109211)
This optimizes `std::filesystem::copy_file` to use the `copy_file_range`
syscall (Linux and FreeBSD) when available. It allows for reflinks on
filesystems such as btrfs, zfs and xfs, and server-side copy for network
filesystems such as NFS.
Commit: 774c22686330f3ca43e48a1b8076eb30ae03dbd8
https://github.com/llvm/llvm-project/commit/774c22686330f3ca43e48a1b8076eb30ae03dbd8
Author: Jacob Lalonde <jalalonde at fb.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M lldb/include/lldb/Core/Progress.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/source/Core/Progress.cpp
M lldb/unittests/Core/ProgressReportTest.cpp
Log Message:
-----------
[LLDB] Add external progress bit category (#120171)
As feedback on #119052, it was recommended I add a new bit to delineate
internal and external progress events. This patch adds this new
category, and sets up Progress.h to support external events via
SBProgress.
Commit: bda7c9ac79fe841d39084f73730d0b3ffa3b101b
https://github.com/llvm/llvm-project/commit/bda7c9ac79fe841d39084f73730d0b3ffa3b101b
Author: Konstantin Varlamov <varconsteq at gmail.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M libcxx/docs/Hardening.rst
M libcxx/include/forward_list
A libcxx/test/libcxx/containers/sequences/forwardlist/assert.pass.cpp
Log Message:
-----------
[libc++][hardening] Add checks to `forward_list` element access. (#120858)
In our implementation, failing these checks would result in a null
pointer access rather than an out-of-bounds access.
Commit: fbcf3cb7fe95d9d420b643ce379f7ee2106a6efc
https://github.com/llvm/llvm-project/commit/fbcf3cb7fe95d9d420b643ce379f7ee2106a6efc
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_type.py
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[libclang/python] Add python binding for clang_Cursor_isAnonymousRecordDecl (#120483)
This function allows checking whether a declaration declares an
anonymous union (as opposed to clang_Cursor_isAnonymous, which just
checks if the declaration has a name).
Commit: be21bd9bbf3bc906f9b98ac3de1fc88a4a8ac4b4
https://github.com/llvm/llvm-project/commit/be21bd9bbf3bc906f9b98ac3de1fc88a4a8ac4b4
Author: Amir Ayupov <aaupov at fb.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M bolt/lib/Core/BinaryEmitter.cpp
M bolt/lib/Passes/ReorderFunctions.cpp
R bolt/test/AArch64/pad-before-funcs.s
Log Message:
-----------
Revert "[BOLT] Add --pad-funcs-before=func:n (#117924)"
14dcf8214f9c66172d17c1cfaec6aec0030748e0 introduced a subtle bug with
the static `FunctionPadding` map.
If either `opts::FunctionPadSpec` or `opts::FunctionPadBeforeSpec` are set,
the map is going to be populated with the respective spec in the first
invocation of `BinaryEmitter::emitFunction`. The subsequent invocations
will pick up the padding from the map irrespective of whether
`opts::FunctionPadSpec` or `opts::FunctionPadBeforeSpec` is passed as a
parameter.
This breaks an internal test, hence reverting the patch.
Commit: 3f1a391b5eb89e53b5d026c417ae6a508d32c808
https://github.com/llvm/llvm-project/commit/3f1a391b5eb89e53b5d026c417ae6a508d32c808
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-merged-funcs-dwarf.yaml
M llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp
Log Message:
-----------
[llvm-gsymutil] Fix broken tests (#121837)
Recently https://github.com/llvm/llvm-project/pull/120991 broke a couple
of tests.
Also `macho-merged-funcs-dwarf.yaml` was already flaky due to some
non-determinism issues.
Fixing the previous code to not break tests and modifying
`macho-merged-funcs-dwarf.yaml` to fix the non-determinism (which will
be resolved later).
Commit: f06d4d9ae501115c20829bab7513a977a71bf53c
https://github.com/llvm/llvm-project/commit/f06d4d9ae501115c20829bab7513a977a71bf53c
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
Log Message:
-----------
[gn build] Port d00f65c6acd9
Commit: ec58ad6149fb8813521973d8ba9690276e282373
https://github.com/llvm/llvm-project/commit/ec58ad6149fb8813521973d8ba9690276e282373
Author: Michael Toguchi <michael.d.toguchi at intel.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M clang/lib/Driver/ToolChains/SYCL.cpp
M clang/lib/Driver/ToolChains/SYCL.h
M clang/test/Driver/sycl-offload-jit.cpp
Log Message:
-----------
[Driver][SYCL] Address sanitizer and test issue (#121822)
The following commit:
https://github.com/llvm/llvm-project/commit/d00f65c6acd9f0e1ddae83391f55eb9d232d2f9e
Caused sanitizer build issues and also a test issue when using
%clang_cl. Address these problems.
- Use local static array
- Use '--' for clang_cl calls
---------
Co-authored-by: Vitaly Buka <vitalybuka at gmail.com>
Commit: 32d761bbec660c977322afeac1acbafd46008752
https://github.com/llvm/llvm-project/commit/32d761bbec660c977322afeac1acbafd46008752
Author: Simon Wallis <simon.wallis2 at arm.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
M llvm/test/CodeGen/AArch64/machine-combiner.ll
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-basic-instructions.s
Log Message:
-----------
[AArch64][machine-scheduler][Neoverse-N2] fdiv is blocking (#119206)
For Neoverse-N2, mark FP divide and square root instructions as blocking
their pipeline until complete.
This matches the way that blocking integer divide instructions are
marked.
>From the Software Optimization Guide, section 3.14 Notes:
1. FP divide and square root operations are performed using an iterative
algorithm and block subsequent similar operations to the same pipeline
until complete.
---------
Co-authored-by: Cullen Rhodes <cullen.rhodes at arm.com>
Commit: 4cceea1acc4029c1c2cee85205184387ac361ef7
https://github.com/llvm/llvm-project/commit/4cceea1acc4029c1c2cee85205184387ac361ef7
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/string/BUILD.bazel
Log Message:
-----------
[libc][bazel] Remove customization from several libc BUILD rules. (#121843)
Get rid of the following arguments to libc_support_library and
libc_function rules:
* `defines` (for raw_mutex.h) - it wasn't used correctly (e.g. didn't
provide actual value for spin count), and we can instead fallback to
defaults set in the header itself (or rely on library-level configure
options).
* `features` - there's no need to disable sanitization for a subset of
memory functions -- it generally should be the vendor / user
responsibility to control it (e.g. don't include instrumented libc
functions in the build, since they would be provided by sanitizer
runtimes instead).
* `local_defines` (for printf_parser) - no longer needed, since
LIBC_COPT_MOCK_ARG_LIST has been removed in
e0be78be427931e94d287002b9c3910f6bc6a22c
This also removes two ad-hoc BUILD rules (strcpy_sanitized and
printf_mock_parser) which are no longer needed and can be replaced by
strcpy and printf_parser, respectively.
Co-authored-by: Alexey Samsonov <samsonov at google.com>
Commit: c8d435f9afac73d31b53cc120678f60ac4922f97
https://github.com/llvm/llvm-project/commit/c8d435f9afac73d31b53cc120678f60ac4922f97
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/vreductions-mask.ll
Log Message:
-----------
[RISCV] Use ISD::XOR instead of RISCVISD::VMXOR_VL in lowerVectorMaskVecReduction of scalable ISD::VECREDUCE_AND (#121812)
This allows combining the XOR with earlier ISD::ANDs inserted by type
legalization.
Commit: d0c00cf07852ffcd3c3a08126bd85cc119e8de3b
https://github.com/llvm/llvm-project/commit/d0c00cf07852ffcd3c3a08126bd85cc119e8de3b
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
Log Message:
-----------
[LV] Add test case for #121745.
Test for https://github.com/llvm/llvm-project/issues/121745.
Commit: 3874c64418d2a7e36eab9af9253d905b48b36078
https://github.com/llvm/llvm-project/commit/3874c64418d2a7e36eab9af9253d905b48b36078
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M flang/lib/Common/Fortran.cpp
M flang/test/Semantics/cuf10.cuf
Log Message:
-----------
[flang][cuda] Allow constant actual argument for device dummy (#121845)
The reference compiler allows this use case. Note that writing to this
variable would result in CUDA error.
Commit: f9369cc602272796c15de1065a782f812e791df3
https://github.com/llvm/llvm-project/commit/f9369cc602272796c15de1065a782f812e791df3
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
Log Message:
-----------
[VPlan] Make sure last IV increment value is available if needed.
Legalize extract-from-ends using uniform VPReplicateRecipe of wide
inductions to use regular VPReplicateRecipe, so the correct end value
is available.
Fixes https://github.com/llvm/llvm-project/issues/121745.
Commit: 1a435feffcd85c1e7fe30daf1a3995e95860b300
https://github.com/llvm/llvm-project/commit/1a435feffcd85c1e7fe30daf1a3995e95860b300
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenFunction.cpp
Log Message:
-----------
[HLSL] Fix build warning after #116331 (#121852)
After #116331 is always SpellingNotCalculated,
so I assume doing nothing is expected.
Commit: 8cd94e0b6d18b6b454431ba9481c2489b480baf4
https://github.com/llvm/llvm-project/commit/8cd94e0b6d18b6b454431ba9481c2489b480baf4
Author: MaheshRavishankar <1663364+MaheshRavishankar at users.noreply.github.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M mlir/lib/Dialect/Affine/Utils/Utils.cpp
M mlir/test/Conversion/AffineToStandard/lower-affine-to-vector.mlir
M mlir/test/Conversion/AffineToStandard/lower-affine.mlir
M mlir/test/Conversion/MemRefToLLVM/expand-then-convert-to-llvm.mlir
M mlir/test/Dialect/LLVM/lower-to-llvm-e2e-with-target-tag.mlir
M mlir/test/Dialect/LLVM/lower-to-llvm-e2e-with-top-level-named-sequence.mlir
Log Message:
-----------
[mlir][Affine] Add nsw to lowering of `AffineMulExpr`. (#121535)
Since index operations have no set bitwidth, it is ill-defined to use
signed/unsigned wrapping behavior. The corollary to which is that it is
always safe to add nsw/nuw to lowering of affine ops.
Also add a folder to fold `div(s|u)i (mul (a, v), v) -> a`
Signed-off-by: MaheshRavishankar <mravisha at amd.com>
Commit: 4312075efa02ad861db0a19a0db8e6003aa06965
https://github.com/llvm/llvm-project/commit/4312075efa02ad861db0a19a0db8e6003aa06965
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
M llvm/tools/llvm-link/llvm-link.cpp
Log Message:
-----------
[nfc][thinlto] remove unnecessary return from `renameModuleForThinLTO` (#121851)
Same goes for `FunctionImportGlobalProcessing::run`.
The return value was used, but it was always `false`.
Commit: 01e980e792651391dfc3b399dbe300eddbbd0997
https://github.com/llvm/llvm-project/commit/01e980e792651391dfc3b399dbe300eddbbd0997
Author: Julian Lettner <yln at users.noreply.github.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M lldb/source/Plugins/InstrumentationRuntime/ASanLibsanitizers/InstrumentationRuntimeASanLibsanitizers.cpp
M lldb/source/Plugins/InstrumentationRuntime/Utility/ReportRetriever.cpp
Log Message:
-----------
[lldb] Use `Address` to setup breakpoint (#94794)
Use `Address` (instead of `addr_t`) to setup
breakpoint in `ReportRetriever::SetupBreakpoint`.
This is cleaner and the breakpoint should now
survive re-running of the binary.
rdar://124399066
Commit: 4dc34b0d660a52744164a37466ce245764126296
https://github.com/llvm/llvm-project/commit/4dc34b0d660a52744164a37466ce245764126296
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[bazel] Add BuiltinsSPIRV (for #121598)
Commit: 97097958fdf525e8c14fcdde94231bae72ea2673
https://github.com/llvm/llvm-project/commit/97097958fdf525e8c14fcdde94231bae72ea2673
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
Log Message:
-----------
[Coverage] MCDC: Move findIndependencePairs deferred into MCDCRecord (#121188)
The result of "Independence pairs" is not mergeable. This change makes
defers re-calculation of "Independence pairs" after merging test
vectors.
No apparent behavior changes.
Commit: 90b04bf84ec3315f803a88882ba846e3086ba5e3
https://github.com/llvm/llvm-project/commit/90b04bf84ec3315f803a88882ba846e3086ba5e3
Author: Farzon Lotfi <farzonlotfi at microsoft.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsSPIRV.td
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/cross.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/length.ll
M llvm/test/CodeGen/SPIRV/opencl/degrees.ll
M llvm/test/CodeGen/SPIRV/opencl/radians.ll
Log Message:
-----------
[NFC] fix up typos (#121842)
Fix Tablegen typo to indicate SPIRV and not HLSL
Fix miscellaneous test case typos.
Commit: 7e2ed35104adbf062119c39c4293eb3bc16bc51b
https://github.com/llvm/llvm-project/commit/7e2ed35104adbf062119c39c4293eb3bc16bc51b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstructions.td
Log Message:
-----------
AMDGPU: Reduce AddedComplexity on canonicalize pattern (#119796)
Pick the minimum complexity required for tests to pass instead of
a giant debug value of 1000.
Commit: f6365a47a1ad9ab6d432f6e40d14a11419e21282
https://github.com/llvm/llvm-project/commit/f6365a47a1ad9ab6d432f6e40d14a11419e21282
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
A llvm/test/CodeGen/AMDGPU/swdev503538-move-to-valu-stack-srd-physreg.ll
Log Message:
-----------
AMDGPU: Fix assert on physreg MUBUF rsrc operand (#120815)
The stack case uses a physical register and should not ordinarily
reach here, but strange things happen at -O0. The testcase still
errors because we do not yet attempt to handle arbitrary dynamic
sized allocas yet.
Fixes: SWDEV-503538
Commit: a8f3ebaf11c3745e5123054776eb71755d16f2f9
https://github.com/llvm/llvm-project/commit/a8f3ebaf11c3745e5123054776eb71755d16f2f9
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/swdev502267-use-after-free-last-chance-recoloring-alloc-succeeds.mir
Log Message:
-----------
AMDGPU: Mark test as XFAIL in expensive_checks builds
One of the tests added in 93220e7e06473a11bf48fee26bcea16cc527e5dc
fails the machine verifier after allocation, but this is a separate
issue.
Commit: 737d6ca44d383bcf33a0605a7d9014027296269a
https://github.com/llvm/llvm-project/commit/737d6ca44d383bcf33a0605a7d9014027296269a
Author: quic_hchandel <165007698+hchandel at users.noreply.github.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
A llvm/test/MC/RISCV/xqcicm-invalid.s
A llvm/test/MC/RISCV/xqcicm-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Add Qualcomm uC Xqcicm (Conditional Move) extension (#121752)
The Qualcomm uC Xqcicm extension adds 13 conditional move instructions.
The current spec can be found at:
https://github.com/quic/riscv-unified-db/releases/latest
This patch adds assembler only support.
---------
Co-authored-by: Harsh Chandel <hchandel at qti.qualcomm.com>
Commit: 93e63460a2958c253dcbb7681faa532962a306bc
https://github.com/llvm/llvm-project/commit/93e63460a2958c253dcbb7681faa532962a306bc
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/swdev502267-use-after-free-last-chance-recoloring-alloc-succeeds.mir
Log Message:
-----------
RegAllocGreedy: Un-disable test in expensive_checks builds
This reverts a8f3ebaf11c3745e5123054776eb71755d16f2f9. You need to
use -verify-regalloc to get a MachineVerifier run with LiveIntervals,
otherwise cases not covered by the basic liveness implementation
in the verifier are passed through (which covers most use of undefined
subrange errors).
Commit: 8c0483bba2d25ae7e4b6cac150dba9447dfed59c
https://github.com/llvm/llvm-project/commit/8c0483bba2d25ae7e4b6cac150dba9447dfed59c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/CodeGen/RegisterCoalescer.cpp
A llvm/test/CodeGen/AMDGPU/remat-physreg-copy-subreg-extract-already-live-at-def-issue120970.mir
Log Message:
-----------
RegisterCoalescer: Fix assert on remat to copy-to-physreg with subregs (#121734)
Do not try to rematerialize a super-register def used by a subregister
extract copy into a copy to a physical register if the other pieces of
the
full physreg are live at the rematerialization point. It would insert
the
super-register def at the rematerialization point, and assert since the
other half of the register was already live.
This is analagous to the undef subregister def handling above,
which handled the virtual register case.
Fixes #120970
Commit: 653a54727eaa18c43447ad686c987db67f1dda74
https://github.com/llvm/llvm-project/commit/653a54727eaa18c43447ad686c987db67f1dda74
Author: Ian Anderson <iana at apple.com>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M clang/lib/Basic/Targets/OSTargets.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Lex/InitHeaderSearch.cpp
A clang/test/Driver/Inputs/MacOSX15.1.sdk/embedded/usr/include/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/embedded/usr/local/include/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/usr/include/c++/v1/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/usr/local/include/.keep
A clang/test/Driver/darwin-embedded-search-paths.c
M clang/test/Preprocessor/macho-embedded-predefines.c
M llvm/include/llvm/TargetParser/Triple.h
Log Message:
-----------
[Darwin][Driver][clang] apple-none-macho orders the resource directory after internal-externc-isystem when nostdlibinc is used (#120507)
Embedded development often needs to use a different C standard library,
replacing the existing one normally passed as -internal-externc-isystem.
This works fine for an apple-macos target, but apple-none-macho doesn't
work because the MachO driver doesn't implement
AddClangSystemIncludeArgs to add the resource directory as
-internal-isystem like most other drivers do. Move most of the search
path logic from Darwin and DarwinClang down into an AppleMachO toolchain
between the MachO and Darwin toolchains.
Also define \_\_MACH__ for apple-none-macho, as Swift expects all MachO
targets to have that defined.
Commit: 8d2e611802d5f3bdd681d308ceb293e5ace8a894
https://github.com/llvm/llvm-project/commit/8d2e611802d5f3bdd681d308ceb293e5ace8a894
Author: choikwa <5455710+choikwa at users.noreply.github.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/test/CodeGen/AMDGPU/sdiv64.ll
M llvm/test/CodeGen/AMDGPU/srem64.ll
Log Message:
-----------
[AMDGPU] Calculate getDivNumBits' AtLeast using bitwidth (#121758)
Previously in shrinkDivRem64, it used fixed value 32 for AtLeast which
meant that <64bit divisions would be rejected from shrinking since logic
depended only on number of sign bits. I.e. 'idiv i48 %0, %1' would
return 24 for number of sign bits if %0,%1 both had 24 division bits,
and was rejected.
Commit: 5aef8ab6ec3a5bcb224fee764bbc6914a76d7dbb
https://github.com/llvm/llvm-project/commit/5aef8ab6ec3a5bcb224fee764bbc6914a76d7dbb
Author: Fangrui Song <i at maskray.me>
Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths:
M lld/COFF/Driver.h
M lld/ELF/SymbolTable.cpp
Log Message:
-----------
[lld,NFC] Fix stale comments related to config->
Commit: 5656cbca52545e608f6fb8b7c9a778c7c9b4b468
https://github.com/llvm/llvm-project/commit/5656cbca52545e608f6fb8b7c9a778c7c9b4b468
Author: William Moses <gh at wsmoses.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/lib/CAPI/Dialect/LLVM.cpp
Log Message:
-----------
[MLIR][CAPI] export LLVMFunctionType param getter and setters (#121888)
Commit: a8072a0b4ebd5cd1fb3958629cd453910691f6d3
https://github.com/llvm/llvm-project/commit/a8072a0b4ebd5cd1fb3958629cd453910691f6d3
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/phi.ll
Log Message:
-----------
[InstCombine] Eliminate icmp+zext pairs over phis more aggressively (#121767)
When folding icmp over phi, add a special case for `icmp eq (zext(bool),
0)`, which is known to fold to `!bool` and thus won't increase the
instruction count. This helps convert more phis to i1, esp. in loops.
This is based on existing logic we have to support this for icmp of
ucmp/scmp.
Commit: 9c1fecf9b9a9f39c2e8ffaed9ba161bf7d4bbe0c
https://github.com/llvm/llvm-project/commit/9c1fecf9b9a9f39c2e8ffaed9ba161bf7d4bbe0c
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/Maintainers.md
Log Message:
-----------
[LLVM] Update debuginfo maintainers (#120231)
Update the list of debuginfo maintainers. These are the clang debuginfo
maintainers, plus a few additional people for LLVM-specific parts.
Commit: 7810e6a3a81031fb2511f35ca0f173176b529527
https://github.com/llvm/llvm-project/commit/7810e6a3a81031fb2511f35ca0f173176b529527
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
A llvm/test/CodeGen/ARM/sink-store-pre-load-dependency.mir
Log Message:
-----------
[ARM] Introduce test for PR121565 (NFC)
Commit: 446a426436c0b7e457992981d3a1f2b4fda19992
https://github.com/llvm/llvm-project/commit/446a426436c0b7e457992981d3a1f2b4fda19992
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/test/CodeGen/ARM/sink-store-pre-load-dependency.mir
M llvm/test/tools/llvm-mca/ARM/cortex-a57-memory-instructions.s
Log Message:
-----------
[ARM] Record store with pre/post-indexed addressing as `mayStore`
A miscompilation issue observed during machine sinking has been
addressed with improved handling.
Fixes: https://github.com/llvm/llvm-project/issues/121299.
Commit: 93011fe2a5268aab9bf59e71b9d21a3818d1e199
https://github.com/llvm/llvm-project/commit/93011fe2a5268aab9bf59e71b9d21a3818d1e199
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/lib/AST/ASTContext.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/test/CodeGen/AArch64/fmv-dependencies.c
A clang/test/CodeGen/AArch64/fmv-features.c
M clang/test/CodeGen/AArch64/fmv-streaming.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGen/attr-target-version.c
Log Message:
-----------
[FMV][AArch64][clang] Emit fmv-features metadata in LLVM IR. (#118544)
We need to be able to propagate information about FMV attribute strings
from C/C++ source to LLVM IR. This is necessary so that we can
distinguish which target-features are coming from the cmdline, which are
coming from the target attribute, and which are coming from feature
dependency expansion. We need this for static resolution of calls in
LLVM. Here's a motivating example:
Suppose you have target_version("i8mm+dotprod") and
target_version("fcma"). The first version clearly has higher priority.
Now suppose you specify -march=armv8-a+i8mm on the command line. Then
the versions would have target-features "+i8mm,+dotprod" and
"+i8mm,+fcma" respectively. If you are using those to deduce version
priority, then you would incorrectly deduce that the second version was
higher priority than the first.
Commit: 064da423c3b46907f5011a4537a88fbae9ac03d4
https://github.com/llvm/llvm-project/commit/064da423c3b46907f5011a4537a88fbae9ac03d4
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/lib/Format/MatchFilePath.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/TokenAnnotator.h
Log Message:
-----------
[clang-format][NFC] Remove unneeded ST_ChildBlock in annotator
Also, remove redundant llvm:: in the annotator and return early for globstar
in matchFilePath().
Commit: 21b531ead174b32cdc610e9003de342034368ee1
https://github.com/llvm/llvm-project/commit/21b531ead174b32cdc610e9003de342034368ee1
Author: Nicholas Guy <nicholas.guy at arm.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/include/clang/Basic/arm_sme.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_state_funs.c
M clang/utils/TableGen/SveEmitter.cpp
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/sme-intrinsics-state.ll
Log Message:
-----------
[clang][llvm][aarch64] Add aarch64_sme_in_streaming_mode intrinsic (#120265)
Replacing the extant streaming mode function call with an intrinsic
allows us to make further optimisations around it. For example, if it's
called within a function that has a known streaming mode, we can remove
the dead code, and avoid the redundant conditional branch.
Commit: d82d53b2e3d7fb2f44f91dc1ca9ce8bb5487da57
https://github.com/llvm/llvm-project/commit/d82d53b2e3d7fb2f44f91dc1ca9ce8bb5487da57
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M flang/lib/Lower/Bridge.cpp
A flang/test/Lower/OpenMP/firstprivate-alloc-comp.f90
Log Message:
-----------
[flang][openmp] initialize allocatable components of firstprivate copies (#121808)
Descriptors of allocatable components of firstprivate derived type
copies need to be set-up. Otherwise the program later die when
manipulating them inside OpenMP region.
Commit: 231d113c7e172a59ec02d33a248d7b44109245d6
https://github.com/llvm/llvm-project/commit/231d113c7e172a59ec02d33a248d7b44109245d6
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/select-divrem.ll
Log Message:
-----------
[InstCombine] Handle commuted patterns in `foldSelectWithSRem` (#121896)
Closes https://github.com/llvm/llvm-project/issues/121771.
Commit: 0fa59c636278324aaea55c3bc60489af88646a32
https://github.com/llvm/llvm-project/commit/0fa59c636278324aaea55c3bc60489af88646a32
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/docs/GettingStarted.rst
Log Message:
-----------
[llvm][Docs] Update supported hardware (#121743)
Since someone on Discord asked why macOS arm64 was not listed.
https://llvm.org/docs/GettingStarted.html#hardware
Add a few known platforms:
* Linux AArch64
* FreeBSD AArch64
* macOS arm64 (Clang build only, there might be a GCC port but I've not
used it myself)
* Windows on Arm (ARM64 as Microsoft refers to it)
Commit: 2db7b314da367e1a6bf8cf34df16f9ad5ad62f5e
https://github.com/llvm/llvm-project/commit/2db7b314da367e1a6bf8cf34df16f9ad5ad62f5e
Author: David Green <david.green at arm.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/cast.ll
Log Message:
-----------
[AArch64] Add BF16 fpext and fptrunc costs. (#119524)
This expands the recently added fp16 fpext and fpround costs to bf16.
Some of the costs are taken from the rough number of instructions
needed, some are a little aspirational.
https://godbolt.org/z/bGEEd1vsW
Commit: cf23549edd0ac971600ceea1bb7f1454566b00a3
https://github.com/llvm/llvm-project/commit/cf23549edd0ac971600ceea1bb7f1454566b00a3
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/www/make_cxx_dr_status
Log Message:
-----------
[clang] Improve `make_cxx_dr_status` behavior when error occurs (#121785)
One of our contributors got confused by the behavior of the script when
they incorrectly specified the status of a CWG issue
(https://github.com/llvm/llvm-project/pull/102857/files#r1904264872),
and this is an attempt to reduce the confusion:
- script doesn't write anything to disk unless everything is good;
- error messages are prefixed with (a very familiar) `error:` to make it
more obvious that a fatal error occurred.
Commit: 83c1d003118a2cb8136fe49e2ec43958c93d9d6b
https://github.com/llvm/llvm-project/commit/83c1d003118a2cb8136fe49e2ec43958c93d9d6b
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/SPIRV/CMakeLists.txt
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
R llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.cpp
M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.h
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.h
M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
M llvm/test/CodeGen/SPIRV/AtomicCompareExchange.ll
M llvm/test/CodeGen/SPIRV/event-zero-const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp-simple-hierarchy.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fun-ptr-addrcast.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_inline_assembly/inline_asm.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_shader_clock/shader_clock.ll
M llvm/test/CodeGen/SPIRV/iaddcarry-builtin.ll
M llvm/test/CodeGen/SPIRV/image-unoptimized.ll
M llvm/test/CodeGen/SPIRV/isubborrow-builtin.ll
M llvm/test/CodeGen/SPIRV/keep-tracked-const.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/fshl.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/fshr.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/memset.ll
M llvm/test/CodeGen/SPIRV/logical-access-chain.ll
M llvm/test/CodeGen/SPIRV/pointers/PtrCast-null-in-OpSpecConstantOp.ll
M llvm/test/CodeGen/SPIRV/pointers/struct-opaque-pointers.ll
M llvm/test/CodeGen/SPIRV/transcoding/SampledImage.ll
M llvm/test/CodeGen/SPIRV/transcoding/cl-types.ll
M llvm/test/CodeGen/SPIRV/transcoding/spirv-private-array-initialization.ll
M llvm/test/CodeGen/SPIRV/transcoding/sub_group_non_uniform_arithmetic.ll
M llvm/test/CodeGen/SPIRV/unnamed-global.ll
Log Message:
-----------
[SPIR-V] Overhaul module analysis to improve translation speed and simplify the underlying logics (#120415)
This PR is to address legacy issues with module analysis that currently
uses a complicated and not so efficient approach to trace dependencies
between SPIR-V id's via a duplicate tracker data structures and an
explicitly built dependency graph. Even a quick performance check
without any specialized benchmarks points to this part of the
implementation as a biggest bottleneck.
This PR specifically:
* eliminates a need to build a dependency graph as a data structure,
* updates the test suite (mainly, by fixing incorrect CHECK's referring
to a hardcoded order of definitions, contradicting the spec requirement
to allow certain definitions to go "in any order", see
https://registry.khronos.org/SPIR-V/specs/unified1/SPIRV.html#_logical_layout_of_a_module),
* improves function pointers implementation so that it now passes
EXPENSIVE_CHECKS (thus removing 3 XFAIL's in the test suite).
As a quick sanity check of whether goals of the PR are achieved, we can
measure time of translation for any big LLVM IR. While testing the PR in
the local development environment, improvements of the x5 order have
been observed.
For example, the SYCL test case "group barrier" that is a ~1Mb binary IR
input shows the following values of the naive performance metric that we
can nevertheless apply here to roughly estimate effects of the PR.
before the PR:
```
$ time llc -O0 -mtriple=spirv64v1.6-unknown-unknown _group_barrier_phi.bc -o 1 --filetype=obj
real 3m33.241s
user 3m14.688s
sys 0m18.530s
```
after the PR
```
$ time llc -O0 -mtriple=spirv64v1.6-unknown-unknown _group_barrier_phi.bc -o 1 --filetype=obj
real 0m42.031s
user 0m38.834s
sys 0m3.193s
```
Next work should probably address Duplicate Tracker further, as it needs
analysis now from the perspective of what parts of it are not necessary
now, after changing the approach to implementation of the module
analysis step.
Commit: b0e05a5f04d3225b8ff1319064c88d0249e683d2
https://github.com/llvm/llvm-project/commit/b0e05a5f04d3225b8ff1319064c88d0249e683d2
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Add missing check before accessing pointer
C2 can be null here, so we need to check it or clang may crash.
Commit: 5514865147c3bca1c819d2658ce3bf113aeffa00
https://github.com/llvm/llvm-project/commit/5514865147c3bca1c819d2658ce3bf113aeffa00
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/CodeGen/RegisterCoalescer.cpp
Log Message:
-----------
[Coalescer] Move code added in #116191 (#121779)
By moving the code a bit later, we can factor out some of the conditions
as those are now already tested.
This will also be useful when adding another fix on top that uses
`NewMI`'s subreg index (to follow as a separate PR).
The change is intended to be NFC.
Commit: 7ce15f3ba76e1780935715cfdd9dd368ebd23163
https://github.com/llvm/llvm-project/commit/7ce15f3ba76e1780935715cfdd9dd368ebd23163
Author: Kristóf Umann <dkszelethus at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
Log Message:
-----------
[NFC][analyzer][docs] Document MallocChecker's ownership attributes (#121759)
Exactly what it says on the tin! These were written ages ago (2010s),
but are still functional, only the docs are missing.

---------
Co-authored-by: Donát Nagy <donat.nagy at ericsson.com>
Co-authored-by: Balazs Benics <benicsbalazs at gmail.com>
Co-authored-by: isuckatcs <65320245+isuckatcs at users.noreply.github.com>
Commit: 66acb2694655321b37a1ee3ff19207a111756562
https://github.com/llvm/llvm-project/commit/66acb2694655321b37a1ee3ff19207a111756562
Author: Alex Voicu <alexandru.voicu at amd.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
M clang/test/CodeGenCUDA/amdgpu-kernel-attrs.cu
Log Message:
-----------
[clang][CodeGen][SPIRV] Translate `amdgpu_flat_work_group_size` into `max_work_group_size`. (#116820)
HIPAMD relies on the `amdgpu_flat_work_group_size` attribute to
implement key functionality such as the `__launch_bounds__` `__global__`
function annotation. This attribute is not available / directly
translatable to SPIR-V, hence as it is AMDGCN flavoured SPIR-V suffers
from information loss.
This patch addresses that limitation by converting the unsupported
attribute into the `max_work_group_size` attribute which maps to
[`MaxWorkgroupSizeINTEL`](https://github.com/KhronosGroup/SPIRV-Registry/blob/main/extensions/INTEL/SPV_INTEL_kernel_attributes.asciidoc),
which is available in / handled by SPIR-V. When reverse translating from
SPIR-V to AMDGCN LLVMIR we invert the map and add the original AMDGPU
attribute.
Commit: a774e7f7b15dbc1a7d4811f155b3a8834b6b7ff8
https://github.com/llvm/llvm-project/commit/a774e7f7b15dbc1a7d4811f155b3a8834b6b7ff8
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
A llvm/test/CodeGen/SPIRV/global-var-name-linkage.ll
Log Message:
-----------
[SPIR-V] Fix OpName and LinkageAttributes decoration of global variables (#120492)
This PR changes `getGlobalIdentifier()` into `getName()` value when
creating a name of a global variable, and fixes generation of
LinkageAttributes decoration of global variables by taking into account
Private Linkage in addition to Internal.
Previous implementation led to an issue with back translation of SPIR-V
to LLVM IR, e.g.:
```
@__const.G1 = private unnamed_addr addrspace(1) constant %my_type undef
...
Fails to verify module: 'common' global may not be marked constant!
ptr addrspace(1) @"llvm-link;__const.G1"
```
A reproducer is included as a new test case.
Commit: bc51a2e3940a12617bc3391f8577ef2d6fa349e8
https://github.com/llvm/llvm-project/commit/bc51a2e3940a12617bc3391f8577ef2d6fa349e8
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/include/llvm/Support/Recycler.h
M llvm/unittests/Support/CMakeLists.txt
A llvm/unittests/Support/RecyclerTest.cpp
Log Message:
-----------
[Support] Recycler: Implement move constructor (#120555)
Discovered missing while running RAGreedy through the NPM which relies on moving analyses to the cache.
Commit: 19c93483adf3e818afb3d3be77d01b8ec12c2215
https://github.com/llvm/llvm-project/commit/19c93483adf3e818afb3d3be77d01b8ec12c2215
Author: kd0608 <42680371+Karthikdhondi at users.noreply.github.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M flang/lib/Parser/prescan.cpp
A flang/test/Parser/OpenMP/compiler-directive-continuation.f90
Log Message:
-----------
[FLANG][OPENMP] Fix handling of continuation lines in mixed OpenMP an… (#120714)
…d Fortran free-form
OpenMP feature was not enabled in the flang-new for the continuation
line, when we used the continuation line marker in combination of
free-form and OpenMP directive, it was throwing an error. PR is the fix
for that issue.
Added a fix for the following issue
https://github.com/llvm/llvm-project/issues/89559
Commit: 4a42658c1be47ea8cb6f26f7cb1d1aed258845fe
https://github.com/llvm/llvm-project/commit/4a42658c1be47ea8cb6f26f7cb1d1aed258845fe
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/test/Transforms/VectorCombine/X86/shuffle-of-cmps.ll
Log Message:
-----------
[VectorCombine][X86] shuffle-of-cmps.ll - tweak shuf_fcmp_oeq_v4i32 shuffle to be not so cheap
An upcoming patch will recognise this as a cheap INSERTPS shuffle - alter the shuffle to ensure the 2 x FCMP is still cheaper on SSE4 targets
Commit: 63d4e0fb66b75dd1c60acaa81ff8f8a4327cffcc
https://github.com/llvm/llvm-project/commit/63d4e0fb66b75dd1c60acaa81ff8f8a4327cffcc
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/icmp-add.ll
Log Message:
-----------
[InstCombine] Compute result directly on APInts
If the bitwidth is 2 and we add two 1s, the result may overflow.
This is fine in terms of correctness, but triggers the APInt ctor
assertion. Fix this by performing the calculation directly on APInts.
Fixes the issue reported in:
https://github.com/llvm/llvm-project/pull/114539#issuecomment-2574845003
Commit: 647cadb60af60f9748b0a2f02d7d6421588b099f
https://github.com/llvm/llvm-project/commit/647cadb60af60f9748b0a2f02d7d6421588b099f
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/test/Driver/spirv-openmp-toolchain.c
Log Message:
-----------
explicitly specify the -fopenmp lib in spirv-openmp-toolchain.c test
Don't rely on the default `CLANG_DEFAULT_OPENMP_RUNTIME` env variable
which is `libomp` by default.
This was missed in 119fc720a19e047fee59d7f7446c911b158563e0
Commit: 1fb98b5a7e964efd77a735148e8c8704ca8728db
https://github.com/llvm/llvm-project/commit/1fb98b5a7e964efd77a735148e8c8704ca8728db
Author: Michael Jungmair <michael.jungmair at cs.tum.edu>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M mlir/include/mlir/IR/OperationSupport.h
M mlir/include/mlir/Transforms/LocationSnapshot.h
M mlir/include/mlir/Transforms/Passes.td
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/Transforms/LocationSnapshot.cpp
M mlir/test/Transforms/location-snapshot.mlir
Log Message:
-----------
[mlir][Transforms] Make LocationSnapshotPass respect OpPrintingFlags (#119373)
The current implementation of LocationSnapshotPass takes an
OpPrintingFlags argument and stores it as member, but does not use it
for printing.
Properly implement the printing flags, also supporting command line args.
---------
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: 4ecd9bd03b8b0e2ceba5c6c8525227be8d8ab215
https://github.com/llvm/llvm-project/commit/4ecd9bd03b8b0e2ceba5c6c8525227be8d8ab215
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M lldb/source/Host/posix/FileSystemPosix.cpp
Log Message:
-----------
[lldb][Posix] Remove unused includes in file system (#121913)
You could remove unistd.h and it will still build, but only because
something else included it. So I've left it in in the spirit of "include
what you use".
Tested on Linux and FreeBSD.
Commit: 5a7dfb46598ebe21318312eca5f407a1575f87e0
https://github.com/llvm/llvm-project/commit/5a7dfb46598ebe21318312eca5f407a1575f87e0
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/X86/shuffle-two-src-codesize.ll
M llvm/test/Analysis/CostModel/X86/shuffle-two-src-latency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-two-src-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-two-src.ll
M llvm/test/Transforms/PhaseOrdering/X86/hadd.ll
M llvm/test/Transforms/PhaseOrdering/X86/hsub.ll
M llvm/test/Transforms/VectorCombine/X86/extract-binop-inseltpoison.ll
M llvm/test/Transforms/VectorCombine/X86/extract-binop.ll
Log Message:
-----------
[CostModel][X86] Attempt to match v4f32 shuffles that map to MOVSS/INSERTPS instruction
improveShuffleKindFromMask matches this as a SK_InsertSubvector of a v1f32 (which legalises to f32) into a v4f32 base vector, making it easy to recognise. MOVSS is limited to index0.
Commit: 1729e6e742ba9f6f210550000ace4bec72530c2e
https://github.com/llvm/llvm-project/commit/1729e6e742ba9f6f210550000ace4bec72530c2e
Author: David Green <david.green at arm.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/CodeGen/AArch64/arm64-fast-isel-conversion-fallback.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fadd.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fmax.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fmin.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fsub.ll
M llvm/test/CodeGen/AArch64/bf16-instructions.ll
M llvm/test/CodeGen/AArch64/bf16-v8-instructions.ll
M llvm/test/CodeGen/AArch64/cvt-fp-int-fp.ll
M llvm/test/CodeGen/AArch64/round-fptosi-sat-scalar.ll
Log Message:
-----------
[AArch64] Improve bf16 fp_extend lowering. (#118966)
A bf16 fp_extend is just a shift into the higher bits. This changes the
lowering from using a relatively ugly tablegen pattern, to ISel
generating the shift using an extended vector. This is cleaner and
should optimize better. StrictFP goes through the same route as it
cannot round or set flags.
Commit: 1eed780a6a01b5b10de8a723318f0153b5adea0a
https://github.com/llvm/llvm-project/commit/1eed780a6a01b5b10de8a723318f0153b5adea0a
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/test/src/stdlib/BUILD.bazel
Log Message:
-----------
[bazel] Update dependency for a738d81cd2822698539b0482af48d49d91ea5a2e
Commit: a5e129ccdedf5c269a8e0fcad5e21381a7f0342c
https://github.com/llvm/llvm-project/commit/a5e129ccdedf5c269a8e0fcad5e21381a7f0342c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Analysis/CostModel/X86/vector-insert-value.ll
Log Message:
-----------
[CostModel][X86] getVectorInstrCost - correctly cost v4f32 insertelement into index 0
This is just the MOVSS instruction (SSE41 INSERTPS is still necessary for index != 0)
This exposed an issue in VectorCombine::foldInsExtFNeg - we need to use the more general SK_PermuteTwoSrc shuffle kind to allow getShuffleCost to match other shuffle kinds (not just SK_Select).
Commit: ca5fd06366448c94e1da085984e9e69f8d6398c3
https://github.com/llvm/llvm-project/commit/ca5fd06366448c94e1da085984e9e69f8d6398c3
Author: 天音あめ <i at amane-a.me>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/test/CodeGen/xcore-abi.c
M clang/test/Sema/varargs.c
Log Message:
-----------
[clang] Fix crashes when passing VLA to va_arg (#119563)
Closes #119360.
This bug occurs when passing a VLA to `va_arg`. Since the return value
is inferred to be an array, it triggers
`ScalarExprEmitter::VisitCastExpr`, which converts it to a pointer and
subsequently calls `CodeGenFunction::EmitAggExpr`. At this point,
because the inferred type is an `AggExpr` instead of a `ScalarExpr`,
`ScalarExprEmitter::VisitVAArgExpr` is not invoked, and as a result,
`CodeGenFunction::EmitVariablyModifiedType` is also not called, leading
to the size of the VLA not being retrieved.
The solution is to move the call to
`CodeGenFunction::EmitVariablyModifiedType` into
`CodeGenFunction::EmitVAArg`, ensuring that the size of the VLA is
correctly obtained regardless of whether the expression is an `AggExpr`
or a `ScalarExpr`.
Commit: 882df0543527694e1f4976991c65712127458b33
https://github.com/llvm/llvm-project/commit/882df0543527694e1f4976991c65712127458b33
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/test/Transforms/InstCombine/xor-and-or.ll
Log Message:
-----------
[InstCombine] Fold `(A | B) ^ (A & C) --> A ? ~C : B` (#121906)
Closes https://github.com/llvm/llvm-project/issues/121773.
Commit: 525f5262af81e460b4799e69e3f52701fd45f066
https://github.com/llvm/llvm-project/commit/525f5262af81e460b4799e69e3f52701fd45f066
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/ELF.h
A llvm/include/llvm/BinaryFormat/ELFRelocs/RISCV_nonstandard.def
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/test/MC/RISCV/custom_reloc.s
Log Message:
-----------
[RISCV] Support Parsing Nonstandard Relocations (#119909)
This allows nonstandard relocation names to be used in `.reloc` assembly
directives (giving the correct relocation number).
No translation is done by the assembler into `R_RISCV_CUSTOM<n>` names,
and the assembler does not automatically add the relevant
`R_RISCV_VENDOR` relocation with the vendor symbol. If we want, we can
have a different directive that does this later.
The first batch of relocations to be added are from [Qualcomm's RISC-V
psABI
extensions](https://github.com/quic/riscv-elf-psabi-quic-extensions/releases/tag/v0.1).
Commit: c27483763c883ad268ba61249d1c0274a719e2d6
https://github.com/llvm/llvm-project/commit/c27483763c883ad268ba61249d1c0274a719e2d6
Author: flovent <144676429+flovent at users.noreply.github.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/UnhandledSelfAssignmentCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unhandled-self-assignment.cpp
Log Message:
-----------
[clang-tidy] bugprone-unhandled-self-assignment: fix smart pointer check against std::unique_ptr type (#121266)
Unlike other standard smart pointer types, std::unique_ptr has two
template arguments.
testcase need to be updated too.
Commit: a629d9e102bd3c110135d8c4a084af2eb5f49df9
https://github.com/llvm/llvm-project/commit/a629d9e102bd3c110135d8c4a084af2eb5f49df9
Author: Lewis Crawford <lcrawford at nvidia.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
R llvm/include/llvm/IR/NVVMIntrinsicFlags.h
A llvm/include/llvm/IR/NVVMIntrinsicUtils.h
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
A llvm/test/Transforms/InstSimplify/const-fold-nvvm-f2i-d2i.ll
A llvm/test/Transforms/InstSimplify/const-fold-nvvm-f2ll-d2ll.ll
Log Message:
-----------
[NVPTX] Constant-folding for f2i, d2ui, f2ll etc. (#118965)
Add constant-folding support for the NVVM intrinsics for converting
float/double to signed/unsigned int32/int64 types, including all
rounding-modes and ftz modifiers.
Commit: 4e066b6be42f731eda3ee221d12d9c3d5d21177e
https://github.com/llvm/llvm-project/commit/4e066b6be42f731eda3ee221d12d9c3d5d21177e
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/include/llvm/IR/PatternMatch.h
M llvm/test/Transforms/InstCombine/compare-signs.ll
Log Message:
-----------
[PatternMatch] Match commuted patterns in `Signum_match` (#121911)
Closes https://github.com/llvm/llvm-project/issues/121776.
Commit: 1332db36ee23f19eacf6a84bfda0f9c03a5706e7
https://github.com/llvm/llvm-project/commit/1332db36ee23f19eacf6a84bfda0f9c03a5706e7
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] TransformFPLoadStorePair - early out if we're not loading a simple type
Its never going to transform into a legal integer type, so just bail - noticed while triaging the assertion reported in #121784
Commit: 7edeeab5e0023dabd6003d6f113575a5b5b6c83b
https://github.com/llvm/llvm-project/commit/7edeeab5e0023dabd6003d6f113575a5b5b6c83b
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M lldb/source/Host/posix/FileSystemPosix.cpp
Log Message:
-----------
[lldb][NetBSD] Remove unused include in FileSystemPosix.cpp (#121920)
Commit: ef391dbc29db097952e71d81cd88e9bd7e81a3fa
https://github.com/llvm/llvm-project/commit/ef391dbc29db097952e71d81cd88e9bd7e81a3fa
Author: Florian Mayer <fmayer at google.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reverse-load-store.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-inbounds-flags-for-reverse-vector-pointer.ll
Log Message:
-----------
[LV] Drop incorrect inbounds for reverse vector pointer when folding tail (#120730)
When folding the tail, we may compute an address that we don't in the
original scalar loop and it may not be inbounds. Drop Inbounds in that
case.
Commit: 5f6b7145077386afac806eec1bb8e866c6166034
https://github.com/llvm/llvm-project/commit/5f6b7145077386afac806eec1bb8e866c6166034
Author: Balazs Benics <benicsbalazs at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/unittests/StaticAnalyzer/Z3CrosscheckOracleTest.cpp
Log Message:
-----------
[analyzer][NFC] Simplify PositiveAnalyzerOption handling (#121910)
This simplifies #120239
Addresses my comment at:
https://github.com/llvm/llvm-project/pull/120239#issuecomment-2574600543
CPP-5920
Commit: ab5133bbc62af4686f305a3c7d85f74b9f5b949f
https://github.com/llvm/llvm-project/commit/ab5133bbc62af4686f305a3c7d85f74b9f5b949f
Author: Nico Weber <thakis at chromium.org>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/lib/Basic/Targets/OSTargets.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Lex/InitHeaderSearch.cpp
R clang/test/Driver/Inputs/MacOSX15.1.sdk/embedded/usr/include/.keep
R clang/test/Driver/Inputs/MacOSX15.1.sdk/embedded/usr/local/include/.keep
R clang/test/Driver/Inputs/MacOSX15.1.sdk/usr/include/c++/v1/.keep
R clang/test/Driver/Inputs/MacOSX15.1.sdk/usr/local/include/.keep
R clang/test/Driver/darwin-embedded-search-paths.c
M clang/test/Preprocessor/macho-embedded-predefines.c
M llvm/include/llvm/TargetParser/Triple.h
Log Message:
-----------
Revert "[Darwin][Driver][clang] apple-none-macho orders the resource directory after internal-externc-isystem when nostdlibinc is used (#120507)"
This reverts commit 653a54727eaa18c43447ad686c987db67f1dda74.
Breaks tests, see https://github.com/llvm/llvm-project/pull/120507#issuecomment-2575246281
Commit: faa3f752896903c2d09d389970d3d0ebf50a1073
https://github.com/llvm/llvm-project/commit/faa3f752896903c2d09d389970d3d0ebf50a1073
Author: Jannik Glückert <jannik.glueckert at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M libcxx/src/filesystem/operations.cpp
Log Message:
-----------
[libc++] Fix largefile handling in fs::copy_file (#121855)
Fix for issues reported in https://github.com/llvm/llvm-project/pull/109211
Commit: 0c8efbe3a0bd8a46a27835cfefefdc05c4d679a5
https://github.com/llvm/llvm-project/commit/0c8efbe3a0bd8a46a27835cfefefdc05c4d679a5
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
Log Message:
-----------
[X86] Add shuffle test for #121823
Commit: c3fc41c60bdb76cda7c8b3937515f67f5d4e136e
https://github.com/llvm/llvm-project/commit/c3fc41c60bdb76cda7c8b3937515f67f5d4e136e
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/Support/BUILD.gn
Log Message:
-----------
[gn build] Port bc51a2e3940a
Commit: 82ec2d6aa45fcfbfcf9f12504c10b1e457bda65c
https://github.com/llvm/llvm-project/commit/82ec2d6aa45fcfbfcf9f12504c10b1e457bda65c
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/CodeGen/RegisterCoalescer.cpp
M llvm/test/CodeGen/AArch64/register-coalesce-update-subranges-remat.mir
Log Message:
-----------
[Coalescer] Consider NewMI's subreg index when updating lanemask. (#121780)
The code added in #116191 that updated the lanemasks for rematerialized
values checked if `DefMI`'s destination register had a subreg index.
This seems to have missed the following case:
```
%0:gpr32 = MOVi32imm 1
%1:gpr64 = SUBREG_TO_REG 0, %0:gpr32, %subreg.sub_32
```
which during rematerialization would have the following variables set:
```
DefMI = %0:gpr32 = MOVi32imm 1
NewMI = %3.sub_32:gpr64 = MOVi32imm 1 (rematerialized value)
```
When checking whether the lanemasks need to be generated, considering
whether DefMI's destination has a subreg index is insufficient, we
should look at DefMI's subreg index instead.
The added tests are a bit more involved, because I was not able to
reconstruct the issue without having some control flow in the test.
These tests come from actual reproducers.
Commit: 473cdb93e55deeea6a7f654e192f5227d85cee08
https://github.com/llvm/llvm-project/commit/473cdb93e55deeea6a7f654e192f5227d85cee08
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/lib/CodeGen/SanitizerMetadata.cpp
M clang/test/CodeGen/sanitize-type-globals.cpp
Log Message:
-----------
[TySan] Don't report globals with incomplete types. (#121922)
Type metadata for incomplete types should also get handled at the place
they are defined.
Fixes https://github.com/llvm/llvm-project/issues/121014.
PR: https://github.com/llvm/llvm-project/pull/121922
Commit: 71ddde8ba52af7277b8f3a8dffa570963a3069f2
https://github.com/llvm/llvm-project/commit/71ddde8ba52af7277b8f3a8dffa570963a3069f2
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/unittests/tools/llvm-exegesis/CMakeLists.txt
A llvm/unittests/tools/llvm-exegesis/RISCV/CMakeLists.txt
A llvm/unittests/tools/llvm-exegesis/RISCV/SnippetGeneratorTest.cpp
A llvm/unittests/tools/llvm-exegesis/RISCV/TargetTest.cpp
A llvm/unittests/tools/llvm-exegesis/RISCV/TestBase.h
Log Message:
-----------
[RISCV][llvm-exegesis] Add unittests. NFC (#121862)
This is largely based on Mips and PowerPC.
Commit: 2c7c07df828e5be1480c38d2a93a82294da10b47
https://github.com/llvm/llvm-project/commit/2c7c07df828e5be1480c38d2a93a82294da10b47
Author: Justin Bogner <mail at justinbogner.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/docs/DirectX/DXILResources.rst
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/lib/Target/DirectX/DXILResourceAccess.cpp
M llvm/test/CodeGen/DirectX/BufferLoad.ll
M llvm/test/CodeGen/DirectX/ResourceAccess/load_typedbuffer.ll
M llvm/test/CodeGen/DirectX/ResourceAccess/store_typedbuffer.ll
M llvm/test/CodeGen/DirectX/ResourceGlobalElimination.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/typed-uav-load-additional-formats.ll
Log Message:
-----------
[DirectX] Remove the "checked" variants of `dx.resource.load` (#120778)
We'd introduced separate versions of `llvm.dx.resource.load` with a
struct return to handle the CheckAccessFullyMapped case without making
the IR for the common case unnecessarily complicated. However, at this
point the common case is really `resource.getpointer`, so the ergonomics
of a simplified version of `load` don't actually gain us as much as the
cost of having multiple opcodes.
Drop the `dx.resource.loadchecked` functions and have `dx.resource.load`
consistently return `{element_type, i1}`.
Commit: 8178d3c9641998c23eda22740bacae212ee5b3ef
https://github.com/llvm/llvm-project/commit/8178d3c9641998c23eda22740bacae212ee5b3ef
Author: Justin Bogner <mail at justinbogner.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/docs/DirectX/DXILResources.rst
Log Message:
-----------
[DirectX] Add getpointer docs to DXILResources.rst (#120779)
Commit: 17c8c1c5098bd1fa68809d686867d01d56d5e564
https://github.com/llvm/llvm-project/commit/17c8c1c5098bd1fa68809d686867d01d56d5e564
Author: bcahoon <59846893+bcahoon at users.noreply.github.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
A llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.ll
A llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.mir
A llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-read.mir
Log Message:
-----------
[AMDGPU] Do not fold into v_accvpr_mov/write/read (#120475)
In SIFoldOperands, leave copies for moving between agpr and vgpr
registers. The register coalescer is able to handle the copies
more efficiently than v_accvgpr_mov, v_accvgpr_write, and
v_accvgpr_read. Otherwise, the compiler generates unneccesary
instructions such as v_accvgpr_mov a0, a0.
Commit: d0812dbbff2ac839694ee1988e6af962fcd0bb1e
https://github.com/llvm/llvm-project/commit/d0812dbbff2ac839694ee1988e6af962fcd0bb1e
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/test/CodeGen/AMDGPU/minmax.ll
M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp8.s
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp8.txt
Log Message:
-----------
[AMDGPU][True16][MC] true16 for v_minmax/maxmin_f16 and v_minmax/maxmin_num_f16 (#120617)
True16 support for v_minmax/maxmin_f16(GFX11) and
v_minmax/maxmin_num_f16(GFX12).
These insts are updated at the same time since we are replacing the
`v_minmax/maxmin_f16` to `v_minmax/maxmin_fake16_f16` while
`v_minmax/maxmin_num_f16` are alias insts and share the same CodeGen
pattern.
Added a GFX12 runline in minmax.ll in fake16 flow
Commit: 96f8cfe4d05049abde300480812c6a96879ccdf8
https://github.com/llvm/llvm-project/commit/96f8cfe4d05049abde300480812c6a96879ccdf8
Author: vfdev <vfdev.5 at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M mlir/CMakeLists.txt
M mlir/docs/Bindings/Python.md
M mlir/test/python/execution_engine.py
Log Message:
-----------
Cosmetic fixes in the code and typos in Python bindings docs (#121791)
Description:
- removed trailing spaces in few files
- fixed markdown link definition:
Commit: a0f5bbcfb71a28cd3eaa308250af63a0889a1c85
https://github.com/llvm/llvm-project/commit/a0f5bbcfb71a28cd3eaa308250af63a0889a1c85
Author: vfdev <vfdev.5 at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M mlir/lib/Bindings/Python/IRCore.cpp
Log Message:
-----------
Fixed typo in dunder get/set methods in PyAttrBuilderMap (#121794)
Description:
- fixed a typo in the method name: dunde -> dunder
Commit: 7899572c88c6516b142c35e95e911917b623e057
https://github.com/llvm/llvm-project/commit/7899572c88c6516b142c35e95e911917b623e057
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/swdev503538-move-to-valu-stack-srd-physreg.ll
Log Message:
-----------
AMDGPU: Forcibly disable verifier in test
The test added in f6365a47a1ad9ab6d432f6e40d14a11419e21282 fails the verifier
for the reason noted in the comment, but we need to skip the verifier
error in EXPENSIVE_CHECKS builds
Commit: 4e36d5b92d78822f9eeef6b62e7b037f5c2cb5b9
https://github.com/llvm/llvm-project/commit/4e36d5b92d78822f9eeef6b62e7b037f5c2cb5b9
Author: Petr Vesely <22935437+veselypeta at users.noreply.github.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
Log Message:
-----------
[NFC][Coroutines] Remove invalid coroutine intrinsic name (#114543)
Removes `llvm.coro.async.store_resume` from the list of coroutine
intrinsics. This is not a valid intrinsic name, and was likely added by
mistake with [this](https://reviews.llvm.org/D90612) change.
Commit: 785b16ad04a741dce65ebaa11ee86d9dd19dd699
https://github.com/llvm/llvm-project/commit/785b16ad04a741dce65ebaa11ee86d9dd19dd699
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
M llvm/test/CodeGen/RISCV/GlobalISel/double-zfa.ll
Log Message:
-----------
[RISCV][GISel] Support G_MERGE_VALUES/G_UNMERGE_VALUES with Zfa. (#120379)
Without Zfa we use pseudos that are lowered to a stack load/store. With
Zfa we have instructions that can move a pair of registers to an FPR. Or
move the high or low half of an FPR to a GPR.
I've used a GINodeEquiv to make use of 3 of the 4 tablegen patterns. The
split case with Zfa requires 2 instructions which I'm doing through
custom isel like we do in SelectionDAG.
Commit: b7a6e9da124142a1bd28895eea768a158901a03b
https://github.com/llvm/llvm-project/commit/b7a6e9da124142a1bd28895eea768a158901a03b
Author: earnol <earnol at users.noreply.github.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M compiler-rt/lib/ubsan/ubsan_value.h
Log Message:
-----------
[ubsan] Use internal_memcpy to copy ubsan bits size (#121586)
While fetching amounts of bits used to correctly display ubsan value
reinterpret_cast was used, however as noted by Jakub Jelínek in
https://github.com/llvm/llvm-project/pull/96240 discussion it might
cause issues due to potentially unaligned memory access. The patch
addresses this problem.
Co-authored-by: Vladislav Aranov <vladislav.aranov at ericsson.com>
Commit: 619a5d3274350b87028c96cb8e8be51731d334cb
https://github.com/llvm/llvm-project/commit/619a5d3274350b87028c96cb8e8be51731d334cb
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineTarge - pull out repeated getVectorNumElements calls. NFC.
Commit: 56c5a6ba836065a6e3be9d04e2c64aa8a758a3f4
https://github.com/llvm/llvm-project/commit/56c5a6ba836065a6e3be9d04e2c64aa8a758a3f4
Author: Kristóf Umann <dkszelethus at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/docs/analyzer/checkers.rst
M clang/include/clang/Basic/AttrDocs.td
Log Message:
-----------
[NFC][analyzer][docs] Crosslink MallocChecker's ownership attributes (#121939)
Forgot to mention these in the checker docs.
Commit: db81e8c42e121e62a00587b12d2b972dfcfb98c0
https://github.com/llvm/llvm-project/commit/db81e8c42e121e62a00587b12d2b972dfcfb98c0
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/include/clang-c/Index.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/StmtOpenACC.h
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/StmtNodes.td
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/lib/AST/StmtOpenACC.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
A clang/test/AST/ast-print-openacc-update-construct.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-constructs.c
A clang/test/SemaOpenACC/update-construct-ast.cpp
A clang/test/SemaOpenACC/update-construct.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CXCursor.cpp
Log Message:
-----------
[OpenACC] Initial sema implementation of 'update' construct
This executable construct has a larger list of clauses than some of the
others, plus has some additional restrictions. This patch implements
the AST node, plus the 'cannot be the body of a if, while, do, switch,
or label' statement restriction. Future patches will handle the
rest of the restrictions, which are based on clauses.
Commit: dd1e8aa09c0ab453a0566165b68e6a62fcd055e1
https://github.com/llvm/llvm-project/commit/dd1e8aa09c0ab453a0566165b68e6a62fcd055e1
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/AST/ast-print-openacc-update-construct.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/SemaOpenACC/update-construct-ast.cpp
M clang/test/SemaOpenACC/update-construct.cpp
Log Message:
-----------
[OpenACC] Enable 'if' and 'if_present' for 'update' construct
The only restriction on 'if' is that only 1 can appear on an update
construct, so this enforces that. 'if_present' has no restrictions.
Commit: 937445365aab70d47b443c53d6cdd5707f388c3d
https://github.com/llvm/llvm-project/commit/937445365aab70d47b443c53d6cdd5707f388c3d
Author: David CARLIER <devnexen at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
Log Message:
-----------
[compiler-rt][rtsan] Reland posix part of #121616 setbuf, setvbuf. (#121658)
Commit: 611c96af8cdf950f00d593ee69cce2d165457a9e
https://github.com/llvm/llvm-project/commit/611c96af8cdf950f00d593ee69cce2d165457a9e
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/test/Driver/mlir-pass-pipeline.f90
M flang/test/Fir/basic-program.fir
Log Message:
-----------
[flang] Schedule InlineHLFIRAssign after BufferizeHLFIR. (#121863)
This helps to get rid of *some* calls to AssignTemporary runtime
that are appearing due to temporary_lhs hlfir.assign produced
in BufferizeHLFIR. I only tested it on `tonto`, and did not see
any performance changes. I will run more performance testing
before merging this.
Commit: 51c9c823ca187895478e42883ba7a8d1f3150e87
https://github.com/llvm/llvm-project/commit/51c9c823ca187895478e42883ba7a8d1f3150e87
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/add_sext_shl_constant.ll
Log Message:
-----------
[RISCV] Added test case for PR119527. NFC (#121816)
Co-authored-by: Luke Lau <luke_lau at icloud.com>
Commit: 2e637dbbb8bc9a41f8eabd1df347ca2559b1abd7
https://github.com/llvm/llvm-project/commit/2e637dbbb8bc9a41f8eabd1df347ca2559b1abd7
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M flang/include/flang/Optimizer/Dialect/CanonicalizationPatterns.td
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/test/Fir/convert-fold.fir
M flang/test/Lower/array-substring.f90
M flang/test/Lower/vector-subscript-io.f90
Log Message:
-----------
[flang] Canonicalize redundant pointer converts. (#121864)
This patch adds a canonicalization pattern for optimizing redundant
"pointer" fir.converts. Such converts prevent the StackArrays pass
to recognize fir.freemem for the corresponding fir.allocmem, e.g.:
```
%69 = fir.allocmem !fir.array<2xi32>
%71:2 = hlfir.declare %69(%70) {uniq_name = ".tmp.arrayctor"} :
(!fir.heap<!fir.array<2xi32>>, !fir.shape<1>) ->
(!fir.heap<!fir.array<2xi32>>, !fir.heap<!fir.array<2xi32>>)
%95 = fir.convert %71#1 :
(!fir.heap<!fir.array<2xi32>>) -> !fir.ref<!fir.array<2xi32>>
%100 = fir.convert %95 :
(!fir.ref<!fir.array<2xi32>>) -> !fir.heap<!fir.array<2xi32>>
fir.freemem %100 : !fir.heap<!fir.array<2xi32>>
```
I found this in `tonto`, but the change does not affect performance at all.
Anyway, it looks like a reasonable thing to do, and it makes easier
to compare the performance profiles with other compilers'.
Commit: 8557a57c4b1a228ce63f2409dd5cc4c70a25e6fc
https://github.com/llvm/llvm-project/commit/8557a57c4b1a228ce63f2409dd5cc4c70a25e6fc
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M flang/lib/Lower/CMakeLists.txt
A flang/lib/Lower/OpenMP/PrivateReductionUtils.cpp
A flang/lib/Lower/OpenMP/PrivateReductionUtils.h
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
Log Message:
-----------
[flang][OpenMP][NFC] Move reduction init and cleanup region gen to helper (#120761)
This will allow code sharing between reduction and privatization after
my (still WIP) changes to `omp.private` to use an `alloc` region similar
to the one used for reduction declarations.
Commit: 57b80e8b1a7eaa5b8b9114e4bb2395e0d05c75a5
https://github.com/llvm/llvm-project/commit/57b80e8b1a7eaa5b8b9114e4bb2395e0d05c75a5
Author: Sean Perry <perry at ca.ibm.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/include/clang/Driver/Driver.h
M clang/lib/Driver/Driver.cpp
A clang/test/Driver/Inputs/config-zos/clang.cfg
A clang/test/Driver/Inputs/config-zos/def.cfg
A clang/test/Driver/Inputs/config-zos/tst/def.cfg
A clang/test/Driver/config-zos.c
A clang/test/Driver/config-zos1.c
Log Message:
-----------
[SystemZ][z/OS] Add z/OS customization file (#111182)
On z/OS, the location of the system libraries and side decks (aka
equivalent to libc, etc) are not in a predefined location. The system
does have a default location but sysadmins can change this and
frequently do. See the -mzos-hlq* options we have for z/OS.
To avoid every user needing to specify these -mzos-hlq* options, we
added support for a system install default config file that is always
read independent of the usual config file. The compiler will read this
customization config file before reading the usual config files.
The customization file is called clang.cfg and is located in:
- the etc dir within the compiler installation dir.
- or specified by the CLANG_CONFIG_PATH env var. This env var can either
be a directory or the fill path name of the file.
Commit: fbd2365c467ba5c28d65451cfffcbf563df2c647
https://github.com/llvm/llvm-project/commit/fbd2365c467ba5c28d65451cfffcbf563df2c647
Author: Damien L-G <dalg24 at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M libcxx/test/std/atomics/atomics.ref/exchange.pass.cpp
Log Message:
-----------
[libc++] Improve coverage of std::atomic_ref<T>::exchange() (#121596)
Adapted from libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/exchange.pass.cpp
as we did for testing other functionalities. Spotted that lapse in coverage when working on #121414.
Commit: 0a58a1c9a26d4fdfeaebfbcd0891bf2a844ee838
https://github.com/llvm/llvm-project/commit/0a58a1c9a26d4fdfeaebfbcd0891bf2a844ee838
Author: Nick Desaulniers <ndesaulniers at google.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M libc/src/time/mktime.cpp
Log Message:
-----------
[libc] update todo with bug link
Commit: 5130a4ea121fa74b0fe9a0c9a44ede651f94f93a
https://github.com/llvm/llvm-project/commit/5130a4ea121fa74b0fe9a0c9a44ede651f94f93a
Author: Leandro Lupori <leandro.lupori at linaro.org>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/runtime/derived.cpp
M flang/test/Lower/OpenMP/derived-type-allocatable.f90
Log Message:
-----------
[flang][OpenMP] Handle pointers and allocatables in clone init (#121824)
InitializeClone(), implemented in #120295, was not handling top
level pointers and allocatables correctly.
Pointers and unallocated variables must be skipped.
This caused some regressions in the Fujitsu testsuite:
https://linaro.atlassian.net/browse/LLVM-1488
Commit: 0d9cf2671e06c9124a0b5fc753330c39c8b4a791
https://github.com/llvm/llvm-project/commit/0d9cf2671e06c9124a0b5fc753330c39c8b4a791
Author: John Harrison <harjohn at google.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M lldb/tools/lldb-dap/CMakeLists.txt
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/IOStream.h
M lldb/tools/lldb-dap/OutputRedirector.cpp
M lldb/tools/lldb-dap/OutputRedirector.h
M lldb/tools/lldb-dap/lldb-dap.cpp
Log Message:
-----------
[lldb-dap] Ensure the IO forwarding threads are managed by the DAP object lifecycle. (#120457)
This moves the ownership of the threads that forward stdout/stderr to
the DAP object itself to ensure that the threads are joined and that the
forwarding is cleaned up when the DAP connection is disconnected.
This is part of a larger refactor to allow lldb-dap to run in a
listening mode and accept multiple connections.
---------
Co-authored-by: Pavel Labath <pavel at labath.sk>
Commit: aa9cc721e58f086ba6a3f9711fefdb61a184f786
https://github.com/llvm/llvm-project/commit/aa9cc721e58f086ba6a3f9711fefdb61a184f786
Author: Peter Waller <peter.waller at arm.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M bolt/lib/Core/BinaryEmitter.cpp
M bolt/lib/Passes/ReorderFunctions.cpp
A bolt/test/AArch64/pad-before-funcs.s
Log Message:
-----------
Reapply "[BOLT] Add --pad-funcs-before=func:n (#117924)" (#121918)
- **Reapply "[BOLT] Add --pad-funcs-before=func:n (#117924)"**
- **[BOLT] Fix --pad-funcs{,-before} state misinteraction**
When --pad-funcs-before was introduced, it introduced a bug whereby the
first one to get parsed could influence the other.
Ensure that each has its own state and test that they don't interact in
this manner by testing how the `_subsequent` symbol moves when both
arguments are supplied with different padding values.
Fixed by having a function (and static state) for each of before/after.
Commit: 15d3e4afd60c1c47af73816d23fbf767ff6c4542
https://github.com/llvm/llvm-project/commit/15d3e4afd60c1c47af73816d23fbf767ff6c4542
Author: Andreas Jonson <andjo403 at hotmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/test/Transforms/InstCombine/onehot_merge.ll
Log Message:
-----------
[InstCombine] Test for two types of bittests (NFC)
Commit: 292c1350d1509090949f037603663aa64985fe69
https://github.com/llvm/llvm-project/commit/292c1350d1509090949f037603663aa64985fe69
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M libcxx/docs/TestingLibcxx.rst
A libcxx/utils/libcxx-benchmark-json
A libcxx/utils/libcxx-compare-benchmarks
Log Message:
-----------
[libc++] Add new utilities to compare benchmark results between builds (#120743)
Also, add documentation for it.
Commit: 6192fafe9c8d287daa9d40e3adcd24220a7872af
https://github.com/llvm/llvm-project/commit/6192fafe9c8d287daa9d40e3adcd24220a7872af
Author: goldsteinn <35538541+goldsteinn at users.noreply.github.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/test/Transforms/InstCombine/select.ll
Log Message:
-----------
[InstSimplify] Use multi-op replacement when simplify `select` (#121708)
- **[InstSimplify] Refactor `simplifyWithOpsReplaced` to allow multiple
replacements; NFC**
- **[InstSimplify] Use multi-op replacement when simplify `select`**
In the case of `select X | Y == 0 :...` or `select X & Y == -1 : ...`
we can do more simplifications by trying to replace both `X` and `Y`
with the respective constant at once.
Handles some cases for https://github.com/llvm/llvm-project/pull/121672
more generically.
Commit: afa8aeeeec9a897a35ba5c8afc024d9b10504db1
https://github.com/llvm/llvm-project/commit/afa8aeeeec9a897a35ba5c8afc024d9b10504db1
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/CMakeLists.txt
M llvm/lib/Target/RISCV/RISCV.td
A llvm/lib/Target/RISCV/RISCVPfmCounters.td
M llvm/tools/llvm-exegesis/lib/RISCV/Target.cpp
M llvm/unittests/tools/llvm-exegesis/RISCV/TargetTest.cpp
Log Message:
-----------
[RISCV][llvm-exegesis] Add default Pfm cycle counter. (#121866)
Also tested with Ubuntu on SiFive's HiFive Premier P550 board. Curiously
latency is reporting ~1.5 on basic scalar arithmetic, scalar mul is
~3.5, and div is ~36.5. This 0.5 cycles higher than I expect.
Commit: 5c7a69674f818e41c32a6535e416e4a8fa280273
https://github.com/llvm/llvm-project/commit/5c7a69674f818e41c32a6535e416e4a8fa280273
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMSystemRegister.td
M llvm/lib/Target/ARM/Utils/ARMBaseInfo.cpp
M llvm/lib/Target/ARM/Utils/ARMBaseInfo.h
Log Message:
-----------
[ARM] Migrate from SearchableTable to GenericTable. NFC (#121840)
SearchableTable is the legacy version that does not appear to be well
documented. Not sure if the plan was to delete it eventually.
The enum from SearchableTable does not appear to be used so I did not
add a GenericEnum. MClassSysReg assigned EnumValueField 3 times, but
rather than creating 3 enums, this overwrites the previous assignment.
We can eventually use the PrimaryKey feature of GenericTable to remove
one of the SearchIndex declarations. This will sort the generated table
by the primary key and remove the separately generated indexing table to
reduce .rodata size.
This patch is just the mechanical migration. The size savings will be
done in follow ups.
Commit: 478648e2c0adbafa5e4cb10eb53aadbdf7de97d9
https://github.com/llvm/llvm-project/commit/478648e2c0adbafa5e4cb10eb53aadbdf7de97d9
Author: Caslyn Tonelli <6718161+Caslyn at users.noreply.github.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M compiler-rt/lib/gwp_asan/tests/harness.h
Log Message:
-----------
[gwp_asan] Soft-transition ZXTEST_USE_STREAMABLE_MACROS removal (#121887)
Soft-transition the removal of setting ZXTEST_USE_STREAMABLE_MACROS, by
only setting the macro if not already defined. A future PR will remove
setting the macro entirely in harness.h.
Commit: 49357b22dbb26d4aa6816dee279df70f1a2cd695
https://github.com/llvm/llvm-project/commit/49357b22dbb26d4aa6816dee279df70f1a2cd695
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/test/CodeGen/AMDGPU/smed3.ll
M llvm/test/CodeGen/AMDGPU/umed3.ll
Log Message:
-----------
[AMDGPU][True16][CodeGen] true16 codegen pattern for v_med3_u/i16 (#121850)
True16 codegen pattern for v_med3_u/i16
Commit: e2c1b1fed43619bdb88bb5e99b7e8c2fff9f6553
https://github.com/llvm/llvm-project/commit/e2c1b1fed43619bdb88bb5e99b7e8c2fff9f6553
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/AST/ast-print-openacc-update-construct.cpp
M clang/test/SemaOpenACC/update-construct-ast.cpp
M clang/test/SemaOpenACC/update-construct.cpp
Log Message:
-----------
[OpenACC] enable 'async' and 'wait' for 'update' construct
These work the same here as they do for every other construct, so this
is as simple as enabling them and writing tests, which this patch does.
Commit: 6c3c90b5a81a3c27dbc195d7e49dc4c89e0e604f
https://github.com/llvm/llvm-project/commit/6c3c90b5a81a3c27dbc195d7e49dc4c89e0e604f
Author: Lei Wang <wlei at fb.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
A llvm/test/tools/llvm-profgen/context-depth.test
M llvm/test/tools/llvm-profgen/recursion-compression-pseudoprobe.test
M llvm/tools/llvm-profgen/PerfReader.cpp
Log Message:
-----------
[CSSPGO]Add a flag to limit unsymbolized context depth (#121531)
Adding a new flag(`--csprof-max-unsymbolized-context-depth`) to only
limit unsymbolized context depth. Currently,`--csprof-max-context-depth`
applies to both symbolized and unsymbolized profile context, there are
scenarios where `--csprof-max-context-depth` may not be flexible enough,
e.g. if we want to limit the context but still keep all the inlinings
from the leaf frame, we could set the value
csprof-max-unsymbolized-context-depth >= 1.
Commit: a15fedc399d5d1aa07c14531e5cd8d3efc583600
https://github.com/llvm/llvm-project/commit/a15fedc399d5d1aa07c14531e5cd8d3efc583600
Author: GeorgeHuyubo <113479859+GeorgeHuyubo at users.noreply.github.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
Log Message:
-----------
[lldb] Correct address calculation for reading segment data (#120655)
This commit addresses a bug introduced in commit bcf654c, which
prevented LLDB from parsing the GNU build ID for the main executable
from a core file. The fix finds the `p_vaddr` of the first `PT_LOAD`
segment as the `base_addr` and subtract this `base_addr` from the
virtual address being read.
Co-authored-by: George Hu <hyubo at meta.com>
Commit: ac604b2fa6ff0344a555954069721c0db7b874f9
https://github.com/llvm/llvm-project/commit/ac604b2fa6ff0344a555954069721c0db7b874f9
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M libc/src/__support/GPU/CMakeLists.txt
R libc/src/__support/GPU/amdgpu/CMakeLists.txt
R libc/src/__support/GPU/amdgpu/utils.h
R libc/src/__support/GPU/generic/CMakeLists.txt
R libc/src/__support/GPU/generic/utils.h
R libc/src/__support/GPU/nvptx/CMakeLists.txt
R libc/src/__support/GPU/nvptx/utils.h
M libc/src/__support/GPU/utils.h
M libc/src/time/gpu/clock.cpp
M libc/src/time/gpu/nanosleep.cpp
Log Message:
-----------
[libc] Switch to using the generic `<gpuintrin.h>` implementations (#121810)
Summary:
This patch switches the GPU utility helpers to wrapping around the
gpuintrin.h ones with a C++ flavor.
Commit: 666eee0ef85ff8a81904b9375fc22bc48cecc6b1
https://github.com/llvm/llvm-project/commit/666eee0ef85ff8a81904b9375fc22bc48cecc6b1
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/AST/ast-print-openacc-update-construct.cpp
M clang/test/SemaOpenACC/update-construct-ast.cpp
M clang/test/SemaOpenACC/update-construct.cpp
Log Message:
-----------
[OpenACC] enable 'device_type' for the 'update' construct
This has a similar restriction to 'set' in that only 'async' and 'wait'
are disallowed, so this implements that restriction and enables
'device_type'.
Commit: 68694259b298614f16f87d83a56be1207f36fa53
https://github.com/llvm/llvm-project/commit/68694259b298614f16f87d83a56be1207f36fa53
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch.ll
Log Message:
-----------
AMDGPU: Use getSignedTargetConstant for ImmOffset in SelectScratchSVAddr (#121978)
ImmOffset is signed and we will hit an assert with negative ImmOffset
when getTargetConstant is used.
Fixes: SWDEV-506453
Commit: ce33a48efdd61435e026733315f1ac960774c254
https://github.com/llvm/llvm-project/commit/ce33a48efdd61435e026733315f1ac960774c254
Author: Roland McGrath <mcgrathr at google.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M libc/include/__llvm-libc-common.h
Log Message:
-----------
[libc] Keep headers compatible with -std=c89 mode (#121981)
C89 doesn't have the `restrict` keyword. When in `-std=c89`
mode, GNU-compatible compilers require the `__restrict` spelling.
Commit: cda43e1ba31346966830c01cd12120d884239128
https://github.com/llvm/llvm-project/commit/cda43e1ba31346966830c01cd12120d884239128
Author: Yi Kong <yikong at google.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M libcxx/src/filesystem/operations.cpp
Log Message:
-----------
[libcxx] Fix build for glibc < 2.27 (#121893)
PR #109211 introduced a build break on systems with glibc < 2.27, since
copy_file_range was only introduced after that version. A version check
is added to prevent this breakage.
Commit: ea14bdb0356cdda727ac032470f6a0a2102d1281
https://github.com/llvm/llvm-project/commit/ea14bdb0356cdda727ac032470f6a0a2102d1281
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
A llvm/test/Transforms/LoopVectorize/uncountable-single-exit-loops.ll
Log Message:
-----------
[LV] Add test showing debug output for loops with uncountable BTCs.
Currently we print an early-exit related related debug message, even
though there's no early exit.
Commit: 29b5c18e466cea867e9e785e650d9ec2e5c295b9
https://github.com/llvm/llvm-project/commit/29b5c18e466cea867e9e785e650d9ec2e5c295b9
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXSubtarget.cpp
M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/lib/Target/NVPTX/NVVMReflect.cpp
M llvm/test/CodeGen/NVPTX/nvvm-reflect-arch.ll
M llvm/test/CodeGen/NVPTX/nvvm-reflect-ocl.ll
M llvm/test/CodeGen/NVPTX/nvvm-reflect-opaque.ll
M llvm/test/CodeGen/NVPTX/nvvm-reflect.ll
Log Message:
-----------
[NVPTX] Do not run the NVVMReflect pass as part of the normal pipeline (#121834)
Summary:
This pass lowers the `__nvvm_reflect` builtin in the IR. However, this
currently runs in the standard optimization pipeline, not just the
backend pipeline. This means that if the user creates LLVM-IR without an
architecture set, it will always delete the reflect code even if it is
intended to be used later.
Pushing this into the backend pipeline will ensure that this works as
intended, allowing users to conditionally include code depending on
which target architecture the user ended up using. This fixes a bug in
OpenMP and missing code in `libc`.
Commit: 2ab447ad6983fb9f22f2fea480f3857522750860
https://github.com/llvm/llvm-project/commit/2ab447ad6983fb9f22f2fea480f3857522750860
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/include/llvm/Transforms/IPO/Attributor.h
Log Message:
-----------
Fix dangling IPOAmendableCB function_ref. (#120698)
The `IPOAmendableCB`'s type is `llvm::function_ref`, it is error-prone
to write code (e.g.
https://github.com/llvm/llvm-project/blob/5656cbca52545e608f6fb8b7c9a778c7c9b4b468/llvm/lib/Transforms/IPO/OpenMPOpt.cpp#L5812)
that assign a temporary lambda to an `IPOAmendableCB` object, which is a
use-after-free issue.
This patch changes the `IPOAmendableCB` to `std::function`, to avoid the
dangling issue.
Commit: e7a83fc74db78445c36a27f113e9b045f90f699a
https://github.com/llvm/llvm-project/commit/e7a83fc74db78445c36a27f113e9b045f90f699a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVVMReflect.cpp
Log Message:
-----------
[NVPTX] Fix a warning
This patch fixes:
llvm/lib/Target/NVPTX/NVVMReflect.cpp:225:18: error: object backing
the pointer will be destroyed at the end of the full-expression
[-Werror,-Wdangling-gsl]
Commit: 56936ec63dcc03f64c129ee45716431e56e5d3d1
https://github.com/llvm/llvm-project/commit/56936ec63dcc03f64c129ee45716431e56e5d3d1
Author: Sad Al Abdullah <siam9090 at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M lldb/source/Plugins/Platform/Android/PlatformAndroidRemoteGDBServer.cpp
Log Message:
-----------
Fixing FindUnusedPort method tcp_socket object creation with proper constructor parameter (#121879)
### Issue:
Currently lldb `platform connect unix-connect://localhost:43045/` is
failing and showing "Failed to connect port" error message.

### Cause:
TCPSocket(bool should_close, bool child_processes_inherit) constructor
was removed in commit
[c1dff71](https://github.com/llvm/llvm-project/commit/c1dff7152592f1beee9059ee8e2cb3cc68baea4d#diff-91817651b505a466ea94ddc44eca856f62073e03b05d0d0d2f4a55dcfea0002eL20).
However, the tcp_socket object creation still passes the deleted
constructor parameters, which causes the invocation of the wrong
constructor. As a result, the `FindUnusedPort` method is unable to
resolve the local port and always returns 0.
Commit: 75325c658e1f2dc81557cf4db9206310ae90c27f
https://github.com/llvm/llvm-project/commit/75325c658e1f2dc81557cf4db9206310ae90c27f
Author: thetruestblue <bblueconway at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M compiler-rt/cmake/base-config-ix.cmake
Log Message:
-----------
[Darwin][CompilerRT] Set compiler ID to 'Clang' for Compiler RT Tests for Apple Clang (#121858)
This patch restores previous behavior. Even when the Compiler ID is set
to AppleClang, we expect Compiler RT Tests to use Clang as the compiler
ID. This impacts various make and lit commands.
Caused by: https://github.com/llvm/llvm-project/pull/117812/files
rdar://141548700
Commit: 3b19e787fc5da27dfcc9ac6552b06a763f12ea03
https://github.com/llvm/llvm-project/commit/3b19e787fc5da27dfcc9ac6552b06a763f12ea03
Author: Prabhuk <prabhukr at google.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M libc/config/baremetal/config.json
Log Message:
-----------
[libc] Keep framepointers for baremetal (#121836)
Keep framepointers enabled by default for the default baremetal libc
builds.
Frame pointers help unwind the stack and unwinding without frame pointer
is complex and increaseis the code size. This code size increase is
potentially larger than the savings achieved by disabling frame
pointers. Retaining the original behavior of retaining frame pointers as
the default behavior.
Commit: 0eaa69eb234798774a08743b64a9aa0cf71c5356
https://github.com/llvm/llvm-project/commit/0eaa69eb234798774a08743b64a9aa0cf71c5356
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll
Log Message:
-----------
[VPlan] Handle VPExpandSCEVRecipe in isUniformAfterVectorization.
VPExpandSCEVRecipes must be placed in the entry and are alway uniform.
This fixes a crash by always identifying them as uniform, even if the
main vector loop region has been removed.
Fixes https://github.com/llvm/llvm-project/issues/121897.
Commit: 858f025a00fd107e9b8f97b630028d40c0c68725
https://github.com/llvm/llvm-project/commit/858f025a00fd107e9b8f97b630028d40c0c68725
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M .github/workflows/pr-code-format.yml
Log Message:
-----------
[ci] Bump the version of clang-format used in the CI (#119915)
The version of clang-format we use in the CI to format all PRs is a bit
outdated, leading to some confusion when the CI job produces different
output from what people have locally.
Commit: 71e9a48227a0599130b2f9ed090366bb973c57e5
https://github.com/llvm/llvm-project/commit/71e9a48227a0599130b2f9ed090366bb973c57e5
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M libcxx/include/__vector/vector_bool.h
A libcxx/test/std/containers/sequences/vector.bool/at.pass.cpp
A libcxx/test/std/containers/sequences/vector.bool/at_const.pass.cpp
Log Message:
-----------
[libc++] Mark vector<bool>::at() as constexpr to conform to C++20 standard (#121848)
Closes #121844.
Commit: 841895543edcf98bd16027c6b85fe7c6419a4566
https://github.com/llvm/llvm-project/commit/841895543edcf98bd16027c6b85fe7c6419a4566
Author: Petr Hosek <phosek at google.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M libcxx/src/include/overridable_function.h
M libcxx/src/new.cpp
M libcxxabi/src/stdlib_new_delete.cpp
Log Message:
-----------
[libcxx] Use alias for detecting overriden function (#120805)
This mechanism is preferable in environments like embedded since it
doesn't require special handling of the custom section.
This is a reland of https://github.com/llvm/llvm-project/pull/114961
which addresses the issue reported by downstream users. Specifically,
the two differences from the previous version are:
* The internal `symbol##_impl__` symbol in the Mach-O implementation is
annotated with `__attribute__((used))` to prevent LTO from deleting it
which we've seen in the previous version.
* `__is_function_overridden` is marked as `inline` so these symbols are
placed in a COMDAT (or fully inlined) to avoid duplicate symbol errors
which we've seen in the previous version.
Commit: 9612175f22146505ea871e4f60a5d701b45ffeeb
https://github.com/llvm/llvm-project/commit/9612175f22146505ea871e4f60a5d701b45ffeeb
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M libcxx/docs/Hardening.rst
Log Message:
-----------
[libc++][NFC] Remove stray backtick in documentation
Commit: 1855333e3a843174c0d7421d4c5e404649f6b75a
https://github.com/llvm/llvm-project/commit/1855333e3a843174c0d7421d4c5e404649f6b75a
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M libcxx/docs/Hardening.rst
Log Message:
-----------
[libc++] Fix documentation for setting hardening ABI macros (#121946)
The documentation was misleading, suggesting that people could simply
define these macros, when in reality they must be passed at CMake
configuration time in a very specific way.
This was reported in #https://github.com/bitcoin/bitcoin/pull/31612.
Commit: 287a17de15d87b0d56e25841d2226f65a1973883
https://github.com/llvm/llvm-project/commit/287a17de15d87b0d56e25841d2226f65a1973883
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dependency for 0d9cf2671e06c9124a0b5fc753330c39c8b4a791
Commit: 0bfee00034ce56bd7d11e4460ffb0fc6612b7cc9
https://github.com/llvm/llvm-project/commit/0bfee00034ce56bd7d11e4460ffb0fc6612b7cc9
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[bazel] Port afa8aeeeec9a897a35ba5c8afc024d9b10504db1
Commit: 2015c0a405ddb1e54d8b1494fcc06fdbf2fa2265
https://github.com/llvm/llvm-project/commit/2015c0a405ddb1e54d8b1494fcc06fdbf2fa2265
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SystemOperands.td
M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
Log Message:
-----------
[AArch64] Remove unused AltName field from PHint GenericTable. NFC
Commit: c6f67b8e39a907fb96b715cae3ee90e4c1b248aa
https://github.com/llvm/llvm-project/commit/c6f67b8e39a907fb96b715cae3ee90e4c1b248aa
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M mlir/lib/Dialect/Affine/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/test/Dialect/Affine/value-bounds-op-interface-impl.mlir
Log Message:
-----------
[mlir][affine] Add ValueBoundsOpInterface to [de]linearize_index (#121833)
Since a need for it came up dowstream (in proving that loops run at
least once), this commit implements the ValueBoundsOpInterface for
affine.delinearize_index and affine.linearize_index, using affine map
representations of the operations they perform.
These implementations also use information from outer bounds to impose
additional constraints when those are available.
Commit: 36e4176f1d83d04cdebb4e1870561099b2478d80
https://github.com/llvm/llvm-project/commit/36e4176f1d83d04cdebb4e1870561099b2478d80
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/bitreverse-vp.ll
M llvm/test/CodeGen/RISCV/rvv/bswap-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vand-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vandn-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vdiv-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vdivu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
A llvm/test/CodeGen/RISCV/rvv/vlopt-volatile-ld.mir
M llvm/test/CodeGen/RISCV/rvv/vmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmaxu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vminu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmul-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vnmsac-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vor-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vrem-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vremu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vrsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsaddu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vssub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vssubu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vxor-vp.ll
Log Message:
-----------
[RISCV][VLOPT] Add strided, unit strided, and indexed loads to isSupported (#121705)
Add to getOperandInfo too since that is needed to reduce the VL.
Commit: b22551373cbde6392929325a33694f572b4fd016
https://github.com/llvm/llvm-project/commit/b22551373cbde6392929325a33694f572b4fd016
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/div.s
Log Message:
-----------
[RISCV] Add missing SiFive P400 scheduling model test for divisions. NFC
Add the missing scheduling model test for scalar divisions.
NFC.
Commit: 142787d3687eb58633c7c55a7a9f328ba4504986
https://github.com/llvm/llvm-project/commit/142787d3687eb58633c7c55a7a9f328ba4504986
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-formation.ll
M llvm/test/CodeGen/RISCV/rvv/fold-binary-reduce.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
Log Message:
-----------
[RISCV][VLOPT] Add support for checkUsers when UserMI is a Single-Width Integer Reduction (#120345)
Reductions are weird because for some operands, they are vector
registers but only read the first lane. For these operands, we do not
need to check to make sure the EEW and EMUL ratios match. The EEWs,
however, do need to match.
Commit: 90d79ca4c769ac3e28ec4b60dd82e6a5bb5e0aae
https://github.com/llvm/llvm-project/commit/90d79ca4c769ac3e28ec4b60dd82e6a5bb5e0aae
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedSiFiveP400.td
A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/mul-cpop.s
Log Message:
-----------
[RISCV] Update the latencies of MUL and CPOP in SiFive P400 scheduling model (#122007)
According to llvm-exegesis, they should have around 2 cycles of latency
on P400 cores.
Commit: 2359635457b1f2c6f2c5d33ca84d0fda7729a19d
https://github.com/llvm/llvm-project/commit/2359635457b1f2c6f2c5d33ca84d0fda7729a19d
Author: Tom Stellard <tstellar at redhat.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M .github/workflows/commit-access-review.py
Log Message:
-----------
workflows/commit-access-review: Exclude users who have recently requested access (#119102)
Now that we are accepting commit access requests via GitHub issues, we
can keep track of who has recently requested access.
Commit: 4c4364869c490600b4e33606d481fb27b438d090
https://github.com/llvm/llvm-project/commit/4c4364869c490600b4e33606d481fb27b438d090
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
Log Message:
-----------
[RISCV][VLOpt] Kill all uses of and remove twoTimesVLMUL [NFC] (#122003)
Case analysis:
* EEW=SEW*2, getEMULEqualsEEWDivSEWTimesLMUL(EEW) returns 2 x VLMUL
* EEW=SEW, getEMULEqualsEEWDivSEWTimesLMUL(EEW) returns VLMUL
Commit: 6ad0dcf67f5dccdf8506ce5f51d793062a1c6879
https://github.com/llvm/llvm-project/commit/6ad0dcf67f5dccdf8506ce5f51d793062a1c6879
Author: Roland McGrath <mcgrathr at google.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M libc/cmake/modules/LLVMLibCHeaderRules.cmake
M libc/include/CMakeLists.txt
M libc/include/arpa/inet.yaml
M libc/include/assert.yaml
M libc/include/complex.yaml
M libc/include/ctype.yaml
M libc/include/dirent.yaml
M libc/include/dlfcn.yaml
M libc/include/elf.yaml
M libc/include/errno.yaml
M libc/include/fcntl.yaml
M libc/include/features.yaml
M libc/include/fenv.yaml
M libc/include/float.yaml
M libc/include/inttypes.yaml
M libc/include/limits.yaml
M libc/include/link.yaml
M libc/include/locale.yaml
M libc/include/malloc.yaml
M libc/include/math.yaml
M libc/include/pthread.yaml
M libc/include/sched.yaml
M libc/include/search.yaml
M libc/include/setjmp.yaml
M libc/include/signal.yaml
M libc/include/spawn.yaml
M libc/include/stdbit.yaml
M libc/include/stdckdint.yaml
M libc/include/stdfix.yaml
M libc/include/stdint.yaml
M libc/include/stdio.yaml
M libc/include/stdlib.yaml
M libc/include/string.yaml
M libc/include/strings.yaml
M libc/include/sys/auxv.yaml
M libc/include/sys/epoll.yaml
M libc/include/sys/ioctl.yaml
M libc/include/sys/mman.yaml
M libc/include/sys/prctl.yaml
M libc/include/sys/random.yaml
M libc/include/sys/resource.yaml
M libc/include/sys/select.yaml
M libc/include/sys/sendfile.yaml
M libc/include/sys/socket.yaml
M libc/include/sys/stat.yaml
M libc/include/sys/statvfs.yaml
M libc/include/sys/syscall.yaml
M libc/include/sys/time.yaml
M libc/include/sys/types.yaml
M libc/include/sys/utsname.yaml
M libc/include/sys/wait.yaml
M libc/include/termios.yaml
M libc/include/threads.yaml
M libc/include/time.yaml
M libc/include/uchar.yaml
M libc/include/unistd.yaml
M libc/include/wchar.yaml
M libc/utils/hdrgen/header.py
A libc/utils/hdrgen/main.py
M libc/utils/hdrgen/tests/input/test_small.yaml
M libc/utils/hdrgen/tests/test_integration.py
M libc/utils/hdrgen/yaml_to_classes.py
Log Message:
-----------
[libc] Revamp hdrgen command line and build integration (#121522)
This adds a new main command-line entry point for hdrgen, in the
new main.py. This new interface is used for generating a header.
The old ways of invoking yaml_to_classes.py for other purposes
are left there for now, but `--e` is renamed to `--entry-point`
for consistency with the new CLI.
The YAML schema is expanded with the `header_template` key where
the corresponding `.h.def` file's path is given relative to where
the YAML file is found. The build integration no longer gives
the `.h.def` path on the command line. Instead, the script now
emits a depfile that's used by the cmake rules to track that.
The output file is always explicit in the script command line
rather than sometimes being derived from a directory path.
Commit: 94c0db06ab8cf0897ff32884ea6f683f5fc5a7b9
https://github.com/llvm/llvm-project/commit/94c0db06ab8cf0897ff32884ea6f683f5fc5a7b9
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/test/utils/update_cc_test_checks/Inputs/basic-cplusplus.cpp
M clang/test/utils/update_cc_test_checks/Inputs/basic-cplusplus.cpp.expected
A clang/test/utils/update_cc_test_checks/Inputs/c-symbol-mangling.c
A clang/test/utils/update_cc_test_checks/Inputs/c-symbol-mangling.c.expected
A clang/test/utils/update_cc_test_checks/c-symbol-mangling.test
Log Message:
-----------
[update_cc_test_checks] Add test for missing handling of mangled names
We are missing MSVC C++ functions since the name is quoted in the LLVM IR,
so we don't find them in the generated IR and therefore don't add the test
checks. Additionally, there is an issue with finding functions using NEON
types (see https://github.com/llvm/llvm-project/pull/121800).
Pull Request: https://github.com/llvm/llvm-project/pull/121976
Commit: ca3fd633691b20d780fa3a54b22abc09860e59d9
https://github.com/llvm/llvm-project/commit/ca3fd633691b20d780fa3a54b22abc09860e59d9
Author: Michael Jones <michaelrj at google.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M libc/utils/hdrgen/README.rst
Log Message:
-----------
[libc] clean up the hdrgen docs a bit (#121974)
Since the files have been reorganized, the readme is out of date. This
patch updates it to be more accurate.
Commit: 45d46983bf7bda53bd7ee8e36a47571b3980fbd7
https://github.com/llvm/llvm-project/commit/45d46983bf7bda53bd7ee8e36a47571b3980fbd7
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
M llvm/test/CodeGen/NVPTX/bf16x2-instructions.ll
A llvm/test/CodeGen/NVPTX/fabs-fneg-free.ll
Log Message:
-----------
[NVPTX] designate fabs and fneg as free (#121513)
Commit: b8ad6fb0665b41f9f30807d895868f610d9361e7
https://github.com/llvm/llvm-project/commit/b8ad6fb0665b41f9f30807d895868f610d9361e7
Author: Teresa Johnson <tejohnson at google.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
A llvm/test/ThinLTO/X86/memprof-recursive.ll
A llvm/test/Transforms/MemProfContextDisambiguation/recursive.ll
Log Message:
-----------
[MemProf] Allow cloning of callsites in recursive cycles (#121985)
Optionally (by default) no longer mark callsite nodes as Recursive,
which means they would be automatically skipped during cloning. This was
too conservative as it prevents cloning of any callsite that showed up
in any recursive cycle, even for non-recursive contexts.
While this will enable partial cloning of recursive contexts, the
recursive calls themselves will not be updated to call the correct
clone, possibly leading to some unnecessary but benign cloning and
affecting bytes hinted reporting. To prevent this, optional support
looks for recursive cycles in contexts during cloning and removes
those contexts from cloning. This requires some additional runtime
overhead, so is disabled by default for now.
Support for correct cloning of recursive cycles is WIP.
Commit: c4387583ff79beb98ea9738469219345c13dc0d5
https://github.com/llvm/llvm-project/commit/c4387583ff79beb98ea9738469219345c13dc0d5
Author: offsake <sergey.i.zverev at intel.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Scheduler.h
Log Message:
-----------
[NFC][SandboxVectorizer] Disable default copy CTOR/assigment for SchedBundle. (#121846)
Explicitly disable copy CTOR/assigment for SchedBundle to avoid
acsidentional
usage of default versions that do not handle Nodes copies properly.
A developer will need to implement them once required.
Commit: 9184c42869b87a59839cafdb8a3679e7ec2faeb1
https://github.com/llvm/llvm-project/commit/9184c42869b87a59839cafdb8a3679e7ec2faeb1
Author: Vyacheslav Klochkov <vyacheslav.n.klochkov at intel.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp
A llvm/test/Transforms/LoadStoreVectorizer/X86/massive_indirection.ll
Log Message:
-----------
[LoadStoreVectorizer] Postprocess and merge equivalence classes (#121861)
This patch introduces a new method:
void Vectorizer::mergeEquivalenceClasses(EquivalenceClassMap &EQClasses)
const;
The method is called at the end of
Vectorizer::collectEquivalenceClasses() and is needed to merge
equivalence classes that differ only by their underlying objects (UO1
and UO2), where UO1 is 1-level-indirection underlying base for UO2. This
situation arises due to the limited lookup depth used during the search
of underlying bases with llvm::getUnderlyingObject(ptr).
Using any fixed lookup depth can result into creation of multiple
equivalence classes that only differ by 1-level indirection bases.
The new approach merges equivalence classes if they have adjacent bases
(1-level indirection). If a series of equivalence classes form ladder
formed of 1-step/level indirections, they are all merged into a single
equivalence class. This provides more opportunities for the load-store
vectorizer to generate better vectors.
---------
Signed-off-by: Klochkov, Vyacheslav N <vyacheslav.n.klochkov at intel.com>
Commit: 30ba8be22eb0e3f771624f6f47229129cf74e976
https://github.com/llvm/llvm-project/commit/30ba8be22eb0e3f771624f6f47229129cf74e976
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang-tools-extra/clangd/HeuristicResolver.h
M clang-tools-extra/clangd/unittests/CMakeLists.txt
A clang-tools-extra/clangd/unittests/HeuristicResolverTests.cpp
Log Message:
-----------
[clangd] Add a unit test suite for HeuristicResolver (#121313)
Fixes https://github.com/clangd/clangd/issues/2154
Commit: db408acc0498a8e5ece91b8d745e3cc412542398
https://github.com/llvm/llvm-project/commit/db408acc0498a8e5ece91b8d745e3cc412542398
Author: Volodymyr Sapsai <vsapsai at apple.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/include/module.modulemap
M llvm/include/module.modulemap
Log Message:
-----------
[Modules] Fix modular build. (#122034)
Add a new file to the module map and remove 2 missing files (migrated
from .def to .td).
Commit: 4583f6d3443c8dc6605c868724e3743161954210
https://github.com/llvm/llvm-project/commit/4583f6d3443c8dc6605c868724e3743161954210
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/lib/CodeGen/Targets/NVPTX.cpp
M clang/test/CodeGen/nvptx_attributes.c
M clang/test/CodeGenCUDA/device-fun-linkage.cu
M clang/test/CodeGenCUDA/grid-constant.cu
M clang/test/CodeGenCUDA/offload_via_llvm.cu
M clang/test/CodeGenCUDA/ptx-kernels.cu
M clang/test/CodeGenCUDA/usual-deallocators.cu
M clang/test/CodeGenOpenCL/ptx-calls.cl
M clang/test/CodeGenOpenCL/ptx-kernels.cl
M clang/test/CodeGenOpenCL/reflect.cl
M clang/test/Headers/gpuintrin.c
M llvm/lib/Target/NVPTX/NVPTXCtorDtorLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
M llvm/test/Analysis/UniformityAnalysis/NVPTX/daorder.ll
M llvm/test/Analysis/UniformityAnalysis/NVPTX/diverge.ll
M llvm/test/Analysis/UniformityAnalysis/NVPTX/hidden_diverge.ll
M llvm/test/Analysis/UniformityAnalysis/NVPTX/irreducible.ll
M llvm/test/CodeGen/NVPTX/b52037.ll
M llvm/test/CodeGen/NVPTX/bug21465.ll
M llvm/test/CodeGen/NVPTX/bug22322.ll
M llvm/test/CodeGen/NVPTX/bug26185.ll
M llvm/test/CodeGen/NVPTX/call-with-alloca-buffer.ll
M llvm/test/CodeGen/NVPTX/cluster-dim.ll
M llvm/test/CodeGen/NVPTX/generic-to-nvvm.ll
M llvm/test/CodeGen/NVPTX/i1-array-global.ll
M llvm/test/CodeGen/NVPTX/i1-ext-load.ll
M llvm/test/CodeGen/NVPTX/i1-global.ll
M llvm/test/CodeGen/NVPTX/i1-param.ll
M llvm/test/CodeGen/NVPTX/intr-range.ll
M llvm/test/CodeGen/NVPTX/kernel-param-align.ll
M llvm/test/CodeGen/NVPTX/load-with-non-coherent-cache.ll
M llvm/test/CodeGen/NVPTX/local-stack-frame.ll
M llvm/test/CodeGen/NVPTX/lower-alloca.ll
M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
M llvm/test/CodeGen/NVPTX/lower-args.ll
M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
M llvm/test/CodeGen/NVPTX/lower-ctor-dtor.ll
M llvm/test/CodeGen/NVPTX/lower-kernel-ptr-arg.ll
M llvm/test/CodeGen/NVPTX/maxclusterrank.ll
M llvm/test/CodeGen/NVPTX/noduplicate-syncthreads.ll
M llvm/test/CodeGen/NVPTX/noreturn.ll
M llvm/test/CodeGen/NVPTX/nvcl-param-align.ll
M llvm/test/CodeGen/NVPTX/refl1.ll
M llvm/test/CodeGen/NVPTX/reg-copy.ll
M llvm/test/CodeGen/NVPTX/simple-call.ll
M llvm/test/CodeGen/NVPTX/surf-read-cuda.ll
M llvm/test/CodeGen/NVPTX/surf-read.ll
M llvm/test/CodeGen/NVPTX/surf-tex.py
M llvm/test/CodeGen/NVPTX/surf-write-cuda.ll
M llvm/test/CodeGen/NVPTX/surf-write.ll
M llvm/test/CodeGen/NVPTX/tex-read-cuda.ll
M llvm/test/CodeGen/NVPTX/tex-read.ll
M llvm/test/CodeGen/NVPTX/unreachable.ll
M llvm/test/DebugInfo/NVPTX/debug-addr-class.ll
M llvm/test/DebugInfo/NVPTX/debug-info.ll
M llvm/test/Transforms/LoopStrengthReduce/NVPTX/trunc.ll
M llvm/test/Transforms/StraightLineStrengthReduce/NVPTX/speculative-slsr.ll
M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/nvvmir.mlir
Log Message:
-----------
[NVPTX] Switch front-ends and tests to ptx_kernel cc (#120806)
the `ptx_kernel` calling convention is a more idiomatic and standard way
of specifying a NVPTX kernel than using the metadata which is not
supposed to change the meaning of the program. Further, checking the
calling convention is significantly faster than traversing the metadata,
improving compile time.
This change updates the clang and mlir frontends as well as the
NVPTXCtorDtorLowering pass to emit kernels using the calling convention.
In addition, this updates all NVPTX unit tests to use the calling
convention as well.
Commit: dde5546b79f784ab71cac325e0a0698c67c4dcde
https://github.com/llvm/llvm-project/commit/dde5546b79f784ab71cac325e0a0698c67c4dcde
Author: Luke Quinn <quic_lquinn at quicinc.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/test/CodeGen/RISCV/GlobalISel/add-imm.ll
M llvm/test/CodeGen/RISCV/GlobalISel/alu-roundtrip.ll
M llvm/test/CodeGen/RISCV/GlobalISel/combine.ll
M llvm/test/CodeGen/RISCV/GlobalISel/freeze.ll
M llvm/test/CodeGen/RISCV/GlobalISel/iabs.ll
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-add-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-addo-subo-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-const-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ext-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rotate-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-sat-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-sub-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbb.ll
M llvm/test/CodeGen/RISCV/GlobalISel/scmp.ll
M llvm/test/CodeGen/RISCV/GlobalISel/ucmp.ll
Log Message:
-----------
[RISCV] GISel custom lowering for G_ADD/G_SUB (#121587)
Custom lowering for s32 G_ADD/SUB to help match selection dag better.
Specifically for RV64 a s32 is produced as a add+sext the output this
allows for fewer instructions to sign extend a couple patterns. Allows
for the generation of addiw,subw,negw to reduce required instructions to
load values quicker
Log2_ceil_i32 in rvzbb.ll shows a more obvious improvement case.
Commit: bfb0a518e73623732c6567916d066df817e0cb0c
https://github.com/llvm/llvm-project/commit/bfb0a518e73623732c6567916d066df817e0cb0c
Author: Lang Hames <lhames at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/Core.cpp
M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_data_alignment.s
M llvm/test/ExecutionEngine/JITLink/AArch64/ELF_ehframe.s
M llvm/test/ExecutionEngine/JITLink/AArch64/MachO_compact_unwind.s
M llvm/test/ExecutionEngine/JITLink/AArch64/MachO_ehframe.s
M llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch64_ehframe.s
M llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call.s
M llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call_rvc.s
M llvm/test/ExecutionEngine/JITLink/RISCV/anonymous_symbol.s
M llvm/test/ExecutionEngine/JITLink/ppc64/ELF_ppc64_ehframe.s
M llvm/test/ExecutionEngine/JITLink/ppc64/external_weak.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_abs.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_any.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_associative.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_exact_match.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_intervene.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_largest.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_noduplicate.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_offset.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_same_size.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_weak.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_common_symbol.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_duplicate_externals.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_file_debug.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_static_var.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_weak_external.s
M llvm/test/ExecutionEngine/JITLink/x86-64/ELF_debug_section_lifetime_is_NoAlloc.yaml
M llvm/test/ExecutionEngine/JITLink/x86-64/ELF_ehframe_basic.s
M llvm/test/ExecutionEngine/JITLink/x86-64/ELF_ehframe_large_static_personality_encodings.s
M llvm/test/ExecutionEngine/JITLink/x86-64/LocalDependencyPropagation.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO-check-dwarf-filename.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO_compact_unwind.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO_cstring_section_alignment.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO_cstring_section_splitting.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO_non_subsections_via_symbols.s
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
Log Message:
-----------
[llvm-jitlink] Use -num-threads=0 for regression tests relying on debug output.
ORC and JITLink debugging output write the dbgs() raw_ostream, which isn't
thread-safe. Use -num-threads=0 to force single-threaded linking for tests that
produce debugging output.
The llvm-jitlink tool is updated to suggest -num-threads=0 when debugging
output is enabled.
Commit: b253a80f54fab085322bd856ba7f88c4773f0774
https://github.com/llvm/llvm-project/commit/b253a80f54fab085322bd856ba7f88c4773f0774
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
Log Message:
-----------
[RISCV][VLOPT] Add mask load to isSupported and getOperandInfo (#122030)
Add mask store to getOperandInfo since it has the same behavior.
Commit: 2a1632824df7eaaebfe9d0d1bee349cb5c76e834
https://github.com/llvm/llvm-project/commit/2a1632824df7eaaebfe9d0d1bee349cb5c76e834
Author: Mingjie Xu <xumingjie.enna1 at bytedance.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
M llvm/include/llvm/Transforms/Instrumentation/TypeSanitizer.h
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/Instrumentation/TypeSanitizer.cpp
M llvm/test/Instrumentation/TypeSanitizer/access-with-offset.ll
M llvm/test/Instrumentation/TypeSanitizer/alloca-only.ll
M llvm/test/Instrumentation/TypeSanitizer/alloca.ll
M llvm/test/Instrumentation/TypeSanitizer/anon.ll
M llvm/test/Instrumentation/TypeSanitizer/basic-nosan.ll
M llvm/test/Instrumentation/TypeSanitizer/basic.ll
M llvm/test/Instrumentation/TypeSanitizer/byval.ll
M llvm/test/Instrumentation/TypeSanitizer/globals.ll
M llvm/test/Instrumentation/TypeSanitizer/invalid-metadata.ll
M llvm/test/Instrumentation/TypeSanitizer/memintrinsics.ll
M llvm/test/Instrumentation/TypeSanitizer/nosanitize.ll
M llvm/test/Instrumentation/TypeSanitizer/sanitize-no-tbaa.ll
M llvm/test/Instrumentation/TypeSanitizer/swifterror.ll
Log Message:
-----------
[tysan] Convert TySan from function+module pass to just module pass (#120667)
As mentioned in https://github.com/llvm/llvm-project/pull/118989, all
sanitizers but tsan are converted to just module pass for easier
maintenance.
This patch removes the TySan function pass, convert TySan from
function+module pass to just module pass.
Commit: 9020d193e6ef03e8070ac44078c5d8d9e86c4f2a
https://github.com/llvm/llvm-project/commit/9020d193e6ef03e8070ac44078c5d8d9e86c4f2a
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/GlobalISel/combine-neg-abs.ll
Log Message:
-----------
[RISCV][GISel] Re-generate combine-neg-abs.ll to fix build bot failure. NFC
Test was added while #121587 was in review.
Commit: b4ae4192989f97503626748421f32745897941ba
https://github.com/llvm/llvm-project/commit/b4ae4192989f97503626748421f32745897941ba
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/lib/AST/ParentMap.cpp
Log Message:
-----------
[clang] [NFC] explicitly check if ParentMap contains key (#121736)
The implementation of ParentMap assumes that the key is absent if it is
mapped to nullptr. This breaks when trying to store a tuple as the value
type. Remove this assumption by explicit uses of `try_emplace()`.
Commit: 162814a7ec00e2c89693f96568b72956d1bf2f0f
https://github.com/llvm/llvm-project/commit/162814a7ec00e2c89693f96568b72956d1bf2f0f
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M lld/MachO/ConcatOutputSection.h
M lld/MachO/MapFile.cpp
M lld/MachO/OutputSection.h
M lld/test/MachO/arm64-thunks.s
Log Message:
-----------
[lld-macho] Include branch extension thunks in linker map (#120496)
This patch extends the MachO linker's map file generation to include
branch extension thunk symbols. Previously, thunks were omitted from the
map file, making it difficult to understand the final layout of the
binary, especially when debugging issues related to long branch thunks.
This change ensures thunks are included and correctly interleaved with
other symbols based on their address, providing an accurate
representation of the linked output.
Commit: d6bfe10ac9963eb63e141d6c50e9a183c08d35da
https://github.com/llvm/llvm-project/commit/d6bfe10ac9963eb63e141d6c50e9a183c08d35da
Author: Ian Anderson <iana at apple.com>
Date: 2025-01-07 (Tue, 07 Jan 2025)
Changed paths:
M clang/lib/Basic/Targets/OSTargets.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Lex/InitHeaderSearch.cpp
A clang/test/Driver/Inputs/MacOSX15.1.sdk/embedded/usr/include/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/embedded/usr/local/include/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/usr/include/c++/v1/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/usr/local/include/.keep
A clang/test/Driver/darwin-embedded-search-paths.c
M clang/test/Preprocessor/macho-embedded-predefines.c
M llvm/include/llvm/TargetParser/Triple.h
Log Message:
-----------
[Darwin][Driver][clang] apple-none-macho orders the resource directory after internal-externc-isystem when nostdlibinc is used (#122035)
Embedded development often needs to use a different C standard library,
replacing the existing one normally passed as -internal-externc-isystem.
This works fine for an apple-macos target, but apple-none-macho doesn't
work because the MachO driver doesn't implement
AddClangSystemIncludeArgs to add the resource directory as
-internal-isystem like most other drivers do. Move most of the search
path logic from Darwin and DarwinClang down into an AppleMachO toolchain
between the MachO and Darwin toolchains.
Also define __MACH__ for apple-none-macho, as Swift expects all MachO
targets to have that defined.
Commit: 61b806f43b2d6b3673a8f91393a28c98521472a8
https://github.com/llvm/llvm-project/commit/61b806f43b2d6b3673a8f91393a28c98521472a8
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/lib/AST/ParentMap.cpp
Log Message:
-----------
[clang] assign the correct parent in update to ParentMap
This fixes a bug that slipped into #121736.
Commit: f0d5104c944b329c479802788571ed6df41e0e86
https://github.com/llvm/llvm-project/commit/f0d5104c944b329c479802788571ed6df41e0e86
Author: Luke Lau <luke at igalia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/blend-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/blend-any-of-reduction-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
M llvm/test/Transforms/LoopVectorize/X86/pr109581-unused-blend.ll
M llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.ll
M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
M llvm/test/Transforms/LoopVectorize/blend-in-header.ll
M llvm/test/Transforms/LoopVectorize/if-pred-stores.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization-2.ll
M llvm/test/Transforms/LoopVectorize/pr37248.ll
M llvm/test/Transforms/LoopVectorize/pr55167-fold-tail-live-out.ll
M llvm/test/Transforms/LoopVectorize/reduction-small-size.ll
M llvm/test/Transforms/LoopVectorize/select-cmp.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-switch.ll
M llvm/test/Transforms/LoopVectorize/uniform-blend.ll
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
Log Message:
-----------
[VPlan] Handle some VPInstructions in may{Read,Write}FromMemory (#120058)
This just copies the same conservative definition from mayWriteToMemory,
and enables more VPInstructions to be hoisted out in LICM.
I think this should give more accurate costs, and I was able to build
llvm-test-suite without the legacy-vplan cost model assertion going off.
Commit: f50f9698ad012882df8dd605f5482e280c138266
https://github.com/llvm/llvm-project/commit/f50f9698ad012882df8dd605f5482e280c138266
Author: Guray Ozen <guray.ozen at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl-hip.mlir
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl-opencl.mlir
M mlir/test/Conversion/GPUToSPIRV/printf.mlir
M mlir/test/Dialect/GPU/indirect-device-func-call.mlir
M mlir/test/Dialect/GPU/ops.mlir
M mlir/test/Dialect/GPU/test-nvvm-pipeline.mlir
M mlir/test/Integration/GPU/CUDA/assert.mlir
M mlir/test/Integration/GPU/CUDA/printf.mlir
M mlir/test/Integration/GPU/CUDA/sm90/cga_cluster.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_128x64_swizzle128b.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_64x64_swizzle128b.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_64x8_8x128_noswizzle.mlir
M mlir/test/Integration/GPU/CUDA/sm90/transform-dialect/tma_load_64x8_8x128_noswizzle-transform.mlir
M mlir/test/Integration/GPU/ROCM/printf.mlir
Log Message:
-----------
[MLIR][GPU] Fix gpu.printf (#121940)
Commit: de67ca12183787414869f8426a3bb65a6615e945
https://github.com/llvm/llvm-project/commit/de67ca12183787414869f8426a3bb65a6615e945
Author: Hubert Tong <hubert.reinterpretcast at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
Log Message:
-----------
Fix extra parenthesis in diagnostic (#122055)
Following https://github.com/llvm/llvm-project/pull/120380,
`err_pack_expansion_length_conflict` has one close paren too many.
Remove the extra parenthesis.
Commit: 457f30247319a18a95c29ba0ccfcc88beb1c3a44
https://github.com/llvm/llvm-project/commit/457f30247319a18a95c29ba0ccfcc88beb1c3a44
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/BUFInstructions.td
M llvm/lib/Target/AMDGPU/MIMGInstructions.td
M llvm/lib/Target/AMDGPU/SMInstructions.td
M llvm/test/MC/AMDGPU/gfx1030_err.s
M llvm/test/MC/AMDGPU/gfx10_asm_smem_err.s
M llvm/test/MC/AMDGPU/gfx11_asm_mimg_err.s
M llvm/test/MC/AMDGPU/gfx11_asm_smem_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_mimg_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_smem_err.s
Log Message:
-----------
[AMDGPU] Disallow null for more resource operands (#121941)
Following on from #115200, disallow the null sgpr as a resource operand
in some instructions that were missed.
Commit: a8dab1aa036f248d551f7839360eb03fac4b7d96
https://github.com/llvm/llvm-project/commit/a8dab1aa036f248d551f7839360eb03fac4b7d96
Author: David Green <david.green at arm.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/shuffle-extract.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-fadd.ll
Log Message:
-----------
[AArch64] Add a subvector extract cost. (#121472)
These can generally be emitted using an ext instruction or mov from the
high half. The half half extracts can be free depending on the users,
but that is not handled here, just the basic costs. It originally
included all subvector extracts, but that was toned-down to just
half-vector extracts to try and help the mid end not breakup high/low
extracts without having the SLP vectorizer create a mess using other
shuffles.
Commit: 49668d5efef19402effdad4d4d1d17732a1c6fdb
https://github.com/llvm/llvm-project/commit/49668d5efef19402effdad4d4d1d17732a1c6fdb
Author: Karthika Devi C <quic_kartc at quicinc.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M polly/include/polly/CodeGen/BlockGenerators.h
M polly/lib/CodeGen/BlockGenerators.cpp
M polly/lib/CodeGen/IslNodeBuilder.cpp
A polly/test/CodeGen/reggen_domtree_crash.ll
Log Message:
-----------
[Polly] Switch DT/LI in RegionGenerator for parallel subfn (#120413)
The patch #102460 already implements separate DT/LI/SE for parallel sub
function. Crashes have been reported while region generator tries using
oringinal function's DT while creating new parallel sub function due to
checks in #101198. This patch aims at fixing those cases by switching
the DT/LI while generating parallel function using Region Generator.
Fixes #117877
Commit: e7244d8659f1ee7b6dcf8fc90e33d81cda178f45
https://github.com/llvm/llvm-project/commit/e7244d8659f1ee7b6dcf8fc90e33d81cda178f45
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M bolt/lib/Core/CMakeLists.txt
M bolt/lib/Passes/CMakeLists.txt
M bolt/lib/Profile/CMakeLists.txt
M bolt/lib/Rewrite/CMakeLists.txt
M bolt/lib/RuntimeLibs/CMakeLists.txt
M bolt/lib/Target/AArch64/CMakeLists.txt
M bolt/lib/Target/RISCV/CMakeLists.txt
M bolt/lib/Target/X86/CMakeLists.txt
M bolt/lib/Utils/CMakeLists.txt
M llvm/cmake/modules/AddLLVM.cmake
Log Message:
-----------
[BOLT][CMake] Don't export bolt libraries in LLVMExports.cmake (#121936)
Bolt makes use of add_llvm_library and as such ends up exporting its
libraries from LLVMExports.cmake, which is not correct.
Bolt doesn't have its own exports file, and I assume that there is no
desire to have one either -- Bolt libraries are not intended to be
consumed as a cmake module, right?
As such, this PR adds a NO_EXPORT option to simplify exclude these
libraries from the exports file.
Commit: c1d01b2fc2932ca3ae6fb81a978f260298dbf343
https://github.com/llvm/llvm-project/commit/c1d01b2fc2932ca3ae6fb81a978f260298dbf343
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeConv2D.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeDepthwise.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeTransposeConv.cpp
M mlir/test/Conversion/TosaToTensor/tosa-to-tensor.mlir
M mlir/test/Dialect/Tosa/canonicalize.mlir
M mlir/test/Dialect/Tosa/invalid.mlir
M mlir/test/Dialect/Tosa/ops.mlir
M mlir/test/Dialect/Tosa/tosa-decompose-conv2d.mlir
M mlir/test/Dialect/Tosa/tosa-decompose-depthwise.mlir
M mlir/test/Dialect/Tosa/tosa-decompose-transpose-conv.mlir
M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
Log Message:
-----------
[mlir][tosa] Add missing verifier for `tosa.pad` (#120934)
This PR adds a missing verifier for `tosa.pad`, ensuring that the
padding shape matches [2*rank(shape1)] according to V1.0.0
Specification. Fixes #119840.
Commit: 366e62a0cb5d1c94d3b281f094755c4dd4c76df9
https://github.com/llvm/llvm-project/commit/366e62a0cb5d1c94d3b281f094755c4dd4c76df9
Author: abhishek-kaushik22 <abhishek.kaushik at intel.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
A llvm/test/CodeGen/X86/uint_to_half.ll
Log Message:
-----------
[X86] Combine `uitofp <v x i32> to <v x half>` (#121809)
Closes #121793
Commit: e5341784dbcc9e166827233a66fb54645204a43e
https://github.com/llvm/llvm-project/commit/e5341784dbcc9e166827233a66fb54645204a43e
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/Maintainers.md
Log Message:
-----------
[LLVM] Update inlining maintainers (#120579)
Update maintainers for inlining, and add section for NewPM/CGSCC.
Commit: 70ab81bc749d0ad67362e612dbb6429ed00a47ec
https://github.com/llvm/llvm-project/commit/70ab81bc749d0ad67362e612dbb6429ed00a47ec
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/test/MC/AArch64/armv9.6a-rme-gpc3.s
M llvm/test/MC/Disassembler/AArch64/armv9.6a-rme-gpc3.txt
Log Message:
-----------
[AArch64] Ensure APAS instruction passes register parameter (#121928)
In PR #112341, the `APAS` instruction was added as part of the Armv9.6-A
specification, but it didn't take the Xt register parameter. This change
fixes this.
Commit: b037bceef6a40c5c00c1f67cc5a334e2c4e5e041
https://github.com/llvm/llvm-project/commit/b037bceef6a40c5c00c1f67cc5a334e2c4e5e041
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/include/llvm/ADT/STLFunctionalExtras.h
Log Message:
-----------
Add LLVM_GSL_POINTER to llvm::function_ref. (#120699)
This can enable clang to detect dangling assignment issues, see #120698.
Commit: 32bc029be6265838833623fdd88cc665d5658dc7
https://github.com/llvm/llvm-project/commit/32bc029be6265838833623fdd88cc665d5658dc7
Author: David Green <david.green at arm.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
Log Message:
-----------
[AArch64] Fix signed comparison warning. NFC
Commit: 44e8ee73591bad22ae19748be825c4b66d7b3dde
https://github.com/llvm/llvm-project/commit/44e8ee73591bad22ae19748be825c4b66d7b3dde
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/docs/Extensions.md
Log Message:
-----------
[flang][doc] refine zero initialization extension documentation (#121956)
Following-up on [comments
](https://github.com/llvm/llvm-project/issues/62432#issuecomment-2555316522)
in the issue that motivated this extension.
Commit: 303249c4490a7777a744d9afd449b64ff1132a42
https://github.com/llvm/llvm-project/commit/303249c4490a7777a744d9afd449b64ff1132a42
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/StackArrays.cpp
M flang/test/Transforms/stack-arrays.fir
Log Message:
-----------
[flang][StackArrays] track pointers through fir.convert (#121919)
This does add a little computational complexity because now every
freemem operation has to be tested for every allocation. This could be
improved with some more memoisation but I think it is easier to read
this way. Let me know if you would prefer me to change this to
pre-compute the normalised addresses each freemem operation is using.
Weirdly, this change resulted in a verifier failure for the fir.declare
in the previous test case. Maybe it was previously removed as dead code
and now it isn't. Anyway I fixed that too.
Commit: 67efbd0bf1b2df8a479e09eb2be7db4c3c892f2c
https://github.com/llvm/llvm-project/commit/67efbd0bf1b2df8a479e09eb2be7db4c3c892f2c
Author: Ryan Mansfield <ryan_mansfield at apple.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/MIRSampleProfile.cpp
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
M llvm/lib/CodeGen/MachineBranchProbabilityInfo.cpp
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/lib/CodeGen/RegisterCoalescer.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
M llvm/lib/Transforms/IPO/SampleProfile.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/LowerAllowCheckPass.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Scalar/LoopVersioningLICM.cpp
M llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
Log Message:
-----------
[LLVM] Fix various cl::desc typos and whitespace issues (NFC) (#121955)
Commit: 360a03c980e3e96ac53746b118a04305a28a5310
https://github.com/llvm/llvm-project/commit/360a03c980e3e96ac53746b118a04305a28a5310
Author: Jack Frankland <jack.frankland at arm.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeTransposeConv.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir
M mlir/test/Dialect/Tosa/canonicalize.mlir
M mlir/test/Dialect/Tosa/invalid.mlir
M mlir/test/Dialect/Tosa/level_check.mlir
M mlir/test/Dialect/Tosa/ops.mlir
M mlir/test/Dialect/Tosa/quant-test.mlir
M mlir/test/Dialect/Tosa/tosa-decompose-conv2d.mlir
M mlir/test/Dialect/Tosa/tosa-decompose-depthwise.mlir
M mlir/test/Dialect/Tosa/tosa-decompose-transpose-conv.mlir
M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
M mlir/test/lib/Dialect/Tosa/TosaTestPasses.cpp
Log Message:
-----------
[mlir][tosa] Add acc_type to Tosa-v1.0 Conv Ops (#121466)
Tosa v1.0 adds accumulator type attributes to the various convolution
operations defined in the spec. Update the dialect and any lit tests to
include these attributes.
Signed-off-by: Tai Ly <tai.ly at arm.com>
Co-authored-by: Tai Ly <tai.ly at arm.com>
Commit: 30b7da72f2abef7cad4d1b38e141e7d2ef170d88
https://github.com/llvm/llvm-project/commit/30b7da72f2abef7cad4d1b38e141e7d2ef170d88
Author: Brad Smith <brad at comstyle.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M lldb/source/Host/openbsd/Host.cpp
Log Message:
-----------
[lldb][OpenBSD][NFC] Replace tab with spaces (#122041)
Commit: 20d7fa1cc33c72f68bd41fa616b2dab4a4967618
https://github.com/llvm/llvm-project/commit/20d7fa1cc33c72f68bd41fa616b2dab4a4967618
Author: gbMattN <146744444+gbMattN at users.noreply.github.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M compiler-rt/lib/tysan/tysan.cpp
M compiler-rt/lib/tysan/tysan_flags.inc
A compiler-rt/test/tysan/print_stacktrace.c
Log Message:
-----------
[TySan] Added a 'print_stacktrace' flag for more detailed errors (#121756)
Raised in issue #121697
Commit: bfa711a970d50c9101c8962609f9aad4f5395825
https://github.com/llvm/llvm-project/commit/bfa711a970d50c9101c8962609f9aad4f5395825
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
Log Message:
-----------
[InstCombine] Use combineMetadataForCSE in phi of loads fold
Use combineMetadataForCSE instead of manually enumerating known
metadata kinds. This is a typical sinking transform for which
combineMetadataForCSE is safe to use (with DoesKMove=true).
Part of https://github.com/llvm/llvm-project/issues/121495.
Commit: edf14ed6b182b9ae9efa0c854f3d4744bb67bf08
https://github.com/llvm/llvm-project/commit/edf14ed6b182b9ae9efa0c854f3d4744bb67bf08
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/test/SemaTemplate/concepts.cpp
Log Message:
-----------
[Clang] Don't form a type constraint if the concept is invalid (#122065)
After 0dedd6fe1 and 03229e7c0, invalid concept declarations might lack
expressions for evaluation and normalization. This could make it crash
in certain scenarios, apart from the one of evaluation concepts showed
in 03229e7c0, there's also an issue when checking specializations where
the normalization also relies on a non-null expression.
This patch prevents that by avoiding building up a type constraint in
such situations, thereafter the template parameter wouldn't have a
concept specialization of a null expression.
With this patch, the assumption in ASTWriterDecl is no longer valid.
Namely, HasConstraint and TypeConstraintInitialized must now represent
different meanings for both source fidelity and semantic requirements.
Fixes https://github.com/llvm/llvm-project/issues/115004
Fixes https://github.com/llvm/llvm-project/issues/121980
Commit: 9fc152d25ea1610efe2824c763e96e790d520910
https://github.com/llvm/llvm-project/commit/9fc152d25ea1610efe2824c763e96e790d520910
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/test/CodeGen/tbaa-pointers.c
Log Message:
-----------
[TBAA] Add Clang pointer TBAA test with void *.
Commit: 03e7862962d01a5605f1eeeb26626083584945ff
https://github.com/llvm/llvm-project/commit/03e7862962d01a5605f1eeeb26626083584945ff
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/include/llvm/Analysis/ValueTracking.h
M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
Log Message:
-----------
[ValueTracking] Move `getFlippedStrictnessPredicateAndConstant` into ValueTracking. NFC. (#122064)
Needed by https://github.com/llvm/llvm-project/pull/121958.
Commit: 7060d2a12b6da41ab0e3d86ff7fe1501e4f40769
https://github.com/llvm/llvm-project/commit/7060d2a12b6da41ab0e3d86ff7fe1501e4f40769
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/test/CodeGen/X86/codegen-prepare-addrmode-sext.ll
Log Message:
-----------
[CodeGenPrepare] Regenerate test `X86/codegen-prepare-addrmode-sext.ll` (#122101)
Needed by https://github.com/llvm/llvm-project/pull/71058
Commit: 1c067a513c757b731434fd793351c52b49628489
https://github.com/llvm/llvm-project/commit/1c067a513c757b731434fd793351c52b49628489
Author: William Moses <gh at wsmoses.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/test/Dialect/LLVMIR/roundtrip.mlir
M mlir/test/Target/LLVMIR/Import/metadata-alias-scopes.ll
M mlir/test/Target/LLVMIR/attribute-alias-scopes.mlir
Log Message:
-----------
[MLIR] Enable import of non self referential alias scopes (#121987)
Fixes #121965.
---------
Co-authored-by: Christian Ulmann <christianulmann at gmail.com>
Co-authored-by: Alex Zinenko <git at ozinenko.com>
Commit: 51d7605df9647f54d702df1f7d4029e95dce7156
https://github.com/llvm/llvm-project/commit/51d7605df9647f54d702df1f7d4029e95dce7156
Author: Hans Wennborg <hans at chromium.org>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-merged-funcs-dwarf.yaml
Log Message:
-----------
Fix macho-merged-funcs-dwarf.yaml test on Windows
Commit: 72b6a573639fe85eb121c66e47b2c9e6ea64df5e
https://github.com/llvm/llvm-project/commit/72b6a573639fe85eb121c66e47b2c9e6ea64df5e
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/UnusedLocalNonTrivialVariableCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-local-non-trivial-variable.rst
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-local-non-trivial-variable-name-independence.cpp
Log Message:
-----------
[clang-tidy] fix false positives when using name-independent variables after C++26 for bugprone-unused-local-non-trivial-variable (#121783)
Fixed: #121731
According to https://eel.is/c++draft/basic.scope.scope#5, name
independent declaration should not be warned as unused
Commit: 645c1ee8969cb79f6fad478944a1a6ccaa47aed6
https://github.com/llvm/llvm-project/commit/645c1ee8969cb79f6fad478944a1a6ccaa47aed6
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
A flang/test/Driver/fsave-main-program.f90
A flang/test/Lower/fsave-main-program.f90
Log Message:
-----------
[flang][driver] add option to make all main program variable static (#121968)
Co-authored-by: Kiran Chandramohan <kiranchandramohan at gmail.com>
Commit: 7004d6815b3a0c6d9c15a19b6927746a97564ba7
https://github.com/llvm/llvm-project/commit/7004d6815b3a0c6d9c15a19b6927746a97564ba7
Author: David CARLIER <devnexen at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
Log Message:
-----------
[compiler-rt][rtsan] adding setlinebuf/setbuffer interception. (#122018)
catering to platform differences as those calls are not posix.
Commit: d07762e47419a1ef892729a420d0c4769b6702a7
https://github.com/llvm/llvm-project/commit/d07762e47419a1ef892729a420d0c4769b6702a7
Author: Jessica Del <50999226+OutOfCache at users.noreply.github.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/test/tools/UpdateTestChecks/lit.local.cfg
M llvm/utils/UpdateTestChecks/common.py
Log Message:
-----------
[UpdateTestChecks][NFC] - Fix typos (#121964)
substition -> substitution
in-betweem -> in-between
Commit: 72a28a3bf0b539bcdfd8f41905675ce6a890c0ac
https://github.com/llvm/llvm-project/commit/72a28a3bf0b539bcdfd8f41905675ce6a890c0ac
Author: Jan Voung <jvoung at google.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/include/clang/Analysis/FlowSensitive/CachedConstAccessorsLattice.h
M clang/include/clang/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.h
M clang/include/clang/Analysis/FlowSensitive/SmartPointerAccessorCaching.h
M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
M clang/lib/Analysis/FlowSensitive/SmartPointerAccessorCaching.cpp
M clang/unittests/Analysis/FlowSensitive/CachedConstAccessorsLatticeTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
Log Message:
-----------
[clang][dataflow] Use smart pointer caching in unchecked optional accessor (#120249)
Part 2 (and final part) following
https://github.com/llvm/llvm-project/pull/120102
Allows users to do things like:
```
if (o->x.has_value()) {
((*o).x).value();
}
```
where the `->` and `*` are operator overload calls.
A user could instead extract the nested optional into a local variable
once instead of doing two accessor calls back to back, but currently
they are unsure why the code is flagged.
Commit: 81fc3add1e627c23b7270fe2739cdacc09063e54
https://github.com/llvm/llvm-project/commit/81fc3add1e627c23b7270fe2739cdacc09063e54
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/TooSmallLoopVariableCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/MultiwayPathsCoveredCheck.cpp
M clang-tools-extra/clangd/Hover.cpp
M clang/include/clang/AST/Decl.h
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/Randstruct.cpp
M clang/lib/AST/RecordLayoutBuilder.cpp
M clang/lib/CodeGen/ABIInfo.cpp
M clang/lib/CodeGen/ABIInfoImpl.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGNonTrivialStruct.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CGObjCRuntime.cpp
M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
M clang/lib/CodeGen/SwiftCallingConv.cpp
M clang/lib/CodeGen/Targets/LoongArch.cpp
M clang/lib/CodeGen/Targets/RISCV.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/CodeGen/Targets/XCore.cpp
M clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaDeclObjC.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
M clang/tools/libclang/CXType.cpp
M clang/unittests/AST/ASTImporterTest.cpp
Log Message:
-----------
[clang] Avoid re-evaluating field bitwidth (#117732)
Save the bitwidth value as a `ConstantExpr` with the value set. Remove
the `ASTContext` parameter from `getBitWidthValue()`, so the latter
simply returns the value from the `ConstantExpr` instead of
constant-evaluating the bitwidth expression every time it is called.
Commit: 35c5e56b6113b468b521c071ac141b4bb94da1d7
https://github.com/llvm/llvm-project/commit/35c5e56b6113b468b521c071ac141b4bb94da1d7
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang-tools-extra/include-cleaner/lib/Analysis.cpp
M clang/tools/driver/driver.cpp
M mlir/lib/Dialect/Affine/Utils/LoopUtils.cpp
M mlir/lib/Dialect/SCF/Utils/Utils.cpp
Log Message:
-----------
Clean up -Wdangling-assignment-gsl in clang and mlir
These are triggering after b037bceef6a40c5c00c1f67cc5a334e2c4e5e041.
Commit: 1411a9ae9358c7fc17e84876b82f6d2293c7ba4d
https://github.com/llvm/llvm-project/commit/1411a9ae9358c7fc17e84876b82f6d2293c7ba4d
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M libcxx/src/experimental/tzdb.cpp
Log Message:
-----------
[libc++][NFC] Add missing includes in tzdb.cpp
Commit: 346fad5c2c28d0cd39475ae979ee468a420ebed7
https://github.com/llvm/llvm-project/commit/346fad5c2c28d0cd39475ae979ee468a420ebed7
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/test/CodeGen/tbaa-pointers.c
Log Message:
-----------
[TBAA] Simplify checks for unnamed struct case, where anyptr is used.
Commit: 59bdea24b09bca9332a7092b583ebf377efb0d50
https://github.com/llvm/llvm-project/commit/59bdea24b09bca9332a7092b583ebf377efb0d50
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/TooSmallLoopVariableCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/MultiwayPathsCoveredCheck.cpp
M clang-tools-extra/clangd/Hover.cpp
M clang/include/clang/AST/Decl.h
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/Randstruct.cpp
M clang/lib/AST/RecordLayoutBuilder.cpp
M clang/lib/CodeGen/ABIInfo.cpp
M clang/lib/CodeGen/ABIInfoImpl.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGNonTrivialStruct.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CGObjCRuntime.cpp
M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
M clang/lib/CodeGen/SwiftCallingConv.cpp
M clang/lib/CodeGen/Targets/LoongArch.cpp
M clang/lib/CodeGen/Targets/RISCV.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/CodeGen/Targets/XCore.cpp
M clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaDeclObjC.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
M clang/tools/libclang/CXType.cpp
M clang/unittests/AST/ASTImporterTest.cpp
Log Message:
-----------
Revert "[clang] Avoid re-evaluating field bitwidth (#117732)"
This reverts commit 81fc3add1e627c23b7270fe2739cdacc09063e54.
This breaks some LLDB tests, e.g.
SymbolFile/DWARF/x86/no_unique_address-with-bitfields.cpp:
lldb: ../llvm-project/clang/lib/AST/Decl.cpp:4604: unsigned int clang::FieldDecl::getBitWidthValue() const: Assertion `isa<ConstantExpr>(getBitWidth())' failed.
Commit: 0d7022ed75ef4d1efdfbdbf206e3f4041a9cd18b
https://github.com/llvm/llvm-project/commit/0d7022ed75ef4d1efdfbdbf206e3f4041a9cd18b
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_64x64_swizzle128b.mlir
Log Message:
-----------
[MLIR][GPU] Fix gpu.printf test syntax after f50f9698ad012882df8dd605f5482e280c138266
Commit: fdd7cafb9078e146634a3fbb72a8949108dca425
https://github.com/llvm/llvm-project/commit/fdd7cafb9078e146634a3fbb72a8949108dca425
Author: Kai Nacke <kai.peter.nacke at ibm.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
Log Message:
-----------
[z/OS][SystemZ] Clang dependency files are text files (#121849)
The dependency file and the P1689 file are text files, but the
open call misses the OF_Text flag. This PR adds the flag.
Fixes regressions in test cases ClangScanDeps/modules-extern-unrelated.m
and ClangScanDeps/P1689.cppm.
Commit: 1160994602b90890efd4df4e134e46cc3ad34bc8
https://github.com/llvm/llvm-project/commit/1160994602b90890efd4df4e134e46cc3ad34bc8
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/RISCV/long-gep-chains.ll
Log Message:
-----------
[SLP]Fix a crash for very long GEP chains
Need to check if the GEP bases are equal and return false early. Also,
need to return false if the lookup is too deep, considering bases equal
too. Fixes a crash in the assertion.
Commit: 81898ac00e04ed3f352534a810829bdf4e6e14b7
https://github.com/llvm/llvm-project/commit/81898ac00e04ed3f352534a810829bdf4e6e14b7
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M lldb/tools/lldb-dap/CMakeLists.txt
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/IOStream.h
M lldb/tools/lldb-dap/OutputRedirector.cpp
M lldb/tools/lldb-dap/OutputRedirector.h
M lldb/tools/lldb-dap/lldb-dap.cpp
Log Message:
-----------
Revert "[lldb-dap] Ensure the IO forwarding threads are managed by the DAP object lifecycle. (#120457)"
This reverts commit 0d9cf2671e06c9124a0b5fc753330c39c8b4a791. Breaks the
lldb-aarch64-windows buildbot.
Commit: b66f6b25cb5107d4c8f78d13b08d2bdba39ad919
https://github.com/llvm/llvm-project/commit/b66f6b25cb5107d4c8f78d13b08d2bdba39ad919
Author: Chris B <chris.bieneman at me.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/Sema/SemaStmtAttr.cpp
R clang/test/AST/HLSL/HLSLControlFlowHint.hlsl
R clang/test/CodeGenHLSL/HLSLControlFlowHint.hlsl
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp
R llvm/test/CodeGen/DirectX/HLSLControlFlowHint.ll
R llvm/test/CodeGen/SPIRV/structurizer/HLSLControlFlowHint-pass-check.ll
R llvm/test/CodeGen/SPIRV/structurizer/HLSLControlFlowHint.ll
Log Message:
-----------
Revert #116331 & #121852 (#122105)
Commit: f37bee1d929a90dd3dbb67a4a9d0a52400a8a78f
https://github.com/llvm/llvm-project/commit/f37bee1d929a90dd3dbb67a4a9d0a52400a8a78f
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/include/llvm/CodeGen/ReachingDefAnalysis.h
M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
Log Message:
-----------
[ReachingDefAnalysis][NFC] Rename `PhysReg` to `Reg`. (#122112)
This is in order to prepare for future MR where we will extend
`ReachingDefAnalysis` to stack slots.
Commit: 322ff423159f618f2dbfdce2031dbd296deb966f
https://github.com/llvm/llvm-project/commit/322ff423159f618f2dbfdce2031dbd296deb966f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/test/Transforms/PhaseOrdering/AArch64/block_scaling_decompr_8bit.ll
Log Message:
-----------
[PhaseOrdering][AArch64] block_scaling_decompr_8bit.ll - use -passes="default<O3>" to allow DOS to correctly evaluate the RUN command
Necessary for running update_test_checks.py on windows
Commit: fe162bed532b78f606fe3d937ba732787dd7bd64
https://github.com/llvm/llvm-project/commit/fe162bed532b78f606fe3d937ba732787dd7bd64
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/test/Driver/darwin-embedded-search-paths.c
Log Message:
-----------
Make test more lenient for custom clang version strings
The version string can be anything, don't restrict it to digits and
dots. It's derived from the resource dir, so just check for that.
Commit: a3b4d9147406cbd90090466a9b2b9bb2e9f6000c
https://github.com/llvm/llvm-project/commit/a3b4d9147406cbd90090466a9b2b9bb2e9f6000c
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
Log Message:
-----------
Fix -Wdangling-assignment-gsl in ClangdLSPServerTests
I think this is a false positive for a non-capturing lambda, but I can't
find anything in the standard that guarantees that these have eternal
lifetime.
Commit: b054289882145f5a1aa8e1d6538ac4714df17059
https://github.com/llvm/llvm-project/commit/b054289882145f5a1aa8e1d6538ac4714df17059
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M libcxx/include/__vector/vector_bool.h
A libcxx/test/libcxx/containers/sequences/vector.bool/assert.pass.cpp
Log Message:
-----------
[libc++] Add missing hardening checks and tests for vector<bool> (#121366)
This PR adds VALID_ELEMENT_ACCESS and VALID_INPUT_RANGE checks for vector<bool>.
Commit: 637641840d170491ad99a92a23112e0625d7c6cb
https://github.com/llvm/llvm-project/commit/637641840d170491ad99a92a23112e0625d7c6cb
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
A llvm/test/CodeGen/AMDGPU/add64-low-32-bits-known-zero.ll
A llvm/test/CodeGen/AMDGPU/sub64-low-32-bits-known-zero.ll
Log Message:
-----------
AMDGPU: Add baseline test for add64 with constant test (#122048)
Add baseline test for 64-bit adds when the low half of
an operand is known 0.
Commit: 09583dec15c5100fd5f26f81a1b011bce3f9b21f
https://github.com/llvm/llvm-project/commit/09583dec15c5100fd5f26f81a1b011bce3f9b21f
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/test/CodeGen/AMDGPU/add64-low-32-bits-known-zero.ll
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
M llvm/test/CodeGen/AMDGPU/sub64-low-32-bits-known-zero.ll
Log Message:
-----------
AMDGPU: Reduce 64-bit add width if low bits are known 0 (#122049)
If one of the inputs has all 0 bits, the low part cannot
carry and we can just pass through the original value.
Add case: https://alive2.llvm.org/ce/z/TNc7hf
Sub case: https://alive2.llvm.org/ce/z/AjH2-J
We could do this in the general case with computeKnownBits,
but add is so common this could be potentially expensive for
something which will fire infrequently.
One potential concern is this could break the 64-bit add
we expect to see for addressing mode matching, but these
constants shouldn't appear often in addressing expressions.
One test for large offset expressions changes but isn't worse.
Fixes https://github.com/ROCm/llvm-project/issues/237
Commit: a5c3cbf7e0df23ca898e4f65e78531641fe4bf60
https://github.com/llvm/llvm-project/commit/a5c3cbf7e0df23ca898e4f65e78531641fe4bf60
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Analysis/Loads.cpp
Log Message:
-----------
[Loads] Drop dead Offset argument (NFC)
The argument is always zero now.
Commit: 92e575d7e44b0230a27cfb8f6f2e2e3367b19967
https://github.com/llvm/llvm-project/commit/92e575d7e44b0230a27cfb8f6f2e2e3367b19967
Author: Steven Perron <stevenperron at google.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/test/CodeGenHLSL/builtins/RWBuffer-subscript.hlsl
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
Log Message:
-----------
[HLSL] Add SPIR-V version of getPointer. (#121963)
Use the spv version of the resource.getpointer intrinsic when targeting
SPIR-V.
Commit: f993a8baddb2cc19257da2d7f3935fe3f4154922
https://github.com/llvm/llvm-project/commit/f993a8baddb2cc19257da2d7f3935fe3f4154922
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Analysis/Lint.cpp
A llvm/test/Analysis/Lint/abi-attrs.ll
Log Message:
-----------
[Lint] Lint mismatch in ABI attributes (#121929)
Detect cases where ABI attributes between the call-site and the called
function differ. For now this only handles argument attributes.
Inspired by
https://discourse.llvm.org/t/difference-between-call-site-attributes-and-declaration-attributes/83902.
Commit: 4751f47c7af63315565891a1d112376b52e6b826
https://github.com/llvm/llvm-project/commit/4751f47c7af63315565891a1d112376b52e6b826
Author: Matthias Springer <me at m-sp.org>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M mlir/include/mlir/Dialect/SCF/Transforms/Patterns.h
M mlir/include/mlir/Transforms/OneToNTypeConversion.h
Log Message:
-----------
[mlir][Transforms] Dialect conversion: Turn LLVM_DEPRECATED into comments (#122073)
Some functions of the deprecated 1:N dialect conversion were marked as
`LLVM_DEPRECATED`. This caused compilation warnings because there are
still test cases of the 1:N dialect conversion framework. (These test
cases will be deleted at the same time when the 1:N driver is deleted.)
Commit: f69585235ec85d54e0f3fc41b2d5700430907f99
https://github.com/llvm/llvm-project/commit/f69585235ec85d54e0f3fc41b2d5700430907f99
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M libcxx/include/__algorithm/comp_ref_type.h
M libcxx/include/__algorithm/copy.h
M libcxx/include/__algorithm/iterator_operations.h
M libcxx/include/__algorithm/move.h
M libcxx/include/__algorithm/ranges_iterator_concept.h
M libcxx/include/__algorithm/ranges_unique_copy.h
M libcxx/include/__algorithm/simd_utils.h
M libcxx/include/__algorithm/sort.h
M libcxx/include/__algorithm/three_way_comp_ref_type.h
M libcxx/include/__algorithm/unwrap_iter.h
M libcxx/include/__atomic/aliases.h
M libcxx/include/__atomic/atomic.h
M libcxx/include/__atomic/atomic_ref.h
M libcxx/include/__atomic/atomic_sync.h
M libcxx/include/__atomic/contention_t.h
M libcxx/include/__atomic/memory_order.h
M libcxx/include/__bit_reference
M libcxx/include/__chrono/formatter.h
M libcxx/include/__chrono/hh_mm_ss.h
M libcxx/include/__chrono/parser_std_format_spec.h
M libcxx/include/__chrono/zoned_time.h
M libcxx/include/__compare/ordering.h
M libcxx/include/__compare/synth_three_way.h
M libcxx/include/__exception/exception_ptr.h
M libcxx/include/__expected/expected.h
M libcxx/include/__expected/unexpected.h
M libcxx/include/__filesystem/path.h
M libcxx/include/__flat_map/flat_map.h
M libcxx/include/__flat_map/key_value_iterator.h
M libcxx/include/__format/buffer.h
M libcxx/include/__format/concepts.h
M libcxx/include/__format/container_adaptor.h
M libcxx/include/__format/format_arg.h
M libcxx/include/__format/format_arg_store.h
M libcxx/include/__format/format_functions.h
M libcxx/include/__format/formatter_floating_point.h
M libcxx/include/__format/formatter_string.h
M libcxx/include/__format/range_default_formatter.h
M libcxx/include/__format/unicode.h
M libcxx/include/__functional/binary_function.h
M libcxx/include/__functional/bind.h
M libcxx/include/__functional/boyer_moore_searcher.h
M libcxx/include/__functional/function.h
M libcxx/include/__functional/perfect_forward.h
M libcxx/include/__functional/unary_function.h
M libcxx/include/__hash_table
M libcxx/include/__iterator/aliasing_iterator.h
M libcxx/include/__iterator/concepts.h
M libcxx/include/__iterator/insert_iterator.h
M libcxx/include/__iterator/iterator_traits.h
M libcxx/include/__iterator/projected.h
M libcxx/include/__iterator/ranges_iterator_traits.h
M libcxx/include/__iterator/reverse_iterator.h
M libcxx/include/__iterator/segmented_iterator.h
M libcxx/include/__locale
M libcxx/include/__locale_dir/locale_base_api.h
M libcxx/include/__mdspan/extents.h
M libcxx/include/__memory/allocation_guard.h
M libcxx/include/__memory/pointer_traits.h
M libcxx/include/__memory/shared_ptr.h
M libcxx/include/__memory/unique_ptr.h
M libcxx/include/__memory/unique_temporary_buffer.h
M libcxx/include/__node_handle
M libcxx/include/__pstl/backend_fwd.h
M libcxx/include/__pstl/dispatch.h
M libcxx/include/__ranges/chunk_by_view.h
M libcxx/include/__ranges/drop_view.h
M libcxx/include/__ranges/drop_while_view.h
M libcxx/include/__ranges/elements_view.h
M libcxx/include/__ranges/filter_view.h
M libcxx/include/__ranges/iota_view.h
M libcxx/include/__ranges/join_view.h
M libcxx/include/__ranges/lazy_split_view.h
M libcxx/include/__ranges/repeat_view.h
M libcxx/include/__ranges/reverse_view.h
M libcxx/include/__ranges/split_view.h
M libcxx/include/__ranges/subrange.h
M libcxx/include/__ranges/take_view.h
M libcxx/include/__ranges/take_while_view.h
M libcxx/include/__ranges/transform_view.h
M libcxx/include/__split_buffer
M libcxx/include/__stop_token/stop_state.h
M libcxx/include/__thread/support/pthread.h
M libcxx/include/__tuple/make_tuple_types.h
M libcxx/include/__tuple/sfinae_helpers.h
M libcxx/include/__tuple/tuple_size.h
M libcxx/include/__type_traits/add_lvalue_reference.h
M libcxx/include/__type_traits/add_pointer.h
M libcxx/include/__type_traits/add_rvalue_reference.h
M libcxx/include/__type_traits/aligned_storage.h
M libcxx/include/__type_traits/common_reference.h
M libcxx/include/__type_traits/common_type.h
M libcxx/include/__type_traits/conjunction.h
M libcxx/include/__type_traits/copy_cv.h
M libcxx/include/__type_traits/copy_cvref.h
M libcxx/include/__type_traits/disjunction.h
M libcxx/include/__type_traits/invoke.h
M libcxx/include/__type_traits/is_always_bitcastable.h
M libcxx/include/__type_traits/is_char_like_type.h
M libcxx/include/__type_traits/is_equality_comparable.h
M libcxx/include/__type_traits/is_execution_policy.h
M libcxx/include/__type_traits/is_primary_template.h
M libcxx/include/__type_traits/is_same.h
M libcxx/include/__type_traits/is_swappable.h
M libcxx/include/__type_traits/make_32_64_or_128_bit.h
M libcxx/include/__type_traits/make_const_lvalue_ref.h
M libcxx/include/__type_traits/make_signed.h
M libcxx/include/__type_traits/make_unsigned.h
M libcxx/include/__type_traits/maybe_const.h
M libcxx/include/__type_traits/remove_all_extents.h
M libcxx/include/__type_traits/remove_const.h
M libcxx/include/__type_traits/remove_const_ref.h
M libcxx/include/__type_traits/remove_cv.h
M libcxx/include/__type_traits/remove_cvref.h
M libcxx/include/__type_traits/remove_extent.h
M libcxx/include/__type_traits/remove_pointer.h
M libcxx/include/__type_traits/remove_reference.h
M libcxx/include/__type_traits/remove_volatile.h
M libcxx/include/__type_traits/void_t.h
M libcxx/include/__utility/exception_guard.h
M libcxx/include/__utility/forward_like.h
M libcxx/include/__utility/in_place.h
M libcxx/include/__utility/integer_sequence.h
M libcxx/include/__utility/move.h
M libcxx/include/__utility/pair.h
M libcxx/include/__utility/swap.h
M libcxx/include/__vector/vector.h
M libcxx/include/any
M libcxx/include/array
M libcxx/include/barrier
M libcxx/include/ccomplex
M libcxx/include/ciso646
M libcxx/include/complex
M libcxx/include/cstdalign
M libcxx/include/cstdbool
M libcxx/include/ctgmath
M libcxx/include/deque
M libcxx/include/experimental/__simd/scalar.h
M libcxx/include/experimental/__simd/simd.h
M libcxx/include/experimental/__simd/simd_mask.h
M libcxx/include/experimental/__simd/vec_ext.h
M libcxx/include/forward_list
M libcxx/include/ios
M libcxx/include/optional
M libcxx/include/ratio
M libcxx/include/regex
M libcxx/include/source_location
M libcxx/include/string
M libcxx/include/tuple
M libcxx/include/variant
M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
M libcxx/test/tools/clang_tidy_checks/libcpp_module.cpp
A libcxx/test/tools/clang_tidy_checks/nodebug_on_aliases.cpp
A libcxx/test/tools/clang_tidy_checks/nodebug_on_aliases.hpp
M libcxx/test/tools/clang_tidy_checks/uglify_attributes.cpp
A libcxx/test/tools/clang_tidy_checks/utilities.hpp
Log Message:
-----------
[libc++] Put _LIBCPP_NODEBUG on all internal aliases (#118710)
This significantly reduces the amount of debug information generated
for codebases using libc++, without hurting the debugging experience.
Commit: e54054684e12553b88f2126a23e9a19a0cfebf83
https://github.com/llvm/llvm-project/commit/e54054684e12553b88f2126a23e9a19a0cfebf83
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/include/llvm/Option/OptTable.h
Log Message:
-----------
[OptTable] Fix typo VALUE => VALUES (NFCI) (#121523)
While VALUES is not actually used by LLVM_MAKE_OPT_ID_WITH_ID_PREFIX
threading the correct value through is clearer and avoids the potential
for strange bugs if this ever changes.
Commit: 1a830aa1fe1e88749b563fefe18382842e0cff90
https://github.com/llvm/llvm-project/commit/1a830aa1fe1e88749b563fefe18382842e0cff90
Author: Daniel Rodríguez Troitiño <drodriguez at users.noreply.github.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/ObjCopy/MachO/MachOLayoutBuilder.cpp
M llvm/lib/ObjCopy/MachO/MachOObject.cpp
M llvm/lib/ObjCopy/MachO/MachOObject.h
M llvm/lib/ObjCopy/MachO/MachOReader.cpp
A llvm/test/tools/llvm-objcopy/MachO/strip-with-encryption-info.test
Log Message:
-----------
[ObjCopy] Respect requirements of LC_ENCRYPTION_INFO commands (#120995)
LLD (and other Mach-O linkers) when preparing an encryptable binary make
space to leave all the load commands in an non-encrypted page (see [1])
When using objcopy of a small encryptable binary, the code was not
respecting this fact, and the encryptable segments were not kept beyond
the first page. This was obvious for small or empty binaries.
The changes introduced here keep track if a `LC_ENCRYPTION_INFO` or
`LC_ENCRYPTION_INFO_64` has been seen, and in such case, it adds a full
page of offset in order to leave the load commands in its own page
(similar to what LLD is doing).
[1]:
https://github.com/llvm/llvm-project/blob/d8e792931226b15d9d2424ecd24ccfe13adc2367/lld/MachO/SyntheticSections.cpp#L90-L93
Commit: d4182f1b5649da34e39c6dd22502c7995c406a5e
https://github.com/llvm/llvm-project/commit/d4182f1b5649da34e39c6dd22502c7995c406a5e
Author: Andreas Jonson <andjo403 at hotmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/test/Transforms/InstCombine/onehot_merge.ll
Log Message:
-----------
[InstCombine] move foldAndOrOfICmpsOfAndWithPow2 into foldLogOpOfMaskedICmps (#121970)
Commit: 570f03096a195be6302747cefda0af13ac70d2eb
https://github.com/llvm/llvm-project/commit/570f03096a195be6302747cefda0af13ac70d2eb
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M libcxx/include/__algorithm/mismatch.h
M libcxx/include/__algorithm/simd_utils.h
Log Message:
-----------
Revert "Reapply "[libc++] Explicitly convert to masks in SIMD code (#107983)"" (#122022)
Reverts llvm/llvm-project#121352
Triggers "vector type should not be a bool!" on:
```
bool a[100];
bool b[100];
auto t = std::mismatch(std::begin(a), std::end(a), std::begin(b), std::end(b));
```
https://godbolt.org/z/Y73s3sdef
Commit: 3972ed57088f6515b787d7d38dec03dc74e51827
https://github.com/llvm/llvm-project/commit/3972ed57088f6515b787d7d38dec03dc74e51827
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/Template.h
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/TreeTransform.h
M clang/test/CXX/drs/cwg23xx.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg27xx.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/nested-requirement.cpp
M clang/test/CXX/temp/temp.constr/temp.constr.atomic/constrant-satisfaction-conversions.cpp
M clang/test/SemaCXX/concept-crash-on-diagnostic.cpp
M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
M clang/test/SemaCXX/cxx23-assume.cpp
M clang/test/SemaCXX/cxx2c-fold-exprs.cpp
M clang/test/SemaCXX/lambda-unevaluated.cpp
M clang/test/SemaTemplate/concepts-recursive-inst.cpp
M clang/test/SemaTemplate/cxx2a-constraint-exprs.cpp
M clang/test/SemaTemplate/deduction-guide.cpp
M clang/test/SemaTemplate/nested-implicit-deduction-guides.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
Revert "[Clang] Implement CWG2369 "Ordering between constraints and substitution"" (#122130)
Unfortunately that breaks some code on Windows when lambdas come into
play, as reported in
https://github.com/llvm/llvm-project/pull/102857#issuecomment-2577861178
This reverts commit 96eced624e0f120155256033fdcb8342e7e58d6e.
Commit: b05be2a888363bfebdd6e5495478b6f9022acf31
https://github.com/llvm/llvm-project/commit/b05be2a888363bfebdd6e5495478b6f9022acf31
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SystemOperands.td
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp
M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
Log Message:
-----------
[AArch64] Use GenericTable PrimaryKey to remove one of the SearchIndexes for SysRegs. NFC (#122001)
Use PrimaryKeyReturnRange to get all of the registers with the same
encoding. This allows AltName to be removed.
Commit: 29ed6000d21edd1a88b2daad242e1f356cafbaca
https://github.com/llvm/llvm-project/commit/29ed6000d21edd1a88b2daad242e1f356cafbaca
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SystemOperands.td
M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
Log Message:
-----------
[AArch64] Simplify ExactFPImm GenericTable. NFC (#121827)
lookupExactFPImmByRepr is never called. The Name field in the table is
unused. The Name is only used by the GenericEnum.
Commit: b3ce6dc7232c566c21b84ac5d5795341a355ff79
https://github.com/llvm/llvm-project/commit/b3ce6dc7232c566c21b84ac5d5795341a355ff79
Author: Arda Unal <3157490+ardaunal at users.noreply.github.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
M mlir/test/Transforms/loop-invariant-code-motion.mlir
Log Message:
-----------
[mlir][licm] Make scf.if recursively speculatable (#122031)
This change:
- makes **scf.if** recursively speculatable like **affine.if** is.
- also introduces related LICM tests for both **scf.if** and
**affine.if**
Commit: ae6a7809b74741a4227c45a88cbfb6735c58c70a
https://github.com/llvm/llvm-project/commit/ae6a7809b74741a4227c45a88cbfb6735c58c70a
Author: Sarah Spall <sarahspall at microsoft.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
A llvm/test/tools/dxil-dis/fastmath.ll
Log Message:
-----------
[HLSL] [DirectX] translate llvm fast math flags to llvm 3.7 fast math flags (#122025)
Translate modern LLVM fast math flags to LLVM 3.7 equivalent in DXIL
bitcode. Mostly use patch from #120630
Closes #120630
Commit: 911880e8a7afdb6dc1fcb436af4e7eadfcacd30b
https://github.com/llvm/llvm-project/commit/911880e8a7afdb6dc1fcb436af4e7eadfcacd30b
Author: Nico Weber <thakis at chromium.org>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/BUILD.gn
A llvm/utils/gn/secondary/llvm/unittests/tools/llvm-exegesis/RISCV/BUILD.gn
Log Message:
-----------
[gn] port 71ddde8ba52a (LLVMExegesisRISCVTests)
Commit: d6ae3d3070a2d0578ccb5cd072007cca922cba36
https://github.com/llvm/llvm-project/commit/d6ae3d3070a2d0578ccb5cd072007cca922cba36
Author: Nico Weber <thakis at chromium.org>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/tools/llvm-exegesis/lib/RISCV/BUILD.gn
Log Message:
-----------
[gn] port afa8aeeeec (RISCVGenExegesis.inc)
Commit: e93181bf13b289823810d3b43bcc3c2df1eda70b
https://github.com/llvm/llvm-project/commit/e93181bf13b289823810d3b43bcc3c2df1eda70b
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfdiv-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmul-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp-mask.ll
M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp-mask.ll
M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfsqrt-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt.mir
Log Message:
-----------
[RISCV][VLOPT] Add vector fp-conversion instruction to isSupportedInstr (#122033)
When these instructions are marked nofpexcept, we can optimize them.
There are some added toggles in the output, likley because other
noexcept fp instructions are not part of isSupportedInstr yet. We may
want to avoid marking an instruction as isSupported in the future if any
of its FP users are missing nofpexcept to avoid added toggles. However,
we seem to get some GPRs back as a result of this change, which may
outweigh the cost of avoiding extra toggles.
The plan is to follow this patch up with added support for more FP
instructions in the same way. The instructions in this patch are a
natural starting point because they allow us to test with integer
instructions which have good support already.
Commit: 0b722de4a57f6dfc032bb7ab6b101b4e05bf8e72
https://github.com/llvm/llvm-project/commit/0b722de4a57f6dfc032bb7ab6b101b4e05bf8e72
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clangd/unittests/BUILD.gn
Log Message:
-----------
[gn build] Port 30ba8be22eb0
Commit: 983a957768c56d71ca710ff43eab4515e47f7d2c
https://github.com/llvm/llvm-project/commit/983a957768c56d71ca710ff43eab4515e47f7d2c
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
Log Message:
-----------
[RISCV][VLOpt] Consolidate EMUL=SEW/EEW*LMUL logic [NFC] (#122021)
All but one of the cases in tree today have EMUL=SEW/EEW*LMUL. Repeating
this each time is verbose and introduces oppurtunity for error. (For
instance, the comment associated with vwmul.vv was out of sync with the
code for same.)
Introduce getOperandLog2EEW and move most complexity to it. Then
introduce getOperandInfo as a wrapper around previous, and special case
the one case which requires it.
---------
Co-authored-by: Luke Lau <luke_lau at icloud.com>
Commit: 8e65940161cd5a7dea5896fe4ae057d4cc07c703
https://github.com/llvm/llvm-project/commit/8e65940161cd5a7dea5896fe4ae057d4cc07c703
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/include/clang/Basic/TargetInfo.h
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/Basic/Targets/X86.cpp
M clang/lib/Basic/Targets/X86.h
M clang/lib/CodeGen/CodeGenModule.cpp
A clang/test/CodeGen/AArch64/fmv-priority.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGen/attr-target-version.c
A llvm/include/llvm/TargetParser/AArch64FeatPriorities.inc
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/lib/Target/AArch64/AArch64FMV.td
M llvm/lib/TargetParser/AArch64TargetParser.cpp
M llvm/utils/TableGen/Basic/ARMTargetDefEmitter.cpp
Log Message:
-----------
[FMV][AArch64] Simplify version selection according to ACLE. (#121921)
Currently, the more features a version has, the higher its priority is.
We are changing ACLE https://github.com/ARM-software/acle/pull/370 as
follows:
"Among any two versions, the higher priority version is determined by
identifying the highest priority feature that is specified in exactly
one of the versions, and selecting that version."
Commit: cdbba15c6cd53291358bf95a9a9057042fcbf163
https://github.com/llvm/llvm-project/commit/cdbba15c6cd53291358bf95a9a9057042fcbf163
Author: Roland McGrath <mcgrathr at google.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M libc/cmake/modules/LLVMLibCHeaderRules.cmake
M libc/utils/hdrgen/main.py
Log Message:
-----------
[libc] Add --write-if-changed switch to hdrgen/main.py (#122037)
This avoids touching the output file when it hasn't changed. The
cmake build integration now uses this so that touching a .yaml or
.h.def file in ways that don't affect the generated header output
won't cause unnecessary recompilations.
Commit: 878a57468b2faf5d979b5bad6b2721e76ea750c3
https://github.com/llvm/llvm-project/commit/878a57468b2faf5d979b5bad6b2721e76ea750c3
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/module/__fortran_builtins.f90
M flang/module/__fortran_type_info.f90
A flang/test/Lower/CUDA/cuda-cdevloc.cuf
Log Message:
-----------
[flang][cuda] Add c_devloc as intrinsic and inline it during lowering (#120648)
Add `c_devloc` as intrinsic and inline it during lowering. `c_devloc` is
used in CUDA Fortran to get the address of device variables.
For the moment, we borrow almost all semantic checks from `c_loc` except
for the pointer or target restriction. The specifications of `c_devloc`
are are pretty vague and we will relax/enforce the restrictions based on
library and apps usage comparing them to the reference compiler.
Commit: bb9785a2acf7012fb2a9ae6a86e5cc1b64b11e74
https://github.com/llvm/llvm-project/commit/bb9785a2acf7012fb2a9ae6a86e5cc1b64b11e74
Author: Prabhuk <prabhukr at google.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/uefi-constructed-args.c
Log Message:
-----------
[Driver][UEFI] Enable Microsoft extensions (#121875)
Set "-fms-extensions" for UEFI targets.
Commit: 75781fa3c77f14640459a97d4265dda76d80e453
https://github.com/llvm/llvm-project/commit/75781fa3c77f14640459a97d4265dda76d80e453
Author: swalk-qualcomm <quic_walk at qualcomm.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
A llvm/test/CodeGen/Hexagon/loopIdiom.ll
Log Message:
-----------
Hexagon loop idiom pass segfaults when -debug present (#121828)
There was an unprotected use of a function that could return the null
pointer.
---------
Co-authored-by: Steve Walk <walk at qti.qualcomm.com>
Commit: f9c2377fb68e5051b3061186c507f7b87db2a8b2
https://github.com/llvm/llvm-project/commit/f9c2377fb68e5051b3061186c507f7b87db2a8b2
Author: Michael Jones <michaelrj at google.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/struct_tm.h
M libc/src/pthread/pthread_condattr_init.cpp
M libc/src/pthread/pthread_condattr_setclock.cpp
M libc/src/time/CMakeLists.txt
M libc/src/time/asctime.cpp
M libc/src/time/asctime.h
M libc/src/time/asctime_r.cpp
M libc/src/time/asctime_r.h
M libc/src/time/ctime.cpp
M libc/src/time/ctime_r.cpp
M libc/src/time/difftime.h
M libc/src/time/gmtime.h
M libc/src/time/gmtime_r.h
M libc/src/time/mktime.cpp
M libc/src/time/mktime.h
M libc/src/time/time.cpp
A libc/src/time/time_constants.h
M libc/src/time/time_utils.cpp
M libc/src/time/time_utils.h
M libc/test/src/time/CMakeLists.txt
M libc/test/src/time/TmHelper.h
M libc/test/src/time/TmMatcher.h
M libc/test/src/time/asctime_r_test.cpp
M libc/test/src/time/clock_gettime_test.cpp
M libc/test/src/time/clock_test.cpp
M libc/test/src/time/ctime_r_test.cpp
M libc/test/src/time/difftime_test.cpp
M libc/test/src/time/gettimeofday_test.cpp
M libc/test/src/time/gmtime_r_test.cpp
M libc/test/src/time/gmtime_test.cpp
M libc/test/src/time/mktime_test.cpp
M libc/test/src/time/nanosleep_test.cpp
Log Message:
-----------
[libc][NFC] Cleanup time.h (#122027)
While working on strftime I noticed some constants were being defined in
unexpected places. One thing led to another, and I ended up doing a
major cleanup of the time functions.
What's included:
All uses of <time.h> in /src and /test removed (except for LibcTest.cpp)
The various time constants have been moved to time_constants.h, and the
`time_constants` namespace.
struct tm gets its own type indirection header now.
Commit: 0b4fca5b75b6965e630d4c94f573ba5184f75f67
https://github.com/llvm/llvm-project/commit/0b4fca5b75b6965e630d4c94f573ba5184f75f67
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
Log Message:
-----------
[RISCV][VLOpt] Remove State field from OperandInfo [nfc] (#122160)
We can just use a std::optional to wrap the operand info instead. The
state field is confusing as we have a "partially known" state where EEW
is known and EMUL is nullopt, but it's still "Known".
Commit: 676c641718d0417a000b69917721bcc003d71d93
https://github.com/llvm/llvm-project/commit/676c641718d0417a000b69917721bcc003d71d93
Author: David Green <david.green at arm.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/PhaseOrdering/AArch64/block_scaling_decompr_8bit.ll
Log Message:
-----------
[VectorCombine] Use getInstructionCost to cost Shuffle. (#122068)
This allows it to produce a more accurate cost for the shuffle, using
the more accurate calls to getShuffleCost in getInstructionCost. It
helps fix some of the regressions from vector combine a little while
ago, now that we have better subvector extract costs.
Commit: f35b9ad99f549f148e6bd6b0c1bd86f4d1ced56c
https://github.com/llvm/llvm-project/commit/f35b9ad99f549f148e6bd6b0c1bd86f4d1ced56c
Author: macurtis-amd <macurtis at amd.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/test/Driver/amdgpu-openmp-toolchain.c
M clang/test/Driver/lto.c
Log Message:
-----------
[clang] Propagate -ftime-report to offload lto (#122143)
Commit: 508398021d094ecfe6cea937d619c77121990e0d
https://github.com/llvm/llvm-project/commit/508398021d094ecfe6cea937d619c77121990e0d
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M libc/src/__support/CMakeLists.txt
M libc/src/__support/fixedvector.h
M libc/src/stdlib/exit_handler.h
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc] Add hardening for FixedVector data structure and fix exposed bug. (#122159)
Add LIBC_ASSERT statements to FixedVector implementation, and zero out
the memory when the elements are removed to flag out-of-bound access and
dangling pointer/reference access.
This change unmasks the bug in one of FixedVector uses for atexit
handlers: dangling reference use, which was actually led to crashes in
the wild (with prod blockstore implementation). Fix it in this CL.
Commit: 7453d7645c366e3b6b141789b49f10dc603a6abd
https://github.com/llvm/llvm-project/commit/7453d7645c366e3b6b141789b49f10dc603a6abd
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/lib/Semantics/expression.cpp
Log Message:
-----------
[flang] Silence inappropriate error message (#120614)
A recent patch added better compatibility checking for actual procedure
arguments, but it has led to a few failures in the Fujitsu Fortran test
suite in cases of NULL() actual arguments being associated with dummy
procedure pointers. As is the case with dummy data pointers, these must
always be accepted.
Fixes Fujitsu Fortran test cases 0249_0023 through 0028 and 0387_0047.
Commit: b8513e439351b11a90b8aa69311cf57572405826
https://github.com/llvm/llvm-project/commit/b8513e439351b11a90b8aa69311cf57572405826
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/lib/Semantics/pointer-assignment.cpp
A flang/test/Semantics/assign16.f90
Log Message:
-----------
[flang] Better handling of weird pointer assignment case (#120628)
F'2023 C1017 permits the assignment of an unlimited polymorphic data
target to a monomorphic LHS pointer when the LHS pointer has a sequence
derived type (BIND(C) or SEQUENCE attribute). We allowed for this in
pointer assignments that don't have a function reference as their RHS.
Extend this support to function references, and also ensure that rank
compatibility is still checked.
Commit: 7463b46a34efedbc3a72d05721886284e80b5cce
https://github.com/llvm/llvm-project/commit/7463b46a34efedbc3a72d05721886284e80b5cce
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/runtime/edit-input.cpp
Log Message:
-----------
[flang][runtime] Fix use of empty optional in BOZ input (#120789)
Slava reported a valgrind result showing the use of uninitialized data
due to an unconditional dereference of an optional in BOZ formatted
input editing; fix.
Commit: d1ea605ecd3b98c59e37d8e2261fcb5220151f4d
https://github.com/llvm/llvm-project/commit/d1ea605ecd3b98c59e37d8e2261fcb5220151f4d
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/lib/Frontend/FrontendAction.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/test/Integration/debug-local-var-2.f90
M flang/test/Parser/at-process.f
A flang/test/Parser/unparseable.f90
Log Message:
-----------
[flang] Detect and report parsing failure (#121349)
The flang-new driver doesn't check for the case of the parser failing to
consume the entire input file. This is of course never an ideal outcome,
and usually signals a need to improve error recovery, but it is better
for the compiler to admit failure rather than to silently proceed with
compilation of what may well be an incomplete parse tree.
Commit: 94963919011d77c2f3f9d867cb73067a4f50e87c
https://github.com/llvm/llvm-project/commit/94963919011d77c2f3f9d867cb73067a4f50e87c
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/include/flang/Evaluate/shape.h
M flang/lib/Evaluate/fold-integer.cpp
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Evaluate/shape.cpp
M flang/test/Semantics/lcobound.f90
M flang/test/Semantics/ucobound.f90
Log Message:
-----------
[flang] Fold LCOBOUND & UCOBOUND (#121411)
Implement constant folding for LCOBOUND and UCOBOUND intrinsic
functions. Moves some error detection code from intrinsics.cpp to
fold-integer.cpp so that erroneous calls get properly flagged and
converted into known errors.
Commit: 07b3bba901e7d51b3173631d6af811eae9d84cda
https://github.com/llvm/llvm-project/commit/07b3bba901e7d51b3173631d6af811eae9d84cda
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/lib/Semantics/assignment.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/definable.cpp
M flang/lib/Semantics/definable.h
M flang/test/Semantics/definable01.f90
Log Message:
-----------
[flang] Allow LOCK_TYPE & al. to associate with INTENT(IN OUT) (#121413)
We're emitting a bogus semantic error message about an actual argument
being undefinable when associating LOCK_TYPE, EVENT_TYPE, and someday
NOTIFY_TYPE with an INTENT(IN OUT) dummy argument. These types indeed
make many definition contexts invalid, and the actual argument
associated with an INTENT(IN OUT) dummy argument must indeed be
definable, but the argument association itself is not a problem.
Commit: b53bdc61013a4349283baa3eb21434f4f88b66d1
https://github.com/llvm/llvm-project/commit/b53bdc61013a4349283baa3eb21434f4f88b66d1
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/module/__fortran_builtins.f90
M flang/test/Semantics/get_team.f90
Log Message:
-----------
[flang] Add default component initialization to some built-in types (#121416)
The standard requires EVENT_TYPE, LOCK_TYPE, NOTIFY_TYPE, and TEAM_TYPE
to have full default initialization for their nonallocatable private
components.
Commit: 510285cd67a7f7626ba6d6733207480ca5b2b469
https://github.com/llvm/llvm-project/commit/510285cd67a7f7626ba6d6733207480ca5b2b469
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/lib/Semantics/check-call.cpp
M flang/test/Semantics/call04.f90
Log Message:
-----------
[flang] Fix allocatable coarray INTENT(OUT) check (#121528)
An allocatable coarray being argument associated with a non-allocatable
INTENT(OUT) dummy argument is not an error.
Commit: 9462ce885b2a067fdd20568ba9105489f3b34c53
https://github.com/llvm/llvm-project/commit/9462ce885b2a067fdd20568ba9105489f3b34c53
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/lib/Semantics/resolve-names.cpp
A flang/test/Semantics/bug121718.f90
Log Message:
-----------
[flang] Fix crash when handling benign USE conflict (#121977)
When the same name is used for distinct derived types in two modules,
and at least one of those modules also defines a generic interface of
the same name, name resolution crashes when both modules are USE'd into
the same scope. The crash is due to some pointers into the symbol table
becoming invalid when a symbol is replaced with a UseErrorDetails; set
them to null. Also allow for extending a UseErrorDetails in place rather
than emitting a spurious error message.
Fixes https://github.com/llvm/llvm-project/issues/121718.
Commit: eb77f442b342a1bb234254e05759933bad9dfab1
https://github.com/llvm/llvm-project/commit/eb77f442b342a1bb234254e05759933bad9dfab1
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/docs/Extensions.md
M flang/include/flang/Common/format.h
M flang/test/Semantics/io07.f90
M flang/test/Semantics/io08.f90
M flang/unittests/Runtime/LogicalFormatTest.cpp
Log Message:
-----------
[flang] Accept L0 (#121998)
Accept a zero field width for formatted logical output (L0),
interpreting it as if it had been L1.
Commit: 3a8a52f4a52e0c301a5f3d6acce684c7fd4a6d57
https://github.com/llvm/llvm-project/commit/3a8a52f4a52e0c301a5f3d6acce684c7fd4a6d57
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/include/flang/Evaluate/call.h
M flang/include/flang/Evaluate/characteristics.h
M flang/include/flang/Evaluate/constant.h
M flang/include/flang/Evaluate/expression.h
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Evaluate/variable.h
M flang/include/flang/Semantics/symbol.h
M flang/lib/Evaluate/characteristics.cpp
M flang/lib/Evaluate/expression.cpp
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Evaluate/shape.cpp
M flang/lib/Evaluate/tools.cpp
M flang/lib/Evaluate/variable.cpp
M flang/lib/Optimizer/Builder/CMakeLists.txt
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/expression.cpp
M flang/test/Semantics/resolve94.f90
M flang/test/Semantics/this_image01.f90
Log Message:
-----------
[flang] Make IsCoarray() more accurate (#121415)
A designator without cosubscripts can have subscripts, component
references, substrings, &c. and still have corank. The current
IsCoarray() predicate only seems to work for whole variable/component
references. This was breaking some cases of THIS_IMAGE().
Commit: 3c2fc7a45ae230a32e473e093b4583079050a969
https://github.com/llvm/llvm-project/commit/3c2fc7a45ae230a32e473e093b4583079050a969
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M flang/lib/Parser/prescan.cpp
A flang/test/Preprocessing/bug129131.F
Log Message:
-----------
[flang] Refine tokenization trick that hid macro name (#121990)
In order to properly expose the Hollerith editing item in something like
FORMAT(3I9HHOLLERITH) as its own token, the tokenization routine in the
prescanner has special handling for digit strings followed by letters
("3I" above). This handler's effects are too broad, and prevent a macro
name from being recognized as such in a reported bug; make the test for
a hidden Hollerith more precise.
Fixes https://github.com/llvm/llvm-project/issues/121931.
Commit: 647e8d8dee8c2b68f0b9da7956e4af272b52149b
https://github.com/llvm/llvm-project/commit/647e8d8dee8c2b68f0b9da7956e4af272b52149b
Author: Brad Smith <brad at comstyle.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M lldb/source/Host/openbsd/Host.cpp
Log Message:
-----------
[lldb][OpenBSD] Make use of Environment class (#122040)
Commit: ac08f0dfef27b7627bd975b7d096a6dfb43c0fe2
https://github.com/llvm/llvm-project/commit/ac08f0dfef27b7627bd975b7d096a6dfb43c0fe2
Author: Alina Sbirlea <asbirlea at google.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[bazel] Port 8e65940161cd5a7dea5896fe4ae057d4cc07c703
Commit: 2c2accbcc6b0f132182a35b65ac76c038912cd1e
https://github.com/llvm/llvm-project/commit/2c2accbcc6b0f132182a35b65ac76c038912cd1e
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/test/AST/ast-print-openacc-update-construct.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/SemaOpenACC/combined-construct-self-ast.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/update-construct-ast.cpp
M clang/test/SemaOpenACC/update-construct.cpp
M clang/tools/libclang/CIndex.cpp
Log Message:
-----------
[OpenACC] Enable 'self' sema for 'update' construct
The 'self' clause is an unfortunately difficult one, as it has a
significantly different meaning between 'update' and the other
constructs. This patch introduces a way for the 'self' clause to work
as both. I considered making this two separate AST nodes (one for
'self' on 'update' and one for the others), however this makes the
automated macros/etc for supporting a clause break.
Instead, 'self' has the ability to act as either a condition or as a
var-list clause. As this is the only one of its kind, it is implemented
all within it. If in the future we have more that work like this, we
should consider rewriting a lot of the macros that we use to make
clauses work, and make them separate ast nodes.
Commit: 3b92cf281a20a90717e481f80cc010da8096c249
https://github.com/llvm/llvm-project/commit/3b92cf281a20a90717e481f80cc010da8096c249
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M libcxx/include/__type_traits/unwrap_ref.h
Log Message:
-----------
[libc++] Add _LIBCPP_NODEBUG to __unwrap_ref_decay_t
`__unwrap_ref_decay_t` should be marked `_LIBCPP_NODEBUG`, since it's
and internal type alias and this causes our CI to fail currently, since
we started enforcing this policy via clang-tidy.
Commit: 5e9e1ffe8a0909c02b0ac5a51b1856eb9516b767
https://github.com/llvm/llvm-project/commit/5e9e1ffe8a0909c02b0ac5a51b1856eb9516b767
Author: Utkarsh Saxena <usx at google.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/lib/Sema/SemaAttr.cpp
Log Message:
-----------
[clang] Infer capture_by for insert_or_assign (#122109)
Useful for maps:
https://en.cppreference.com/w/cpp/container/map/insert_or_assign
Commit: 891481ed82b8d17b9013b332754df171910fb115
https://github.com/llvm/llvm-project/commit/891481ed82b8d17b9013b332754df171910fb115
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/test/SemaOpenACC/update-construct-ast.cpp
Log Message:
-----------
[OpenACC] Add missing 'check' line to update-construct-ast test.
I must have deleted this by accident, and my local run's address managed
to have a '1' in the address, so it didn't catch it! This corrects the
test.
Commit: 89483403c34b39fd203111b4e37f629f2f76f0b4
https://github.com/llvm/llvm-project/commit/89483403c34b39fd203111b4e37f629f2f76f0b4
Author: David Green <david.green at arm.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/test/Analysis/CostModel/AArch64/div.ll
M llvm/test/Analysis/CostModel/AArch64/rem.ll
Log Message:
-----------
[AArch64] Add additional div and rem test coverage. NFC
Commit: 560b72c0408a8f7e4340a1d4197b164a14cd30b0
https://github.com/llvm/llvm-project/commit/560b72c0408a8f7e4340a1d4197b164a14cd30b0
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
A llvm/test/CodeGen/NVPTX/disjoint-or-addr.ll
M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
M llvm/test/CodeGen/NVPTX/variadics-backend.ll
Log Message:
-----------
[NVPTX] Support address offsets added with disjoint or (#122042)
Sometime DAGCombiner gets a little too clever and converts an add of a
small constant offset to a highly aligned pointer into a 'disjoint or'.
When looking for address operands handle this case as well.
Commit: 0d921f96d48c796837fc6d83f28a33b42220f5c2
https://github.com/llvm/llvm-project/commit/0d921f96d48c796837fc6d83f28a33b42220f5c2
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Introduce and use createInsertVector helper function, NFC
Commit: 2b26ee6e790574e05c3c9a562bc37897daf0f384
https://github.com/llvm/llvm-project/commit/2b26ee6e790574e05c3c9a562bc37897daf0f384
Author: James Y Knight <jyknight at google.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/include/__filesystem/directory_entry.h
M libcxx/include/__system_error/system_error.h
M libcxx/src/filesystem/directory_iterator.cpp
M libcxx/src/filesystem/error.h
M libcxx/src/filesystem/file_descriptor.h
M libcxx/src/filesystem/operations.cpp
M libcxx/src/filesystem/posix_compat.h
M libcxx/src/print.cpp
M libcxx/src/system_error.cpp
A libcxx/test/libcxx/diagnostics/system_error_win_codes.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.compare/eq_error_code_error_code.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.derived/message.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/system_category.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/file_type_obs.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/status.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/symlink_status.pass.cpp
M libcxx/test/support/filesystem_test_helper.h
Log Message:
-----------
[libcxx] Handle windows system error code mapping in std::error_code. (#93101)
The `std::error_code`/`std::error_category` functionality is designed to
support multiple error domains. On Unix, both system calls and libc
functions return the same error codes, and thus, libc++ today treats
`generic_category()` and `system_category()` as being equivalent.
However, on Windows, libc functions return `errno.h` error codes in the
`errno` global, but system calls return the very different `winerror.h`
error codes via `GetLastError()`.
As such, there is a need to map the winerror.h error codes into generic
errno codes. In libc++, however, the system_error facility does not
implement this mapping; instead the mapping is hidden inside libc++,
used directly by the std::filesystem implementation.
That has a few problems:
1. For std::filesystem APIs, the concrete windows error number is lost,
before users can see it. The intent of the distinction between
std::error_code and std::error_condition is that the error_code return
has the original (potentially more detailed) error code.
2. User-written code which calls Windows system APIs requires this same
mapping, so it also can also return error_code objects that other
(cross-platform) code can understand.
After this commit, an `error_code` with `generic_category()` is used to
report an error from `errno`, and, on Windows only, an `error_code` with
`system_category()` is used to report an error from `GetLastError()`. On
Unix, system_category remains identity-mapped to generic_category, but
is never used by libc++ itself.
The windows error code mapping is moved into system_error, so that
conversion of an `error_code` to `error_condition` correctly translates
the `system_category()` code into a `generic_category()` code, when
appropriate.
This allows code like:
`error_code(GetLastError(), system_category()) == errc::invalid_argument`
to work as expected -- as it does with MSVC STL.
(Continued from old phabricator review [D151493](https://reviews.llvm.org/D151493))
Commit: b9c932e5d6269fb0233ad5e70084e99e36ed4472
https://github.com/llvm/llvm-project/commit/b9c932e5d6269fb0233ad5e70084e99e36ed4472
Author: Ian Anderson <iana at apple.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
A clang/test/Driver/darwin-embedded-search-paths-libcxx.c
M clang/test/Driver/darwin-embedded-search-paths.c
Log Message:
-----------
[test][Driver][clang] Fix darwin-embedded-search-paths.c when CLANG_DEFAULT_CXX_STDLIB is libc++ (#122145)
Split darwin-embedded-search-paths.c into two tests for the different
values of CLANG_DEFAULT_CXX_STDLIB.
Commit: 5b76a2e51bd2765ad702cc1b249b9aacac9ea44e
https://github.com/llvm/llvm-project/commit/5b76a2e51bd2765ad702cc1b249b9aacac9ea44e
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP]Correctly calculate mask for the inserted vector
Commit: b48b99f6253c917a15b698a68c1bf41d15ea6dc6
https://github.com/llvm/llvm-project/commit/b48b99f6253c917a15b698a68c1bf41d15ea6dc6
Author: Thurston Dang <thurston at google.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
A llvm/test/CodeGen/AArch64/hwasan-zero-ptr.ll
A llvm/test/Instrumentation/HWAddressSanitizer/zero-ptr.ll
Log Message:
-----------
[hwasan] Add test case for null pointer dereference (#122186)
This shows that HWASan will emit a memaccess intrinsic for null pointer
dereferences, with or without a fixed shadow.
This is a simplification of an internal bug report by dvyukov.
Commit: b0f11dfc7506dd33ad5b43be9faba919b70d1959
https://github.com/llvm/llvm-project/commit/b0f11dfc7506dd33ad5b43be9faba919b70d1959
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/kcfi-isel-mir.ll
M llvm/test/CodeGen/RISCV/kcfi-mir.ll
Log Message:
-----------
[RISCV] Add call preserved regmask to tail calls. (#122181)
Every call should have regmask operand to indicate what registers are
preserved or clobbered by the call. VirtRegRewriter uses this to tell
MachineRegisterInfo what registers are clobbered by a function. If the
mask isn't present the registers potentially clobbered by a tail called
function aren't counted. I have checked ARM, AArch64, and X86 and they
all have a regmask operand on their tail calls.
I believe this fixes an issue I'm seeing with IPRA.
Commit: 3cb9648420fde52a4bcd429f5c1d174cd06051e7
https://github.com/llvm/llvm-project/commit/3cb9648420fde52a4bcd429f5c1d174cd06051e7
Author: Lang Hames <lhames at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
Log Message:
-----------
[llvm-jitlink] Shut down the session on an error return path.
Ensures cleanup of task dispatcher threads. This may address some of the
nondeterministic failures seen in llvm-jitlink regression tests recently.
Commit: 831287620567559e7078cb7f4cd1962d35c49893
https://github.com/llvm/llvm-project/commit/831287620567559e7078cb7f4cd1962d35c49893
Author: Lang Hames <lhames at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/TaskDispatch.h
M llvm/lib/ExecutionEngine/Orc/TaskDispatch.cpp
Log Message:
-----------
[ORC] Fix Task cleanup during DynamicThreadPoolTaskDispatcher::shutdown.
Threads created by DynamicThreadPoolTaskDispatcher::dispatch had been holding a
unique_ptr to the most recent Task, meaning that the Task would be destroyed
when the thread object was destroyed, but this would happen *after* the thread
signaled the Dispatcher that it was finished. This could cause
DynamicThreadPoolTaskDispatcher::shutdown to return (and consequently
ExecutionSession to be destroyed) before all Tasks were destroyed, with Task
destructors accessing ExecutionSession and related objects after they were
freed.
The fix is to reset the Task pointer immediately after it is run to trigger
cleanup, *then* (if there are no other tasks to run) signal the Dispatcher that
the thread is finished.
This patch also updates DynamicThreadPoolTaskDispatcher::dispatch to reject any
new Tasks dispatched after DynamicThreadPoolTaskDispatcher::shutdown is called.
Commit: cba9bd5cb07717daabcddd9850957b3a1cfe3e47
https://github.com/llvm/llvm-project/commit/cba9bd5cb07717daabcddd9850957b3a1cfe3e47
Author: Justin Bogner <mail at justinbogner.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/docs/DirectX/DXILResources.rst
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
A llvm/test/CodeGen/DirectX/BufferLoad-sm61.ll
A llvm/test/CodeGen/DirectX/RawBufferLoad-error64.ll
A llvm/test/CodeGen/DirectX/RawBufferLoad.ll
M llvm/utils/TableGen/DXILEmitter.cpp
Log Message:
-----------
[DirectX] Implement the resource.load.rawbuffer intrinsic (#121012)
This introduces `@llvm.dx.resource.load.rawbuffer` and generalizes the
buffer load docs under DirectX/DXILResources.
This resolves the "load" parts of #106188
Commit: 160a408a870b6a7a46cebfd58f8e2a0893e21632
https://github.com/llvm/llvm-project/commit/160a408a870b6a7a46cebfd58f8e2a0893e21632
Author: Lang Hames <lhames at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
Log Message:
-----------
[ORC] Remove an unused typedef.
Commit: fce0314c384f72cacbfcce148c9d110687c78261
https://github.com/llvm/llvm-project/commit/fce0314c384f72cacbfcce148c9d110687c78261
Author: Alexander Yermolovich <43973793+ayermolo at users.noreply.github.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
A llvm/test/DebugInfo/X86/dwarf5-debug-names-addr-tu-to-non-tu.ll
Log Message:
-----------
[LLVM][DWARF] Create debug names entry for non-tu top level DIE (#121856)
When creating a Type Unit (TU), LLVM attempts to do so optimistically.
However, if this fails, it discards the TU state and creates the TU
within the Compilation Unit (CU). In such cases, an entry for the
top-level DIE is not created in the debug names table.
This can cause issues when running llvm-dwarfdump --debug-names
--verify, as the missing entry will result in verification failure.
To address this issue, this patch adds a call to the
updateAcceleratorTables when TU creation fails. This ensures that the
debug names table is updated correctly, even in cases where TU creation
fails.
Commit: 5ae44bf718a460a2d5fd3636c8182093e1e27e7a
https://github.com/llvm/llvm-project/commit/5ae44bf718a460a2d5fd3636c8182093e1e27e7a
Author: wanglei <wanglei at loongson.cn>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
Log Message:
-----------
[LoongArch] Add debug location for register reload
Although the automatically inserted reload instruction in the `Epilogue`
is unrelated to the original code, in order to improve debugger
functionality, we have re-added debugging location information in the
reload instruction. When using an empty debugging location, the
following issue occurs:
```
loongson at linux:~$ cat -n test.c
1 int printf(const char *, ...);
2 int main(int argc, char **argv) {
3 printf("%d\n", argc);
4 return 0;
5 }
clang -g -O0 test.c -o test
```
Without this patch, the debugger is unable to correctly access the
current stack information when a breakpoint is set on line 4:
```
loongson at linux:~$ gdb -q ./test
Reading symbols from ./test...
(gdb) break 4
Breakpoint 1 at 0x7c0: file test.c, line 4.
(gdb) run
Starting program: /home/wanglei/test
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/loongarch64-linux-gnu/libthread_db.so.1".
1
Breakpoint 1, main (argc=<error reading variable: Cannot access memory at address 0xffffffffffffffe8>,
argv=<error reading variable: Cannot access memory at address 0xffffffffffffffe0>) at test.c:4
4 return 0;
```
Reviewed By: heiher, xen0n
Pull Request: https://github.com/llvm/llvm-project/pull/122057
Commit: 91ab10e8d6c256d841da1a1a1b47c334e08d95b9
https://github.com/llvm/llvm-project/commit/91ab10e8d6c256d841da1a1a1b47c334e08d95b9
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M .github/workflows/containers/github-action-ci/Dockerfile
Log Message:
-----------
[Github] Add sudo to CI container (#122036)
This patch adds sudo to the CI container and also adds the gha user as a
member of the sudo group along with making any member of the sudo group
able to run commands as root without a password. This is primarily
intended to enable installing new software through apt-get without
having to rebuild the container.
Commit: 783dc59b3ba16a785f48d0b58bf8c9f26a744aac
https://github.com/llvm/llvm-project/commit/783dc59b3ba16a785f48d0b58bf8c9f26a744aac
Author: Tristan Ross <tristan.ross at midstall.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M compiler-rt/cmake/Modules/AddCompilerRT.cmake
Log Message:
-----------
[compiler-rt] Check codesign in path before using (#99837)
Fixes an issue discovered with Nix where codesign is executed but Nix
cannot use codesign without faults. Use `find_program` in CMake to
ensure it is in `$PATH`.
Can be tested on macOS and change your path in such a way that
`codesign` isn't in it.
Related: https://github.com/NixOS/nixpkgs/pull/329058
Commit: c6b7bd42d58c166ed37cdd51bd46eaf2564b1f96
https://github.com/llvm/llvm-project/commit/c6b7bd42d58c166ed37cdd51bd46eaf2564b1f96
Author: Jack Huang <jackhuang1205 at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M libc/src/__support/File/file.cpp
M libc/src/__support/File/file.h
Log Message:
-----------
[libc] Support _IONBF buffering for read_unlocked (#120677)
Support _IONBF buffering for read_unlocked. Add the functions
read_unlocked_nbf() and read_unlocked_fbf().
Fixes: #120155
Commit: e438513f2e2ff7a19c671983ff22a14909c96859
https://github.com/llvm/llvm-project/commit/e438513f2e2ff7a19c671983ff22a14909c96859
Author: Hubert Tong <hubert.reinterpretcast at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
A llvm/test/CodeGen/PowerPC/global-merge-aix-zero-size-struct.ll
Log Message:
-----------
[AIX][AsmPrinter] Fix unsigned subtraction wrap-around (#122214)
Unsigned subtraction wrap-around occurs in `emitGlobalConstantImpl` on
an AIX-specific code path from 8e4423eb0888 when a structure type has
zero elements.
With assertions enabled, this manifests as:
```
TypeSize llvm::StructLayout::getElementOffset(unsigned int) const: Assertion `Idx < NumElements && "Invalid element idx!"' failed.
```
Commit: 18de1db0cfbfbbf12d16338923b43077a87dce18
https://github.com/llvm/llvm-project/commit/18de1db0cfbfbbf12d16338923b43077a87dce18
Author: Dhruv Srivastava <dhruv.srivastava at ibm.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M lldb/source/Host/posix/ConnectionFileDescriptorPosix.cpp
M lldb/source/Plugins/Language/ObjC/Cocoa.cpp
M lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp
Log Message:
-----------
[lldb][AIX] Some base #if _AIX changes of a minimal lldb build (#120979)
This PR is in reference to porting LLDB on AIX.
Link to discussions on llvm discourse and github:
1. https://discourse.llvm.org/t/port-lldb-to-ibm-aix/80640
2. https://github.com/llvm/llvm-project/issues/101657
The complete changes for porting are present in this draft PR:
https://github.com/llvm/llvm-project/pull/102601
Added some base #if _AIX changes for minimal lldb build.
Added a PR for clang-format changes separately, to rebase this on later:
- https://github.com/llvm/llvm-project/pull/120978
Review Request: @labath @DavidSpickett
Commit: f6c76d51801317543de1ace129996ae4dc1f72f7
https://github.com/llvm/llvm-project/commit/f6c76d51801317543de1ace129996ae4dc1f72f7
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Utils/LoopSimplify.cpp
Log Message:
-----------
[PM] Remove is_analysis label for LoopSimplify (#121433)
This reverts part of the changes in #118779
Commit: 5fdcea2d258befca3925d02d1b37f93174ac0153
https://github.com/llvm/llvm-project/commit/5fdcea2d258befca3925d02d1b37f93174ac0153
Author: Fangrui Song <i at maskray.me>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/lib/CodeGen/BackendConsumer.h
M clang/lib/CodeGen/CodeGenAction.cpp
Log Message:
-----------
[clang] Simplify BackendConsumer. NFC
Commit: 929b90be30c3a3063e29a94db2079ee4c4f44f0d
https://github.com/llvm/llvm-project/commit/929b90be30c3a3063e29a94db2079ee4c4f44f0d
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M .github/workflows/containers/github-action-ci/Dockerfile
Log Message:
-----------
[Github] Add sccache to CI container (#122063)
This patch adds sccache to the CI container so that the
llvm-project-tests workflow does not fail due to missing sccache.
Commit: 5d03235c73476dfa3d2dd48c76de106fd1aa2ac7
https://github.com/llvm/llvm-project/commit/5d03235c73476dfa3d2dd48c76de106fd1aa2ac7
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/test/Driver/riscv-cpus.c
M clang/test/Misc/target-invalid-cpu-note/riscv.c
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/RISCVProcessors.td
Log Message:
-----------
[RISCV] Add -mcpu=sifive-p550. (#122164)
This is the CPU in SiFive's HiFive Premier P550 development board.
Scheduler model will come in a later patch.
Commit: 459d413b74b7f41e820328fefc38ff93b2e42b00
https://github.com/llvm/llvm-project/commit/459d413b74b7f41e820328fefc38ff93b2e42b00
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M .github/workflows/premerge.yaml
Log Message:
-----------
[CI][Github] Do not fail premerge job
The postcommit job is currently sending emails on failures. A lot of these
emails are useless noise as there are still some problems with the new
infrastructure that need to be fixed before the results are reliable.
Commit: b30f9d74d6a0f735ef597b1acae73daac2d7df39
https://github.com/llvm/llvm-project/commit/b30f9d74d6a0f735ef597b1acae73daac2d7df39
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M libc/src/__support/threads/thread.cpp
Log Message:
-----------
[libc] Fix return value of __cxa_thread_atexit_impl function. (#122171)
This has been added in 0071a79532e8d664b734956a431d8c8c942cc25e to
support TLS destructors. Return value of __cxa_thread_atexit is supposed
to be the same as std::atexit - zero on success, non-zero on failure.
Update the code to do just that (also be consistent with llvm-libc's
existing atexit / at_quick_exit implementations).
Commit: 6dd1315cf0cfa87c2ace2e7263ba505c4b38df3d
https://github.com/llvm/llvm-project/commit/6dd1315cf0cfa87c2ace2e7263ba505c4b38df3d
Author: Fangrui Song <i at maskray.me>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/lib/CodeGen/BackendConsumer.h
M clang/lib/CodeGen/CodeGenAction.cpp
Log Message:
-----------
[clang] Simplify BackendConsumer after #69371
Commit: 1a7e7ef2435763a4ba9171303340daacf7bbb0b6
https://github.com/llvm/llvm-project/commit/1a7e7ef2435763a4ba9171303340daacf7bbb0b6
Author: Fangrui Song <i at maskray.me>
Date: 2025-01-08 (Wed, 08 Jan 2025)
Changed paths:
M clang/include/clang/CodeGen/BackendUtil.h
Log Message:
-----------
Format BackendUtil.h. NFC
Prepare for a -ftime-report change that adds a forward declaration and
changes the signature of EmitBackendOutput.
Commit: 9ba6e8dc91920b6db40ee76f4fb22c71e9b9cd97
https://github.com/llvm/llvm-project/commit/9ba6e8dc91920b6db40ee76f4fb22c71e9b9cd97
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/docs/LibASTMatchersReference.html
M clang/docs/ReleaseNotes.rst
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
Log Message:
-----------
[Clang][ASTMatcher] Extend `hasDependentName` to match DependentNameType name (#121975)
Extend `hasDependentName` to be a polymorphic matcher that
matches the name of either `DependentNameType` or
`DependentScopeDeclRefExpr`
Commit: b8337dc4b20bfd7cde8cf37df6c12df4f751201b
https://github.com/llvm/llvm-project/commit/b8337dc4b20bfd7cde8cf37df6c12df4f751201b
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/and-xor-or.ll
Log Message:
-----------
[InstCombine] Handle commuted patterns in `foldBinOpShiftWithShift` (#122126)
Closes https://github.com/llvm/llvm-project/issues/121775.
Commit: d80bdf7261e7d785b98f827eeed950b2147f70e6
https://github.com/llvm/llvm-project/commit/d80bdf7261e7d785b98f827eeed950b2147f70e6
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/include/llvm/IR/IRBuilder.h
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
Log Message:
-----------
[IRBuilder] Add a helper function to intersect FMFs from two instructions (#122059)
Address review comment in
https://github.com/llvm/llvm-project/pull/121899#discussion_r1905765776
Commit: 42b23257c5519b63a0516bac9f7986367e15e794
https://github.com/llvm/llvm-project/commit/42b23257c5519b63a0516bac9f7986367e15e794
Author: Lang Hames <lhames at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/Core.h
M llvm/lib/ExecutionEngine/Orc/Core.cpp
Log Message:
-----------
[ORC] Fail materialization in tasks that are destroyed before running.
If a MaterialiaztionTask is destroyed before running then we need to call
failMaterialization on the MaterializationResponsibility member.
Commit: 24a92f509a4e9ebaf5ae431409520d30055ea6fc
https://github.com/llvm/llvm-project/commit/24a92f509a4e9ebaf5ae431409520d30055ea6fc
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
Log Message:
-----------
DependencyScanningTool.h: Use more robust `std::function` (fixup for #120699)
Commit: 61b294aa15e9e2149398a641121fc3e977284a17
https://github.com/llvm/llvm-project/commit/61b294aa15e9e2149398a641121fc3e977284a17
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
M llvm/unittests/ProfileData/CoverageMappingTest.cpp
Log Message:
-----------
Introduce CounterExpressionBuilder::subst(C, Map) (#112698)
This return a counter for each term in the expression replaced by
ReplaceMap.
At the moment, this doesn't update the Map, so Map is marked as `const`.
Commit: f5cd181ffbb7cb61d582fe130d46580d5969d47a
https://github.com/llvm/llvm-project/commit/f5cd181ffbb7cb61d582fe130d46580d5969d47a
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/lib/CodeGen/CoverageMappingGen.cpp
Log Message:
-----------
[Coverage] Introduce `getBranchCounterPair()`. NFC. (#112702)
This aggregates the generation of branch counter pair as `ExecCnt` and
`SkipCnt`, to aggregate `CounterExpr::subtract`. At the moment:
- This change preserves the behavior of
`llvm::EnableSingleByteCoverage`. Almost of SingleByteCoverage will be
cleaned up by coming commits.
- `IsCounterEqual(Out, Par)` is introduced instead of
`Counter::operator==`. Tweaks would be required for the comparison for
additional counters.
https://discourse.llvm.org/t/rfc-integrating-singlebytecoverage-with-branch-coverage/82492
Commit: d30a5fc5a2f88dee1198bd2285ddf1c55da51bb6
https://github.com/llvm/llvm-project/commit/d30a5fc5a2f88dee1198bd2285ddf1c55da51bb6
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
Log Message:
-----------
[NFC][AArch64] Explicitly define undefined bits for instructions (#122129)
Explicitly define bits for the following instructions:
* Bit 21 for stltxr/ldatxr (defaults to zero) wasn't defined.
* Bits 16-20 for ldaxpx/ldxpx (unpredictable) weren't defined.
* Bits 10-14 for smulh/umulh (unpredictable) weren't defined.
Commit: 397ac44f623f891d8f05d6673a95984ac0a26671
https://github.com/llvm/llvm-project/commit/397ac44f623f891d8f05d6673a95984ac0a26671
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/CodeGenPGO.h
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/lib/CodeGen/CoverageMappingGen.h
Log Message:
-----------
[Coverage] Introduce the type `CounterPair` for RegionCounterMap. NFC. (#112724)
`CounterPair` can hold `<uint32_t, uint32_t>` instead of current
`unsigned`, to hold also the counter number of SkipPath. For now, this
change provides the skeleton and only `CounterPair::Executed` is used.
Each counter number can have `None` to suppress emitting counter
increment. 2nd element `Skipped` is initialized as `None` by default,
since most `Stmt*` don't have a pair of counters.
This change also provides stubs for the verifier. I'll provide the impl
of verifier for `+Asserts` later.
`markStmtAsUsed(bool, Stmt*)` may be used to inform that other side
counter may not emitted.
`markStmtMaybeUsed(S)` may be used for the `Stmt` and its inner will be
excluded for emission in the case of skipping by constant folding. I put
it into places where I found.
`verifyCounterMap()` will check the coverage map and the counter map,
and can be used to report inconsistency.
These verifier methods shall be eliminated in `-Asserts`.
https://discourse.llvm.org/t/rfc-integrating-singlebytecoverage-with-branch-coverage/82492
Commit: 4847395c5459f9c476808f9337abdae7fbd78a23
https://github.com/llvm/llvm-project/commit/4847395c5459f9c476808f9337abdae7fbd78a23
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/docs/UndefinedBehaviorSanitizer.rst
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/test/CodeGen/catch-nullptr-and-nonzero-offset-when-nullptr-is-defined.c
M clang/test/CodeGen/catch-nullptr-and-nonzero-offset.c
M clang/test/CodeGen/catch-pointer-overflow-volatile.c
M clang/test/CodeGen/catch-pointer-overflow.c
M clang/test/CodeGen/ubsan-pointer-overflow.c
M compiler-rt/test/ubsan/TestCases/Pointer/nullptr-and-nonzero-offset-constants.cpp
M compiler-rt/test/ubsan/TestCases/Pointer/nullptr-and-nonzero-offset-summary.cpp
M compiler-rt/test/ubsan/TestCases/Pointer/nullptr-and-nonzero-offset-variable.cpp
M compiler-rt/test/ubsan_minimal/TestCases/nullptr-and-nonzero-offset.c
Log Message:
-----------
[Clang] Adjust pointer-overflow sanitizer for N3322 (#120719)
N3322 makes NULL + 0 well-defined in C, matching the C++ semantics.
Adjust the pointer-overflow sanitizer to no longer report NULL + 0 as a
pointer overflow in any language mode. NULL + nonzero will of course
continue to be reported.
As N3322 is part of
https://www.open-std.org/jtc1/sc22/wg14/www/previous.html, and we never
performed any optimizations based on NULL + 0 being undefined in the
first place, I'm applying this change to all C versions.
Commit: 1b2943534fa20a61c07592a9bd90203e682ae0f4
https://github.com/llvm/llvm-project/commit/1b2943534fa20a61c07592a9bd90203e682ae0f4
Author: Nicholas Guy <nicholas.guy at arm.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
A llvm/test/CodeGen/AArch64/complex-deinterleaving-opt-crash.ll
Log Message:
-----------
[llvm] Fix crash caused by reprocessing complex reductions (#122077)
If a complex pattern had the shape of both a complex->complex reduction
and a complex->single reduction, the matching would recognise both and
deem the graph a valid transformation. Preventing this reprocessing
results in only one of these matching, meaning that in the case of an
invalid graph, we don't try to transform it anyway.
Commit: 71f7b972c3a28269ae045c4d87b1ccb5a2860852
https://github.com/llvm/llvm-project/commit/71f7b972c3a28269ae045c4d87b1ccb5a2860852
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/include/llvm/Transforms/Utils/Local.h
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/lib/Transforms/Utils/Local.cpp
Log Message:
-----------
[Local] Make combineAAMetadata() more principled (#122091)
This moves combineAAMetadata() into Local and implements it via a new
AAOnly flag, which will intersect only AA metadata and keep other known
metadata.
The existing KnownIDs list is dropped, because it is redundant with the
switch in combineMetadata(), which already drops unknown metadata.
I tried a few variants of this, and ultimately went with the AAOnly flag
because this way we make an explicit choice for each metadata kind
supported by combineMetadata(), and ignoring the flag gives you
conservatively correct behavior.
I checked that the memcpy tests still pass if we adjust the logic for
MD_memprof/MD_callsite to drop the metadata instead of arbitrarily
picking one.
Fixes https://github.com/llvm/llvm-project/issues/121495.
Commit: 38565da5259729898c2a552d54b72f3314241734
https://github.com/llvm/llvm-project/commit/38565da5259729898c2a552d54b72f3314241734
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[LangRef] Add some documentation for ABI / call-site attributes (#121930)
Explicitly mention that attributes can be applied to call-sites, and
explain that ABI attributes between the call-site and called function
should match.
Companion lint change: https://github.com/llvm/llvm-project/pull/121929
Inspired by:
https://discourse.llvm.org/t/difference-between-call-site-attributes-and-declaration-attributes/83902
Commit: f22441c14d844d2baedaaca02fe5382d300d7e46
https://github.com/llvm/llvm-project/commit/f22441c14d844d2baedaaca02fe5382d300d7e46
Author: David Green <david.green at arm.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
A llvm/test/Analysis/CostModel/AArch64/sve-div.ll
A llvm/test/Analysis/CostModel/AArch64/sve-rem.ll
Log Message:
-----------
[AArch64] Add sve div and rem tests. NFC
Commit: f07b10b7c4706735c1e206b64da4c43aaf88b6af
https://github.com/llvm/llvm-project/commit/f07b10b7c4706735c1e206b64da4c43aaf88b6af
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/include/llvm/Support/Recycler.h
M llvm/unittests/Support/RecyclerTest.cpp
Log Message:
-----------
[Support] Recycler: Match dealloc size and enforce min size (#121889)
Address sanitizer found mismatching deallocation size in Recycler.
Commit: f88ef1bd1bd6ea27237d2abd03b8955e550f97c1
https://github.com/llvm/llvm-project/commit/f88ef1bd1bd6ea27237d2abd03b8955e550f97c1
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/include/llvm/IR/VectorTypeUtils.h
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/lib/IR/VectorTypeUtils.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/AArch64/scalable-struct-return.ll
A llvm/test/Transforms/LoopVectorize/struct-return.ll
Log Message:
-----------
[LV] Teach LoopVectorizationLegality about struct vector calls (#119221)
This is a split-off from #109833 and only adds code relating to checking
if a struct-returning call can be vectorized.
This initial patch only allows the case where all users of the struct
return are `extractvalue` operations that can be widened.
```
%call = tail call { float, float } @foo(float %in_val)
%extract_a = extractvalue { float, float } %call, 0
%extract_b = extractvalue { float, float } %call, 1
```
Note: The tests require the VFABI changes from #119000 to pass.
Commit: 06673a9e9b186a65f5eb60a59a4ee9afba6637d4
https://github.com/llvm/llvm-project/commit/06673a9e9b186a65f5eb60a59a4ee9afba6637d4
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/include/bitset
M libcxx/test/std/utilities/template.bitset/bitset.members/index_const.pass.cpp
M libcxx/test/std/utilities/template.bitset/bitset.members/nonstdmem.uglified.compile.pass.cpp
Log Message:
-----------
[libc++] Uglify non-standard member typedef const_reference in bitset (#121620)
According to
[[template.bitset.general]](https://eel.is/c++draft/template.bitset.general),
`std::bitset` is supposed to have only
one (public) member typedef, `reference`. However, libc++'s
implementation of `std::bitset` offers more that that. Specifically, it
offers a public typedef `const_reference` and two private typedefs
`size_type` and `difference_type`. These non-standard member typedefs,
despite being private, can cause potential ambiguities in name lookup in
user-defined classes, as demonstrated in issue #121618.
Fixing the public member typedef `const_reference` is straightforward:
we can simply replace it with an `__ugly_name` such as
`__const_reference`. However, fixing the private member typedefs
`size_type` and `difference_type` is not so straightforward as they are
required by the `__bit_iterator` class and the corresponding algorithms
optimized for `__bit_iterator`s (e.g., `ranges::fill`).
This PR fixes the member typedef `const_reference` by using uglified
name for it. Further work will be undertaken to address `size_type` and
`difference_type`.
Follows up #80706, #111127, and #112843,
Commit: 6c06253b8557102c52e252f9025ea3d393603324
https://github.com/llvm/llvm-project/commit/6c06253b8557102c52e252f9025ea3d393603324
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M libcxx/include/__vector/vector_bool.h
M libcxx/test/std/containers/sequences/vector.bool/flip.pass.cpp
Log Message:
-----------
[libc++] Fix erroneous internal capacity evaluation in vector<bool> (#120577)
This PR fixes the erroneous internal capacity evaluation in
`vector<bool>`, which caused a subsequent SIGSEGV error when calling
`flip()` on `vector<bool>`. By fixing the internal capacity evaluation,
the SIGSEGV is automatically resolved.
Commit: a261eee61200cb6aa3eac0e7dc03940a6afd7d54
https://github.com/llvm/llvm-project/commit/a261eee61200cb6aa3eac0e7dc03940a6afd7d54
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M lldb/include/lldb/Symbol/Block.h
M lldb/unittests/Utility/RangeMapTest.cpp
Log Message:
-----------
[lldb] Store *signed* ranges in lldb_private::Block (#120224)
This is to support functions whose entry points aren't their lowest
address
(https://discourse.llvm.org/t/rfcish-support-for-discontinuous-functions/83244).
The alternative is to keep blocks relative to the lowest address, but
then introduce a separate concept for the function entry point, which I
think would be more confusing.
This patch just changes the type signedness, it doesn't create any
negative offsets yet. Since combining values with different signs can
sometimes produce unexpected results, and since this is the first use of
RangeVector with a signed type, I'm adding a test to verify that at
least the core functionality works correctly.
Commit: 659cd2a48a25ec4deabf4c7937acbaec588a2724
https://github.com/llvm/llvm-project/commit/659cd2a48a25ec4deabf4c7937acbaec588a2724
Author: Chinmay Deshpande <chdeshpa at amd.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
A llvm/test/CodeGen/AMDGPU/prevent-fmul-hoist-ir.ll
Log Message:
-----------
[NFC][AMDGPU] Pre-commit tests for IR variant - isFMAFasterThanFMulAdd (#121925)
Commit: b79ed8729b3d6d5482481c41a7de2cd75b0f61df
https://github.com/llvm/llvm-project/commit/b79ed8729b3d6d5482481c41a7de2cd75b0f61df
Author: Sergio Afonso <safonsof at amd.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
Log Message:
-----------
[OpenMP][OMPIRBuilder] Handle non-failing calls properly (#115863)
The preprocessor definition used to enable asserts and the one that
`llvm::Error` and `llvm::Expected` use to ensure all created instances are
checked are not the same. By making these checks inside of an `assert` in cases
where errors are not expected, certain build configurations would trigger
runtime failures (e.g. `-DLLVM_ENABLE_ASSERTIONS=OFF
-DLLVM_UNREACHABLE_OPTIMIZE=ON`).
The `llvm::cantFail()` function, which was intended for this use case, is used
by this patch in place of `assert` to prevent these runtime failures. In tests,
new preprocessor definitions based on `ASSERT_THAT_EXPECTED` and
`EXPECT_THAT_EXPECTED` are used instead, to avoid silent failures in release
builds.
Commit: fd6baa477fa13a4b893aeeba7fce92eb6a1f4962
https://github.com/llvm/llvm-project/commit/fd6baa477fa13a4b893aeeba7fce92eb6a1f4962
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/lib/AST/ExprConstant.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/AST/ByteCode/cxx20.cpp
M clang/test/AST/ByteCode/functions.cpp
M clang/test/AST/ByteCode/literals.cpp
M clang/test/CXX/expr/expr.const/p2-0x.cpp
M clang/test/SemaCXX/constant-expression-cxx11.cpp
M clang/test/SemaCXX/constant-expression-cxx14.cpp
Log Message:
-----------
[clang][ExprConst] Add diagnostics for invalid binary arithmetic (#118475)
... between unrelated declarations or literals.
Leaving this small (I haven't run the whole test suite locally) to get
some feedback on the wording and implementation first.
The output of the sample in
https://github.com/llvm/llvm-project/issues/117409 is now:
```console
./array.cpp:57:6: warning: expression result unused [-Wunused-value]
57 | am - aj.af();
| ~~ ^ ~~~~~~~
./array.cpp:70:8: error: call to consteval function 'L::L<bx>' is not a constant expression
70 | q(0, [] {
| ^
./array.cpp:57:6: note: arithmetic on addresses of literals has unspecified value
57 | am - aj.af();
| ^
./array.cpp:62:5: note: in call to 'al(&""[0], {&""[0]})'
62 | al(bp.af(), k);
| ^~~~~~~~~~~~~~
./array.cpp:70:8: note: in call to 'L<bx>({})'
70 | q(0, [] {
| ^~~~
71 | struct bx {
| ~~~~~~~~~~~
72 | constexpr operator ab<g<l<decltype(""[0])>::e>::e>() { return t(""); }
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 | };
| ~~
74 | return bx();
| ~~~~~~~~~~~~
75 | }());
| ~~~
```
The output for
```c++
int a, b;
constexpr int n = &b - &a
```
is now:
```console
./array.cpp:80:15: error: constexpr variable 'n' must be initialized by a constant expression
80 | constexpr int n = &b - &a;
| ^ ~~~~~~~
./array.cpp:80:22: note: arithmetic involving '&b' and '&a' has unspecified value
80 | constexpr int n = &b - &a;
| ^
1 error generated.
```
Commit: d3f1b864ae1b2c3fce343863d494a40fc231ca16
https://github.com/llvm/llvm-project/commit/d3f1b864ae1b2c3fce343863d494a40fc231ca16
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M lldb/include/lldb/Target/MemoryRegionInfo.h
Log Message:
-----------
[lldb][NFC] clang-format MemoryRegionInfo.h
To clean up future changes for shadow stack regions.
Commit: 703e2d5a19916525eb294d6bb899fbfd1655594f
https://github.com/llvm/llvm-project/commit/703e2d5a19916525eb294d6bb899fbfd1655594f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
Log Message:
-----------
[X86] Add test coverage for #116815
Commit: aedb30fdc7cf83290b0f0d4246cf94fd62be749b
https://github.com/llvm/llvm-project/commit/aedb30fdc7cf83290b0f0d4246cf94fd62be749b
Author: CHANDRA GHALE <chandra.nitdgp at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CodeGenFunction.h
A clang/test/OpenMP/parallel_masked_taskloop_codegen.c
Log Message:
-----------
[OpenMP] codegen support for masked combined construct parallel masked taskloop (#121741)
Added codegen support for combined masked constructs Parallel masked
taskloop.
Added implementation for EmitOMPParallelMaskedTaskLoopDirective.
---------
Co-authored-by: Chandra Ghale <ghale at pe31.hpc.amslabs.hpecorp.net>
Commit: f1d5efe37ea7891b3fc9f78b6fdbbe1dc207bbd6
https://github.com/llvm/llvm-project/commit/f1d5efe37ea7891b3fc9f78b6fdbbe1dc207bbd6
Author: Cullen Rhodes <cullen.rhodes at arm.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/const-shift-of-constmasked.ll
M llvm/test/CodeGen/AArch64/extract-bits.ll
M llvm/test/CodeGen/AArch64/fpenv.ll
M llvm/test/CodeGen/AArch64/xbfiz.ll
Log Message:
-----------
[AArch64] Combine and lsl into ubfiz (#118974)
Fixes #118132.
Commit: dcdf44aca7be8a3e8f36d308b7fd5e5979140574
https://github.com/llvm/llvm-project/commit/dcdf44aca7be8a3e8f36d308b7fd5e5979140574
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/select.ll
Log Message:
-----------
[InstCombine] Remove foldSelectICmpEq() fold (#122098)
This fold matches complex patterns, for which we have no proof of
real-world relevance, and which does not actually handle the originally
motivating cases from https://github.com/llvm/llvm-project/issues/71792
either.
In https://github.com/llvm/llvm-project/pull/121708 and
https://github.com/llvm/llvm-project/pull/121753 we have handled some
simpler variants by extending existing folds.
I propose to remove this code until we have evidence that it is useful
for something.
Commit: c8ee1164bd6ae2f0a603c53d1d29ad5a3225c5cd
https://github.com/llvm/llvm-project/commit/c8ee1164bd6ae2f0a603c53d1d29ad5a3225c5cd
Author: Luke Lau <luke at igalia.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
A llvm/test/CodeGen/RISCV/rvv/allone-masked-to-unmasked.mir
Log Message:
-----------
[RISCV] Fix masked->unmasked peephole handling masked pseudos with no passthru (#122253)
Some masked pseudos like PseudoVCPOP_M_B8_MASK don't have a passthru,
but in the masked->unmasked peephole we assumed the masked pseudo always
had one.
This checks for a passthru first and fixes #122245.
Commit: b0697dc1de1f6fbc0f3c192e5420203c8afe3f99
https://github.com/llvm/llvm-project/commit/b0697dc1de1f6fbc0f3c192e5420203c8afe3f99
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll
M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
M llvm/test/Transforms/LoopVectorize/uncountable-single-exit-loops.ll
Log Message:
-----------
[LV] Only check isVectorizableEarlyExitLoop with multiple exits. (#121994)
Currently we emit early-exit related debug messages/remarks even when
there is a single exit. Update to only check isVectorizableEarlyExitLoop
if there isn't a single exit block.
PR: https://github.com/llvm/llvm-project/pull/121994
Commit: c05fc9b6d5559cc37e389f20a6c0c7b6f291b70e
https://github.com/llvm/llvm-project/commit/c05fc9b6d5559cc37e389f20a6c0c7b6f291b70e
Author: David Green <david.green at arm.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
Log Message:
-----------
[AArch64] Fix sebvector -> subvector typo. NFC
Commit: cdd652eb28d1dcec28fec289674940d11a92c4fa
https://github.com/llvm/llvm-project/commit/cdd652eb28d1dcec28fec289674940d11a92c4fa
Author: Pietro Ghiglio <pietro.ghiglio at codeplay.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir
Log Message:
-----------
[MLIR][GPU] Support bf16 and i1 gpu::shuffles to LLVMSPIRV conversion (#119675)
This PR adds support to the `bf16` and `i1` data types when converting
`gpu::shuffle` to the `LLVMSPV` dialect, by inserting `bitcast` to/from
`i16` (for `bf16`) and extending/truncating to `i8` (for `i1`).
Commit: 86440cbc742e42f7ee9d4656fe7c231a477e447b
https://github.com/llvm/llvm-project/commit/86440cbc742e42f7ee9d4656fe7c231a477e447b
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_optnone.ll
Log Message:
-----------
[SPIR-V] Prefer SPV_INTEL_optnone over SPV_EXT_optnone when both extensions are available (#122082)
This PR fixes https://github.com/llvm/llvm-project/issues/122075. We
prefer SPV_INTEL_optnone over SPV_EXT_optnone when both extensions are
available, otherwise, when a target specifies a required extension
explicitly rather than allowing any of those (e.g., by providing
--spirv-ext=all command line argument), the Backend's behavior remains
unchanged. An existing test case is updated to check the case of 2
alternative extensions available at the same time.
Commit: e41f96ad251a403d02919755d9fe2b473a46966a
https://github.com/llvm/llvm-project/commit/e41f96ad251a403d02919755d9fe2b473a46966a
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/UnusedLocalNonTrivialVariableCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] clean `LangOpts` parameter in `explicitMarkUnused` matcher (#122170)
https://github.com/llvm/llvm-project/pull/121783#discussion_r1907847579
Commit: c3d1a50d6a36ce19606226a352bf921cec02e265
https://github.com/llvm/llvm-project/commit/c3d1a50d6a36ce19606226a352bf921cec02e265
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dependency for b79ed8729b3d6d5482481c41a7de2cd75b0f61df
Commit: 52c338daece1ea5556865373c777bdad79a05fd8
https://github.com/llvm/llvm-project/commit/52c338daece1ea5556865373c777bdad79a05fd8
Author: macurtis-amd <macurtis at amd.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/lib/Driver/OffloadBundler.cpp
M llvm/include/llvm/Support/Timer.h
M llvm/lib/Support/Timer.cpp
Log Message:
-----------
[llvm][NFC] Rework Timer.cpp globals to ensure valid lifetimes (#121663)
This is intended to help with flang `-ftime-report` support:
- #107270.
With this change, I was able to cherry-pick #107270, uncomment
`llvm::TimePassesIsEnabled = true;` and compile with `-ftime-report`.
I also noticed that `clang/lib/Driver/OffloadBundler.cpp` was statically
constructing a `TimerGroup` and changed it to lazily construct via
ManagedStatic.
Commit: e3e26dc41a6ad78c35a1a723cd77f5db8599797d
https://github.com/llvm/llvm-project/commit/e3e26dc41a6ad78c35a1a723cd77f5db8599797d
Author: Jie Fu <jiefu at tencent.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Support/Timer.cpp
Log Message:
-----------
[llvm] Remove extra ';' outside of a function (NFC)
/llvm-project/llvm/lib/Support/Timer.cpp:565:74:
error: extra ';' outside of a function is incompatible with C++98 [-Werror,-Wc++98-compat-extra-semi]
static bool mtg::TrackSpace() { return ManagedTimerGlobals->TrackSpace; };
^
1 error generated.
Commit: b4e17d4a314ed87ff6b40b4b05397d4b25b6636a
https://github.com/llvm/llvm-project/commit/b4e17d4a314ed87ff6b40b4b05397d4b25b6636a
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/CodeGen/MachineLICM.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null.ll
M llvm/test/CodeGen/AMDGPU/exec-mask-opt-cannot-create-empty-or-backward-segment.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i32_system.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_system.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_system_noprivate.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/global-load-saddr-to-vaddr.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i32_system.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i64_system.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/insert-delay-alu-bug.ll
M llvm/test/CodeGen/AMDGPU/licm-regpressure.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/memcpy-crash-issue63986.ll
M llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.ll
M llvm/test/CodeGen/AMDGPU/optimize-negated-cond.ll
M llvm/test/CodeGen/AMDGPU/sdiv64.ll
M llvm/test/CodeGen/AMDGPU/srem64.ll
M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
M llvm/test/CodeGen/AMDGPU/udiv64.ll
M llvm/test/CodeGen/AMDGPU/undefined-subreg-liverange.ll
M llvm/test/CodeGen/AMDGPU/urem64.ll
M llvm/test/CodeGen/AMDGPU/vgpr-descriptor-waterfall-loop-idom-update.ll
M llvm/test/CodeGen/LoongArch/jr-without-ra.ll
M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
M llvm/test/CodeGen/Thumb2/mve-blockplacement.ll
M llvm/test/CodeGen/Thumb2/mve-gather-increment.ll
M llvm/test/CodeGen/Thumb2/mve-gather-scatter-optimisation.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/flat_atomic.ll
Log Message:
-----------
[MachineLICM] Use `RegisterClassInfo::getRegPressureSetLimit` (#119826)
`RegisterClassInfo::getRegPressureSetLimit` is a wrapper of
`TargetRegisterInfo::getRegPressureSetLimit` with some logics to
adjust the limit by removing reserved registers.
It seems that we shouldn't use
`TargetRegisterInfo::getRegPressureSetLimit`
directly, just like the comment "This limit must be adjusted
dynamically for reserved registers" said.
Separate from https://github.com/llvm/llvm-project/pull/118787
Commit: 5ff7f479a1f30d9c5393e4f94df6178a63cc2236
https://github.com/llvm/llvm-project/commit/5ff7f479a1f30d9c5393e4f94df6178a63cc2236
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/DeclCXX.h
M clang/lib/AST/DeclCXX.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/test/CXX/expr/expr.unary/expr.delete/p10.cpp
M clang/test/SemaCXX/cxx2a-destroying-delete.cpp
M clang/test/SemaCXX/noexcept-destroying-delete.cpp
Log Message:
-----------
[C++20] Destroying delete and deleted destructors (#118800)
When a destroying delete overload is selected, the destructor is not
automatically called. Therefore, the destructor can be deleted without
causing the program to be ill-formed.
Fixes #46818
Commit: a0d77492110cce44d563166ed7ce21fdb3670f64
https://github.com/llvm/llvm-project/commit/a0d77492110cce44d563166ed7ce21fdb3670f64
Author: Janis Heims <janis.heims at rohde-schwarz.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/M68k/AsmParser/M68kAsmParser.cpp
M llvm/lib/Target/M68k/Disassembler/M68kDisassembler.cpp
M llvm/lib/Target/M68k/M68kInstrData.td
A llvm/test/MC/M68k/Data/Classes/MxMoveSR.s
Log Message:
-----------
[M68k] implement move to and from sr (#111145)
This PR enables the use of the status register in inline assembly.
This is necessary to, for example, set and retrieve the current
interrupt mask.
---------
Co-authored-by: kirk <knickish at gmail.com>
Commit: 81ae6686ab026c820f2f23d3c18cdd65ecb2ae7c
https://github.com/llvm/llvm-project/commit/81ae6686ab026c820f2f23d3c18cdd65ecb2ae7c
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M libcxx/include/__locale_dir/locale_base_api.h
M libcxx/include/__locale_dir/support/bsd_like.h
M libcxx/include/__locale_dir/support/windows.h
M libcxx/src/locale.cpp
Log Message:
-----------
[libc++] Add __iswctype to the locale base API since it's required by <locale> (#122168)
Commit: c85d5163b1d204d5886010e6640654721925a84e
https://github.com/llvm/llvm-project/commit/c85d5163b1d204d5886010e6640654721925a84e
Author: CatherineMoore <catmoore at amd.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
Log Message:
-----------
[Clang][OpenMP][Doc] Update OpenMPSupport.rst (#122174)
This patch adds a section for OpenMP 6.0 features.
---------
Co-authored-by: Joseph Huber <huberjn at outlook.com>
Commit: f77a7dd875c7f20572fba9a86c7ff04a94206a07
https://github.com/llvm/llvm-project/commit/f77a7dd875c7f20572fba9a86c7ff04a94206a07
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
Log Message:
-----------
[RISCV][VLOPT] Add getOperandInfo for integer and floating point widening reductions (#122176)
Commit: d2b78c646b9b7b63f1029ad1de954044ee6ebc32
https://github.com/llvm/llvm-project/commit/d2b78c646b9b7b63f1029ad1de954044ee6ebc32
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/vector_shuffle.packed.ll
Log Message:
-----------
AMDGPU: Custom lower bf16 shuffles (#122252)
We already custom lower the other 16-bit element type shuffles.
Commit: d7235876867dd21b636868e242400271cca15109
https://github.com/llvm/llvm-project/commit/d7235876867dd21b636868e242400271cca15109
Author: Steven Perron <stevenperron at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/lib/Driver/Driver.cpp
M clang/test/Driver/dxc_spirv.hlsl
M llvm/lib/TargetParser/Triple.cpp
Log Message:
-----------
[HLSL] Explicitly set the SPIR-V version with spv-target-env (#121961)
In DXC, setting the vulkan version automatically sets the target spir-v
version to the maximum spir-v version that the vulkan version must
support. So for Vulkan 1.2, we set the spir-v version to spirv 1.5
because every implementation of Vulkan 1.2 must support spirv 1.5, but
not spir-v 1.6.
Commit: c57810a00a24141391566b23319b61362ba62736
https://github.com/llvm/llvm-project/commit/c57810a00a24141391566b23319b61362ba62736
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M lld/COFF/Writer.cpp
A lld/test/COFF/baserel-sort.yaml
Log Message:
-----------
[LLD][COFF] Sort base relocations (#121699)
This change ensures that base relocations are sorted in the output,
aligning with MSVC linker behavior. While input files typically provide
sorted relocations, this update guarantees correct sorting even if the
input relocations are unordered.
Commit: cb04bc05ebab5f44b13639c0e3613506180bdbac
https://github.com/llvm/llvm-project/commit/cb04bc05ebab5f44b13639c0e3613506180bdbac
Author: Brad Smith <brad at comstyle.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M lldb/source/Host/common/Host.cpp
M lldb/source/Host/freebsd/Host.cpp
M lldb/source/Host/linux/Host.cpp
M lldb/source/Host/netbsd/HostNetBSD.cpp
M lldb/source/Host/openbsd/Host.cpp
Log Message:
-----------
[lldb] Move GetEnvironment function into common code (#122173)
Commit: 550841f839bf88d8021b98844746c95df3aecff1
https://github.com/llvm/llvm-project/commit/550841f839bf88d8021b98844746c95df3aecff1
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
Log Message:
-----------
[RISCV][VLOPT] Add fp-reductions to getOperandInfo (#122151)
Commit: aa0191e3feccf8253f16594922ee924b38e7760d
https://github.com/llvm/llvm-project/commit/aa0191e3feccf8253f16594922ee924b38e7760d
Author: Balazs Benics <benicsbalazs at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/test/Analysis/z3/crosscheck-statistics.c
Log Message:
-----------
[analyzer][NFC] Update stale test after #97265 (#122272)
In my patch there, I left a test expectation stale. Tests with
`REQUIRES: Z3` never run because no bots check such configurations.
Here I'm adjusting the test expectations to meet reality.
Commit: 1a73654b3212b623ac21b9deb3aeaadc6906b7e4
https://github.com/llvm/llvm-project/commit/1a73654b3212b623ac21b9deb3aeaadc6906b7e4
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/test/Parser/namespace-attributes.cpp
Log Message:
-----------
[Clang] disallow attributes after namespace identifier (#121614)
Fixes #121407
Commit: de12836f28a5c6b1a5464efcd15f28d3cfaabdaf
https://github.com/llvm/llvm-project/commit/de12836f28a5c6b1a5464efcd15f28d3cfaabdaf
Author: choikwa <5455710+choikwa at users.noreply.github.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
Log Message:
-----------
[AMDGPU] Rework getDivNumBits API (#119768)
Rework involves below:
- Return unsigned value, the number of div/rem bits actually needed.
- Change from AtLeast(SignBits) to MaxDivBits hint.
- Use MaxDivBits hint for unsigned case.
- Remove unnecessary second early exit.
Mostly NFC changes.
Commit: 6f9e688203097b1fbeeb1ad498a9bae6c78231ab
https://github.com/llvm/llvm-project/commit/6f9e688203097b1fbeeb1ad498a9bae6c78231ab
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M flang/test/Integration/OpenMP/parallel-private-reduction-worstcase.f90
M flang/test/Lower/OpenMP/parallel-reduction-mixed.f90
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
A mlir/test/Target/LLVMIR/openmp-parallel-reduction-init.mlir
M mlir/test/Target/LLVMIR/openmp-parallel-reduction-multiblock.mlir
M mlir/test/Target/LLVMIR/openmp-private.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-array-sections.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-init-arg.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-sections.mlir
Log Message:
-----------
[flang][OpenMP] Fix reduction init region block management (#122079)
Replaces https://github.com/llvm/llvm-project/pull/121886
Fixes https://github.com/llvm/llvm-project/issues/120254 (hopefully 🤞)
## Problem
Consider the following example:
```fortran
program test
real :: x(1)
integer :: i
!$omp parallel do reduction(+:x)
do i = 1,1
x = 1
end do
!$omp end parallel do
end program
```
The HLFIR+OMP IR for this example looks like this:
```mlir
func.func @_QQmain() {
...
omp.parallel {
%5 = fir.embox %4#0(%3) : (!fir.ref<!fir.array<1xf32>>, !fir.shape<1>) -> !fir.box<!fir.array<1xf32>>
%6 = fir.alloca !fir.box<!fir.array<1xf32>>
...
omp.wsloop private(@_QFEi_private_ref_i32 %1#0 -> %arg0 : !fir.ref<i32>) reduction(byref @add_reduction_byref_box_1xf32 %6 -> %arg1 : !fir.ref<!fir.box<!fir.array<1xf32>>>) {
omp.loop_nest (%arg2) : i32 = (%c1_i32) to (%c1_i32_0) inclusive step (%c1_i32_1) {
...
omp.yield
}
}
omp.terminator
}
return
}
```
The problem addressed by this PR is related to: the `alloca` in the
`omp.parallel` region + the related `reduction` clause on the
`omp.wsloop` op. When we try translate the reduction from MLIR to LLVM,
we have to choose an `alloca` insertion point. This happens in
`convertOmpWsloop` where at entry to that function, this is what the
LLVM module looks like:
```llvm
define void @_QQmain() {
%tid.addr = alloca i32, align 4
...
entry:
%omp_global_thread_num = call i32 @__kmpc_global_thread_num(ptr @1)
br label %omp.par.entry
omp.par.entry:
%tid.addr.local = alloca i32, align 4
...
br label %omp.par.region
omp.par.region:
br label %omp.par.region1
omp.par.region1:
...
%5 = alloca { ptr, i64, i32, i8, i8, i8, i8, [1 x [3 x i64]] }, align 8
```
Now, when we choose an `alloca` insertion point for the reduction, this
is the chosen block `omp.par.entry` (without the changes in this PR).
The problem is that the allocation needed for the reduction needs to
reference the `%5` SSA value. This results in inserting allocations in
`omp.par.entry` that reference allocations in a later block
`omp.par.region1` which causes the `Instruction does not dominate all
uses!` error.
## Possible solution - take 2:
This PR contains a more localized solution than
https://github.com/llvm/llvm-project/pull/121886. It makes sure that on
entry to `initReductionVars`, the IR builder is at a point where we can
starting inserting initialization region; to make things cleaner, we
still split the builder insertion point to a dedicated
`omp.reduction.init`. This way we avoid splitting after the latest
allocation block; which is what causing the issue.
Commit: 21ba7aef3bb98aa02cf98b67f4cdea1e2fc4ce99
https://github.com/llvm/llvm-project/commit/21ba7aef3bb98aa02cf98b67f4cdea1e2fc4ce99
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
Log Message:
-----------
[mlir][vector][nfc] Update `alignedConversionPrecondition` (#122136)
Adds some comments and re-name variables to clarify the usage.
Commit: 644de6ad1c758d3bf754d7d50b98c555df5231b1
https://github.com/llvm/llvm-project/commit/644de6ad1c758d3bf754d7d50b98c555df5231b1
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
M llvm/test/CodeGen/NVPTX/bf16x2-instructions.ll
R llvm/test/CodeGen/NVPTX/fabs-fneg-free.ll
Log Message:
-----------
Revert "[NVPTX] designate fabs and fneg as free (#121513)"
This reverts commit 45d46983bf7bda53bd7ee8e36a47571b3980fbd7.
NVPTX fabs & fneg are incompatible with LLVM's semantics as LLVM
guarantees the payload of NaNs to stay the same while PTX mangles NaNs.
The bad patterns are still in the NVPTX backend and should probably be
removed, since this change only exposed the bad behavior.
Commit: c01ffab6e1dac13a344a06677f413e55073d0580
https://github.com/llvm/llvm-project/commit/c01ffab6e1dac13a344a06677f413e55073d0580
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang-tools-extra/docs/ReleaseNotes.rst
Log Message:
-----------
[clang-tidy][doc] reorder release note
Commit: 1374aa35a3f62c774548361276a87eb472893262
https://github.com/llvm/llvm-project/commit/1374aa35a3f62c774548361276a87eb472893262
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/lib/Sema/CheckExprLifetime.cpp
M clang/lib/Sema/CheckExprLifetime.h
M clang/lib/Sema/SemaAttr.cpp
M clang/test/AST/attr-lifetime-capture-by.cpp
M clang/test/Sema/warn-lifetime-analysis-capture-by.cpp
Log Message:
-----------
[clang] Don't infer lifetime_capture-by for reference of raw pointer types. (#122240)
When a vector is instantiated with a pointer type (`T` being `const
Foo*`), the inferred annotation becomes `push_back(const Foo*& value
[[clang::lifetime_capture_by(this)]])`.
For reference parameters, the `lifetime_capture_by` attribute treats the
lifetime as referring to the referenced object -- in this case, the
**pointer** itself, not the pointee object. In the `push_back`, we copy
the pointer's value, which does not establish a reference to the
pointer. This behavior is safe and does not capture the pointer's
lifetime.
The annotation should not be inferred for cases where `T` is a pointer
type, as the intended semantics do not align with the annotation.
Fixes #121391
Commit: 24203613a2d83028ea3bbb782fd390e36d1f344f
https://github.com/llvm/llvm-project/commit/24203613a2d83028ea3bbb782fd390e36d1f344f
Author: George Burgess IV <george.burgess.iv at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/docs/GettingInvolved.rst
Log Message:
-----------
[llvm][Docs] add discord bot calendar capability notes (#122140)
The LLVM Discord bot now has the ability to scrape the LLVM calendar &
send reminders about upcoming office hours events and sync-ups. Document
that here.
While I'm in the area, add a note about the bot's ability to @mention
people when they're on buildbot blamelists.
Related to llvm/Community.o#19
Commit: dfa5ee2af27da2eee835560bd1f1c872991a558d
https://github.com/llvm/llvm-project/commit/dfa5ee2af27da2eee835560bd1f1c872991a558d
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M mlir/test/Integration/Dialect/Linalg/CPU/pack-dynamic-inner-tile.mlir
A mlir/test/Integration/Dialect/Linalg/CPU/unpack-dynamic-inner-tile.mlir
Log Message:
-----------
[mlir][tensor] Add e2e test for tensor.unpack with dynamic tile sizes (#121557)
Adds an end-to-end test for `tensor.unpack` with dynamic inner tile sizes.
While relatively simple (e.g., no vectorization), this example required a few
fixes in handling `tensor.unpack` (and similar fixes for `tensor.pack` before
that):
* #119379, #121393, #121400.
The end goal for this test is to incrementally increase its complexity
and to work towards scalable tile sizes.
Note, this PR complements #115698 in which similar test for
`tensor.pack` was added.
Commit: 465a3ce9fac1fcf49d5772f70564973a73748d57
https://github.com/llvm/llvm-project/commit/465a3ce9fac1fcf49d5772f70564973a73748d57
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/lib/Headers/cuda_wrappers/cmath
Log Message:
-----------
[CUDA][HIP] improve error message for missing cmath (#122155)
One common error seen in CUDA/HIP compilation is:
fatal error: 'cmath' file not found
which is due to inproper installation of standard C++ libraries.
Since it happens with #include_next, users may feel confusing which
cmath is not found and how to fix it.
Add an error directive to help users resolve this issue.
Commit: a75917679549109fcbf92cb63ef61638517713d6
https://github.com/llvm/llvm-project/commit/a75917679549109fcbf92cb63ef61638517713d6
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M .github/workflows/libclang-python-tests.yml
M .github/workflows/llvm-project-tests.yml
Log Message:
-----------
[Github] Fix LLVM Project Tests Workflow on Linux (#122221)
This patch fixes the LLVM project tests workflow on Linux. Two changes
were needed. Firstly, some commands need to be performed with sudo now
that the container executes as a non-root user. Second, we needed to
change from `ubuntu-latest` to `ubuntu-22.04` as `ubuntu-latest` not
defaults to `ubuntu-24.04` which causes `setup-python` to install a
python executable linked against a newer version of glibc that is not
found on ubuntu 22.04, which causes failures when CMake cannot execute
the python interpreter that it finds.
Commit: a429dfc167258cf023b2e4c20874a228298372e6
https://github.com/llvm/llvm-project/commit/a429dfc167258cf023b2e4c20874a228298372e6
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/lib/Driver/ToolChains/SPIRV.cpp
M clang/lib/Driver/ToolChains/SPIRV.h
M clang/test/Driver/spirv-toolchain.cl
Log Message:
-----------
[Driver][SPIR-V] Use consistent tools to convert between text and binary form (#120266)
Currently we produce SPIR-V text with `spirv-dis` but assemble it with
`llvm-spirv`. The SPIR-V text format is different between the tools so
the assemble fails. Use `spirv-as` for assembly as it uses the same
format.
---------
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: 762f1b17b2815ccdfb4e5cb5412cb6210db92f73
https://github.com/llvm/llvm-project/commit/762f1b17b2815ccdfb4e5cb5412cb6210db92f73
Author: Sarah Spall <sarahspall at microsoft.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/test/CodeGenHLSL/ArrayTemporary.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/OutputArguments.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/standard_conversion_sequences.hlsl
M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-lib.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-ps.hlsl
M clang/test/CodeGenHLSL/builtins/WaveReadLaneAt.hlsl
M clang/test/CodeGenHLSL/builtins/abs.hlsl
M clang/test/CodeGenHLSL/builtins/acos.hlsl
M clang/test/CodeGenHLSL/builtins/asdouble.hlsl
M clang/test/CodeGenHLSL/builtins/asin.hlsl
M clang/test/CodeGenHLSL/builtins/atan.hlsl
M clang/test/CodeGenHLSL/builtins/atan2.hlsl
M clang/test/CodeGenHLSL/builtins/ceil.hlsl
M clang/test/CodeGenHLSL/builtins/clamp.hlsl
M clang/test/CodeGenHLSL/builtins/clip.hlsl
M clang/test/CodeGenHLSL/builtins/cos.hlsl
M clang/test/CodeGenHLSL/builtins/cosh.hlsl
M clang/test/CodeGenHLSL/builtins/cross.hlsl
M clang/test/CodeGenHLSL/builtins/degrees.hlsl
M clang/test/CodeGenHLSL/builtins/dot-builtin.hlsl
M clang/test/CodeGenHLSL/builtins/dot.hlsl
M clang/test/CodeGenHLSL/builtins/exp.hlsl
M clang/test/CodeGenHLSL/builtins/exp2.hlsl
M clang/test/CodeGenHLSL/builtins/floor.hlsl
M clang/test/CodeGenHLSL/builtins/fmod.hlsl
M clang/test/CodeGenHLSL/builtins/frac.hlsl
M clang/test/CodeGenHLSL/builtins/length.hlsl
M clang/test/CodeGenHLSL/builtins/lerp-builtin.hlsl
M clang/test/CodeGenHLSL/builtins/lerp.hlsl
M clang/test/CodeGenHLSL/builtins/log.hlsl
M clang/test/CodeGenHLSL/builtins/log10.hlsl
M clang/test/CodeGenHLSL/builtins/log2.hlsl
M clang/test/CodeGenHLSL/builtins/mad.hlsl
M clang/test/CodeGenHLSL/builtins/max.hlsl
M clang/test/CodeGenHLSL/builtins/min.hlsl
M clang/test/CodeGenHLSL/builtins/normalize.hlsl
M clang/test/CodeGenHLSL/builtins/pow.hlsl
M clang/test/CodeGenHLSL/builtins/radians.hlsl
M clang/test/CodeGenHLSL/builtins/rcp.hlsl
M clang/test/CodeGenHLSL/builtins/round.hlsl
M clang/test/CodeGenHLSL/builtins/rsqrt.hlsl
M clang/test/CodeGenHLSL/builtins/saturate.hlsl
M clang/test/CodeGenHLSL/builtins/sin.hlsl
M clang/test/CodeGenHLSL/builtins/sinh.hlsl
M clang/test/CodeGenHLSL/builtins/sqrt.hlsl
M clang/test/CodeGenHLSL/builtins/step.hlsl
M clang/test/CodeGenHLSL/builtins/tan.hlsl
M clang/test/CodeGenHLSL/builtins/tanh.hlsl
M clang/test/CodeGenHLSL/builtins/trunc.hlsl
M clang/test/CodeGenHLSL/float3.hlsl
M clang/test/CodeGenHLSL/this-reference.hlsl
Log Message:
-----------
[HLSL] Make fast math the default for HLSL (#119820)
Make fast math the default for HLSL
Repair test cases broken by this change.
Closes #108597
Commit: 17912f336bd3d3db09b367c155fb44148ea4de24
https://github.com/llvm/llvm-project/commit/17912f336bd3d3db09b367c155fb44148ea4de24
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
Log Message:
-----------
LAA: refactor dependence class to prep for scaled strides (NFC) (#122113)
Rearrange the DepDistanceAndSizeInfo struct in preparation to scale
strides. getDependenceDistanceStrideAndSize now returns the data of
CommonStride, MaxStride, and clarifies when to retry with runtime
checks, in place of (unscaled) strides.
Commit: fb03ce7aadd997486e2709051290756e09ad3d01
https://github.com/llvm/llvm-project/commit/fb03ce7aadd997486e2709051290756e09ad3d01
Author: LoS <kaffedesk at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M libcxx/test/std/containers/sequences/vector/vector.data/data_const.pass.cpp
Log Message:
-----------
[libc++] Fix test for vector data_const.pass.cpp (#122085)
The test contained some non-const accesses when we're really trying to test
that the method is const.
Commit: d056c756aea3fc709cf7d6bc8acabe9a8c7218db
https://github.com/llvm/llvm-project/commit/d056c756aea3fc709cf7d6bc8acabe9a8c7218db
Author: Alexander Belyaev <32522095+pifon2a at users.noreply.github.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M mlir/lib/Dialect/SCF/Utils/Utils.cpp
M mlir/test/Dialect/SCF/loop-unroll.mlir
Log Message:
-----------
[mlir][scf] Fix unrolling when the yielded value is defined above the loop. (#122177)
Commit: 5e6c74d086848d8525b2bdd3b3e717c64b576193
https://github.com/llvm/llvm-project/commit/5e6c74d086848d8525b2bdd3b3e717c64b576193
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/test/Driver/spirv-openmp-toolchain.c
Log Message:
-----------
[clang] Fix SPIR-V OpenMP test assembler check (#122310)
Testing is failing in HEAD, Integration issue with the SPIR-V OpenMP
change and the SPIR-V change adding the assembler job.
I notice there is a consistency issue in the binding name "SPIRV" vs
"SPIR-V", I will fix that in a separate commit so we unbreak build ASAP.
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: 473510abf5c6a2f9d74a0c19f0f5d8b483596e05
https://github.com/llvm/llvm-project/commit/473510abf5c6a2f9d74a0c19f0f5d8b483596e05
Author: Sv. Lockal <AngryLoki at users.noreply.github.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M libcxx/test/libcxx/gdb/gdb_pretty_printer_test.py
M libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp
M libcxx/utils/gdb/libcxx/printers.py
Log Message:
-----------
[libc++] Fix mi-mode in GDB pretty printers (#120951)
GDB/MI requires unique names for each child, otherwise fails with
"Duplicate variable object name". Also wrapped containers printers
were flattened for cleaner visualization in IDEs and CLI.
Fixes #62340
Commit: 7724be972858477d9d4552f5fa2edb5222bff9e0
https://github.com/llvm/llvm-project/commit/7724be972858477d9d4552f5fa2edb5222bff9e0
Author: Andrea Faulds <andrea.faulds at amd.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M mlir/include/mlir/Conversion/Passes.td
M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRVPass.cpp
M mlir/lib/Conversion/GPUToVulkan/ConvertGPULaunchFuncToVulkanLaunchFunc.cpp
A mlir/test/Conversion/ConvertToSPIRV/convert-gpu-modules-nested.mlir
M mlir/test/Conversion/GPUToVulkan/lower-gpu-launch-vulkan-launch.mlir
M mlir/test/lib/Pass/TestVulkanRunnerPipeline.cpp
M mlir/test/mlir-vulkan-runner/addui_extended.mlir
M mlir/test/mlir-vulkan-runner/smul_extended.mlir
M mlir/test/mlir-vulkan-runner/umul_extended.mlir
Log Message:
-----------
[mlir][spirv] Do SPIR-V serialization in -test-vulkan-runner-pipeline (#121494)
This commit is a further incremental step toward moving the whole
mlir-vulkan-runner MLIR pass pipeline into mlir-opt (see #73457). The
previous step was b225b3adf7b78387c9fcb97a3ff0e0a1e26eafe2, which moved
all device passes prior to SPIR-V serialization into a new mlir-opt test
pass, `-test-vulkan-runner-pipeline`.
This commit changes how SPIR-V serialization is accomplished for Vulkan
runner tests. Until now, this was done by the Vulkan-specific
ConvertGpuLaunchFuncToVulkanLaunchFunc pass. With this commit, this
responsibility is removed from that pass, and is instead done with the
existing generic GpuModuleToBinaryPass. In addition, the SPIR-V
serialization step is no longer done inside mlir-vulkan-runner, but
rather inside mlir-opt (in the `-test-vulkan-runner-pipeline` pass).
Both of these changes represent a greater alignment between
mlir-vulkan-runner and the other GPU integration tests. Notably, the IR
shapes produced by the mlir-opt pipelines for the Vulkan and SYCL
runners are now much more similar, with both using a gpu.binary op for
the serialized SPIR-V kernel.
In order to enable this, this commit includes these supporting changes:
- ConvertToSPIRVPass is enhanced to support producing the IR shape where
a spirv.module is nested inside a gpu.module, since this is what
GpuModuleToBinaryPass expects.
- ConvertGPULaunchFuncToVulkanLaunchFunc is changed to remove its SPIR-V
serialization functionality, and instead now extracts the SPIR-V from a
gpu.binary operation (as produced by ConvertToSPIRVPass).
- `-test-vulkan-runner-pipeline` now attaches SPIR-V target information
required by GpuModuleToBinaryPass.
- The WebGPU pass option, which had been removed from mlir-vulkan-runner
in the previous commit in this series, is restored as an option to
`-test-vulkan-runner-pipeline` instead, so that the WebGPU pass
continues being inserted into the pipeline just before SPIR-V
serialization.
Commit: 89499c666819d88c8abe85b58005fc8e5eb5f03f
https://github.com/llvm/llvm-project/commit/89499c666819d88c8abe85b58005fc8e5eb5f03f
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/test/Instrumentation/BoundsChecking/runtimes.ll
Log Message:
-----------
[BoundsChecking][test] Reorder RUN lines (#122229)
To match output order of update_test_checks.py.
Commit: a7cbd41000f55c0475bbfb42a2bb7af418c47a35
https://github.com/llvm/llvm-project/commit/a7cbd41000f55c0475bbfb42a2bb7af418c47a35
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/test/Instrumentation/BoundsChecking/runtimes.ll
Log Message:
-----------
[BoundsChecking][test] Remove duplicate RUNS
Fixing failed conflict resolution in #122229.
Commit: e2449f1bceeefd4a603cae024a7a1db763df6834
https://github.com/llvm/llvm-project/commit/e2449f1bceeefd4a603cae024a7a1db763df6834
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Log Message:
-----------
[SelectionDAG] Use SDNode::op_iterator instead of SDNodeIterator. NFC (#122147)
I think SDNodeIterator primarily exists because GraphTraits requires an
iterator that dereferences to SDNode*. op_iterator dereferences to
SDUse* which is implicitly convertible to SDValue.
This piece of code can use SDValue instead of SDNode* so we should
prefer to use the the more common op_iterator.
Commit: c87ef146e1ceea3ebfcd0f59266043d53affced0
https://github.com/llvm/llvm-project/commit/c87ef146e1ceea3ebfcd0f59266043d53affced0
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
A llvm/test/Transforms/InstCombine/fold-binop-of-reductions.ll
Log Message:
-----------
[InstCombine][NFC] Precommit a test for folding a binary op of reductions. (#121568)
Commit: f8f8598fd886cddfd374fa43eb6d7d37d301b576
https://github.com/llvm/llvm-project/commit/f8f8598fd886cddfd374fa43eb6d7d37d301b576
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-exegesis.rst
A llvm/test/tools/llvm-exegesis/dry-run-measurement.test
M llvm/tools/llvm-exegesis/lib/BenchmarkResult.h
M llvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
M llvm/tools/llvm-exegesis/lib/Target.cpp
M llvm/tools/llvm-exegesis/llvm-exegesis.cpp
Log Message:
-----------
[Exegesis] Add the ability to dry-run the measurement phase (#121991)
With the new benchmark phase, `dry-run-measurement`, llvm-exegesis can
run everything except the actual snippet execution. It is useful when we
want to test some parts of the code between the `assemble-measured-code`
and `measure` phase without actually running on native platforms.
Commit: be32621ce8cbffe674c62e87c0c51c9fc4a21e5f
https://github.com/llvm/llvm-project/commit/be32621ce8cbffe674c62e87c0c51c9fc4a21e5f
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/Basic/OpenACCClauses.def
M clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/test/AST/ast-print-openacc-update-construct.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
M clang/test/SemaOpenACC/update-construct-ast.cpp
M clang/test/SemaOpenACC/update-construct.cpp
M clang/tools/libclang/CIndex.cpp
Log Message:
-----------
[OpenACC] Implement 'device' and 'host' clauses for 'update'
These two clauses just take a 'var-list' and specify where the variables
should be copied from/to. This patch implements the AST nodes for them
and ensures they properly take a var-list.
Commit: 553fa204ed5ab4c48bc6080451df24310c00e69c
https://github.com/llvm/llvm-project/commit/553fa204ed5ab4c48bc6080451df24310c00e69c
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/AST/ast-print-openacc-update-construct.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-constructs.c
M clang/test/SemaOpenACC/update-construct-ast.cpp
M clang/test/SemaOpenACC/update-construct.cpp
Log Message:
-----------
[OpenACC] Implement 'at least one of' restriction for 'update'
This completes the implementation of 'update' by implementing its last
restriction. This restriction requires at least 1 of the 'self', 'host',
or 'device' clauses.
Commit: 8ac6a6b81629840d2456e32ec4651440523718dc
https://github.com/llvm/llvm-project/commit/8ac6a6b81629840d2456e32ec4651440523718dc
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Support/Timer.cpp
Log Message:
-----------
Reorder fields so InitDeferredFlag is destroyed last
TimerGroup's dtor accesses this field.
once_flag has a trivial destructor so it doesn't really matter, but msan
checks that it's not accessed after destruction.
Commit: 43e663d0fd82e226203b051d31fd3ce5388ca984
https://github.com/llvm/llvm-project/commit/43e663d0fd82e226203b051d31fd3ce5388ca984
Author: fahadnayyar <30953967+fahadnayyar at users.noreply.github.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
A clang/test/APINotes/Inputs/Headers/SwiftReturnOwnershipForObjC.apinotes
A clang/test/APINotes/Inputs/Headers/SwiftReturnOwnershipForObjC.h
M clang/test/APINotes/Inputs/Headers/module.modulemap
A clang/test/APINotes/swift-return-ownership.m
Log Message:
-----------
[APINotes] [NFC] Add tests for SWIFT_RETURNS_(UN)RETAINED for ObjC APIs (#122167)
Adding test case to verify that SwiftReturnOwnership works correctly for
ObjC functions and methods as well.
rdar://142504115
Commit: 50ca2eff5fb2c239a373790bcbe384f629eb077a
https://github.com/llvm/llvm-project/commit/50ca2eff5fb2c239a373790bcbe384f629eb077a
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
Log Message:
-----------
Drop emitQuaternaryBuiltin from clang (#122169)
It was superceeded by the emitBuiltinWithOneOverloadedType() some
time ago.
Commit: 69b54c1a05c0c63ee28de1279b3a689b7f026e94
https://github.com/llvm/llvm-project/commit/69b54c1a05c0c63ee28de1279b3a689b7f026e94
Author: Дмитрий Изволов <dmitriy at izvolov.ru>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/19.rst
M libcxx/include/CMakeLists.txt
A libcxx/include/__algorithm/radix_sort.h
M libcxx/include/__algorithm/stable_sort.h
M libcxx/include/__bit/bit_log2.h
M libcxx/include/module.modulemap
M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort.pass.cpp
Log Message:
-----------
[libcxx][algorithm] Optimize std::stable_sort via radix sort algorithm (#104683)
The radix sort (LSD) algorithm allows to speed up std::stable_sort
dramatically in case we sort integers.
The speed up varies from a relatively small to x10 times, depending on
type of sorted elements and the initial state of the sorted array.
```
Running ./libcxx/test/benchmarks/stable_sort.bench.out
Run on (12 X 2600 MHz CPU s)
CPU Caches:
L1 Data 32 KiB
L1 Instruction 32 KiB
L2 Unified 256 KiB (x6)
L3 Unified 12288 KiB
Load Average: 3.48, 3.38, 3.08
---------------------------------------------------------------------------
Benchmark After Before
---------------------------------------------------------------------------
BM_StableSort_int8_Random_1 3.39 ns 3.58 ns
BM_StableSort_int8_Random_4 21.1 ns 21.9 ns
BM_StableSort_int8_Random_16 142 ns 147 ns
BM_StableSort_int8_Random_64 893 ns 903 ns
BM_StableSort_int8_Random_256 409 ns 5810 ns
BM_StableSort_int8_Random_1024 1235 ns 29973 ns
BM_StableSort_int8_Random_4096 4410 ns 141880 ns
BM_StableSort_int8_Random_16384 18044 ns 620540 ns
BM_StableSort_int8_Random_65536 144030 ns 2592013 ns
BM_StableSort_int8_Random_262144 858350 ns 10935814 ns
BM_StableSort_int8_Random_524288 2929988 ns 27060729 ns
BM_StableSort_int8_Random_1048576 6058292 ns 49622720 ns
BM_StableSort_int8_Ascending_1 3.42 ns 3.92 ns
BM_StableSort_int8_Ascending_4 5.86 ns 8.08 ns
BM_StableSort_int8_Ascending_16 10.6 ns 12.0 ns
BM_StableSort_int8_Ascending_64 28.9 ns 30.6 ns
BM_StableSort_int8_Ascending_256 415 ns 391 ns
BM_StableSort_int8_Ascending_1024 1666 ns 2309 ns
BM_StableSort_int8_Ascending_4096 7748 ns 12269 ns
BM_StableSort_int8_Ascending_16384 40588 ns 60181 ns
BM_StableSort_int8_Ascending_65536 178843 ns 298221 ns
BM_StableSort_int8_Ascending_262144 919959 ns 1402692 ns
BM_StableSort_int8_Ascending_524288 2397397 ns 3036984 ns
BM_StableSort_int8_Ascending_1048576 5080043 ns 7218581 ns
BM_StableSort_int8_Descending_1 3.44 ns 3.53 ns
BM_StableSort_int8_Descending_4 7.94 ns 8.29 ns
BM_StableSort_int8_Descending_16 59.6 ns 57.7 ns
BM_StableSort_int8_Descending_64 1051 ns 1027 ns
BM_StableSort_int8_Descending_256 422 ns 4718 ns
BM_StableSort_int8_Descending_1024 1676 ns 21044 ns
BM_StableSort_int8_Descending_4096 7766 ns 64827 ns
BM_StableSort_int8_Descending_16384 40230 ns 93981 ns
BM_StableSort_int8_Descending_65536 190978 ns 421151 ns
BM_StableSort_int8_Descending_262144 1055141 ns 1918927 ns
BM_StableSort_int8_Descending_524288 2875115 ns 3809153 ns
BM_StableSort_int8_Descending_1048576 5854135 ns 8713690 ns
BM_StableSort_int8_SingleElement_1 3.52 ns 3.46 ns
BM_StableSort_int8_SingleElement_4 6.25 ns 5.79 ns
BM_StableSort_int8_SingleElement_16 10.7 ns 11.4 ns
BM_StableSort_int8_SingleElement_64 29.3 ns 30.3 ns
BM_StableSort_int8_SingleElement_256 858 ns 380 ns
BM_StableSort_int8_SingleElement_1024 3036 ns 2231 ns
BM_StableSort_int8_SingleElement_4096 11580 ns 11866 ns
BM_StableSort_int8_SingleElement_16384 44956 ns 59621 ns
BM_StableSort_int8_SingleElement_65536 182006 ns 297853 ns
BM_StableSort_int8_SingleElement_262144 962181 ns 1432857 ns
BM_StableSort_int8_SingleElement_524288 2256687 ns 2975707 ns
BM_StableSort_int8_SingleElement_1048576 4522556 ns 6949948 ns
BM_StableSort_int8_PipeOrgan_1 3.26 ns 3.64 ns
BM_StableSort_int8_PipeOrgan_4 6.21 ns 6.58 ns
BM_StableSort_int8_PipeOrgan_16 23.7 ns 25.4 ns
BM_StableSort_int8_PipeOrgan_64 250 ns 248 ns
BM_StableSort_int8_PipeOrgan_256 414 ns 2498 ns
BM_StableSort_int8_PipeOrgan_1024 1697 ns 10946 ns
BM_StableSort_int8_PipeOrgan_4096 7840 ns 37238 ns
BM_StableSort_int8_PipeOrgan_16384 41402 ns 74805 ns
BM_StableSort_int8_PipeOrgan_65536 180107 ns 357891 ns
BM_StableSort_int8_PipeOrgan_262144 988273 ns 1647296 ns
BM_StableSort_int8_PipeOrgan_524288 2547374 ns 3245991 ns
BM_StableSort_int8_PipeOrgan_1048576 5128783 ns 7342444 ns
BM_StableSort_int8_QuickSortAdversary_1 3.14 ns 4.01 ns
BM_StableSort_int8_QuickSortAdversary_4 6.05 ns 7.02 ns
BM_StableSort_int8_QuickSortAdversary_16 10.5 ns 11.9 ns
BM_StableSort_int8_QuickSortAdversary_64 520 ns 516 ns
BM_StableSort_int8_QuickSortAdversary_256 920 ns 386 ns
BM_StableSort_int8_QuickSortAdversary_1024 3083 ns 2299 ns
BM_StableSort_int8_QuickSortAdversary_4096 11659 ns 12295 ns
BM_StableSort_int8_QuickSortAdversary_16384 45721 ns 60931 ns
BM_StableSort_int8_QuickSortAdversary_65536 186334 ns 295423 ns
BM_StableSort_int8_QuickSortAdversary_262144 946262 ns 1399973 ns
BM_StableSort_int8_QuickSortAdversary_524288 2282004 ns 2832266 ns
BM_StableSort_int8_QuickSortAdversary_1048576 4691123 ns 6963253 ns
BM_StableSort_uint8_Random_1 3.11 ns 3.44 ns
BM_StableSort_uint8_Random_4 21.9 ns 23.1 ns
BM_StableSort_uint8_Random_16 154 ns 171 ns
BM_StableSort_uint8_Random_64 1000 ns 1051 ns
BM_StableSort_uint8_Random_256 402 ns 6498 ns
BM_StableSort_uint8_Random_1024 1176 ns 35310 ns
BM_StableSort_uint8_Random_4096 4415 ns 164087 ns
BM_StableSort_uint8_Random_16384 17849 ns 686769 ns
BM_StableSort_uint8_Random_65536 146109 ns 2932051 ns
BM_StableSort_uint8_Random_262144 876710 ns 12163988 ns
BM_StableSort_uint8_Random_524288 2858089 ns 26458830 ns
BM_StableSort_uint8_Random_1048576 5766942 ns 54836214 ns
BM_StableSort_uint8_Ascending_1 3.11 ns 3.43 ns
BM_StableSort_uint8_Ascending_4 6.18 ns 7.24 ns
BM_StableSort_uint8_Ascending_16 14.5 ns 17.0 ns
BM_StableSort_uint8_Ascending_64 50.7 ns 59.2 ns
BM_StableSort_uint8_Ascending_256 395 ns 536 ns
BM_StableSort_uint8_Ascending_1024 1752 ns 2956 ns
BM_StableSort_uint8_Ascending_4096 7785 ns 15146 ns
BM_StableSort_uint8_Ascending_16384 41442 ns 74136 ns
BM_StableSort_uint8_Ascending_65536 180879 ns 354261 ns
BM_StableSort_uint8_Ascending_262144 945880 ns 1674256 ns
BM_StableSort_uint8_Ascending_524288 2287832 ns 3138581 ns
BM_StableSort_uint8_Ascending_1048576 4630290 ns 7296278 ns
BM_StableSort_uint8_Descending_1 3.19 ns 3.63 ns
BM_StableSort_uint8_Descending_4 9.60 ns 11.5 ns
BM_StableSort_uint8_Descending_16 78.3 ns 86.0 ns
BM_StableSort_uint8_Descending_64 1265 ns 1308 ns
BM_StableSort_uint8_Descending_256 395 ns 6556 ns
BM_StableSort_uint8_Descending_1024 1712 ns 24669 ns
BM_StableSort_uint8_Descending_4096 7748 ns 83407 ns
BM_StableSort_uint8_Descending_16384 40779 ns 104043 ns
BM_StableSort_uint8_Descending_65536 181560 ns 467680 ns
BM_StableSort_uint8_Descending_262144 1146627 ns 2102769 ns
BM_StableSort_uint8_Descending_524288 2874096 ns 4572229 ns
BM_StableSort_uint8_Descending_1048576 5873195 ns 10170663 ns
BM_StableSort_uint8_SingleElement_1 3.28 ns 3.58 ns
BM_StableSort_uint8_SingleElement_4 6.44 ns 7.40 ns
BM_StableSort_uint8_SingleElement_16 14.9 ns 16.4 ns
BM_StableSort_uint8_SingleElement_64 51.2 ns 52.9 ns
BM_StableSort_uint8_SingleElement_256 876 ns 490 ns
BM_StableSort_uint8_SingleElement_1024 3041 ns 2750 ns
BM_StableSort_uint8_SingleElement_4096 11947 ns 14326 ns
BM_StableSort_uint8_SingleElement_16384 46669 ns 69984 ns
BM_StableSort_uint8_SingleElement_65536 197903 ns 328961 ns
BM_StableSort_uint8_SingleElement_262144 1031466 ns 1551436 ns
BM_StableSort_uint8_SingleElement_524288 2447672 ns 3049553 ns
BM_StableSort_uint8_SingleElement_1048576 4793087 ns 7615245 ns
BM_StableSort_uint8_PipeOrgan_1 3.38 ns 3.56 ns
BM_StableSort_uint8_PipeOrgan_4 7.16 ns 8.70 ns
BM_StableSort_uint8_PipeOrgan_16 31.7 ns 35.3 ns
BM_StableSort_uint8_PipeOrgan_64 326 ns 366 ns
BM_StableSort_uint8_PipeOrgan_256 409 ns 2942 ns
BM_StableSort_uint8_PipeOrgan_1024 1994 ns 12571 ns
BM_StableSort_uint8_PipeOrgan_4096 8086 ns 46278 ns
BM_StableSort_uint8_PipeOrgan_16384 41749 ns 79813 ns
BM_StableSort_uint8_PipeOrgan_65536 180697 ns 375120 ns
BM_StableSort_uint8_PipeOrgan_262144 1004899 ns 1676143 ns
BM_StableSort_uint8_PipeOrgan_524288 2456081 ns 3333949 ns
BM_StableSort_uint8_PipeOrgan_1048576 5030857 ns 7591303 ns
BM_StableSort_uint8_QuickSortAdversary_1 3.12 ns 3.46 ns
BM_StableSort_uint8_QuickSortAdversary_4 7.25 ns 6.83 ns
BM_StableSort_uint8_QuickSortAdversary_16 14.6 ns 16.2 ns
BM_StableSort_uint8_QuickSortAdversary_64 650 ns 665 ns
BM_StableSort_uint8_QuickSortAdversary_256 395 ns 2982 ns
BM_StableSort_uint8_QuickSortAdversary_1024 3125 ns 2583 ns
BM_StableSort_uint8_QuickSortAdversary_4096 11797 ns 13929 ns
BM_StableSort_uint8_QuickSortAdversary_16384 45803 ns 66513 ns
BM_StableSort_uint8_QuickSortAdversary_65536 190745 ns 313467 ns
BM_StableSort_uint8_QuickSortAdversary_262144 974646 ns 1469014 ns
BM_StableSort_uint8_QuickSortAdversary_524288 2317553 ns 3022065 ns
BM_StableSort_uint8_QuickSortAdversary_1048576 4898703 ns 6854079 ns
BM_StableSort_int16_Random_1 3.94 ns 3.49 ns
BM_StableSort_int16_Random_4 20.8 ns 23.2 ns
BM_StableSort_int16_Random_16 133 ns 163 ns
BM_StableSort_int16_Random_64 903 ns 953 ns
BM_StableSort_int16_Random_256 5638 ns 6258 ns
BM_StableSort_int16_Random_1024 3056 ns 34587 ns
BM_StableSort_int16_Random_4096 10596 ns 168397 ns
BM_StableSort_int16_Random_16384 49908 ns 753031 ns
BM_StableSort_int16_Random_65536 444605 ns 3838368 ns
BM_StableSort_int16_Random_262144 2419345 ns 15657285 ns
BM_StableSort_int16_Random_524288 7984040 ns 32726933 ns
BM_StableSort_int16_Random_1048576 16092424 ns 67999766 ns
BM_StableSort_int16_Ascending_1 3.40 ns 3.43 ns
BM_StableSort_int16_Ascending_4 5.45 ns 5.79 ns
BM_StableSort_int16_Ascending_16 12.0 ns 15.3 ns
BM_StableSort_int16_Ascending_64 39.6 ns 52.6 ns
BM_StableSort_int16_Ascending_256 470 ns 550 ns
BM_StableSort_int16_Ascending_1024 1686 ns 2707 ns
BM_StableSort_int16_Ascending_4096 5676 ns 14165 ns
BM_StableSort_int16_Ascending_16384 21413 ns 69483 ns
BM_StableSort_int16_Ascending_65536 88010 ns 334466 ns
BM_StableSort_int16_Ascending_262144 567239 ns 1570620 ns
BM_StableSort_int16_Ascending_524288 1553063 ns 3424666 ns
BM_StableSort_int16_Ascending_1048576 3145577 ns 8499649 ns
BM_StableSort_int16_Descending_1 3.22 ns 3.54 ns
BM_StableSort_int16_Descending_4 6.85 ns 10.2 ns
BM_StableSort_int16_Descending_16 62.7 ns 62.2 ns
BM_StableSort_int16_Descending_64 1138 ns 1036 ns
BM_StableSort_int16_Descending_256 5541 ns 4696 ns
BM_StableSort_int16_Descending_1024 3046 ns 19577 ns
BM_StableSort_int16_Descending_4096 10962 ns 79149 ns
BM_StableSort_int16_Descending_16384 58182 ns 327709 ns
BM_StableSort_int16_Descending_65536 447025 ns 1424896 ns
BM_StableSort_int16_Descending_262144 1104973 ns 5921903 ns
BM_StableSort_int16_Descending_524288 2547840 ns 17956789 ns
BM_StableSort_int16_Descending_1048576 5093555 ns 17044318 ns
BM_StableSort_int16_SingleElement_1 3.56 ns 3.96 ns
BM_StableSort_int16_SingleElement_4 5.75 ns 6.72 ns
BM_StableSort_int16_SingleElement_16 12.4 ns 16.1 ns
BM_StableSort_int16_SingleElement_64 36.9 ns 54.4 ns
BM_StableSort_int16_SingleElement_256 473 ns 557 ns
BM_StableSort_int16_SingleElement_1024 1828 ns 2826 ns
BM_StableSort_int16_SingleElement_4096 6239 ns 14252 ns
BM_StableSort_int16_SingleElement_16384 23695 ns 70369 ns
BM_StableSort_int16_SingleElement_65536 93281 ns 361641 ns
BM_StableSort_int16_SingleElement_262144 599078 ns 1640216 ns
BM_StableSort_int16_SingleElement_524288 1659678 ns 3343087 ns
BM_StableSort_int16_SingleElement_1048576 3184033 ns 7770271 ns
BM_StableSort_int16_PipeOrgan_1 3.75 ns 3.76 ns
BM_StableSort_int16_PipeOrgan_4 5.94 ns 7.74 ns
BM_StableSort_int16_PipeOrgan_16 26.7 ns 25.9 ns
BM_StableSort_int16_PipeOrgan_64 300 ns 263 ns
BM_StableSort_int16_PipeOrgan_256 2769 ns 2760 ns
BM_StableSort_int16_PipeOrgan_1024 2996 ns 10544 ns
BM_StableSort_int16_PipeOrgan_4096 11641 ns 44750 ns
BM_StableSort_int16_PipeOrgan_16384 57224 ns 200464 ns
BM_StableSort_int16_PipeOrgan_65536 416873 ns 887631 ns
BM_StableSort_int16_PipeOrgan_262144 843264 ns 3588669 ns
BM_StableSort_int16_PipeOrgan_524288 2027741 ns 11056924 ns
BM_StableSort_int16_PipeOrgan_1048576 4223773 ns 13261276 ns
BM_StableSort_int16_QuickSortAdversary_1 3.83 ns 3.68 ns
BM_StableSort_int16_QuickSortAdversary_4 5.55 ns 6.93 ns
BM_StableSort_int16_QuickSortAdversary_16 12.3 ns 15.2 ns
BM_StableSort_int16_QuickSortAdversary_64 646 ns 632 ns
BM_StableSort_int16_QuickSortAdversary_256 2751 ns 2542 ns
BM_StableSort_int16_QuickSortAdversary_1024 3028 ns 16901 ns
BM_StableSort_int16_QuickSortAdversary_4096 10862 ns 80222 ns
BM_StableSort_int16_QuickSortAdversary_16384 57753 ns 317281 ns
BM_StableSort_int16_QuickSortAdversary_65536 94064 ns 328502 ns
BM_StableSort_int16_QuickSortAdversary_262144 557796 ns 1613208 ns
BM_StableSort_int16_QuickSortAdversary_524288 1518451 ns 3479740 ns
BM_StableSort_int16_QuickSortAdversary_1048576 3165129 ns 7655880 ns
BM_StableSort_uint16_Random_1 3.26 ns 3.44 ns
BM_StableSort_uint16_Random_4 21.1 ns 22.2 ns
BM_StableSort_uint16_Random_16 157 ns 156 ns
BM_StableSort_uint16_Random_64 955 ns 947 ns
BM_StableSort_uint16_Random_256 5886 ns 6097 ns
BM_StableSort_uint16_Random_1024 2787 ns 30776 ns
BM_StableSort_uint16_Random_4096 9973 ns 155652 ns
BM_StableSort_uint16_Random_16384 48628 ns 741072 ns
BM_StableSort_uint16_Random_65536 439609 ns 3478966 ns
BM_StableSort_uint16_Random_262144 2336983 ns 15197642 ns
BM_StableSort_uint16_Random_524288 7888701 ns 34234254 ns
BM_StableSort_uint16_Random_1048576 14865180 ns 68516386 ns
BM_StableSort_uint16_Ascending_1 3.33 ns 4.00 ns
BM_StableSort_uint16_Ascending_4 5.79 ns 6.64 ns
BM_StableSort_uint16_Ascending_16 14.9 ns 15.5 ns
BM_StableSort_uint16_Ascending_64 50.2 ns 52.5 ns
BM_StableSort_uint16_Ascending_256 538 ns 546 ns
BM_StableSort_uint16_Ascending_1024 1645 ns 2652 ns
BM_StableSort_uint16_Ascending_4096 5559 ns 14517 ns
BM_StableSort_uint16_Ascending_16384 22803 ns 70275 ns
BM_StableSort_uint16_Ascending_65536 83109 ns 333446 ns
BM_StableSort_uint16_Ascending_262144 562667 ns 1568670 ns
BM_StableSort_uint16_Ascending_524288 1564646 ns 3059839 ns
BM_StableSort_uint16_Ascending_1048576 3178826 ns 7048327 ns
BM_StableSort_uint16_Descending_1 3.34 ns 3.93 ns
BM_StableSort_uint16_Descending_4 8.75 ns 9.73 ns
BM_StableSort_uint16_Descending_16 55.9 ns 55.5 ns
BM_StableSort_uint16_Descending_64 1021 ns 1035 ns
BM_StableSort_uint16_Descending_256 4752 ns 4931 ns
BM_StableSort_uint16_Descending_1024 2982 ns 19727 ns
BM_StableSort_uint16_Descending_4096 10432 ns 83165 ns
BM_StableSort_uint16_Descending_16384 56593 ns 326131 ns
BM_StableSort_uint16_Descending_65536 439134 ns 1371346 ns
BM_StableSort_uint16_Descending_262144 1220925 ns 5735665 ns
BM_StableSort_uint16_Descending_524288 2767234 ns 16758330 ns
BM_StableSort_uint16_Descending_1048576 5673769 ns 17541715 ns
BM_StableSort_uint16_SingleElement_1 3.53 ns 3.73 ns
BM_StableSort_uint16_SingleElement_4 6.27 ns 5.81 ns
BM_StableSort_uint16_SingleElement_16 14.8 ns 15.1 ns
BM_StableSort_uint16_SingleElement_64 51.5 ns 50.9 ns
BM_StableSort_uint16_SingleElement_256 536 ns 540 ns
BM_StableSort_uint16_SingleElement_1024 1669 ns 2690 ns
BM_StableSort_uint16_SingleElement_4096 5840 ns 14230 ns
BM_StableSort_uint16_SingleElement_16384 22468 ns 68524 ns
BM_StableSort_uint16_SingleElement_65536 89845 ns 332187 ns
BM_StableSort_uint16_SingleElement_262144 590736 ns 1550868 ns
BM_StableSort_uint16_SingleElement_524288 1573677 ns 3095703 ns
BM_StableSort_uint16_SingleElement_1048576 3183421 ns 8251180 ns
BM_StableSort_uint16_PipeOrgan_1 3.70 ns 3.64 ns
BM_StableSort_uint16_PipeOrgan_4 7.01 ns 6.81 ns
BM_StableSort_uint16_PipeOrgan_16 25.7 ns 26.4 ns
BM_StableSort_uint16_PipeOrgan_64 283 ns 277 ns
BM_StableSort_uint16_PipeOrgan_256 2562 ns 2852 ns
BM_StableSort_uint16_PipeOrgan_1024 2863 ns 10892 ns
BM_StableSort_uint16_PipeOrgan_4096 10585 ns 45668 ns
BM_StableSort_uint16_PipeOrgan_16384 59151 ns 194358 ns
BM_StableSort_uint16_PipeOrgan_65536 508579 ns 854692 ns
BM_StableSort_uint16_PipeOrgan_262144 901294 ns 3606346 ns
BM_StableSort_uint16_PipeOrgan_524288 2192498 ns 10449279 ns
BM_StableSort_uint16_PipeOrgan_1048576 4204368 ns 11956606 ns
BM_StableSort_uint16_QuickSortAdversary_1 3.20 ns 3.63 ns
BM_StableSort_uint16_QuickSortAdversary_4 5.30 ns 6.38 ns
BM_StableSort_uint16_QuickSortAdversary_16 14.5 ns 15.3 ns
BM_StableSort_uint16_QuickSortAdversary_64 575 ns 611 ns
BM_StableSort_uint16_QuickSortAdversary_256 2423 ns 2577 ns
BM_StableSort_uint16_QuickSortAdversary_1024 2794 ns 16854 ns
BM_StableSort_uint16_QuickSortAdversary_4096 10511 ns 75952 ns
BM_StableSort_uint16_QuickSortAdversary_16384 56214 ns 333824 ns
BM_StableSort_uint16_QuickSortAdversary_65536 422512 ns 1354867 ns
BM_StableSort_uint16_QuickSortAdversary_262144 583301 ns 1564443 ns
BM_StableSort_uint16_QuickSortAdversary_524288 1584319 ns 3265575 ns
BM_StableSort_uint16_QuickSortAdversary_1048576 3197732 ns 7945245 ns
BM_StableSort_int32_Random_1 3.81 ns 3.70 ns
BM_StableSort_int32_Random_4 20.8 ns 23.4 ns
BM_StableSort_int32_Random_16 134 ns 161 ns
BM_StableSort_int32_Random_64 895 ns 984 ns
BM_StableSort_int32_Random_256 5640 ns 5897 ns
BM_StableSort_int32_Random_1024 6994 ns 32118 ns
BM_StableSort_int32_Random_4096 27367 ns 168960 ns
BM_StableSort_int32_Random_16384 183261 ns 843240 ns
BM_StableSort_int32_Random_65536 950914 ns 3953588 ns
BM_StableSort_int32_Random_262144 3673311 ns 16790171 ns
BM_StableSort_int32_Random_524288 11515700 ns 36023098 ns
BM_StableSort_int32_Random_1048576 24492515 ns 78116028 ns
BM_StableSort_int32_Ascending_1 3.31 ns 4.48 ns
BM_StableSort_int32_Ascending_4 5.96 ns 6.99 ns
BM_StableSort_int32_Ascending_16 13.0 ns 16.0 ns
BM_StableSort_int32_Ascending_64 36.7 ns 53.0 ns
BM_StableSort_int32_Ascending_256 391 ns 471 ns
BM_StableSort_int32_Ascending_1024 2705 ns 2682 ns
BM_StableSort_int32_Ascending_4096 8773 ns 14231 ns
BM_StableSort_int32_Ascending_16384 34709 ns 70625 ns
BM_StableSort_int32_Ascending_65536 142907 ns 344482 ns
BM_StableSort_int32_Ascending_262144 745483 ns 1591418 ns
BM_StableSort_int32_Ascending_524288 1873701 ns 3190305 ns
BM_StableSort_int32_Ascending_1048576 3851590 ns 7570095 ns
BM_StableSort_int32_Descending_1 3.22 ns 4.23 ns
BM_StableSort_int32_Descending_4 7.58 ns 11.2 ns
BM_StableSort_int32_Descending_16 63.9 ns 58.6 ns
BM_StableSort_int32_Descending_64 1133 ns 1017 ns
BM_StableSort_int32_Descending_256 4850 ns 4464 ns
BM_StableSort_int32_Descending_1024 7023 ns 18954 ns
BM_StableSort_int32_Descending_4096 28550 ns 75163 ns
BM_StableSort_int32_Descending_16384 200880 ns 341104 ns
BM_StableSort_int32_Descending_65536 1095910 ns 1398021 ns
BM_StableSort_int32_Descending_262144 3818864 ns 5695486 ns
BM_StableSort_int32_Descending_524288 5606779 ns 17593982 ns
BM_StableSort_int32_Descending_1048576 16416366 ns 26649503 ns
BM_StableSort_int32_SingleElement_1 3.81 ns 3.71 ns
BM_StableSort_int32_SingleElement_4 6.57 ns 6.61 ns
BM_StableSort_int32_SingleElement_16 14.0 ns 15.8 ns
BM_StableSort_int32_SingleElement_64 38.7 ns 53.5 ns
BM_StableSort_int32_SingleElement_256 386 ns 554 ns
BM_StableSort_int32_SingleElement_1024 2761 ns 3046 ns
BM_StableSort_int32_SingleElement_4096 9179 ns 15188 ns
BM_StableSort_int32_SingleElement_16384 34794 ns 70119 ns
BM_StableSort_int32_SingleElement_65536 135190 ns 354755 ns
BM_StableSort_int32_SingleElement_262144 760995 ns 1644072 ns
BM_StableSort_int32_SingleElement_524288 1969575 ns 3343419 ns
BM_StableSort_int32_SingleElement_1048576 4423816 ns 8346971 ns
BM_StableSort_int32_PipeOrgan_1 3.79 ns 3.63 ns
BM_StableSort_int32_PipeOrgan_4 6.21 ns 6.73 ns
BM_StableSort_int32_PipeOrgan_16 27.5 ns 26.0 ns
BM_StableSort_int32_PipeOrgan_64 291 ns 265 ns
BM_StableSort_int32_PipeOrgan_256 2557 ns 2518 ns
BM_StableSort_int32_PipeOrgan_1024 6765 ns 10976 ns
BM_StableSort_int32_PipeOrgan_4096 26373 ns 44537 ns
BM_StableSort_int32_PipeOrgan_16384 201466 ns 188582 ns
BM_StableSort_int32_PipeOrgan_65536 1148533 ns 802368 ns
BM_StableSort_int32_PipeOrgan_262144 2255177 ns 3477829 ns
BM_StableSort_int32_PipeOrgan_524288 3947015 ns 10356637 ns
BM_StableSort_int32_PipeOrgan_1048576 10274312 ns 16405366 ns
BM_StableSort_int32_QuickSortAdversary_1 3.32 ns 4.36 ns
BM_StableSort_int32_QuickSortAdversary_4 5.98 ns 7.44 ns
BM_StableSort_int32_QuickSortAdversary_16 13.0 ns 16.3 ns
BM_StableSort_int32_QuickSortAdversary_64 657 ns 616 ns
BM_StableSort_int32_QuickSortAdversary_256 2569 ns 2483 ns
BM_StableSort_int32_QuickSortAdversary_1024 6898 ns 19635 ns
BM_StableSort_int32_QuickSortAdversary_4096 27092 ns 75108 ns
BM_StableSort_int32_QuickSortAdversary_16384 190379 ns 316463 ns
BM_StableSort_int32_QuickSortAdversary_65536 1109040 ns 1319018 ns
BM_StableSort_int32_QuickSortAdversary_262144 4361925 ns 5472779 ns
BM_StableSort_int32_QuickSortAdversary_524288 6528215 ns 17538983 ns
BM_StableSort_int32_QuickSortAdversary_1048576 18345325 ns 27223926 ns
BM_StableSort_uint32_Random_1 3.67 ns 3.82 ns
BM_StableSort_uint32_Random_4 22.3 ns 21.8 ns
BM_StableSort_uint32_Random_16 155 ns 153 ns
BM_StableSort_uint32_Random_64 946 ns 976 ns
BM_StableSort_uint32_Random_256 5824 ns 6019 ns
BM_StableSort_uint32_Random_1024 4525 ns 32764 ns
BM_StableSort_uint32_Random_4096 17223 ns 158608 ns
BM_StableSort_uint32_Random_16384 134821 ns 748525 ns
BM_StableSort_uint32_Random_65536 716644 ns 3453325 ns
BM_StableSort_uint32_Random_262144 3628062 ns 16065414 ns
BM_StableSort_uint32_Random_524288 10971334 ns 36567712 ns
BM_StableSort_uint32_Random_1048576 22688377 ns 77533497 ns
BM_StableSort_uint32_Ascending_1 3.57 ns 3.44 ns
BM_StableSort_uint32_Ascending_4 5.73 ns 5.33 ns
BM_StableSort_uint32_Ascending_16 14.5 ns 14.0 ns
BM_StableSort_uint32_Ascending_64 50.3 ns 51.3 ns
BM_StableSort_uint32_Ascending_256 465 ns 467 ns
BM_StableSort_uint32_Ascending_1024 3042 ns 2530 ns
BM_StableSort_uint32_Ascending_4096 9842 ns 12207 ns
BM_StableSort_uint32_Ascending_16384 37994 ns 61726 ns
BM_StableSort_uint32_Ascending_65536 148890 ns 294385 ns
BM_StableSort_uint32_Ascending_262144 855080 ns 1422167 ns
BM_StableSort_uint32_Ascending_524288 2154903 ns 3203018 ns
BM_StableSort_uint32_Ascending_1048576 5002518 ns 7563817 ns
BM_StableSort_uint32_Descending_1 3.51 ns 3.40 ns
BM_StableSort_uint32_Descending_4 9.09 ns 7.95 ns
BM_StableSort_uint32_Descending_16 54.8 ns 74.4 ns
BM_StableSort_uint32_Descending_64 1003 ns 1305 ns
BM_StableSort_uint32_Descending_256 4545 ns 5300 ns
BM_StableSort_uint32_Descending_1024 4361 ns 21884 ns
BM_StableSort_uint32_Descending_4096 16018 ns 90534 ns
BM_StableSort_uint32_Descending_16384 146274 ns 381943 ns
BM_StableSort_uint32_Descending_65536 938248 ns 1536806 ns
BM_StableSort_uint32_Descending_262144 3899300 ns 6387843 ns
BM_StableSort_uint32_Descending_524288 5808157 ns 21959858 ns
BM_StableSort_uint32_Descending_1048576 17520047 ns 26351912 ns
BM_StableSort_uint32_SingleElement_1 4.03 ns 3.97 ns
BM_StableSort_uint32_SingleElement_4 6.55 ns 6.41 ns
BM_StableSort_uint32_SingleElement_16 15.6 ns 15.8 ns
BM_StableSort_uint32_SingleElement_64 52.3 ns 58.7 ns
BM_StableSort_uint32_SingleElement_256 473 ns 485 ns
BM_StableSort_uint32_SingleElement_1024 3020 ns 2407 ns
BM_StableSort_uint32_SingleElement_4096 9998 ns 12527 ns
BM_StableSort_uint32_SingleElement_16384 38072 ns 62228 ns
BM_StableSort_uint32_SingleElement_65536 153706 ns 295662 ns
BM_StableSort_uint32_SingleElement_262144 836532 ns 1477099 ns
BM_StableSort_uint32_SingleElement_524288 2144900 ns 3157204 ns
BM_StableSort_uint32_SingleElement_1048576 4995525 ns 7617233 ns
BM_StableSort_uint32_PipeOrgan_1 4.02 ns 3.99 ns
BM_StableSort_uint32_PipeOrgan_4 6.97 ns 6.84 ns
BM_StableSort_uint32_PipeOrgan_16 26.1 ns 29.7 ns
BM_StableSort_uint32_PipeOrgan_64 266 ns 333 ns
BM_StableSort_uint32_PipeOrgan_256 2462 ns 2892 ns
BM_StableSort_uint32_PipeOrgan_1024 4291 ns 12431 ns
BM_StableSort_uint32_PipeOrgan_4096 15638 ns 51449 ns
BM_StableSort_uint32_PipeOrgan_16384 154563 ns 217460 ns
BM_StableSort_uint32_PipeOrgan_65536 907724 ns 925873 ns
BM_StableSort_uint32_PipeOrgan_262144 2394580 ns 4103575 ns
BM_StableSort_uint32_PipeOrgan_524288 4177145 ns 13947158 ns
BM_StableSort_uint32_PipeOrgan_1048576 11848224 ns 18807297 ns
BM_StableSort_uint32_QuickSortAdversary_1 3.50 ns 3.43 ns
BM_StableSort_uint32_QuickSortAdversary_4 5.88 ns 4.96 ns
BM_StableSort_uint32_QuickSortAdversary_16 14.6 ns 14.0 ns
BM_StableSort_uint32_QuickSortAdversary_64 576 ns 715 ns
BM_StableSort_uint32_QuickSortAdversary_256 2353 ns 2797 ns
BM_StableSort_uint32_QuickSortAdversary_1024 4176 ns 21775 ns
BM_StableSort_uint32_QuickSortAdversary_4096 15565 ns 96188 ns
BM_StableSort_uint32_QuickSortAdversary_16384 149092 ns 398332 ns
BM_StableSort_uint32_QuickSortAdversary_65536 902488 ns 1552393 ns
BM_StableSort_uint32_QuickSortAdversary_262144 3946517 ns 6560414 ns
BM_StableSort_uint32_QuickSortAdversary_524288 6247114 ns 22420977 ns
BM_StableSort_uint32_QuickSortAdversary_1048576 19892446 ns 26529576 ns
BM_StableSort_int64_Random_1 3.83 ns 3.98 ns
BM_StableSort_int64_Random_4 21.1 ns 24.0 ns
BM_StableSort_int64_Random_16 129 ns 136 ns
BM_StableSort_int64_Random_64 890 ns 906 ns
BM_StableSort_int64_Random_256 5542 ns 5901 ns
BM_StableSort_int64_Random_1024 16085 ns 33112 ns
BM_StableSort_int64_Random_4096 63895 ns 162181 ns
BM_StableSort_int64_Random_16384 348827 ns 790045 ns
BM_StableSort_int64_Random_65536 1488237 ns 3557506 ns
BM_StableSort_int64_Random_262144 8195713 ns 16315808 ns
BM_StableSort_int64_Random_524288 16586833 ns 38274075 ns
BM_StableSort_int64_Random_1048576 40346644 ns 79182089 ns
BM_StableSort_int64_Ascending_1 3.76 ns 3.55 ns
BM_StableSort_int64_Ascending_4 5.82 ns 6.19 ns
BM_StableSort_int64_Ascending_16 11.7 ns 11.8 ns
BM_StableSort_int64_Ascending_64 32.9 ns 36.8 ns
BM_StableSort_int64_Ascending_256 415 ns 550 ns
BM_StableSort_int64_Ascending_1024 5352 ns 3347 ns
BM_StableSort_int64_Ascending_4096 17516 ns 19134 ns
BM_StableSort_int64_Ascending_16384 64147 ns 91099 ns
BM_StableSort_int64_Ascending_65536 322126 ns 434009 ns
BM_StableSort_int64_Ascending_262144 1554669 ns 2057056 ns
BM_StableSort_int64_Ascending_524288 3656527 ns 5016650 ns
BM_StableSort_int64_Ascending_1048576 10469979 ns 12908613 ns
BM_StableSort_int64_Descending_1 4.09 ns 3.35 ns
BM_StableSort_int64_Descending_4 9.13 ns 8.01 ns
BM_StableSort_int64_Descending_16 76.8 ns 92.9 ns
BM_StableSort_int64_Descending_64 1336 ns 1417 ns
BM_StableSort_int64_Descending_256 5525 ns 5674 ns
BM_StableSort_int64_Descending_1024 17461 ns 22558 ns
BM_StableSort_int64_Descending_4096 64285 ns 102360 ns
BM_StableSort_int64_Descending_16384 336946 ns 388940 ns
BM_StableSort_int64_Descending_65536 837912 ns 1662169 ns
BM_StableSort_int64_Descending_262144 3680806 ns 7494323 ns
BM_StableSort_int64_Descending_524288 11023784 ns 24935033 ns
BM_StableSort_int64_Descending_1048576 20023568 ns 33220712 ns
BM_StableSort_int64_SingleElement_1 3.37 ns 3.98 ns
BM_StableSort_int64_SingleElement_4 5.32 ns 6.92 ns
BM_StableSort_int64_SingleElement_16 10.9 ns 13.3 ns
BM_StableSort_int64_SingleElement_64 32.1 ns 43.8 ns
BM_StableSort_int64_SingleElement_256 420 ns 541 ns
BM_StableSort_int64_SingleElement_1024 5689 ns 3381 ns
BM_StableSort_int64_SingleElement_4096 19199 ns 17989 ns
BM_StableSort_int64_SingleElement_16384 75754 ns 91963 ns
BM_StableSort_int64_SingleElement_65536 357106 ns 500326 ns
BM_StableSort_int64_SingleElement_262144 1672975 ns 2417734 ns
BM_StableSort_int64_SingleElement_524288 3642891 ns 5200878 ns
BM_StableSort_int64_SingleElement_1048576 11172007 ns 13729511 ns
BM_StableSort_int64_PipeOrgan_1 3.38 ns 3.94 ns
BM_StableSort_int64_PipeOrgan_4 5.73 ns 6.44 ns
BM_StableSort_int64_PipeOrgan_16 27.5 ns 29.0 ns
BM_StableSort_int64_PipeOrgan_64 310 ns 321 ns
BM_StableSort_int64_PipeOrgan_256 2761 ns 2918 ns
BM_StableSort_int64_PipeOrgan_1024 16105 ns 12525 ns
BM_StableSort_int64_PipeOrgan_4096 65289 ns 59990 ns
BM_StableSort_int64_PipeOrgan_16384 341757 ns 270636 ns
BM_StableSort_int64_PipeOrgan_65536 587452 ns 1126132 ns
BM_StableSort_int64_PipeOrgan_262144 2837955 ns 5034180 ns
BM_StableSort_int64_PipeOrgan_524288 6617313 ns 15267354 ns
BM_StableSort_int64_PipeOrgan_1048576 15208796 ns 23162989 ns
BM_StableSort_int64_QuickSortAdversary_1 3.77 ns 3.45 ns
BM_StableSort_int64_QuickSortAdversary_4 5.55 ns 5.20 ns
BM_StableSort_int64_QuickSortAdversary_16 12.5 ns 11.5 ns
BM_StableSort_int64_QuickSortAdversary_64 646 ns 750 ns
BM_StableSort_int64_QuickSortAdversary_256 2655 ns 3539 ns
BM_StableSort_int64_QuickSortAdversary_1024 16373 ns 22349 ns
BM_StableSort_int64_QuickSortAdversary_4096 62306 ns 97248 ns
BM_StableSort_int64_QuickSortAdversary_16384 321755 ns 388084 ns
BM_StableSort_int64_QuickSortAdversary_65536 1374694 ns 1596091 ns
BM_StableSort_int64_QuickSortAdversary_262144 4374661 ns 6894139 ns
BM_StableSort_int64_QuickSortAdversary_524288 12736074 ns 23932229 ns
BM_StableSort_int64_QuickSortAdversary_1048576 22615219 ns 33355629 ns
BM_StableSort_uint64_Random_1 3.82 ns 3.49 ns
BM_StableSort_uint64_Random_4 22.4 ns 23.4 ns
BM_StableSort_uint64_Random_16 154 ns 146 ns
BM_StableSort_uint64_Random_64 924 ns 926 ns
BM_StableSort_uint64_Random_256 5864 ns 5913 ns
BM_StableSort_uint64_Random_1024 7168 ns 31746 ns
BM_StableSort_uint64_Random_4096 27668 ns 154224 ns
BM_StableSort_uint64_Random_16384 219526 ns 755205 ns
BM_StableSort_uint64_Random_65536 965251 ns 3490165 ns
BM_StableSort_uint64_Random_262144 6262162 ns 15889589 ns
BM_StableSort_uint64_Random_524288 12530078 ns 36458581 ns
BM_StableSort_uint64_Random_1048576 38462191 ns 75168445 ns
BM_StableSort_uint64_Ascending_1 3.30 ns 3.35 ns
BM_StableSort_uint64_Ascending_4 5.65 ns 5.84 ns
BM_StableSort_uint64_Ascending_16 14.7 ns 12.6 ns
BM_StableSort_uint64_Ascending_64 55.3 ns 34.6 ns
BM_StableSort_uint64_Ascending_256 513 ns 533 ns
BM_StableSort_uint64_Ascending_1024 5541 ns 3189 ns
BM_StableSort_uint64_Ascending_4096 17706 ns 20326 ns
BM_StableSort_uint64_Ascending_16384 66420 ns 93757 ns
BM_StableSort_uint64_Ascending_65536 341425 ns 435016 ns
BM_StableSort_uint64_Ascending_262144 1595691 ns 2088317 ns
BM_StableSort_uint64_Ascending_524288 3808703 ns 5092832 ns
BM_StableSort_uint64_Ascending_1048576 11060417 ns 13023250 ns
BM_StableSort_uint64_Descending_1 3.29 ns 3.35 ns
BM_StableSort_uint64_Descending_4 8.65 ns 7.92 ns
BM_StableSort_uint64_Descending_16 54.7 ns 80.2 ns
BM_StableSort_uint64_Descending_64 1028 ns 1307 ns
BM_StableSort_uint64_Descending_256 4521 ns 5635 ns
BM_StableSort_uint64_Descending_1024 7122 ns 23323 ns
BM_StableSort_uint64_Descending_4096 30538 ns 95892 ns
BM_StableSort_uint64_Descending_16384 195565 ns 392721 ns
BM_StableSort_uint64_Descending_65536 852002 ns 1720358 ns
BM_StableSort_uint64_Descending_262144 3737884 ns 7484130 ns
BM_StableSort_uint64_Descending_524288 11159345 ns 25690770 ns
BM_StableSort_uint64_Descending_1048576 20648864 ns 33057383 ns
BM_StableSort_uint64_SingleElement_1 3.62 ns 4.10 ns
BM_StableSort_uint64_SingleElement_4 6.73 ns 6.64 ns
BM_StableSort_uint64_SingleElement_16 14.9 ns 11.3 ns
BM_StableSort_uint64_SingleElement_64 52.0 ns 33.0 ns
BM_StableSort_uint64_SingleElement_256 511 ns 582 ns
BM_StableSort_uint64_SingleElement_1024 6499 ns 3287 ns
BM_StableSort_uint64_SingleElement_4096 22190 ns 17616 ns
BM_StableSort_uint64_SingleElement_16384 84378 ns 86885 ns
BM_StableSort_uint64_SingleElement_65536 466257 ns 457144 ns
BM_StableSort_uint64_SingleElement_262144 1993687 ns 2361999 ns
BM_StableSort_uint64_SingleElement_524288 4759565 ns 5096771 ns
BM_StableSort_uint64_SingleElement_1048576 12426111 ns 13468453 ns
BM_StableSort_uint64_PipeOrgan_1 3.73 ns 3.94 ns
BM_StableSort_uint64_PipeOrgan_4 7.18 ns 7.54 ns
BM_StableSort_uint64_PipeOrgan_16 25.2 ns 29.1 ns
BM_StableSort_uint64_PipeOrgan_64 260 ns 321 ns
BM_StableSort_uint64_PipeOrgan_256 2468 ns 2970 ns
BM_StableSort_uint64_PipeOrgan_1024 7025 ns 12912 ns
BM_StableSort_uint64_PipeOrgan_4096 28968 ns 53379 ns
BM_StableSort_uint64_PipeOrgan_16384 194156 ns 239790 ns
BM_StableSort_uint64_PipeOrgan_65536 599491 ns 993800 ns
BM_StableSort_uint64_PipeOrgan_262144 2648585 ns 4689680 ns
BM_StableSort_uint64_PipeOrgan_524288 7621109 ns 15401808 ns
BM_StableSort_uint64_PipeOrgan_1048576 15608814 ns 23484821 ns
BM_StableSort_uint64_QuickSortAdversary_1 3.38 ns 3.54 ns
BM_StableSort_uint64_QuickSortAdversary_4 5.50 ns 6.03 ns
BM_StableSort_uint64_QuickSortAdversary_16 14.2 ns 11.0 ns
BM_StableSort_uint64_QuickSortAdversary_64 597 ns 688 ns
BM_StableSort_uint64_QuickSortAdversary_256 2446 ns 2818 ns
BM_StableSort_uint64_QuickSortAdversary_1024 7266 ns 20319 ns
BM_StableSort_uint64_QuickSortAdversary_4096 31155 ns 89112 ns
BM_StableSort_uint64_QuickSortAdversary_16384 201033 ns 390574 ns
BM_StableSort_uint64_QuickSortAdversary_65536 871014 ns 1685639 ns
BM_StableSort_uint64_QuickSortAdversary_262144 3978535 ns 7265830 ns
BM_StableSort_uint64_QuickSortAdversary_524288 10279721 ns 25350004 ns
BM_StableSort_uint64_QuickSortAdversary_1048576 20256585 ns 33054393 ns
```
Commit: 0e1c5bfac8574bc8419968279069c76b55e5f270
https://github.com/llvm/llvm-project/commit/0e1c5bfac8574bc8419968279069c76b55e5f270
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn build] Port 69b54c1a05c0
Commit: a6b7181733c83523a39d4f4e788c6b7a227d477d
https://github.com/llvm/llvm-project/commit/a6b7181733c83523a39d4f4e788c6b7a227d477d
Author: Farzon Lotfi <farzonlotfi at microsoft.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/Headers/hlsl/hlsl_detail.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/CodeGenHLSL/builtins/length.hlsl
M clang/test/SemaHLSL/BuiltIns/length-errors.hlsl
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
R llvm/test/CodeGen/DirectX/length.ll
R llvm/test/CodeGen/DirectX/length_error.ll
R llvm/test/CodeGen/DirectX/length_invalid_intrinsic_error.ll
R llvm/test/CodeGen/DirectX/length_invalid_intrinsic_error_scalar.ll
Log Message:
-----------
[HLSL] Move length support out of the DirectX Backend (#121611)
## Changes
- Delete DirectX length intrinsic
- Delete HLSL length lang builtin
- Implement length algorithm entirely in the header.
## History
- In the past if an HLSL intrinsic lowered to either a spirv op code or
a DXIL opcode we represented it with intrinsics
## Why we are moving away?
- To make HLSL apis more portable the team decided that it makes sense
for some intrinsics to be defined only in the header.
- Since there tends to be more SPIRV opcodes than DXIL opcodes the plan
is to support SPIRV opcodes either with target specific builtins or via
pattern matching.
Commit: b6cda338ab7bd18265a3e3fd494856620aec5210
https://github.com/llvm/llvm-project/commit/b6cda338ab7bd18265a3e3fd494856620aec5210
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Analysis/Loads.cpp
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
Log Message:
-----------
[Loads] Also consider getPointerAlignment when checking assumptions. (#120916)
Also use getPointerAlignment when trying to use alignment and
dereferenceable assumptions. This catches cases where dereferencable is
known via the assumption but alignment is known via getPointerAlignment
(e.g. via argument attribute or align of 1)
PR: https://github.com/llvm/llvm-project/pull/120916
Commit: 6beaa4552686685e93e31dcb6275e18c4c17acd9
https://github.com/llvm/llvm-project/commit/6beaa4552686685e93e31dcb6275e18c4c17acd9
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
Log Message:
-----------
[RISCV][VLOPT] Fix VCFCT incompatible EEW test (#122327)
https://github.com/llvm/llvm-project/pull/122151 added this test with an
invalid SEW. Use a valid SEW here.
Commit: cbcb7ad32e6faca1f4c0f2f436e6076774104e17
https://github.com/llvm/llvm-project/commit/cbcb7ad32e6faca1f4c0f2f436e6076774104e17
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M mlir/docs/Dialects/OpenACCDialect.md
M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/unittests/Dialect/OpenACC/OpenACCOpsTest.cpp
Log Message:
-----------
[mlir][acc] Introduce MappableType interface (#122146)
OpenACC data clause operations previously required that the variable
operand implemented PointerLikeType interface. This was a reasonable
constraint because the dialects currently mixed with `acc` do use
pointers to represent variables. However, this forces the "pointer"
abstraction to be exposed too early and some cases are not cleanly
representable through this approach (more specifically FIR's `fix.box`
abstraction).
Thus, relax this by allowing a variable to be a type which implements
either `PointerLikeType` interface or `MappableType` interface.
Commit: d5145715f7e0866fe6526f9f09558dd698344d52
https://github.com/llvm/llvm-project/commit/d5145715f7e0866fe6526f9f09558dd698344d52
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
Log Message:
-----------
[RISCV][VLOPT] Add vfirst and vcpop to getOperandInfo (#122295)
Commit: 8e12037d38e2a9a1cfc6402be2b33283e3220bcc
https://github.com/llvm/llvm-project/commit/8e12037d38e2a9a1cfc6402be2b33283e3220bcc
Author: Michał Górny <mgorny at gentoo.org>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M flang/CMakeLists.txt
Log Message:
-----------
[flang] Fix finding system install of LLVM/Clang/MLIR in standalone builds (#120914)
The changes in #87822 introduced a regression where Flang could no
longer be built standalone without explicitly specifying all of
LLVM_DIR, CLANG_DIR and MLIR_DIR. Restore the earlier logic that used
these paths as hints, and supported finding system-wide LLVM install via
default paths. Instead, make paths absolute after locating the packages,
using the paths CMake determined.
-----
@vzakhari, could you confirm that this doesn't break your use case?
Commit: 3ba46ddb7994c4fa63d3d34166b6f3dedb07a184
https://github.com/llvm/llvm-project/commit/3ba46ddb7994c4fa63d3d34166b6f3dedb07a184
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
A llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp16.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp8.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3cx-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8.s
Log Message:
-----------
[AMDGPU][True16][MC][NFC] add true16/fake16 test for gfx12 vop3c/3cx (#122316)
This is a NFC. Duplicate mc test file for gfx12 vop3c/vop3cx to
true16/fake16 mode and update it with +real-true16/-real-true16 flag.
This is for the upcoming true16 changes
Commit: 222ff186087f0f1d9976ac2512dca52d90e13472
https://github.com/llvm/llvm-project/commit/222ff186087f0f1d9976ac2512dca52d90e13472
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/test/CodeGen/AMDGPU/fmed3.ll
Log Message:
-----------
[AMDGPU][True16][CodeGen] Update codegen pattern for v_med3_f16 (#121992)
true16 codegen pattern for v_med3_f16
Commit: 031f33cca3c953dd09ac439fdb503fb3cb36af5e
https://github.com/llvm/llvm-project/commit/031f33cca3c953dd09ac439fdb503fb3cb36af5e
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
Log Message:
-----------
[RISCV] Add tests for legalization of <N x i128> and <N x i256> shuffles
Commit: c036a9a2c2130f6e80e2969d4a8fad96265e4a11
https://github.com/llvm/llvm-project/commit/c036a9a2c2130f6e80e2969d4a8fad96265e4a11
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
Log Message:
-----------
[RISCV][VLOPT] Add vector single width floating point add subtract instructions to isSupportedInstr
Commit: 8beb9d393deaafde5ce7323a71cd0b0b1553444d
https://github.com/llvm/llvm-project/commit/8beb9d393deaafde5ce7323a71cd0b0b1553444d
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
Log Message:
-----------
[RISCV][VLOPT] Add vector widening floating point add subtract instructions to isSupportedInstr
Commit: a484fa1d0a974680d609d3f08ee6d57c9e3d21f8
https://github.com/llvm/llvm-project/commit/a484fa1d0a974680d609d3f08ee6d57c9e3d21f8
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
Log Message:
-----------
[RISCV][VLOPT] Add floating point multiply divide instructions to getSupportedInstr
Commit: b419edeec34844cfc31665248d670d777499340d
https://github.com/llvm/llvm-project/commit/b419edeec34844cfc31665248d670d777499340d
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
Log Message:
-----------
[RISCV][VLOPT] Add widening floating point multiply to isSupportedInstr
Commit: 5f70fea79fdb947ab7820aa47e5a1885691ef73a
https://github.com/llvm/llvm-project/commit/5f70fea79fdb947ab7820aa47e5a1885691ef73a
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
Log Message:
-----------
[RISCV][VLOPT] Add Vector Floating-Point Compare Instructions to getSupportedInstr
Commit: ca10deaa72c37fb5eee8bf1c95466b12a8773e95
https://github.com/llvm/llvm-project/commit/ca10deaa72c37fb5eee8bf1c95466b12a8773e95
Author: Kai Nacke <kai.peter.nacke at ibm.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Support/Unix/Signals.inc
Log Message:
-----------
[z/OS] Add backtrace support for z/OS. (#121826)
The system call `__CELQTBCK()` is used to build a backtrace like
on other systems. The collected information are the address of the PC,
the address of the entry point (EP), the difference between both
addresses (+EP), the dynamic storage area (DSA aka the stack
pointer), and the function name.
The system call is described here:
https://www.ibm.com/docs/en/zos/3.1.0?topic=cwicsa6a-celqtbck-also-known-as-celqtbck-64-bit-traceback-service
Commit: c123d0c1df3363f309a2c0b7837297d3790d6ea5
https://github.com/llvm/llvm-project/commit/c123d0c1df3363f309a2c0b7837297d3790d6ea5
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/lib/Sema/SemaHLSL.cpp
Log Message:
-----------
[HLSL][NFC] Move packoffset validation to separate function and calculate offsets in bytes (#121989)
There will be more changes coming in to `SemaHLSL::ActOnFinishBuffer` so
it would be good to move the packoffset validation out to a separate
function. This change also unifies the units for cbuffer offset
calculations to bytes.
Commit: 1c999072221371c9008cd0aec80e387777378de0
https://github.com/llvm/llvm-project/commit/1c999072221371c9008cd0aec80e387777378de0
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaOverload.cpp
A clang/test/SemaCUDA/constexpr-virtual-func.cu
Log Message:
-----------
[CUDA][HIP] Fix overriding of constexpr virtual function (#121986)
In C++20 constexpr virtual function is allowed. In C++17 although
non-pure virtual function is not allowed to be constexpr, pure virtual
function is allowed to be constexpr and is allowed to be overriden by
non-constexpr virtual function in the derived class.
The following code compiles as C++:
```
class A
{
public:
constexpr virtual int f() = 0;
};
class B : public A
{
public:
int f() override
{
return 42;
}
};
```
However, it fails to compile as CUDA or HIP code. The reason: A::f() is
implicitly host device function whereas B::f() is a host function. Since
they have different targets, clang does not treat B::f() as an override
of A::f(). Instead, it treats B::f() as a name-hiding non-virtual
function for A::f(), and diagnoses it.
This causes any CUDA/HIP program using C++ standard header file
`<format>` from g++-13 to fail to compile since such usage patten show
up there:
```
/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/format:3564:34: error: non-virtual member function marked 'override' hides virtual member function
3564 | _M_format_arg(size_t __id) override
| ^
/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/format:3538:30: note: hidden overloaded virtual function 'std::__format::_Scanner<char>::_M_format_arg' declared here
3538 | constexpr virtual void _M_format_arg(size_t __id) = 0;
| ^
```
This is a serious issue and there is no workaround.
This patch allows non-constexpr function to override constexpr virtual
function for CUDA and HIP. This should be OK since non-constexpr
function without explicit host or device attribute can only be called in
host functions.
Fixes: SWDEV-507350
Commit: 9ec92873ecc1c268a1d05e36b7b52e378860ea5b
https://github.com/llvm/llvm-project/commit/9ec92873ecc1c268a1d05e36b7b52e378860ea5b
Author: Nico Weber <thakis at chromium.org>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/Headers/hlsl/hlsl_detail.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/CodeGenHLSL/builtins/length.hlsl
M clang/test/SemaHLSL/BuiltIns/length-errors.hlsl
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
A llvm/test/CodeGen/DirectX/length.ll
A llvm/test/CodeGen/DirectX/length_error.ll
A llvm/test/CodeGen/DirectX/length_invalid_intrinsic_error.ll
A llvm/test/CodeGen/DirectX/length_invalid_intrinsic_error_scalar.ll
Log Message:
-----------
Revert "[HLSL] Move length support out of the DirectX Backend (#121611)"
This reverts commit a6b7181733c83523a39d4f4e788c6b7a227d477d.
Breaks Clang :: CodeGenHLSL/builtins/length.hlsl, see
https://github.com/llvm/llvm-project/pull/121611#issuecomment-2581004278
Commit: 26aa20a3dd82e2ff5855bee04b22b35f6b1f026f
https://github.com/llvm/llvm-project/commit/26aa20a3dd82e2ff5855bee04b22b35f6b1f026f
Author: Reid Kleckner <rnk at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/include/clang/AST/Decl.h
M clang/lib/AST/Decl.cpp
M clang/lib/AST/RecordLayoutBuilder.cpp
M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
Log Message:
-----------
Use range-based for to iterate over fields in record layout, NFCI (#122029)
Move the common case of FieldDecl::getFieldIndex() inline to mitigate
the cost of removing the extra `FieldNo` induction variable.
Also rename isNoUniqueAddress parameter to isNonVirtualBaseType, which
appears to be more accurate. I think the current name is just a
consequence of autocomplete gone wrong.
Commit: 5ff36748cfeee1d02da6512ad578e4014724f67e
https://github.com/llvm/llvm-project/commit/5ff36748cfeee1d02da6512ad578e4014724f67e
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/shuffle-mask-emission.ll
Log Message:
-----------
[SLP]Fix mask processing for reused gathered scalars
Need to sync the mask between cost and actual emission to avoid bugs in
mask calculation
Fixes #122324
Commit: 1842a3d833d934793012c717e98b10d51193fd0d
https://github.com/llvm/llvm-project/commit/1842a3d833d934793012c717e98b10d51193fd0d
Author: Paul Bowen-Huggett <paulhuggett at mac.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/cmake/modules/AddClang.cmake
Log Message:
-----------
Fix a cmake error when using the Xcode generator. (#119403)
I’m seeing a series of errors when trying to run the cmake configure
step on macOS when the cmake generator is set to Xcode. All is well if I
use the Ninja or Unix Makefile generators. Messages are all of the form:
~~~
CMake Error at …llvm-project/clang/cmake/modules/AddClang.cmake:120
(target_compile_definitions):
Cannot specify compile definitions for target "obj.clangBasic" which
is not built by this project.
Call Stack (most recent call first):
…llvm-project/clang/lib/Basic/CMakeLists.txt:57 (add_clang_library)
~~~
The remaining errors are similar but mention targets obj.clangAPINotes,
obj.clangLex, obj.clangParse, and so on.
The regression appears to have been introduced by commit 09fa2f012fcc
(Oct 14 2024) which added the code in this area.
My proposed solution is simply to add a test to ensure that the obj.x
target exists before setting its compile definitions. There is precedent
doing just this in both clang/cmake/modules/AddClang.cmake and
clang/lib/support/CMakeLists.txt as well as in the “MSVC AND NOT
CLANG_LINK_CLANG_DYLIB” path immediately above the offending line.
I’ve also made a couple of grammatical tweaks in the comments
surrounding this code.
In case it's relevant, the cmake settings and definitions I've used to
trigger these errors is:
~~~bash
GENERATOR="Xcode"
OUTDIR=build_macos
cmake \
-S "$SCRIPT_DIR/llvm" \
-B "$SCRIPT_DIR/$OUTDIR" \
-G "$GENERATOR" \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_OSX_ARCHITECTURES=arm64 \
-D LLVM_PARALLEL_LINK_JOBS=1 \
-D LLVM_ENABLE_PROJECTS="clang;lld" \
-D LLVM_TARGETS_TO_BUILD=RISCV \
-D LLVM_DEFAULT_TARGET_TRIPLE=riscv32-unknown-elf \
-D LLVM_OPTIMIZED_TABLEGEN=Yes
~~~
(cmake v3.31.1, Xcode 16.1. I know that not all of these variables are
useful for the Xcode generator!)
Co-authored-by: Paul Bowen-Huggett <phuggett at keysom.io>
Commit: 2c6ed5f7eec30c22e136c03777eda9a8c4c0c79b
https://github.com/llvm/llvm-project/commit/2c6ed5f7eec30c22e136c03777eda9a8c4c0c79b
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/20.rst
Log Message:
-----------
[libc++][NFC] Remove trailing whitespace from release notes
Commit: b16777afb0c1799bb3eaa63c66213180c99c9d25
https://github.com/llvm/llvm-project/commit/b16777afb0c1799bb3eaa63c66213180c99c9d25
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
Log Message:
-----------
[RISCV] Return MILog2SEW for mask instructions getOperandLog2EEW. NFC (#122332)
The SEW operand for these instructions should have a value of 0. This
matches what was done for vcpop/vfirst.
Commit: 876841b0e2aea4ae8dac58842242e311b8aef432
https://github.com/llvm/llvm-project/commit/876841b0e2aea4ae8dac58842242e311b8aef432
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[WebAssembly] Format WebAssembly ReleaseNote entries (#122203)
Commit: 1b897f737df2097f8fee1b203676ea7f01dff06d
https://github.com/llvm/llvm-project/commit/1b897f737df2097f8fee1b203676ea7f01dff06d
Author: Maksim Ivanov <emaxx at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.cpp
Log Message:
-----------
[clang-tidy] Fix misc-unused-parameters on params with attrs (#122286)
Don't suggest to comment-out the parameter name if the parameter has an
attribute that's spelled after the parameter name.
This prevents the parameter's attributes from being wrongly applied to
the parameter's type.
This fixes #122191.
Commit: 0aa831e0edb1c1deabb96ce2435667cc82bac79b
https://github.com/llvm/llvm-project/commit/0aa831e0edb1c1deabb96ce2435667cc82bac79b
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
A mlir/include/mlir/Dialect/GPU/IR/ValueBoundsOpInterfaceImpl.h
M mlir/include/mlir/InitAllDialects.h
M mlir/lib/Dialect/GPU/CMakeLists.txt
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
A mlir/lib/Dialect/GPU/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/test/Dialect/Affine/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/Affine/value-bounds-reification.mlir
M mlir/test/Dialect/Arith/value-bounds-op-interface-impl.mlir
A mlir/test/Dialect/GPU/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/Linalg/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/MemRef/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/SCF/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/Tensor/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/Vector/test-scalable-bounds.mlir
M mlir/test/Dialect/Vector/value-bounds-op-interface-impl.mlir
M mlir/test/lib/Dialect/Affine/TestReifyValueBounds.cpp
Log Message:
-----------
[mlir][GPU] Implement ValueBoundsOpInterface for GPU ID operations (#122190)
The GPU ID operations already implement InferIntRangeInterface, which
gives constant lower and upper bounds on those IDs when appropriate
metadata is prentent on the operations or in the surrounding context.
This commit uses that existing code to implement the
ValueBoundsOpInterface, which is used when analyzing affine operations
(unlike the integer range interface, which is used for arithmetic
optimization).
It also implements the interface for gpu.launch, where we can use it to
express the constraint that block/grid sizes are equal to their value
from outside the launch op and that the corresponding IDs are bounded
above by that size.
As a consequence, the test pass for this inference is updated to work on
a FunctionOpInterface and not a func.func, creating minor churn in other
tests.
Commit: 6312beef788a209dc7d73c2c10b36197dab1cff3
https://github.com/llvm/llvm-project/commit/6312beef788a209dc7d73c2c10b36197dab1cff3
Author: vporpo <vporpodas at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/include/llvm/SandboxIR/Pass.h
M llvm/include/llvm/SandboxIR/Utils.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Legality.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Scheduler.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SeedCollector.cpp
M llvm/test/Transforms/SandboxVectorizer/bottomup_basic.ll
A llvm/test/Transforms/SandboxVectorizer/bottomup_seed_slice.ll
A llvm/test/Transforms/SandboxVectorizer/bottomup_seed_slice_pow2.ll
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/VecUtilsTest.cpp
Log Message:
-----------
[SandboxVec][BottomUpVec] Use SeedCollector and slice seeds (#120826)
With this patch we switch from the temporary dummy seeds to actual seeds
provided by the seed collector.
The seeds get sliced and each slice is used as the starting point for
vectorization.
Commit: 1739ba9bb5b5e0b2f3c7b381f7852b77a53ef3ba
https://github.com/llvm/llvm-project/commit/1739ba9bb5b5e0b2f3c7b381f7852b77a53ef3ba
Author: Johannes Doerfert <johannes at jdoerfert.de>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M offload/test/sanitizer/kernel_crash_async.c
Log Message:
-----------
[OpenMP][FIX] Adjust test to be non-flaky (#122331)
The test runs asynchronous kernels and depending on the timing the
output is slightly different. We now only check for the common parts of
the output.
Commit: b57c0bac81fe4f5c85c6554ca574cf2d5648e0c5
https://github.com/llvm/llvm-project/commit/b57c0bac81fe4f5c85c6554ca574cf2d5648e0c5
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M offload/DeviceRTL/CMakeLists.txt
M offload/DeviceRTL/include/DeviceUtils.h
M offload/DeviceRTL/include/Synchronization.h
M offload/DeviceRTL/src/Synchronization.cpp
Log Message:
-----------
[OpenMP] Update atomic helpers to just use headers (#122185)
Summary:
Previously we had some indirection here, this patch updates these
utilities to just be normal template functions. We use SFINAE to manage
the special case handling for floats. Also this strips address spaces so
it can be used more generally.
Commit: f53cb84df6b80458cb4d5ab7398a590356a3a952
https://github.com/llvm/llvm-project/commit/f53cb84df6b80458cb4d5ab7398a590356a3a952
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M offload/DeviceRTL/include/DeviceUtils.h
M offload/DeviceRTL/include/Synchronization.h
M offload/DeviceRTL/src/Mapping.cpp
M offload/include/Shared/Utils.h
Log Message:
-----------
[OpenMP] Use __builtin_bit_cast instead of UB type punning (#122325)
Summary:
Use a normal bitcast, remove from the shared utils since it's not
available in
GCC 7.4
Commit: 3055e86c719c6cc72e50bb74a0e3b9cffebb41b5
https://github.com/llvm/llvm-project/commit/3055e86c719c6cc72e50bb74a0e3b9cffebb41b5
Author: Teresa Johnson <tejohnson at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/test/ThinLTO/X86/memprof-recursive.ll
M llvm/test/Transforms/MemProfContextDisambiguation/recursive.ll
Log Message:
-----------
[MemProf] Disable cloning of callsites in recursive cycles by default (#122354)
This disables the support added in PR121985 by default while we
investigate a compile time crash.
Commit: 218f15cd1eee22933e505d7093ec2fe38a36ef3b
https://github.com/llvm/llvm-project/commit/218f15cd1eee22933e505d7093ec2fe38a36ef3b
Author: Chris B <chris.bieneman at me.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
A .github/workflows/hlsl-matrix.yaml
A .github/workflows/hlsl-test-all.yaml
Log Message:
-----------
Add pre-merge workflow for HLSL testing (#122184)
This adds a workflow for running HLSL tests on PRs that modify HLSL and
DirectX code.
The tests enabled here are the LLVM & Clang tests and the Offload
execution tests: https://github.com/llvm-beanz/offload-test-suite/
Commit: 9d5299eb61a64cd4df5fefa0299b0cf8d917978f
https://github.com/llvm/llvm-project/commit/9d5299eb61a64cd4df5fefa0299b0cf8d917978f
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
A llvm/test/Analysis/ValueTracking/implied-condition-samesign.ll
Log Message:
-----------
VT/test: pre-commit tests to enable samesign optz (#120257)
Pre-commit some tests in preparation to teach ValueTracking's
implied-cond about samesign.
Commit: f791a4f19f6c99feccfe59e0724d9215bee985cf
https://github.com/llvm/llvm-project/commit/f791a4f19f6c99feccfe59e0724d9215bee985cf
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dependency for cbcb7ad32e6faca1f4c0f2f436e6076774104e17
Commit: d797d94185cfb3eadaef6103b0d2b2f312e4f432
https://github.com/llvm/llvm-project/commit/d797d94185cfb3eadaef6103b0d2b2f312e4f432
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[bazel] Port 0aa831e0edb1c1deabb96ce2435667cc82bac79b
Commit: 8ea8e7f52908a831ab44ffca1e0c8fe207a409c8
https://github.com/llvm/llvm-project/commit/8ea8e7f52908a831ab44ffca1e0c8fe207a409c8
Author: Tom Honermann <tom.honermann at intel.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaSYCL.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/lib/Sema/SemaSYCL.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/test/ASTSYCL/ast-dump-sycl-kernel-entry-point.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-appertainment.cpp
M clang/test/SemaSYCL/sycl-kernel-entry-point-attr-grammar.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-kernel-name-module.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-kernel-name-pch.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-kernel-name.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-sfinae.cpp
Log Message:
-----------
[SYCL] Basic diagnostics for the sycl_kernel_entry_point attribute. (#120327)
The `sycl_kernel_entry_point` attribute is used to declare a function that
defines a pattern for an offload kernel entry point. The attribute requires
a single type argument that specifies a class type that meets the requirements
for a SYCL kernel name as described in section 5.2, "Naming of kernels", of
the SYCL 2020 specification. A unique kernel name type is required for each
function declared with the attribute. The attribute may not first appear on a
declaration that follows a definition of the function. The function is
required to have a non-deduced `void` return type. The function must not be
a non-static member function, be deleted or defaulted, be declared with the
`constexpr` or `consteval` specifiers, be declared with the `[[noreturn]]`
attribute, be a coroutine, or accept variadic arguments.
Diagnostics are not yet provided for the following:
- Use of a type as a kernel name that does not satisfy the forward
declarability requirements specified in section 5.2, "Naming of kernels",
of the SYCL 2020 specification.
- Use of a type as a parameter of the attributed function that does not
satisfy the kernel parameter requirements specified in section 4.12.4,
"Rules for parameter passing to kernels", of the SYCL 2020 specification
(each such function parameter constitutes a kernel parameter).
- Use of language features that are not permitted in device functions as
specified in section 5.4, "Language restrictions for device functions",
of the SYCL 2020 specification.
There are several issues noted by various FIXME comments.
- The diagnostic generated for kernel name conflicts needs additional work
to better detail the relevant source locations; such as the location of
each declaration as well as the original source of each kernel name.
- A number of the tests illustrate spurious errors being produced due to
attributes that appertain to function templates being instantiated too
early (during overload resolution as opposed to after an overload is
selected).
Included changes allow the `SYCLKernelEntryPointAttr` attribute to be
marked as invalid if a `sycl_kernel_entry_point` attribute is used incorrectly.
This is intended to prevent trying to emit an offload kernel entry point
without having to mark the associated function as invalid since doing so
would affect overload resolution; which this attribute should not do.
Unfortunately, Clang eagerly instantiates attributes that appertain to
functions with the result that errors might be issued for function
declarations that are never selected by overload resolution. Tests have
been added to demonstrate this. Further work will be needed to address
these issues (for this and other attributes).
Commit: 0acdba83ae5098c5c8f09f53aba4df37d97f3cf0
https://github.com/llvm/llvm-project/commit/0acdba83ae5098c5c8f09f53aba4df37d97f3cf0
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M libc/src/CMakeLists.txt
R libc/src/gpu/CMakeLists.txt
R libc/src/gpu/rpc_host_call.cpp
R libc/src/gpu/rpc_host_call.h
Log Message:
-----------
[libc] Remove leftover 'gpu/' source directory (#122368)
Summary:
This isn't used anymore, I moved the GPU extensions into `offload/`.
Commit: 84087226fa38b212325c651f1bc3caa79491bc80
https://github.com/llvm/llvm-project/commit/84087226fa38b212325c651f1bc3caa79491bc80
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M lld/COFF/Chunks.cpp
M lld/test/COFF/arm64x-loadconfig.s
Log Message:
-----------
[LLD][COFF] Emit base relocation for native CHPE metadata pointer on ARM64X (#121500)
Commit: e8c8543a1c728278bf323d34e451bcf9042d9257
https://github.com/llvm/llvm-project/commit/e8c8543a1c728278bf323d34e451bcf9042d9257
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_allocator_dlsym.h
M compiler-rt/lib/tysan/tysan_interceptors.cpp
Log Message:
-----------
[TySan] Intercept malloc_size on Apple platforms. (#122133)
After https://github.com/llvm/llvm-project/pull/120563 malloc_size also
needs intercepting on Apple platforms, otherwise all type-sanitized
binaries crash on startup with an objc error:
realized class 0x12345 has corrupt data pointer: malloc_size(0x567) = 0
PR: https://github.com/llvm/llvm-project/pull/122133
Commit: d01ae567742c4d83b67483e15eb74c0ecd2e8270
https://github.com/llvm/llvm-project/commit/d01ae567742c4d83b67483e15eb74c0ecd2e8270
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-exegesis.rst
R llvm/test/tools/llvm-exegesis/dry-run-measurement.test
M llvm/tools/llvm-exegesis/lib/BenchmarkResult.h
M llvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
M llvm/tools/llvm-exegesis/lib/Target.cpp
M llvm/tools/llvm-exegesis/llvm-exegesis.cpp
Log Message:
-----------
Revert "[Exegesis] Add the ability to dry-run the measurement phase (… (#122371)
…#121991)"
This reverts commit f8f8598fd886cddfd374fa43eb6d7d37d301b576.
This breaks ARMv7 and s390x buildbot with the following message:
```
llvm-exegesis error: No available targets are compatible with triple "armv8l-unknown-linux-gnueabihf"
FileCheck error: '<stdin>' is empty.
FileCheck command line: /home/tcwg-buildbot/worker/clang-armv7-2stage/stage2/bin/FileCheck /home/tcwg-buildbot/worker/clang-armv7-2stage/llvm/llvm/test/tools/llvm-exegesis/dry-run-measurement.test
```
Commit: f764e71b7017e7264fffc410f5e10ef959e49294
https://github.com/llvm/llvm-project/commit/f764e71b7017e7264fffc410f5e10ef959e49294
Author: Victor Mustya <victor.mustya at intel.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/test/TableGen/target-builtins-prototype-parser.td
Log Message:
-----------
[Clang][TableGen] Add missing __bf16 type to the builtins parser (#120662)
The Clang tablegen built-in function prototype parser has the `__bf16`
type missing. This patch adds the missing type to the parser.
Commit: c492a228e9227e2e44671b0f345fee9de62517bd
https://github.com/llvm/llvm-project/commit/c492a228e9227e2e44671b0f345fee9de62517bd
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M libcxx/include/__algorithm/radix_sort.h
Log Message:
-----------
[libc++] Add missing _LIBCPP_NODEBUG on internal aliases
Commit: 328c3a843f886f3768e536a508e1e3723d834b3e
https://github.com/llvm/llvm-project/commit/328c3a843f886f3768e536a508e1e3723d834b3e
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll
M llvm/test/CodeGen/RISCV/rvv/narrow-shift-extend.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
Log Message:
-----------
[RISCV][VLOPT] Add vmerge to isSupportedInstr (#122340)
Commit: 03eb786f75e36e9e203e0092ec3c6c589fd53c4f
https://github.com/llvm/llvm-project/commit/03eb786f75e36e9e203e0092ec3c6c589fd53c4f
Author: Tom Honermann <tom.honermann at intel.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/test/SemaSYCL/sycl-kernel-entry-point-attr-appertainment.cpp
Log Message:
-----------
[SYCL] Correct misplaced sycl_kernel_entry_point attribute in a namespace declaration of a negative test. (#122375)
Commit 1a73654b3212b623ac21b9deb3aeaadc6906b7e4 added a missing
diagnostic for incorrect placement of an attribute in a namespace
declaration. This change corrects a SYCL test that inadvertently
exercised the `sycl_kernel_entry_point` attribute in the wrong
declaration location.
Commit: 0efb376c20b220cddbbcf57f0c82ae048170ffd9
https://github.com/llvm/llvm-project/commit/0efb376c20b220cddbbcf57f0c82ae048170ffd9
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M libc/test/UnitTest/ExecuteFunctionUnix.cpp
M libc/test/UnitTest/FPExceptMatcher.cpp
M libc/test/UnitTest/LibcDeathTestExecutors.cpp
Log Message:
-----------
[libc][test] remove C++ stdlib includes (#122369)
These make cross compiling the test suite more difficult, as you need
the
sysroot to contain these headers and libraries cross compiled for your
target.
It's straightforward to stick with the corresponding C headers.
Commit: 4f42e165164ba2bfca7b87be2a533ef09e8777e0
https://github.com/llvm/llvm-project/commit/4f42e165164ba2bfca7b87be2a533ef09e8777e0
Author: Thurston Dang <thurston at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/test/CodeGen/AArch64/hwasan-zero-ptr.ll
M llvm/test/Instrumentation/HWAddressSanitizer/zero-ptr.ll
Log Message:
-----------
[hwasan] Omit tag check for null pointers (#122206)
If the pointer to be checked is statically known to be zero, the tag
check will always pass since:
1) the tag is zero
2) shadow memory for address 0 is initialized to 0 and never updated.
We can therefore elide the tag check.
We perform the elision in two places:
1) the HWASan pass
2) when lowering the CHECK_MEMACCESS intrinsic. Conceivably, the HWASan
pass may encounter a "cannot currently statically prove to be null"
pointer (and is therefore unable to omit the intrinsic) that later
optimization passes convert into a statically known-null pointer. As a
last line of defense, we perform elision here too.
This also updates the tests from
https://github.com/llvm/llvm-project/pull/122186
Commit: 7ffb691595a3108f72023ae0051487df25a85fc3
https://github.com/llvm/llvm-project/commit/7ffb691595a3108f72023ae0051487df25a85fc3
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Remove dead ToRemove (NFC).
Commit: 156e6051630d136b48090c0d1cb79a4457564e9d
https://github.com/llvm/llvm-project/commit/156e6051630d136b48090c0d1cb79a4457564e9d
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M lld/MachO/ConcatOutputSection.cpp
Log Message:
-----------
[lld-macho] Fix branch extension thunk estimation logic (#120529)
This patch improves the linker’s ability to estimate stub reachability
in the `TextOutputSection::estimateStubsInRangeVA` function. It does so
by including thunks that have already been placed ahead of the current
call site address when calculating the threshold for direct stub calls.
Before this fix, the estimation process overlooked existing forward
thunks. This could result in some thunks not being inserted where
needed. In rare situations, particularly with large and specially
arranged codebases, this might lead to branch instructions being out of
range, causing linking errors.
Although this patch successfully addresses the problem, it is not
feasible to create a test for this issue. The specific layout and order
of thunk creation required to reproduce the corner case are too complex,
making test creation impractical.
Example error messages the issue could generate:
```
ld64.lld: error: banana.o:(symbol OUTLINED_FUNCTION_24949_3875): relocation BRANCH26 is out of range: 134547892 is not in [-134217728, 134217727]; references objc_autoreleaseReturnValue
ld64.lld: error: main.o:(symbol _main+0xc): relocation BRANCH26 is out of range: 134544132 is not in [-134217728, 134217727]; references objc_release
```
Commit: 3caa68a021c2f795de3df7f6ad7953556e825fab
https://github.com/llvm/llvm-project/commit/3caa68a021c2f795de3df7f6ad7953556e825fab
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M libc/test/UnitTest/ExecuteFunctionUnix.cpp
M libc/test/UnitTest/FPExceptMatcher.cpp
Log Message:
-----------
[libc][test] fix memory leak (#122378)
Looks like the smart pointer I removed was being used to free the underlying
object.
Fixes: #122369
Commit: e6d061ad49ce11193bddfff8a7920b798fb7d214
https://github.com/llvm/llvm-project/commit/e6d061ad49ce11193bddfff8a7920b798fb7d214
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_cursor.py
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[libclang/python] Add python bindings for PrintingPolicy (#120494)
This allows changing the way pretty-printed code is formatted.
Commit: 9426fdd4cbd6812b69c218b865f184cb25342be4
https://github.com/llvm/llvm-project/commit/9426fdd4cbd6812b69c218b865f184cb25342be4
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M libc/test/UnitTest/ExecuteFunctionUnix.cpp
M libc/test/UnitTest/FPExceptMatcher.cpp
Log Message:
-----------
[libc][test] fix memory leak pt.2 (#122384)
These were created with operator new (see `Test::createCallable`), so operator
delete should be used instead of free().
Fixes: #122369
Fixes: #122378
Commit: ba704d59569151f1b8b6552ed22a7b840f5e6256
https://github.com/llvm/llvm-project/commit/ba704d59569151f1b8b6552ed22a7b840f5e6256
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-gsym-callsite-info-dsym.yaml
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-gsym-callsite-info-exe.yaml
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-gsym-callsite-info-obj.test
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-gsym-merged-callsites-dsym.yaml
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-merged-funcs-dwarf.yaml
Log Message:
-----------
[llvm-gsymutil] Address merged-funcs test non-determinism (#122308)
When creating a gSYM, `llvm-gsymutil` operates by default in
multi-threaded mode. If merged functions are present, determinism cannot
be guaranteed if parallel processing is enabled.
So, for our merged functions tests, we disable multi-threading during
gSYM creation.
Commit: c1c50c7a3ef9ced4a9b01e0afd83b83d7060fff9
https://github.com/llvm/llvm-project/commit/c1c50c7a3ef9ced4a9b01e0afd83b83d7060fff9
Author: Thor Preimesberger <111035711+cheezeburglar at users.noreply.github.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
Log Message:
-----------
[SDPatternMatch] Add matchers m_ExtractSubvector and m_InsertSubvector (#120212)
Fixes #118846
Commit: 504f6ce0c25b5cd721622cd444e9c428f400fd73
https://github.com/llvm/llvm-project/commit/504f6ce0c25b5cd721622cd444e9c428f400fd73
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang-tools-extra/clang-tidy/readability/UseStdMinMaxCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] clean readability-use-std-min-max (#122288)
1. add `static` for internal linkage functions
2. remove `clang` prefix for `QualType`
Commit: a6aa9365f75c6f28c3d281c662dcdb6fb5222601
https://github.com/llvm/llvm-project/commit/a6aa9365f75c6f28c3d281c662dcdb6fb5222601
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/include/llvm/CodeGen/AsmPrinter.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
Log Message:
-----------
[NFC][AsmPrinter] Pass MJTI by const reference instead of const pointer (#122365)
The caller `AsmPrinter::emitJumpTableInfo` checks [1] `MJTI` is not a
null pointer before calling `emitJumpTableEntry` or
`emitJumpTableSizesSection`.
This patch updates callee function's signature to accept const
reference, this way it's explicit `MJTI` won't be nullptr inside the
callee.
[1]
https://github.com/llvm/llvm-project/blob/9d5299eb61a64cd4df5fefa0299b0cf8d917978f/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp#L2857
Commit: 5d88a84ecddab3471693e44b57a1c1f21ce14f3f
https://github.com/llvm/llvm-project/commit/5d88a84ecddab3471693e44b57a1c1f21ce14f3f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZc.td
Log Message:
-----------
[RISCV] Simplify some RISCVInstrInfoC classes by removing arguments that never change. NFC
Commit: 24bf0e4eb63fe5eebf86f937ff41b66be78cf958
https://github.com/llvm/llvm-project/commit/24bf0e4eb63fe5eebf86f937ff41b66be78cf958
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M libcxx/include/__config
M libcxx/test/tools/clang_tidy_checks/libcpp_module.cpp
Log Message:
-----------
[libc++] Disable _LIBCPP_NODEBUG temporarily (#122393)
This should be reverted once the crash reported in #118710 has been
analyzed.
Commit: 04e54cc19f13af26e453c06b6a9e2bc3187e52c2
https://github.com/llvm/llvm-project/commit/04e54cc19f13af26e453c06b6a9e2bc3187e52c2
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
Log Message:
-----------
[RISCV][VLOPT] Add Vector Single-Width Averaging Add and Subtract to isSupportedInstr (#122351)
Commit: d0373dbe7c8ca8e7cd9c84e1d93c43c81a085f0c
https://github.com/llvm/llvm-project/commit/d0373dbe7c8ca8e7cd9c84e1d93c43c81a085f0c
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
Log Message:
-----------
[RISCV][VLOPT] Add vadc to isSupportedInstr (#122345)
Commit: 6d72bf47606c2a288b911d682fd96129c9c1466d
https://github.com/llvm/llvm-project/commit/6d72bf47606c2a288b911d682fd96129c9c1466d
Author: Lang Hames <lhames at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/JITLinkReentryTrampolines.h
M llvm/include/llvm/ExecutionEngine/Orc/LazyReexports.h
M llvm/include/llvm/ExecutionEngine/Orc/TaskDispatch.h
M llvm/lib/ExecutionEngine/Orc/JITLinkReentryTrampolines.cpp
M llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp
M llvm/lib/ExecutionEngine/Orc/TaskDispatch.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.h
Log Message:
-----------
[ORC][llvm-jitlink] Add SimpleLazyReexportsSpeculator, use in llvm-jitlink.
Also adds a new IdleTask type and updates DynamicThreadPoolTaskDispatcher to
schedule IdleTasks whenever the total number of threads running is less than
the maximum number of MaterializationThreads.
A SimpleLazyReexportsSpeculator instance maintains a list of speculation
suggestions ((JITDylib, Function) pairs) and registered lazy reexports. When
speculation opportunities are available (having been added via
addSpeculationSuggestions or when lazy reexports were created) it schedules
an IdleTask that triggers the next speculative lookup as soon as resources
are available. Speculation suggestions are processed first, followed by
lookups for lazy reexport bodies. A callback can be registered at object
construction time to record lazy reexport executions as they happen, and these
executions can be fed back into the speculator as suggestions on subsequent
executions.
The llvm-jitlink tool is updated to support speculation when lazy linking is
used via three new arguments:
-speculate=[none|simple] : When the 'simple' value is specified a
SimpleLazyReexportsSpeculator instances is used
for speculation.
-speculate-order <path> : Specifies a path to a CSV containing
(jit dylib name, function name) triples to use
as speculative suggestions in the current run.
-record-lazy-execs <path> : Specifies a path in which to record lazy function
executions as a CSV of (jit dylib name, function
name) pairs, suitable for use with
-speculate-order.
The same path can be passed to -speculate-order and -record-lazy-execs, in
which case the file will be overwritten at the end of the execution.
No testcase yet: Speculative linking is difficult to test (since by definition
execution behavior should be unaffected by speculation) and this is an new
prototype of the concept*. Tests will be added in the future once the interface
and behavior settle down.
* An earlier implementation of the speculation concept can be found in
llvm/include/llvm/ExecutionEngine/Orc/Speculation.h. Both systems have the
same goal (hiding compilation latency) but different mechanisms. This patch
relies entirely on information available in the controller, where the old
system could receive additional information from the JIT'd runtime via
callbacks. I aim to combine the two in the future, but want to gain more
practical experience with speculation first.
Commit: 760f550de25792db83cd39c88ef57ab6d80a41a0
https://github.com/llvm/llvm-project/commit/760f550de25792db83cd39c88ef57ab6d80a41a0
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP] NFC. Replace MainOp and AltOp in TreeEntry with InstructionsState. (#120198)
Add TreeEntry::hasState.
Add assert for getTreeEntry.
Remove the OpValue parameter from the canReuseExtract function.
Remove the Opcode parameter from the ComputeMaxBitWidth lambda function.
Commit: 36b423e0f85cb35eb8b211662a0fab70d476f501
https://github.com/llvm/llvm-project/commit/36b423e0f85cb35eb8b211662a0fab70d476f501
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP] NFC. Refactor getSameOpcode and reduce for loop iterations. (#122241)
Replace Cnt and AltIndex with MainOp and AltOp.
Reduce the number of iterations in the for loop.
Commit: 57447d3ddfb0b1c44618e97081906d19a387ff00
https://github.com/llvm/llvm-project/commit/57447d3ddfb0b1c44618e97081906d19a387ff00
Author: Lang Hames <lhames at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/JITLinkReentryTrampolines.h
M llvm/include/llvm/ExecutionEngine/Orc/LazyReexports.h
M llvm/include/llvm/ExecutionEngine/Orc/TaskDispatch.h
M llvm/lib/ExecutionEngine/Orc/JITLinkReentryTrampolines.cpp
M llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp
M llvm/lib/ExecutionEngine/Orc/TaskDispatch.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.h
Log Message:
-----------
Revert "[ORC][llvm-jitlink] Add SimpleLazyReexportsSpeculator, use in llvm-jitlink."
This reverts commit 6d72bf47606c2a288b911d682fd96129c9c1466d while I fix bot failures.
Commit: 2d10b7b750f97b42055d5b9b08a88c18ff811cd2
https://github.com/llvm/llvm-project/commit/2d10b7b750f97b42055d5b9b08a88c18ff811cd2
Author: Lang Hames <lhames at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/JITLinkReentryTrampolines.h
M llvm/include/llvm/ExecutionEngine/Orc/LazyReexports.h
M llvm/include/llvm/ExecutionEngine/Orc/TaskDispatch.h
M llvm/lib/ExecutionEngine/Orc/JITLinkReentryTrampolines.cpp
M llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp
M llvm/lib/ExecutionEngine/Orc/TaskDispatch.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.h
Log Message:
-----------
Reapply "[ORC][llvm-jitlink] Add SimpleLazyReexportsSpeculator..." with fixes.
This reapplies 6d72bf47606, which was reverted in 57447d3ddf to investigate
build failures, e.g. https://lab.llvm.org/buildbot/#/builders/3/builds/10114.
The original patch contained an invalid unused friend declaration of
std::make_shared. This has been removed.
Commit: 9190e1c0ef628b9cc432b507390dc6eec416f6ab
https://github.com/llvm/llvm-project/commit/9190e1c0ef628b9cc432b507390dc6eec416f6ab
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
Log Message:
-----------
[mlir][linalg] Handle reassociationIndices correctly for 0D tensor (#121683)
This PR fixes a bug where a value is assigned to a 0-sized
reassociationIndices, preventing a crash. Fixes #116043.
Commit: b1893caeb6b6079a66ba146e73d68d6255d255ce
https://github.com/llvm/llvm-project/commit/b1893caeb6b6079a66ba146e73d68d6255d255ce
Author: Lakshmi-Surekha <Lakshmi.Kovvuri at ibm.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M lldb/include/lldb/Host/HostInfo.h
Log Message:
-----------
[lldb][AIX] Added support for AIX in HostInfo section (#122301)
This PR is in reference to porting LLDB on AIX.
Link to discussions on llvm discourse and github:
1. https://discourse.llvm.org/t/port-lldb-to-ibm-aix/80640
https://github.com/llvm/llvm-project/issues/101657
2. The complete changes for porting are present in this draft PR:
https://github.com/llvm/llvm-project/pull/102601
Added support for AIX in HostInfo section
Review Request : @DavidSpickett @labath @DhruvSrivastavaX
Commit: b11fe33aea82444387422e550e10f1fba5bcfaa3
https://github.com/llvm/llvm-project/commit/b11fe33aea82444387422e550e10f1fba5bcfaa3
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
Log Message:
-----------
[RISCV] Correct the cost model for the i1 reduce.add and reduce.or. (#122349)
reduce.add uses the same sequence as reduce.xor. reduce.or should use
vmor not vmxor.
Commit: 41e4018f9c858af15c4fe0ea0d1de8ff4602071e
https://github.com/llvm/llvm-project/commit/41e4018f9c858af15c4fe0ea0d1de8ff4602071e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
Log Message:
-----------
[RISCV][VLOPT] Simplify code by removing extra temporary variables. NFC (#122333)
Just do the conditional operator in the return statement.
Commit: 369c61744a435c52e3564398d9972fa556db022b
https://github.com/llvm/llvm-project/commit/369c61744a435c52e3564398d9972fa556db022b
Author: Shao-Ce SUN <sunshaoce at outlook.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
A llvm/test/Analysis/CostModel/RISCV/reduce-and-i1.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-and.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-max.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-min.ll
Log Message:
-----------
[RISCV] Fix the cost of `llvm.vector.reduce.and` (#119160)
I added some CodeGen test cases related to reduce. To maintain
consistency, I also added cases for instructions like
`vector.reduce.or`.
For cases where `v1i1` type generates `VFIRST`, please refer to:
https://reviews.llvm.org/D139512.
Commit: 5454ac28b302240ccfd164dfd1e2bce526aee7ca
https://github.com/llvm/llvm-project/commit/5454ac28b302240ccfd164dfd1e2bce526aee7ca
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
Revert "[SLP] NFC. Replace MainOp and AltOp in TreeEntry with InstructionsState. (#120198)"
This reverts commit 760f550de25792db83cd39c88ef57ab6d80a41a0.
Commit: f926bcf9068c808b643a56322b7ef6910eb36599
https://github.com/llvm/llvm-project/commit/f926bcf9068c808b643a56322b7ef6910eb36599
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/include/clang/Format/Format.h
Log Message:
-----------
[clang-format][doc] Fix the description of BreakBinaryOperations
Commit: 2ea34cdf2ba86cd129633f2a01fb695c79c0fe11
https://github.com/llvm/llvm-project/commit/2ea34cdf2ba86cd129633f2a01fb695c79c0fe11
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/unittests/Format/FormatTestSelective.cpp
Log Message:
-----------
[clang-format] Stop fixing indentation on namespace closing brace (#122234)
Fixes #119790.
Commit: 211bcf67aadb1175af382f55403ae759177281c7
https://github.com/llvm/llvm-project/commit/211bcf67aadb1175af382f55403ae759177281c7
Author: Chinmay Deshpande <chdeshpa at amd.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/test/CodeGen/AMDGPU/prevent-fmul-hoist-ir.ll
Log Message:
-----------
[AMDGPU] Implement IR variant of isFMAFasterThanFMulAndFAdd (#121465)
Commit: 9c2de994a18b8eb50634e620af762ed28ec5dcc2
https://github.com/llvm/llvm-project/commit/9c2de994a18b8eb50634e620af762ed28ec5dcc2
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
M llvm/include/llvm/Transforms/Instrumentation/BoundsChecking.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp
Log Message:
-----------
[nfc][BoundsChecking] Refactor BoundsCheckingOptions (#122346)
Remove ReportingMode and ReportingOpts.
Commit: 4c8fdc29549f9c7c3c710e3ada2cb00a70af609e
https://github.com/llvm/llvm-project/commit/4c8fdc29549f9c7c3c710e3ada2cb00a70af609e
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
M llvm/include/llvm/Transforms/Instrumentation/BoundsChecking.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp
Log Message:
-----------
[nfc][BoundsChecking] Rename BoundsCheckingOptions into Options (#122359)
Commit: 73dd730fb9403ca648a46b489bf04e27b2a93840
https://github.com/llvm/llvm-project/commit/73dd730fb9403ca648a46b489bf04e27b2a93840
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/struct_iovec.h
M libc/include/CMakeLists.txt
A libc/include/sys/uio.h.def
A libc/include/sys/uio.yaml
M libc/src/sys/CMakeLists.txt
A libc/src/sys/uio/CMakeLists.txt
A libc/src/sys/uio/linux/CMakeLists.txt
A libc/src/sys/uio/linux/writev.cpp
A libc/src/sys/uio/writev.h
M libc/test/src/sys/CMakeLists.txt
A libc/test/src/sys/uio/CMakeLists.txt
A libc/test/src/sys/uio/writev_test.cpp
Log Message:
-----------
[libc] implement sys/uio/writev (#122233)
implement sys/uio/writev according to POSIX standard. This vectorized IO
API is needed by many logging libraries to achieve atomic logging
multiple strings.
Commit: a4394d9d42fb6e60e3702588fb56bec243038c49
https://github.com/llvm/llvm-project/commit/a4394d9d42fb6e60e3702588fb56bec243038c49
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/test/CodeGen/allow-ubsan-check.c
Log Message:
-----------
[NFC][ubsan] Rename prefixes in test
Looks like update_cc_test_checks is being confused if
it creates vars with the name matching prefix.
Issue triggered with #122415
Commit: 48d0eb5181065a3d086de2e30f5c619fe407e4ce
https://github.com/llvm/llvm-project/commit/48d0eb5181065a3d086de2e30f5c619fe407e4ce
Author: Fangrui Song <i at maskray.me>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/include/clang/CodeGen/BackendUtil.h
M clang/lib/CodeGen/BackendConsumer.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
Log Message:
-----------
[CodeGen] Simplify EmitAssemblyHelper and emitBackendOutput
Prepare for -ftime-report change (#122225).
Commit: 186bd8e4cd8d239be67172448c53e92be396359a
https://github.com/llvm/llvm-project/commit/186bd8e4cd8d239be67172448c53e92be396359a
Author: Fangrui Song <i at maskray.me>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
Log Message:
-----------
[CodeGen] Restore CodeGenerationTime
Fixes 48d0eb5181065a3d086de2e30f5c619fe407e4ce
Commit: 76fac9c01736b1254e42427f8e0910c0f1d01fba
https://github.com/llvm/llvm-project/commit/76fac9c01736b1254e42427f8e0910c0f1d01fba
Author: Thurston Dang <thurston at google.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Basic/Sanitizers.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Driver/SanitizerArgs.h
M clang/lib/Basic/Sanitizers.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/test/Driver/fsanitize.c
Log Message:
-----------
[sanitizer] Parse weighted sanitizer args and -fsanitize-skip-hot-cutoff (#121619)
This adds a function to parse weighted sanitizer flags (e.g.,
`-fsanitize-blah=undefined=0.5,null=0.3`) and adds the plumbing to apply
that to a new flag, `-fsanitize-skip-hot-cutoff`.
`-fsanitize-skip-hot-cutoff` currently has no effect; future work will
use it to generalize ubsan-guard-checks (originally introduced in
5f9ed2ff8364ff3e4fac410472f421299dafa793).
---------
Co-authored-by: Vitaly Buka <vitalybuka at google.com>
Commit: a4472c7dac7dc69ef6e76ad7f92a1865f199e046
https://github.com/llvm/llvm-project/commit/a4472c7dac7dc69ef6e76ad7f92a1865f199e046
Author: ssijaric-nv <ssijaric at nvidia.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/trampoline.ll
Log Message:
-----------
[AArch64] Fix the size passed to __trampoline_setup (#118234)
The trampoline size is 36 bytes on AArch64. The runtime function
__trampoline_setup aborts as it expects the trampoline size of at least 36
bytes, and the size passed is 20 bytes. Fix the inconsistency in
AArch64TargetLowering::LowerINIT_TRAMPOLINE.
Commit: 6829f30883fa7e71e3b7af022916003a82f0216d
https://github.com/llvm/llvm-project/commit/6829f30883fa7e71e3b7af022916003a82f0216d
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrFormatsC.td
M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
Log Message:
-----------
[RISCV] Add a default common assignment of Inst{6-2} to the RVInst16CI base class. NFC (#122377)
Many instructions assign all or a subset of Inst{6-2} to Imm{4-0}. Make
this the default. Subsets of Inst{6-2} can be overridden as needed by
derived classes/records which we already do with Inst{12} in a few
places.
Commit: a531800344dc54e9c197a13b22e013f919f3f5e1
https://github.com/llvm/llvm-project/commit/a531800344dc54e9c197a13b22e013f919f3f5e1
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/include/llvm/CodeGen/Spiller.h
M llvm/lib/CodeGen/InlineSpiller.cpp
M llvm/lib/CodeGen/RegAllocBasic.cpp
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/lib/CodeGen/RegAllocPBQP.cpp
Log Message:
-----------
Spiller: Detach legacy pass and supply analyses instead (#119181)
Makes Inline Spiller amenable to the new PM.
Commit: a8e1135baa9074f7c088c8e1999561f88699b56e
https://github.com/llvm/llvm-project/commit/a8e1135baa9074f7c088c8e1999561f88699b56e
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
M llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll
M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.mir
M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll
M llvm/test/CodeGen/WebAssembly/eh-option-errors.ll
M llvm/test/CodeGen/WebAssembly/exception-legacy.ll
M llvm/test/CodeGen/WebAssembly/exception-legacy.mir
M llvm/test/CodeGen/WebAssembly/exception.ll
Log Message:
-----------
[WebAssembly] Add -wasm-use-legacy-eh option (#122158)
This replaces the existing `-wasm-enable-exnref` with
`-wasm-use-legacy-eh` option, in an effort to make the new standardized
exnref proposal the 'default' state and the legacy proposal needs to be
separately enabled an option. But given that most users haven't switched
to the new proposal and major web browsers haven't turned it on by
default, this `-wasm-use-legacy-eh` is turned on by default, so nothing
will change for now for the functionality perspective.
This also removes the restriction that `-wasm-enable-exnref` be only
used with `-wasm-enable-eh` because this option is enabled by default.
This option does not have any effect when `-wasm-enable-eh` is not used.
Commit: 4c0a0f72418b21161b5c1fb9225462bd039121e3
https://github.com/llvm/llvm-project/commit/4c0a0f72418b21161b5c1fb9225462bd039121e3
Author: Tyler Lanphear <tylanphear at gmail.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/include/llvm/SandboxIR/Context.h
M llvm/lib/SandboxIR/Context.cpp
Log Message:
-----------
[SandboxVectorizer][NFCI] Fix use of possibly-uninitialized scalar. (#122201)
The `EraseCallbackID` field is not always initialized in the ctor for
SeedCollector; if not, it will be used uninitialized by its dtor. This
could potentially lead to the erasure of a random callback, leading to a
bug.
Fixed by making `CallbackID` an opaque type, which is always
default-initialized to an invalid ID.
Commit: 01a7d4e26b9bac27e282b113209f53c4c1d290b2
https://github.com/llvm/llvm-project/commit/01a7d4e26b9bac27e282b113209f53c4c1d290b2
Author: Jakub Chlanda <jakub at codeplay.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/test/CodeGen/AMDGPU/bitop3.ll
Log Message:
-----------
[AMDGPU] Allow selection of BITOP3 for some 2 opcodes and B32 cases (#122267)
This came up in downstream static analysis - as a dead code.
Admittedly, it depends on what the intention was when checking for [`if
(NumOpcodes == 2 &&
IsB32)`](https://github.com/llvm/llvm-project/blob/main/llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp#L3792C3-L3792C32)
and I took a guess that for certain cases the selection should take
place.
If that's incorrect, that whole if statement can be removed, as it is
after a check for: [`if (NumOpcodes <
4)`](https://github.com/llvm/llvm-project/blob/main/llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp#L3788)
Commit: 089555095b91d693ab68d039cb5fda4b7b8e45bc
https://github.com/llvm/llvm-project/commit/089555095b91d693ab68d039cb5fda4b7b8e45bc
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/include/llvm/CodeGen/Spiller.h
M llvm/lib/CodeGen/InlineSpiller.cpp
M llvm/lib/CodeGen/RegAllocBasic.cpp
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/lib/CodeGen/RegAllocPBQP.cpp
Log Message:
-----------
Revert "Spiller: Detach legacy pass and supply analyses instead (#119… (#122426)
…181)"
This reverts commit a531800344dc54e9c197a13b22e013f919f3f5e1.
Commit: 99d2ff54abb89b0aabe085c87c8064a7ab0f2872
https://github.com/llvm/llvm-project/commit/99d2ff54abb89b0aabe085c87c8064a7ab0f2872
Author: Lang Hames <lhames at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M compiler-rt/test/orc/TestCases/Darwin/arm64/objc-imageinfo.S
M compiler-rt/test/orc/TestCases/Darwin/x86-64/objc-imageinfo.S
Log Message:
-----------
[ORC-RT] Use llvm-jitlink -num-threads=0 for objc-imageinfo.S tests.
These testcases depend on debugging output, which isn't stable under concurrent
linking.
Commit: e8cc4d24bce8e12023c460ff7f11495cb42d5315
https://github.com/llvm/llvm-project/commit/e8cc4d24bce8e12023c460ff7f11495cb42d5315
Author: Lang Hames <lhames at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
Log Message:
-----------
[ORC][MachO] Fix deferred action handling during MachOPlatform bootstrap.
DeferredAAs should only capture bootstrap actions, but after 30b73ed7bd it was
capturing all actions, including those from other plugins. This is problematic
as other plugins may introduce actions that need to run before the platform
actions (e.g. on arm64e we need pointer signing to run before we access any
global pointers in the graph).
Note that this effectively undoes 30b73ed7bd, which was a buggy attempt to
synchronize writes to the DeferredAAs vector. This patch fixes that issue the
obvious way by locking the bootstrap mutex while accessing the DeferredAAs
vector.
No testcase yet: So far I've only seen this fail during bootstrap of arm64e
JIT'd programs.
Commit: dd331082e706d833ec3cc897176cd2d3a622ce76
https://github.com/llvm/llvm-project/commit/dd331082e706d833ec3cc897176cd2d3a622ce76
Author: Arseniy Zaostrovnykh <necto.ne at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
M clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
M clang/lib/StaticAnalyzer/Core/RangedConstraintManager.cpp
M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
M clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
M clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
Log Message:
-----------
[analyzer][NFC] Factor out SymbolManager::get<*> (#121781)
Replace the family of `SymbolManager::get*Symbol(...)` member functions
with a single generic `SymbolManager::get<*>` member function.
Commit: f3d6cdc5aebafac3961d4fccbd2ca0e302c6082c
https://github.com/llvm/llvm-project/commit/f3d6cdc5aebafac3961d4fccbd2ca0e302c6082c
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP] NFC. Replace MainOp and AltOp in TreeEntry with InstructionsState. (#120198)
Add TreeEntry::hasState.
Add assert for getTreeEntry.
Remove the OpValue parameter from the canReuseExtract function.
Remove the Opcode parameter from the ComputeMaxBitWidth lambda function.
Commit: 5e92e8ca98dba21c9d8131e611f7158fe9ab3968
https://github.com/llvm/llvm-project/commit/5e92e8ca98dba21c9d8131e611f7158fe9ab3968
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/lib/Headers/intrin.h
Log Message:
-----------
[X86] Fix the implementation of __readcr[4,8]/__writecr[4,8] to work in 64-bit mode (#122238)
According to MSVC, __readcr4/__writecr4 return/use `unsigned __int64`,
and are supported on both x86 and x64. While __readcr8/__writecr8 are
only supported on x64. So we use __INTPTR_TYPE__ and __int64
respectively.
Following:
https://github.com/llvm/llvm-project/commit/3cec2a17de744900401c83aedb442e2acc1f23f8
Ref.:
https://learn.microsoft.com/en-us/cpp/intrinsics/readcr3?view=msvc-170
https://learn.microsoft.com/en-us/cpp/intrinsics/readcr8?view=msvc-170
Commit: e0f14e11c7d1a5e82297b1dc9590d79f84c15163
https://github.com/llvm/llvm-project/commit/e0f14e11c7d1a5e82297b1dc9590d79f84c15163
Author: Mel Chen <mel.chen at sifive.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLPVectorizer] Refine the scope of RdxOpcode in HorizontalReduction::createOp (NFC) (#122239)
This patch is one part of unifying IAnyOf and FAnyOf reduction. #118393
The related patch is #118777.
Commit: eeac0ffaf46cf9f9b0f680b9940cc4b68a0286d8
https://github.com/llvm/llvm-project/commit/eeac0ffaf46cf9f9b0f680b9940cc4b68a0286d8
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/CodeGen/MachineLICM.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null.ll
M llvm/test/CodeGen/AMDGPU/exec-mask-opt-cannot-create-empty-or-backward-segment.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i32_system.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_system.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_system_noprivate.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/global-load-saddr-to-vaddr.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i32_system.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i64_system.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/insert-delay-alu-bug.ll
M llvm/test/CodeGen/AMDGPU/licm-regpressure.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/memcpy-crash-issue63986.ll
M llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.ll
M llvm/test/CodeGen/AMDGPU/optimize-negated-cond.ll
M llvm/test/CodeGen/AMDGPU/sdiv64.ll
M llvm/test/CodeGen/AMDGPU/srem64.ll
M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
M llvm/test/CodeGen/AMDGPU/udiv64.ll
M llvm/test/CodeGen/AMDGPU/undefined-subreg-liverange.ll
M llvm/test/CodeGen/AMDGPU/urem64.ll
M llvm/test/CodeGen/AMDGPU/vgpr-descriptor-waterfall-loop-idom-update.ll
M llvm/test/CodeGen/LoongArch/jr-without-ra.ll
M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
M llvm/test/CodeGen/Thumb2/mve-blockplacement.ll
M llvm/test/CodeGen/Thumb2/mve-gather-increment.ll
M llvm/test/CodeGen/Thumb2/mve-gather-scatter-optimisation.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/flat_atomic.ll
Log Message:
-----------
Revert "[MachineLICM] Use `RegisterClassInfo::getRegPressureSetLimit` (#119826)"
This reverts commit b4e17d4a314ed87ff6b40b4b05397d4b25b6636a.
This causes a large compile-time regression.
Commit: 75a4563fc164e268d2a7af5735d5e84ceee865e7
https://github.com/llvm/llvm-project/commit/75a4563fc164e268d2a7af5735d5e84ceee865e7
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/Maintainers.md
Log Message:
-----------
[LLVM] Update windows codegen maintainer (#119576)
I think that nowadays the go-to contact for Windows codegen is rnk.
Commit: 4adeb6cf556df10da668916b22eb39d3f1313e8a
https://github.com/llvm/llvm-project/commit/4adeb6cf556df10da668916b22eb39d3f1313e8a
Author: Lukas Sommer <lukas.sommer at codeplay.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
M mlir/test/Conversion/SPIRVToLLVM/non-uniform-ops-to-llvm.mlir
Log Message:
-----------
[mlir][spirv] Add convergent attribute to builtin (#122131)
Add the `convergent` attribute to builtin functions and builtin function
calls when lowering SPIR-V non-uniform group functions to LLVM dialect.
---------
Signed-off-by: Lukas Sommer <lukas.sommer at codeplay.com>
Commit: 05dfbc146d87866f0ef22dc88f729b5b9fdfe1a0
https://github.com/llvm/llvm-project/commit/05dfbc146d87866f0ef22dc88f729b5b9fdfe1a0
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
Log Message:
-----------
[lldb] Regularize DWARFDIE::Get{TypeLookup,Decl}Context names (#122273)
The functions call GetName for everything except variables, where they
call GetPubname instead. The difference is that the latter prefers to
return the linkage name, if it is available.
This doesn't seem particularly useful given that the linkage name
already kind of contains the context of the variable, and I doubt that
anything depends on it as these functions are currently called on type
and subprogram DIEs -- not variables.
This makes it easier to simplify/deduplicate these functions later.
Commit: 6504546abcd38159256c3030286b1c02b401c4f8
https://github.com/llvm/llvm-project/commit/6504546abcd38159256c3030286b1c02b401c4f8
Author: maflcko <6399679+maflcko at users.noreply.github.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-consteval.cpp
Log Message:
-----------
[clang-tidy][use-internal-linkage] fix false positive for consteval function (#122141)
Fixes https://github.com/llvm/llvm-project/issues/122096
---------
Co-authored-by: MarcoFalke <*~=`'#}+{/-|&$^_ at 721217.xyz>
Commit: 86b1b0671cafd462c0aa681e2d320ce597300f69
https://github.com/llvm/llvm-project/commit/86b1b0671cafd462c0aa681e2d320ce597300f69
Author: Guy David <49722543+guy-david at users.noreply.github.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/CodeGen/MachineVerifier.cpp
A llvm/test/MachineVerifier/stack-protector-offset.mir
Log Message:
-----------
MachineVerifier: Check stack protector is top-most in frame (#121481)
Somewhat paranoid, but mitigates potential bugs in the future that might
place it elsewhere and render the mechanism useless.
Commit: 66a88f62cd56e55b5fa0ddb1bdffa549f7565f8f
https://github.com/llvm/llvm-project/commit/66a88f62cd56e55b5fa0ddb1bdffa549f7565f8f
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M lldb/include/lldb/Symbol/Function.h
M lldb/source/API/SBBlock.cpp
M lldb/source/API/SBFunction.cpp
M lldb/source/Breakpoint/BreakpointResolver.cpp
M lldb/source/Breakpoint/BreakpointResolverName.cpp
M lldb/source/Core/SearchFilter.cpp
M lldb/source/Expression/DWARFExpressionList.cpp
M lldb/source/Expression/IRExecutionUnit.cpp
M lldb/source/Plugins/Architecture/Mips/ArchitectureMips.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Symbol/Block.cpp
M lldb/source/Symbol/Function.cpp
M lldb/source/Symbol/SymbolContext.cpp
M lldb/source/Symbol/Variable.cpp
M lldb/source/Target/StackFrame.cpp
M lldb/source/Target/ThreadPlanStepInRange.cpp
M lldb/source/ValueObject/ValueObjectVariable.cpp
Log Message:
-----------
[lldb] Add Function::GetAddress and redirect some uses (#115836)
Many calls to Function::GetAddressRange() were not interested in the
range itself. Instead they wanted to find the address of the function
(its entry point) or the base address for relocation of function-scoped
entities (technically, the two don't need to be the same, but there's
isn't good reason for them not to be). This PR creates a separate
function for retrieving this, and changes the existing
(non-controversial) uses to call that instead.
Commit: fd922c4b4f6bcb7043228b003ddf956131c6b4ea
https://github.com/llvm/llvm-project/commit/fd922c4b4f6bcb7043228b003ddf956131c6b4ea
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
Log Message:
-----------
[CodeGen] Add const to getAddrModeArguments argument. NFC. (#122335)
Commit: 46ca6dfb5f0783d68cd738501a26a1a9455ff74e
https://github.com/llvm/llvm-project/commit/46ca6dfb5f0783d68cd738501a26a1a9455ff74e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
Log Message:
-----------
AMDGPU: Add disjoint to or produced from lowering vector ops (#122424)
Commit: 98e5962b7c9fee60b81164025dc17ab31f49f5b7
https://github.com/llvm/llvm-project/commit/98e5962b7c9fee60b81164025dc17ab31f49f5b7
Author: LiqinWeng <liqin.weng at spacemit.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/RISCV/fp-min-max-abs.ll
M llvm/test/Analysis/CostModel/RISCV/fp-sqrt-pow.ll
Log Message:
-----------
[RISCV][CostModel] Add cost for fabs/fsqrt of type bf16/f16 (#118608)
Commit: 66e41a1a20f2190a800669028a0e80bd86e735ce
https://github.com/llvm/llvm-project/commit/66e41a1a20f2190a800669028a0e80bd86e735ce
Author: Guray Ozen <guray.ozen at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMDialect.h
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
A mlir/test/Dialect/LLVMIR/nvvm-test-range.mlir
Log Message:
-----------
[MLIR][NVVM] Declare InferIntRangeInterface for RangeableRegisterOp (#122263)
Commit: eb63cd62a4a1907dbd58f12660efd8244e7d81e9
https://github.com/llvm/llvm-project/commit/eb63cd62a4a1907dbd58f12660efd8244e7d81e9
Author: Momchil Velikov <momchil.velikov at arm.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/GVN.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/test/Other/new-pm-print-pipeline.ll
Log Message:
-----------
[GVN] MemorySSA for GVN: add optional `AllowMemorySSA`
Preparatory work to migrate from MemoryDependenceAnalysis
towards MemorySSA in GVN.
Co-authored-by: Antonio Frighetto <me at antoniofrighetto.com>
Commit: 4c853be6673fd95b4b900a6c0e1804bf33a0629c
https://github.com/llvm/llvm-project/commit/4c853be6673fd95b4b900a6c0e1804bf33a0629c
Author: Usha Gupta <usha.gupta at arm.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/arm64-popcnt.ll
M llvm/test/CodeGen/AArch64/dp1.ll
M llvm/test/CodeGen/AArch64/parity.ll
M llvm/test/CodeGen/AArch64/popcount.ll
Log Message:
-----------
[AArch64] Replace uaddlv with addv for popcount operation (#121934)
Replace `uaddlv` with `addv` for popcount operation as it is simpler
operation.
On certain platforms like Cortex-A510, `addv` has a latency of 3 cycles
whereas `uaddlv` has a latency of 4 cycles
GCC generates `addv` as well:
https://godbolt.org/z/MnYG9jcEo
Commit: 4e32271e8b304eb018c69f74c16edd1668fcdaf3
https://github.com/llvm/llvm-project/commit/4e32271e8b304eb018c69f74c16edd1668fcdaf3
Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/include/clang/Sema/SemaARM.h
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/test/Sema/aarch64-sme-func-attrs-without-target-feature.cpp
Log Message:
-----------
[AArch64][SME] Add diagnostics for SME attributes on lambda functions (#121777)
CheckFunctionDeclaration emits diagnostics if any SME attributes are used
by a function definition without the required +sme or +sme2 target features.
This patch moves these diagnostics to a new function in SemaARM and
also adds a call to this from ActOnStartOfLambdaDefinition.
Commit: 854cbbf4a8e7e98b7461eae2c2a37cfa767f791c
https://github.com/llvm/llvm-project/commit/854cbbf4a8e7e98b7461eae2c2a37cfa767f791c
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
M clang/test/Analysis/analyzer-enabled-checkers.c
M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
Log Message:
-----------
[clang][analyzer] Split NullDereferenceChecker into modeling and reporting (#122139)
The checker currently reports beneath the null dereference dereferences
of undefined value and of label addresses. If we want to add more kinds
of invalid dereferences (or split the existing functionality) it is more
useful to make it separate checkers.
To make this possible the existing checker is split into a
DereferenceModeling part and a NullDereference checker that actually
only switches on the check of null dereference. This is similar
architecture as in MallocChecker and CStringChecker.
The change is almost NFC but a new (modeling) checker is added. If the
NullDereference checker is turned off the found invalid dereferences
will still stop the analysis without emitted warning (this is different
compared to the old behavior).
Commit: 1ef258097293fb008bdf3a8955feae0f08fdd9ae
https://github.com/llvm/llvm-project/commit/1ef258097293fb008bdf3a8955feae0f08fdd9ae
Author: Guray Ozen <gozen at nvidia.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M mlir/lib/Dialect/LLVMIR/CMakeLists.txt
Log Message:
-----------
[MLIR][NVVM] Add missing cmake dependency
NVVMdialect uses InferIntRangeInterface, but its dependence was missing in cmake. This PR adds that.
Commit: 3def49cb64ec1298290724081bd37dbdeb2ea5f8
https://github.com/llvm/llvm-project/commit/3def49cb64ec1298290724081bd37dbdeb2ea5f8
Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12.cl
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/test/CodeGen/AMDGPU/s-barrier.ll
M llvm/test/MC/AMDGPU/gfx12_asm_sop1.s
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop1.txt
Log Message:
-----------
[AMDGPU] Remove s_wakeup_barrier instruction (#122277)
Commit: 2e6030ef6a1792bea40aa6b0421f9a5fc9243214
https://github.com/llvm/llvm-project/commit/2e6030ef6a1792bea40aa6b0421f9a5fc9243214
Author: Guray Ozen <gozen at nvidia.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M mlir/lib/Dialect/LLVMIR/CMakeLists.txt
Log Message:
-----------
[MLIR][NVVM] Add missing cmake dependency
Another fix
Commit: e9e7b2adcf28c702f4ad37bad34ac437ee680799
https://github.com/llvm/llvm-project/commit/e9e7b2adcf28c702f4ad37bad34ac437ee680799
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
Log Message:
-----------
[SDAG] Set IsPostTypeLegalization flag in LegalizeDAG (#122278)
This runs after type legalization and as such should set
IsPostTypeLegalization when creating libcalls. I don't think this makes
any observable difference right now, but I ran into this issue in an
upcoming patch.
Commit: 4f69f4579132900949a7886fe3ba92d693430da0
https://github.com/llvm/llvm-project/commit/4f69f4579132900949a7886fe3ba92d693430da0
Author: Maksim Ivanov <emaxx at google.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaType.cpp
M clang/test/SemaCXX/attr-lifetimebound.cpp
Log Message:
-----------
(reland) [clang] Warn [[clang::lifetimebound]] misusages on types (#118501)
This relands #118281 as-is, after it got reverted in commit
356df2dd72e8299b5de58e9390283110c19f7c76. The reland can go in after we
fixed some downstream codebases that had incorrectly placed attributes.
Original commit description:
> Emit the "cannot be applied to types" warning instead of silently
ignoring the attribute when it's attempted to be used on a type (instead
of a function argument or the function definition).
>
> Before this commit, the warning has been printed when the attribute
was (mis)used on a decl-specifier, but not in other places in a
declarator.
>
> Examples where the warning starts being emitted with this commit:
>
> ```
> int * [[clang::lifetimebound]] x;
>
> void f(int * [[clang::lifetimebound]] x);
>
> void g(int * [[clang::lifetimebound]]);
> ```
>
> Note that the last example is the case of an unnamed function
parameter. While in theory Clang could've supported the
`[[clang::lifetimebound]]` analysis for unnamed parameters, it doesn't
currently, so the commit at least makes the situation better by
highlighting this as a warning instead of a silent ignore - which was
reported at #96034.
Commit: eca8ec0c95355992e24f0dfcdec88c8bfc3d014a
https://github.com/llvm/llvm-project/commit/eca8ec0c95355992e24f0dfcdec88c8bfc3d014a
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/Maintainers.md
Log Message:
-----------
[LLVM][Maintainers] Remove disclaimer
This list is mostly up to date now, so remove the disclaimer.
Commit: 5a069eac5fbb7752e7602b783ee0102e8269c47a
https://github.com/llvm/llvm-project/commit/5a069eac5fbb7752e7602b783ee0102e8269c47a
Author: David Green <david.green at arm.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/CodeGen/AArch64/aarch64-dup-ext-crash.ll
Log Message:
-----------
[AArch64] Don't try to sink and(load) (#122274)
If we sink the and in and(load), CGP can hoist is back again to the
load, getting into an infinite loop. This prevents sinking the and in
this case.
Fixes #122074
Commit: c39500f88c93f668c68bdafe56bd8d16e8abbec1
https://github.com/llvm/llvm-project/commit/c39500f88c93f668c68bdafe56bd8d16e8abbec1
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/GVN.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/test/Other/new-pm-print-pipeline.ll
Log Message:
-----------
Revert "[GVN] MemorySSA for GVN: add optional `AllowMemorySSA`"
This reverts commit eb63cd62a4a1907dbd58f12660efd8244e7d81e9.
This changes the preservation behavior for MSSA when the new flag
is not enabled.
Commit: b53e79422adb83870f44c55d977989da3e5c8c69
https://github.com/llvm/llvm-project/commit/b53e79422adb83870f44c55d977989da3e5c8c69
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Analysis/ValueTracking/implied-condition-samesign.ll
Log Message:
-----------
VT: teach isImpliedCondOperands about samesign (#120263)
isImpliedCondICmps() and its callers in ValueTracking can greatly
benefit from being taught about samesign. As a first step, teach one
caller, namely isImpliedCondOperands(). Very minimal changes are
required for this, as CmpPredicate::getMatching() does most of the work.
Commit: 9b49da2b3169544355192dfd8d6909213169d0c1
https://github.com/llvm/llvm-project/commit/9b49da2b3169544355192dfd8d6909213169d0c1
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/CodeGen/MachineVerifier.cpp
R llvm/test/MachineVerifier/stack-protector-offset.mir
Log Message:
-----------
Revert 86b1b0671cafd "MachineVerifier: Check stack protector is top-most in frame" (#122444)
Reverts llvm/llvm-project#121481
This is causing build failures on EXPENSIVE_CHECKS builds:
https://lab.llvm.org/buildbot/#/builders/187/builds/3653
https://lab.llvm.org/buildbot/#/builders/16/builds/11758
Commit: f44ed64864642b008f0c757a5ff37c150ce47d48
https://github.com/llvm/llvm-project/commit/f44ed64864642b008f0c757a5ff37c150ce47d48
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
Log Message:
-----------
[lldb] Fix some log messages in NativeProcessLinux
Commit: 85ca5517633e06d7cf58688c9b246bf14f61e5bd
https://github.com/llvm/llvm-project/commit/85ca5517633e06d7cf58688c9b246bf14f61e5bd
Author: A. Jiang <de34 at live.cn>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/include/__chrono/weekday.h
M libcxx/include/__cxx03/__chrono/weekday.h
Log Message:
-----------
[libc++][chrono] Entirely remove relational operators for `std::chrono::weekday` (#122428)
Follows-up #98730.
Commit: 6b12272353b45def33bf5814cdf9e8587f32d40e
https://github.com/llvm/llvm-project/commit/6b12272353b45def33bf5814cdf9e8587f32d40e
Author: Maksim Ivanov <emaxx at google.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/lib/Parse/ParseDecl.cpp
M clang/test/SemaCXX/attr-lifetimebound.cpp
Log Message:
-----------
[clang] Informative error for lifetimebound in decl-spec (#118567)
Emit a bit more informative error when the `[[clang::lifetimebound]]`
attribute is wrongly appearing on a decl-spec:
```
'lifetimebound' attribute only applies to parameters and implicit
object parameters
```
instead of:
```
'lifetimebound' attribute cannot be applied to types
```
The new error is also consistent with the diagnostic emitted when the
attribute is misplaced in other parts of a declarator.
Commit: 799e9883eaf7c7bdebfb8ddb3366d9137527b29d
https://github.com/llvm/llvm-project/commit/799e9883eaf7c7bdebfb8ddb3366d9137527b29d
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M lld/COFF/Chunks.cpp
Log Message:
-----------
[LLD][COFF] Silence GCC warning in Arm64XDynamicRelocEntry::getSize (NFC) (#122382)
Fixes 71bbafba31699bdabe289654d157ae961432e52a.
Commit: 7b0536794349734c8862fc140808e4e5a2ab8f8d
https://github.com/llvm/llvm-project/commit/7b0536794349734c8862fc140808e4e5a2ab8f8d
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/include/llvm/Support/Casting.h
M llvm/lib/CodeGen/RegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/unittests/ADT/PointerUnionTest.cpp
Log Message:
-----------
[ADT] Fix specialization of ValueIsPresent for PointerUnion (#121847)
Two instances of `PointerUnion` with different active members and null
value compare unequal. Currently, this results in counterintuitive
behavior when using functions from `Casting.h`, e.g.:
```C++
PointerUnion<int *, float *> U;
// U = (int *)nullptr;
dyn_cast<int *>(U); // Aborts
dyn_cast<float *>(U); // Aborts
U = (float *)nullptr;
dyn_cast<int *>(U); // OK
dyn_cast<float *>(U); // OK
```
`dyn_cast` should abort in all cases because the argument is null.
Currently, it aborts only if the first member is active. This happens
because the partial template specialization of `ValueIsPresent` for
nullable types compares the union with a union constructed from nullptr,
and the two unions compare equal only if their active members are the
same.
This patch changed the specialization of `ValueIsPresent` for nullable
types to make `isPresent()` return false for all possible null values of
a PointerUnion, and fixes two places where the old behavior was
exploited.
Pull Request: https://github.com/llvm/llvm-project/pull/121847
Commit: cfee344dda7394631f2177a15e56cfeee1d61fc4
https://github.com/llvm/llvm-project/commit/cfee344dda7394631f2177a15e56cfeee1d61fc4
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Analysis/ValueTracking/implied-condition-samesign.ll
Log Message:
-----------
VT: teach implied-cond-cr about samesign (#122447)
Teach isImpliedCondCommonOperandWithCR about samesign, noting that the
only case we need to handle is when exactly one of the icmps have
samesign.
Commit: c575a7d1e9b732432bf95c7905067b779f43d1a4
https://github.com/llvm/llvm-project/commit/c575a7d1e9b732432bf95c7905067b779f43d1a4
Author: Jakub Chlanda <jakub at codeplay.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp
Log Message:
-----------
[AMDGPU] Provide default value in get intrinsic param type (#122448)
Make sure that a default value (nullptr) is returned from
`getIntrinsicParamType`, also validate uses of this helper function.
Commit: a2995cb4bb21ba2fe6277bbcd24b8ab1b357e12d
https://github.com/llvm/llvm-project/commit/a2995cb4bb21ba2fe6277bbcd24b8ab1b357e12d
Author: Ayokunle Amodu <ayokunle321 at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[LangRef] Fix code segment and numbering issue in the 'call' instruction section (#122294)
Fixes issue #122084.
Under "Arguments" in the 'call' instruction section, there was some text
included in the code segment so I edited it out. Also fixed the
numbering issue in that section.
Commit: 9c85cdec4ad29389c27cc2372d45f73d1ca8053a
https://github.com/llvm/llvm-project/commit/9c85cdec4ad29389c27cc2372d45f73d1ca8053a
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx_dpp8.txt
Log Message:
-----------
[AMDGPU][True16][MC][NFC]update vopc dasm test with latest update script (#122360)
This is a NFC.
Update VOPC dasm test with +real-true16 and run latest update script.
Commit: 24bb180e8aeae95cb830e5c3da73e750edaa139f
https://github.com/llvm/llvm-project/commit/24bb180e8aeae95cb830e5c3da73e750edaa139f
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/include/llvm/Analysis/VectorUtils.h
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-reverse.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-rotate.ll
Log Message:
-----------
[RISCV] Attempt to widen SEW before generic shuffle lowering (#122311)
This takes inspiration from AArch64 which does the same thing to assist
with zip/trn/etc.. Doing this recursion unconditionally when the mask
allows is slightly questionable, but seems to work out okay in practice.
As a bit of context, it's helpful to realize that we have existing logic
in both DAGCombine and InstCombine which mutates the element width of in
an analogous manner. However, that code has two restriction which
prevent it from handling the motivating cases here. First, it only
triggers if there is a bitcast involving a different element type.
Second, the matcher used considers a partially undef wide element to be
a non-match. I considered trying to relax those assumptions, but the
information loss for undef in mid-level opt seemed more likely to open a
can of worms than I wanted.
Commit: 35a392553d790064566d4430f249b1e740052dfa
https://github.com/llvm/llvm-project/commit/35a392553d790064566d4430f249b1e740052dfa
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/shuffle-vs-trunc-512.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
Log Message:
-----------
[X86] widenSubVector - widen from smaller build vector if the upper elements are already the same padding elements (#122445)
Further simplifies some shuffle masks to help additional combines
Commit: d6b6598e8075a5ba0271ee06a20c5a5609c0ec37
https://github.com/llvm/llvm-project/commit/d6b6598e8075a5ba0271ee06a20c5a5609c0ec37
Author: thebrandre <andre.brand at mailbox.org>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
A clang/test/SemaCXX/opaque-enum-declaration-in-class-template.cpp
Log Message:
-----------
[clang] Fix implicit integer conversion for opaque enums declared in class templates (#121039)
This commit fixes issues with enumeration types instantiated from an
opaque-enum-declarations
(see [dcl.enum]) in class templates broke basic assumptions during
parsing of arithmetic
expressions due to absent (NULL TYPE) promotion types of instances of
EnumDecl.
To this end, we repeat the simple steps in `Sema::ActOnTag` to evaluate
the promotion type
of a fixed enumeration based on its underlying type (see C++11
[conv.prom] p4).
Note that if, instead, a full *enum-specifier* (subsequent curly braces)
is provided,
`Sema::ActOnEnumBody` is re-invoked on template instantiation anyway
overriding the
promotion type and hiding the issue. This is analog to how enumerations
declarations
outside of template declarations are handled.
Note that, in contrast to `Sema::ActOnEnumBody`, `Sema::ActOnTag` is
*not* called again
for the instantiated enumeration type.
Fixes #117960.
---------
Co-authored-by: cor3ntin <corentinjabot at gmail.com>
Commit: aee51b4d75089b4e7d9eb20877e2adbf6adea999
https://github.com/llvm/llvm-project/commit/aee51b4d75089b4e7d9eb20877e2adbf6adea999
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
M clang-tools-extra/clang-tidy/ClangTidyOptions.h
Log Message:
-----------
[clang-tidy][NFC] optimize cache for config option (#121406)
Current implement will cache `OptionsSource` for each path, it will
create lots of copy of `OptionsSource` when project has deep nested
folder structure.
New implement use vector to store `OptionsSource` and only cache the
index. It can reduce memory usage and avoid meaningless copy.
Commit: bbb53d1a8cd37cbb31ec5ec7938a0f24f628c821
https://github.com/llvm/llvm-project/commit/bbb53d1a8cd37cbb31ec5ec7938a0f24f628c821
Author: Paul Bowen-Huggett <paulhuggett at mac.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCombinerHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCombinerHelper.h
M llvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
Log Message:
-----------
[NFC] Make AMDGPUCombinerHelper methods const (#121903)
(This replaces #121740. Sorry for wasting your time.)
This is a follow-up to a previous commit (ee7ca0d) which eliminated
several "TODO: make CombinerHelper methods const" remarks. As promised
in that ealier commit, this change completes the set by also making the
methods of AMDGPUCombinerHelper const so that the Helper member of
AMDGPUPreLegalizerCombinerImpl can be const rather than explicitly
mutable.
Commit: 9d7df23f4d6537752854d54b0c4c583512b930d0
https://github.com/llvm/llvm-project/commit/9d7df23f4d6537752854d54b0c4c583512b930d0
Author: Santanu Das <quic_santdas at quicinc.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonPatterns.td
A llvm/test/CodeGen/Hexagon/isel/isel-tfrrp.ll
Log Message:
-----------
[Hexagon] Add missing pattern for v8i1 type (#120703)
HexagonISD::PFALSE and PTRUE patterns do not form independently in
general as they are treated like operands of all 0s or all 1s. Eg: i32 =
transfer HEXAGONISD::PFALSE.
In this case, v8i1 = HEXAGONISD::PFALSE is formed independently without
accompanying opcode.
This patch adds a pattern to transfer all 0s or all 1s to a scalar
register and then use that register and this PFALSE/PTRUE opcode to
transfer to a predicate register like v8i1.
Commit: c664a7f9750356319c329408be94f669cf5f799e
https://github.com/llvm/llvm-project/commit/c664a7f9750356319c329408be94f669cf5f799e
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M libcxx/include/CMakeLists.txt
M libcxx/include/__config
M libcxx/include/__locale_dir/locale_base_api.h
R libcxx/include/__locale_dir/locale_base_api/bsd_locale_defaults.h
M libcxx/include/locale
M libcxx/include/module.modulemap
Log Message:
-----------
[libc++] Remove obsolete bsd_locale_defaults.h (#122276)
Supported platforms who used to need this header now go through the new
locale base API instead, so that header is not required anymore.
Commit: 513fa28901fc1906f10a7f9d2855266be8b18b90
https://github.com/llvm/llvm-project/commit/513fa28901fc1906f10a7f9d2855266be8b18b90
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn build] Port c664a7f97503
Commit: 920c58916a6a1c0b13b9330b5e8640bd7f4b0115
https://github.com/llvm/llvm-project/commit/920c58916a6a1c0b13b9330b5e8640bd7f4b0115
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/X86/bv-shuffle-mask.ll
Log Message:
-----------
[SLP][NFC]Add a test with the mask translate after buildvector shuffle cost estimation
Commit: 7ebf0df409c8e2045b7725da5a912854c58e0f6a
https://github.com/llvm/llvm-project/commit/7ebf0df409c8e2045b7725da5a912854c58e0f6a
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx940.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.xf32.gfx940.ll
Log Message:
-----------
AMDGPU: Test gfx940 mfma intrinsics on gfx950
This requires splitting the xf32 cases into a separate file
Commit: 547ba9730bf05df3383150f730a689f2c8336206
https://github.com/llvm/llvm-project/commit/547ba9730bf05df3383150f730a689f2c8336206
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/bv-shuffle-mask.ll
Log Message:
-----------
[SLP]Fix mask generation after cost estimation
When estimating the cost of entries shuffles for buildvectors, need to
rebuild original mask, not a generated submask, used for subregisters
analysis.
Fixes #122430
Commit: 5d26a6d7590f13d21d78f7f0a443b92b04c80f98
https://github.com/llvm/llvm-project/commit/5d26a6d7590f13d21d78f7f0a443b92b04c80f98
Author: Matthias Springer <me at m-sp.org>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
M mlir/include/mlir/Interfaces/ViewLikeInterface.h
Log Message:
-----------
[mlir][Interfaces] `ViewLikeOpInterface`: Remove parser/printer overloads (#122436)
#115808 adds additional `custom<>` parser/printer variants. The overall
list of overloads/variants is getting larger.
This commit removes overloads that are not needed, to keep the
parser/printer simple.
Commit: dab6463e748aed1223487da536075cbff192940b
https://github.com/llvm/llvm-project/commit/dab6463e748aed1223487da536075cbff192940b
Author: LoS <kaffedesk at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M libcxx/include/__cxx03/__functional/function.h
M libcxx/include/__cxx03/future
M libcxx/include/__cxx03/regex
M libcxx/include/__functional/function.h
M libcxx/include/future
M libcxx/include/regex
Log Message:
-----------
[libc++] Remove duplicated _LIBCPP_HIDE_FROM_ABI from a few declarations (#122323)
Commit: c189df842c67a2476a59363fa36a0c1b1137f533
https://github.com/llvm/llvm-project/commit/c189df842c67a2476a59363fa36a0c1b1137f533
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Semantics/cuf10.cuf
Log Message:
-----------
[flang][cuda] Fix resolution of overloaded operator (#122402)
Commit: 3c9c94a24fd147578c8dcf2837e94923213ac7af
https://github.com/llvm/llvm-project/commit/3c9c94a24fd147578c8dcf2837e94923213ac7af
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/bv-shuffle-mask.ll
Log Message:
-----------
Revert "[SLP]Fix mask generation after cost estimation"
This reverts commit 547ba9730bf05df3383150f730a689f2c8336206 to fix
buildbots reported in
https://lab.llvm.org/buildbot/#/builders/123/builds/11370, https://lab.llvm.org/buildbot/#/builders/133/builds/9492
Commit: b43c97c2ddfe9e922bb044de01312adb81591a48
https://github.com/llvm/llvm-project/commit/b43c97c2ddfe9e922bb044de01312adb81591a48
Author: Evgenii Kudriashov <evgenii.kudriashov at intel.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/lib/Headers/amxintrin.h
M clang/test/CodeGen/X86/amx_api.c
A clang/test/CodeGen/X86/amx_tile.c
Log Message:
-----------
[Headers][X86] amxintrin.h - fix attributes according to Intel SDM (#122204)
`tileloadd`, `tileloaddt1` and `tilestored` are part of `amx-tile`
feature.
The problem is observed if `__tile_loadd` intrinsic is invoked,
`_tile_loadd_internal` requiring `amx-int8` is inlined into
`__tile_loadd` that has only `amx-tile`.
Commit: 953beb9fe969bf8ab1857924ea0d3dd6ea506ab1
https://github.com/llvm/llvm-project/commit/953beb9fe969bf8ab1857924ea0d3dd6ea506ab1
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/test/Driver/cuda-arch-translation.cu
M clang/test/Driver/cuda-bindings.cu
M clang/test/Driver/cuda-options.cu
M clang/test/Driver/cuda-output-asm.cu
Log Message:
-----------
[CUDA] Move CUDA to new driver by default (#122312)
Summary:
This patch updates the --offload-new-driver flag to be default for CUDA.
This mostly just required updating a lot of tests to use the old format.
I tried to update them where possible, but some were directly checking
the old format.
https://discourse.llvm.org/t/rfc-use-the-new-offloding-driver-for-cuda-and-hip-compilation-by-default/77468/18
Commit: 372044ee09d39942925824f8f335aef40bfe92f0
https://github.com/llvm/llvm-project/commit/372044ee09d39942925824f8f335aef40bfe92f0
Author: Durgadoss R <durgadossr at nvidia.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/docs/NVPTXUsage.rst
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
A llvm/test/CodeGen/NVPTX/cp-async-bulk.ll
Log Message:
-----------
[NVPTX] Add TMA Bulk Copy intrinsics (#122344)
PR #96083 added intrinsics for async copy of 'tensor' data
using TMA. Following a similar design, this PR adds intrinsics
for async copy of bulk data (non-tensor variants) through TMA.
* These intrinsics optionally support multicast and cache_hints,
as indicated by the boolean arguments at the end of the intrinsics.
* The backend looks through these flag arguments and lowers to the
appropriate PTX instructions.
* Lit tests are added for all combinations of these intrinsics in
cp-async-bulk.ll.
* The generated PTX is verified with a 12.3 ptxas executable.
* Added docs for these intrinsics in NVPTXUsage.rst file.
PTX Spec reference:
https://docs.nvidia.com/cuda/parallel-thread-execution/#data-movement-and-conversion-instructions-cp-async-bulk
Signed-off-by: Durgadoss R <durgadossr at nvidia.com>
Commit: 70e96dc3fb895e95dc659f87c2ed188507831801
https://github.com/llvm/llvm-project/commit/70e96dc3fb895e95dc659f87c2ed188507831801
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M flang/docs/ParserCombinators.md
M flang/include/flang/Parser/characters.h
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Parser/basic-parsers.h
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/token-parsers.h
M flang/lib/Parser/unparse.cpp
Log Message:
-----------
[flang][OpenMP] Parsing context selectors for METADIRECTIVE (#121815)
This is just adding parsers for context selectors. There are no tests
because there is no way to execute these parsers yet.
Commit: 59ced72bc211f150518cf31606b58b11cb6ff310
https://github.com/llvm/llvm-project/commit/59ced72bc211f150518cf31606b58b11cb6ff310
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/InstCombine/rotate.ll
Log Message:
-----------
[ValueTracking] Add rotate idiom to haveNoCommonBitsSet special cases (#122165)
An occasional idiom for rotation is "(A << B) + (A >> (BitWidth - B))".
Currently this is not well handled on targets with native
funnel-shift/rotate support. Add a special case to haveNoCommonBitsSet
to ensure that the addition is converted to a disjoint or in InstCombine
so during instruction selection the idiom can be converted to an
efficient rotation implementation.
Proof: https://alive2.llvm.org/ce/z/WdCZsN
Commit: 986f2ac48f369bc025a3f1830e2d5bba235be0fd
https://github.com/llvm/llvm-project/commit/986f2ac48f369bc025a3f1830e2d5bba235be0fd
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLPVectorizer] minor tweaks around lambdas for compatibility with older compilers (#122348)
Older version of msvc do not have great lambda support and are not able
to handle uses of class data or lambdas with implicit return types in
some cases. These minor changes improve the sources compatibility with
older msvc and don't hurt readability either.
Commit: ac2d529be31d7a670326298036a4b9b3eaed59d3
https://github.com/llvm/llvm-project/commit/ac2d529be31d7a670326298036a4b9b3eaed59d3
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/test/CodeGenOpenCL/preserve_vec3.cl
Log Message:
-----------
[NFC][Clang] Auto generate check lines for `preserve_vec3.cl`
Commit: 20f0290af0604a5f2656533d7ecaff6ff438e261
https://github.com/llvm/llvm-project/commit/20f0290af0604a5f2656533d7ecaff6ff438e261
Author: Prashanth <TheStarOne01 at proton.me>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M libc/docs/CMakeLists.txt
M libc/docs/headers/index.rst
A libc/utils/docgen/aio.yaml
Log Message:
-----------
[docs][libc] Add AIO documentation refering POSIX and include in build (#122219)
With reference to #122006 , add a new header reference (aio.yaml) to doc
Commit: dff7ef2353fec9f1006895c0e99bde704296eaa9
https://github.com/llvm/llvm-project/commit/dff7ef2353fec9f1006895c0e99bde704296eaa9
Author: Prashanth <TheStarOne01 at proton.me>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M libc/docs/CMakeLists.txt
M libc/docs/headers/index.rst
A libc/utils/docgen/netinet/in.yaml
Log Message:
-----------
[libc][docs] Add netinet/in header documentation by referring to POSIX standards (#122411)
This pull request introduces the following changes to the project with
reference to ( #122006 ):
1. **Documentation Update**:
- Added a new YAML file `in.yaml` to document network protocol and
address macros.
- The `in.yaml` file includes the following macros:
- `IPPROTO_IP`
- `IPPROTO_IPV6`
- `IPPROTO_ICMP`
- `IPPROTO_RAW`
- `IPPROTO_TCP`
- `IPPROTO_UDP`
- `INADDR_ANY`
- `INADDR_BROADCAST`
- `INET_ADDRSTRLEN`
- `IPV6_JOIN_GROUP`
- `IPV6_LEAVE_GROUP`
- `IPV6_MULTICAST_HOPS`
- `IPV6_MULTICAST_IF`
- `IPV6_MULTICAST_LOOP`
- `IPV6_UNICAST_HOPS`
- `IPV6_V6ONLY`
- `IN6_IS_ADDR_UNSPECIFIED`
- `IN6_IS_ADDR_LOOPBACK`
- `IN6_IS_ADDR_MULTICAST`
- `IN6_IS_ADDR_LINKLOCAL`
- `IN6_IS_ADDR_SITELOCAL`
- `IN6_IS_ADDR_V4MAPPED`
- `IN6_IS_ADDR_V4COMPAT`
- `IN6_IS_ADDR_MC_NODELOCAL`
- `IN6_IS_ADDR_MC_LINKLOCAL`
- `IN6_IS_ADDR_MC_SITELOCAL`
- `IN6_IS_ADDR_MC_ORGLOCAL`
- `IN6_IS_ADDR_MC_GLOBAL`
_I believe, all these macros are necessary and should be documented._
2. **CMake Configuration Update**:
- Updated the `CMakeLists.txt` file to create the necessary directory
for the `netinet` headers.
- Included the `netinet/in` documentation in the Sphinx build
configuration.
3. **Index Update**:
- Updated the `index.rst` file to include a reference to the newly added
`netinet/in` documentation.
**Purpose**:
- This pull request adds documentation for network protocol and address
macros in the `netinet/in` header.
- Updates the CMake configuration to support the new documentation.
**Testing**:
- Verified that the new YAML file is correctly referenced in the
`index.rst`.
- Ensured that the documentation builds without errors and includes the
new network interface documentation.
This pull request ensures that the `netinet/in` header macros are
documented and included in the project's documentation, and updates the
CMake configuration to support these changes.
Commit: 0afee850de1ebe9af71bdf727d906fefa78ad68c
https://github.com/llvm/llvm-project/commit/0afee850de1ebe9af71bdf727d906fefa78ad68c
Author: Prashanth <TheStarOne01 at proton.me>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M libc/docs/CMakeLists.txt
M libc/docs/headers/index.rst
A libc/utils/docgen/net/if.yaml
Log Message:
-----------
[libc][docs] Add net/if.h documentation by referring to POSIX standards (#122406)
This pull request introduces the following changes to the project with
reference to issue ( #122006 ):
1. **Documentation Update**:
- Added a new YAML file `if.yaml` under `net` to document network
interface functions and macros.
- The `if.yaml` file includes the following functions and macros:
- Functions:
- `if_freenameindex`
- `if_indextoname`
- `if_nameindex`
- `if_nametoindex`
- Macros:
- `IF_NAMESIZE`
2. **CMake Configuration Update**:
- Updated the `CMakeLists.txt` file to create the necessary directory
for the `net` headers.
- Included the `net/if` documentation in the Sphinx build configuration.
3. **Index Update**:
- Updated the `index.rst` file to include a reference to the newly added
`net/if` documentation.
**Purpose**:
- This pull request adds documentation for network interface functions
and macros, ensuring they are included in the project's documentation.
- Updates the CMake configuration to support the new documentation.
**Testing**:
- Verified that the new YAML file is correctly referenced in the
`index.rst`.
- Ensured that the documentation builds without errors and includes the
new network interface documentation.
Co-authored-by: Nick Desaulniers <ndesaulniers at google.com>
Commit: beba4b08f72152abbb7d26df024f0d9338a7038b
https://github.com/llvm/llvm-project/commit/beba4b08f72152abbb7d26df024f0d9338a7038b
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/test/HLFIR/simplify-hlfir-intrinsics-sum.fir
Log Message:
-----------
[flang][NFC] Removed unneeded engineering option. (#122305)
Commit: cc88a5e61578e58afdd8ef4e9f1b7cd10d77fba3
https://github.com/llvm/llvm-project/commit/cc88a5e61578e58afdd8ef4e9f1b7cd10d77fba3
Author: Fangrui Song <i at maskray.me>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M lld/Common/BPSectionOrdererBase.cpp
M lld/MachO/BPSectionOrderer.cpp
M lld/MachO/BPSectionOrderer.h
M lld/MachO/SectionPriorities.cpp
M lld/MachO/SectionPriorities.h
M lld/MachO/Writer.cpp
M lld/include/lld/Common/BPSectionOrdererBase.h
Log Message:
-----------
[lld-macho,NFC] Switch to increasing priorities
--order_file, call graph profile, and BalancedPartitioning currently
build the section order vector by decreasing priority (from SIZE_MAX to
0). However, it's conventional to use an increasing key (see
OutputSection::inputOrder).
Switch to increasing priorities, remove the global variable
highestAvailablePriority, and remove the highestAvailablePriority
parameter from BPSectionOrderer. Change size_t to int.
This improves consistenty with the ELF and COFF ports. The ELF port
utilizes negative priorities for --symbol-ordering-file and call graph
profile, and non-negative priorities for --shuffle-sections (no Mach-O
counterpart yet).
Pull Request: https://github.com/llvm/llvm-project/pull/121727
Commit: 681c83a2f99431d4bb9d4975a08771320e30a80b
https://github.com/llvm/llvm-project/commit/681c83a2f99431d4bb9d4975a08771320e30a80b
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/bv-shuffle-mask.ll
Log Message:
-----------
[SLP]Fix mask generation after cost estimation
When estimating the cost of entries shuffles for buildvectors, need to
rebuild original mask, not a generated submask, used for subregisters
analysis.
Fixes #122430
Commit: 6f53886a9a5e65136619ada7713f31942a1cc1fa
https://github.com/llvm/llvm-project/commit/6f53886a9a5e65136619ada7713f31942a1cc1fa
Author: Raphael Moreira Zinsly <rzinsly at ventanamicro.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.h
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/test/CodeGen/RISCV/rvv/access-fixed-objects-by-rvv.ll
A llvm/test/CodeGen/RISCV/rvv/stack-probing-rvv.ll
M llvm/test/CodeGen/RISCV/stack-clash-prologue.ll
Log Message:
-----------
[RISCV] Add stack clash vector support (#119458)
Use the probe loop structure to allocate vector code in the stack as
well. We add the pseudo instruction RISCV::PROBED_STACKALLOC_RVV to
differentiate from the normal loop.
Commit: b93ffa8e4a11b89a8da02f409139f2ea862aabf0
https://github.com/llvm/llvm-project/commit/b93ffa8e4a11b89a8da02f409139f2ea862aabf0
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/test/CodeGen/AArch64/fmv-features.c
M clang/test/CodeGen/AArch64/fmv-priority.c
M clang/test/CodeGen/AArch64/fmv-streaming.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGen/attr-target-version.c
Log Message:
-----------
[FMV][AArch64] Changes in fmv-features metadata. (#122192)
* We want the default version to have this attribute too otherwise it
becomes indistinguishable from non-versioned functions.
* We don't need the '+' unlike target-features which can negate. This
will allow using the parsing API of target_version/clones for the
metadata too.
Commit: 0a079c711de6805fc4b64e5f7723964c7f9ea05d
https://github.com/llvm/llvm-project/commit/0a079c711de6805fc4b64e5f7723964c7f9ea05d
Author: Michał Górny <mgorny at gentoo.org>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M flang/CMakeLists.txt
Log Message:
-----------
Revert "[flang] Fix finding system install of LLVM/Clang/MLIR in standalone builds (#120914)"
This reverts commit 8e12037d38e2a9a1cfc6402be2b33283e3220bcc.
It broke the flang-aarch64-out-of-tree buildbot.
Commit: 35e76b6a4fc74e64bd6c91e5b9b9eb6a03aa802e
https://github.com/llvm/llvm-project/commit/35e76b6a4fc74e64bd6c91e5b9b9eb6a03aa802e
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
Revert "[SLP] NFC. Replace MainOp and AltOp in TreeEntry with InstructionsState. (#120198)"
This reverts commit f3d6cdc5aebafac3961d4fccbd2ca0e302c6082c.
Commit: 44058e5b5f19e2a9c311047f3d55fa0b5fcf5b6c
https://github.com/llvm/llvm-project/commit/44058e5b5f19e2a9c311047f3d55fa0b5fcf5b6c
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
A llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory.ll
A llvm/test/Transforms/LoopVectorize/transform-narrow-interleave-to-widen-memory.ll
Log Message:
-----------
[LV] Precommit tests for #106441.
Tests for https://github.com/llvm/llvm-project/pull/106441
from https://github.com/llvm/llvm-project/issues/82936.
Commit: c3910823c741eb3ad6f977bda82d7b55101499ef
https://github.com/llvm/llvm-project/commit/c3910823c741eb3ad6f977bda82d7b55101499ef
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/lib/Driver/ToolChains/SPIRV.h
M clang/test/Driver/spirv-openmp-toolchain.c
M clang/test/Driver/spirv-toolchain.cl
Log Message:
-----------
[clang][Driver][SPIR-V] Make tool names consistent (#122343)
Some use `SPIRV` and some use `SPIR-V`, just use `SPIR-V` which is what
we use normally.
I noticed this when fixing the test in
https://github.com/llvm/llvm-project/pull/122310.
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: c91d805e6627987bec8ec34ea67c1e8240940039
https://github.com/llvm/llvm-project/commit/c91d805e6627987bec8ec34ea67c1e8240940039
Author: Jakub Mazurkiewicz <mazkuba3 at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/include/__functional/not_fn.h
M libcxx/include/functional
M libcxx/include/version
A libcxx/test/libcxx/utilities/function.objects/func.not.fn/not_fn.nttp.compile.pass.cpp
A libcxx/test/libcxx/utilities/function.objects/func.not.fn/not_fn.nttp.nodiscard.verify.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
A libcxx/test/std/utilities/function.objects/func.not_fn/not_fn.nttp.pass.cpp
A libcxx/test/std/utilities/function.objects/func.not_fn/not_fn.nttp.verify.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++] Implement std::not_fn<NTTP> (#86133)
Implement `std::not_fn<NTTP>` from "P2714R1 Bind front and back to NTTP callables".
Commit: b900379e26d9f49977c4d772f1b2b681fc5147d4
https://github.com/llvm/llvm-project/commit/b900379e26d9f49977c4d772f1b2b681fc5147d4
Author: Farzon Lotfi <farzonlotfi at microsoft.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/Headers/hlsl/hlsl_detail.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/CodeGenHLSL/builtins/length.hlsl
M clang/test/SemaHLSL/BuiltIns/length-errors.hlsl
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
R llvm/test/CodeGen/DirectX/length.ll
R llvm/test/CodeGen/DirectX/length_error.ll
R llvm/test/CodeGen/DirectX/length_invalid_intrinsic_error.ll
R llvm/test/CodeGen/DirectX/length_invalid_intrinsic_error_scalar.ll
Log Message:
-----------
[HLSL] Reapply Move length support out of the DirectX Backend (#121611) (#122337)
## Changes
- Delete DirectX length intrinsic
- Delete HLSL length lang builtin
- Implement length algorithm entirely in the header.
## History
- In the past if an HLSL intrinsic lowered to either a spirv op code or
a DXIL opcode we represented it with intrinsics
## Why we are moving away?
- To make HLSL apis more portable the team decided that it makes sense
for some intrinsics to be defined only in the header.
- Since there tends to be more SPIRV opcodes than DXIL opcodes the plan
is to support SPIRV opcodes either with target specific builtins or via
pattern matching.
Commit: 2e5c2982819625d84e0b61aea0ec00de859f0e95
https://github.com/llvm/llvm-project/commit/2e5c2982819625d84e0b61aea0ec00de859f0e95
Author: Austin Kerbow <Austin.Kerbow at amd.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.h
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
A llvm/lib/Target/AMDGPU/AMDGPUPreloadKernArgProlog.cpp
A llvm/lib/Target/AMDGPU/AMDGPUPreloadKernArgProlog.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/CMakeLists.txt
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
M llvm/test/CodeGen/AMDGPU/preload-kernarg-header.ll
M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll
Log Message:
-----------
[AMDGPU] Add backward compatibility layer for kernarg preloading (#119167)
Add a prologue to the kernel entry to handle cases where code designed
for kernarg preloading is executed on hardware equipped with
incompatible firmware. If hardware has compatible firmware the 256 bytes
at the start of the kernel entry will be skipped. This skipping is done
automatically by hardware that supports the feature.
A pass is added which is intended to be run at the very end of the
pipeline to avoid any optimizations that would assume the prologue is a
real predecessor block to the actual code start. In reality we have two
possible entry points for the function. 1. The optimized path that
supports kernarg preloading which begins at an offset of 256 bytes. 2.
The backwards compatible entry point which starts at offset 0.
Commit: 833a17489dd96f35df3a17ad231ada82acf38ef9
https://github.com/llvm/llvm-project/commit/833a17489dd96f35df3a17ad231ada82acf38ef9
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M lldb/examples/python/crashlog.py
Log Message:
-----------
[lldb/crashlog] Fix typo in error message when creating a target (#122514)
This fixes a typo when creating a target from the crashlog script and
that we were not able to find a valid architecture from the crash
report.
rdar://137344016
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
Commit: 5912de9ede81407f93162e930ae9bc97e561d017
https://github.com/llvm/llvm-project/commit/5912de9ede81407f93162e930ae9bc97e561d017
Author: Brad Smith <brad at comstyle.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/lib/Driver/ToolChains/NetBSD.cpp
M clang/test/Driver/netbsd.c
Log Message:
-----------
[Driver][NetBSD] Remove support for NetBSD 8.x (#122513)
Commit: 0f242897ce806a0cc88c328fd0f7a3f34d25504c
https://github.com/llvm/llvm-project/commit/0f242897ce806a0cc88c328fd0f7a3f34d25504c
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
Log Message:
-----------
[gn build] Port 2e5c29828196
Commit: d2498afccb04c0f09b05827b6b9c1c6c181a4f2b
https://github.com/llvm/llvm-project/commit/d2498afccb04c0f09b05827b6b9c1c6c181a4f2b
Author: Brad Smith <brad at comstyle.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/lib/Basic/Targets.cpp
Log Message:
-----------
[Driver][NFC] Formatting fixes (#122519)
Commit: 749bdc87f5d0646be93bb90dd843ffa07924205e
https://github.com/llvm/llvm-project/commit/749bdc87f5d0646be93bb90dd843ffa07924205e
Author: Jan Voung <jvoung at google.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang-tools-extra/docs/ReleaseNotes.rst
Log Message:
-----------
[clang-tidy] sort / reorder a part of release notes (#122475)
and remove a trailing space
Commit: 4c6ca3efdae13a4dd75f9fe2cdfede5208e5d2c4
https://github.com/llvm/llvm-project/commit/4c6ca3efdae13a4dd75f9fe2cdfede5208e5d2c4
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M libcxx/include/__locale
M libcxx/src/locale.cpp
Log Message:
-----------
[libc++] Implement a libc++ private version of isascii (#122361)
The isascii() function is not standard, so we should avoid relying on
the platform providing it, especially since it's easy to implement in
libc++ portably.
Commit: 0b5cf9e17bd2f2fb9ee3a7dc2b4ef99fba3ae201
https://github.com/llvm/llvm-project/commit/0b5cf9e17bd2f2fb9ee3a7dc2b4ef99fba3ae201
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M libcxx/include/__support/xlocale/__posix_l_fallback.h
Log Message:
-----------
[libc++] Add missing iswctype_l in posix_l_fallbacks (#122484)
Commit: 008a39c0e3f934c7eb0dd04aa5759a0feac65967
https://github.com/llvm/llvm-project/commit/008a39c0e3f934c7eb0dd04aa5759a0feac65967
Author: Kazu Hirata <kazu at google.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
Log Message:
-----------
[lldb] Migrate away from PointerUnion::{is,get} (NFC) (#122420)
Note that PointerUnion::{is,get} have been soft deprecated in
PointerUnion.h:
// FIXME: Replace the uses of is(), get() and dyn_cast() with
// isa<T>, cast<T> and the llvm::dyn_cast<T>
Commit: 8e6261fff122590a75604340cb3fcaa121e85b46
https://github.com/llvm/llvm-project/commit/8e6261fff122590a75604340cb3fcaa121e85b46
Author: Farzon Lotfi <farzonlotfi at microsoft.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/lib/Headers/hlsl/hlsl_detail.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
A clang/test/CodeGenHLSL/builtins/distance.hlsl
A clang/test/SemaHLSL/BuiltIns/distance-errors.hlsl
Log Message:
-----------
[HLSL] Implement the HLSL distance intrinsic (#122357)
- Hook of SPIRV builtin
- Implement Distance as length(X - Y)
Commit: 55b587506e5dccb436e5405b7236671112b36244
https://github.com/llvm/llvm-project/commit/55b587506e5dccb436e5405b7236671112b36244
Author: Thurston Dang <thurston at google.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M clang/include/clang/Basic/Sanitizers.h
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGObjC.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
Log Message:
-----------
[ubsan][NFCI] Use SanitizerOrdinal instead of SanitizerMask for EmitCheck (exactly one sanitizer is required) (#122511)
The `Checked` parameter of `CodeGenFunction::EmitCheck` is of type
`ArrayRef<std::pair<llvm::Value *, SanitizerMask>>`, which is overly
generalized: SanitizerMask can denote that zero or more sanitizers are
enabled, but `EmitCheck` requires that exactly one sanitizer is
specified in the SanitizerMask (e.g.,
`SanitizeTrap.has(Checked[i].second)` enforces that).
This patch replaces SanitizerMask with SanitizerOrdinal in the `Checked`
parameter of `EmitCheck` and code that transitively relies on it. This
should not affect the behavior of UBSan, but it has the advantages that:
- the code is clearer: it avoids ambiguity in EmitCheck about what to do
if multiple bits are set
- specifying the wrong number of sanitizers in `Checked[i].second` will
be detected as a compile-time error, rather than a runtime assertion
failure
Suggested by Vitaly in https://github.com/llvm/llvm-project/pull/122392
as an alternative to adding an explicit runtime assertion that the
SanitizerMask contains exactly one sanitizer.
Commit: 3b0dafff87adf10480376a81f5c554857ea73ec7
https://github.com/llvm/llvm-project/commit/3b0dafff87adf10480376a81f5c554857ea73ec7
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M lld/COFF/Chunks.cpp
M lld/COFF/Chunks.h
M lld/COFF/Writer.cpp
M lld/test/COFF/arm64x-loadconfig.s
Log Message:
-----------
[LLD][COFF] Use EC load config for ARM64X relocations of load config directory (#121337)
This change ensures the load config in the hybrid image view is handled
correctly. It introduces a new Arm64XRelocVal class to abstract
relocation values, allowing them to be relative to a symbol. This class
will also be useful for managing ARM64X relocation offsets in the
future.
Commit: 813bacf729bbcbd8d6d37093dfaf95a4f45d623b
https://github.com/llvm/llvm-project/commit/813bacf729bbcbd8d6d37093dfaf95a4f45d623b
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M .github/workflows/commit-access-review.py
M .github/workflows/containers/github-action-ci/Dockerfile
A .github/workflows/hlsl-matrix.yaml
A .github/workflows/hlsl-test-all.yaml
M .github/workflows/libclang-python-tests.yml
M .github/workflows/llvm-project-tests.yml
M .github/workflows/pr-code-format.yml
M .github/workflows/premerge.yaml
M bolt/lib/Core/BinaryEmitter.cpp
M bolt/lib/Core/CMakeLists.txt
M bolt/lib/Passes/CMakeLists.txt
M bolt/lib/Passes/ReorderFunctions.cpp
M bolt/lib/Profile/CMakeLists.txt
M bolt/lib/Rewrite/CMakeLists.txt
M bolt/lib/RuntimeLibs/CMakeLists.txt
M bolt/lib/Target/AArch64/CMakeLists.txt
M bolt/lib/Target/RISCV/CMakeLists.txt
M bolt/lib/Target/X86/CMakeLists.txt
M bolt/lib/Utils/CMakeLists.txt
M bolt/test/AArch64/pad-before-funcs.s
M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
M clang-tools-extra/clang-tidy/ClangTidyOptions.h
M clang-tools-extra/clang-tidy/bugprone/UnhandledSelfAssignmentCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnusedLocalNonTrivialVariableCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.cpp
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
M clang-tools-extra/clang-tidy/readability/UseStdMinMaxCheck.cpp
M clang-tools-extra/clangd/HeuristicResolver.h
M clang-tools-extra/clangd/unittests/CMakeLists.txt
M clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
A clang-tools-extra/clangd/unittests/HeuristicResolverTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-local-non-trivial-variable.rst
M clang-tools-extra/include-cleaner/lib/Analysis.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unhandled-self-assignment.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-local-non-trivial-variable-name-independence.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-consteval.cpp
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_cursor.py
M clang/bindings/python/tests/cindex/test_type.py
M clang/cmake/modules/AddClang.cmake
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/LibASTMatchersReference.html
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/UndefinedBehaviorSanitizer.rst
M clang/docs/analyzer/checkers.rst
M clang/include/clang-c/Index.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/StmtOpenACC.h
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
M clang/include/clang/Analysis/FlowSensitive/CachedConstAccessorsLattice.h
M clang/include/clang/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.h
M clang/include/clang/Analysis/FlowSensitive/SmartPointerAccessorCaching.h
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/BuiltinsSPIRV.td
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/OpenACCClauses.def
M clang/include/clang/Basic/Sanitizers.h
M clang/include/clang/Basic/StmtNodes.td
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/arm_sme.td
M clang/include/clang/CodeGen/BackendUtil.h
M clang/include/clang/Driver/Driver.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Driver/SanitizerArgs.h
M clang/include/clang/Format/Format.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaARM.h
M clang/include/clang/Sema/SemaOpenACC.h
M clang/include/clang/Sema/SemaSYCL.h
M clang/include/clang/Sema/Template.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
M clang/include/module.modulemap
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/ParentMap.cpp
M clang/lib/AST/RecordLayoutBuilder.cpp
M clang/lib/AST/StmtOpenACC.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
M clang/lib/Analysis/FlowSensitive/SmartPointerAccessorCaching.cpp
M clang/lib/Basic/Sanitizers.cpp
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/OSTargets.cpp
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/Basic/Targets/X86.cpp
M clang/lib/Basic/Targets/X86.h
M clang/lib/CodeGen/BackendConsumer.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CGObjC.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/CodeGenPGO.h
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/lib/CodeGen/CoverageMappingGen.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
M clang/lib/CodeGen/SanitizerMetadata.cpp
M clang/lib/CodeGen/Targets/NVPTX.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/NetBSD.cpp
M clang/lib/Driver/ToolChains/SPIRV.cpp
M clang/lib/Driver/ToolChains/SPIRV.h
M clang/lib/Driver/ToolChains/SYCL.cpp
M clang/lib/Driver/ToolChains/SYCL.h
M clang/lib/Format/MatchFilePath.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/TokenAnnotator.h
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Headers/amxintrin.h
M clang/lib/Headers/cuda_wrappers/cmath
M clang/lib/Headers/hlsl/hlsl_detail.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Headers/intrin.h
M clang/lib/Lex/InitHeaderSearch.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Sema/CheckExprLifetime.cpp
M clang/lib/Sema/CheckExprLifetime.h
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaSYCL.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
M clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
M clang/lib/StaticAnalyzer/Core/RangedConstraintManager.cpp
M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
M clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
M clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
A clang/test/APINotes/Inputs/Headers/SwiftReturnOwnershipForObjC.apinotes
A clang/test/APINotes/Inputs/Headers/SwiftReturnOwnershipForObjC.h
M clang/test/APINotes/Inputs/Headers/module.modulemap
A clang/test/APINotes/swift-return-ownership.m
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/AST/ByteCode/cxx20.cpp
M clang/test/AST/ByteCode/functions.cpp
M clang/test/AST/ByteCode/literals.cpp
R clang/test/AST/HLSL/HLSLControlFlowHint.hlsl
A clang/test/AST/ast-print-openacc-update-construct.cpp
M clang/test/AST/attr-lifetime-capture-by.cpp
M clang/test/ASTSYCL/ast-dump-sycl-kernel-entry-point.cpp
M clang/test/Analysis/analyzer-enabled-checkers.c
M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
M clang/test/Analysis/z3/crosscheck-statistics.c
M clang/test/CXX/drs/cwg23xx.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg27xx.cpp
M clang/test/CXX/expr/expr.const/p2-0x.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/nested-requirement.cpp
M clang/test/CXX/expr/expr.unary/expr.delete/p10.cpp
M clang/test/CXX/temp/temp.constr/temp.constr.atomic/constrant-satisfaction-conversions.cpp
M clang/test/CodeGen/AArch64/fmv-dependencies.c
A clang/test/CodeGen/AArch64/fmv-features.c
A clang/test/CodeGen/AArch64/fmv-priority.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_state_funs.c
M clang/test/CodeGen/X86/amx_api.c
A clang/test/CodeGen/X86/amx_tile.c
M clang/test/CodeGen/allow-ubsan-check.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGen/catch-nullptr-and-nonzero-offset-when-nullptr-is-defined.c
M clang/test/CodeGen/catch-nullptr-and-nonzero-offset.c
M clang/test/CodeGen/catch-pointer-overflow-volatile.c
M clang/test/CodeGen/catch-pointer-overflow.c
M clang/test/CodeGen/nvptx_attributes.c
M clang/test/CodeGen/sanitize-type-globals.cpp
M clang/test/CodeGen/tbaa-pointers.c
M clang/test/CodeGen/ubsan-pointer-overflow.c
M clang/test/CodeGen/xcore-abi.c
M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
M clang/test/CodeGenCUDA/amdgpu-kernel-attrs.cu
M clang/test/CodeGenCUDA/device-fun-linkage.cu
M clang/test/CodeGenCUDA/grid-constant.cu
M clang/test/CodeGenCUDA/offload_via_llvm.cu
M clang/test/CodeGenCUDA/ptx-kernels.cu
M clang/test/CodeGenCUDA/usual-deallocators.cu
M clang/test/CodeGenHLSL/ArrayTemporary.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/OutputArguments.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/standard_conversion_sequences.hlsl
R clang/test/CodeGenHLSL/HLSLControlFlowHint.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-subscript.hlsl
M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-lib.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-ps.hlsl
M clang/test/CodeGenHLSL/builtins/WaveReadLaneAt.hlsl
M clang/test/CodeGenHLSL/builtins/abs.hlsl
M clang/test/CodeGenHLSL/builtins/acos.hlsl
M clang/test/CodeGenHLSL/builtins/asdouble.hlsl
M clang/test/CodeGenHLSL/builtins/asin.hlsl
M clang/test/CodeGenHLSL/builtins/atan.hlsl
M clang/test/CodeGenHLSL/builtins/atan2.hlsl
M clang/test/CodeGenHLSL/builtins/ceil.hlsl
M clang/test/CodeGenHLSL/builtins/clamp.hlsl
M clang/test/CodeGenHLSL/builtins/clip.hlsl
M clang/test/CodeGenHLSL/builtins/cos.hlsl
M clang/test/CodeGenHLSL/builtins/cosh.hlsl
M clang/test/CodeGenHLSL/builtins/cross.hlsl
M clang/test/CodeGenHLSL/builtins/degrees.hlsl
A clang/test/CodeGenHLSL/builtins/distance.hlsl
M clang/test/CodeGenHLSL/builtins/dot-builtin.hlsl
M clang/test/CodeGenHLSL/builtins/dot.hlsl
M clang/test/CodeGenHLSL/builtins/exp.hlsl
M clang/test/CodeGenHLSL/builtins/exp2.hlsl
M clang/test/CodeGenHLSL/builtins/floor.hlsl
M clang/test/CodeGenHLSL/builtins/fmod.hlsl
M clang/test/CodeGenHLSL/builtins/frac.hlsl
M clang/test/CodeGenHLSL/builtins/length.hlsl
M clang/test/CodeGenHLSL/builtins/lerp-builtin.hlsl
M clang/test/CodeGenHLSL/builtins/lerp.hlsl
M clang/test/CodeGenHLSL/builtins/log.hlsl
M clang/test/CodeGenHLSL/builtins/log10.hlsl
M clang/test/CodeGenHLSL/builtins/log2.hlsl
M clang/test/CodeGenHLSL/builtins/mad.hlsl
M clang/test/CodeGenHLSL/builtins/max.hlsl
M clang/test/CodeGenHLSL/builtins/min.hlsl
M clang/test/CodeGenHLSL/builtins/normalize.hlsl
M clang/test/CodeGenHLSL/builtins/pow.hlsl
M clang/test/CodeGenHLSL/builtins/radians.hlsl
M clang/test/CodeGenHLSL/builtins/rcp.hlsl
M clang/test/CodeGenHLSL/builtins/round.hlsl
M clang/test/CodeGenHLSL/builtins/rsqrt.hlsl
M clang/test/CodeGenHLSL/builtins/saturate.hlsl
M clang/test/CodeGenHLSL/builtins/sin.hlsl
M clang/test/CodeGenHLSL/builtins/sinh.hlsl
M clang/test/CodeGenHLSL/builtins/sqrt.hlsl
M clang/test/CodeGenHLSL/builtins/step.hlsl
M clang/test/CodeGenHLSL/builtins/tan.hlsl
M clang/test/CodeGenHLSL/builtins/tanh.hlsl
M clang/test/CodeGenHLSL/builtins/trunc.hlsl
M clang/test/CodeGenHLSL/float3.hlsl
M clang/test/CodeGenHLSL/this-reference.hlsl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12.cl
M clang/test/CodeGenOpenCL/preserve_vec3.cl
M clang/test/CodeGenOpenCL/ptx-calls.cl
M clang/test/CodeGenOpenCL/ptx-kernels.cl
M clang/test/CodeGenOpenCL/reflect.cl
A clang/test/Driver/Inputs/MacOSX15.1.sdk/embedded/usr/include/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/embedded/usr/local/include/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/usr/include/c++/v1/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/usr/local/include/.keep
A clang/test/Driver/Inputs/config-zos/clang.cfg
A clang/test/Driver/Inputs/config-zos/def.cfg
A clang/test/Driver/Inputs/config-zos/tst/def.cfg
M clang/test/Driver/amdgpu-openmp-toolchain.c
A clang/test/Driver/config-zos.c
A clang/test/Driver/config-zos1.c
M clang/test/Driver/cuda-arch-translation.cu
M clang/test/Driver/cuda-bindings.cu
M clang/test/Driver/cuda-options.cu
M clang/test/Driver/cuda-output-asm.cu
A clang/test/Driver/darwin-embedded-search-paths-libcxx.c
A clang/test/Driver/darwin-embedded-search-paths.c
M clang/test/Driver/dxc_spirv.hlsl
M clang/test/Driver/fsanitize.c
M clang/test/Driver/lto.c
M clang/test/Driver/netbsd.c
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Driver/riscv-cpus.c
M clang/test/Driver/spirv-openmp-toolchain.c
M clang/test/Driver/spirv-toolchain.cl
M clang/test/Driver/sycl-offload-jit.cpp
M clang/test/Driver/uefi-constructed-args.c
M clang/test/Headers/gpuintrin.c
M clang/test/Misc/target-invalid-cpu-note/riscv.c
A clang/test/OpenMP/parallel_masked_taskloop_codegen.c
M clang/test/Parser/namespace-attributes.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-constructs.c
M clang/test/Preprocessor/macho-embedded-predefines.c
M clang/test/Sema/aarch64-sme-func-attrs-without-target-feature.cpp
M clang/test/Sema/varargs.c
M clang/test/Sema/warn-lifetime-analysis-capture-by.cpp
A clang/test/SemaCUDA/constexpr-virtual-func.cu
M clang/test/SemaCXX/attr-lifetimebound.cpp
M clang/test/SemaCXX/concept-crash-on-diagnostic.cpp
M clang/test/SemaCXX/constant-expression-cxx11.cpp
M clang/test/SemaCXX/constant-expression-cxx14.cpp
M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
M clang/test/SemaCXX/cxx23-assume.cpp
M clang/test/SemaCXX/cxx2a-destroying-delete.cpp
M clang/test/SemaCXX/cxx2c-fold-exprs.cpp
M clang/test/SemaCXX/lambda-unevaluated.cpp
M clang/test/SemaCXX/noexcept-destroying-delete.cpp
A clang/test/SemaCXX/opaque-enum-declaration-in-class-template.cpp
A clang/test/SemaHLSL/BuiltIns/distance-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/length-errors.hlsl
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
M clang/test/SemaOpenACC/combined-construct-self-ast.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
A clang/test/SemaOpenACC/update-construct-ast.cpp
A clang/test/SemaOpenACC/update-construct.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-appertainment.cpp
M clang/test/SemaSYCL/sycl-kernel-entry-point-attr-grammar.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-kernel-name-module.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-kernel-name-pch.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-kernel-name.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-sfinae.cpp
M clang/test/SemaTemplate/concepts-recursive-inst.cpp
M clang/test/SemaTemplate/concepts.cpp
M clang/test/SemaTemplate/cxx2a-constraint-exprs.cpp
M clang/test/SemaTemplate/deduction-guide.cpp
M clang/test/SemaTemplate/nested-implicit-deduction-guides.cpp
M clang/test/TableGen/target-builtins-prototype-parser.td
M clang/test/utils/update_cc_test_checks/Inputs/basic-cplusplus.cpp
M clang/test/utils/update_cc_test_checks/Inputs/basic-cplusplus.cpp.expected
A clang/test/utils/update_cc_test_checks/Inputs/c-symbol-mangling.c
A clang/test/utils/update_cc_test_checks/Inputs/c-symbol-mangling.c.expected
A clang/test/utils/update_cc_test_checks/c-symbol-mangling.test
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
M clang/tools/driver/driver.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CXCursor.cpp
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
M clang/unittests/Analysis/FlowSensitive/CachedConstAccessorsLatticeTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M clang/unittests/Format/FormatTestSelective.cpp
M clang/unittests/StaticAnalyzer/Z3CrosscheckOracleTest.cpp
M clang/utils/TableGen/SveEmitter.cpp
M clang/www/cxx_dr_status.html
M clang/www/make_cxx_dr_status
M compiler-rt/cmake/Modules/AddCompilerRT.cmake
M compiler-rt/cmake/base-config-ix.cmake
M compiler-rt/lib/gwp_asan/tests/harness.h
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_allocator_dlsym.h
M compiler-rt/lib/tysan/tysan.cpp
M compiler-rt/lib/tysan/tysan_flags.inc
M compiler-rt/lib/tysan/tysan_interceptors.cpp
M compiler-rt/lib/ubsan/ubsan_value.h
M compiler-rt/test/orc/TestCases/Darwin/arm64/objc-imageinfo.S
M compiler-rt/test/orc/TestCases/Darwin/x86-64/objc-imageinfo.S
A compiler-rt/test/tysan/print_stacktrace.c
M compiler-rt/test/ubsan/TestCases/Pointer/nullptr-and-nonzero-offset-constants.cpp
M compiler-rt/test/ubsan/TestCases/Pointer/nullptr-and-nonzero-offset-summary.cpp
M compiler-rt/test/ubsan/TestCases/Pointer/nullptr-and-nonzero-offset-variable.cpp
M compiler-rt/test/ubsan_minimal/TestCases/nullptr-and-nonzero-offset.c
M flang/docs/Extensions.md
M flang/docs/ParserCombinators.md
M flang/include/flang/Common/format.h
M flang/include/flang/Evaluate/call.h
M flang/include/flang/Evaluate/characteristics.h
M flang/include/flang/Evaluate/constant.h
M flang/include/flang/Evaluate/expression.h
M flang/include/flang/Evaluate/shape.h
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Evaluate/variable.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Dialect/CanonicalizationPatterns.td
M flang/include/flang/Parser/characters.h
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/symbol.h
M flang/lib/Common/Fortran.cpp
M flang/lib/Evaluate/characteristics.cpp
M flang/lib/Evaluate/expression.cpp
M flang/lib/Evaluate/fold-integer.cpp
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Evaluate/shape.cpp
M flang/lib/Evaluate/tools.cpp
M flang/lib/Evaluate/variable.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendAction.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/CMakeLists.txt
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
A flang/lib/Lower/OpenMP/PrivateReductionUtils.cpp
A flang/lib/Lower/OpenMP/PrivateReductionUtils.h
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Optimizer/Builder/CMakeLists.txt
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/StackArrays.cpp
M flang/lib/Parser/basic-parsers.h
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/prescan.cpp
M flang/lib/Parser/token-parsers.h
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/assignment.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/definable.cpp
M flang/lib/Semantics/definable.h
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/pointer-assignment.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/module/__fortran_builtins.f90
M flang/module/__fortran_type_info.f90
M flang/runtime/derived.cpp
M flang/runtime/edit-input.cpp
A flang/test/Driver/fsave-main-program.f90
M flang/test/Driver/mlir-pass-pipeline.f90
M flang/test/Driver/parse-error.ll
M flang/test/Fir/basic-program.fir
M flang/test/Fir/convert-fold.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-sum.fir
M flang/test/Integration/OpenMP/parallel-private-reduction-worstcase.f90
M flang/test/Integration/debug-local-var-2.f90
A flang/test/Lower/CUDA/cuda-cdevloc.cuf
M flang/test/Lower/OpenMP/derived-type-allocatable.f90
A flang/test/Lower/OpenMP/firstprivate-alloc-comp.f90
M flang/test/Lower/OpenMP/parallel-reduction-mixed.f90
M flang/test/Lower/array-substring.f90
A flang/test/Lower/fsave-main-program.f90
M flang/test/Lower/vector-subscript-io.f90
A flang/test/Parser/OpenMP/compiler-directive-continuation.f90
M flang/test/Parser/at-process.f
A flang/test/Parser/unparseable.f90
A flang/test/Preprocessing/bug129131.F
A flang/test/Semantics/assign16.f90
A flang/test/Semantics/bug121718.f90
M flang/test/Semantics/call04.f90
M flang/test/Semantics/cuf10.cuf
M flang/test/Semantics/definable01.f90
M flang/test/Semantics/get_team.f90
M flang/test/Semantics/io07.f90
M flang/test/Semantics/io08.f90
M flang/test/Semantics/lcobound.f90
M flang/test/Semantics/resolve94.f90
M flang/test/Semantics/this_image01.f90
M flang/test/Semantics/ucobound.f90
M flang/test/Transforms/stack-arrays.fir
M flang/unittests/Runtime/LogicalFormatTest.cpp
M libc/cmake/modules/LLVMLibCHeaderRules.cmake
M libc/config/baremetal/config.json
A libc/config/gpu/amdgpu/config.json
A libc/config/gpu/amdgpu/entrypoints.txt
A libc/config/gpu/amdgpu/headers.txt
R libc/config/gpu/config.json
R libc/config/gpu/entrypoints.txt
R libc/config/gpu/headers.txt
A libc/config/gpu/nvptx/config.json
A libc/config/gpu/nvptx/entrypoints.txt
A libc/config/gpu/nvptx/headers.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/CMakeLists.txt
M libc/docs/headers/index.rst
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/struct_iovec.h
A libc/hdr/types/struct_tm.h
M libc/include/CMakeLists.txt
M libc/include/__llvm-libc-common.h
M libc/include/arpa/inet.yaml
M libc/include/assert.yaml
M libc/include/complex.yaml
M libc/include/ctype.yaml
M libc/include/dirent.yaml
M libc/include/dlfcn.yaml
M libc/include/elf.yaml
M libc/include/errno.yaml
M libc/include/fcntl.yaml
M libc/include/features.yaml
M libc/include/fenv.yaml
M libc/include/float.yaml
M libc/include/inttypes.yaml
M libc/include/limits.yaml
M libc/include/link.yaml
M libc/include/locale.yaml
M libc/include/malloc.yaml
M libc/include/math.yaml
M libc/include/pthread.yaml
M libc/include/sched.yaml
M libc/include/search.yaml
M libc/include/setjmp.yaml
M libc/include/signal.yaml
M libc/include/spawn.yaml
M libc/include/stdbit.yaml
M libc/include/stdckdint.yaml
M libc/include/stdfix.yaml
M libc/include/stdint.yaml
M libc/include/stdio.yaml
M libc/include/stdlib.yaml
M libc/include/string.yaml
M libc/include/strings.yaml
M libc/include/sys/auxv.yaml
M libc/include/sys/epoll.yaml
M libc/include/sys/ioctl.yaml
M libc/include/sys/mman.yaml
M libc/include/sys/prctl.yaml
M libc/include/sys/random.yaml
M libc/include/sys/resource.yaml
M libc/include/sys/select.yaml
M libc/include/sys/sendfile.yaml
M libc/include/sys/socket.yaml
M libc/include/sys/stat.yaml
M libc/include/sys/statvfs.yaml
M libc/include/sys/syscall.yaml
M libc/include/sys/time.yaml
M libc/include/sys/types.yaml
A libc/include/sys/uio.h.def
A libc/include/sys/uio.yaml
M libc/include/sys/utsname.yaml
M libc/include/sys/wait.yaml
M libc/include/termios.yaml
M libc/include/threads.yaml
M libc/include/time.yaml
M libc/include/uchar.yaml
M libc/include/unistd.yaml
M libc/include/wchar.yaml
M libc/src/CMakeLists.txt
M libc/src/__support/CMakeLists.txt
M libc/src/__support/File/file.cpp
M libc/src/__support/File/file.h
M libc/src/__support/GPU/CMakeLists.txt
R libc/src/__support/GPU/amdgpu/CMakeLists.txt
R libc/src/__support/GPU/amdgpu/utils.h
R libc/src/__support/GPU/generic/CMakeLists.txt
R libc/src/__support/GPU/generic/utils.h
R libc/src/__support/GPU/nvptx/CMakeLists.txt
R libc/src/__support/GPU/nvptx/utils.h
M libc/src/__support/GPU/utils.h
M libc/src/__support/fixedvector.h
M libc/src/__support/threads/thread.cpp
R libc/src/gpu/CMakeLists.txt
R libc/src/gpu/rpc_host_call.cpp
R libc/src/gpu/rpc_host_call.h
M libc/src/pthread/pthread_condattr_init.cpp
M libc/src/pthread/pthread_condattr_setclock.cpp
M libc/src/stdlib/exit_handler.h
M libc/src/sys/CMakeLists.txt
A libc/src/sys/uio/CMakeLists.txt
A libc/src/sys/uio/linux/CMakeLists.txt
A libc/src/sys/uio/linux/writev.cpp
A libc/src/sys/uio/writev.h
M libc/src/time/CMakeLists.txt
M libc/src/time/asctime.cpp
M libc/src/time/asctime.h
M libc/src/time/asctime_r.cpp
M libc/src/time/asctime_r.h
M libc/src/time/ctime.cpp
M libc/src/time/ctime_r.cpp
M libc/src/time/difftime.h
M libc/src/time/gmtime.h
M libc/src/time/gmtime_r.h
M libc/src/time/gpu/clock.cpp
M libc/src/time/gpu/nanosleep.cpp
M libc/src/time/mktime.cpp
M libc/src/time/mktime.h
M libc/src/time/time.cpp
A libc/src/time/time_constants.h
M libc/src/time/time_utils.cpp
M libc/src/time/time_utils.h
M libc/test/UnitTest/ExecuteFunctionUnix.cpp
M libc/test/UnitTest/FPExceptMatcher.cpp
M libc/test/UnitTest/LibcDeathTestExecutors.cpp
M libc/test/src/sys/CMakeLists.txt
A libc/test/src/sys/uio/CMakeLists.txt
A libc/test/src/sys/uio/writev_test.cpp
M libc/test/src/time/CMakeLists.txt
M libc/test/src/time/TmHelper.h
M libc/test/src/time/TmMatcher.h
M libc/test/src/time/asctime_r_test.cpp
M libc/test/src/time/clock_gettime_test.cpp
M libc/test/src/time/clock_test.cpp
M libc/test/src/time/ctime_r_test.cpp
M libc/test/src/time/difftime_test.cpp
M libc/test/src/time/gettimeofday_test.cpp
M libc/test/src/time/gmtime_r_test.cpp
M libc/test/src/time/gmtime_test.cpp
M libc/test/src/time/mktime_test.cpp
M libc/test/src/time/nanosleep_test.cpp
A libc/utils/docgen/aio.yaml
A libc/utils/docgen/net/if.yaml
A libc/utils/docgen/netinet/in.yaml
M libc/utils/hdrgen/README.rst
M libc/utils/hdrgen/header.py
A libc/utils/hdrgen/main.py
M libc/utils/hdrgen/tests/input/test_small.yaml
M libc/utils/hdrgen/tests/test_integration.py
M libc/utils/hdrgen/yaml_to_classes.py
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/Hardening.rst
M libcxx/docs/ReleaseNotes/19.rst
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/docs/TestingLibcxx.rst
M libcxx/include/CMakeLists.txt
M libcxx/include/__algorithm/comp_ref_type.h
M libcxx/include/__algorithm/copy.h
M libcxx/include/__algorithm/iterator_operations.h
M libcxx/include/__algorithm/mismatch.h
M libcxx/include/__algorithm/move.h
A libcxx/include/__algorithm/radix_sort.h
M libcxx/include/__algorithm/ranges_iterator_concept.h
M libcxx/include/__algorithm/ranges_unique_copy.h
M libcxx/include/__algorithm/simd_utils.h
M libcxx/include/__algorithm/sort.h
M libcxx/include/__algorithm/stable_sort.h
M libcxx/include/__algorithm/three_way_comp_ref_type.h
M libcxx/include/__algorithm/unwrap_iter.h
M libcxx/include/__atomic/aliases.h
M libcxx/include/__atomic/atomic.h
M libcxx/include/__atomic/atomic_ref.h
M libcxx/include/__atomic/atomic_sync.h
M libcxx/include/__atomic/contention_t.h
M libcxx/include/__atomic/memory_order.h
M libcxx/include/__bit/bit_log2.h
M libcxx/include/__bit_reference
M libcxx/include/__chrono/formatter.h
M libcxx/include/__chrono/hh_mm_ss.h
M libcxx/include/__chrono/parser_std_format_spec.h
M libcxx/include/__chrono/weekday.h
M libcxx/include/__chrono/zoned_time.h
M libcxx/include/__compare/ordering.h
M libcxx/include/__compare/synth_three_way.h
M libcxx/include/__config
M libcxx/include/__cxx03/__chrono/weekday.h
M libcxx/include/__cxx03/__functional/function.h
M libcxx/include/__cxx03/future
M libcxx/include/__cxx03/regex
M libcxx/include/__exception/exception_ptr.h
M libcxx/include/__expected/expected.h
M libcxx/include/__expected/unexpected.h
M libcxx/include/__filesystem/directory_entry.h
M libcxx/include/__filesystem/path.h
M libcxx/include/__flat_map/flat_map.h
M libcxx/include/__flat_map/key_value_iterator.h
M libcxx/include/__format/buffer.h
M libcxx/include/__format/concepts.h
M libcxx/include/__format/container_adaptor.h
M libcxx/include/__format/format_arg.h
M libcxx/include/__format/format_arg_store.h
M libcxx/include/__format/format_functions.h
M libcxx/include/__format/formatter_floating_point.h
M libcxx/include/__format/formatter_string.h
M libcxx/include/__format/range_default_formatter.h
M libcxx/include/__format/unicode.h
M libcxx/include/__functional/binary_function.h
M libcxx/include/__functional/bind.h
M libcxx/include/__functional/boyer_moore_searcher.h
M libcxx/include/__functional/function.h
M libcxx/include/__functional/not_fn.h
M libcxx/include/__functional/perfect_forward.h
M libcxx/include/__functional/unary_function.h
M libcxx/include/__hash_table
M libcxx/include/__iterator/aliasing_iterator.h
M libcxx/include/__iterator/concepts.h
M libcxx/include/__iterator/insert_iterator.h
M libcxx/include/__iterator/iterator_traits.h
M libcxx/include/__iterator/projected.h
M libcxx/include/__iterator/ranges_iterator_traits.h
M libcxx/include/__iterator/reverse_iterator.h
M libcxx/include/__iterator/segmented_iterator.h
M libcxx/include/__locale
M libcxx/include/__locale_dir/locale_base_api.h
R libcxx/include/__locale_dir/locale_base_api/bsd_locale_defaults.h
M libcxx/include/__locale_dir/support/bsd_like.h
M libcxx/include/__locale_dir/support/windows.h
M libcxx/include/__mdspan/extents.h
M libcxx/include/__memory/allocation_guard.h
M libcxx/include/__memory/pointer_traits.h
M libcxx/include/__memory/shared_ptr.h
M libcxx/include/__memory/unique_ptr.h
M libcxx/include/__memory/unique_temporary_buffer.h
M libcxx/include/__node_handle
M libcxx/include/__pstl/backend_fwd.h
M libcxx/include/__pstl/dispatch.h
M libcxx/include/__ranges/chunk_by_view.h
M libcxx/include/__ranges/drop_view.h
M libcxx/include/__ranges/drop_while_view.h
M libcxx/include/__ranges/elements_view.h
M libcxx/include/__ranges/filter_view.h
M libcxx/include/__ranges/iota_view.h
M libcxx/include/__ranges/join_view.h
M libcxx/include/__ranges/lazy_split_view.h
M libcxx/include/__ranges/repeat_view.h
M libcxx/include/__ranges/reverse_view.h
M libcxx/include/__ranges/split_view.h
M libcxx/include/__ranges/subrange.h
M libcxx/include/__ranges/take_view.h
M libcxx/include/__ranges/take_while_view.h
M libcxx/include/__ranges/transform_view.h
M libcxx/include/__split_buffer
M libcxx/include/__stop_token/stop_state.h
M libcxx/include/__support/xlocale/__posix_l_fallback.h
M libcxx/include/__system_error/system_error.h
M libcxx/include/__thread/support/pthread.h
M libcxx/include/__tuple/make_tuple_types.h
M libcxx/include/__tuple/sfinae_helpers.h
M libcxx/include/__tuple/tuple_size.h
M libcxx/include/__type_traits/add_lvalue_reference.h
M libcxx/include/__type_traits/add_pointer.h
M libcxx/include/__type_traits/add_rvalue_reference.h
M libcxx/include/__type_traits/aligned_storage.h
M libcxx/include/__type_traits/common_reference.h
M libcxx/include/__type_traits/common_type.h
M libcxx/include/__type_traits/conjunction.h
M libcxx/include/__type_traits/copy_cv.h
M libcxx/include/__type_traits/copy_cvref.h
M libcxx/include/__type_traits/disjunction.h
M libcxx/include/__type_traits/invoke.h
M libcxx/include/__type_traits/is_always_bitcastable.h
M libcxx/include/__type_traits/is_char_like_type.h
M libcxx/include/__type_traits/is_equality_comparable.h
M libcxx/include/__type_traits/is_execution_policy.h
M libcxx/include/__type_traits/is_primary_template.h
M libcxx/include/__type_traits/is_same.h
M libcxx/include/__type_traits/is_swappable.h
M libcxx/include/__type_traits/make_32_64_or_128_bit.h
M libcxx/include/__type_traits/make_const_lvalue_ref.h
M libcxx/include/__type_traits/make_signed.h
M libcxx/include/__type_traits/make_unsigned.h
M libcxx/include/__type_traits/maybe_const.h
M libcxx/include/__type_traits/remove_all_extents.h
M libcxx/include/__type_traits/remove_const.h
M libcxx/include/__type_traits/remove_const_ref.h
M libcxx/include/__type_traits/remove_cv.h
M libcxx/include/__type_traits/remove_cvref.h
M libcxx/include/__type_traits/remove_extent.h
M libcxx/include/__type_traits/remove_pointer.h
M libcxx/include/__type_traits/remove_reference.h
M libcxx/include/__type_traits/remove_volatile.h
M libcxx/include/__type_traits/unwrap_ref.h
M libcxx/include/__type_traits/void_t.h
M libcxx/include/__utility/exception_guard.h
M libcxx/include/__utility/forward_like.h
M libcxx/include/__utility/in_place.h
M libcxx/include/__utility/integer_sequence.h
M libcxx/include/__utility/move.h
M libcxx/include/__utility/pair.h
M libcxx/include/__utility/swap.h
M libcxx/include/__vector/vector.h
M libcxx/include/__vector/vector_bool.h
M libcxx/include/any
M libcxx/include/array
M libcxx/include/barrier
M libcxx/include/bitset
M libcxx/include/ccomplex
M libcxx/include/ciso646
M libcxx/include/complex
M libcxx/include/cstdalign
M libcxx/include/cstdbool
M libcxx/include/ctgmath
M libcxx/include/deque
M libcxx/include/experimental/__simd/scalar.h
M libcxx/include/experimental/__simd/simd.h
M libcxx/include/experimental/__simd/simd_mask.h
M libcxx/include/experimental/__simd/vec_ext.h
M libcxx/include/forward_list
M libcxx/include/functional
M libcxx/include/future
M libcxx/include/ios
M libcxx/include/locale
M libcxx/include/module.modulemap
M libcxx/include/optional
M libcxx/include/ratio
M libcxx/include/regex
M libcxx/include/source_location
M libcxx/include/string
M libcxx/include/tuple
M libcxx/include/variant
M libcxx/include/version
M libcxx/src/experimental/tzdb.cpp
M libcxx/src/filesystem/directory_iterator.cpp
M libcxx/src/filesystem/error.h
M libcxx/src/filesystem/file_descriptor.h
M libcxx/src/filesystem/operations.cpp
M libcxx/src/filesystem/posix_compat.h
M libcxx/src/include/overridable_function.h
M libcxx/src/locale.cpp
M libcxx/src/new.cpp
M libcxx/src/print.cpp
M libcxx/src/system_error.cpp
M libcxx/test/benchmarks/numeric/gcd.bench.cpp
A libcxx/test/libcxx/containers/sequences/forwardlist/assert.pass.cpp
A libcxx/test/libcxx/containers/sequences/vector.bool/assert.pass.cpp
A libcxx/test/libcxx/diagnostics/system_error_win_codes.pass.cpp
M libcxx/test/libcxx/gdb/gdb_pretty_printer_test.py
M libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp
A libcxx/test/libcxx/utilities/function.objects/func.not.fn/not_fn.nttp.compile.pass.cpp
A libcxx/test/libcxx/utilities/function.objects/func.not.fn/not_fn.nttp.nodiscard.verify.cpp
M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort.pass.cpp
M libcxx/test/std/atomics/atomics.ref/exchange.pass.cpp
A libcxx/test/std/containers/sequences/vector.bool/at.pass.cpp
A libcxx/test/std/containers/sequences/vector.bool/at_const.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/flip.pass.cpp
M libcxx/test/std/containers/sequences/vector/vector.data/data_const.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.compare/eq_error_code_error_code.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.derived/message.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/system_category.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/file_type_obs.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/status.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/symlink_status.pass.cpp
A libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file_procfs.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
A libcxx/test/std/utilities/function.objects/func.not_fn/not_fn.nttp.pass.cpp
A libcxx/test/std/utilities/function.objects/func.not_fn/not_fn.nttp.verify.cpp
M libcxx/test/std/utilities/template.bitset/bitset.members/index_const.pass.cpp
M libcxx/test/std/utilities/template.bitset/bitset.members/nonstdmem.uglified.compile.pass.cpp
M libcxx/test/support/filesystem_test_helper.h
M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
M libcxx/test/tools/clang_tidy_checks/libcpp_module.cpp
A libcxx/test/tools/clang_tidy_checks/nodebug_on_aliases.cpp
A libcxx/test/tools/clang_tidy_checks/nodebug_on_aliases.hpp
M libcxx/test/tools/clang_tidy_checks/uglify_attributes.cpp
A libcxx/test/tools/clang_tidy_checks/utilities.hpp
M libcxx/utils/gdb/libcxx/printers.py
M libcxx/utils/generate_feature_test_macro_components.py
A libcxx/utils/libcxx-benchmark-json
A libcxx/utils/libcxx-compare-benchmarks
M libcxxabi/src/stdlib_new_delete.cpp
M lld/COFF/Chunks.cpp
M lld/COFF/Chunks.h
M lld/COFF/Driver.h
M lld/COFF/Writer.cpp
M lld/Common/BPSectionOrdererBase.cpp
M lld/ELF/SymbolTable.cpp
M lld/MachO/BPSectionOrderer.cpp
M lld/MachO/BPSectionOrderer.h
M lld/MachO/ConcatOutputSection.cpp
M lld/MachO/ConcatOutputSection.h
M lld/MachO/MapFile.cpp
M lld/MachO/OutputSection.h
M lld/MachO/SectionPriorities.cpp
M lld/MachO/SectionPriorities.h
M lld/MachO/Writer.cpp
M lld/include/lld/Common/BPSectionOrdererBase.h
M lld/test/COFF/arm64x-loadconfig.s
A lld/test/COFF/baserel-sort.yaml
M lld/test/MachO/arm64-thunks.s
M lldb/examples/python/crashlog.py
M lldb/include/lldb/Core/Progress.h
M lldb/include/lldb/Host/HostInfo.h
M lldb/include/lldb/Symbol/Block.h
M lldb/include/lldb/Symbol/Function.h
M lldb/include/lldb/Target/MemoryRegionInfo.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/source/API/SBBlock.cpp
M lldb/source/API/SBFunction.cpp
M lldb/source/Breakpoint/BreakpointResolver.cpp
M lldb/source/Breakpoint/BreakpointResolverName.cpp
M lldb/source/Core/Progress.cpp
M lldb/source/Core/SearchFilter.cpp
M lldb/source/Expression/DWARFExpressionList.cpp
M lldb/source/Expression/IRExecutionUnit.cpp
M lldb/source/Host/common/Host.cpp
M lldb/source/Host/freebsd/Host.cpp
M lldb/source/Host/linux/Host.cpp
M lldb/source/Host/netbsd/HostNetBSD.cpp
M lldb/source/Host/openbsd/Host.cpp
M lldb/source/Host/posix/ConnectionFileDescriptorPosix.cpp
M lldb/source/Host/posix/FileSystemPosix.cpp
M lldb/source/Plugins/Architecture/Mips/ArchitectureMips.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
M lldb/source/Plugins/InstrumentationRuntime/ASanLibsanitizers/InstrumentationRuntimeASanLibsanitizers.cpp
M lldb/source/Plugins/InstrumentationRuntime/Utility/ReportRetriever.cpp
M lldb/source/Plugins/Language/ObjC/Cocoa.cpp
M lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp
M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
M lldb/source/Plugins/Platform/Android/PlatformAndroidRemoteGDBServer.cpp
M lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Symbol/Block.cpp
M lldb/source/Symbol/Function.cpp
M lldb/source/Symbol/SymbolContext.cpp
M lldb/source/Symbol/Variable.cpp
M lldb/source/Target/StackFrame.cpp
M lldb/source/Target/ThreadPlanStepInRange.cpp
M lldb/source/ValueObject/ValueObjectVariable.cpp
M lldb/unittests/Core/ProgressReportTest.cpp
M lldb/unittests/Utility/RangeMapTest.cpp
M llvm/Maintainers.md
M llvm/cmake/modules/AddLLVM.cmake
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/DirectX/DXILResources.rst
M llvm/docs/GettingInvolved.rst
M llvm/docs/GettingStarted.rst
M llvm/docs/LangRef.rst
M llvm/docs/NVPTXUsage.rst
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/ADT/STLFunctionalExtras.h
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/include/llvm/Analysis/ValueTracking.h
M llvm/include/llvm/Analysis/VectorUtils.h
M llvm/include/llvm/BinaryFormat/ELF.h
A llvm/include/llvm/BinaryFormat/ELFRelocs/RISCV_nonstandard.def
M llvm/include/llvm/CodeGen/AsmPrinter.h
M llvm/include/llvm/CodeGen/ReachingDefAnalysis.h
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/DebugInfo/GSYM/FunctionInfo.h
M llvm/include/llvm/DebugInfo/GSYM/GsymReader.h
M llvm/include/llvm/DebugInfo/GSYM/MergedFunctionsInfo.h
M llvm/include/llvm/ExecutionEngine/Orc/Core.h
M llvm/include/llvm/ExecutionEngine/Orc/JITLinkReentryTrampolines.h
M llvm/include/llvm/ExecutionEngine/Orc/LazyReexports.h
M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
M llvm/include/llvm/ExecutionEngine/Orc/TaskDispatch.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
R llvm/include/llvm/IR/NVVMIntrinsicFlags.h
A llvm/include/llvm/IR/NVVMIntrinsicUtils.h
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/IR/VectorTypeUtils.h
M llvm/include/llvm/Option/OptTable.h
M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
M llvm/include/llvm/SandboxIR/Context.h
M llvm/include/llvm/SandboxIR/Pass.h
M llvm/include/llvm/SandboxIR/Utils.h
M llvm/include/llvm/Support/Casting.h
M llvm/include/llvm/Support/Recycler.h
M llvm/include/llvm/Support/Timer.h
A llvm/include/llvm/TargetParser/AArch64FeatPriorities.inc
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/include/llvm/TargetParser/Triple.h
M llvm/include/llvm/Transforms/IPO/Attributor.h
M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
M llvm/include/llvm/Transforms/Instrumentation/BoundsChecking.h
M llvm/include/llvm/Transforms/Instrumentation/TypeSanitizer.h
M llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
M llvm/include/llvm/Transforms/Utils/Local.h
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Legality.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Scheduler.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h
M llvm/include/module.modulemap
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/Lint.cpp
M llvm/lib/Analysis/Loads.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
M llvm/lib/CodeGen/MIRSampleProfile.cpp
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
M llvm/lib/CodeGen/MachineBranchProbabilityInfo.cpp
M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/lib/CodeGen/RegisterBankInfo.cpp
M llvm/lib/CodeGen/RegisterCoalescer.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/DebugInfo/GSYM/FunctionInfo.cpp
M llvm/lib/DebugInfo/GSYM/GsymReader.cpp
M llvm/lib/DebugInfo/GSYM/MergedFunctionsInfo.cpp
M llvm/lib/ExecutionEngine/Orc/Core.cpp
M llvm/lib/ExecutionEngine/Orc/JITLinkReentryTrampolines.cpp
M llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
M llvm/lib/ExecutionEngine/Orc/TaskDispatch.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/VectorTypeUtils.cpp
M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
M llvm/lib/ObjCopy/MachO/MachOLayoutBuilder.cpp
M llvm/lib/ObjCopy/MachO/MachOObject.cpp
M llvm/lib/ObjCopy/MachO/MachOObject.h
M llvm/lib/ObjCopy/MachO/MachOReader.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
M llvm/lib/SandboxIR/Context.cpp
M llvm/lib/Support/Timer.cpp
M llvm/lib/Support/Unix/Signals.inc
M llvm/lib/TableGen/TGParser.cpp
M llvm/lib/TableGen/TGParser.h
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64FMV.td
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
M llvm/lib/Target/AArch64/AArch64SystemOperands.td
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp
M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp
M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.h
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCombinerHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCombinerHelper.h
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
A llvm/lib/Target/AMDGPU/AMDGPUPreloadKernArgProlog.cpp
A llvm/lib/Target/AMDGPU/AMDGPUPreloadKernArgProlog.h
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/BUFInstructions.td
M llvm/lib/Target/AMDGPU/CMakeLists.txt
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
M llvm/lib/Target/AMDGPU/MIMGInstructions.td
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/lib/Target/AMDGPU/SMInstructions.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/ARM/ARMSystemRegister.td
M llvm/lib/Target/ARM/Utils/ARMBaseInfo.cpp
M llvm/lib/Target/ARM/Utils/ARMBaseInfo.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/DXILOpLowering.cpp
M llvm/lib/Target/DirectX/DXILResourceAccess.cpp
M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
M llvm/lib/Target/Hexagon/HexagonPatterns.td
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
M llvm/lib/Target/M68k/AsmParser/M68kAsmParser.cpp
M llvm/lib/Target/M68k/Disassembler/M68kDisassembler.cpp
M llvm/lib/Target/M68k/M68kInstrData.td
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXCtorDtorLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXSubtarget.cpp
M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
M llvm/lib/Target/NVPTX/NVVMReflect.cpp
M llvm/lib/Target/RISCV/CMakeLists.txt
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/RISCV.td
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.h
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrFormatsC.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZc.td
A llvm/lib/Target/RISCV/RISCVPfmCounters.td
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/RISCV/RISCVSchedSiFiveP400.td
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
M llvm/lib/Target/SPIRV/CMakeLists.txt
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
R llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.cpp
M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.h
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.h
M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
M llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
M llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/TargetParser/AArch64TargetParser.cpp
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/lib/TargetParser/Triple.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
M llvm/lib/Transforms/IPO/SampleProfile.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/LowerAllowCheckPass.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Instrumentation/TypeSanitizer.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Scalar/LoopVersioningLICM.cpp
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/LoopSimplify.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SeedCollector.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Analysis/CostModel/AArch64/cast.ll
M llvm/test/Analysis/CostModel/AArch64/div.ll
M llvm/test/Analysis/CostModel/AArch64/rem.ll
M llvm/test/Analysis/CostModel/AArch64/shuffle-extract.ll
A llvm/test/Analysis/CostModel/AArch64/sve-div.ll
A llvm/test/Analysis/CostModel/AArch64/sve-rem.ll
M llvm/test/Analysis/CostModel/RISCV/fp-min-max-abs.ll
M llvm/test/Analysis/CostModel/RISCV/fp-sqrt-pow.ll
A llvm/test/Analysis/CostModel/RISCV/reduce-and-i1.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-and.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-max.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-min.ll
M llvm/test/Analysis/CostModel/X86/shuffle-two-src-codesize.ll
M llvm/test/Analysis/CostModel/X86/shuffle-two-src-latency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-two-src-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-two-src.ll
M llvm/test/Analysis/CostModel/X86/vector-insert-value.ll
A llvm/test/Analysis/Lint/abi-attrs.ll
M llvm/test/Analysis/UniformityAnalysis/NVPTX/daorder.ll
M llvm/test/Analysis/UniformityAnalysis/NVPTX/diverge.ll
M llvm/test/Analysis/UniformityAnalysis/NVPTX/hidden_diverge.ll
M llvm/test/Analysis/UniformityAnalysis/NVPTX/irreducible.ll
A llvm/test/Analysis/ValueTracking/implied-condition-samesign.ll
M llvm/test/CodeGen/AArch64/aarch64-dup-ext-crash.ll
M llvm/test/CodeGen/AArch64/arm64-fast-isel-conversion-fallback.ll
M llvm/test/CodeGen/AArch64/arm64-popcnt.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fadd.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fmax.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fmin.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fsub.ll
M llvm/test/CodeGen/AArch64/bf16-instructions.ll
M llvm/test/CodeGen/AArch64/bf16-v8-instructions.ll
A llvm/test/CodeGen/AArch64/complex-deinterleaving-opt-crash.ll
M llvm/test/CodeGen/AArch64/const-shift-of-constmasked.ll
M llvm/test/CodeGen/AArch64/cvt-fp-int-fp.ll
M llvm/test/CodeGen/AArch64/dp1.ll
M llvm/test/CodeGen/AArch64/extract-bits.ll
M llvm/test/CodeGen/AArch64/fpenv.ll
A llvm/test/CodeGen/AArch64/hwasan-zero-ptr.ll
M llvm/test/CodeGen/AArch64/machine-combiner.ll
M llvm/test/CodeGen/AArch64/parity.ll
M llvm/test/CodeGen/AArch64/popcount.ll
M llvm/test/CodeGen/AArch64/register-coalesce-update-subranges-remat.mir
M llvm/test/CodeGen/AArch64/round-fptosi-sat-scalar.ll
A llvm/test/CodeGen/AArch64/sme-intrinsics-state.ll
M llvm/test/CodeGen/AArch64/trampoline.ll
M llvm/test/CodeGen/AArch64/xbfiz.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
A llvm/test/CodeGen/AMDGPU/add64-low-32-bits-known-zero.ll
M llvm/test/CodeGen/AMDGPU/bitop3.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch.ll
M llvm/test/CodeGen/AMDGPU/fma.f16.ll
M llvm/test/CodeGen/AMDGPU/fmed3.ll
M llvm/test/CodeGen/AMDGPU/gfx11-twoaddr-fma.mir
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx940.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.xf32.gfx940.ll
M llvm/test/CodeGen/AMDGPU/minmax.ll
A llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.ll
A llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.mir
A llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-read.mir
M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
M llvm/test/CodeGen/AMDGPU/preload-kernarg-header.ll
M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll
A llvm/test/CodeGen/AMDGPU/prevent-fmul-hoist-ir.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
A llvm/test/CodeGen/AMDGPU/remat-physreg-copy-subreg-extract-already-live-at-def-issue120970.mir
M llvm/test/CodeGen/AMDGPU/s-barrier.ll
M llvm/test/CodeGen/AMDGPU/sdiv64.ll
M llvm/test/CodeGen/AMDGPU/smed3.ll
M llvm/test/CodeGen/AMDGPU/srem64.ll
A llvm/test/CodeGen/AMDGPU/sub64-low-32-bits-known-zero.ll
M llvm/test/CodeGen/AMDGPU/swdev502267-use-after-free-last-chance-recoloring-alloc-succeeds.mir
A llvm/test/CodeGen/AMDGPU/swdev503538-move-to-valu-stack-srd-physreg.ll
M llvm/test/CodeGen/AMDGPU/umed3.ll
M llvm/test/CodeGen/AMDGPU/vector_shuffle.packed.ll
M llvm/test/CodeGen/AMDGPU/waitcnt-meta-instructions.mir
A llvm/test/CodeGen/ARM/sink-store-pre-load-dependency.mir
A llvm/test/CodeGen/DirectX/BufferLoad-sm61.ll
M llvm/test/CodeGen/DirectX/BufferLoad.ll
R llvm/test/CodeGen/DirectX/HLSLControlFlowHint.ll
A llvm/test/CodeGen/DirectX/RawBufferLoad-error64.ll
A llvm/test/CodeGen/DirectX/RawBufferLoad.ll
M llvm/test/CodeGen/DirectX/ResourceAccess/load_typedbuffer.ll
M llvm/test/CodeGen/DirectX/ResourceAccess/store_typedbuffer.ll
M llvm/test/CodeGen/DirectX/ResourceGlobalElimination.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/typed-uav-load-additional-formats.ll
R llvm/test/CodeGen/DirectX/length.ll
R llvm/test/CodeGen/DirectX/length_error.ll
R llvm/test/CodeGen/DirectX/length_invalid_intrinsic_error.ll
R llvm/test/CodeGen/DirectX/length_invalid_intrinsic_error_scalar.ll
A llvm/test/CodeGen/Hexagon/isel/isel-tfrrp.ll
A llvm/test/CodeGen/Hexagon/loopIdiom.ll
M llvm/test/CodeGen/NVPTX/b52037.ll
M llvm/test/CodeGen/NVPTX/bug21465.ll
M llvm/test/CodeGen/NVPTX/bug22322.ll
M llvm/test/CodeGen/NVPTX/bug26185.ll
M llvm/test/CodeGen/NVPTX/call-with-alloca-buffer.ll
M llvm/test/CodeGen/NVPTX/cluster-dim.ll
A llvm/test/CodeGen/NVPTX/cp-async-bulk.ll
A llvm/test/CodeGen/NVPTX/disjoint-or-addr.ll
M llvm/test/CodeGen/NVPTX/generic-to-nvvm.ll
M llvm/test/CodeGen/NVPTX/i1-array-global.ll
M llvm/test/CodeGen/NVPTX/i1-ext-load.ll
M llvm/test/CodeGen/NVPTX/i1-global.ll
M llvm/test/CodeGen/NVPTX/i1-param.ll
M llvm/test/CodeGen/NVPTX/intr-range.ll
M llvm/test/CodeGen/NVPTX/kernel-param-align.ll
M llvm/test/CodeGen/NVPTX/load-with-non-coherent-cache.ll
M llvm/test/CodeGen/NVPTX/local-stack-frame.ll
M llvm/test/CodeGen/NVPTX/lower-alloca.ll
M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
M llvm/test/CodeGen/NVPTX/lower-args.ll
M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
M llvm/test/CodeGen/NVPTX/lower-ctor-dtor.ll
M llvm/test/CodeGen/NVPTX/lower-kernel-ptr-arg.ll
M llvm/test/CodeGen/NVPTX/maxclusterrank.ll
M llvm/test/CodeGen/NVPTX/noduplicate-syncthreads.ll
M llvm/test/CodeGen/NVPTX/noreturn.ll
M llvm/test/CodeGen/NVPTX/nvcl-param-align.ll
M llvm/test/CodeGen/NVPTX/nvvm-reflect-arch.ll
M llvm/test/CodeGen/NVPTX/nvvm-reflect-ocl.ll
M llvm/test/CodeGen/NVPTX/nvvm-reflect-opaque.ll
M llvm/test/CodeGen/NVPTX/nvvm-reflect.ll
M llvm/test/CodeGen/NVPTX/refl1.ll
M llvm/test/CodeGen/NVPTX/reg-copy.ll
M llvm/test/CodeGen/NVPTX/simple-call.ll
M llvm/test/CodeGen/NVPTX/surf-read-cuda.ll
M llvm/test/CodeGen/NVPTX/surf-read.ll
M llvm/test/CodeGen/NVPTX/surf-tex.py
M llvm/test/CodeGen/NVPTX/surf-write-cuda.ll
M llvm/test/CodeGen/NVPTX/surf-write.ll
M llvm/test/CodeGen/NVPTX/tex-read-cuda.ll
M llvm/test/CodeGen/NVPTX/tex-read.ll
M llvm/test/CodeGen/NVPTX/unreachable.ll
M llvm/test/CodeGen/NVPTX/variadics-backend.ll
A llvm/test/CodeGen/PowerPC/global-merge-aix-zero-size-struct.ll
M llvm/test/CodeGen/RISCV/GlobalISel/add-imm.ll
M llvm/test/CodeGen/RISCV/GlobalISel/alu-roundtrip.ll
M llvm/test/CodeGen/RISCV/GlobalISel/combine-neg-abs.ll
M llvm/test/CodeGen/RISCV/GlobalISel/combine.ll
M llvm/test/CodeGen/RISCV/GlobalISel/double-zfa.ll
M llvm/test/CodeGen/RISCV/GlobalISel/freeze.ll
M llvm/test/CodeGen/RISCV/GlobalISel/iabs.ll
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-add-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-addo-subo-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-const-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ext-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rotate-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-sat-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-sub-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbb.ll
M llvm/test/CodeGen/RISCV/GlobalISel/scmp.ll
M llvm/test/CodeGen/RISCV/GlobalISel/ucmp.ll
M llvm/test/CodeGen/RISCV/add_sext_shl_constant.ll
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/kcfi-isel-mir.ll
M llvm/test/CodeGen/RISCV/kcfi-mir.ll
M llvm/test/CodeGen/RISCV/rvv/access-fixed-objects-by-rvv.ll
A llvm/test/CodeGen/RISCV/rvv/allone-masked-to-unmasked.mir
M llvm/test/CodeGen/RISCV/rvv/bitreverse-vp.ll
M llvm/test/CodeGen/RISCV/rvv/bswap-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-formation.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-reverse.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-rotate.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fold-binary-reduce.ll
M llvm/test/CodeGen/RISCV/rvv/narrow-shift-extend.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
A llvm/test/CodeGen/RISCV/rvv/stack-probing-rvv.ll
M llvm/test/CodeGen/RISCV/rvv/vadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vand-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vandn-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vdiv-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vdivu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfdiv-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmul-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp-mask.ll
M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp-mask.ll
M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfsqrt-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
M llvm/test/CodeGen/RISCV/rvv/vl-opt.mir
A llvm/test/CodeGen/RISCV/rvv/vlopt-volatile-ld.mir
M llvm/test/CodeGen/RISCV/rvv/vmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmaxu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vminu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmul-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vnmsac-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vor-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-mask.ll
M llvm/test/CodeGen/RISCV/rvv/vrem-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vremu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vrsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsaddu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vssub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vssubu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vxor-vp.ll
M llvm/test/CodeGen/RISCV/stack-clash-prologue.ll
M llvm/test/CodeGen/SPIRV/AtomicCompareExchange.ll
M llvm/test/CodeGen/SPIRV/event-zero-const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_optnone.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp-simple-hierarchy.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fun-ptr-addrcast.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_inline_assembly/inline_asm.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_shader_clock/shader_clock.ll
A llvm/test/CodeGen/SPIRV/global-var-name-linkage.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/cross.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/length.ll
M llvm/test/CodeGen/SPIRV/iaddcarry-builtin.ll
M llvm/test/CodeGen/SPIRV/image-unoptimized.ll
M llvm/test/CodeGen/SPIRV/isubborrow-builtin.ll
M llvm/test/CodeGen/SPIRV/keep-tracked-const.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/fshl.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/fshr.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/memset.ll
M llvm/test/CodeGen/SPIRV/logical-access-chain.ll
M llvm/test/CodeGen/SPIRV/opencl/degrees.ll
M llvm/test/CodeGen/SPIRV/opencl/radians.ll
M llvm/test/CodeGen/SPIRV/pointers/PtrCast-null-in-OpSpecConstantOp.ll
M llvm/test/CodeGen/SPIRV/pointers/struct-opaque-pointers.ll
R llvm/test/CodeGen/SPIRV/structurizer/HLSLControlFlowHint-pass-check.ll
R llvm/test/CodeGen/SPIRV/structurizer/HLSLControlFlowHint.ll
M llvm/test/CodeGen/SPIRV/transcoding/SampledImage.ll
M llvm/test/CodeGen/SPIRV/transcoding/cl-types.ll
M llvm/test/CodeGen/SPIRV/transcoding/spirv-private-array-initialization.ll
M llvm/test/CodeGen/SPIRV/transcoding/sub_group_non_uniform_arithmetic.ll
M llvm/test/CodeGen/SPIRV/unnamed-global.ll
M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll
M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.mir
M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll
M llvm/test/CodeGen/WebAssembly/eh-option-errors.ll
M llvm/test/CodeGen/WebAssembly/exception-legacy.ll
M llvm/test/CodeGen/WebAssembly/exception-legacy.mir
M llvm/test/CodeGen/WebAssembly/exception.ll
M llvm/test/CodeGen/X86/codegen-prepare-addrmode-sext.ll
M llvm/test/CodeGen/X86/shuffle-vs-trunc-512.ll
A llvm/test/CodeGen/X86/uint_to_half.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
M llvm/test/DebugInfo/NVPTX/debug-addr-class.ll
M llvm/test/DebugInfo/NVPTX/debug-info.ll
A llvm/test/DebugInfo/X86/dwarf5-debug-names-addr-tu-to-non-tu.ll
M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_data_alignment.s
M llvm/test/ExecutionEngine/JITLink/AArch64/ELF_ehframe.s
M llvm/test/ExecutionEngine/JITLink/AArch64/MachO_compact_unwind.s
M llvm/test/ExecutionEngine/JITLink/AArch64/MachO_ehframe.s
M llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch64_ehframe.s
M llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call.s
M llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call_rvc.s
M llvm/test/ExecutionEngine/JITLink/RISCV/anonymous_symbol.s
M llvm/test/ExecutionEngine/JITLink/ppc64/ELF_ppc64_ehframe.s
M llvm/test/ExecutionEngine/JITLink/ppc64/external_weak.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_abs.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_any.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_associative.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_exact_match.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_intervene.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_largest.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_noduplicate.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_offset.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_same_size.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_weak.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_common_symbol.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_duplicate_externals.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_file_debug.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_static_var.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_weak_external.s
M llvm/test/ExecutionEngine/JITLink/x86-64/ELF_debug_section_lifetime_is_NoAlloc.yaml
M llvm/test/ExecutionEngine/JITLink/x86-64/ELF_ehframe_basic.s
M llvm/test/ExecutionEngine/JITLink/x86-64/ELF_ehframe_large_static_personality_encodings.s
M llvm/test/ExecutionEngine/JITLink/x86-64/LocalDependencyPropagation.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO-check-dwarf-filename.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO_compact_unwind.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO_cstring_section_alignment.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO_cstring_section_splitting.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO_non_subsections_via_symbols.s
M llvm/test/Instrumentation/BoundsChecking/runtimes.ll
A llvm/test/Instrumentation/HWAddressSanitizer/zero-ptr.ll
M llvm/test/Instrumentation/TypeSanitizer/access-with-offset.ll
M llvm/test/Instrumentation/TypeSanitizer/alloca-only.ll
M llvm/test/Instrumentation/TypeSanitizer/alloca.ll
M llvm/test/Instrumentation/TypeSanitizer/anon.ll
M llvm/test/Instrumentation/TypeSanitizer/basic-nosan.ll
M llvm/test/Instrumentation/TypeSanitizer/basic.ll
M llvm/test/Instrumentation/TypeSanitizer/byval.ll
M llvm/test/Instrumentation/TypeSanitizer/globals.ll
M llvm/test/Instrumentation/TypeSanitizer/invalid-metadata.ll
M llvm/test/Instrumentation/TypeSanitizer/memintrinsics.ll
M llvm/test/Instrumentation/TypeSanitizer/nosanitize.ll
M llvm/test/Instrumentation/TypeSanitizer/sanitize-no-tbaa.ll
M llvm/test/Instrumentation/TypeSanitizer/swifterror.ll
M llvm/test/MC/AArch64/armv9.6a-rme-gpc3.s
M llvm/test/MC/AMDGPU/gfx1030_err.s
M llvm/test/MC/AMDGPU/gfx10_asm_smem_err.s
M llvm/test/MC/AMDGPU/gfx11_asm_mimg_err.s
M llvm/test/MC/AMDGPU/gfx11_asm_smem_err.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_promote.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop1.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop1.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_mimg_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_smem_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_sop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_promote.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp8.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp16.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp8.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3cx-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8.s
M llvm/test/MC/Disassembler/AArch64/armv9.6a-rme-gpc3.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx_dpp8.txt
A llvm/test/MC/M68k/Data/Classes/MxMoveSR.s
M llvm/test/MC/RISCV/custom_reloc.s
A llvm/test/MC/RISCV/xqcicm-invalid.s
A llvm/test/MC/RISCV/xqcicm-valid.s
M llvm/test/TableGen/template-args.td
A llvm/test/ThinLTO/X86/memprof-recursive.ll
M llvm/test/Transforms/InstCombine/and-xor-or.ll
M llvm/test/Transforms/InstCombine/compare-signs.ll
A llvm/test/Transforms/InstCombine/fold-binop-of-reductions.ll
M llvm/test/Transforms/InstCombine/icmp-add.ll
M llvm/test/Transforms/InstCombine/onehot_merge.ll
M llvm/test/Transforms/InstCombine/phi.ll
M llvm/test/Transforms/InstCombine/rotate.ll
M llvm/test/Transforms/InstCombine/select-divrem.ll
M llvm/test/Transforms/InstCombine/select.ll
M llvm/test/Transforms/InstCombine/xor-and-or.ll
A llvm/test/Transforms/InstSimplify/const-fold-nvvm-f2i-d2i.ll
A llvm/test/Transforms/InstSimplify/const-fold-nvvm-f2ll-d2ll.ll
A llvm/test/Transforms/LoadStoreVectorizer/X86/massive_indirection.ll
M llvm/test/Transforms/LoopStrengthReduce/NVPTX/trunc.ll
M llvm/test/Transforms/LoopVectorize/AArch64/blend-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
A llvm/test/Transforms/LoopVectorize/AArch64/scalable-struct-return.ll
M llvm/test/Transforms/LoopVectorize/RISCV/blend-any-of-reduction-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reverse-load-store.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-inbounds-flags-for-reverse-vector-pointer.ll
M llvm/test/Transforms/LoopVectorize/X86/pr109581-unused-blend.ll
M llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.ll
M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
A llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory.ll
M llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll
M llvm/test/Transforms/LoopVectorize/blend-in-header.ll
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
M llvm/test/Transforms/LoopVectorize/if-pred-stores.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization-2.ll
M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
M llvm/test/Transforms/LoopVectorize/pr37248.ll
M llvm/test/Transforms/LoopVectorize/pr55167-fold-tail-live-out.ll
M llvm/test/Transforms/LoopVectorize/reduction-small-size.ll
M llvm/test/Transforms/LoopVectorize/select-cmp.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
A llvm/test/Transforms/LoopVectorize/struct-return.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-switch.ll
A llvm/test/Transforms/LoopVectorize/transform-narrow-interleave-to-widen-memory.ll
A llvm/test/Transforms/LoopVectorize/uncountable-single-exit-loops.ll
M llvm/test/Transforms/LoopVectorize/uniform-blend.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll
A llvm/test/Transforms/MemProfContextDisambiguation/recursive.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/block_scaling_decompr_8bit.ll
M llvm/test/Transforms/PhaseOrdering/X86/hadd.ll
M llvm/test/Transforms/PhaseOrdering/X86/hsub.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-fadd.ll
A llvm/test/Transforms/SLPVectorizer/RISCV/long-gep-chains.ll
A llvm/test/Transforms/SLPVectorizer/X86/bv-shuffle-mask.ll
A llvm/test/Transforms/SLPVectorizer/X86/shuffle-mask-emission.ll
M llvm/test/Transforms/SandboxVectorizer/bottomup_basic.ll
A llvm/test/Transforms/SandboxVectorizer/bottomup_seed_slice.ll
A llvm/test/Transforms/SandboxVectorizer/bottomup_seed_slice_pow2.ll
M llvm/test/Transforms/StraightLineStrengthReduce/NVPTX/speculative-slsr.ll
M llvm/test/Transforms/VectorCombine/X86/extract-binop-inseltpoison.ll
M llvm/test/Transforms/VectorCombine/X86/extract-binop.ll
M llvm/test/Transforms/VectorCombine/X86/shuffle-of-cmps.ll
M llvm/test/tools/UpdateTestChecks/lit.local.cfg
A llvm/test/tools/dxil-dis/fastmath.ll
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-gsym-callsite-info-dsym.yaml
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-gsym-callsite-info-exe.yaml
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-gsym-callsite-info-obj.test
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-gsym-merged-callsites-dsym.yaml
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-merged-funcs-dwarf.yaml
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-basic-instructions.s
M llvm/test/tools/llvm-mca/ARM/cortex-a57-memory-instructions.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/div.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/mul-cpop.s
A llvm/test/tools/llvm-objcopy/MachO/strip-with-encryption-info.test
A llvm/test/tools/llvm-profgen/context-depth.test
M llvm/test/tools/llvm-profgen/recursion-compression-pseudoprobe.test
M llvm/tools/llvm-exegesis/lib/RISCV/Target.cpp
M llvm/tools/llvm-gsymutil/Opts.td
M llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.h
M llvm/tools/llvm-link/llvm-link.cpp
M llvm/tools/llvm-profgen/PerfReader.cpp
M llvm/unittests/ADT/PointerUnionTest.cpp
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
M llvm/unittests/MC/AMDGPU/DwarfRegMappings.cpp
M llvm/unittests/ProfileData/CoverageMappingTest.cpp
M llvm/unittests/Support/CMakeLists.txt
A llvm/unittests/Support/RecyclerTest.cpp
M llvm/unittests/Target/AMDGPU/DwarfRegMappings.cpp
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/VecUtilsTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
M llvm/unittests/tools/llvm-exegesis/CMakeLists.txt
A llvm/unittests/tools/llvm-exegesis/RISCV/CMakeLists.txt
A llvm/unittests/tools/llvm-exegesis/RISCV/SnippetGeneratorTest.cpp
A llvm/unittests/tools/llvm-exegesis/RISCV/TargetTest.cpp
A llvm/unittests/tools/llvm-exegesis/RISCV/TestBase.h
M llvm/utils/TableGen/Basic/ARMTargetDefEmitter.cpp
M llvm/utils/TableGen/DXILEmitter.cpp
M llvm/utils/UpdateTestChecks/common.py
M llvm/utils/gn/secondary/clang-tools-extra/clangd/unittests/BUILD.gn
M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-exegesis/lib/RISCV/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Support/BUILD.gn
A llvm/utils/gn/secondary/llvm/unittests/tools/llvm-exegesis/RISCV/BUILD.gn
M mlir/CMakeLists.txt
M mlir/docs/Bindings/Python.md
M mlir/docs/Dialects/OpenACCDialect.md
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
A mlir/include/mlir/Dialect/GPU/IR/ValueBoundsOpInterfaceImpl.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/NVVMDialect.h
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
M mlir/include/mlir/Dialect/SCF/Transforms/Patterns.h
M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
M mlir/include/mlir/IR/OperationSupport.h
M mlir/include/mlir/InitAllDialects.h
M mlir/include/mlir/Interfaces/ViewLikeInterface.h
M mlir/include/mlir/Transforms/LocationSnapshot.h
M mlir/include/mlir/Transforms/OneToNTypeConversion.h
M mlir/include/mlir/Transforms/Passes.td
M mlir/lib/Bindings/Python/IRCore.cpp
M mlir/lib/CAPI/Dialect/LLVM.cpp
M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRVPass.cpp
M mlir/lib/Conversion/GPUToVulkan/ConvertGPULaunchFuncToVulkanLaunchFunc.cpp
M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
M mlir/lib/Dialect/Affine/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/lib/Dialect/Affine/Utils/LoopUtils.cpp
M mlir/lib/Dialect/Affine/Utils/Utils.cpp
M mlir/lib/Dialect/GPU/CMakeLists.txt
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
A mlir/lib/Dialect/GPU/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/lib/Dialect/LLVMIR/CMakeLists.txt
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/lib/Dialect/SCF/Utils/Utils.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeConv2D.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeDepthwise.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeTransposeConv.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/lib/Transforms/LocationSnapshot.cpp
M mlir/test/Conversion/AffineToStandard/lower-affine-to-vector.mlir
M mlir/test/Conversion/AffineToStandard/lower-affine.mlir
A mlir/test/Conversion/ConvertToSPIRV/convert-gpu-modules-nested.mlir
M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl-hip.mlir
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl-opencl.mlir
M mlir/test/Conversion/GPUToSPIRV/printf.mlir
M mlir/test/Conversion/GPUToVulkan/lower-gpu-launch-vulkan-launch.mlir
M mlir/test/Conversion/MemRefToLLVM/expand-then-convert-to-llvm.mlir
M mlir/test/Conversion/SPIRVToLLVM/non-uniform-ops-to-llvm.mlir
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
M mlir/test/Conversion/TosaToTensor/tosa-to-tensor.mlir
M mlir/test/Dialect/Affine/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/Affine/value-bounds-reification.mlir
M mlir/test/Dialect/Arith/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/GPU/indirect-device-func-call.mlir
M mlir/test/Dialect/GPU/ops.mlir
M mlir/test/Dialect/GPU/test-nvvm-pipeline.mlir
A mlir/test/Dialect/GPU/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/LLVM/lower-to-llvm-e2e-with-target-tag.mlir
M mlir/test/Dialect/LLVM/lower-to-llvm-e2e-with-top-level-named-sequence.mlir
A mlir/test/Dialect/LLVMIR/nvvm-test-range.mlir
M mlir/test/Dialect/LLVMIR/roundtrip.mlir
M mlir/test/Dialect/Linalg/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/MemRef/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/SCF/loop-unroll.mlir
M mlir/test/Dialect/SCF/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/Tensor/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/Tosa/canonicalize.mlir
M mlir/test/Dialect/Tosa/invalid.mlir
M mlir/test/Dialect/Tosa/level_check.mlir
M mlir/test/Dialect/Tosa/ops.mlir
M mlir/test/Dialect/Tosa/quant-test.mlir
M mlir/test/Dialect/Tosa/tosa-decompose-conv2d.mlir
M mlir/test/Dialect/Tosa/tosa-decompose-depthwise.mlir
M mlir/test/Dialect/Tosa/tosa-decompose-transpose-conv.mlir
M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
M mlir/test/Dialect/Vector/test-scalable-bounds.mlir
M mlir/test/Dialect/Vector/value-bounds-op-interface-impl.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/pack-dynamic-inner-tile.mlir
A mlir/test/Integration/Dialect/Linalg/CPU/unpack-dynamic-inner-tile.mlir
M mlir/test/Integration/GPU/CUDA/assert.mlir
M mlir/test/Integration/GPU/CUDA/printf.mlir
M mlir/test/Integration/GPU/CUDA/sm90/cga_cluster.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_128x64_swizzle128b.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_64x64_swizzle128b.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_64x8_8x128_noswizzle.mlir
M mlir/test/Integration/GPU/CUDA/sm90/transform-dialect/tma_load_64x8_8x128_noswizzle-transform.mlir
M mlir/test/Integration/GPU/ROCM/printf.mlir
M mlir/test/Target/LLVMIR/Import/metadata-alias-scopes.ll
M mlir/test/Target/LLVMIR/attribute-alias-scopes.mlir
M mlir/test/Target/LLVMIR/nvvmir.mlir
A mlir/test/Target/LLVMIR/openmp-parallel-reduction-init.mlir
M mlir/test/Target/LLVMIR/openmp-parallel-reduction-multiblock.mlir
M mlir/test/Target/LLVMIR/openmp-private.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-array-sections.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-init-arg.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-sections.mlir
M mlir/test/Transforms/location-snapshot.mlir
M mlir/test/Transforms/loop-invariant-code-motion.mlir
M mlir/test/lib/Dialect/Affine/TestReifyValueBounds.cpp
M mlir/test/lib/Dialect/Tosa/TosaTestPasses.cpp
M mlir/test/lib/Pass/TestVulkanRunnerPipeline.cpp
M mlir/test/mlir-vulkan-runner/addui_extended.mlir
M mlir/test/mlir-vulkan-runner/smul_extended.mlir
M mlir/test/mlir-vulkan-runner/umul_extended.mlir
M mlir/test/python/execution_engine.py
A mlir/test/tblgen-lsp-server/templ-arg-check.test
M mlir/unittests/Dialect/OpenACC/OpenACCOpsTest.cpp
M offload/DeviceRTL/CMakeLists.txt
M offload/DeviceRTL/include/DeviceUtils.h
M offload/DeviceRTL/include/Synchronization.h
M offload/DeviceRTL/src/Mapping.cpp
M offload/DeviceRTL/src/Synchronization.cpp
M offload/include/Shared/Utils.h
M offload/test/sanitizer/kernel_crash_async.c
M polly/include/polly/CodeGen/BlockGenerators.h
M polly/lib/CodeGen/BlockGenerators.cpp
M polly/lib/CodeGen/IslNodeBuilder.cpp
A polly/test/CodeGen/reggen_domtree_crash.ll
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/libc_build_rules.bzl
M utils/bazel/llvm-project-overlay/libc/test/src/stdlib/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/string/BUILD.bazel
M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.6-beta.1
[skip ci]
Commit: fc280ddf33fa27f6d293344395fb6fc39ebbfc3e
https://github.com/llvm/llvm-project/commit/fc280ddf33fa27f6d293344395fb6fc39ebbfc3e
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-01-10 (Fri, 10 Jan 2025)
Changed paths:
M .github/workflows/commit-access-review.py
M .github/workflows/containers/github-action-ci/Dockerfile
A .github/workflows/hlsl-matrix.yaml
A .github/workflows/hlsl-test-all.yaml
M .github/workflows/libclang-python-tests.yml
M .github/workflows/llvm-project-tests.yml
M .github/workflows/pr-code-format.yml
M .github/workflows/premerge.yaml
M bolt/lib/Core/BinaryEmitter.cpp
M bolt/lib/Core/CMakeLists.txt
M bolt/lib/Passes/CMakeLists.txt
M bolt/lib/Passes/ReorderFunctions.cpp
M bolt/lib/Profile/CMakeLists.txt
M bolt/lib/Rewrite/CMakeLists.txt
M bolt/lib/RuntimeLibs/CMakeLists.txt
M bolt/lib/Target/AArch64/CMakeLists.txt
M bolt/lib/Target/RISCV/CMakeLists.txt
M bolt/lib/Target/X86/CMakeLists.txt
M bolt/lib/Utils/CMakeLists.txt
M bolt/test/AArch64/pad-before-funcs.s
M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
M clang-tools-extra/clang-tidy/ClangTidyOptions.h
M clang-tools-extra/clang-tidy/bugprone/UnhandledSelfAssignmentCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnusedLocalNonTrivialVariableCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.cpp
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
M clang-tools-extra/clang-tidy/readability/UseStdMinMaxCheck.cpp
M clang-tools-extra/clangd/HeuristicResolver.h
M clang-tools-extra/clangd/unittests/CMakeLists.txt
M clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
A clang-tools-extra/clangd/unittests/HeuristicResolverTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-local-non-trivial-variable.rst
M clang-tools-extra/include-cleaner/lib/Analysis.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unhandled-self-assignment.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-local-non-trivial-variable-name-independence.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-consteval.cpp
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_cursor.py
M clang/bindings/python/tests/cindex/test_type.py
M clang/cmake/modules/AddClang.cmake
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/LibASTMatchersReference.html
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/UndefinedBehaviorSanitizer.rst
M clang/docs/analyzer/checkers.rst
M clang/include/clang-c/Index.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/StmtOpenACC.h
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
M clang/include/clang/Analysis/FlowSensitive/CachedConstAccessorsLattice.h
M clang/include/clang/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.h
M clang/include/clang/Analysis/FlowSensitive/SmartPointerAccessorCaching.h
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/BuiltinsSPIRV.td
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/OpenACCClauses.def
M clang/include/clang/Basic/Sanitizers.h
M clang/include/clang/Basic/StmtNodes.td
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/arm_sme.td
M clang/include/clang/CodeGen/BackendUtil.h
M clang/include/clang/Driver/Driver.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Driver/SanitizerArgs.h
M clang/include/clang/Format/Format.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaARM.h
M clang/include/clang/Sema/SemaOpenACC.h
M clang/include/clang/Sema/SemaSYCL.h
M clang/include/clang/Sema/Template.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
M clang/include/module.modulemap
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/ParentMap.cpp
M clang/lib/AST/RecordLayoutBuilder.cpp
M clang/lib/AST/StmtOpenACC.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
M clang/lib/Analysis/FlowSensitive/SmartPointerAccessorCaching.cpp
M clang/lib/Basic/Sanitizers.cpp
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/OSTargets.cpp
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/Basic/Targets/X86.cpp
M clang/lib/Basic/Targets/X86.h
M clang/lib/CodeGen/BackendConsumer.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CGObjC.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/CodeGenPGO.h
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/lib/CodeGen/CoverageMappingGen.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
M clang/lib/CodeGen/SanitizerMetadata.cpp
M clang/lib/CodeGen/Targets/NVPTX.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/NetBSD.cpp
M clang/lib/Driver/ToolChains/SPIRV.cpp
M clang/lib/Driver/ToolChains/SPIRV.h
M clang/lib/Driver/ToolChains/SYCL.cpp
M clang/lib/Driver/ToolChains/SYCL.h
M clang/lib/Format/MatchFilePath.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/TokenAnnotator.h
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Headers/amxintrin.h
M clang/lib/Headers/cuda_wrappers/cmath
M clang/lib/Headers/hlsl/hlsl_detail.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Headers/intrin.h
M clang/lib/Lex/InitHeaderSearch.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Sema/CheckExprLifetime.cpp
M clang/lib/Sema/CheckExprLifetime.h
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaSYCL.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
M clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
M clang/lib/StaticAnalyzer/Core/RangedConstraintManager.cpp
M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
M clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
M clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
A clang/test/APINotes/Inputs/Headers/SwiftReturnOwnershipForObjC.apinotes
A clang/test/APINotes/Inputs/Headers/SwiftReturnOwnershipForObjC.h
M clang/test/APINotes/Inputs/Headers/module.modulemap
A clang/test/APINotes/swift-return-ownership.m
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/AST/ByteCode/cxx20.cpp
M clang/test/AST/ByteCode/functions.cpp
M clang/test/AST/ByteCode/literals.cpp
R clang/test/AST/HLSL/HLSLControlFlowHint.hlsl
A clang/test/AST/ast-print-openacc-update-construct.cpp
M clang/test/AST/attr-lifetime-capture-by.cpp
M clang/test/ASTSYCL/ast-dump-sycl-kernel-entry-point.cpp
M clang/test/Analysis/analyzer-enabled-checkers.c
M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
M clang/test/Analysis/z3/crosscheck-statistics.c
M clang/test/CXX/drs/cwg23xx.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg27xx.cpp
M clang/test/CXX/expr/expr.const/p2-0x.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/nested-requirement.cpp
M clang/test/CXX/expr/expr.unary/expr.delete/p10.cpp
M clang/test/CXX/temp/temp.constr/temp.constr.atomic/constrant-satisfaction-conversions.cpp
M clang/test/CodeGen/AArch64/fmv-dependencies.c
A clang/test/CodeGen/AArch64/fmv-features.c
A clang/test/CodeGen/AArch64/fmv-priority.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_state_funs.c
M clang/test/CodeGen/X86/amx_api.c
A clang/test/CodeGen/X86/amx_tile.c
M clang/test/CodeGen/allow-ubsan-check.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGen/catch-nullptr-and-nonzero-offset-when-nullptr-is-defined.c
M clang/test/CodeGen/catch-nullptr-and-nonzero-offset.c
M clang/test/CodeGen/catch-pointer-overflow-volatile.c
M clang/test/CodeGen/catch-pointer-overflow.c
M clang/test/CodeGen/nvptx_attributes.c
M clang/test/CodeGen/sanitize-type-globals.cpp
M clang/test/CodeGen/tbaa-pointers.c
M clang/test/CodeGen/ubsan-pointer-overflow.c
M clang/test/CodeGen/xcore-abi.c
M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
M clang/test/CodeGenCUDA/amdgpu-kernel-attrs.cu
M clang/test/CodeGenCUDA/device-fun-linkage.cu
M clang/test/CodeGenCUDA/grid-constant.cu
M clang/test/CodeGenCUDA/offload_via_llvm.cu
M clang/test/CodeGenCUDA/ptx-kernels.cu
M clang/test/CodeGenCUDA/usual-deallocators.cu
M clang/test/CodeGenHLSL/ArrayTemporary.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/OutputArguments.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/standard_conversion_sequences.hlsl
R clang/test/CodeGenHLSL/HLSLControlFlowHint.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-subscript.hlsl
M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-lib.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-ps.hlsl
M clang/test/CodeGenHLSL/builtins/WaveReadLaneAt.hlsl
M clang/test/CodeGenHLSL/builtins/abs.hlsl
M clang/test/CodeGenHLSL/builtins/acos.hlsl
M clang/test/CodeGenHLSL/builtins/asdouble.hlsl
M clang/test/CodeGenHLSL/builtins/asin.hlsl
M clang/test/CodeGenHLSL/builtins/atan.hlsl
M clang/test/CodeGenHLSL/builtins/atan2.hlsl
M clang/test/CodeGenHLSL/builtins/ceil.hlsl
M clang/test/CodeGenHLSL/builtins/clamp.hlsl
M clang/test/CodeGenHLSL/builtins/clip.hlsl
M clang/test/CodeGenHLSL/builtins/cos.hlsl
M clang/test/CodeGenHLSL/builtins/cosh.hlsl
M clang/test/CodeGenHLSL/builtins/cross.hlsl
M clang/test/CodeGenHLSL/builtins/degrees.hlsl
A clang/test/CodeGenHLSL/builtins/distance.hlsl
M clang/test/CodeGenHLSL/builtins/dot-builtin.hlsl
M clang/test/CodeGenHLSL/builtins/dot.hlsl
M clang/test/CodeGenHLSL/builtins/exp.hlsl
M clang/test/CodeGenHLSL/builtins/exp2.hlsl
M clang/test/CodeGenHLSL/builtins/floor.hlsl
M clang/test/CodeGenHLSL/builtins/fmod.hlsl
M clang/test/CodeGenHLSL/builtins/frac.hlsl
M clang/test/CodeGenHLSL/builtins/length.hlsl
M clang/test/CodeGenHLSL/builtins/lerp-builtin.hlsl
M clang/test/CodeGenHLSL/builtins/lerp.hlsl
M clang/test/CodeGenHLSL/builtins/log.hlsl
M clang/test/CodeGenHLSL/builtins/log10.hlsl
M clang/test/CodeGenHLSL/builtins/log2.hlsl
M clang/test/CodeGenHLSL/builtins/mad.hlsl
M clang/test/CodeGenHLSL/builtins/max.hlsl
M clang/test/CodeGenHLSL/builtins/min.hlsl
M clang/test/CodeGenHLSL/builtins/normalize.hlsl
M clang/test/CodeGenHLSL/builtins/pow.hlsl
M clang/test/CodeGenHLSL/builtins/radians.hlsl
M clang/test/CodeGenHLSL/builtins/rcp.hlsl
M clang/test/CodeGenHLSL/builtins/round.hlsl
M clang/test/CodeGenHLSL/builtins/rsqrt.hlsl
M clang/test/CodeGenHLSL/builtins/saturate.hlsl
M clang/test/CodeGenHLSL/builtins/sin.hlsl
M clang/test/CodeGenHLSL/builtins/sinh.hlsl
M clang/test/CodeGenHLSL/builtins/sqrt.hlsl
M clang/test/CodeGenHLSL/builtins/step.hlsl
M clang/test/CodeGenHLSL/builtins/tan.hlsl
M clang/test/CodeGenHLSL/builtins/tanh.hlsl
M clang/test/CodeGenHLSL/builtins/trunc.hlsl
M clang/test/CodeGenHLSL/float3.hlsl
M clang/test/CodeGenHLSL/this-reference.hlsl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12.cl
M clang/test/CodeGenOpenCL/preserve_vec3.cl
M clang/test/CodeGenOpenCL/ptx-calls.cl
M clang/test/CodeGenOpenCL/ptx-kernels.cl
M clang/test/CodeGenOpenCL/reflect.cl
A clang/test/Driver/Inputs/MacOSX15.1.sdk/embedded/usr/include/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/embedded/usr/local/include/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/usr/include/c++/v1/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/usr/local/include/.keep
A clang/test/Driver/Inputs/config-zos/clang.cfg
A clang/test/Driver/Inputs/config-zos/def.cfg
A clang/test/Driver/Inputs/config-zos/tst/def.cfg
M clang/test/Driver/amdgpu-openmp-toolchain.c
A clang/test/Driver/config-zos.c
A clang/test/Driver/config-zos1.c
M clang/test/Driver/cuda-arch-translation.cu
M clang/test/Driver/cuda-bindings.cu
M clang/test/Driver/cuda-options.cu
M clang/test/Driver/cuda-output-asm.cu
A clang/test/Driver/darwin-embedded-search-paths-libcxx.c
A clang/test/Driver/darwin-embedded-search-paths.c
M clang/test/Driver/dxc_spirv.hlsl
M clang/test/Driver/fsanitize.c
M clang/test/Driver/lto.c
M clang/test/Driver/netbsd.c
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Driver/riscv-cpus.c
M clang/test/Driver/spirv-openmp-toolchain.c
M clang/test/Driver/spirv-toolchain.cl
M clang/test/Driver/sycl-offload-jit.cpp
M clang/test/Driver/uefi-constructed-args.c
M clang/test/Headers/gpuintrin.c
M clang/test/Misc/target-invalid-cpu-note/riscv.c
A clang/test/OpenMP/parallel_masked_taskloop_codegen.c
M clang/test/Parser/namespace-attributes.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-constructs.c
M clang/test/Preprocessor/macho-embedded-predefines.c
M clang/test/Sema/aarch64-sme-func-attrs-without-target-feature.cpp
M clang/test/Sema/varargs.c
M clang/test/Sema/warn-lifetime-analysis-capture-by.cpp
A clang/test/SemaCUDA/constexpr-virtual-func.cu
M clang/test/SemaCXX/attr-lifetimebound.cpp
M clang/test/SemaCXX/concept-crash-on-diagnostic.cpp
M clang/test/SemaCXX/constant-expression-cxx11.cpp
M clang/test/SemaCXX/constant-expression-cxx14.cpp
M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
M clang/test/SemaCXX/cxx23-assume.cpp
M clang/test/SemaCXX/cxx2a-destroying-delete.cpp
M clang/test/SemaCXX/cxx2c-fold-exprs.cpp
M clang/test/SemaCXX/lambda-unevaluated.cpp
M clang/test/SemaCXX/noexcept-destroying-delete.cpp
A clang/test/SemaCXX/opaque-enum-declaration-in-class-template.cpp
A clang/test/SemaHLSL/BuiltIns/distance-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/length-errors.hlsl
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
M clang/test/SemaOpenACC/combined-construct-self-ast.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
A clang/test/SemaOpenACC/update-construct-ast.cpp
A clang/test/SemaOpenACC/update-construct.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-appertainment.cpp
M clang/test/SemaSYCL/sycl-kernel-entry-point-attr-grammar.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-kernel-name-module.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-kernel-name-pch.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-kernel-name.cpp
A clang/test/SemaSYCL/sycl-kernel-entry-point-attr-sfinae.cpp
M clang/test/SemaTemplate/concepts-recursive-inst.cpp
M clang/test/SemaTemplate/concepts.cpp
M clang/test/SemaTemplate/cxx2a-constraint-exprs.cpp
M clang/test/SemaTemplate/deduction-guide.cpp
M clang/test/SemaTemplate/nested-implicit-deduction-guides.cpp
M clang/test/TableGen/target-builtins-prototype-parser.td
M clang/test/utils/update_cc_test_checks/Inputs/basic-cplusplus.cpp
M clang/test/utils/update_cc_test_checks/Inputs/basic-cplusplus.cpp.expected
A clang/test/utils/update_cc_test_checks/Inputs/c-symbol-mangling.c
A clang/test/utils/update_cc_test_checks/Inputs/c-symbol-mangling.c.expected
A clang/test/utils/update_cc_test_checks/c-symbol-mangling.test
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
M clang/tools/driver/driver.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CXCursor.cpp
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
M clang/unittests/Analysis/FlowSensitive/CachedConstAccessorsLatticeTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M clang/unittests/Format/FormatTestSelective.cpp
M clang/unittests/StaticAnalyzer/Z3CrosscheckOracleTest.cpp
M clang/utils/TableGen/SveEmitter.cpp
M clang/www/cxx_dr_status.html
M clang/www/make_cxx_dr_status
M compiler-rt/cmake/Modules/AddCompilerRT.cmake
M compiler-rt/cmake/base-config-ix.cmake
M compiler-rt/lib/gwp_asan/tests/harness.h
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_allocator_dlsym.h
M compiler-rt/lib/tysan/tysan.cpp
M compiler-rt/lib/tysan/tysan_flags.inc
M compiler-rt/lib/tysan/tysan_interceptors.cpp
M compiler-rt/lib/ubsan/ubsan_value.h
M compiler-rt/test/orc/TestCases/Darwin/arm64/objc-imageinfo.S
M compiler-rt/test/orc/TestCases/Darwin/x86-64/objc-imageinfo.S
A compiler-rt/test/tysan/print_stacktrace.c
M compiler-rt/test/ubsan/TestCases/Pointer/nullptr-and-nonzero-offset-constants.cpp
M compiler-rt/test/ubsan/TestCases/Pointer/nullptr-and-nonzero-offset-summary.cpp
M compiler-rt/test/ubsan/TestCases/Pointer/nullptr-and-nonzero-offset-variable.cpp
M compiler-rt/test/ubsan_minimal/TestCases/nullptr-and-nonzero-offset.c
M flang/docs/Extensions.md
M flang/docs/ParserCombinators.md
M flang/include/flang/Common/format.h
M flang/include/flang/Evaluate/call.h
M flang/include/flang/Evaluate/characteristics.h
M flang/include/flang/Evaluate/constant.h
M flang/include/flang/Evaluate/expression.h
M flang/include/flang/Evaluate/shape.h
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Evaluate/variable.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Dialect/CanonicalizationPatterns.td
M flang/include/flang/Parser/characters.h
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/symbol.h
M flang/lib/Common/Fortran.cpp
M flang/lib/Evaluate/characteristics.cpp
M flang/lib/Evaluate/expression.cpp
M flang/lib/Evaluate/fold-integer.cpp
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Evaluate/shape.cpp
M flang/lib/Evaluate/tools.cpp
M flang/lib/Evaluate/variable.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendAction.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/CMakeLists.txt
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
A flang/lib/Lower/OpenMP/PrivateReductionUtils.cpp
A flang/lib/Lower/OpenMP/PrivateReductionUtils.h
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Optimizer/Builder/CMakeLists.txt
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/StackArrays.cpp
M flang/lib/Parser/basic-parsers.h
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/prescan.cpp
M flang/lib/Parser/token-parsers.h
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/assignment.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/definable.cpp
M flang/lib/Semantics/definable.h
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/pointer-assignment.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/module/__fortran_builtins.f90
M flang/module/__fortran_type_info.f90
M flang/runtime/derived.cpp
M flang/runtime/edit-input.cpp
A flang/test/Driver/fsave-main-program.f90
M flang/test/Driver/mlir-pass-pipeline.f90
M flang/test/Driver/parse-error.ll
M flang/test/Fir/basic-program.fir
M flang/test/Fir/convert-fold.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-sum.fir
M flang/test/Integration/OpenMP/parallel-private-reduction-worstcase.f90
M flang/test/Integration/debug-local-var-2.f90
A flang/test/Lower/CUDA/cuda-cdevloc.cuf
M flang/test/Lower/OpenMP/derived-type-allocatable.f90
A flang/test/Lower/OpenMP/firstprivate-alloc-comp.f90
M flang/test/Lower/OpenMP/parallel-reduction-mixed.f90
M flang/test/Lower/array-substring.f90
A flang/test/Lower/fsave-main-program.f90
M flang/test/Lower/vector-subscript-io.f90
A flang/test/Parser/OpenMP/compiler-directive-continuation.f90
M flang/test/Parser/at-process.f
A flang/test/Parser/unparseable.f90
A flang/test/Preprocessing/bug129131.F
A flang/test/Semantics/assign16.f90
A flang/test/Semantics/bug121718.f90
M flang/test/Semantics/call04.f90
M flang/test/Semantics/cuf10.cuf
M flang/test/Semantics/definable01.f90
M flang/test/Semantics/get_team.f90
M flang/test/Semantics/io07.f90
M flang/test/Semantics/io08.f90
M flang/test/Semantics/lcobound.f90
M flang/test/Semantics/resolve94.f90
M flang/test/Semantics/this_image01.f90
M flang/test/Semantics/ucobound.f90
M flang/test/Transforms/stack-arrays.fir
M flang/unittests/Runtime/LogicalFormatTest.cpp
M libc/cmake/modules/LLVMLibCHeaderRules.cmake
M libc/config/baremetal/config.json
A libc/config/gpu/amdgpu/config.json
A libc/config/gpu/amdgpu/entrypoints.txt
A libc/config/gpu/amdgpu/headers.txt
R libc/config/gpu/config.json
R libc/config/gpu/entrypoints.txt
R libc/config/gpu/headers.txt
A libc/config/gpu/nvptx/config.json
A libc/config/gpu/nvptx/entrypoints.txt
A libc/config/gpu/nvptx/headers.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/CMakeLists.txt
M libc/docs/headers/index.rst
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/struct_iovec.h
A libc/hdr/types/struct_tm.h
M libc/include/CMakeLists.txt
M libc/include/__llvm-libc-common.h
M libc/include/arpa/inet.yaml
M libc/include/assert.yaml
M libc/include/complex.yaml
M libc/include/ctype.yaml
M libc/include/dirent.yaml
M libc/include/dlfcn.yaml
M libc/include/elf.yaml
M libc/include/errno.yaml
M libc/include/fcntl.yaml
M libc/include/features.yaml
M libc/include/fenv.yaml
M libc/include/float.yaml
M libc/include/inttypes.yaml
M libc/include/limits.yaml
M libc/include/link.yaml
M libc/include/locale.yaml
M libc/include/malloc.yaml
M libc/include/math.yaml
M libc/include/pthread.yaml
M libc/include/sched.yaml
M libc/include/search.yaml
M libc/include/setjmp.yaml
M libc/include/signal.yaml
M libc/include/spawn.yaml
M libc/include/stdbit.yaml
M libc/include/stdckdint.yaml
M libc/include/stdfix.yaml
M libc/include/stdint.yaml
M libc/include/stdio.yaml
M libc/include/stdlib.yaml
M libc/include/string.yaml
M libc/include/strings.yaml
M libc/include/sys/auxv.yaml
M libc/include/sys/epoll.yaml
M libc/include/sys/ioctl.yaml
M libc/include/sys/mman.yaml
M libc/include/sys/prctl.yaml
M libc/include/sys/random.yaml
M libc/include/sys/resource.yaml
M libc/include/sys/select.yaml
M libc/include/sys/sendfile.yaml
M libc/include/sys/socket.yaml
M libc/include/sys/stat.yaml
M libc/include/sys/statvfs.yaml
M libc/include/sys/syscall.yaml
M libc/include/sys/time.yaml
M libc/include/sys/types.yaml
A libc/include/sys/uio.h.def
A libc/include/sys/uio.yaml
M libc/include/sys/utsname.yaml
M libc/include/sys/wait.yaml
M libc/include/termios.yaml
M libc/include/threads.yaml
M libc/include/time.yaml
M libc/include/uchar.yaml
M libc/include/unistd.yaml
M libc/include/wchar.yaml
M libc/src/CMakeLists.txt
M libc/src/__support/CMakeLists.txt
M libc/src/__support/File/file.cpp
M libc/src/__support/File/file.h
M libc/src/__support/GPU/CMakeLists.txt
R libc/src/__support/GPU/amdgpu/CMakeLists.txt
R libc/src/__support/GPU/amdgpu/utils.h
R libc/src/__support/GPU/generic/CMakeLists.txt
R libc/src/__support/GPU/generic/utils.h
R libc/src/__support/GPU/nvptx/CMakeLists.txt
R libc/src/__support/GPU/nvptx/utils.h
M libc/src/__support/GPU/utils.h
M libc/src/__support/fixedvector.h
M libc/src/__support/threads/thread.cpp
R libc/src/gpu/CMakeLists.txt
R libc/src/gpu/rpc_host_call.cpp
R libc/src/gpu/rpc_host_call.h
M libc/src/pthread/pthread_condattr_init.cpp
M libc/src/pthread/pthread_condattr_setclock.cpp
M libc/src/stdlib/exit_handler.h
M libc/src/sys/CMakeLists.txt
A libc/src/sys/uio/CMakeLists.txt
A libc/src/sys/uio/linux/CMakeLists.txt
A libc/src/sys/uio/linux/writev.cpp
A libc/src/sys/uio/writev.h
M libc/src/time/CMakeLists.txt
M libc/src/time/asctime.cpp
M libc/src/time/asctime.h
M libc/src/time/asctime_r.cpp
M libc/src/time/asctime_r.h
M libc/src/time/ctime.cpp
M libc/src/time/ctime_r.cpp
M libc/src/time/difftime.h
M libc/src/time/gmtime.h
M libc/src/time/gmtime_r.h
M libc/src/time/gpu/clock.cpp
M libc/src/time/gpu/nanosleep.cpp
M libc/src/time/mktime.cpp
M libc/src/time/mktime.h
M libc/src/time/time.cpp
A libc/src/time/time_constants.h
M libc/src/time/time_utils.cpp
M libc/src/time/time_utils.h
M libc/test/UnitTest/ExecuteFunctionUnix.cpp
M libc/test/UnitTest/FPExceptMatcher.cpp
M libc/test/UnitTest/LibcDeathTestExecutors.cpp
M libc/test/src/sys/CMakeLists.txt
A libc/test/src/sys/uio/CMakeLists.txt
A libc/test/src/sys/uio/writev_test.cpp
M libc/test/src/time/CMakeLists.txt
M libc/test/src/time/TmHelper.h
M libc/test/src/time/TmMatcher.h
M libc/test/src/time/asctime_r_test.cpp
M libc/test/src/time/clock_gettime_test.cpp
M libc/test/src/time/clock_test.cpp
M libc/test/src/time/ctime_r_test.cpp
M libc/test/src/time/difftime_test.cpp
M libc/test/src/time/gettimeofday_test.cpp
M libc/test/src/time/gmtime_r_test.cpp
M libc/test/src/time/gmtime_test.cpp
M libc/test/src/time/mktime_test.cpp
M libc/test/src/time/nanosleep_test.cpp
A libc/utils/docgen/aio.yaml
A libc/utils/docgen/net/if.yaml
A libc/utils/docgen/netinet/in.yaml
M libc/utils/hdrgen/README.rst
M libc/utils/hdrgen/header.py
A libc/utils/hdrgen/main.py
M libc/utils/hdrgen/tests/input/test_small.yaml
M libc/utils/hdrgen/tests/test_integration.py
M libc/utils/hdrgen/yaml_to_classes.py
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/Hardening.rst
M libcxx/docs/ReleaseNotes/19.rst
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/docs/TestingLibcxx.rst
M libcxx/include/CMakeLists.txt
M libcxx/include/__algorithm/comp_ref_type.h
M libcxx/include/__algorithm/copy.h
M libcxx/include/__algorithm/iterator_operations.h
M libcxx/include/__algorithm/mismatch.h
M libcxx/include/__algorithm/move.h
A libcxx/include/__algorithm/radix_sort.h
M libcxx/include/__algorithm/ranges_iterator_concept.h
M libcxx/include/__algorithm/ranges_unique_copy.h
M libcxx/include/__algorithm/simd_utils.h
M libcxx/include/__algorithm/sort.h
M libcxx/include/__algorithm/stable_sort.h
M libcxx/include/__algorithm/three_way_comp_ref_type.h
M libcxx/include/__algorithm/unwrap_iter.h
M libcxx/include/__atomic/aliases.h
M libcxx/include/__atomic/atomic.h
M libcxx/include/__atomic/atomic_ref.h
M libcxx/include/__atomic/atomic_sync.h
M libcxx/include/__atomic/contention_t.h
M libcxx/include/__atomic/memory_order.h
M libcxx/include/__bit/bit_log2.h
M libcxx/include/__bit_reference
M libcxx/include/__chrono/formatter.h
M libcxx/include/__chrono/hh_mm_ss.h
M libcxx/include/__chrono/parser_std_format_spec.h
M libcxx/include/__chrono/weekday.h
M libcxx/include/__chrono/zoned_time.h
M libcxx/include/__compare/ordering.h
M libcxx/include/__compare/synth_three_way.h
M libcxx/include/__config
M libcxx/include/__cxx03/__chrono/weekday.h
M libcxx/include/__cxx03/__functional/function.h
M libcxx/include/__cxx03/future
M libcxx/include/__cxx03/regex
M libcxx/include/__exception/exception_ptr.h
M libcxx/include/__expected/expected.h
M libcxx/include/__expected/unexpected.h
M libcxx/include/__filesystem/directory_entry.h
M libcxx/include/__filesystem/path.h
M libcxx/include/__flat_map/flat_map.h
M libcxx/include/__flat_map/key_value_iterator.h
M libcxx/include/__format/buffer.h
M libcxx/include/__format/concepts.h
M libcxx/include/__format/container_adaptor.h
M libcxx/include/__format/format_arg.h
M libcxx/include/__format/format_arg_store.h
M libcxx/include/__format/format_functions.h
M libcxx/include/__format/formatter_floating_point.h
M libcxx/include/__format/formatter_string.h
M libcxx/include/__format/range_default_formatter.h
M libcxx/include/__format/unicode.h
M libcxx/include/__functional/binary_function.h
M libcxx/include/__functional/bind.h
M libcxx/include/__functional/boyer_moore_searcher.h
M libcxx/include/__functional/function.h
M libcxx/include/__functional/not_fn.h
M libcxx/include/__functional/perfect_forward.h
M libcxx/include/__functional/unary_function.h
M libcxx/include/__hash_table
M libcxx/include/__iterator/aliasing_iterator.h
M libcxx/include/__iterator/concepts.h
M libcxx/include/__iterator/insert_iterator.h
M libcxx/include/__iterator/iterator_traits.h
M libcxx/include/__iterator/projected.h
M libcxx/include/__iterator/ranges_iterator_traits.h
M libcxx/include/__iterator/reverse_iterator.h
M libcxx/include/__iterator/segmented_iterator.h
M libcxx/include/__locale
M libcxx/include/__locale_dir/locale_base_api.h
R libcxx/include/__locale_dir/locale_base_api/bsd_locale_defaults.h
M libcxx/include/__locale_dir/support/bsd_like.h
M libcxx/include/__locale_dir/support/windows.h
M libcxx/include/__mdspan/extents.h
M libcxx/include/__memory/allocation_guard.h
M libcxx/include/__memory/pointer_traits.h
M libcxx/include/__memory/shared_ptr.h
M libcxx/include/__memory/unique_ptr.h
M libcxx/include/__memory/unique_temporary_buffer.h
M libcxx/include/__node_handle
M libcxx/include/__pstl/backend_fwd.h
M libcxx/include/__pstl/dispatch.h
M libcxx/include/__ranges/chunk_by_view.h
M libcxx/include/__ranges/drop_view.h
M libcxx/include/__ranges/drop_while_view.h
M libcxx/include/__ranges/elements_view.h
M libcxx/include/__ranges/filter_view.h
M libcxx/include/__ranges/iota_view.h
M libcxx/include/__ranges/join_view.h
M libcxx/include/__ranges/lazy_split_view.h
M libcxx/include/__ranges/repeat_view.h
M libcxx/include/__ranges/reverse_view.h
M libcxx/include/__ranges/split_view.h
M libcxx/include/__ranges/subrange.h
M libcxx/include/__ranges/take_view.h
M libcxx/include/__ranges/take_while_view.h
M libcxx/include/__ranges/transform_view.h
M libcxx/include/__split_buffer
M libcxx/include/__stop_token/stop_state.h
M libcxx/include/__support/xlocale/__posix_l_fallback.h
M libcxx/include/__system_error/system_error.h
M libcxx/include/__thread/support/pthread.h
M libcxx/include/__tuple/make_tuple_types.h
M libcxx/include/__tuple/sfinae_helpers.h
M libcxx/include/__tuple/tuple_size.h
M libcxx/include/__type_traits/add_lvalue_reference.h
M libcxx/include/__type_traits/add_pointer.h
M libcxx/include/__type_traits/add_rvalue_reference.h
M libcxx/include/__type_traits/aligned_storage.h
M libcxx/include/__type_traits/common_reference.h
M libcxx/include/__type_traits/common_type.h
M libcxx/include/__type_traits/conjunction.h
M libcxx/include/__type_traits/copy_cv.h
M libcxx/include/__type_traits/copy_cvref.h
M libcxx/include/__type_traits/disjunction.h
M libcxx/include/__type_traits/invoke.h
M libcxx/include/__type_traits/is_always_bitcastable.h
M libcxx/include/__type_traits/is_char_like_type.h
M libcxx/include/__type_traits/is_equality_comparable.h
M libcxx/include/__type_traits/is_execution_policy.h
M libcxx/include/__type_traits/is_primary_template.h
M libcxx/include/__type_traits/is_same.h
M libcxx/include/__type_traits/is_swappable.h
M libcxx/include/__type_traits/make_32_64_or_128_bit.h
M libcxx/include/__type_traits/make_const_lvalue_ref.h
M libcxx/include/__type_traits/make_signed.h
M libcxx/include/__type_traits/make_unsigned.h
M libcxx/include/__type_traits/maybe_const.h
M libcxx/include/__type_traits/remove_all_extents.h
M libcxx/include/__type_traits/remove_const.h
M libcxx/include/__type_traits/remove_const_ref.h
M libcxx/include/__type_traits/remove_cv.h
M libcxx/include/__type_traits/remove_cvref.h
M libcxx/include/__type_traits/remove_extent.h
M libcxx/include/__type_traits/remove_pointer.h
M libcxx/include/__type_traits/remove_reference.h
M libcxx/include/__type_traits/remove_volatile.h
M libcxx/include/__type_traits/unwrap_ref.h
M libcxx/include/__type_traits/void_t.h
M libcxx/include/__utility/exception_guard.h
M libcxx/include/__utility/forward_like.h
M libcxx/include/__utility/in_place.h
M libcxx/include/__utility/integer_sequence.h
M libcxx/include/__utility/move.h
M libcxx/include/__utility/pair.h
M libcxx/include/__utility/swap.h
M libcxx/include/__vector/vector.h
M libcxx/include/__vector/vector_bool.h
M libcxx/include/any
M libcxx/include/array
M libcxx/include/barrier
M libcxx/include/bitset
M libcxx/include/ccomplex
M libcxx/include/ciso646
M libcxx/include/complex
M libcxx/include/cstdalign
M libcxx/include/cstdbool
M libcxx/include/ctgmath
M libcxx/include/deque
M libcxx/include/experimental/__simd/scalar.h
M libcxx/include/experimental/__simd/simd.h
M libcxx/include/experimental/__simd/simd_mask.h
M libcxx/include/experimental/__simd/vec_ext.h
M libcxx/include/forward_list
M libcxx/include/functional
M libcxx/include/future
M libcxx/include/ios
M libcxx/include/locale
M libcxx/include/module.modulemap
M libcxx/include/optional
M libcxx/include/ratio
M libcxx/include/regex
M libcxx/include/source_location
M libcxx/include/string
M libcxx/include/tuple
M libcxx/include/variant
M libcxx/include/version
M libcxx/src/experimental/tzdb.cpp
M libcxx/src/filesystem/directory_iterator.cpp
M libcxx/src/filesystem/error.h
M libcxx/src/filesystem/file_descriptor.h
M libcxx/src/filesystem/operations.cpp
M libcxx/src/filesystem/posix_compat.h
M libcxx/src/include/overridable_function.h
M libcxx/src/locale.cpp
M libcxx/src/new.cpp
M libcxx/src/print.cpp
M libcxx/src/system_error.cpp
M libcxx/test/benchmarks/numeric/gcd.bench.cpp
A libcxx/test/libcxx/containers/sequences/forwardlist/assert.pass.cpp
A libcxx/test/libcxx/containers/sequences/vector.bool/assert.pass.cpp
A libcxx/test/libcxx/diagnostics/system_error_win_codes.pass.cpp
M libcxx/test/libcxx/gdb/gdb_pretty_printer_test.py
M libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp
A libcxx/test/libcxx/utilities/function.objects/func.not.fn/not_fn.nttp.compile.pass.cpp
A libcxx/test/libcxx/utilities/function.objects/func.not.fn/not_fn.nttp.nodiscard.verify.cpp
M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort.pass.cpp
M libcxx/test/std/atomics/atomics.ref/exchange.pass.cpp
A libcxx/test/std/containers/sequences/vector.bool/at.pass.cpp
A libcxx/test/std/containers/sequences/vector.bool/at_const.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/flip.pass.cpp
M libcxx/test/std/containers/sequences/vector/vector.data/data_const.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.compare/eq_error_code_error_code.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.derived/message.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/system_category.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/file_type_obs.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/status.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/symlink_status.pass.cpp
A libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file_procfs.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
A libcxx/test/std/utilities/function.objects/func.not_fn/not_fn.nttp.pass.cpp
A libcxx/test/std/utilities/function.objects/func.not_fn/not_fn.nttp.verify.cpp
M libcxx/test/std/utilities/template.bitset/bitset.members/index_const.pass.cpp
M libcxx/test/std/utilities/template.bitset/bitset.members/nonstdmem.uglified.compile.pass.cpp
M libcxx/test/support/filesystem_test_helper.h
M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
M libcxx/test/tools/clang_tidy_checks/libcpp_module.cpp
A libcxx/test/tools/clang_tidy_checks/nodebug_on_aliases.cpp
A libcxx/test/tools/clang_tidy_checks/nodebug_on_aliases.hpp
M libcxx/test/tools/clang_tidy_checks/uglify_attributes.cpp
A libcxx/test/tools/clang_tidy_checks/utilities.hpp
M libcxx/utils/gdb/libcxx/printers.py
M libcxx/utils/generate_feature_test_macro_components.py
A libcxx/utils/libcxx-benchmark-json
A libcxx/utils/libcxx-compare-benchmarks
M libcxxabi/src/stdlib_new_delete.cpp
M lld/COFF/Chunks.cpp
M lld/COFF/Chunks.h
M lld/COFF/Driver.h
M lld/COFF/Writer.cpp
M lld/Common/BPSectionOrdererBase.cpp
M lld/ELF/SymbolTable.cpp
M lld/MachO/BPSectionOrderer.cpp
M lld/MachO/BPSectionOrderer.h
M lld/MachO/ConcatOutputSection.cpp
M lld/MachO/ConcatOutputSection.h
M lld/MachO/MapFile.cpp
M lld/MachO/OutputSection.h
M lld/MachO/SectionPriorities.cpp
M lld/MachO/SectionPriorities.h
M lld/MachO/Writer.cpp
M lld/include/lld/Common/BPSectionOrdererBase.h
M lld/test/COFF/arm64x-loadconfig.s
A lld/test/COFF/baserel-sort.yaml
M lld/test/MachO/arm64-thunks.s
M lldb/examples/python/crashlog.py
M lldb/include/lldb/Core/Progress.h
M lldb/include/lldb/Host/HostInfo.h
M lldb/include/lldb/Symbol/Block.h
M lldb/include/lldb/Symbol/Function.h
M lldb/include/lldb/Target/MemoryRegionInfo.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/source/API/SBBlock.cpp
M lldb/source/API/SBFunction.cpp
M lldb/source/Breakpoint/BreakpointResolver.cpp
M lldb/source/Breakpoint/BreakpointResolverName.cpp
M lldb/source/Core/Progress.cpp
M lldb/source/Core/SearchFilter.cpp
M lldb/source/Expression/DWARFExpressionList.cpp
M lldb/source/Expression/IRExecutionUnit.cpp
M lldb/source/Host/common/Host.cpp
M lldb/source/Host/freebsd/Host.cpp
M lldb/source/Host/linux/Host.cpp
M lldb/source/Host/netbsd/HostNetBSD.cpp
M lldb/source/Host/openbsd/Host.cpp
M lldb/source/Host/posix/ConnectionFileDescriptorPosix.cpp
M lldb/source/Host/posix/FileSystemPosix.cpp
M lldb/source/Plugins/Architecture/Mips/ArchitectureMips.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
M lldb/source/Plugins/InstrumentationRuntime/ASanLibsanitizers/InstrumentationRuntimeASanLibsanitizers.cpp
M lldb/source/Plugins/InstrumentationRuntime/Utility/ReportRetriever.cpp
M lldb/source/Plugins/Language/ObjC/Cocoa.cpp
M lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp
M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
M lldb/source/Plugins/Platform/Android/PlatformAndroidRemoteGDBServer.cpp
M lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Symbol/Block.cpp
M lldb/source/Symbol/Function.cpp
M lldb/source/Symbol/SymbolContext.cpp
M lldb/source/Symbol/Variable.cpp
M lldb/source/Target/StackFrame.cpp
M lldb/source/Target/ThreadPlanStepInRange.cpp
M lldb/source/ValueObject/ValueObjectVariable.cpp
M lldb/unittests/Core/ProgressReportTest.cpp
M lldb/unittests/Utility/RangeMapTest.cpp
M llvm/Maintainers.md
M llvm/cmake/modules/AddLLVM.cmake
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/DirectX/DXILResources.rst
M llvm/docs/GettingInvolved.rst
M llvm/docs/GettingStarted.rst
M llvm/docs/LangRef.rst
M llvm/docs/NVPTXUsage.rst
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/ADT/STLFunctionalExtras.h
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/include/llvm/Analysis/ValueTracking.h
M llvm/include/llvm/Analysis/VectorUtils.h
M llvm/include/llvm/BinaryFormat/ELF.h
A llvm/include/llvm/BinaryFormat/ELFRelocs/RISCV_nonstandard.def
M llvm/include/llvm/CodeGen/AsmPrinter.h
M llvm/include/llvm/CodeGen/ReachingDefAnalysis.h
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/DebugInfo/GSYM/FunctionInfo.h
M llvm/include/llvm/DebugInfo/GSYM/GsymReader.h
M llvm/include/llvm/DebugInfo/GSYM/MergedFunctionsInfo.h
M llvm/include/llvm/ExecutionEngine/Orc/Core.h
M llvm/include/llvm/ExecutionEngine/Orc/JITLinkReentryTrampolines.h
M llvm/include/llvm/ExecutionEngine/Orc/LazyReexports.h
M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
M llvm/include/llvm/ExecutionEngine/Orc/TaskDispatch.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
R llvm/include/llvm/IR/NVVMIntrinsicFlags.h
A llvm/include/llvm/IR/NVVMIntrinsicUtils.h
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/IR/VectorTypeUtils.h
M llvm/include/llvm/Option/OptTable.h
M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
M llvm/include/llvm/SandboxIR/Context.h
M llvm/include/llvm/SandboxIR/Pass.h
M llvm/include/llvm/SandboxIR/Utils.h
M llvm/include/llvm/Support/Casting.h
M llvm/include/llvm/Support/Recycler.h
M llvm/include/llvm/Support/Timer.h
A llvm/include/llvm/TargetParser/AArch64FeatPriorities.inc
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/include/llvm/TargetParser/Triple.h
M llvm/include/llvm/Transforms/IPO/Attributor.h
M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
M llvm/include/llvm/Transforms/Instrumentation/BoundsChecking.h
M llvm/include/llvm/Transforms/Instrumentation/TypeSanitizer.h
M llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
M llvm/include/llvm/Transforms/Utils/Local.h
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Legality.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Scheduler.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h
M llvm/include/module.modulemap
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/Lint.cpp
M llvm/lib/Analysis/Loads.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
M llvm/lib/CodeGen/MIRSampleProfile.cpp
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
M llvm/lib/CodeGen/MachineBranchProbabilityInfo.cpp
M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/lib/CodeGen/RegisterBankInfo.cpp
M llvm/lib/CodeGen/RegisterCoalescer.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/DebugInfo/GSYM/FunctionInfo.cpp
M llvm/lib/DebugInfo/GSYM/GsymReader.cpp
M llvm/lib/DebugInfo/GSYM/MergedFunctionsInfo.cpp
M llvm/lib/ExecutionEngine/Orc/Core.cpp
M llvm/lib/ExecutionEngine/Orc/JITLinkReentryTrampolines.cpp
M llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
M llvm/lib/ExecutionEngine/Orc/TaskDispatch.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/VectorTypeUtils.cpp
M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
M llvm/lib/ObjCopy/MachO/MachOLayoutBuilder.cpp
M llvm/lib/ObjCopy/MachO/MachOObject.cpp
M llvm/lib/ObjCopy/MachO/MachOObject.h
M llvm/lib/ObjCopy/MachO/MachOReader.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
M llvm/lib/SandboxIR/Context.cpp
M llvm/lib/Support/Timer.cpp
M llvm/lib/Support/Unix/Signals.inc
M llvm/lib/TableGen/TGParser.cpp
M llvm/lib/TableGen/TGParser.h
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64FMV.td
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
M llvm/lib/Target/AArch64/AArch64SystemOperands.td
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp
M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp
M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.h
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCombinerHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCombinerHelper.h
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
A llvm/lib/Target/AMDGPU/AMDGPUPreloadKernArgProlog.cpp
A llvm/lib/Target/AMDGPU/AMDGPUPreloadKernArgProlog.h
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/BUFInstructions.td
M llvm/lib/Target/AMDGPU/CMakeLists.txt
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
M llvm/lib/Target/AMDGPU/MIMGInstructions.td
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/lib/Target/AMDGPU/SMInstructions.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/ARM/ARMSystemRegister.td
M llvm/lib/Target/ARM/Utils/ARMBaseInfo.cpp
M llvm/lib/Target/ARM/Utils/ARMBaseInfo.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/DXILOpLowering.cpp
M llvm/lib/Target/DirectX/DXILResourceAccess.cpp
M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
M llvm/lib/Target/Hexagon/HexagonPatterns.td
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
M llvm/lib/Target/M68k/AsmParser/M68kAsmParser.cpp
M llvm/lib/Target/M68k/Disassembler/M68kDisassembler.cpp
M llvm/lib/Target/M68k/M68kInstrData.td
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXCtorDtorLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXSubtarget.cpp
M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
M llvm/lib/Target/NVPTX/NVVMReflect.cpp
M llvm/lib/Target/RISCV/CMakeLists.txt
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/RISCV.td
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.h
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrFormatsC.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZc.td
A llvm/lib/Target/RISCV/RISCVPfmCounters.td
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/RISCV/RISCVSchedSiFiveP400.td
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
M llvm/lib/Target/SPIRV/CMakeLists.txt
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
R llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.cpp
M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.h
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.h
M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
M llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
M llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/TargetParser/AArch64TargetParser.cpp
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/lib/TargetParser/Triple.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
M llvm/lib/Transforms/IPO/SampleProfile.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/LowerAllowCheckPass.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Instrumentation/TypeSanitizer.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Scalar/LoopVersioningLICM.cpp
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/LoopSimplify.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SeedCollector.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Analysis/CostModel/AArch64/cast.ll
M llvm/test/Analysis/CostModel/AArch64/div.ll
M llvm/test/Analysis/CostModel/AArch64/rem.ll
M llvm/test/Analysis/CostModel/AArch64/shuffle-extract.ll
A llvm/test/Analysis/CostModel/AArch64/sve-div.ll
A llvm/test/Analysis/CostModel/AArch64/sve-rem.ll
M llvm/test/Analysis/CostModel/RISCV/fp-min-max-abs.ll
M llvm/test/Analysis/CostModel/RISCV/fp-sqrt-pow.ll
A llvm/test/Analysis/CostModel/RISCV/reduce-and-i1.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-and.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-max.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-min.ll
M llvm/test/Analysis/CostModel/X86/shuffle-two-src-codesize.ll
M llvm/test/Analysis/CostModel/X86/shuffle-two-src-latency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-two-src-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-two-src.ll
M llvm/test/Analysis/CostModel/X86/vector-insert-value.ll
A llvm/test/Analysis/Lint/abi-attrs.ll
M llvm/test/Analysis/UniformityAnalysis/NVPTX/daorder.ll
M llvm/test/Analysis/UniformityAnalysis/NVPTX/diverge.ll
M llvm/test/Analysis/UniformityAnalysis/NVPTX/hidden_diverge.ll
M llvm/test/Analysis/UniformityAnalysis/NVPTX/irreducible.ll
A llvm/test/Analysis/ValueTracking/implied-condition-samesign.ll
M llvm/test/CodeGen/AArch64/aarch64-dup-ext-crash.ll
M llvm/test/CodeGen/AArch64/arm64-fast-isel-conversion-fallback.ll
M llvm/test/CodeGen/AArch64/arm64-popcnt.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fadd.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fmax.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fmin.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fsub.ll
M llvm/test/CodeGen/AArch64/bf16-instructions.ll
M llvm/test/CodeGen/AArch64/bf16-v8-instructions.ll
A llvm/test/CodeGen/AArch64/complex-deinterleaving-opt-crash.ll
M llvm/test/CodeGen/AArch64/const-shift-of-constmasked.ll
M llvm/test/CodeGen/AArch64/cvt-fp-int-fp.ll
M llvm/test/CodeGen/AArch64/dp1.ll
M llvm/test/CodeGen/AArch64/extract-bits.ll
M llvm/test/CodeGen/AArch64/fpenv.ll
A llvm/test/CodeGen/AArch64/hwasan-zero-ptr.ll
M llvm/test/CodeGen/AArch64/machine-combiner.ll
M llvm/test/CodeGen/AArch64/parity.ll
M llvm/test/CodeGen/AArch64/popcount.ll
M llvm/test/CodeGen/AArch64/register-coalesce-update-subranges-remat.mir
M llvm/test/CodeGen/AArch64/round-fptosi-sat-scalar.ll
A llvm/test/CodeGen/AArch64/sme-intrinsics-state.ll
M llvm/test/CodeGen/AArch64/trampoline.ll
M llvm/test/CodeGen/AArch64/xbfiz.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
A llvm/test/CodeGen/AMDGPU/add64-low-32-bits-known-zero.ll
M llvm/test/CodeGen/AMDGPU/bitop3.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch.ll
M llvm/test/CodeGen/AMDGPU/fma.f16.ll
M llvm/test/CodeGen/AMDGPU/fmed3.ll
M llvm/test/CodeGen/AMDGPU/gfx11-twoaddr-fma.mir
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx940.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.xf32.gfx940.ll
M llvm/test/CodeGen/AMDGPU/minmax.ll
A llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.ll
A llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.mir
A llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-read.mir
M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
M llvm/test/CodeGen/AMDGPU/preload-kernarg-header.ll
M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll
A llvm/test/CodeGen/AMDGPU/prevent-fmul-hoist-ir.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
A llvm/test/CodeGen/AMDGPU/remat-physreg-copy-subreg-extract-already-live-at-def-issue120970.mir
M llvm/test/CodeGen/AMDGPU/s-barrier.ll
M llvm/test/CodeGen/AMDGPU/sdiv64.ll
M llvm/test/CodeGen/AMDGPU/smed3.ll
M llvm/test/CodeGen/AMDGPU/srem64.ll
A llvm/test/CodeGen/AMDGPU/sub64-low-32-bits-known-zero.ll
M llvm/test/CodeGen/AMDGPU/swdev502267-use-after-free-last-chance-recoloring-alloc-succeeds.mir
A llvm/test/CodeGen/AMDGPU/swdev503538-move-to-valu-stack-srd-physreg.ll
M llvm/test/CodeGen/AMDGPU/umed3.ll
M llvm/test/CodeGen/AMDGPU/vector_shuffle.packed.ll
M llvm/test/CodeGen/AMDGPU/waitcnt-meta-instructions.mir
A llvm/test/CodeGen/ARM/sink-store-pre-load-dependency.mir
A llvm/test/CodeGen/DirectX/BufferLoad-sm61.ll
M llvm/test/CodeGen/DirectX/BufferLoad.ll
R llvm/test/CodeGen/DirectX/HLSLControlFlowHint.ll
A llvm/test/CodeGen/DirectX/RawBufferLoad-error64.ll
A llvm/test/CodeGen/DirectX/RawBufferLoad.ll
M llvm/test/CodeGen/DirectX/ResourceAccess/load_typedbuffer.ll
M llvm/test/CodeGen/DirectX/ResourceAccess/store_typedbuffer.ll
M llvm/test/CodeGen/DirectX/ResourceGlobalElimination.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/typed-uav-load-additional-formats.ll
R llvm/test/CodeGen/DirectX/length.ll
R llvm/test/CodeGen/DirectX/length_error.ll
R llvm/test/CodeGen/DirectX/length_invalid_intrinsic_error.ll
R llvm/test/CodeGen/DirectX/length_invalid_intrinsic_error_scalar.ll
A llvm/test/CodeGen/Hexagon/isel/isel-tfrrp.ll
A llvm/test/CodeGen/Hexagon/loopIdiom.ll
M llvm/test/CodeGen/NVPTX/b52037.ll
M llvm/test/CodeGen/NVPTX/bug21465.ll
M llvm/test/CodeGen/NVPTX/bug22322.ll
M llvm/test/CodeGen/NVPTX/bug26185.ll
M llvm/test/CodeGen/NVPTX/call-with-alloca-buffer.ll
M llvm/test/CodeGen/NVPTX/cluster-dim.ll
A llvm/test/CodeGen/NVPTX/cp-async-bulk.ll
A llvm/test/CodeGen/NVPTX/disjoint-or-addr.ll
M llvm/test/CodeGen/NVPTX/generic-to-nvvm.ll
M llvm/test/CodeGen/NVPTX/i1-array-global.ll
M llvm/test/CodeGen/NVPTX/i1-ext-load.ll
M llvm/test/CodeGen/NVPTX/i1-global.ll
M llvm/test/CodeGen/NVPTX/i1-param.ll
M llvm/test/CodeGen/NVPTX/intr-range.ll
M llvm/test/CodeGen/NVPTX/kernel-param-align.ll
M llvm/test/CodeGen/NVPTX/load-with-non-coherent-cache.ll
M llvm/test/CodeGen/NVPTX/local-stack-frame.ll
M llvm/test/CodeGen/NVPTX/lower-alloca.ll
M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
M llvm/test/CodeGen/NVPTX/lower-args.ll
M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
M llvm/test/CodeGen/NVPTX/lower-ctor-dtor.ll
M llvm/test/CodeGen/NVPTX/lower-kernel-ptr-arg.ll
M llvm/test/CodeGen/NVPTX/maxclusterrank.ll
M llvm/test/CodeGen/NVPTX/noduplicate-syncthreads.ll
M llvm/test/CodeGen/NVPTX/noreturn.ll
M llvm/test/CodeGen/NVPTX/nvcl-param-align.ll
M llvm/test/CodeGen/NVPTX/nvvm-reflect-arch.ll
M llvm/test/CodeGen/NVPTX/nvvm-reflect-ocl.ll
M llvm/test/CodeGen/NVPTX/nvvm-reflect-opaque.ll
M llvm/test/CodeGen/NVPTX/nvvm-reflect.ll
M llvm/test/CodeGen/NVPTX/refl1.ll
M llvm/test/CodeGen/NVPTX/reg-copy.ll
M llvm/test/CodeGen/NVPTX/simple-call.ll
M llvm/test/CodeGen/NVPTX/surf-read-cuda.ll
M llvm/test/CodeGen/NVPTX/surf-read.ll
M llvm/test/CodeGen/NVPTX/surf-tex.py
M llvm/test/CodeGen/NVPTX/surf-write-cuda.ll
M llvm/test/CodeGen/NVPTX/surf-write.ll
M llvm/test/CodeGen/NVPTX/tex-read-cuda.ll
M llvm/test/CodeGen/NVPTX/tex-read.ll
M llvm/test/CodeGen/NVPTX/unreachable.ll
M llvm/test/CodeGen/NVPTX/variadics-backend.ll
A llvm/test/CodeGen/PowerPC/global-merge-aix-zero-size-struct.ll
M llvm/test/CodeGen/RISCV/GlobalISel/add-imm.ll
M llvm/test/CodeGen/RISCV/GlobalISel/alu-roundtrip.ll
M llvm/test/CodeGen/RISCV/GlobalISel/combine-neg-abs.ll
M llvm/test/CodeGen/RISCV/GlobalISel/combine.ll
M llvm/test/CodeGen/RISCV/GlobalISel/double-zfa.ll
M llvm/test/CodeGen/RISCV/GlobalISel/freeze.ll
M llvm/test/CodeGen/RISCV/GlobalISel/iabs.ll
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-add-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-addo-subo-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-const-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ext-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rotate-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-sat-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-sub-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbb.ll
M llvm/test/CodeGen/RISCV/GlobalISel/scmp.ll
M llvm/test/CodeGen/RISCV/GlobalISel/ucmp.ll
M llvm/test/CodeGen/RISCV/add_sext_shl_constant.ll
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/kcfi-isel-mir.ll
M llvm/test/CodeGen/RISCV/kcfi-mir.ll
M llvm/test/CodeGen/RISCV/rvv/access-fixed-objects-by-rvv.ll
A llvm/test/CodeGen/RISCV/rvv/allone-masked-to-unmasked.mir
M llvm/test/CodeGen/RISCV/rvv/bitreverse-vp.ll
M llvm/test/CodeGen/RISCV/rvv/bswap-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-formation.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-reverse.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-rotate.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fold-binary-reduce.ll
M llvm/test/CodeGen/RISCV/rvv/narrow-shift-extend.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
A llvm/test/CodeGen/RISCV/rvv/stack-probing-rvv.ll
M llvm/test/CodeGen/RISCV/rvv/vadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vand-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vandn-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vdiv-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vdivu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfdiv-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmul-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp-mask.ll
M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp-mask.ll
M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfsqrt-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
M llvm/test/CodeGen/RISCV/rvv/vl-opt.mir
A llvm/test/CodeGen/RISCV/rvv/vlopt-volatile-ld.mir
M llvm/test/CodeGen/RISCV/rvv/vmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmaxu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vminu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmul-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vnmsac-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vor-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-mask.ll
M llvm/test/CodeGen/RISCV/rvv/vrem-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vremu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vrsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsaddu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vssub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vssubu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vxor-vp.ll
M llvm/test/CodeGen/RISCV/stack-clash-prologue.ll
M llvm/test/CodeGen/SPIRV/AtomicCompareExchange.ll
M llvm/test/CodeGen/SPIRV/event-zero-const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_optnone.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp-simple-hierarchy.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fun-ptr-addrcast.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_inline_assembly/inline_asm.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_shader_clock/shader_clock.ll
A llvm/test/CodeGen/SPIRV/global-var-name-linkage.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/cross.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/length.ll
M llvm/test/CodeGen/SPIRV/iaddcarry-builtin.ll
M llvm/test/CodeGen/SPIRV/image-unoptimized.ll
M llvm/test/CodeGen/SPIRV/isubborrow-builtin.ll
M llvm/test/CodeGen/SPIRV/keep-tracked-const.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/fshl.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/fshr.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/memset.ll
M llvm/test/CodeGen/SPIRV/logical-access-chain.ll
M llvm/test/CodeGen/SPIRV/opencl/degrees.ll
M llvm/test/CodeGen/SPIRV/opencl/radians.ll
M llvm/test/CodeGen/SPIRV/pointers/PtrCast-null-in-OpSpecConstantOp.ll
M llvm/test/CodeGen/SPIRV/pointers/struct-opaque-pointers.ll
R llvm/test/CodeGen/SPIRV/structurizer/HLSLControlFlowHint-pass-check.ll
R llvm/test/CodeGen/SPIRV/structurizer/HLSLControlFlowHint.ll
M llvm/test/CodeGen/SPIRV/transcoding/SampledImage.ll
M llvm/test/CodeGen/SPIRV/transcoding/cl-types.ll
M llvm/test/CodeGen/SPIRV/transcoding/spirv-private-array-initialization.ll
M llvm/test/CodeGen/SPIRV/transcoding/sub_group_non_uniform_arithmetic.ll
M llvm/test/CodeGen/SPIRV/unnamed-global.ll
M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll
M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.mir
M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll
M llvm/test/CodeGen/WebAssembly/eh-option-errors.ll
M llvm/test/CodeGen/WebAssembly/exception-legacy.ll
M llvm/test/CodeGen/WebAssembly/exception-legacy.mir
M llvm/test/CodeGen/WebAssembly/exception.ll
M llvm/test/CodeGen/X86/codegen-prepare-addrmode-sext.ll
M llvm/test/CodeGen/X86/shuffle-vs-trunc-512.ll
A llvm/test/CodeGen/X86/uint_to_half.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
M llvm/test/DebugInfo/NVPTX/debug-addr-class.ll
M llvm/test/DebugInfo/NVPTX/debug-info.ll
A llvm/test/DebugInfo/X86/dwarf5-debug-names-addr-tu-to-non-tu.ll
M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_data_alignment.s
M llvm/test/ExecutionEngine/JITLink/AArch64/ELF_ehframe.s
M llvm/test/ExecutionEngine/JITLink/AArch64/MachO_compact_unwind.s
M llvm/test/ExecutionEngine/JITLink/AArch64/MachO_ehframe.s
M llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch64_ehframe.s
M llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call.s
M llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call_rvc.s
M llvm/test/ExecutionEngine/JITLink/RISCV/anonymous_symbol.s
M llvm/test/ExecutionEngine/JITLink/ppc64/ELF_ppc64_ehframe.s
M llvm/test/ExecutionEngine/JITLink/ppc64/external_weak.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_abs.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_any.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_associative.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_exact_match.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_intervene.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_largest.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_noduplicate.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_offset.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_same_size.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_weak.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_common_symbol.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_duplicate_externals.test
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_file_debug.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_static_var.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_weak_external.s
M llvm/test/ExecutionEngine/JITLink/x86-64/ELF_debug_section_lifetime_is_NoAlloc.yaml
M llvm/test/ExecutionEngine/JITLink/x86-64/ELF_ehframe_basic.s
M llvm/test/ExecutionEngine/JITLink/x86-64/ELF_ehframe_large_static_personality_encodings.s
M llvm/test/ExecutionEngine/JITLink/x86-64/LocalDependencyPropagation.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO-check-dwarf-filename.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO_compact_unwind.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO_cstring_section_alignment.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO_cstring_section_splitting.s
M llvm/test/ExecutionEngine/JITLink/x86-64/MachO_non_subsections_via_symbols.s
M llvm/test/Instrumentation/BoundsChecking/runtimes.ll
A llvm/test/Instrumentation/HWAddressSanitizer/zero-ptr.ll
M llvm/test/Instrumentation/TypeSanitizer/access-with-offset.ll
M llvm/test/Instrumentation/TypeSanitizer/alloca-only.ll
M llvm/test/Instrumentation/TypeSanitizer/alloca.ll
M llvm/test/Instrumentation/TypeSanitizer/anon.ll
M llvm/test/Instrumentation/TypeSanitizer/basic-nosan.ll
M llvm/test/Instrumentation/TypeSanitizer/basic.ll
M llvm/test/Instrumentation/TypeSanitizer/byval.ll
M llvm/test/Instrumentation/TypeSanitizer/globals.ll
M llvm/test/Instrumentation/TypeSanitizer/invalid-metadata.ll
M llvm/test/Instrumentation/TypeSanitizer/memintrinsics.ll
M llvm/test/Instrumentation/TypeSanitizer/nosanitize.ll
M llvm/test/Instrumentation/TypeSanitizer/sanitize-no-tbaa.ll
M llvm/test/Instrumentation/TypeSanitizer/swifterror.ll
M llvm/test/MC/AArch64/armv9.6a-rme-gpc3.s
M llvm/test/MC/AMDGPU/gfx1030_err.s
M llvm/test/MC/AMDGPU/gfx10_asm_smem_err.s
M llvm/test/MC/AMDGPU/gfx11_asm_mimg_err.s
M llvm/test/MC/AMDGPU/gfx11_asm_smem_err.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_promote.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop1.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop1.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_mimg_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_smem_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_sop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_promote.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp8.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp16.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp8.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3cx-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8.s
M llvm/test/MC/Disassembler/AArch64/armv9.6a-rme-gpc3.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx_dpp8.txt
A llvm/test/MC/M68k/Data/Classes/MxMoveSR.s
M llvm/test/MC/RISCV/custom_reloc.s
A llvm/test/MC/RISCV/xqcicm-invalid.s
A llvm/test/MC/RISCV/xqcicm-valid.s
M llvm/test/TableGen/template-args.td
A llvm/test/ThinLTO/X86/memprof-recursive.ll
M llvm/test/Transforms/InstCombine/and-xor-or.ll
M llvm/test/Transforms/InstCombine/compare-signs.ll
A llvm/test/Transforms/InstCombine/fold-binop-of-reductions.ll
M llvm/test/Transforms/InstCombine/icmp-add.ll
M llvm/test/Transforms/InstCombine/onehot_merge.ll
M llvm/test/Transforms/InstCombine/phi.ll
M llvm/test/Transforms/InstCombine/rotate.ll
M llvm/test/Transforms/InstCombine/select-divrem.ll
M llvm/test/Transforms/InstCombine/select.ll
M llvm/test/Transforms/InstCombine/xor-and-or.ll
A llvm/test/Transforms/InstSimplify/const-fold-nvvm-f2i-d2i.ll
A llvm/test/Transforms/InstSimplify/const-fold-nvvm-f2ll-d2ll.ll
A llvm/test/Transforms/LoadStoreVectorizer/X86/massive_indirection.ll
M llvm/test/Transforms/LoopStrengthReduce/NVPTX/trunc.ll
M llvm/test/Transforms/LoopVectorize/AArch64/blend-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
A llvm/test/Transforms/LoopVectorize/AArch64/scalable-struct-return.ll
M llvm/test/Transforms/LoopVectorize/RISCV/blend-any-of-reduction-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reverse-load-store.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-inbounds-flags-for-reverse-vector-pointer.ll
M llvm/test/Transforms/LoopVectorize/X86/pr109581-unused-blend.ll
M llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.ll
M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
A llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory.ll
M llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll
M llvm/test/Transforms/LoopVectorize/blend-in-header.ll
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
M llvm/test/Transforms/LoopVectorize/if-pred-stores.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization-2.ll
M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
M llvm/test/Transforms/LoopVectorize/pr37248.ll
M llvm/test/Transforms/LoopVectorize/pr55167-fold-tail-live-out.ll
M llvm/test/Transforms/LoopVectorize/reduction-small-size.ll
M llvm/test/Transforms/LoopVectorize/select-cmp.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
A llvm/test/Transforms/LoopVectorize/struct-return.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-switch.ll
A llvm/test/Transforms/LoopVectorize/transform-narrow-interleave-to-widen-memory.ll
A llvm/test/Transforms/LoopVectorize/uncountable-single-exit-loops.ll
M llvm/test/Transforms/LoopVectorize/uniform-blend.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll
A llvm/test/Transforms/MemProfContextDisambiguation/recursive.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/block_scaling_decompr_8bit.ll
M llvm/test/Transforms/PhaseOrdering/X86/hadd.ll
M llvm/test/Transforms/PhaseOrdering/X86/hsub.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-fadd.ll
A llvm/test/Transforms/SLPVectorizer/RISCV/long-gep-chains.ll
A llvm/test/Transforms/SLPVectorizer/X86/bv-shuffle-mask.ll
A llvm/test/Transforms/SLPVectorizer/X86/shuffle-mask-emission.ll
M llvm/test/Transforms/SandboxVectorizer/bottomup_basic.ll
A llvm/test/Transforms/SandboxVectorizer/bottomup_seed_slice.ll
A llvm/test/Transforms/SandboxVectorizer/bottomup_seed_slice_pow2.ll
M llvm/test/Transforms/StraightLineStrengthReduce/NVPTX/speculative-slsr.ll
M llvm/test/Transforms/VectorCombine/X86/extract-binop-inseltpoison.ll
M llvm/test/Transforms/VectorCombine/X86/extract-binop.ll
M llvm/test/Transforms/VectorCombine/X86/shuffle-of-cmps.ll
M llvm/test/tools/UpdateTestChecks/lit.local.cfg
A llvm/test/tools/dxil-dis/fastmath.ll
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-gsym-callsite-info-dsym.yaml
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-gsym-callsite-info-exe.yaml
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-gsym-callsite-info-obj.test
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-gsym-merged-callsites-dsym.yaml
M llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-merged-funcs-dwarf.yaml
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-basic-instructions.s
M llvm/test/tools/llvm-mca/ARM/cortex-a57-memory-instructions.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/div.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/mul-cpop.s
A llvm/test/tools/llvm-objcopy/MachO/strip-with-encryption-info.test
A llvm/test/tools/llvm-profgen/context-depth.test
M llvm/test/tools/llvm-profgen/recursion-compression-pseudoprobe.test
M llvm/tools/llvm-exegesis/lib/RISCV/Target.cpp
M llvm/tools/llvm-gsymutil/Opts.td
M llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.h
M llvm/tools/llvm-link/llvm-link.cpp
M llvm/tools/llvm-profgen/PerfReader.cpp
M llvm/unittests/ADT/PointerUnionTest.cpp
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
M llvm/unittests/MC/AMDGPU/DwarfRegMappings.cpp
M llvm/unittests/ProfileData/CoverageMappingTest.cpp
M llvm/unittests/Support/CMakeLists.txt
A llvm/unittests/Support/RecyclerTest.cpp
M llvm/unittests/Target/AMDGPU/DwarfRegMappings.cpp
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/VecUtilsTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
M llvm/unittests/tools/llvm-exegesis/CMakeLists.txt
A llvm/unittests/tools/llvm-exegesis/RISCV/CMakeLists.txt
A llvm/unittests/tools/llvm-exegesis/RISCV/SnippetGeneratorTest.cpp
A llvm/unittests/tools/llvm-exegesis/RISCV/TargetTest.cpp
A llvm/unittests/tools/llvm-exegesis/RISCV/TestBase.h
M llvm/utils/TableGen/Basic/ARMTargetDefEmitter.cpp
M llvm/utils/TableGen/DXILEmitter.cpp
M llvm/utils/UpdateTestChecks/common.py
M llvm/utils/gn/secondary/clang-tools-extra/clangd/unittests/BUILD.gn
M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-exegesis/lib/RISCV/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Support/BUILD.gn
A llvm/utils/gn/secondary/llvm/unittests/tools/llvm-exegesis/RISCV/BUILD.gn
M mlir/CMakeLists.txt
M mlir/docs/Bindings/Python.md
M mlir/docs/Dialects/OpenACCDialect.md
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
A mlir/include/mlir/Dialect/GPU/IR/ValueBoundsOpInterfaceImpl.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/NVVMDialect.h
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
M mlir/include/mlir/Dialect/SCF/Transforms/Patterns.h
M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
M mlir/include/mlir/IR/OperationSupport.h
M mlir/include/mlir/InitAllDialects.h
M mlir/include/mlir/Interfaces/ViewLikeInterface.h
M mlir/include/mlir/Transforms/LocationSnapshot.h
M mlir/include/mlir/Transforms/OneToNTypeConversion.h
M mlir/include/mlir/Transforms/Passes.td
M mlir/lib/Bindings/Python/IRCore.cpp
M mlir/lib/CAPI/Dialect/LLVM.cpp
M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRVPass.cpp
M mlir/lib/Conversion/GPUToVulkan/ConvertGPULaunchFuncToVulkanLaunchFunc.cpp
M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
M mlir/lib/Dialect/Affine/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/lib/Dialect/Affine/Utils/LoopUtils.cpp
M mlir/lib/Dialect/Affine/Utils/Utils.cpp
M mlir/lib/Dialect/GPU/CMakeLists.txt
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
A mlir/lib/Dialect/GPU/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/lib/Dialect/LLVMIR/CMakeLists.txt
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/lib/Dialect/SCF/Utils/Utils.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeConv2D.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeDepthwise.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeTransposeConv.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/lib/Transforms/LocationSnapshot.cpp
M mlir/test/Conversion/AffineToStandard/lower-affine-to-vector.mlir
M mlir/test/Conversion/AffineToStandard/lower-affine.mlir
A mlir/test/Conversion/ConvertToSPIRV/convert-gpu-modules-nested.mlir
M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl-hip.mlir
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl-opencl.mlir
M mlir/test/Conversion/GPUToSPIRV/printf.mlir
M mlir/test/Conversion/GPUToVulkan/lower-gpu-launch-vulkan-launch.mlir
M mlir/test/Conversion/MemRefToLLVM/expand-then-convert-to-llvm.mlir
M mlir/test/Conversion/SPIRVToLLVM/non-uniform-ops-to-llvm.mlir
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
M mlir/test/Conversion/TosaToTensor/tosa-to-tensor.mlir
M mlir/test/Dialect/Affine/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/Affine/value-bounds-reification.mlir
M mlir/test/Dialect/Arith/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/GPU/indirect-device-func-call.mlir
M mlir/test/Dialect/GPU/ops.mlir
M mlir/test/Dialect/GPU/test-nvvm-pipeline.mlir
A mlir/test/Dialect/GPU/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/LLVM/lower-to-llvm-e2e-with-target-tag.mlir
M mlir/test/Dialect/LLVM/lower-to-llvm-e2e-with-top-level-named-sequence.mlir
A mlir/test/Dialect/LLVMIR/nvvm-test-range.mlir
M mlir/test/Dialect/LLVMIR/roundtrip.mlir
M mlir/test/Dialect/Linalg/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/MemRef/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/SCF/loop-unroll.mlir
M mlir/test/Dialect/SCF/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/Tensor/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/Tosa/canonicalize.mlir
M mlir/test/Dialect/Tosa/invalid.mlir
M mlir/test/Dialect/Tosa/level_check.mlir
M mlir/test/Dialect/Tosa/ops.mlir
M mlir/test/Dialect/Tosa/quant-test.mlir
M mlir/test/Dialect/Tosa/tosa-decompose-conv2d.mlir
M mlir/test/Dialect/Tosa/tosa-decompose-depthwise.mlir
M mlir/test/Dialect/Tosa/tosa-decompose-transpose-conv.mlir
M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
M mlir/test/Dialect/Vector/test-scalable-bounds.mlir
M mlir/test/Dialect/Vector/value-bounds-op-interface-impl.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/pack-dynamic-inner-tile.mlir
A mlir/test/Integration/Dialect/Linalg/CPU/unpack-dynamic-inner-tile.mlir
M mlir/test/Integration/GPU/CUDA/assert.mlir
M mlir/test/Integration/GPU/CUDA/printf.mlir
M mlir/test/Integration/GPU/CUDA/sm90/cga_cluster.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_128x64_swizzle128b.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_64x64_swizzle128b.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_64x8_8x128_noswizzle.mlir
M mlir/test/Integration/GPU/CUDA/sm90/transform-dialect/tma_load_64x8_8x128_noswizzle-transform.mlir
M mlir/test/Integration/GPU/ROCM/printf.mlir
M mlir/test/Target/LLVMIR/Import/metadata-alias-scopes.ll
M mlir/test/Target/LLVMIR/attribute-alias-scopes.mlir
M mlir/test/Target/LLVMIR/nvvmir.mlir
A mlir/test/Target/LLVMIR/openmp-parallel-reduction-init.mlir
M mlir/test/Target/LLVMIR/openmp-parallel-reduction-multiblock.mlir
M mlir/test/Target/LLVMIR/openmp-private.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-array-sections.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-init-arg.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-sections.mlir
M mlir/test/Transforms/location-snapshot.mlir
M mlir/test/Transforms/loop-invariant-code-motion.mlir
M mlir/test/lib/Dialect/Affine/TestReifyValueBounds.cpp
M mlir/test/lib/Dialect/Tosa/TosaTestPasses.cpp
M mlir/test/lib/Pass/TestVulkanRunnerPipeline.cpp
M mlir/test/mlir-vulkan-runner/addui_extended.mlir
M mlir/test/mlir-vulkan-runner/smul_extended.mlir
M mlir/test/mlir-vulkan-runner/umul_extended.mlir
M mlir/test/python/execution_engine.py
A mlir/test/tblgen-lsp-server/templ-arg-check.test
M mlir/unittests/Dialect/OpenACC/OpenACCOpsTest.cpp
M offload/DeviceRTL/CMakeLists.txt
M offload/DeviceRTL/include/DeviceUtils.h
M offload/DeviceRTL/include/Synchronization.h
M offload/DeviceRTL/src/Mapping.cpp
M offload/DeviceRTL/src/Synchronization.cpp
M offload/include/Shared/Utils.h
M offload/test/sanitizer/kernel_crash_async.c
M polly/include/polly/CodeGen/BlockGenerators.h
M polly/lib/CodeGen/BlockGenerators.cpp
M polly/lib/CodeGen/IslNodeBuilder.cpp
A polly/test/CodeGen/reggen_domtree_crash.ll
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/libc_build_rules.bzl
M utils/bazel/llvm-project-overlay/libc/test/src/stdlib/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/string/BUILD.bazel
M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
Rebase on main and update commit message
Created using spr 1.3.6-beta.1
Compare: https://github.com/llvm/llvm-project/compare/7ffa3dda4134...fc280ddf33fa
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