[all-commits] [llvm/llvm-project] 984384: SelectionDAG: Do not propagate divergence through ...
Alexey Bataev via All-commits
all-commits at lists.llvm.org
Thu Aug 1 14:29:21 PDT 2024
Branch: refs/heads/users/alexey-bataev/spr/slprepresent-externally-used-values-as-original-scalars-if
Home: https://github.com/llvm/llvm-project
Commit: 9843843c88f6cd8fa68c301ba751c001c254cb63
https://github.com/llvm/llvm-project/commit/9843843c88f6cd8fa68c301ba751c001c254cb63
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/AMDGPU/dag-divergence.ll
M llvm/test/CodeGen/AMDGPU/inline-asm.ll
M llvm/test/CodeGen/AMDGPU/sdag-print-divergence.ll
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_isel.ll.expected
Log Message:
-----------
SelectionDAG: Do not propagate divergence through copy glue (#101210)
This fixes DAG divergence mishandling inline asm.
This was considering the glue nodes for divergence, when the
divergence should only come from the individual CopyFromRegs
that are glued. As a result, having any VGPR CopyFromRegs would
taint any uniform SGPR copies as divergent, resulting in SGPR
copies to VGPR virtual registers later.
Commit: 245e6070daa191b1fc6ce05d8fc38a74f918159a
https://github.com/llvm/llvm-project/commit/245e6070daa191b1fc6ce05d8fc38a74f918159a
Author: Teresa Johnson <tejohnson at google.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopSink.cpp
Log Message:
-----------
[LoopSink] Exit loop finding BBs to sink into early when possible (NFC) (#101115)
As noted in the comments, findBBsToSinkInto is
O(UseBBs.size() * ColdLoopBBs.size())
A very large function with a huge loop was incurring a high compile time
in this code. The size of the ColdLoopBBs set was over 14K. There is a
limit on the size of the UseBBs set, but not the ColdLoopBBs (and adding
a limit for the latter actually slowed down some later passes).
This change exits the loop early once we detect that there is no further
refinement possible for the BBsToSinkInto set. This is possible because
the ColdLoopBBs set is sorted in ascending magnitude of frequency.
This cut down the LoopSinkPass time by around 33% (78s to just over
50s).
Commit: 4ad2628ec9bf492f7c2ad4a9ada835d06b1a55e7
https://github.com/llvm/llvm-project/commit/4ad2628ec9bf492f7c2ad4a9ada835d06b1a55e7
Author: RoseZhang03 <rosezhang at google.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M libc/fuzzing/stdlib/CMakeLists.txt
A libc/fuzzing/stdlib/heap_sort_fuzz.cpp
Log Message:
-----------
[libc] fuzz test for heap_sort (#100826)
Made a fuzz test for heap_sort based off of qsort_fuzz implementation
Commit: 8364a6e108faea1a6f05f7bb53720a6fc101fed2
https://github.com/llvm/llvm-project/commit/8364a6e108faea1a6f05f7bb53720a6fc101fed2
Author: RoseZhang03 <rosezhang at google.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M libc/CMakeLists.txt
Log Message:
-----------
[libc] Switch ON for New HeaderGen (#100044)
Turned option to use New HeaderGen when building libc to ON
Commit: f70f1228035c9610de38e0e376afdacb647c4ad9
https://github.com/llvm/llvm-project/commit/f70f1228035c9610de38e0e376afdacb647c4ad9
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/extract-vectorized-operand.ll
Log Message:
-----------
[SLP]Fix PR101213: Reuse extractelement, only if its vector operand comes before new vector value.
When trying to reuse extractelement instruction, need to check that it
is inserted into proper position. Its original vector operand should
come before new vector value, otherwise new extractelement instruction
must be generated.
Fixes https://github.com/llvm/llvm-project/issues/101213
Commit: 89b67a640063189bbd727ade4c912f6e48fee5a0
https://github.com/llvm/llvm-project/commit/89b67a640063189bbd727ade4c912f6e48fee5a0
Author: David Green <david.green at arm.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/loadorder.ll
Log Message:
-----------
[SLP] Cluster SortedBases before sorting. (#101144)
In order to enforce a strict-weak ordering, this patch clusters the
bases that are being sorted by the root - the first value in a gep
chain. The sorting is then performed in each cluster.
Commit: 9808f484534f503e9975d367082ff6933676ca20
https://github.com/llvm/llvm-project/commit/9808f484534f503e9975d367082ff6933676ca20
Author: Allan Shortlidge <tshortli at gmail.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M compiler-rt/lib/builtins/os_version_check.c
M compiler-rt/test/builtins/TestCases/Darwin/platform_version_check_test.c
Log Message:
-----------
[compiler-rt][builtins] Upstream __isPlatformOrVariantPlatformVersionAtLeast() (#100605)
Add `__isPlatformOrVariantPlatformVersionAtLeast()` which is used to
check OS version availability from zippered libraries on macOS. This
routine is needed for complete macCatalyst support in the Swift
compiler.
Commit: cdfd884b0ec698f86a321ba53dc4d9c0b0e930fa
https://github.com/llvm/llvm-project/commit/cdfd884b0ec698f86a321ba53dc4d9c0b0e930fa
Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
M llvm/lib/Target/DirectX/DXILOpBuilder.h
M llvm/test/CodeGen/DirectX/abs.ll
M llvm/test/CodeGen/DirectX/acos.ll
M llvm/test/CodeGen/DirectX/acos_error.ll
M llvm/test/CodeGen/DirectX/asin.ll
M llvm/test/CodeGen/DirectX/asin_error.ll
M llvm/test/CodeGen/DirectX/atan.ll
M llvm/test/CodeGen/DirectX/atan_error.ll
M llvm/test/CodeGen/DirectX/ceil.ll
M llvm/test/CodeGen/DirectX/ceil_error.ll
M llvm/test/CodeGen/DirectX/clamp.ll
M llvm/test/CodeGen/DirectX/comput_ids.ll
M llvm/test/CodeGen/DirectX/cos.ll
M llvm/test/CodeGen/DirectX/cos_error.ll
M llvm/test/CodeGen/DirectX/cosh.ll
M llvm/test/CodeGen/DirectX/cosh_error.ll
M llvm/test/CodeGen/DirectX/dot2_error.ll
M llvm/test/CodeGen/DirectX/dot3_error.ll
M llvm/test/CodeGen/DirectX/dot4_error.ll
M llvm/test/CodeGen/DirectX/exp.ll
M llvm/test/CodeGen/DirectX/exp2_error.ll
M llvm/test/CodeGen/DirectX/fabs.ll
M llvm/test/CodeGen/DirectX/fdot.ll
A llvm/test/CodeGen/DirectX/flattened_thread_id_in_group_error.ll
M llvm/test/CodeGen/DirectX/floor.ll
M llvm/test/CodeGen/DirectX/floor_error.ll
M llvm/test/CodeGen/DirectX/fmax.ll
M llvm/test/CodeGen/DirectX/fmin.ll
M llvm/test/CodeGen/DirectX/frac_error.ll
A llvm/test/CodeGen/DirectX/group_id_error.ll
M llvm/test/CodeGen/DirectX/idot.ll
M llvm/test/CodeGen/DirectX/isinf.ll
M llvm/test/CodeGen/DirectX/isinf_error.ll
M llvm/test/CodeGen/DirectX/log.ll
M llvm/test/CodeGen/DirectX/log10.ll
M llvm/test/CodeGen/DirectX/log2.ll
M llvm/test/CodeGen/DirectX/log2_error.ll
M llvm/test/CodeGen/DirectX/pow.ll
M llvm/test/CodeGen/DirectX/reversebits.ll
M llvm/test/CodeGen/DirectX/round.ll
M llvm/test/CodeGen/DirectX/round_error.ll
M llvm/test/CodeGen/DirectX/rsqrt.ll
M llvm/test/CodeGen/DirectX/rsqrt_error.ll
M llvm/test/CodeGen/DirectX/sin.ll
M llvm/test/CodeGen/DirectX/sin_error.ll
A llvm/test/CodeGen/DirectX/sin_no_stage_error.ll
M llvm/test/CodeGen/DirectX/sinh.ll
M llvm/test/CodeGen/DirectX/sinh_error.ll
M llvm/test/CodeGen/DirectX/smax.ll
M llvm/test/CodeGen/DirectX/smin.ll
M llvm/test/CodeGen/DirectX/sqrt.ll
M llvm/test/CodeGen/DirectX/sqrt_error.ll
M llvm/test/CodeGen/DirectX/tan.ll
M llvm/test/CodeGen/DirectX/tan_error.ll
M llvm/test/CodeGen/DirectX/tanh.ll
M llvm/test/CodeGen/DirectX/tanh_error.ll
A llvm/test/CodeGen/DirectX/thread_id_error.ll
A llvm/test/CodeGen/DirectX/thread_id_in_group_error.ll
M llvm/test/CodeGen/DirectX/trunc.ll
M llvm/test/CodeGen/DirectX/trunc_error.ll
M llvm/test/CodeGen/DirectX/umax.ll
M llvm/test/CodeGen/DirectX/umin.ll
M llvm/utils/TableGen/DXILEmitter.cpp
Log Message:
-----------
[DXIL] Add DXIL version-specific TableGen specification and implementation of DXIL Ops (#97593)
Update TableGen specification of DXIL Op records in DXIL.td per the
current design document.
- Facilitate specification of overloads, shader stage and attributes
predicated on DXIL Ops predicated DXIL version.
Implement functionality to consume in TableGen backend, DXILEmitter, the
above specification enhancements, and generate C++ code (in
(DXILOperations.inc) that represents properties of DXIL Ops, associated
type declarations and corresponding accessor functions.
Changes to DXIL Op Lowering pass to consume the DXIL Op representation
generated by the TableGen back end.
Add mtriple with the required shader model version to commandline of
tests.
Commit: d9c85338ea9baa0290725e36c5ba548347a57e18
https://github.com/llvm/llvm-project/commit/d9c85338ea9baa0290725e36c5ba548347a57e18
Author: MaheshRavishankar <1663364+MaheshRavishankar at users.noreply.github.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/test/Dialect/Linalg/canonicalize.mlir
Log Message:
-----------
[mlir][Linalg] Add a pattern to fold concats of fill. (#98995)
If a concat has all its operands as just fills, and the values match,
then the fill could happen on the concatenated values of the `outs`
operands.
Signed-off-by: MaheshRavishankar <mahesh.ravishankar at gmail.com>
Commit: 76a15e5fc1af921de229190f3ca6189fcdd28277
https://github.com/llvm/llvm-project/commit/76a15e5fc1af921de229190f3ca6189fcdd28277
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Keep all the setOperationActions for the same types and opcodes together.
Some of XCV subtarget checks were in their own area.
Commit: 4eb5450f630849ee0518487de38d857fbe5b1aee
https://github.com/llvm/llvm-project/commit/4eb5450f630849ee0518487de38d857fbe5b1aee
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCSection.h
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCSection.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
Log Message:
-----------
Revert "[MC] Compute fragment offsets eagerly"
This reverts commit 1a47f3f3db66589c11f8ddacfeaecc03fb80c510.
Fix #100283
This commit is actually a trigger of other preexisting problems:
* Size change of fill fragments does not influence the fixed-point iteration.
* The `invalid number of bytes` error is reported too early. Since
`.zero A-B` might have temporary negative values in the first few
iterations.
However, the problems appeared at least "benign" (did not affect the
Linux kernel builds) before this commit.
Commit: 6c7557d44139e335c037c644545388c7e7d6a2e4
https://github.com/llvm/llvm-project/commit/6c7557d44139e335c037c644545388c7e7d6a2e4
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/utils/TableGen/DXILEmitter.cpp
Log Message:
-----------
[DXIL] Fix -Wunused-but-set-variable after #97593
Commit: a6ef0864e9cf365a5cc4a3c39c9c749c49c87c1d
https://github.com/llvm/llvm-project/commit/a6ef0864e9cf365a5cc4a3c39c9c749c49c87c1d
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
R llvm/test/Transforms/SLPVectorizer/X86/extract-vectorized-operand.ll
Log Message:
-----------
Revert "[SLP]Fix PR101213: Reuse extractelement, only if its vector operand comes before new vector value."
This reverts commit f70f1228035c9610de38e0e376afdacb647c4ad9 to fix the
crash reported by https://lab.llvm.org/buildbot/#/builders/133/builds/2456.
Commit: e59c8322632d9e6c9a56d9dfbaf79b4c4ba05bfa
https://github.com/llvm/llvm-project/commit/e59c8322632d9e6c9a56d9dfbaf79b4c4ba05bfa
Author: vporpo <vporpodas at google.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/SandboxIR.h
M llvm/lib/SandboxIR/SandboxIR.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Implement BitCastInst (#101227)
This patch implements sandboxir::BitCastInst which mirrors
llvm::BitCastInst.
Commit: 273e74b4458fa0d11cafb31b5b2164a8d2006541
https://github.com/llvm/llvm-project/commit/273e74b4458fa0d11cafb31b5b2164a8d2006541
Author: Teresa Johnson <tejohnson at google.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Utils/LCSSA.cpp
Log Message:
-----------
[LCSSA] Cache the loop exit blocks across recursive analysis (NFC) (#101087)
The computation of loop exit blocks recently showed up as a huge compile
time cost for a large file. This computation was already being cached
during an invocation of formLCSSAForInstructions, but can also be cached
across callers formLCSSA and formLCSSARecursively (the latter was what
was being invoked in the examined case).
Since each of these functions has an external entry point invoked from
other passes, doing so required refactoring each into a worker mechanism
that takes a LoopExitBlocks map, and the externally callable version
that declares the map. That way we can pass it down from the outermost
formLCSSARecursively.
This reduced the time spent in the LCSSA pass from ~110s to ~1s.
Commit: c69ed8a3122569a65cd54d8e0d5ef9431f160245
https://github.com/llvm/llvm-project/commit/c69ed8a3122569a65cd54d8e0d5ef9431f160245
Author: Edd Dawson <edd.dawson at sony.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M clang/lib/Driver/ToolChains/PS4CPU.cpp
M clang/test/Driver/ps4-linker.c
Log Message:
-----------
[PS4][Driver] Only pass -lto-debug-options to linker when necessary (#101202)
The PS4 linker doesn't accept an empty LTO options string. Passing
nothing is also consistent with other drivers.
SIE tracker: TOOLCHAIN-16575
Commit: 3ab0e958cc9338a8435ae29f9d381395aaba03c6
https://github.com/llvm/llvm-project/commit/3ab0e958cc9338a8435ae29f9d381395aaba03c6
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M polly/lib/Analysis/ScopBuilder.cpp
Log Message:
-----------
[polly] Remove unused variable in ScopBuilder.cpp (NFC)
/llvm-project/polly/lib/Analysis/ScopBuilder.cpp:2725:18:
error: unused variable 'DT' [-Werror,-Wunused-variable]
DominatorTree *DT = Stmt.getParent()->getDT();
^
1 error generated.
Commit: 6b1d13761ac0c9857763e5f4c0ae554f076dd9b7
https://github.com/llvm/llvm-project/commit/6b1d13761ac0c9857763e5f4c0ae554f076dd9b7
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/extract-vectorized-operand.ll
Log Message:
-----------
[SLP]Fix PR101213: Reuse extractelement, only if its vector operand comes before new vector value.
When trying to reuse extractelement instruction, need to check that it
is inserted into proper position. Its original vector operand should
come before new vector value, otherwise new extractelement instruction
must be generated.
Fixes https://github.com/llvm/llvm-project/issues/101213
Commit: 39e192b379362e9e645427631c35450d55ed517d
https://github.com/llvm/llvm-project/commit/39e192b379362e9e645427631c35450d55ed517d
Author: Alexandre Ganea <aganea at havenstudios.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/lib/Support/Windows/Process.inc
M llvm/lib/Support/Windows/Signals.inc
Log Message:
-----------
[Support] Silence warnings when retrieving exported functions (#97905)
Since functions exported from DLLs are type-erased, before this patch I
was seeing the new Clang 19 warning `-Wcast-function-type-mismatch`.
This happens when building LLVM on Windows.
Following discussion in
https://github.com/llvm/llvm-project/commit/593f708118aef792f434185547f74fedeaf51dd4#commitcomment-143905744
Commit: 99fb40d488c9d53dc1dfa0a1791f690523d7e50a
https://github.com/llvm/llvm-project/commit/99fb40d488c9d53dc1dfa0a1791f690523d7e50a
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
R llvm/test/CodeGen/RISCV/rvv/mask-exts-truncs-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/mask-exts-truncs-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/mask-exts-truncs.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.s.x-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.s.x-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vmv.s.x.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.v.v-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.v.v-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vmv.v.v.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.v.x-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.v.x-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vmv.v.x.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.x.s-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.x.s-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vmv.x.s.ll
R llvm/test/CodeGen/RISCV/rvv/vrgather-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vrgather-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vrgather.ll
R llvm/test/CodeGen/RISCV/rvv/vrgatherei16-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vrgatherei16-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vrgatherei16.ll
R llvm/test/CodeGen/RISCV/rvv/vslide1down-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vslide1down-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vslide1down.ll
R llvm/test/CodeGen/RISCV/rvv/vslide1up-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vslide1up-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vslide1up.ll
Log Message:
-----------
[RISCV] Merge more rv32/rv64 intrtinsic tests that have (or should have) the same content. NFC
We weren't testing i64 vrgather.vv on rv32.
Commit: 12189f800585ab459afa20b4f159db93ae474b57
https://github.com/llvm/llvm-project/commit/12189f800585ab459afa20b4f159db93ae474b57
Author: Peiming Liu <peiming at google.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/test/Dialect/SparseTensor/invalid.mlir
M mlir/test/Dialect/SparseTensor/roundtrip.mlir
Log Message:
-----------
[mlir][sparse] introduce `sparse_tensor.extract_value` operation. (#101219)
Commit: ebdcb76d1a3b6d8fed06c91c0a318f07f4bca628
https://github.com/llvm/llvm-project/commit/ebdcb76d1a3b6d8fed06c91c0a318f07f4bca628
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M libc/benchmarks/gpu/src/math/CMakeLists.txt
Log Message:
-----------
[libc] Only link in the appropriate architecture's device libs
Commit: 546e4a210cb23e24a8086532c007280cb8ad3f13
https://github.com/llvm/llvm-project/commit/546e4a210cb23e24a8086532c007280cb8ad3f13
Author: Job Henandez Lara <hj93 at protonmail.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/math/index.rst
M libc/spec/stdc.td
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/setpayload.cpp
A libc/src/math/generic/setpayloadf.cpp
A libc/src/math/generic/setpayloadf128.cpp
A libc/src/math/setpayload.h
A libc/src/math/setpayloadf.h
A libc/src/math/setpayloadf128.h
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/setpayload_test.cpp
A libc/test/src/math/smoke/setpayloadf128_test.cpp
A libc/test/src/math/smoke/setpayloadf_test.cpp
Log Message:
-----------
[libc][math][c23] Add entrypoints and tests for setpayload{,f,f128} (#101122)
Commit: 79dcd93b70e1e36fea43b1bb297b98299bbbf612
https://github.com/llvm/llvm-project/commit/79dcd93b70e1e36fea43b1bb297b98299bbbf612
Author: Sayhaan Siddiqui <49014204+sayhaan at users.noreply.github.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M bolt/include/bolt/Rewrite/DWARFRewriter.h
M bolt/lib/Rewrite/CMakeLists.txt
M bolt/lib/Rewrite/DWARFRewriter.cpp
M bolt/test/X86/debug-fission-single-convert.s
M bolt/test/X86/debug-fission-single.s
R bolt/test/X86/dwarf4-ftypes-dwo-input-dwp-output.test
R bolt/test/X86/dwarf4-ftypes-dwo-mono-input-dwp-output.test
M bolt/test/X86/dwarf5-df-types-modify-dwo-name-mixed.test
M bolt/test/X86/dwarf5-df-types-modify-dwo-name.test
R bolt/test/X86/dwarf5-ftypes-dwo-mono-input-dwp-output.test
Log Message:
-----------
[BOLT][DWARF] Remove option to write to DWP (#100771)
Remove the --write-dwp option as well as related code and tests.
Commit: a982cabea3cfbf456a01ed85499fa7dfc7ec18c7
https://github.com/llvm/llvm-project/commit/a982cabea3cfbf456a01ed85499fa7dfc7ec18c7
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M clang/cmake/modules/AddClang.cmake
M lldb/cmake/modules/AddLLDB.cmake
M llvm/CMakeLists.txt
M llvm/cmake/modules/AddLLVM.cmake
Log Message:
-----------
[cmake][llvm] Limit the number of Xcode schemes created by default (#101243)
CMake -GXcode would otherwise offer to create one scheme for each
target, which ends up being a lot. For now, limit the default to the
`check-*` LIT targets, plus `ALL_BUILD` and `install`.
For targets that aren't in the default list, we now have a configuration
variable to promote an extra list of targets into schemes, for example
`-DLLVM_XCODE_EXTRA_TARGET_SCHEMES="TargetParserTests;SupportTests"` to
add schemes for `TargetParserTests` and `SupportTests` respectively.
Commit: 80c0e8d572d3b1c34d66faffc42bcfc9432583ec
https://github.com/llvm/llvm-project/commit/80c0e8d572d3b1c34d66faffc42bcfc9432583ec
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/fp-strict-libcalls-msvc32.ll
Log Message:
-----------
[x86][Windows] Fix chromium build break (#101268)
Windows does not support float C89 math functions like:
- acosf
- asinf
- atanf
- coshf
- sinhf
- tanhf
All 6 are disabled in
[TargetLibraryInfo.cpp:293](https://github.com/llvm/llvm-project/blob/39e192b379362e9e645427631c35450d55ed517d/llvm/lib/Analysis/TargetLibraryInfo.cpp#L293C4-L296C41)
These 6 libfuncs need to be type promoted.
This PR fixes the bug introduced by
https://github.com/llvm/llvm-project/pull/98949
Commit: 9589c128ae40df3e2277487544e693f3887f7d63
https://github.com/llvm/llvm-project/commit/9589c128ae40df3e2277487544e693f3887f7d63
Author: Allen <zhongyunde at huawei.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
A clang/test/CodeGen/math-libcalls-tbaa.c
R clang/test/CodeGen/math-libcalls-tbaa.cpp
Log Message:
-----------
[clang codegen] Emit int TBAA metadata on more FP math libcalls (#100302)
Follow #96025, except expf, more FP math libcalls in libm should also be
supported.
Fix https://github.com/llvm/llvm-project/issues/86635
Commit: cc01c83a4ab10fc5421e2121ea273ff1adb3e84c
https://github.com/llvm/llvm-project/commit/cc01c83a4ab10fc5421e2121ea273ff1adb3e84c
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
A llvm/test/MC/ELF/layout-interdependency2.s
Log Message:
-----------
[MC,test] Add a stress test for layout algorithm
Reduced from #100283
Commit: d2f77eb8ec620c8068fa471a1d7b9c9756da1913
https://github.com/llvm/llvm-project/commit/d2f77eb8ec620c8068fa471a1d7b9c9756da1913
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M compiler-rt/include/profile/InstrProfData.inc
M compiler-rt/lib/profile/InstrProfilingFile.c
M llvm/include/llvm/ProfileData/InstrProf.h
M llvm/include/llvm/ProfileData/InstrProfData.inc
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
M llvm/test/Instrumentation/InstrProfiling/mcdc.ll
Log Message:
-----------
[MC/DC][Coverage] Introduce "Bitmap Bias" for continuous mode (#96126)
`counter_bias` is incompatible to Bitmap. The distance between Counters
and Bitmap is different between on-memory sections and profraw image.
Reference to `__llvm_profile_bitmap_bias` is generated only if
`-fcoverge-mcdc` `-runtime-counter-relocation` are specified. The
current implementation rejected their options.
```
Runtime counter relocation is presently not supported for MC/DC bitmaps
```
Commit: 6aaf87021eda13727bfee690652cbbb9d1b3cdb2
https://github.com/llvm/llvm-project/commit/6aaf87021eda13727bfee690652cbbb9d1b3cdb2
Author: Job Henandez Lara <hj93 at protonmail.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M libc/spec/stdc.td
Log Message:
-----------
[libc][math] fix header spec bug (#101273)
Commit: c35c4c72e4977258fc1da940e0470e8d0671bf07
https://github.com/llvm/llvm-project/commit/c35c4c72e4977258fc1da940e0470e8d0671bf07
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
Log Message:
-----------
[lldb] Reland 2402b3213c2f with `-H` to debug the windows build issue
This patch relands 2402b3213c2f to investigate the ambigious typedef
issue happening on the windows bots:
https://lab.llvm.org/buildbot/#/builders/141/builds/1175/
However this patch adds the `-H` compiler flag when building
the ScriptedProcessPythonInterface library to be able to investigate the
include order issue.
This patch will be revert after 1 failing run on the windows bot.
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
Commit: be5a845e4c29aadb513ae6e5e2879dccf37efdbb
https://github.com/llvm/llvm-project/commit/be5a845e4c29aadb513ae6e5e2879dccf37efdbb
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCSection.h
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCSection.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
M llvm/test/MC/ELF/relax-recompute-align.s
Log Message:
-----------
[MC] Compute fragment offsets eagerly
This builds on top of commit 9d0754ada5dbbc0c009bcc2f7824488419cc5530
("[MC] Relax fragments eagerly") and relaxes fragments eagerly to
eliminate MCSection::HasLayout and `getFragmentOffset` overhead. The
approach is slightly different from
1a47f3f3db66589c11f8ddacfeaecc03fb80c510 and has less performance
benefit.
The new layout algorithm also addresses the following problems:
* Size change of MCFillFragment/MCOrgFragment did not influence the
fixed-point iteration, which could be problematic for contrived cases.
* The `invalid number of bytes` error was reported too early. Since
`.zero A-B` might have temporary negative values in the first few
iterations.
* X86AsmBackend::finishLayout performed only one iteration, which might
not converge. In addition, the removed `#ifndef NDEBUG` code (disabled
by default) in X86AsmBackend::finishLayout was problematic, as !NDEBUG
and NDEBUG builds evaluated fragment offsets at different times before
this patch.
* The computed layout for relax-recompute-align.s is optimal now.
Builds with many text sections (e.g. full LTO) shall observe a decrease
in compile time while the new algorithm could be slightly slower for
some -O0 -g projects.
Aligned bundling from the deprecated PNaCl placed constraints how we can
perform iteration.
Commit: 891d89804b9a8a2be949aa2aca30acba9bc64ebb
https://github.com/llvm/llvm-project/commit/891d89804b9a8a2be949aa2aca30acba9bc64ebb
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/test/Instrumentation/InstrProfiling/mcdc.ll
Log Message:
-----------
Fixup (#96126) mcdc.ll for aarch64. align is not 8.
Commit: 41003ff3fe344dee5c963d462a4bc6d528811d86
https://github.com/llvm/llvm-project/commit/41003ff3fe344dee5c963d462a4bc6d528811d86
Author: Tom Stellard <tstellar at redhat.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M .github/workflows/release-binaries.yml
Log Message:
-----------
workflows/release-binaries: Fetch composite actions outside of default workspace (#100845)
Otherwise, the checkout step will override them.
Commit: 7231776a0218033ea81f73e69ca4bf66734d3117
https://github.com/llvm/llvm-project/commit/7231776a0218033ea81f73e69ca4bf66734d3117
Author: Julius Alexandre <juliuswoosebert at gmail.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/RISCV/avgflooru.ll
A llvm/test/CodeGen/X86/avgflooru-i128.ll
M llvm/test/CodeGen/X86/avgflooru-scalar.ll
Log Message:
-----------
Recommit "[DAG] Reducing instructions by better legalization handling of AVGFLOORU for illegal data types" (#101223)
Previous reverted merge: https://github.com/llvm/llvm-project/pull/99913
Original message:
**Issue:** https://github.com/rust-lang/rust/issues/124790
**Previous PR:** https://github.com/llvm/llvm-project/pull/99614
https://rust.godbolt.org/z/T7eKP3Tvo
**Aarch64:** https://alive2.llvm.org/ce/z/dqr2Kg
**x86:** https://alive2.llvm.org/ce/z/ze88Hw
Commit: fd6faee5b3b5a7c0e5e87aa0b5719a1a48159ea0
https://github.com/llvm/llvm-project/commit/fd6faee5b3b5a7c0e5e87aa0b5719a1a48159ea0
Author: Shengchen Kan <shengchen.kan at intel.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Arch/X86.cpp
M clang/test/Driver/x86-target-features.c
M llvm/lib/Target/X86/X86Subtarget.cpp
A llvm/test/CodeGen/X86/apx/i386-ndd.ll
Log Message:
-----------
[Driver,CodeGen] Report error when enabling 64-bit-only features on non-64-bit arch (#101151)
In front-end, now we detect for `-mapx-features=/-mapxf` and `-muintr`,
which is aligned with GCC
https://gcc.gnu.org/bugzilla/attachment.cgi?id=58698&action=diff
In backend, we just disable these 64-bit-only features silently, so that
there is no error for
`-march=native -m32` on APX-supported arch.
llvm-issue: https://github.com/llvm/llvm-project/issues/94810
GCC thread: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115978
Commit: f65fa5461dcbaf554babf10ca67ae8fea5b4da7e
https://github.com/llvm/llvm-project/commit/f65fa5461dcbaf554babf10ca67ae8fea5b4da7e
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
Log Message:
-----------
Revert "[lldb] Reland 2402b3213c2f with `-H` to debug the windows build issue"
This reverts commit c35c4c72e4977258fc1da940e0470e8d0671bf07.
Commit: e72cdae47b4e263ea97b2bdd75cf44c1510cf3be
https://github.com/llvm/llvm-project/commit/e72cdae47b4e263ea97b2bdd75cf44c1510cf3be
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
Log Message:
-----------
[lldb] Reland 2402b3213c2f with `/H` to debug the windows build issue
This patch relands 2402b3213c2f to investigate the ambigious typedef
issue happening on the windows bots:
https://lab.llvm.org/buildbot/#/builders/141/builds/1175/
However this patch adds the `/H` compiler flag when building
the ScriptedProcessPythonInterface library to be able to investigate the
include order issue.
This patch will be revert after 1 failing run on the windows bot.
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
Commit: 57acabb8e09baa38b156965b2dc567a8c7eb2429
https://github.com/llvm/llvm-project/commit/57acabb8e09baa38b156965b2dc567a8c7eb2429
Author: Shengchen Kan <shengchen.kan at intel.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/test/Preprocessor/x86_target_features.c
Log Message:
-----------
[Driver,X86] Update test Clang::Preprocessor/x86_target_features.c after #101151
Commit: 7c1ddcd94e4bd5cfe34d5e1a6e4630ca2d526c36
https://github.com/llvm/llvm-project/commit/7c1ddcd94e4bd5cfe34d5e1a6e4630ca2d526c36
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/test/CodeGen/RISCV/rvv/unmasked-tu.ll
M llvm/test/CodeGen/RISCV/rvv/vfmerge.ll
Log Message:
-----------
[RISCV] Remove isel patterns for riscv.vfmerge with vector-vector operands. (#101277)
The vfmerge intrinsic is only used by clang for vfmerge.vfm. vmerge.vvm
for both int and float should use the llvm.vmerge intrinsic.
This patch removes the vector-vector support for llvm.vfmerge and
updates the tests to test what clang really uses.
Commit: 7a80c86726f7c37128bfee3618707c1607f5014d
https://github.com/llvm/llvm-project/commit/7a80c86726f7c37128bfee3618707c1607f5014d
Author: abhishek-kaushik22 <abhishek.kaushik at intel.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/MC/MCContext.cpp
Log Message:
-----------
[MC] Remove redundant null check, NFCI (#100928)
`getOrCreateSymbol` should never return a `nullptr`, add an assert and
remove the redundant null check in the if condition.
Commit: ee1040b02adc95e376b295c4f59d30b991a8be9a
https://github.com/llvm/llvm-project/commit/ee1040b02adc95e376b295c4f59d30b991a8be9a
Author: eddyz87 <eddyz87 at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
A llvm/test/tools/llvm-objdump/BPF/disassemble-symbolize-operands.s
M llvm/tools/llvm-objdump/llvm-objdump.cpp
Log Message:
-----------
[llvm-objdump][BPF] --symbolize-operands: infer local labels for BPF (#100550)
Enable local labels computation for BPF disassembly when
`--symbolize-operands` option is specified.
This relies on `MCInstrAnalysis::evaluateBranch()` method, which is
already defined in `BPFMCInstrAnalysis::evaluateBranch`.
After this change the assembly code below:
if r1 > 42 goto +1
r1 -= 10
...
Would be printed as:
if r1 > 42 goto +1 <L0>
r1 -= 10
<L0>:
...
(when `--symbolize-operands` option is set).
See https://reviews.llvm.org/D84191 for the main part of the
`--symbolize-operands` implementation logic.
Commit: 94da6bfb27dcff68bebd0d1ce1a61346c231ed64
https://github.com/llvm/llvm-project/commit/94da6bfb27dcff68bebd0d1ce1a61346c231ed64
Author: Justin Bogner <mail at justinbogner.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/lib/Target/DirectX/DXILConstants.h
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/utils/TableGen/DXILEmitter.cpp
Log Message:
-----------
[DirectX] Simplify DXIL_OP_INTRINSIC_MAP tablegen'ed code
Rather than generate a map with a known name, just define the mapping
so the code that uses it can do what it needs.
Pull Request: https://github.com/llvm/llvm-project/pull/101248
Commit: 20d723e626befde6d1de66595ce37521cbde0538
https://github.com/llvm/llvm-project/commit/20d723e626befde6d1de66595ce37521cbde0538
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M compiler-rt/lib/profile/InstrProfilingFile.c
Log Message:
-----------
Fix for #96126, add `BitmapBiasAddr` to definitions for unsupported targets.
Commit: 1961f9fc6d7b207734354ca152a6c0a267cce0c0
https://github.com/llvm/llvm-project/commit/1961f9fc6d7b207734354ca152a6c0a267cce0c0
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/include/clang/AST/Type.h
M clang/include/clang/Sema/Overload.h
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/Interp/Context.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/Type.cpp
M clang/lib/Analysis/Consumed.cpp
M clang/lib/Analysis/ThreadSafetyCommon.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaTemplate.cpp
Log Message:
-----------
[clang][NFC] Add Type::isPointerOrReferenceType() (#101206)
Seems to be a common pattern.
Commit: 50cf413426805d32c19c71756f601c864dd6fa7a
https://github.com/llvm/llvm-project/commit/50cf413426805d32c19c71756f601c864dd6fa7a
Author: Shengchen Kan <shengchen.kan at intel.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/test/CodeGen/X86/apx/setzucc.ll
Log Message:
-----------
[X86,CodeGen] Return the correct condition code for SETZUCC
llvm-issue: https://github.com/llvm/llvm-project/issues/101288
Commit: 40940980bf87832b0275dcfa91ab03738c569b18
https://github.com/llvm/llvm-project/commit/40940980bf87832b0275dcfa91ab03738c569b18
Author: Justin Bogner <mail at justinbogner.com>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M llvm/lib/Target/DirectX/DXILConstants.h
M llvm/utils/TableGen/DXILEmitter.cpp
Log Message:
-----------
[DirectX] Simplify tablegen'd OpCode and OpClass enums
Pull Request: https://github.com/llvm/llvm-project/pull/101249
Commit: 07d2709a17860a202d91781769a88837e4fb5f2a
https://github.com/llvm/llvm-project/commit/07d2709a17860a202d91781769a88837e4fb5f2a
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCSection.h
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCSection.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
M llvm/test/MC/ELF/relax-recompute-align.s
Log Message:
-----------
Revert "[MC] Compute fragment offsets eagerly"
This reverts commit be5a845e4c29aadb513ae6e5e2879dccf37efdbb.
This causes large code size regressions, which were not present
in the initial version of this change.
Commit: aa07282a25c3d6df04af9a4d34874cc433c9c68a
https://github.com/llvm/llvm-project/commit/aa07282a25c3d6df04af9a4d34874cc433c9c68a
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/test/API/api/multiple-debuggers/TestMultipleDebuggers.py
M lldb/test/API/api/multiple-debuggers/multi-process-driver.cpp
Log Message:
-----------
[lldb][test] Fix TestMultipleDebuggers test on non-x86, other small issues (#101169)
This test has been flaky lately
(https://github.com/llvm/llvm-project/issues/101162) and I disabled it
everywhere initially.
I found that it always uses "x86_64" for the program architecture so the
test was "passing" elsewhere but I don't think it was meant to. So I
have added a define to pass on the host's architecture when compiling.
This makes it work on AArch64 as well.
While I'm here I've fixed the uint64_t formatting warnings by using the
defined formats that'll work everywhere.
In addition, I found that the function names include "()" on Linux, so
now we check for "foo" or "foo()".
The test cpp file has never been, or was only partially formatted so
I've not formatted the changes, just kept to the local style.
I've removed the Linux skip to see if any of this helps the timeouts,
and to verify the build command changes. If the timeouts come back I'll
disable it again.
Commit: 996075d68357d15b9bdbbafee002e50563532cb6
https://github.com/llvm/llvm-project/commit/996075d68357d15b9bdbbafee002e50563532cb6
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/lib/AST/Interp/Interp.h
M clang/test/AST/Interp/cxx2a.cpp
Log Message:
-----------
[clang][Interp] Handle virtual calls with covariant return types (#101218)
Commit: 57d10b4fc9142d12fbdec578a0cc6f78deb67ef4
https://github.com/llvm/llvm-project/commit/57d10b4fc9142d12fbdec578a0cc6f78deb67ef4
Author: Pankaj Dwivedi <divedi.pk.117 at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-mov-b32.mir
M llvm/test/CodeGen/AMDGPU/frame-index.mir
Log Message:
-----------
[AMDGPU] Inplace FI elimination during PEI for scalar copy instruction (#99556)
eliminateFrameIndex wasn't handling the FI copy to Scalar registers and
the default implementation breaks the code while trying to handle it.
This patch handles the broken lowering and also takes care of some edge
cases that might arise. This case is tricky for non-zero offset, scc &
vcc is live and we don't find sgpr pair available.
Co-authored by @arsenm
---------
Co-authored-by: Matt Arsenault <Matthew.Arsenault at amd.com>
Co-authored-by: PankajDwivedi-25 <pankajkumar.divedi at amd.com>
Commit: 8300eaad0f6c354f40f526f7501b624ffc389e63
https://github.com/llvm/llvm-project/commit/8300eaad0f6c354f40f526f7501b624ffc389e63
Author: Petr Hosek <phosek at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/cmake/caches/Fuchsia-stage2.cmake
Log Message:
-----------
[CMake][Fuchsia] Include libunwind and libc++abi in baremetal build (#100908)
These are needed for baremetal targets as well.
Commit: 5ef087b705099574e131ba77143b49faaee0e7f8
https://github.com/llvm/llvm-project/commit/5ef087b705099574e131ba77143b49faaee0e7f8
Author: Bimo <rui.xu at intel.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M mlir/python/mlir/runtime/np_to_memref.py
M mlir/python/requirements.txt
M mlir/test/python/execution_engine.py
Log Message:
-----------
Reapply "[MLIR][Python] add ctype python binding support for bf16" (#101271)
Reapply the PR which was reverted due to built-bots, and now the bots
get updated.
https://discourse.llvm.org/t/need-a-help-with-the-built-bots/79437
original PR: https://github.com/llvm/llvm-project/pull/92489, reverted
in https://github.com/llvm/llvm-project/pull/93771
Commit: 79996cd0c2a84fca1776d07a6fef822f424d5095
https://github.com/llvm/llvm-project/commit/79996cd0c2a84fca1776d07a6fef822f424d5095
Author: Carl Ritson <carl.ritson at amd.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/wqm.ll
Log Message:
-----------
[AMDGPU] Pre-commit tests for #101157. NFC
Commit: 36b2c22e07f1663d7d7388568ab979b35ecceb94
https://github.com/llvm/llvm-project/commit/36b2c22e07f1663d7d7388568ab979b35ecceb94
Author: Corentin Ferry <corentin.ferry at amd.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
M mlir/test/Conversion/ArithToEmitC/arith-to-emitc-unsupported.mlir
M mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir
Log Message:
-----------
[mlir][emitc] Lower arith.divui, remui (#99313)
This commit lowers `arith.divui` and `arith.remui` to EmitC by wrapping
those operations with type conversions.
Commit: f395d826bf48ba530d0ab9480e4bc07fa335ef56
https://github.com/llvm/llvm-project/commit/f395d826bf48ba530d0ab9480e4bc07fa335ef56
Author: WANG Rui <wangrui at loongson.cn>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
A clang/test/CodeGen/LoongArch/align.c
Log Message:
-----------
[clang][LoongArch] Pre-commit test for align global. NFC
Commit: 6434dce85df21aabd5669dd9fbe8fa582e40c6ee
https://github.com/llvm/llvm-project/commit/6434dce85df21aabd5669dd9fbe8fa582e40c6ee
Author: yronglin <yronglin777 at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/lib/AST/Interp/EvaluationResult.cpp
M clang/test/AST/Interp/constexpr-subobj-initialization.cpp
M clang/test/C/C23/n3018.c
M clang/test/CodeGen/pr3518.c
M clang/test/Preprocessor/embed_weird.cpp
M clang/test/SemaCXX/constexpr-subobj-initialization.cpp
Log Message:
-----------
[Clang][Interp] Fix the location of uninitialized base warning (#100761)
Fix the location of `diag::note_constexpr_uninitialized_base`, make it
same as current interpreter.
This PR does not print type name with namespacethat was used to improve
the current interpreter's type dump of base class type.
---------
Signed-off-by: yronglin <yronglin777 at gmail.com>
Commit: 38e64531171d230dbcb994b70e89c9efdf319f9f
https://github.com/llvm/llvm-project/commit/38e64531171d230dbcb994b70e89c9efdf319f9f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/vselect.ll
Log Message:
-----------
[AMDGPU] Regenerate vselect.ll
Commit: b3b46963b772fcbc80cb2df0b7389c09830cf166
https://github.com/llvm/llvm-project/commit/b3b46963b772fcbc80cb2df0b7389c09830cf166
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M flang/test/Lower/OpenMP/task.f90
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/lib/Conversion/SCFToOpenMP/SCFToOpenMP.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
Log Message:
-----------
[MLIR][OpenMP] NFC: Sort clauses alphabetically (1/2) (#101193)
This patch sorts the clause lists for the following OpenMP operations:
- omp.parallel
- omp.teams
- omp.sections
- omp.wsloop
- omp.distribute
- omp.task
This change results in the reordering of operation arguments, so
impacted unit tests are updated accordingly.
Commit: a3800a60ed95a6b1e808ebd3a34e2dc1c0c04185
https://github.com/llvm/llvm-project/commit/a3800a60ed95a6b1e808ebd3a34e2dc1c0c04185
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Lower/OpenMP/target.f90
M flang/test/Lower/OpenMP/use-device-ptr-to-use-device-addr.f90
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
Log Message:
-----------
[MLIR][OpenMP] NFC: Sort clauses alphabetically (2/2) (#101194)
This patch sorts the clause lists for the following OpenMP operations:
- omp.taskloop
- omp.taskgroup
- omp.target_data
- omp.target_enter_data
- omp.target_exit_data
- omp.target_update
- omp.target
This change results in the reordering of operation arguments, so
impacted unit tests are updated accordingly.
Commit: 5c406eacf4f4dda0cf9267d638954aa20f17e118
https://github.com/llvm/llvm-project/commit/5c406eacf4f4dda0cf9267d638954aa20f17e118
Author: OverMighty <its.overmighty at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libc/src/__support/FPUtil/BasicOperations.h
M libc/src/__support/FPUtil/CMakeLists.txt
Log Message:
-----------
[libc][math][c23] Fix totalorderf128 requiring support for 128-bit ints (#101229)
Commit: dae7fb8c42877b16be2064bf3043841b13583a3a
https://github.com/llvm/llvm-project/commit/dae7fb8c42877b16be2064bf3043841b13583a3a
Author: Ruiling, Song <ruiling.song at amd.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/while-break.ll
Log Message:
-----------
[AMDGPU,test] Add one more while-break case (#101300)
which suffers from v_mov issue.
Commit: 22ce33304ef9af9e773ac606670ed93944da2c65
https://github.com/llvm/llvm-project/commit/22ce33304ef9af9e773ac606670ed93944da2c65
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
Revert "[DAG][NFC] Use SDPatternMatch for VScale in some instances"
This reverts commit d2304427cb0270259bc083a3db27413823f56e59.
The m_Add and m_Mul are commutative but the code does not expect the
communtativity.
Commit: 4c670b266a10d613a58b71cc9c3d3a21cb6dc36b
https://github.com/llvm/llvm-project/commit/4c670b266a10d613a58b71cc9c3d3a21cb6dc36b
Author: Jannick Kremer <51118500+DeinAlptraum at users.noreply.github.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/bindings/python/clang/cindex.py
Log Message:
-----------
[libclang/python] Factor out unsaved files processing (#101308)
Factor out the processing of unsaved files into its own function as
suggested by @Endilll
[here](https://github.com/llvm/llvm-project/pull/78114/files#r1697730196)
Commit: 55255669077b191043b1a8920107890815151835
https://github.com/llvm/llvm-project/commit/55255669077b191043b1a8920107890815151835
Author: Jannick Kremer <51118500+DeinAlptraum at users.noreply.github.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/bindings/python/clang/cindex.py
Log Message:
-----------
[libclang/python] type-ignore `Any` returns from library calls (#101310)
On its own, this change leads to _more_ strict typing errors as the
functions are mostly not annotated so far, so the `# type: ignore`s are
reported as Unused. This is part of the work leading up to #78114
though, and one of the bigger parts factored out from it, so these will
later lead to less strict typing errors as the functions are annotated
with return types.
Commit: d8b985c9490664f7ec923e59cf6c603d998179ae
https://github.com/llvm/llvm-project/commit/d8b985c9490664f7ec923e59cf6c603d998179ae
Author: Andrey Timonin <112198242+EtoAndruwa at users.noreply.github.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M mlir/include/mlir/Dialect/ControlFlow/IR/ControlFlowOps.td
Log Message:
-----------
[mlir][cf] fix 'switch', 'assert' and 'cond_br' operations' description (#101319)
Commit: 29ef92b9051bca3a35be0cbc5e03d787941f945e
https://github.com/llvm/llvm-project/commit/29ef92b9051bca3a35be0cbc5e03d787941f945e
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/assign.compile.pass.cpp
R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/assign.verify.cpp
R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/copy.verify.cpp
A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/ctor.copy.compile.pass.cpp
A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/ctor.default.pass.cpp
R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/default.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock_shared.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock_shared.pass.cpp
R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/assign.compile.fail.cpp
A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/assign.compile.pass.cpp
R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/copy.compile.fail.cpp
A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/ctor.copy.compile.pass.cpp
A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/ctor.default.pass.cpp
R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/default.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock_shared.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_for.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_for.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_until.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until.pass.cpp
Log Message:
-----------
[libc++] Refactor tests for shared_mutex and shared_timed_mutex (#100783)
This makes the tests less flaky and also makes a few other refactorings
like using traits instead of .compile.fail.cpp tests.
Commit: 569d8ce11f25aeb1596bd791905b16e73359470e
https://github.com/llvm/llvm-project/commit/569d8ce11f25aeb1596bd791905b16e73359470e
Author: A. Jiang <de34 at live.cn>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libcxx/docs/Status/Cxx20Papers.csv
Log Message:
-----------
[libc++][docs] Remove misadded entry for P1937R2 from Cxx20Papers.csv (#100741)
P1937R2 only contains core language change and doesn't touch the library
at all.
Closes #100613.
Commit: 93fecc2577ece0329f3bbe2719bbc5b4b9b30010
https://github.com/llvm/llvm-project/commit/93fecc2577ece0329f3bbe2719bbc5b4b9b30010
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M lldb/tools/lldb-server/LLDBServerUtilities.cpp
Log Message:
-----------
[lldb] Fixed lldb-server crash (TestLogHandler was not thread safe) (#101326)
Host::LaunchProcess() requires to SetMonitorProcessCallback. This
callback is called from the child process monitor thread. We cannot
control this thread anyway. lldb-server may crash if there is a logging
around this callback because TestLogHandler is not thread safe. I faced
this issue debugging 100 simultaneous child processes. Note
StreamLogHandler::Emit() in lldb/source/Utility/Log.cpp already contains
the similar mutex.
Commit: 05c3a4b8f99d13df4249e9486d8aa42a37957685
https://github.com/llvm/llvm-project/commit/05c3a4b8f99d13df4249e9486d8aa42a37957685
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/ADT/GenericCycleImpl.h
A llvm/test/Analysis/CycleInfo/unreachable-predecessor.ll
Log Message:
-----------
[CycleInfo] skip unreachable predecessors (#101316)
If an unreachable block B branches to a block S inside a cycle, it may
cause S to be incorrectly treated as an entry to the cycle. We avoid
that by skipping unreachable predecessors when locating entries.
Commit: 9b017db6be8213a989517b494b56fc711af8bf8c
https://github.com/llvm/llvm-project/commit/9b017db6be8213a989517b494b56fc711af8bf8c
Author: Petr Hosek <phosek at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/cmake/caches/Fuchsia-stage2.cmake
Log Message:
-----------
Revert "[CMake][Fuchsia] Include libunwind and libc++abi in baremetal build" (#101340)
Reverts llvm/llvm-project#100908
Commit: 89946bda5e1c7ceaf6d26634cc8c8c9498d9f7be
https://github.com/llvm/llvm-project/commit/89946bda5e1c7ceaf6d26634cc8c8c9498d9f7be
Author: h-vetinari <h.vetinari at gmx.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/tools/clang-repl/CMakeLists.txt
M clang/tools/driver/CMakeLists.txt
M cmake/Modules/LLVMCheckCompilerLinkerFlag.cmake
M compiler-rt/cmake/config-ix.cmake
M libcxx/cmake/config-ix.cmake
M llvm/cmake/modules/AddLLVM.cmake
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/cmake/modules/HandleLLVMStdlib.cmake
R llvm/cmake/modules/LLVMCheckLinkerFlag.cmake
Log Message:
-----------
[cmake] switch to CMake's native `check_{compiler,linker}_flag` (#96171)
Broken out from #93429
Somewhat closing the loop opened by 7017e6c9cfd2de.
Co-authored-by: Ryan Prichard <rprichard at google.com>
Commit: 5b6b48800e625965064c2fd54efb976e0672455c
https://github.com/llvm/llvm-project/commit/5b6b48800e625965064c2fd54efb976e0672455c
Author: Hewill Kang <hewillk at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libcxx/include/__algorithm/find_end.h
Log Message:
-----------
[libc++][NFC] Remove two unused implementation details `__find_end` (#100685)
Those two `__find_end` functions are no longer used after 101d1e9b3c86.
After that commit, `std::find_end` started dispatching to `__find_end_classic`,
and `ranges::find_end` to `__find_end_impl`, which means that the two `__find_end`
functions were no longer necessary.
Fixes #100569
Commit: f90e51a508b1d9f6d74ca4cc6aca8b6b2fad5280
https://github.com/llvm/llvm-project/commit/f90e51a508b1d9f6d74ca4cc6aca8b6b2fad5280
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/sort.pass.cpp
Log Message:
-----------
[libcxx][test] Mark sort.pass.cpp as a long test (#100720)
Picolib testing skips any test requiring this feature, I just didn't
know the feature existed until now.
Commit: 23d188ed91ed39879e6f6e36d07eca6ceae4bab5
https://github.com/llvm/llvm-project/commit/23d188ed91ed39879e6f6e36d07eca6ceae4bab5
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.PR44847.pass.cpp
Log Message:
-----------
[libcxx][test] Require long_tests for eval.PR44847.pass.cp (#100722)
This takes 1m40s to run when testing picolib on qemu. This isn't the end
of the world but that's on an AArch64 server. So if someone felt the
need to mark this unsupported in the first place, it's likely much
slower on average hardware.
Commit: 7ab643383fe49d5bb22e45610cb52476bf7a922e
https://github.com/llvm/llvm-project/commit/7ab643383fe49d5bb22e45610cb52476bf7a922e
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/tools/libclang/CMakeLists.txt
Log Message:
-----------
[libclang] Use check_linker_flag instead of llvm_check_linker_flag
Follow-up to #96171 in an attempt to fix the Solaris bots.
Commit: b5a7d3b6c2169d84f9da749425a38dcef914d1ce
https://github.com/llvm/llvm-project/commit/b5a7d3b6c2169d84f9da749425a38dcef914d1ce
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/revec.ll
Log Message:
-----------
[SLP][REVEC] Make Instruction::Select support vector instructions. (#100507)
Commit: e9d5842ac7bd8d9b5700dc415910425ca796f4c1
https://github.com/llvm/llvm-project/commit/e9d5842ac7bd8d9b5700dc415910425ca796f4c1
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libcxx/include/__mutex/unique_lock.h
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/implicit_ctad.pass.cpp
R libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_assign.compile.fail.cpp
A libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_assign.compile.pass.cpp
R libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_ctor.compile.fail.cpp
A libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_ctor.compile.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/default.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_assign.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_ctor.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_adopt_lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_defer_lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_for.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_until.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/unlock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/member_swap.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/nonmember_swap.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/release.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/mutex.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/op_bool.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/owns_lock.pass.cpp
A libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/types.compile.pass.cpp
A libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/types.h
R libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/types.pass.cpp
Log Message:
-----------
[libc++] Make std::unique_lock available with _LIBCPP_HAS_NO_THREADS (#99562)
This is a follow up to https://github.com/llvm/llvm-project/pull/98717,
which made lock_guard available under _LIBCPP_HAS_NO_THREADS. We can
make unique_lock available under similar circumstances. This patch
follows the example in #98717, by:
- Removing the preprocessor guards for _LIBCPP_HAS_NO_THREADS in the
unique_lock header.
- providing a set of custom mutex implementations in a local header.
- using custom locks in tests that can be made to work under
`no-threads`.
Commit: 78b4b5cccbd92363708906d9171e21b0307b91a2
https://github.com/llvm/llvm-project/commit/78b4b5cccbd92363708906d9171e21b0307b91a2
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libcxx/CMakeLists.txt
R libcxx/benchmarks/CMakeLists.txt
R libcxx/benchmarks/CartesianBenchmarks.h
R libcxx/benchmarks/ContainerBenchmarks.h
R libcxx/benchmarks/GenerateInput.h
R libcxx/benchmarks/Utilities.h
R libcxx/benchmarks/VariantBenchmarks.h
R libcxx/benchmarks/algorithms.partition_point.bench.cpp
R libcxx/benchmarks/algorithms/common.h
R libcxx/benchmarks/algorithms/count.bench.cpp
R libcxx/benchmarks/algorithms/equal.bench.cpp
R libcxx/benchmarks/algorithms/fill.bench.cpp
R libcxx/benchmarks/algorithms/find.bench.cpp
R libcxx/benchmarks/algorithms/for_each.bench.cpp
R libcxx/benchmarks/algorithms/lower_bound.bench.cpp
R libcxx/benchmarks/algorithms/make_heap.bench.cpp
R libcxx/benchmarks/algorithms/make_heap_then_sort_heap.bench.cpp
R libcxx/benchmarks/algorithms/min.bench.cpp
R libcxx/benchmarks/algorithms/min_max_element.bench.cpp
R libcxx/benchmarks/algorithms/minmax.bench.cpp
R libcxx/benchmarks/algorithms/mismatch.bench.cpp
R libcxx/benchmarks/algorithms/pop_heap.bench.cpp
R libcxx/benchmarks/algorithms/pstl.stable_sort.bench.cpp
R libcxx/benchmarks/algorithms/push_heap.bench.cpp
R libcxx/benchmarks/algorithms/ranges_contains.bench.cpp
R libcxx/benchmarks/algorithms/ranges_ends_with.bench.cpp
R libcxx/benchmarks/algorithms/ranges_make_heap.bench.cpp
R libcxx/benchmarks/algorithms/ranges_make_heap_then_sort_heap.bench.cpp
R libcxx/benchmarks/algorithms/ranges_pop_heap.bench.cpp
R libcxx/benchmarks/algorithms/ranges_push_heap.bench.cpp
R libcxx/benchmarks/algorithms/ranges_sort.bench.cpp
R libcxx/benchmarks/algorithms/ranges_sort_heap.bench.cpp
R libcxx/benchmarks/algorithms/ranges_stable_sort.bench.cpp
R libcxx/benchmarks/algorithms/set_intersection.bench.cpp
R libcxx/benchmarks/algorithms/sort.bench.cpp
R libcxx/benchmarks/algorithms/sort_heap.bench.cpp
R libcxx/benchmarks/algorithms/stable_sort.bench.cpp
R libcxx/benchmarks/allocation.bench.cpp
R libcxx/benchmarks/atomic_wait.bench.cpp
R libcxx/benchmarks/atomic_wait_vs_mutex_lock.bench.cpp
R libcxx/benchmarks/deque.bench.cpp
R libcxx/benchmarks/deque_iterator.bench.cpp
R libcxx/benchmarks/exception_ptr.bench.cpp
R libcxx/benchmarks/filesystem.bench.cpp
R libcxx/benchmarks/format.bench.cpp
R libcxx/benchmarks/format_to.bench.cpp
R libcxx/benchmarks/format_to_n.bench.cpp
R libcxx/benchmarks/formatted_size.bench.cpp
R libcxx/benchmarks/formatter_float.bench.cpp
R libcxx/benchmarks/formatter_int.bench.cpp
R libcxx/benchmarks/function.bench.cpp
R libcxx/benchmarks/join_view.bench.cpp
R libcxx/benchmarks/lexicographical_compare_three_way.bench.cpp
R libcxx/benchmarks/libcxxabi/dynamic_cast.bench.cpp
R libcxx/benchmarks/libcxxabi/dynamic_cast_old_stress.bench.cpp
R libcxx/benchmarks/lit.cfg.py
R libcxx/benchmarks/lit.site.cfg.py.in
R libcxx/benchmarks/map.bench.cpp
R libcxx/benchmarks/monotonic_buffer.bench.cpp
R libcxx/benchmarks/numeric/gcd.bench.cpp
R libcxx/benchmarks/ordered_set.bench.cpp
R libcxx/benchmarks/random.bench.cpp
R libcxx/benchmarks/shared_mutex_vs_mutex.bench.cpp
R libcxx/benchmarks/std_format_spec_string_unicode.bench.cpp
R libcxx/benchmarks/std_format_spec_string_unicode_escape.bench.cpp
R libcxx/benchmarks/stop_token.bench.cpp
R libcxx/benchmarks/string.bench.cpp
R libcxx/benchmarks/stringstream.bench.cpp
R libcxx/benchmarks/system_error.bench.cpp
R libcxx/benchmarks/to_chars.bench.cpp
R libcxx/benchmarks/unordered_set_operations.bench.cpp
R libcxx/benchmarks/util_smartptr.bench.cpp
R libcxx/benchmarks/variant_visit_1.bench.cpp
R libcxx/benchmarks/variant_visit_2.bench.cpp
R libcxx/benchmarks/variant_visit_3.bench.cpp
R libcxx/benchmarks/vector_operations.bench.cpp
M libcxx/docs/TestingLibcxx.rst
M libcxx/test/CMakeLists.txt
A libcxx/test/benchmarks/CMakeLists.txt
A libcxx/test/benchmarks/CartesianBenchmarks.h
A libcxx/test/benchmarks/ContainerBenchmarks.h
A libcxx/test/benchmarks/GenerateInput.h
A libcxx/test/benchmarks/Utilities.h
A libcxx/test/benchmarks/VariantBenchmarks.h
A libcxx/test/benchmarks/algorithms.partition_point.bench.cpp
A libcxx/test/benchmarks/algorithms/common.h
A libcxx/test/benchmarks/algorithms/count.bench.cpp
A libcxx/test/benchmarks/algorithms/equal.bench.cpp
A libcxx/test/benchmarks/algorithms/fill.bench.cpp
A libcxx/test/benchmarks/algorithms/find.bench.cpp
A libcxx/test/benchmarks/algorithms/for_each.bench.cpp
A libcxx/test/benchmarks/algorithms/lower_bound.bench.cpp
A libcxx/test/benchmarks/algorithms/make_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/make_heap_then_sort_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/min.bench.cpp
A libcxx/test/benchmarks/algorithms/min_max_element.bench.cpp
A libcxx/test/benchmarks/algorithms/minmax.bench.cpp
A libcxx/test/benchmarks/algorithms/mismatch.bench.cpp
A libcxx/test/benchmarks/algorithms/pop_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/pstl.stable_sort.bench.cpp
A libcxx/test/benchmarks/algorithms/push_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_contains.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_ends_with.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_make_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_make_heap_then_sort_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_pop_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_push_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_sort.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_sort_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_stable_sort.bench.cpp
A libcxx/test/benchmarks/algorithms/set_intersection.bench.cpp
A libcxx/test/benchmarks/algorithms/sort.bench.cpp
A libcxx/test/benchmarks/algorithms/sort_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/stable_sort.bench.cpp
A libcxx/test/benchmarks/allocation.bench.cpp
A libcxx/test/benchmarks/atomic_wait.bench.cpp
A libcxx/test/benchmarks/atomic_wait_vs_mutex_lock.bench.cpp
A libcxx/test/benchmarks/deque.bench.cpp
A libcxx/test/benchmarks/deque_iterator.bench.cpp
A libcxx/test/benchmarks/exception_ptr.bench.cpp
A libcxx/test/benchmarks/filesystem.bench.cpp
A libcxx/test/benchmarks/format.bench.cpp
A libcxx/test/benchmarks/format_to.bench.cpp
A libcxx/test/benchmarks/format_to_n.bench.cpp
A libcxx/test/benchmarks/formatted_size.bench.cpp
A libcxx/test/benchmarks/formatter_float.bench.cpp
A libcxx/test/benchmarks/formatter_int.bench.cpp
A libcxx/test/benchmarks/function.bench.cpp
A libcxx/test/benchmarks/join_view.bench.cpp
A libcxx/test/benchmarks/lexicographical_compare_three_way.bench.cpp
A libcxx/test/benchmarks/libcxxabi/dynamic_cast.bench.cpp
A libcxx/test/benchmarks/libcxxabi/dynamic_cast_old_stress.bench.cpp
A libcxx/test/benchmarks/lit.cfg.py.in
A libcxx/test/benchmarks/lit.site.cfg.py.in
A libcxx/test/benchmarks/map.bench.cpp
A libcxx/test/benchmarks/monotonic_buffer.bench.cpp
A libcxx/test/benchmarks/numeric/gcd.bench.cpp
A libcxx/test/benchmarks/ordered_set.bench.cpp
A libcxx/test/benchmarks/random.bench.cpp
A libcxx/test/benchmarks/shared_mutex_vs_mutex.bench.cpp
A libcxx/test/benchmarks/std_format_spec_string_unicode.bench.cpp
A libcxx/test/benchmarks/std_format_spec_string_unicode_escape.bench.cpp
A libcxx/test/benchmarks/stop_token.bench.cpp
A libcxx/test/benchmarks/string.bench.cpp
A libcxx/test/benchmarks/stringstream.bench.cpp
A libcxx/test/benchmarks/system_error.bench.cpp
A libcxx/test/benchmarks/to_chars.bench.cpp
A libcxx/test/benchmarks/unordered_set_operations.bench.cpp
A libcxx/test/benchmarks/util_smartptr.bench.cpp
A libcxx/test/benchmarks/variant_visit_1.bench.cpp
A libcxx/test/benchmarks/variant_visit_2.bench.cpp
A libcxx/test/benchmarks/variant_visit_3.bench.cpp
A libcxx/test/benchmarks/vector_operations.bench.cpp
Log Message:
-----------
[libc++] Move the benchmarks under libcxx/test (#99371)
This is an intermediate and fairly mechanical step towards unifying the
benchmarks with the rest of the test suite. Moving this around requires
a few changes, notably making sure we don't throw a wrench into the
discovery process of the normal test suite. This won't be a problem
anymore once benchmarks are taken into account by the test setup out of
the box.
Commit: fa842970027b6d2f0160ad42fa82a872bf8d8600
https://github.com/llvm/llvm-project/commit/fa842970027b6d2f0160ad42fa82a872bf8d8600
Author: darkbuck <michael.hliao at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/test/CodeGenCUDA/convergent.cu
M clang/test/Misc/pragma-attribute-supported-attributes-list.test
A clang/test/SemaCUDA/attr-noconvergent.cu
Log Message:
-----------
[clang][CUDA] Add 'noconvergent' function and statement attribute
- For languages following SPMD/SIMT programming model, functions and
call sites are marked 'convergent' by default. 'noconvergent' is added
in this patch to allow developers to remove that 'convergent'
attribute when it's safe.
Reviewers:
nhaehnle, Sirraide, yxsamliu, Artem-B, ilovepi, jayfoad, ssahasra, arsenm
Reviewed By: arsenm
Pull Request: https://github.com/llvm/llvm-project/pull/100637
Commit: 2a6268d8f999d56a557079e7fd8ee8c4a4e9ac0c
https://github.com/llvm/llvm-project/commit/2a6268d8f999d56a557079e7fd8ee8c4a4e9ac0c
Author: Simon Tatham <simon.tatham at arm.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libc/config/config.json
M libc/config/linux/aarch64/entrypoints.txt
M libc/docs/configure.rst
M libc/include/llvm-libc-types/jmp_buf.h
A libc/src/setjmp/aarch64/CMakeLists.txt
A libc/src/setjmp/aarch64/longjmp.cpp
A libc/src/setjmp/aarch64/setjmp.cpp
Log Message:
-----------
[libc][AArch64] Add an AArch64 setjmp/longjmp. (#101177)
Previously, building libc for AArch64 in `LLVM_LIBC_FULL_BUILD` mode
would fail because no implementation of setjmp/longjmp was available.
This was the only obstacle, so now a full AArch64 build of libc is
possible.
This implementation automatically supports PAC and BTI if compiled with
the appropriate options. I would have liked to do the same for MTE stack
tagging, but as far as I can see there's currently no predefined macro
that allows detection of `-fsanitize=memtag-stack`, so I've left that
one as a TODO.
AAPCS64 delegates the x18 register to individual platform ABIs, and
allows them to choose what it's used for, which may or may not require
setjmp and longjmp to save and restore it. To accommodate this, I've
introduced a libc configuration option. The default is on, because the
only use of x18 I've so far encountered uses it to store information
specific to the current stack frame (so longjmp does need to restore
it), and this is also safe behavior in the default situation where the
platform ABI specifies no use of x18 and it becomes a temporary register
(restoring it to its previous value is no worse than any _other_ way for
a function call to clobber it). But if a platform ABI needs to use x18
in a way that requires longjmp to leave it alone, they can turn the
option off.
Commit: 8b2688bd173e79392927bcaed91855e7c4db8eaa
https://github.com/llvm/llvm-project/commit/8b2688bd173e79392927bcaed91855e7c4db8eaa
Author: Joshua Baehring <98630690+JoshuaMBa at users.noreply.github.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/secondary.h
Log Message:
-----------
[scudo] Separated committed and decommitted entries. (#100818)
Initially, the LRU list stored all mapped entries with no distinction
between the committed (non-madvise()'d) entries and decommitted
(madvise()'d) entries. Now these two types of entries are separated into
two lists, allowing future cache logic to branch depending on whether or
not entries are committed or decommitted. Furthermore, the retrieval
algorithm will prioritize committed entries over decommitted entries.
Specifically, valid-fit, committed entries (not necessarily optimal-fit)
are retrieved before optimal-fit, decommitted entries.
Commit: b455edbc4566dca5a367122eadd0bae9058fbd7b
https://github.com/llvm/llvm-project/commit/b455edbc4566dca5a367122eadd0bae9058fbd7b
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
M llvm/test/CodeGen/AMDGPU/simplify-libcalls.ll
M llvm/test/Transforms/InstCombine/bitcast.ll
Log Message:
-----------
[InstCombine] Recognize copysign idioms (#101324)
This patch folds `(bitcast (or (and (bitcast X to int), signmask), nneg
Y) to fp)` into `copysign((bitcast Y to fp), X)`. I found this pattern
exists in some graphics applications/math libraries.
Alive2: https://alive2.llvm.org/ce/z/ggQZV2
Commit: d36c9f828d795d77127ea0fada6be4b7b5e19dbb
https://github.com/llvm/llvm-project/commit/d36c9f828d795d77127ea0fada6be4b7b5e19dbb
Author: vporpo <vporpodas at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/SandboxIR.h
M llvm/lib/SandboxIR/SandboxIR.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Implement AddrSpaceCastInst (#101260)
This patch implements sandboxir::AddrSpaceCastInst which mirrors
llvm::AddrSpaceCastInst.
Commit: 3715035797a8b07ddaf2e2eff08fedc535891e15
https://github.com/llvm/llvm-project/commit/3715035797a8b07ddaf2e2eff08fedc535891e15
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libc/src/setjmp/aarch64/longjmp.cpp
M libc/src/setjmp/aarch64/setjmp.cpp
Log Message:
-----------
[libc] quick fix for aarch64 jmpbuf build (#101357)
Commit: 45ef0d492f7b61613d0833fbf7eafdd41e137139
https://github.com/llvm/llvm-project/commit/45ef0d492f7b61613d0833fbf7eafdd41e137139
Author: David Blaikie <dblaikie at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm-c/Error.h
M llvm/lib/Support/Error.cpp
M llvm/unittests/Support/ErrorTest.cpp
Log Message:
-----------
Add llvm::Error C API, LLVMCantFail
It's barely testable - the test does exercise the code, but wouldn't
fail on an empty implementation. It would cause a memory leak though
(because the error handle wouldn't be unwrapped/reowned) which could be
detected by asan and other leak detectors.
Commit: f0197a75e83d45514201432999616267ae0954e2
https://github.com/llvm/llvm-project/commit/f0197a75e83d45514201432999616267ae0954e2
Author: vporpo <vporpodas at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/SandboxIR.h
M llvm/lib/SandboxIR/SandboxIR.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Implement IntToPtrInst (#101359)
This patch implements sandboxir::IntToPtrInst which mirrors
llvm::IntToPtrInst.
Commit: faf3333510e0c2c3f319af40456e10c471e11ce8
https://github.com/llvm/llvm-project/commit/faf3333510e0c2c3f319af40456e10c471e11ce8
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/test/Analysis/ScalarEvolution/trip-count-scalable-stride.ll
Log Message:
-----------
[SCEV] Add coverage for flag inference with vscale strided IVs
Given vscale is a power of two, we should be able to prove no-self-wrap
in these cases. We currently don't, but an upcoming change will fix this.
Commit: 8398ad9cb21736dc57ee4dd766bd0859ef9bd000
https://github.com/llvm/llvm-project/commit/8398ad9cb21736dc57ee4dd766bd0859ef9bd000
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M lldb/include/lldb/Interpreter/CommandObject.h
M lldb/source/Commands/CommandObjectBreakpoint.cpp
M lldb/source/Commands/CommandObjectBreakpointCommand.cpp
M lldb/source/Commands/CommandObjectDisassemble.cpp
M lldb/source/Commands/CommandObjectExpression.cpp
M lldb/source/Commands/CommandObjectFrame.cpp
M lldb/source/Commands/CommandObjectProcess.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Commands/CommandObjectThread.cpp
M lldb/source/Commands/CommandObjectWatchpoint.cpp
M lldb/source/Commands/CommandObjectWatchpointCommand.cpp
M lldb/source/Interpreter/CommandObject.cpp
M lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp
Log Message:
-----------
[lldb] Unify the way we get the Target in CommandObject (#101208)
Currently, CommandObjects are obtaining a target in a variety of ways.
Often the command incorrectly operates on the selected target. As an
example, when a breakpoint command is running, the current target is
passed into the command but the target that hit the breakpoint is not
the selected target. In other places we use the CommandObject's
execution context, which is frozen during the execution of the command,
and comes with its own limitations. Finally, we often want to fall back
to the dummy target if no real target is available.
Instead of having to guess how to get the target, this patch introduces
one helper function in CommandObject to get the most relevant target. In
order of priority, that's the target from the command object's execution
context, from the interpreter's execution context, the selected target
or the dummy target.
rdar://110846511
Commit: 6a54dfbfe534276d644d7f9c027f0deeb748dd53
https://github.com/llvm/llvm-project/commit/6a54dfbfe534276d644d7f9c027f0deeb748dd53
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libcxx/test/benchmarks/GenerateInput.h
M libcxx/test/benchmarks/algorithms.partition_point.bench.cpp
M libcxx/test/benchmarks/algorithms/min.bench.cpp
M libcxx/test/benchmarks/algorithms/minmax.bench.cpp
M libcxx/test/benchmarks/atomic_wait.bench.cpp
M libcxx/test/benchmarks/atomic_wait_vs_mutex_lock.bench.cpp
M libcxx/test/benchmarks/filesystem.bench.cpp
M libcxx/test/benchmarks/format.bench.cpp
M libcxx/test/benchmarks/format_to.bench.cpp
M libcxx/test/benchmarks/format_to_n.bench.cpp
M libcxx/test/benchmarks/formatted_size.bench.cpp
M libcxx/test/benchmarks/formatter_float.bench.cpp
M libcxx/test/benchmarks/formatter_int.bench.cpp
M libcxx/test/benchmarks/lexicographical_compare_three_way.bench.cpp
M libcxx/test/benchmarks/random.bench.cpp
M libcxx/test/benchmarks/shared_mutex_vs_mutex.bench.cpp
M libcxx/test/benchmarks/stop_token.bench.cpp
M libcxx/test/benchmarks/string.bench.cpp
M libcxx/test/benchmarks/stringstream.bench.cpp
M libcxx/test/benchmarks/to_chars.bench.cpp
M libcxx/test/benchmarks/unordered_set_operations.bench.cpp
M libcxx/test/benchmarks/variant_visit_1.bench.cpp
M libcxx/test/benchmarks/variant_visit_2.bench.cpp
M libcxx/test/benchmarks/variant_visit_3.bench.cpp
M libcxx/test/benchmarks/vector_operations.bench.cpp
M libcxx/test/libcxx/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/vprint_unicode.pass.cpp
M libcxx/test/libcxx/input.output/iostream.format/output.streams/ostream.syn/includes.compile.pass.cpp
M libcxx/test/libcxx/input.output/iostream.format/print.fun/transcoding.pass.cpp
M libcxx/test/libcxx/input.output/iostream.format/print.fun/vprint_unicode_posix.pass.cpp
M libcxx/test/libcxx/input.output/iostream.format/print.fun/vprint_unicode_windows.pass.cpp
M libcxx/test/libcxx/time/convert_to_tm.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.expected/no_unique_address.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.expected/noexcept.extension.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.unexpected/noexcept.extension.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.void/no_unique_address.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.void/noexcept.extension.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.void/value.lwg3940.verify.cpp
M libcxx/test/libcxx/utilities/format/enable_insertable.compile.pass.cpp
M libcxx/test/libcxx/utilities/format/format.arguments/format.arg/arg_t.compile.pass.cpp
M libcxx/test/libcxx/utilities/format/format.formatter/format.context/types.compile.pass.cpp
M libcxx/test/libcxx/utilities/format/format.functions/ascii.pass.cpp
M libcxx/test/libcxx/utilities/format/format.functions/escaped_output.ascii.pass.cpp
M libcxx/test/libcxx/utilities/format/format.string/format.string.std/code_point_width_estimation.pass.cpp
M libcxx/test/libcxx/utilities/format/format.string/format.string.std/concepts_precision.h
M libcxx/test/libcxx/utilities/format/format.string/format.string.std/escaped_output.pass.cpp
M libcxx/test/libcxx/utilities/format/format.string/format.string.std/extended_grapheme_cluster.pass.cpp
M libcxx/test/libcxx/utilities/format/format.string/format.string.std/test_exception.h
M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.functions.format.pass.cpp
M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.functions.tests.h
M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.functions.vformat.pass.cpp
M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.pass.cpp
M libcxx/test/std/containers/container.adaptors/container.adaptors.format/parse.pass.cpp
M libcxx/test/std/containers/container.adaptors/container.adaptors.format/types.compile.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.format.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.tests.h
M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.vformat.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/parse.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/types.compile.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/locale-specific_form.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/print.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/print_tests.h
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/println.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/vprint_nonunicode.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/vprint_unicode.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/includes.compile.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/no_file_description.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/print.file.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/print.sh.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/print_tests.h
M libcxx/test/std/input.output/iostream.format/print.fun/println.blank_line.sh.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/println.file.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/println.sh.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/vprint_nonunicode.file.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/vprint_nonunicode.sh.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/vprint_unicode.file.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/vprint_unicode.sh.cpp
M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.format.pass.cpp
M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.tests.h
M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.vformat.pass.cpp
M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.pass.cpp
M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/parse.pass.cpp
M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/types.compile.pass.cpp
M libcxx/test/std/time/time.syn/formatter.day.pass.cpp
M libcxx/test/std/time/time.syn/formatter.duration.pass.cpp
M libcxx/test/std/time/time.syn/formatter.file_time.pass.cpp
M libcxx/test/std/time/time.syn/formatter.hh_mm_ss.pass.cpp
M libcxx/test/std/time/time.syn/formatter.local_info.pass.cpp
M libcxx/test/std/time/time.syn/formatter.local_time.pass.cpp
M libcxx/test/std/time/time.syn/formatter.month.pass.cpp
M libcxx/test/std/time/time.syn/formatter.month_day.pass.cpp
M libcxx/test/std/time/time.syn/formatter.month_day_last.pass.cpp
M libcxx/test/std/time/time.syn/formatter.month_weekday.pass.cpp
M libcxx/test/std/time/time.syn/formatter.sys_info.pass.cpp
M libcxx/test/std/time/time.syn/formatter.sys_time.pass.cpp
M libcxx/test/std/time/time.syn/formatter.weekday.pass.cpp
M libcxx/test/std/time/time.syn/formatter.weekday_index.pass.cpp
M libcxx/test/std/time/time.syn/formatter.weekday_last.pass.cpp
M libcxx/test/std/time/time.syn/formatter.year.pass.cpp
M libcxx/test/std/time/time.syn/formatter.year_month.pass.cpp
M libcxx/test/std/time/time.syn/formatter.year_month_day.pass.cpp
M libcxx/test/std/time/time.syn/formatter.year_month_day_last.pass.cpp
M libcxx/test/std/time/time.syn/formatter.year_month_weekday.pass.cpp
M libcxx/test/std/time/time.syn/formatter.year_month_weekday_last.pass.cpp
M libcxx/test/std/time/time.syn/formatter.zoned_time.pass.cpp
M libcxx/test/std/time/time.syn/formatter_tests.h
M libcxx/test/std/utilities/expected/expected.bad/base.compile.pass.cpp
M libcxx/test/std/utilities/expected/expected.bad/ctor.error.pass.cpp
M libcxx/test/std/utilities/expected/expected.bad/error.member.pass.cpp
M libcxx/test/std/utilities/expected/expected.bad/void-specialization.pass.cpp
M libcxx/test/std/utilities/expected/expected.bad/what.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.U.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.unexpected.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.unexpected.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/emplace.intializer_list.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/emplace.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.convert.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.convert.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.default.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.inplace.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.inplace_init_list.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.u.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.unexpect.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.unexpect_init_list.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.unexpected.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.unexpected.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/dtor.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/equality/equality.T2.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/equality/equality.other_expected.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/equality/equality.unexpected.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/observers/arrow.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/observers/bool.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/observers/deref.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/observers/error.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/observers/has_value.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/observers/value.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/observers/value_or.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/swap/free.swap.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/swap/member.swap.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/assign/assign.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/assign/assign.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/ctad.compile.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.error.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.inplace.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.inplace_init_list.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/equality.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/observer/error.const_ref.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/observer/error.const_ref_ref.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/observer/error.ref.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/observer/error.ref_ref.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/swap/swap.free.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/swap/swap.member.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/emplace.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.convert.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.convert.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.default.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.inplace.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.unexpect.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.unexpect_init_list.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.unexpected.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.unexpected.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/dtor.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/equality/equality.other_expected.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/equality/equality.unexpected.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/observers/bool.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/observers/deref.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/observers/error.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/observers/has_value.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/observers/value.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/swap/free.swap.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/swap/member.swap.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg.store/make_format_args.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg.store/make_format_args.sh.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg.store/make_wformat_args.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/ctor.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/operator_bool.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/visit.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/visit.return_type.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.deprecated.verify.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.args/ctad.compile.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.args/ctor.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.args/get.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.args/types.compile.pass.cpp
M libcxx/test/std/utilities/format/format.formattable/concept.formattable.compile.pass.cpp
M libcxx/test/std/utilities/format/format.formattable/concept.formattable.float.compile.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/advance_to.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/arg.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/ctor.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/locale.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/out.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.locking/enable_nonlocking_formatter_optimization.compile.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.bool.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.c_string.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char.fsigned-char.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char.funsigned-char.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char_array.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.floating_point.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.handle.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.pointer.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.signed_integral.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.string.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.unsigned_integral.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/advance_to.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/begin.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/check_arg_id.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/check_arg_id.verify.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/ctor.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/end.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/next_arg_id.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/next_arg_id.verify.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/types.compile.pass.cpp
M libcxx/test/std/utilities/format/format.functions/P2418.pass.cpp
M libcxx/test/std/utilities/format/format.functions/bug_81590.compile.pass.cpp
M libcxx/test/std/utilities/format/format.functions/escaped_output.unicode.pass.cpp
M libcxx/test/std/utilities/format/format.functions/fill.unicode.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format.locale.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format.locale.runtime_format.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format.locale.verify.cpp
M libcxx/test/std/utilities/format/format.functions/format.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format.runtime_format.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format.verify.cpp
M libcxx/test/std/utilities/format/format.functions/format_tests.h
M libcxx/test/std/utilities/format/format.functions/format_to.locale.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format_to.locale.verify.cpp
M libcxx/test/std/utilities/format/format.functions/format_to.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format_to.verify.cpp
M libcxx/test/std/utilities/format/format.functions/format_to_n.locale.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format_to_n.locale.verify.cpp
M libcxx/test/std/utilities/format/format.functions/format_to_n.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format_to_n.verify.cpp
M libcxx/test/std/utilities/format/format.functions/formatted_size.locale.pass.cpp
M libcxx/test/std/utilities/format/format.functions/formatted_size.locale.verify.cpp
M libcxx/test/std/utilities/format/format.functions/formatted_size.pass.cpp
M libcxx/test/std/utilities/format/format.functions/formatted_size.verify.cpp
M libcxx/test/std/utilities/format/format.functions/locale-specific_form.pass.cpp
M libcxx/test/std/utilities/format/format.functions/unicode.pass.cpp
M libcxx/test/std/utilities/format/format.functions/vformat.locale.pass.cpp
M libcxx/test/std/utilities/format/format.functions/vformat.pass.cpp
M libcxx/test/std/utilities/format/format.functions/vformat_to.locale.pass.cpp
M libcxx/test/std/utilities/format/format.functions/vformat_to.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtdef/format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtdef/parse.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtdef/set_brackets.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtdef/set_separator.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtkind/format_kind.compile.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtkind/format_kind.verify.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtkind/range_format.compile.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.functions.format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.functions.vformat.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/parse.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.functions.format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.functions.vformat.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtset/parse.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.functions.format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.functions.vformat.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/parse.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.vformat.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.formatter/parse.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.formatter/set_brackets.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.formatter/set_separator.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.formatter/underlying.pass.cpp
M libcxx/test/std/utilities/format/format.string/format.string.std/lwg3720_arg_id_width_precision_allowed_types.pass.cpp
M libcxx/test/std/utilities/format/format.string/format.string.std/lwg3720_arg_id_width_precision_allowed_types.verify.cpp
M libcxx/test/std/utilities/format/format.tuple/format.functions.format.pass.cpp
M libcxx/test/std/utilities/format/format.tuple/format.functions.format.verify.cpp
M libcxx/test/std/utilities/format/format.tuple/format.functions.tests.h
M libcxx/test/std/utilities/format/format.tuple/format.functions.vformat.pass.cpp
M libcxx/test/std/utilities/format/format.tuple/format.pass.cpp
M libcxx/test/std/utilities/format/format.tuple/parse.pass.cpp
M libcxx/test/std/utilities/format/format.tuple/set_brackets.pass.cpp
M libcxx/test/std/utilities/format/format.tuple/set_separator.pass.cpp
M libcxx/test/std/utilities/format/types.compile.pass.cpp
M libcxx/test/support/format.functions.common.h
M libcxx/test/support/test.support/make_string_header.pass.cpp
M libcxx/test/support/test_basic_format_arg.h
Log Message:
-----------
[libc++][NFC] Add missing license headers
Also standardize the license comment in several files where it was
different from what we normally do.
Commit: a847b0f37d5dd0a3334eb822b35e89fa835a4b8d
https://github.com/llvm/llvm-project/commit/a847b0f37d5dd0a3334eb822b35e89fa835a4b8d
Author: Marc Auberer <marc.auberer at chillibits.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/Target/README.txt
Log Message:
-----------
Remove already implemented target independent optimization opportunity (#101233)
Fixes #101127
See this working example: https://godbolt.org/z/z15oj15eP
Commit: 28a079223dd22f13ca51dfa8f5d51a9cd3514edf
https://github.com/llvm/llvm-project/commit/28a079223dd22f13ca51dfa8f5d51a9cd3514edf
Author: Brian Yahn <yahn at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/include/clang/AST/ASTContext.h
Log Message:
-----------
Fix typo: tyep -> type.
Commit: a3fb30143565cca2c794ab0e9921d50b09cadfc7
https://github.com/llvm/llvm-project/commit/a3fb30143565cca2c794ab0e9921d50b09cadfc7
Author: Rob Suderman <rob.suderman at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
M mlir/test/mlir-cpu-runner/math-polynomial-approx.mlir
Log Message:
-----------
[mlir][math] Fix polynomial `math.asin` approximation (#101247)
The polynomial approximation for asin is only good between [-9/16,
9/16]. Values beyond that range must be remapped to achieve good numeric
results. This is done by the equation below:
`arcsin(x) = PI/2 - arcsin(sqrt(1.0 - x*x))`
Commit: 9718f3dec1c366809b0c2508ba77cc5dd3cf82ec
https://github.com/llvm/llvm-project/commit/9718f3dec1c366809b0c2508ba77cc5dd3cf82ec
Author: vporpo <vporpodas at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/SandboxIR.h
M llvm/lib/SandboxIR/SandboxIR.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Implement FPToSIInst (#101362)
This patch implements sandboxir::FPToSIInst which mirrors
llvm::FPToSIInst.
Commit: a4c6ebeb20168bbedbb1a3aff9f5096416e5914a
https://github.com/llvm/llvm-project/commit/a4c6ebeb20168bbedbb1a3aff9f5096416e5914a
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/include/llvm/CodeGen/ValueTypes.td
M llvm/include/llvm/CodeGenTypes/MachineValueType.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/test/TableGen/dag-isel-regclass-emit-enum.td
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
M llvm/utils/TableGen/VTEmitter.cpp
Log Message:
-----------
[MVT][TableGen] Extend Machine Value Type to `uint16_t` (#99657)
RFC:
https://discourse.llvm.org/t/rfc-extend-machine-value-type-from-uint8-t-to-uint16-t/80274
compile-time-tracker:
https://llvm-compile-time-tracker.com/compare.php?from=4b9fab591916eec9fd1942f37afe3b137b564089&to=177d28247efe5a4d59a8d8150b4daf01e4f57d74&stat=wall-time
Currently 208 out of 256 MVTs are used, it will be run out soon, so
ultimately we need to extend the original `MVT::SimpleValueType` from
`uint8_t` to `uint16_t` to accomodate more types.
The `MatcherTable` uses `unsigned char` for encoding the matcher code,
so the extended MVTs are no longer fit into the table, thus we need to
use VBR to encode them as we do on others that are wider than 8 bits.
The statistics below shows the difference of "Total Array size" of the
matcher table that appears in every files:
```
Table Before After Change(%)
WebAssemblyGenDAGISel.inc 23576 23775 0.844
NVPTXGenDAGISel.inc 173498 173498 0
RISCVGenDAGISel.inc 2179121 2369929 8.756
AVRGenDAGISel.inc 2754 2754 0
PPCGenDAGISel.inc 163315 163617 0.185
MipsGenDAGISel.inc 47280 47447 0.353
SystemZGenDAGISel.inc 56243 56461 0.388
AArch64GenDAGISel.inc 467893 487830 4.261
MSP430GenDAGISel.inc 8069 8069 0
LoongArchGenDAGISel.inc 78928 79131 0.257
XCoreGenDAGISel.inc 3432 3432 0
BPFGenDAGISel.inc 3733 3733 0
VEGenDAGISel.inc 65174 66456 1.967
LanaiGenDAGISel.inc 2067 2067 0
X86GenDAGISel.inc 628787 636987 1.304
ARMGenDAGISel.inc 170968 171036 0.040
HexagonGenDAGISel.inc 155764 155764 0
SparcGenDAGISel.inc 5762 5798 0.625
AMDGPUGenDAGISel.inc 504356 504463 0.021
R600GenDAGISel.inc 29785 29785 0
```
The statistics below shows the runtime peak memory usage by compiling a
simple C program:
`/bin/time -v clang -target $TARGET -O3 -c test.c`
```
int test(int a) {
return a * 3;
}
```
```
Target Before(kbytes) After(kbytes) Change(%)
wasm64 110172 110088 -0.076
nvptx64 109784 109980 0.179
riscv64 114020 113656 -0.319
avr 110352 110068 -0.257
ppc64 112612 112476 -0.120
mips64 113588 113668 0.070
systemz 110860 110760 -0.090
aarch64 113704 113432 -0.239
msp430 110284 110200 -0.076
loongarch64 111052 110756 -0.267
xcore 108340 108020 -0.295
bpf 110620 110708 0.080
ve 110960 110920 -0.036
lanai 110180 109960 -0.200
x86_64 113640 113304 -0.296
arm64 113540 113172 -0.324
hexagon 114620 114684 0.056
sparc 110412 110136 -0.250
amdgcn 118164 117144 -0.863
r600 111200 110508 -0.622
```
Commit: 6d103d7746c94cc865138093c7c65138b89aa77c
https://github.com/llvm/llvm-project/commit/6d103d7746c94cc865138093c7c65138b89aa77c
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/Analysis/GenericDomTreeUpdater.h
M llvm/lib/Analysis/DomTreeUpdater.cpp
M llvm/lib/CodeGen/EarlyIfConversion.cpp
M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
M llvm/unittests/IR/DominatorTreeTest.cpp
Log Message:
-----------
[Support] Erase blocks after DomTree::eraseNode (#101195)
Change eraseNode to require that the basic block is still contained
inside the function. This is a preparation for using numbers of basic
blocks inside the dominator tree, which are invalid for blocks that are
not inside a function.
Commit: 9fe455fd0c7d6f2107b33b37c04bbd3b12fe65b3
https://github.com/llvm/llvm-project/commit/9fe455fd0c7d6f2107b33b37c04bbd3b12fe65b3
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M lldb/include/lldb/Symbol/UnwindPlan.h
M lldb/source/Symbol/UnwindPlan.cpp
M lldb/source/Target/RegisterContextUnwind.cpp
Log Message:
-----------
[lldb] Add constant value mode for RegisterLocation in UnwindPlans (#100624)
This is useful for language runtimes that compute register values by
inspecting the state of the currently running process. Currently, there
are no mechanisms enabling these runtimes to set register values to
arbitrary values.
The alternative considered would involve creating a dwarf expression
that produces an arbitrary integer (e.g. using OP_constu). However, the
current data structure for Rows is such that they do not own any memory
associated with dwarf expressions, which implies any such expression
would need to have static storage and therefore could not contain a
runtime value.
Adding a new rule for constants leads to a simpler implementation. It's
also worth noting that this does not make the "Location" union any
bigger, since it already contains a pointer+size pair.
Commit: 8b17b12912ff59b0c9f2825ac2cc258418ed349b
https://github.com/llvm/llvm-project/commit/8b17b12912ff59b0c9f2825ac2cc258418ed349b
Author: vporpo <vporpodas at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/SandboxIR.h
M llvm/lib/SandboxIR/SandboxIR.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Implement FPToUIInst (#101369)
This patch implements sandboxir::FPToUIInst which mirrors
llvm::FPToUIInst.
Commit: 35a2e6d24bcb94720ec7b3aa00e58a1b7b837fbc
https://github.com/llvm/llvm-project/commit/35a2e6d24bcb94720ec7b3aa00e58a1b7b837fbc
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/test/Analysis/ScalarEvolution/finite-trip-count.ll
M llvm/test/Analysis/ScalarEvolution/ne-overflow.ll
M llvm/test/Analysis/ScalarEvolution/trip-count-implied-addrec.ll
Log Message:
-----------
[SCEV] Regen a couple auto-gen tests
Commit: f9827e67ce2ccad863fac9d062eacbd60d829375
https://github.com/llvm/llvm-project/commit/f9827e67ce2ccad863fac9d062eacbd60d829375
Author: Volodymyr Sapsai <vsapsai at apple.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticSerializationKinds.td
M clang/lib/Serialization/ASTReader.cpp
M clang/test/Index/pch-with-errors.c
M clang/test/Modules/load-module-with-errors.m
Log Message:
-----------
[Modules][Diagnostic] Don't claim a METADATA mismatch is always in PCH file. (#101280)
You can provide more than one AST file as an input. Emit a path for a
file with a problem, so you can disambiguate between multiple files.
rdar://65005546
Commit: 366eade911b54878c9cc1835d2544fb4ba907ef5
https://github.com/llvm/llvm-project/commit/366eade911b54878c9cc1835d2544fb4ba907ef5
Author: Leandro Lupori <leandro.lupori at linaro.org>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M flang/include/flang/Semantics/tools.h
M flang/lib/Semantics/resolve-directives.cpp
A flang/test/Lower/OpenMP/associate.f90
M flang/test/Lower/OpenMP/default-clause-implied-do-fix.f90
A flang/test/Semantics/OpenMP/copyprivate04.f90
M flang/test/Semantics/OpenMP/do05-positivecase.f90
M flang/test/Semantics/OpenMP/do20.f90
M flang/test/Semantics/OpenMP/implicit-dsa.f90
A flang/test/Semantics/OpenMP/parallel-shared05.f90
M flang/test/Semantics/OpenMP/reduction08.f90
M flang/test/Semantics/OpenMP/reduction09.f90
M flang/test/Semantics/OpenMP/symbol01.f90
M flang/test/Semantics/OpenMP/symbol02.f90
M flang/test/Semantics/OpenMP/symbol03.f90
M flang/test/Semantics/OpenMP/symbol05.f90
M flang/test/Semantics/OpenMP/symbol07.f90
M flang/test/Semantics/OpenMP/symbol08.f90
M flang/test/Semantics/OpenMP/symbol09.f90
Log Message:
-----------
[flang][OpenMP] Reland Fix copyprivate semantic checks (#95799) (#101009)
There are some cases in which variables used in OpenMP constructs
are predetermined as private. The semantic checks for copyprivate
were not handling those cases.
Besides that, shared symbols were not being properly represented
in some cases. When there was no previously declared private
(implicit) symbol, no new association symbols, representing
shared ones, were being created.
These symbols must always be inserted in constructs that may
privatize the original symbol: parallel, teams and task
generating constructs.
Fixes #87214 and #86907
Commit: 055893f164f595e5d4115db17dd479ed3401bf00
https://github.com/llvm/llvm-project/commit/055893f164f595e5d4115db17dd479ed3401bf00
Author: Brox Chen <broxigarchen at outlook.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
A llvm/test/MC/AMDGPU/gfx12_asm_vop1-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
Log Message:
-----------
[AMDGPU][True16][MC] duplicate vop1 tests to fake16 and update real-true16 flags for GFX12 (#100849)
duplicate vop1 tests to fake16 and update real-true16 flags for GFX12
creating duplications here to avoid bulk copy in the following true16
patches
---------
Co-authored-by: guochen2 <guochen2 at amd.com>
Commit: 6aa723daa9d9c54c597788d384b41dd735359316
https://github.com/llvm/llvm-project/commit/6aa723daa9d9c54c597788d384b41dd735359316
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetLibraryInfo.def
M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
Log Message:
-----------
[TLI] Add support for nan libfunc (#101356)
Reference: https://en.cppreference.com/w/cpp/numeric/math/nan
Commit: 0a01e8ff530ab15277aa9fad5361297d7b55e247
https://github.com/llvm/llvm-project/commit/0a01e8ff530ab15277aa9fad5361297d7b55e247
Author: Alexandre Perez <alexandrecperez at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M lldb/include/lldb/Target/Target.h
M lldb/source/Target/Target.cpp
M lldb/source/Target/TargetProperties.td
M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
Log Message:
-----------
[lldb] Allow mapping object file paths (#101361)
This introduces a `target.object-map` which allows us to remap module
locations, much in the same way as source mapping works today. This is
useful, for instance, when debugging coredumps, so we can replace some
of the locations where LLDB attempts to load shared libraries and
executables from, without having to setup an entire sysroot.
Commit: 6d3317e5389d3041c4a0ae588919d7a2fe2764f0
https://github.com/llvm/llvm-project/commit/6d3317e5389d3041c4a0ae588919d7a2fe2764f0
Author: vporpo <vporpodas at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/SandboxIR.h
M llvm/lib/SandboxIR/SandboxIR.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Implement SIToFPInst (#101374)
This patch implements sandboxir::SIToFPInst which mirrors
llvm::SIToFPInst.
Commit: 496fedaccac569438ccb1fd65bf3b30eb5557350
https://github.com/llvm/llvm-project/commit/496fedaccac569438ccb1fd65bf3b30eb5557350
Author: ChiaHungDuan <chiahungduan at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/secondary.h
Log Message:
-----------
Revert "[scudo] Separated committed and decommitted entries." (#101375)
Reverts llvm/llvm-project#100818
Commit: d0b4b6b12dea662a9316e2f83277288be37be666
https://github.com/llvm/llvm-project/commit/d0b4b6b12dea662a9316e2f83277288be37be666
Author: Paul T Robinson <paul.robinson at sony.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/lib/Driver/ToolChains/CommonArgs.cpp
Log Message:
-----------
[Driver] Correct comment on default for -falign-functions (#101257)
Commit: 33960ce5a8e26baf05521fd7f8be5c5abb6bb0ff
https://github.com/llvm/llvm-project/commit/33960ce5a8e26baf05521fd7f8be5c5abb6bb0ff
Author: Sayhaan Siddiqui <49014204+sayhaan at users.noreply.github.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M bolt/include/bolt/Core/GDBIndex.h
M bolt/lib/Core/GDBIndex.cpp
M bolt/test/X86/dwarf4-split-gdb-index-types-gdb-generated.test
Log Message:
-----------
[BOLT][DWARF] Sort GDBIndexTUEntryVector (#101264)
Sorts GDBIndexTUEntryVector in decreasing order by hash to ensure
determinism when parallelized.
Commit: 9a1013220b668d846e63f241203b80515dee0a03
https://github.com/llvm/llvm-project/commit/9a1013220b668d846e63f241203b80515dee0a03
Author: Johannes Doerfert <johannes at jdoerfert.de>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M offload/include/Shared/EnvironmentVar.h
M offload/plugins-nextgen/amdgpu/dynamic_hsa/hsa.h
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/include/ErrorReporting.h
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/plugins-nextgen/common/src/PluginInterface.cpp
A offload/test/sanitizer/kernel_crash.c
A offload/test/sanitizer/kernel_crash_async.c
A offload/test/sanitizer/kernel_crash_many.c
A offload/test/sanitizer/kernel_crash_single.c
A offload/test/sanitizer/kernel_trap.c
A offload/test/sanitizer/kernel_trap_async.c
A offload/test/sanitizer/kernel_trap_many.c
M openmp/docs/design/Runtimes.rst
Log Message:
-----------
[Offload] Allow to record kernel launch stack traces (#100472)
Similar to (de)allocation traces, we can record kernel launch stack
traces and display them in case of an error. However, the AMD GPU plugin
signal handler, which is invoked on memroy faults, cannot pinpoint the
offending kernel. Insteade print `<NUM>`, set via
`OFFLOAD_TRACK_NUM_KERNEL_LAUNCH_TRACES=<NUM>`, many traces. The
recoding/record uses a ring buffer of fixed size (for now 8).
For `trap` errors, we print the actual kernel name, and trace if
recorded.
Commit: b66aa3bfff442a5eb67f1bfcfaa148e42e49b787
https://github.com/llvm/llvm-project/commit/b66aa3bfff442a5eb67f1bfcfaa148e42e49b787
Author: OverMighty <its.overmighty at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/expf16.cpp
M libc/test/src/math/performance_testing/expf16_perf.cpp
M libc/test/src/math/smoke/expf16_test.cpp
Log Message:
-----------
[libc][math][c23] Refactor expf16 (#101373)
Also updates and sorts CMake target dependencies, and corrects the smoke
test that expected expf16(sNaN) to return sNaN instead of aNaN, although
the test still passed, as FPMatcher only checks whether both sides are
NaN, not whether they're the same NaN value.
Commit: ef67664d81b395e6dea9586a1a508323ad2a9de7
https://github.com/llvm/llvm-project/commit/ef67664d81b395e6dea9586a1a508323ad2a9de7
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
A llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.gfx10.ll
A llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll
Log Message:
-----------
AMDGPU: Add testcase for materializing sgpr frame indexes (#101306)
These add some IR tests for 57d10b4fc9142d12fbdec578a0cc6f78deb67ef4.
These do rely on some lucky MIR placement to test the scc input, but I
haven't found a better way to do it. Also, scc handling in inline asm
is extremely buggy.
Commit: 6740d701bde4ad9b95d7d811852fa0a2542e6b28
https://github.com/llvm/llvm-project/commit/6740d701bde4ad9b95d7d811852fa0a2542e6b28
Author: MaheshRavishankar <1663364+MaheshRavishankar at users.noreply.github.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.h
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
M mlir/include/mlir/Dialect/SCF/Utils/Utils.h
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/lib/Dialect/SCF/Utils/Utils.cpp
M mlir/test/Dialect/Linalg/tile-tensors.mlir
M mlir/test/Dialect/Linalg/tile-to-forall.mlir
M mlir/test/Dialect/Linalg/transform-op-tile.mlir
M mlir/test/Interfaces/TilingInterface/tile-and-fuse-using-interface.mlir
M mlir/test/Interfaces/TilingInterface/tile-pad-using-interface.mlir
M mlir/test/Interfaces/TilingInterface/tile-using-interface.mlir
M mlir/test/Interfaces/TilingInterface/tile-using-scfforall.mlir
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][Linalg] Deprecate `linalg::tileToForallOp` and `linalg::tileToForallOpUsingTileSizes` (#91878)
The implementation of these methods are legacy and they are removed in
favor of using the `scf::tileUsingSCF` methods as replacements. To get
the latter on par with requirements of the deprecated methods, the
tiling allows one to specify the maximum number of tiles to use instead
of specifying the tile sizes. When tiling to `scf.forall` this
specification is used to generate the `num_threads` version of the
operation.
A slight deviation from previous implementation is that the deprecated
method always generated the `num_threads` variant of the `scf.forall`
operation. Instead now this is driven by the tiling options specified.
This reduces the indexing math generated when the tile sizes are
specified.
**Moving from `linalg::tileToForallOp` to `scf::tileUsingSCF`**
```
OpBuilder b;
TilingInterface op;
ArrayRef<OpFoldResult> numThreads;
ArrayAttr mapping;
FailureOr<ForallTilingResult> result =linalg::tileToForallOp(b, op, numThreads, mapping);
```
can be replaced by
```
scf::SCFTilingOptions options;
options.setNumThreads(numThreads);
options.setLoopType(scf::SCFTilingOptions::LoopType::ForallOp);
options.setMapping(mapping.getValue()); /*note the difference that setMapping takes an ArrayRef<Attribute> */
FailureOr<scf::SCFTilingResult> result = scf::tileUsingSCF(b, op, options);
```
This generates the `numThreads` version of the `scf.forall` for the
inter-tile loops, i.e.
```
... = scf.forall (%arg0, %arg1) in (%nt0, %nt1) shared_outs(...)
```
**Moving from `linalg::tileToForallOpUsingTileSizes` to
`scf::tileUsingSCF`**
```
OpBuilder b;
TilingInterface op;
ArrayRef<OpFoldResult> tileSizes;
ArrayAttr mapping;
FailureOr<ForallTilingResult> result =linalg::tileToForallOpUsingTileSizes(b, op, tileSizes, mapping);
```
can be replaced by
```
scf::SCFTilingOptions options;
options.setTileSizes(tileSizes);
options.setLoopType(scf::SCFTilingOptions::LoopType::ForallOp);
options.setMapping(mapping.getValue()); /*note the difference that setMapping takes an ArrayRef<Attribute> */
FailureOr<scf::SCFTilingResult> result = scf::tileUsingSCF(b, op, options);
```
Also note that `linalg::tileToForallOpUsingTileSizes` would effectively
call the `linalg::tileToForallOp` by computing the `numThreads` from the
`op` and `tileSizes` and generate the `numThreads` version of the
`scf.forall`. That is not the case anymore. Instead this will directly
generate the `tileSizes` version of the `scf.forall` op
```
... = scf.forall(%arg0, %arg1) = (%lb0, %lb1) to (%ub0, %ub1) step(%step0, %step1) shared_outs(...)
```
If you actually want to use the `numThreads` version, it is upto the
caller to compute the `numThreads` and set `options.setNumThreads`
instead of `options.setTileSizes`. Note that there is a slight
difference in the num threads version and tile size version. The former
requires an additional `affine.max` on the tile size to ensure
non-negative tile sizes. When lowering to `numThreads` version this
`affine.max` is not needed since by construction the tile sizes are
non-negative. In previous implementations, the `numThreads` version
generated when using the `linalg::tileToForallOpUsingTileSizes` method
would avoid generating the `affine.max` operation. To get the same
state, downstream users will have to additionally normalize the
`scf.forall` operation.
**Changes to `transform.structured.tile_using_forall`**
The transform dialect op that called into `linalg::tileToForallOp` and
`linalg::tileToForallOpUsingTileSizes` have been modified to call
`scf::tileUsingSCF`. The transform dialect op always generates the
`numThreads` version of the `scf.forall` op. So when `tile_sizes` are
specified for the transform dialect op, first the `tile_sizes` version
of the `scf.forall` is generated by the `scf::tileUsingSCF` method which
is then further normalized to get back to the same state. So there is no
functional change to `transform.structured.tile_using_forall`. It always
generates the `numThreads` version of the `scf.forall` op (as it did
before this change).
---------
Signed-off-by: MaheshRavishankar <mahesh.ravishankar at gmail.com>
Commit: 2bf58f5d27a233e63e58d644ff7aff126ee99aa7
https://github.com/llvm/llvm-project/commit/2bf58f5d27a233e63e58d644ff7aff126ee99aa7
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/test/Driver/cuda-cross-compiling.c
M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
M libc/cmake/modules/LLVMLibCLibraryRules.cmake
M libc/startup/gpu/CMakeLists.txt
Log Message:
-----------
[Clang] Suppress missing architecture error when doing LTO (#100652)
Summary:
The `nvlink-wrapper` can do LTO now, which means we can still create
some LLVM-IR without needing an architecture. In the case that we try to
invoke `nvlink` internally, that will still fail. This patch simply
defers the error until later so we can use `--lto-emit-llvm` to get the
IR without specifying an architecture.
Commit: 5d972c582a076768885e6d33df8f5d3860594e43
https://github.com/llvm/llvm-project/commit/5d972c582a076768885e6d33df8f5d3860594e43
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Writer.cpp
M lld/docs/ReleaseNotes.rst
M lld/docs/ld.lld.1
M lld/test/CMakeLists.txt
A lld/test/ELF/zsectionheader.s
Log Message:
-----------
[ELF] Add -z nosectionheader
GNU ld since 2.41 supports this option, which is mildly useful. It omits
the section header table and non-ALLOC sections (including
.symtab/.strtab (--strip-all)).
This option is simple to implement and might be used by LLDB to test
program headers parsing without the section header table (#100900).
-z sectionheader, which is the default, is also added.
Pull Request: https://github.com/llvm/llvm-project/pull/101286
Commit: bf5e56deba1e6d69f5ff0714fcade08c1329f882
https://github.com/llvm/llvm-project/commit/bf5e56deba1e6d69f5ff0714fcade08c1329f882
Author: Chris Apple <cja-private at pm.me>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/CODE_OWNERS.TXT
Log Message:
-----------
[NFC][LLVM] Add RealtimeSanitizer LLVM code owners (#101231)
Split from #100596
Commit: 36264435071ecb5790d7944f0653c8195033135f
https://github.com/llvm/llvm-project/commit/36264435071ecb5790d7944f0653c8195033135f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/vslide1down-constant-vl-rv32.ll
M llvm/test/CodeGen/RISCV/rvv/vslide1up-constant-vl-rv32.ll
Log Message:
-----------
[RISCV] Use X0 for VLMax for slide1up/slide1down in lowerVectorIntrinsicScalars. (#101384)
Previously, we created a vsetvlimax intrinsic. Using X0 simplifies the
code and enables some optimizations to kick when the exact value of
vlmax is known.
Commit: 30b5d4a76357feebf4797d1d80bc9d5608c74a88
https://github.com/llvm/llvm-project/commit/30b5d4a76357feebf4797d1d80bc9d5608c74a88
Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libc/config/darwin/arm/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/docs/math/index.rst
M libc/spec/llvm_libc_ext.td
M libc/spec/stdc.td
M libc/src/math/CMakeLists.txt
A libc/src/math/dfmaf128.h
A libc/src/math/dfmal.h
A libc/src/math/dsubf128.h
A libc/src/math/dsubl.h
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/dfmaf128.cpp
A libc/src/math/generic/dfmal.cpp
A libc/src/math/generic/dsubf128.cpp
A libc/src/math/generic/dsubl.cpp
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/dfmal_test.cpp
A libc/test/src/math/dsubl_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
M libc/test/src/math/smoke/SubTest.h
A libc/test/src/math/smoke/dfmaf128_test.cpp
A libc/test/src/math/smoke/dfmal_test.cpp
A libc/test/src/math/smoke/dsubf128_test.cpp
A libc/test/src/math/smoke/dsubl_test.cpp
M libc/utils/MPFRWrapper/MPFRUtils.cpp
Log Message:
-----------
[libc][math][c23] Add dfma{l,f128} and dsub{l,f128} C23 math functions (#101089)
Co-authored-by: OverMighty <its.overmighty at gmail.com>
Commit: 910012e7c5854a7e04e15a5a8750aad41b8bb137
https://github.com/llvm/llvm-project/commit/910012e7c5854a7e04e15a5a8750aad41b8bb137
Author: Sayhaan Siddiqui <49014204+sayhaan at users.noreply.github.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M bolt/include/bolt/Core/DIEBuilder.h
M bolt/lib/Core/DIEBuilder.cpp
M bolt/lib/Rewrite/DWARFRewriter.cpp
Log Message:
-----------
[BOLT][DWARF][NFC] Split DIEBuilder::finish (#101244)
Split DIEBuilder::finish so that code updating .debug_names is in a
separate function.
Commit: c6a3f4e2f2586cb1ce51306c305752a78bdba263
https://github.com/llvm/llvm-project/commit/c6a3f4e2f2586cb1ce51306c305752a78bdba263
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/Transforms/Instrumentation/AddressSanitizer.h
M llvm/include/llvm/Transforms/Instrumentation/DataFlowSanitizer.h
M llvm/include/llvm/Transforms/Instrumentation/MemorySanitizer.h
M llvm/include/llvm/Transforms/Instrumentation/ThreadSanitizer.h
Log Message:
-----------
[sanitizer] Make file headers more conventional
Add "-*- C++ -*-"
Commit: 9effefbae8d96006a4dd29bb9ab8532fd408559d
https://github.com/llvm/llvm-project/commit/9effefbae8d96006a4dd29bb9ab8532fd408559d
Author: Haowei Wu <haowei at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
Log Message:
-----------
Revert "[lldb] Reland 2402b3213c2f with `/H` to debug the windows build issue"
This reverts commit e72cdae47b4e263ea97b2bdd75cf44c1510cf3be, which broke
LLVM's lldb builder for Windows msvc.
Commit: 7583c484c81218ab4c8c2fba2774cb518d8bbd43
https://github.com/llvm/llvm-project/commit/7583c484c81218ab4c8c2fba2774cb518d8bbd43
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/trip-count-scalable-stride.ll
Log Message:
-----------
[SCEV] Use power of two facts involving vscale when inferring wrap flags (#101380)
SCEV has logic for inferring wrap flags on AddRecs which are known to
control an exit based on whether the step is a power of two. This logic
only considered constants, and thus did not trigger for steps such as (4
x vscale) which are common in scalably vectorized loops.
The net effect is that we were very sensative to the preservation of
nsw/nuw flags on such IVs, and could not infer trip counts if they got
lost for any reason.
---------
Co-authored-by: Nikita Popov <github at npopov.com>
Commit: 2aa96fcf751ee948702e8447de62d6bea8235e3a
https://github.com/llvm/llvm-project/commit/2aa96fcf751ee948702e8447de62d6bea8235e3a
Author: Matthias Springer <me at m-sp.org>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/Transforms/test-legalize-type-conversion.mlir
Log Message:
-----------
[mlir][Transforms] Dialect conversion: Skip materializations when running without converter (#101318)
TODO: test case
Commit: 951a36309787c39d102798c7b86b06caa1a35257
https://github.com/llvm/llvm-project/commit/951a36309787c39d102798c7b86b06caa1a35257
Author: Peiming Liu <peiming at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M mlir/lib/Dialect/SparseTensor/Transforms/SparseIterationToScf.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.h
M mlir/test/Dialect/SparseTensor/sparse_kernels_to_iterator.mlir
Log Message:
-----------
[mlir][sparse] implement `sparse_tensor.extract_value` operation. (#101220)
Commit: c2dc46cd1532c57e3d16c69f54edeed67e2d46c7
https://github.com/llvm/llvm-project/commit/c2dc46cd1532c57e3d16c69f54edeed67e2d46c7
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
Log Message:
-----------
[TableGen] Pass ValueTypeByHwMode by const reference in a couple places. NFC
ValueTypeByHwMode contains a std::map. We shouldn't copy it if
we don't need to .
Fixes #101406.
Commit: 24f8d1009e5359590a619cbbf596229ae5bfbbca
https://github.com/llvm/llvm-project/commit/24f8d1009e5359590a619cbbf596229ae5bfbbca
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
M llvm/utils/TableGen/GlobalISelEmitter.cpp
Log Message:
-----------
[TableGen] Add an explicit cast to allow one TypeSetByHwMode constructor to be removed. NFC
This constructor was taking a ValueTypeByMode by value to create
an ArrayRef. By adding an explicit cast from ValueTypeByHwMode
to TypeSetByHwMode we allow the ArrayRef to be implicitly converted
from a single element.
Commit: bf1666fb0bc19ffa18072e2727e4611c293a9aee
https://github.com/llvm/llvm-project/commit/bf1666fb0bc19ffa18072e2727e4611c293a9aee
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libcxx/.clang-format
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/include/__atomic/atomic.h
M libcxx/include/__atomic/atomic_base.h
M libcxx/include/__atomic/atomic_flag.h
M libcxx/include/__config
M libcxx/include/atomic
M libcxx/include/barrier
M libcxx/include/latch
M libcxx/include/semaphore
M libcxx/test/std/atomics/atomics.types.generic/general.compile.pass.cpp
M libcxx/test/std/atomics/atomics.types.generic/pointer.compile.pass.cpp
M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_notify_all.pass.cpp
M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_notify_one.pass.cpp
M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_wait.pass.cpp
M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_wait_explicit.pass.cpp
M libcxx/test/std/thread/thread.barrier/arrive.pass.cpp
M libcxx/test/std/thread/thread.barrier/arrive_and_drop.pass.cpp
M libcxx/test/std/thread/thread.barrier/arrive_and_wait.pass.cpp
M libcxx/test/std/thread/thread.barrier/completion.pass.cpp
M libcxx/test/std/thread/thread.barrier/ctor.compile.pass.cpp
M libcxx/test/std/thread/thread.barrier/max.pass.cpp
M libcxx/test/std/thread/thread.latch/arrive_and_wait.pass.cpp
M libcxx/test/std/thread/thread.latch/count_down.pass.cpp
M libcxx/test/std/thread/thread.latch/ctor.pass.cpp
M libcxx/test/std/thread/thread.latch/max.pass.cpp
M libcxx/test/std/thread/thread.latch/try_wait.pass.cpp
M libcxx/test/std/thread/thread.semaphore/acquire.pass.cpp
M libcxx/test/std/thread/thread.semaphore/binary.pass.cpp
M libcxx/test/std/thread/thread.semaphore/ctor.compile.pass.cpp
M libcxx/test/std/thread/thread.semaphore/max.pass.cpp
M libcxx/test/std/thread/thread.semaphore/release.pass.cpp
M libcxx/test/std/thread/thread.semaphore/timed.pass.cpp
M libcxx/test/std/thread/thread.semaphore/try_acquire.pass.cpp
Log Message:
-----------
[libc++] Drop support for the C++20 Synchronization Library before C++20 (#82008)
When we initially implemented the C++20 synchronization library, we
reluctantly accepted for the implementation to be backported to C++03
upon request from the person who provided the patch. This was when we
were only starting to have experience with the issues this can create,
so we flinched. Nowadays, we have a much stricter stance about not
backporting features to previous standards.
We have recently started fixing several bugs (and near bugs) in our
implementation of the synchronization library. A recurring theme during
these reviews has been how difficult to understand the current code is,
and upon inspection it becomes clear that being able to use a few recent
C++ features (in particular lambdas) would help a great deal. The code
would still be pretty intricate, but it would be a lot easier to reason
about the flow of callbacks through things like
__thread_poll_with_backoff.
As a result, this patch drops support for the synchronization library
before C++20. This makes us more strictly conforming and opens the door
to major simplifications, in particular around atomic_wait which was
supported all the way to C++03.
This change will probably have some impact on downstream users, however
since the C++20 synchronization library was added only in LLVM 10 (~3
years ago) and it's quite a niche feature, the set of people trying to
use this part of the library before C++20 should be reasonably small.
Commit: 38ef6929a3322fdddd74b3d6abdf6936cc4d8e62
https://github.com/llvm/llvm-project/commit/38ef6929a3322fdddd74b3d6abdf6936cc4d8e62
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libc/config/gpu/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/newhdrgen/yaml/stdio.yaml
M libc/spec/stdc.td
M libc/src/stdio/CMakeLists.txt
A libc/src/stdio/vsscanf.cpp
A libc/src/stdio/vsscanf.h
M libc/test/src/stdio/CMakeLists.txt
A libc/test/src/stdio/vsscanf_test.cpp
Log Message:
-----------
[libc] Add vsscanf function (#101402)
Summary:
Adds support for the `vsscanf` function similar to `sscanf`.
Based off of https://github.com/llvm/llvm-project/pull/97529.
Commit: 785a24f1561c610ecbce7cdfbff053e0a3a7caec
https://github.com/llvm/llvm-project/commit/785a24f1561c610ecbce7cdfbff053e0a3a7caec
Author: Peiming Liu <peiming at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensor.h
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorAttrDefs.td
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseSpaceCollapse.cpp
M mlir/test/Dialect/SparseTensor/invalid.mlir
M mlir/test/Dialect/SparseTensor/roundtrip.mlir
Log Message:
-----------
[mlir][sparse] introduce `sparse_tensor.coiterate` operation. (#101100)
This PR introduces `sparse_tensor.coiterate` operation, which represents
a loop that traverses multiple sparse iteration space.
Commit: 26766a00ff946c281b7dd517b2ba8d594012c21e
https://github.com/llvm/llvm-project/commit/26766a00ff946c281b7dd517b2ba8d594012c21e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/abs-vp.ll
M llvm/test/CodeGen/RISCV/rvv/bitreverse-vp.ll
M llvm/test/CodeGen/RISCV/rvv/bswap-vp.ll
M llvm/test/CodeGen/RISCV/rvv/commutable.ll
M llvm/test/CodeGen/RISCV/rvv/ctpop-vp.ll
M llvm/test/CodeGen/RISCV/rvv/extractelt-int-rv32.ll
M llvm/test/CodeGen/RISCV/rvv/extractelt-int-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-abs-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-calling-conv.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extload-truncstore.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract-i1.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-extract-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vnmsac-vp.ll
M llvm/test/CodeGen/RISCV/rvv/insertelt-int-rv32.ll
M llvm/test/CodeGen/RISCV/rvv/insertelt-int-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/legalize-store-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/mscatter-combine.ll
M llvm/test/CodeGen/RISCV/rvv/regalloc-fast-crash.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv32-dead.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv64-dead.ll
M llvm/test/CodeGen/RISCV/rvv/vmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vnmsac-vp.ll
Log Message:
-----------
[RISCV] Remove unncessary FP extensions from some integer only vector tests.
I'm going to do a review to make sure we are testing Zvfhmin instead of
Zvfh where clang expects it to work for half types, like loads/stores. Removing
unnecessary FP makes less things to review.
Commit: 74f95794433f315a14bd6878d97877566863bc34
https://github.com/llvm/llvm-project/commit/74f95794433f315a14bd6878d97877566863bc34
Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libc/config/linux/arm/entrypoints.txt
Log Message:
-----------
[libc][math][c23] removed dsubl for 32 arm (#101423)
Commit: cf79aba99db4909437b8977a59c51bc8899ddb9c
https://github.com/llvm/llvm-project/commit/cf79aba99db4909437b8977a59c51bc8899ddb9c
Author: smanna12 <soumi.manna at intel.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/lib/AST/ASTContext.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
Log Message:
-----------
[Clang] [NFC] Fix potential dereferencing of nullptr (#101405)
This patch replaces getAs with castAs and dyn_cast with cast to ensure
type safety and prevents potential null pointer dereferences. These
changes enforce compile-time checks for correct type casting in
ASTContext and CodeGenModule.
Commit: 6f318d47bfba56df65394db6c20befe3ed5bf243
https://github.com/llvm/llvm-project/commit/6f318d47bfba56df65394db6c20befe3ed5bf243
Author: David Majnemer <david.majnemer at gmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/test/CodeGen/NVPTX/math-intrins.ll
Log Message:
-----------
[NVPTX] Make minimum/maximum work on older GPUs
We want to use newer instructions if we are targeting sufficiently new
SM and PTX versions. If we cannot use those newer instructions, let LLVM
synthesize the sequence from more fundamental instructions.
Commit: ee0f43af2b344a7cd603a8564871c357d8fb108a
https://github.com/llvm/llvm-project/commit/ee0f43af2b344a7cd603a8564871c357d8fb108a
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/SandboxIR.h
Log Message:
-----------
[SandboxIR][NFC] Move BasicBlock class definition up (#101422)
To make future PRs smaller.
Commit: a0d8fa5d3a7e05d30004dd4faeb45c1a96fd8769
https://github.com/llvm/llvm-project/commit/a0d8fa5d3a7e05d30004dd4faeb45c1a96fd8769
Author: Jiahan Xie <88367305+jiahanxie353 at users.noreply.github.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalityPredicates.cpp
M llvm/lib/CodeGen/MIRParser/MIParser.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-load.mir
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-store.mir
Log Message:
-----------
[RISCV][GlobalISel] Legalize Scalable Vector Loads and Stores (#84965)
This patch supports legalizing load and store instruction for scalable
vectors in RISCV
Commit: 1c66ef915710fd4450f85ebb0486695e9bbc4dfc
https://github.com/llvm/llvm-project/commit/1c66ef915710fd4450f85ebb0486695e9bbc4dfc
Author: Jiahan Xie <88367305+jiahanxie353 at users.noreply.github.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/RegisterBankInfo.cpp
M llvm/lib/Target/RISCV/GISel/RISCVRegisterBankInfo.cpp
A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/load.mir
A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/store.mir
Log Message:
-----------
[GISEL][RISCV] RegBank Select for Scalable Vector Load/Store (#99932)
This patch supports GlobalISel for register bank selection for scalable vector
load and store instructions in RISC-V
Commit: d5d1cf05499ba9a0adc192c723f622fc13ef9c0b
https://github.com/llvm/llvm-project/commit/d5d1cf05499ba9a0adc192c723f622fc13ef9c0b
Author: smanna12 <soumi.manna at intel.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M clang/lib/CodeGen/CGExprComplex.cpp
Log Message:
-----------
[NFC][Clang] Clean up VisitUnaryPlus by removing unused FP feature check (#101412)
This commit removes an unnecessary call to `E->hasStoredFPFeatures()`
within the `VisitUnaryPlus` function. The method's return value was not
being used, leading to a redundant operation. The removal of this line
streamlines the function and eliminates an unneeded check for stored
floating-point features.
Commit: 65d3c220a184b11e41d6fc5853d865f3eb92b02e
https://github.com/llvm/llvm-project/commit/65d3c220a184b11e41d6fc5853d865f3eb92b02e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
R llvm/test/CodeGen/RISCV/rvv/vsadd-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vsadd-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vsadd.ll
R llvm/test/CodeGen/RISCV/rvv/vsaddu-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vsaddu-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vsaddu.ll
R llvm/test/CodeGen/RISCV/rvv/vsmul-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vsmul-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vsmul.ll
R llvm/test/CodeGen/RISCV/rvv/vssub-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vssub-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vssub.ll
R llvm/test/CodeGen/RISCV/rvv/vssubu-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vssubu-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vssubu.ll
Log Message:
-----------
[RISCV] Merge more rv32/rv64 intrinsic tests that have the same content. NFC
Commit: 3403b593ae11e624ace8918a7840e85198f2ca3c
https://github.com/llvm/llvm-project/commit/3403b593ae11e624ace8918a7840e85198f2ca3c
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/SandboxIR.h
M llvm/include/llvm/SandboxIR/SandboxIRValues.def
M llvm/include/llvm/SandboxIR/Tracker.h
M llvm/include/llvm/SandboxIR/Use.h
M llvm/lib/SandboxIR/SandboxIR.cpp
M llvm/lib/SandboxIR/Tracker.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
M llvm/unittests/SandboxIR/TrackerTest.cpp
Log Message:
-----------
[SandboxIR] Implement PHINodes (#101111)
This patch implements sandboxir::PHINode which mirrors llvm::PHINode.
Based almost entirely on work by vporpo.
Commit: 3a4c7cc56c07b2db9010c2228fc7cb2a43dd9b2d
https://github.com/llvm/llvm-project/commit/3a4c7cc56c07b2db9010c2228fc7cb2a43dd9b2d
Author: Amara Emerson <amara at apple.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M compiler-rt/lib/rtsan/rtsan_interceptors.cpp
Log Message:
-----------
Forward declare OSSpinLockLock on MacOS since it's not shipped on the system. (#101392)
Fixes build errors on some SDKs.
rdar://132607572
Commit: 307d1249ea635a78fcd347a65ddaa395cf64130e
https://github.com/llvm/llvm-project/commit/307d1249ea635a78fcd347a65ddaa395cf64130e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/test/CodeGen/LoongArch/ucmp.ll
M llvm/test/CodeGen/RISCV/ucmp.ll
Log Message:
-----------
[LegalizeTypes][RISCV][LoongArch] Optimize promotion of ucmp. (#101366)
ucmp can be promoted with either sext or zext. RISC-V and LoongArch
prefer sext for promoting i32 to i64 unless the inputs are known to be
zero extended already.
This patch uses the existing SExtOrZExtPromotedOperands function that is
used by SETCC promotion to intelligently handle this.
Commit: 1c5f6cfc352c3bd2a4faa0e3aebb4028b557a5e7
https://github.com/llvm/llvm-project/commit/1c5f6cfc352c3bd2a4faa0e3aebb4028b557a5e7
Author: Justin Bogner <mail at justinbogner.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/Target/DirectX/DXILPrepare.cpp
M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
M llvm/lib/Target/DirectX/DXILResourceAnalysis.cpp
M llvm/lib/Target/DirectX/DXILResourceAnalysis.h
M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
M llvm/lib/Target/DirectX/DirectX.h
M llvm/lib/Target/DirectX/DirectXPassRegistry.def
M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
M llvm/test/CodeGen/DirectX/UAVMetadata.ll
M llvm/test/CodeGen/DirectX/cbuf.ll
Log Message:
-----------
[DirectX] Rename backend DXIL resource analysis passes to DXILResourceMD*. NFC
These passes will be replaced soon as we move to the target extension based
resource handling in the DirectX backend, but removing them now before the
replacement stuff is all up and running would be very disruptive. However, we
do need to move these passes out of the way to avoid symbol conflicts with the
new DXILResourceAnalysis in the Analysis library.
Note: I tried an even simpler hack in #100698 but it doesn't really work. A
rename is the most expedient path forward here.
Pull Request: https://github.com/llvm/llvm-project/pull/101393
Commit: 5dbbc3b14bb04ef4bf2cbf4c23008f94f4253704
https://github.com/llvm/llvm-project/commit/5dbbc3b14bb04ef4bf2cbf4c23008f94f4253704
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M lldb/source/Commands/CommandObjectBreakpointCommand.cpp
M lldb/source/Commands/CommandObjectDisassemble.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Commands/CommandObjectWatchpoint.cpp
M lldb/source/Commands/CommandObjectWatchpoint.h
M lldb/source/Commands/CommandObjectWatchpointCommand.cpp
Log Message:
-----------
[lldb] Use Target references instead of pointers in CommandObject (NFC)
The GetTarget helper returns a Target reference so there's reason to
convert it to a pointer and check its validity.
Commit: 87af9ee870ad7ca93abced0b09459c3760dec891
https://github.com/llvm/llvm-project/commit/87af9ee870ad7ca93abced0b09459c3760dec891
Author: Yeting Kuo <46629943+yetingk at users.noreply.github.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVCodeGenPrepare.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-vpload.ll
M llvm/test/CodeGen/RISCV/rvv/strided-vpload.ll
Log Message:
-----------
[RISCV] Use experimental.vp.splat to splat specific vector length elements. (#101329)
Previously, llvm IR is hard to create a scalable vector splat with a
specific vector length, so we use riscv.vmv.v.x and riscv.vmv.v.f to do
this work. But the two rvv intrinsics needs strict type constraint which
can not support fixed vector types and illegal vector types. Using
vp.splat could preserve old functionality and also generate more
optimized code for vector types and illegal vectors.
This patch also fixes crash for getEVT not serving ptr types.
Commit: e2c74aa535752cd6cf098731608d26275d1e40ac
https://github.com/llvm/llvm-project/commit/e2c74aa535752cd6cf098731608d26275d1e40ac
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/CodeGen/ValueTypes.td
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
M llvm/utils/TableGen/VTEmitter.cpp
Log Message:
-----------
[TableGen][MVT] Lower the maximum 16-bit MVT from 16384 to 511. (#101401)
MachineValueTypeSet in tablegen allocates an array with a bit per MVT.
This used to be 256 bits, with the introduction of 16-bit MVT it
ballooned to 65536 bits. I suspect this is increasing the memory usage
of many of the data structures used by CodeGenDAGPatterns.
Since we don't need the full 16-bit range yet, this patch proposes
lowering the maximum MVT to 511 and using only 512 bits for
MachineValueTypeSet's storage.
Commit: a1ba4fb4516a33bd61b8219e2fc46ba3c1787460
https://github.com/llvm/llvm-project/commit/a1ba4fb4516a33bd61b8219e2fc46ba3c1787460
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVRegisterBankInfo.cpp
Log Message:
-----------
[RISCV][GISel] Slightly simplify the regbank selection for G_LOAD/STORE. NFC (#101431)
Merge the isVector early out with the previous check for isVector.
Commit: bc6834f5c70daca7ec321398a16891800b1c2bd8
https://github.com/llvm/llvm-project/commit/bc6834f5c70daca7ec321398a16891800b1c2bd8
Author: Andrea 🦈 <anfaulds at amd.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M mlir/utils/spirv/gen_spirv_dialect.py
Log Message:
-----------
[mlir][spirv] Fix tablegen generator script's stripping of prefixes (#101378)
This script looks for existing definitions with the `SPIRV_` prefix, so
that it can preserve them when updating the file. When the commit
2d628330482e49d36744cb8f3fb5047cfeae6c56 changed the prefix from `SPV_`,
the number of characters to strip from matched names was not updated,
which broke this feature. This commit fixes remaining cases that weren't
fixed by 339c87a8a086347bd8b5aae8b5bc43fc1c155cc1.
The relationship of this script to the files it is meant to maintain is
still bitrotten in other ways.
Commit: e6aeb3f4daea0ffd43930c63f9b9a7668b915fd9
https://github.com/llvm/llvm-project/commit/e6aeb3f4daea0ffd43930c63f9b9a7668b915fd9
Author: lifengxiang1025 <lifengxiang at kuaishou.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/test/Transforms/MemProfContextDisambiguation/tailcall.ll
Log Message:
-----------
[MemProf] Fix when function has indirect call (#101170)
When function has indirect call in LTO mode, it causes `assert(Alias)`
in `findProfiledCalleeThroughTailCalls`
Commit: 9227fd74e49b045baba910cb07ee93b2c660d267
https://github.com/llvm/llvm-project/commit/9227fd74e49b045baba910cb07ee93b2c660d267
Author: vporpo <vporpodas at google.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR][NFC] Factor out common test for CastInst subclasses (#101410)
The tests for most CastInst sub-classes, except AddrSpaceCastInst, are
very similar.
This patch creates a common template function for all of them.
Commit: 42c413b48917491efc5372752c6ad245530939f5
https://github.com/llvm/llvm-project/commit/42c413b48917491efc5372752c6ad245530939f5
Author: Hideto Ueno <uenoku.tokotoko at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M mlir/lib/Transforms/OpStats.cpp
M mlir/lib/Transforms/PrintIR.cpp
M mlir/lib/Transforms/ViewOpGraph.cpp
Log Message:
-----------
[mlir][Transforms] Preserve all analysis in print passes (#101315)
PrintIRPass, PrintOpStatsPass and PrintOpGraphPass don't mutate IR so
preserve all analysis to save computation resource a bit.
Commit: ed12f80ff0a8d304d10245c7bfb9f6af4a5c968c
https://github.com/llvm/llvm-project/commit/ed12f80ff0a8d304d10245c7bfb9f6af4a5c968c
Author: Job Henandez Lara <hj93 at protonmail.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M libc/config/gpu/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/math/index.rst
M libc/spec/stdc.td
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/getpayload.cpp
A libc/src/math/generic/getpayloadf.cpp
A libc/src/math/generic/getpayloadf128.cpp
A libc/src/math/getpayload.h
A libc/src/math/getpayloadf.h
A libc/src/math/getpayloadf128.h
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/getpayload_test.cpp
A libc/test/src/math/smoke/getpayloadf128_test.cpp
A libc/test/src/math/smoke/getpayloadf_test.cpp
Log Message:
-----------
[libc][math][c23] add entrypoints and tests for getpayload{,f,f128} (#101285)
Commit: 430b90f04533b099d788db2668176038be38c53b
https://github.com/llvm/llvm-project/commit/430b90f04533b099d788db2668176038be38c53b
Author: Wu Yingcong <yingcong.wu at intel.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
Log Message:
-----------
[nsan][NFC] Use cast when dyn_cast is not needed. (#101147)
Use `cast` instead to replace `dyn_cast` when `dyn_cast` is not
needed/not checked.
Commit: 27b608055f8e86e2decea519e6dc1ab6aff4824e
https://github.com/llvm/llvm-project/commit/27b608055f8e86e2decea519e6dc1ab6aff4824e
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/RISCV/RISCVSubtarget.h
A llvm/test/CodeGen/RISCV/riscv-tail-dup-size.ll
Log Message:
-----------
[RISCV] Increase default tail duplication threshold to 6 at -O3 (#98873)
This is just like AArch64.
Changing the threshold to 6 will increase the code size, but will
also decrease unconditional branches. CPUs with wide fetch/issue units
can benefit from it.
The value 6 may be debatable, we can set it to `SchedModel.IssueWidth`.
Commit: 991a6215a9ccd99eb91d2b2d46b58c2fd648c263
https://github.com/llvm/llvm-project/commit/991a6215a9ccd99eb91d2b2d46b58c2fd648c263
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
Log Message:
-----------
[TargetLowering] Remove weird use of MVT::isVoid in an assert. (#101436)
At the time this was written there were no vector types in MVT. The
order was:
-scalar integer types
-scalar FP types
-isVoid
I believe this isVoid check was to catch walking off the end of the
scalar FP types. While the isInteger()==isInteger caught walking off the
end of scalar integer types.
These days we have:
-scalar integer types
-scalar FP types
-fixed vector integer types
-fixed vector FP types
-scalable vector integer types
-scalable vector FP types.
-Glue
-isVoid
So checking isVoid doesn't detect what it used to. I've changed it to
check isFloatingPoint() == isFloatingPoint() instead.
Commit: fb97b4f96217442c684a940558135ffbfe45b756
https://github.com/llvm/llvm-project/commit/fb97b4f96217442c684a940558135ffbfe45b756
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M bolt/lib/Rewrite/RewriteInstance.cpp
A bolt/test/timers.c
Log Message:
-----------
[BOLT][NFC] Add timers for MetadataManager invocations
Test Plan: added bolt/test/timers.c
Reviewers: ayermolo, maksfb, rafaelauler, dcci
Reviewed By: dcci
Pull Request: https://github.com/llvm/llvm-project/pull/101267
Commit: 3f51bec466c4b67814a7877859ba3eeb5f80da7a
https://github.com/llvm/llvm-project/commit/3f51bec466c4b67814a7877859ba3eeb5f80da7a
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/test/timers.c
Log Message:
-----------
[BOLT][NFC] Print timers in perf2bolt invocation
When BOLT is run in AggregateOnly mode (perf2bolt), it exits with code
zero so destructors are not run thus TimerGroup never prints the timers.
Add explicit printing just before the exit to honor options requesting
timers (`--time-rewrite`, `--time-aggr`).
Test Plan: updated bolt/test/timers.c
Reviewers: ayermolo, maksfb, rafaelauler, dcci
Reviewed By: dcci
Pull Request: https://github.com/llvm/llvm-project/pull/101270
Commit: 9d068f7137a2ad732d008df46eb71aadb0cd8a8e
https://github.com/llvm/llvm-project/commit/9d068f7137a2ad732d008df46eb71aadb0cd8a8e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect-vp-bf16.ll
M llvm/test/CodeGen/RISCV/rvv/vle.ll
M llvm/test/CodeGen/RISCV/rvv/vse.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-vp-bf16.ll
Log Message:
-----------
[RISCV] Remove Zfbfmin from some vector test RUN lines. NFC
Commit: 86815a1842d308521f46048bb9ed08e47c0d8357
https://github.com/llvm/llvm-project/commit/86815a1842d308521f46048bb9ed08e47c0d8357
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/crash-stack-address-O0.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch-init.gfx.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement-stack-lower.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-frame-index.mir
M llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch-svs.ll
Log Message:
-----------
AMDGPU/GlobalISel: Permit mapping G_FRAME_INDEX to sgprs (#101325)
eliminateFrameIndex should now properly handle materializing
frame indices in SGPRs, so treat this like the other constant
operand types.
On average this will produce worse code; we need to detect
VGPR uses, and improve SGPR->VGPR frame index folds.
Commit: 72ed80866fcfe1366ab49995d23782e8566cec43
https://github.com/llvm/llvm-project/commit/72ed80866fcfe1366ab49995d23782e8566cec43
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/MIRParser/MIParser.cpp
Log Message:
-----------
[MIR] Remove separate Size variable from parseMachineMemoryOperand. NFC (#101453)
Size is updated in sync with MemoryType. Instead of maintaining a
separate Size, use the size from MemoryType where needed.
Commit: 129a8e1b756aa4e5932169ed2f1f7dbad692f44d
https://github.com/llvm/llvm-project/commit/129a8e1b756aa4e5932169ed2f1f7dbad692f44d
Author: Marina <173714676+citymarina at users.noreply.github.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
A llvm/test/CodeGen/AArch64/peephole-csel.ll
A llvm/test/CodeGen/AArch64/peephole-csel.mir
Log Message:
-----------
[AArch64] Add tests for redundant csel instructions. NFC (#101014)
Commit: 972c02929ba61bd34417700d77605d8fd3f36de7
https://github.com/llvm/llvm-project/commit/972c02929ba61bd34417700d77605d8fd3f36de7
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/docs/GlobalISel/MIRPatterns.rst
M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutor.h
M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutorImpl.h
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-variadics.td
M llvm/test/TableGen/GlobalISelCombinerEmitter/operand-types.td
M llvm/test/TableGen/GlobalISelCombinerEmitter/typeof-errors.td
A llvm/test/TableGen/GlobalISelCombinerEmitter/variadic-errors.td
M llvm/utils/TableGen/Common/GlobalISel/CodeExpander.h
M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h
M llvm/utils/TableGen/Common/GlobalISel/Patterns.cpp
M llvm/utils/TableGen/Common/GlobalISel/Patterns.h
M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
M llvm/utils/TableGen/GlobalISelEmitter.cpp
Log Message:
-----------
[GlobalISel][TableGen] MIR Pattern Variadics (#100563)
Allow for matching & rewriting a variable number of arguments in an
instructions.
Solves #87459
Commit: 04e8433165de66fa8514ef2db53d9f6dd7c244c0
https://github.com/llvm/llvm-project/commit/04e8433165de66fa8514ef2db53d9f6dd7c244c0
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/vle.ll
M llvm/test/CodeGen/RISCV/rvv/vleff.ll
M llvm/test/CodeGen/RISCV/rvv/vloxei-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vloxei.ll
M llvm/test/CodeGen/RISCV/rvv/vlse.ll
M llvm/test/CodeGen/RISCV/rvv/vluxei-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vluxei.ll
M llvm/test/CodeGen/RISCV/rvv/vse.ll
M llvm/test/CodeGen/RISCV/rvv/vsoxei-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vsoxei.ll
M llvm/test/CodeGen/RISCV/rvv/vsse.ll
M llvm/test/CodeGen/RISCV/rvv/vsuxei-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vsuxei.ll
Log Message:
-----------
[RISCV] Add vector bf16 load/store intrinsic tests. NFC
This adds bf16 to the unit stride, strided, and index load and
store intrinsics. clang already assumes these work with Zvfbfmin.
Commit: 84a3739ac072c95af9fa80e36d9e0f52d11e28eb
https://github.com/llvm/llvm-project/commit/84a3739ac072c95af9fa80e36d9e0f52d11e28eb
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/vle.ll
M llvm/test/CodeGen/RISCV/rvv/vleff.ll
M llvm/test/CodeGen/RISCV/rvv/vloxei-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vloxei.ll
M llvm/test/CodeGen/RISCV/rvv/vlse.ll
M llvm/test/CodeGen/RISCV/rvv/vluxei-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vluxei.ll
M llvm/test/CodeGen/RISCV/rvv/vse.ll
M llvm/test/CodeGen/RISCV/rvv/vsoxei-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vsoxei.ll
M llvm/test/CodeGen/RISCV/rvv/vsse.ll
M llvm/test/CodeGen/RISCV/rvv/vsuxei.ll
Log Message:
-----------
[RISCV] Replace Zvfh with Zvfhmin on vector load/store intrinsic tests. NFC
clang uses these with Zvfhmin so we should test them.
Commit: ab33c3dd65ab9b2101e42eaa05ed781a21753f65
https://github.com/llvm/llvm-project/commit/ab33c3dd65ab9b2101e42eaa05ed781a21753f65
Author: pvanhout <pierre.vanhoutryve at amd.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/test/TableGen/GlobalISelCombinerEmitter/variadic-errors.td
Log Message:
-----------
[GlobalISel][TableGen] Make variadic-errors.td test more robust
Use a regex instead of hardcoded numbers for anonymous pattern suffixes.
Commit: e167f753bd4679329ebcf0232f72be9c63d9b671
https://github.com/llvm/llvm-project/commit/e167f753bd4679329ebcf0232f72be9c63d9b671
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
A clang/test/Modules/inline-builtins.cppm
Log Message:
-----------
[C++20] [Modules] Always emit the inline builtins (#101278)
See the attached test for the motivation example. If we're too greedy to
not emit the definition for inline builtins, we may meet a middle end
crash. And it should be good to emit inline builtins always.
Commit: 1d2b2d29d733200b704f38d220d22ecc07d6cf42
https://github.com/llvm/llvm-project/commit/1d2b2d29d733200b704f38d220d22ecc07d6cf42
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
Log Message:
-----------
AMDGPU: Cleanup extract_subvector actions (NFC) (#101454)
The base AMDGPUISelLowering was setting custom action on 16-bit
vector types, but also set in SIISelLowering.
Commit: fdce0bfb7f84dc3a29acaefe04ee2f3d75d52c46
https://github.com/llvm/llvm-project/commit/fdce0bfb7f84dc3a29acaefe04ee2f3d75d52c46
Author: Luke Lau <luke at igalia.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
Log Message:
-----------
[RISCV] Add back missing vmv_v_x_vl pattern predicates (#101455)
Looks like these got left behind in
17e2d07ad15e02c9c757fdd4a532c43747ed8bf3
Commit: 7088a5ed880f29129ec844c66068e8cb61ca98bf
https://github.com/llvm/llvm-project/commit/7088a5ed880f29129ec844c66068e8cb61ca98bf
Author: Dimitry Andric <dimitry at andric.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_arm.h
M lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_mips64.h
M lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_powerpc.h
Log Message:
-----------
[lldb][FreeBSD] Fix NativeRegisterContextFreeBSD_{arm,mips64,powerpc} declarations (#101403)
Similar to #97796, fix the type of the `native_thread` parameter for the
arm, mips64 and powerpc variants of `NativeRegisterContextFreeBSD_*`.
Otherwise, this leads to compile errors similar to:
```
lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_powerpc.cpp:85:39: error: out-of-line definition of 'NativeRegisterContextFreeBSD_powerpc' does not match any declaration in 'lldb_private::process_freebsd::NativeRegisterContextFreeBSD_powerpc'
85 | NativeRegisterContextFreeBSD_powerpc::NativeRegisterContextFreeBSD_powerpc(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
Commit: 17ba4f4053e303be3e5408d34eaf687a49cefb06
https://github.com/llvm/llvm-project/commit/17ba4f4053e303be3e5408d34eaf687a49cefb06
Author: Adrian Kuegel <akuegel at google.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/Transforms/test-legalize-type-conversion.mlir
Log Message:
-----------
Revert "[mlir][Transforms] Dialect conversion: Skip materializations when running without converter (#101318)"
This reverts commit 2aa96fcf751ee948702e8447de62d6bea8235e3a.
This was merged without a test. Also it seems it was only fixing an
issue for users which used a particular workaround that is not actually
needed anymore (skipping UnrealizedConversionCast operands).
Commit: 5dfdac74cadd9483a66eb17e51dc632b554cccb1
https://github.com/llvm/llvm-project/commit/5dfdac74cadd9483a66eb17e51dc632b554cccb1
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libcxx/test/libcxx/utilities/any/allocator.pass.cpp
M libcxx/test/libcxx/utilities/format/enable_insertable.compile.pass.cpp
M libcxx/test/std/concepts/concepts.lang/concept.common/common_with.compile.pass.cpp
M libcxx/test/std/concepts/concepts.lang/concept.commonref/common_reference.compile.pass.cpp
M libcxx/test/std/containers/Emplaceable.h
M libcxx/test/std/containers/NotConstructible.h
M libcxx/test/std/containers/container.node/node_handle.pass.cpp
M libcxx/test/std/containers/unord/unord.map/compare.pass.cpp
M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_or_assign.pass.cpp
M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/try.emplace.pass.cpp
M libcxx/test/std/diagnostics/syserr/is_error_code_enum.pass.cpp
M libcxx/test/std/diagnostics/syserr/is_error_condition_enum.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcode/syserr.errcode.constructors/ErrorCodeEnum.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcode/syserr.errcode.constructors/lwg3629.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcode/syserr.errcode.modifiers/ErrorCodeEnum.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcode/syserr.errcode.modifiers/lwg3629.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcondition/syserr.errcondition.constructors/lwg3629.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcondition/syserr.errcondition.modifiers/lwg3629.pass.cpp
M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/hash.pass.cpp
M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.readable/indirectly_readable.compile.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/user_defined_char_type.pass.cpp
M libcxx/test/std/ranges/range.utility/range.subrange/ctor.range_size.pass.cpp
M libcxx/test/std/strings/basic.string/string.modifiers/string_append/push_back.pass.cpp
M libcxx/test/std/time/rep.h
M libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.types/difference_type.pass.cpp
M libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.types/size_type.pass.cpp
M libcxx/test/std/utilities/meta/meta.trans/meta.trans.other/common_reference.compile.pass.cpp
M libcxx/test/std/utilities/meta/meta.trans/meta.trans.other/common_type.pass.cpp
M libcxx/test/std/utilities/optional/optional.hash/hash.pass.cpp
M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.helper/tuple_size_incomplete.pass.cpp
M libcxx/test/std/utilities/utility/pairs/pairs.pair/ctor.pair_like.pass.cpp
M libcxx/test/std/utilities/variant/variant.hash/hash.pass.cpp
M libcxx/test/std/utilities/variant/variant.visit.member/visit.pass.cpp
M libcxx/test/std/utilities/variant/variant.visit/visit.pass.cpp
M libcxx/test/support/Counter.h
Log Message:
-----------
[libc++][NFC] Avoid opening namespace std in the tests (#94160)
This also adds a few FIXMEs where we use UB in the tests.
Commit: f51a479520be75dec8117a0a6039604d8282ee38
https://github.com/llvm/llvm-project/commit/f51a479520be75dec8117a0a6039604d8282ee38
Author: WANG Rui <wangrui at loongson.cn>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/test/CodeGen/LoongArch/unaligned-memcpy-inline.ll
Log Message:
-----------
[LoongArch] Pre-commit test for aligning stack objects passed to memory intrinsics. NFC
Commit: 4f42deb5f4fde1676e7cf3ddc54e44e0f4a89760
https://github.com/llvm/llvm-project/commit/4f42deb5f4fde1676e7cf3ddc54e44e0f4a89760
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
A llvm/test/Transforms/InstCombine/nan.ll
A llvm/test/Transforms/InstCombine/nanl-fp128.ll
A llvm/test/Transforms/InstCombine/nanl-fp80.ll
A llvm/test/Transforms/InstCombine/nanl-ppc-fp128.ll
Log Message:
-----------
[SimplifyLibCalls] Constant fold nan libcall (#101459)
Reference: https://en.cppreference.com/w/c/numeric/math/nan
The logic is copied from clang frontend:
https://github.com/llvm/llvm-project/blob/1d2b2d29d733200b704f38d220d22ecc07d6cf42/clang/lib/AST/ExprConstant.cpp#L14741-L14777
---------
Co-authored-by: Nikita Popov <github at npopov.com>
Commit: f3761a4bd320e4334315c87b55f882a4ba864caa
https://github.com/llvm/llvm-project/commit/f3761a4bd320e4334315c87b55f882a4ba864caa
Author: Dmitry Polukhin <34227995+dmpolukhin at users.noreply.github.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/lib/Serialization/ASTReader.cpp
A clang/test/Headers/stdarg-cxx-modules.cpp
Log Message:
-----------
[C++20][Modules] Allow using stdarg.h with header units (#100739)
Summary:
Macro like `va_start`/`va_end` marked as builtin functions that makes
these identifiers special and it results in redefinition of the
identifiers as builtins and it hides macro definitions during preloading
C++ modules. In case of modules Clang ignores special identifiers but
`PP.getCurrentModule()` was not set. This diff fixes IsModule detection
logic for this particular case.
Test Plan: check-clang
---------
Co-authored-by: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Commit: 65c000a1e5a2a1c79eb5e022c3dc51b239691153
https://github.com/llvm/llvm-project/commit/65c000a1e5a2a1c79eb5e022c3dc51b239691153
Author: Owen Anderson <resistor at mac.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M llvm/include/llvm/Support/Allocator.h
Log Message:
-----------
Simplify hot-path size computations in BumpPtrAllocator. (#101312)
~0.1% instruction count improvements
https://llvm-compile-time-tracker.com/compare.php?from=07d2709a17860a202d91781769a88837e4fb5f2a&to=d5cc47831ecd9f0a2b164b16da67f74b94e9aafc&stat=instructions:u
Commit: 3611c0b7038a8a11796f22fbd063074624b89081
https://github.com/llvm/llvm-project/commit/3611c0b7038a8a11796f22fbd063074624b89081
Author: Carl Ritson <carl.ritson at amd.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
M llvm/test/CodeGen/AMDGPU/wqm.ll
Log Message:
-----------
[AMDGPU] SIWholeQuadMode: avoid execz effects in exact regions (#101157)
Exact mode regions within WQM may have EXEC=0 in divergent control flow.
This occurs if a branch is only taken by helper lanes and an instruction
requiring WQM disabling is encountered.
The current code extends the exact region as far as possible; however,
this can result in it including instructions with unwanted side effects
at EXEC=0.
In particular readfirstlane combined with scalar loads can produce
invalid memory accesses in this circumstance.
Workaround this by shrinking exact regions to only the instructions
requiring WQM disabling when unwanted side effects are present.
Eventually we should branch over these regions when EXEC=0, but this
requires visibility of CFG/divergence information not currently
available.
Commit: bbadbf751ec03b88b3348607c5e57c6b7416cebb
https://github.com/llvm/llvm-project/commit/bbadbf751ec03b88b3348607c5e57c6b7416cebb
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
A flang/test/Lower/OpenMP/DelayedPrivatization/equivalence.f90
M mlir/test/Target/LLVMIR/openmp-private.mlir
Log Message:
-----------
[flang][OpenMP] Delayed privatization for variables with `equivalence` association (#100531)
Handles variables that are storage associated via `equivalence`. The
problem is that these variables are declared as `fir.ptr`s while their
privatized storage is declared as `fir.ref` which was triggering a
validation error in the OpenMP dialect.
Commit: 3b3b89105ee33214654677a02ab30a62eedbd338
https://github.com/llvm/llvm-project/commit/3b3b89105ee33214654677a02ab30a62eedbd338
Author: Mital Ashok <mital at mitalashok.co.uk>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/test/CXX/drs/cwg8xx.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
[clang][NFC] Add CWG882 test (Defining `main` as deleted) (#101382)
https://cplusplus.github.io/CWG/issues/882.html
This was implemented for Clang 3.5 by
b63b6ee9a00ef0710d899df6cfda78a1b8bd762a
Commit: 85fbc4fcd7a8bb6cb06aea9bb48c3ce1a0ce9e77
https://github.com/llvm/llvm-project/commit/85fbc4fcd7a8bb6cb06aea9bb48c3ce1a0ce9e77
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M mlir/test/Dialect/Vector/vector-transfer-permutation-lowering.mlir
Log Message:
-----------
[mlir][vector] Add tests xfer-permute-lowering (nfc)(2/n) (#96033)
Adds more tests to:
* vector-transfer-permutation-lowering.mlir
Specifically, adds tests for:
* out-of-bounds access for the `TransferWritePermutationLowering`
pattern
* in-bounds access for `TransferWriteNonPermutationLowering` +
`TransferWritePermutationLowering`
Also renames `@permutation_with_mask_xfer_write_fixed_width` as
`@xfer_write_non_transposing_permutation_map`.
This is a part of a larger effort to make sure that all key cases for
patterns under populateVectorTransferPermutationMapLoweringPatterns
(*) are tested. I also want to make sure that tests use consistent
function and variable names.
(*) transform.apply_patterns.vector.transfer_permutation_patterns in
TD parlance)
Commit: 67730ae19c6bcb08dca292e0576b6cd55a843932
https://github.com/llvm/llvm-project/commit/67730ae19c6bcb08dca292e0576b6cd55a843932
Author: Owen Anderson <resistor at mac.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/include/llvm/Support/Allocator.h
Log Message:
-----------
Revert "Simplify hot-path size computations in BumpPtrAllocator. (#101312)"
This reverts commit 65c000a1e5a2a1c79eb5e022c3dc51b239691153.
Commit: 05d3f5ed910f5bb96962bf913c9d4fe5ab7abec9
https://github.com/llvm/llvm-project/commit/05d3f5ed910f5bb96962bf913c9d4fe5ab7abec9
Author: sbite0138 <sbite0138 at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-double-row-major.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-double.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-i32-row-major.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-i32.ll
Log Message:
-----------
[LowerMatrixIntrinsics] Fix type suffix for matrix.multiply.* (#100940)
Based on the [proposal
PDF](https://llvm.org/devmtg/2020-09/slides/Hahn-Matrix_Support_in_LLVM_and_Clang.pdf)
and the test code under
[llvm/test/Transforms/LowerMatrixIntrinsics](https://github.com/llvm/llvm-project/tree/main/llvm/test/Transforms/LowerMatrixIntrinsics),
the suffix for the `@llvm.matrix.multiply.*` intrinsic should be {output
matrix type}.{input matrix 1 type}.{input matrix 2 type} (e.g.,
`@llvm.matrix.multiply.v4i32.v4i32.v4i32`).
This PR corrects the places where these suffixes do not follow the
aforementioned format.
Commit: cab91ecffd7a6cb94fa27e7fe8cd93dfc4d9a672
https://github.com/llvm/llvm-project/commit/cab91ecffd7a6cb94fa27e7fe8cd93dfc4d9a672
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/docs/analyzer/checkers.rst
M clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp
M clang/test/Analysis/pointer-sub.c
Log Message:
-----------
[clang][analyzer] Improve PointerSubChecker (#96501)
The checker could report false positives if pointer arithmetic was done
on pointers to non-array data before pointer subtraction. Another
problem is fixed that could cause false positive if members of the same
structure but in different memory objects are subtracted.
Commit: 2d3655037ccfa276cb0949c2ce0cff56985f6637
https://github.com/llvm/llvm-project/commit/2d3655037ccfa276cb0949c2ce0cff56985f6637
Author: Xing Xue <xingxue at outlook.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libcxx/test/libcxx/vendor/ibm/bad_function_call.pass.cpp
M libcxxabi/test/vendor/ibm/aix_xlclang_nested_excp_32.pass.sh.s
M libcxxabi/test/vendor/ibm/aix_xlclang_nested_excp_64.pass.sh.s
M libcxxabi/test/vendor/ibm/aix_xlclang_passing_excp_obj_32.pass.sh.S
M libcxxabi/test/vendor/ibm/aix_xlclang_passing_excp_obj_64.pass.sh.S
M libcxxabi/test/vendor/ibm/cond_reg_restore.pass.cpp
M libcxxabi/test/vendor/ibm/vec_reg_restore.pass.cpp
M libunwind/test/aix_signal_unwind.pass.sh.S
Log Message:
-----------
[NFC][libc++][libc++abi][libunwind][test] Fix/unify AIX triples used in LIT tests (#101196)
This patch fixes/unifies AIX target triples used in libc++, libc++abi,
and libunwind LIT tests.
Commit: 0a5e5728fbb61d7c775aabc8048b7b629e9ca2d2
https://github.com/llvm/llvm-project/commit/0a5e5728fbb61d7c775aabc8048b7b629e9ca2d2
Author: joshua-arch1 <68843032+joshua-arch1 at users.noreply.github.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Transforms/IPO/PartialInlining.cpp
Log Message:
-----------
[Inliner] Fix bugs for partial inlining with vector
In the cost model of partial inlining, cost for intrinsics will be applied. However, some intrinsics for vector have invalid cost, which is not allowed for partial inlining. Instead of assertion, we directly do not do partial inlining in this circumstance to avoid compiling errors.
Commit: feeb8335a010c90071b65618634cf775d2d720a4
https://github.com/llvm/llvm-project/commit/feeb8335a010c90071b65618634cf775d2d720a4
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libc/utils/gpu/loader/CMakeLists.txt
M libc/utils/gpu/loader/amdgpu/CMakeLists.txt
R libc/utils/gpu/loader/amdgpu/Loader.cpp
A libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
M libc/utils/gpu/loader/nvptx/CMakeLists.txt
R libc/utils/gpu/loader/nvptx/Loader.cpp
A libc/utils/gpu/loader/nvptx/nvptx-loader.cpp
Log Message:
-----------
[libc] Change the GPU loaders to LLVM executables (#101442)
Summary:
I am going to rework these tools to just me LLVM tools. This patch is
pretty much NFC to set up the CMake for that.
Commit: 241a05af0c2324eb073747d42466b9dde229655f
https://github.com/llvm/llvm-project/commit/241a05af0c2324eb073747d42466b9dde229655f
Author: joshua-arch1 <68843032+joshua-arch1 at users.noreply.github.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Transforms/IPO/PartialInlining.cpp
Log Message:
-----------
Revert "[Inliner] Fix bugs for partial inlining with vector"
This reverts commit https://github.com/llvm/llvm-project/commit/0a5e5728fbb61d7c775aabc8048b7b629e9ca2d2,
since I forgot to start a pull request.
Commit: 097a1d28ed6654f1297feb9cb80890c7dffa2864
https://github.com/llvm/llvm-project/commit/097a1d28ed6654f1297feb9cb80890c7dffa2864
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libc/utils/gpu/loader/CMakeLists.txt
Log Message:
-----------
[libc] Remove extra parens
Commit: 2feb0586b75bae87bb6e053b502ec7739da37837
https://github.com/llvm/llvm-project/commit/2feb0586b75bae87bb6e053b502ec7739da37837
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/copysign-simplify-demanded-bits.ll
Log Message:
-----------
AMDGPU: Add baseline test for copysign combine
We can use known bits information to avoid masking out one or
both of the operands.
Commit: 3d1e1d9c2eb3e3ffebd580a453fa2bd9a4c0abd6
https://github.com/llvm/llvm-project/commit/3d1e1d9c2eb3e3ffebd580a453fa2bd9a4c0abd6
Author: Hugh Delaney <hugh.delaney at codeplay.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/test/CodeGen/NVPTX/math-intrins-sm80-ptx70-autoupgrade.ll
Log Message:
-----------
[NVPTX][NFC] Remove unneeded declarations in test (#101167)
Only the bf16 declarations are needed, as only they are lowered in
AutoUpgrade.cpp.
f16 and other builtins have LLVM intrinsics already defined.
Commit: d10dc5a06fac4dcabf2264c64c8672c6f6ae36fb
https://github.com/llvm/llvm-project/commit/d10dc5a06fac4dcabf2264c64c8672c6f6ae36fb
Author: Christopher Di Bella <cjdb at google.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libcxx/include/__algorithm/ranges_adjacent_find.h
M libcxx/include/__algorithm/ranges_all_of.h
M libcxx/include/__algorithm/ranges_any_of.h
M libcxx/include/__algorithm/ranges_binary_search.h
M libcxx/include/__algorithm/ranges_clamp.h
M libcxx/include/__algorithm/ranges_contains.h
M libcxx/include/__algorithm/ranges_contains_subrange.h
M libcxx/include/__algorithm/ranges_copy.h
M libcxx/include/__algorithm/ranges_copy_backward.h
M libcxx/include/__algorithm/ranges_copy_if.h
M libcxx/include/__algorithm/ranges_copy_n.h
M libcxx/include/__algorithm/ranges_count.h
M libcxx/include/__algorithm/ranges_count_if.h
M libcxx/include/__algorithm/ranges_ends_with.h
M libcxx/include/__algorithm/ranges_equal.h
M libcxx/include/__algorithm/ranges_equal_range.h
M libcxx/include/__algorithm/ranges_fill.h
M libcxx/include/__algorithm/ranges_fill_n.h
M libcxx/include/__algorithm/ranges_find.h
M libcxx/include/__algorithm/ranges_find_end.h
M libcxx/include/__algorithm/ranges_find_first_of.h
M libcxx/include/__algorithm/ranges_find_if.h
M libcxx/include/__algorithm/ranges_find_if_not.h
M libcxx/include/__algorithm/ranges_find_last.h
M libcxx/include/__algorithm/ranges_for_each.h
M libcxx/include/__algorithm/ranges_for_each_n.h
M libcxx/include/__algorithm/ranges_generate.h
M libcxx/include/__algorithm/ranges_generate_n.h
M libcxx/include/__algorithm/ranges_includes.h
M libcxx/include/__algorithm/ranges_inplace_merge.h
M libcxx/include/__algorithm/ranges_is_heap.h
M libcxx/include/__algorithm/ranges_is_heap_until.h
M libcxx/include/__algorithm/ranges_is_partitioned.h
M libcxx/include/__algorithm/ranges_is_permutation.h
M libcxx/include/__algorithm/ranges_is_sorted.h
M libcxx/include/__algorithm/ranges_is_sorted_until.h
M libcxx/include/__algorithm/ranges_lexicographical_compare.h
M libcxx/include/__algorithm/ranges_lower_bound.h
M libcxx/include/__algorithm/ranges_make_heap.h
M libcxx/include/__algorithm/ranges_max.h
M libcxx/include/__algorithm/ranges_max_element.h
M libcxx/include/__algorithm/ranges_merge.h
M libcxx/include/__algorithm/ranges_min.h
M libcxx/include/__algorithm/ranges_min_element.h
M libcxx/include/__algorithm/ranges_minmax.h
M libcxx/include/__algorithm/ranges_minmax_element.h
M libcxx/include/__algorithm/ranges_mismatch.h
M libcxx/include/__algorithm/ranges_move.h
M libcxx/include/__algorithm/ranges_move_backward.h
M libcxx/include/__algorithm/ranges_next_permutation.h
M libcxx/include/__algorithm/ranges_none_of.h
M libcxx/include/__algorithm/ranges_nth_element.h
M libcxx/include/__algorithm/ranges_partial_sort.h
M libcxx/include/__algorithm/ranges_partial_sort_copy.h
M libcxx/include/__algorithm/ranges_partition.h
M libcxx/include/__algorithm/ranges_partition_copy.h
M libcxx/include/__algorithm/ranges_partition_point.h
M libcxx/include/__algorithm/ranges_pop_heap.h
M libcxx/include/__algorithm/ranges_prev_permutation.h
M libcxx/include/__algorithm/ranges_push_heap.h
M libcxx/include/__algorithm/ranges_remove.h
M libcxx/include/__algorithm/ranges_remove_copy.h
M libcxx/include/__algorithm/ranges_remove_copy_if.h
M libcxx/include/__algorithm/ranges_remove_if.h
M libcxx/include/__algorithm/ranges_replace.h
M libcxx/include/__algorithm/ranges_replace_copy.h
M libcxx/include/__algorithm/ranges_replace_copy_if.h
M libcxx/include/__algorithm/ranges_replace_if.h
M libcxx/include/__algorithm/ranges_reverse.h
M libcxx/include/__algorithm/ranges_reverse_copy.h
M libcxx/include/__algorithm/ranges_rotate.h
M libcxx/include/__algorithm/ranges_rotate_copy.h
M libcxx/include/__algorithm/ranges_sample.h
M libcxx/include/__algorithm/ranges_search.h
M libcxx/include/__algorithm/ranges_search_n.h
M libcxx/include/__algorithm/ranges_set_difference.h
M libcxx/include/__algorithm/ranges_set_intersection.h
M libcxx/include/__algorithm/ranges_set_symmetric_difference.h
M libcxx/include/__algorithm/ranges_set_union.h
M libcxx/include/__algorithm/ranges_shuffle.h
M libcxx/include/__algorithm/ranges_sort.h
M libcxx/include/__algorithm/ranges_sort_heap.h
M libcxx/include/__algorithm/ranges_stable_partition.h
M libcxx/include/__algorithm/ranges_stable_sort.h
M libcxx/include/__algorithm/ranges_starts_with.h
M libcxx/include/__algorithm/ranges_swap_ranges.h
M libcxx/include/__algorithm/ranges_transform.h
M libcxx/include/__algorithm/ranges_unique.h
M libcxx/include/__algorithm/ranges_unique_copy.h
M libcxx/include/__algorithm/ranges_upper_bound.h
M libcxx/include/__iterator/advance.h
M libcxx/include/__iterator/distance.h
M libcxx/include/__iterator/next.h
M libcxx/include/__iterator/prev.h
M libcxx/include/__memory/ranges_construct_at.h
M libcxx/include/__memory/ranges_uninitialized_algorithms.h
Log Message:
-----------
[libc++] Remove dedicated namespaces for ranges functions (#76543)
We originally put implementation-detail function objects into individual
namespaces for `std::ranges` without a good reason for doing so. This
practice was continued, presumably because there was prior art. Since
there's no reason to keep these namespaces, this commit removes them,
which will slightly impact binary size.
This commit does not apply to CPOs, some of which need additional work.
Commit: beecf2c6052485d99c6db86422aebdb433f98b5a
https://github.com/llvm/llvm-project/commit/beecf2c6052485d99c6db86422aebdb433f98b5a
Author: Shivam <75530356+phyBrackets at users.noreply.github.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libcxx/include/__memory/uses_allocator_construction.h
M libcxx/test/std/utilities/memory/allocator.uses/allocator.uses.construction/uses_allocator_construction_args.pass.cpp
Log Message:
-----------
[libc++] Fix missing declarations of uses_allocator_construction_args (#67044)
We were not declaring `__uses_allocator_construction_args` helper
functions, leading to several valid uses failing to compile. This
patch solves the problem by moving these helper functions into a
struct, which also reduces the amount of redundant SFINAE we need
to perform since most overloads are checking for a cv-qualfied pair.
Fixes #66714
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Commit: 389146816711ef6d11e54726e8ea300bf9945dc3
https://github.com/llvm/llvm-project/commit/389146816711ef6d11e54726e8ea300bf9945dc3
Author: ZERO-N <1416312228 at qq.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libcxx/include/__expected/expected.h
M libcxx/test/libcxx/utilities/expected/expected.expected/and_then.mandates.verify.cpp
Log Message:
-----------
[libc++] Avoid using **this in error messages for expected monadic operations (#84840)
Instead of using **this in error messages for std::expected monadic
operations, use value(). As shown in LWG3969, **this can trigger
unintended ADL and while it's only an error message, we might as
well be ADL-correct there too.
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Commit: 14c8feba4595d46d800bc8ac0c05a1a663b05002
https://github.com/llvm/llvm-project/commit/14c8feba4595d46d800bc8ac0c05a1a663b05002
Author: Mital Ashok <mital at mitalashok.co.uk>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/test/CXX/drs/cwg25xx.cpp
M clang/test/CXX/drs/cwg28xx.cpp
M clang/www/cxx_dr_status.html
M clang/www/make_cxx_dr_status
Log Message:
-----------
[NFC] [Clang] Some core issues have changed status from tentatively ready -> ready / review (#97200)
Also classes the "ready" status similarly to "tentatively ready" in
make_cxx_dr_status
Commit: 1fbd7be58f67f367dbb38ac2ceaa8ce3208a8f95
https://github.com/llvm/llvm-project/commit/1fbd7be58f67f367dbb38ac2ceaa8ce3208a8f95
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/SVEInstrFormats.td
Log Message:
-----------
[LLVM][ISel][SVE] Remove redundant merging fp patterns. (#101351)
Since "vselect cond, (binop, x, y), x" became the canonical form the
equivalent PatFrags for "binop x, (vselect cond, y, 0)" are no longer
required.
Commit: 229a16590a3cd65da77bb868498d3eed63bf6263
https://github.com/llvm/llvm-project/commit/229a16590a3cd65da77bb868498d3eed63bf6263
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M lldb/test/Shell/SymbolFile/DWARF/vla.cpp
Log Message:
-----------
[lldb][test] Disable vla test on Windows
For the same reasons as 6cfac497e96978f2bfc50a00b51c198f2ed50f82.
This test was added in https://github.com/llvm/llvm-project/pull/100710.
It fails because when we're linking with link.exe, -gdwarf has no
effect and we get a PDB file anyway. The Windows on Arm lldb bot
uses link.exe.
"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.34.31933\\bin\\Hostx86\\arm64\\link.exe" <...>
08/01/2024 01:47 PM 2,956,488 vla.cpp.ilk
08/01/2024 01:47 PM 6,582,272 vla.cpp.pdb
08/01/2024 01:47 PM 734,208 vla.cpp.tmp
Commit: e1451236a0a07f1ee4ba5fe3ae2464a82a37c25c
https://github.com/llvm/llvm-project/commit/e1451236a0a07f1ee4ba5fe3ae2464a82a37c25c
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/CommonArgs.h
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/test/Driver/omp-driver-offload.f90
Log Message:
-----------
[Flang][Driver] Introduce -fopenmp-targets offloading option (#100152)
This patch modifies the flang driver to introduce the `-fopenmp-targets`
option to the frontend compiler invocations corresponding to the OpenMP
host device on offloading-enabled compilations.
This option holds the list of offloading triples associated to the
compilation and is used by clang to determine whether offloading calls
should be generated for the host.
Commit: b9335176db718bf64c72d48107eb9dff28ed979e
https://github.com/llvm/llvm-project/commit/b9335176db718bf64c72d48107eb9dff28ed979e
Author: Qiongsi Wu <274595+qiongsiwu at users.noreply.github.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/include/clang/Lex/PreprocessorOptions.h
M clang/lib/Driver/ToolChains/AIX.cpp
M clang/test/Preprocessor/pragma_mc_func.c
Log Message:
-----------
[AIX] Turn on `#pragma mc_func` check by default (#101336)
https://github.com/llvm/llvm-project/pull/99888 added a check (and
corresponding options) to flag uses of `#pragma mc_func` on AIX.
This PR turns on the check by default.
Commit: 130c135689ec12ab78c53645808524a8d28f7cae
https://github.com/llvm/llvm-project/commit/130c135689ec12ab78c53645808524a8d28f7cae
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Parse/ParseExpr.cpp
Log Message:
-----------
[clang] Fix crash with multiple non-parenthsized `sizeof` (#101297)
There are 5 unary operators that can be followed by a non-parenthesized
expression: `sizeof`, `__datasizeof`, `__alignof`, `alignof`,
`_Alignof`. When we nest them too deep, `BalancedDelimiterTracker` does
not help, because there are no parentheses, and we crash. Instead, this
patch recognize chains of those operators, and parse them with
sufficient stack space.
Fixes #45061
Commit: 5d7357cc9ee84578e7142c5fa7c03b1331cba6d2
https://github.com/llvm/llvm-project/commit/5d7357cc9ee84578e7142c5fa7c03b1331cba6d2
Author: Mital Ashok <mital at mitalashok.co.uk>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/include/clang/AST/DeclCXX.h
M clang/lib/AST/DeclCXX.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/test/SemaCXX/type-traits.cpp
M llvm/include/llvm/ADT/STLExtras.h
Log Message:
-----------
[Clang] Fix definition of layout-compatible to ignore empty classes (#92103)
Also changes the behaviour of `__builtin_is_layout_compatible`
None of the historic nor the current definition of layout-compatible
classes mention anything about base classes (other than implicitly
through being standard-layout) and are defined in terms of members, not
direct members.
Commit: 59ca618e3b7aec8c32e24d781bae436dc99b2727
https://github.com/llvm/llvm-project/commit/59ca618e3b7aec8c32e24d781bae436dc99b2727
Author: Damien L-G <dalg24 at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libcxx/include/__atomic/atomic_ref.h
M libcxx/test/std/atomics/atomics.ref/is_always_lock_free.pass.cpp
Log Message:
-----------
[libc++] Increase atomic_ref's required alignment for small types (#99654)
This patch increases the alignment requirement for std::atomic_ref
such that we can guarantee lockfree operations more often. Specifically,
we require types that are 1, 2, 4, 8, or 16 bytes in size to be aligned
to at least their size to be used with std::atomic_ref.
This is the case for most types, however a notable exception is
`long long` on x86, which is 8 bytes in length but has an alignment
of 4.
As a result of this patch, one has to be more careful about the
alignment of objects used with std::atomic_ref. Failure to provide
a properly-aligned object to std::atomic_ref is a precondition
violation and is technically UB. On the flipside, this allows us
to provide an atomic_ref that is actually lockfree more often,
which is an important QOI property.
More information in the discussion at https://github.com/llvm/llvm-project/pull/99570#issuecomment-2237668661.
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Commit: 4e89d1199c180fd384486ba2796368ec800180ee
https://github.com/llvm/llvm-project/commit/4e89d1199c180fd384486ba2796368ec800180ee
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
A llvm/test/Transforms/InstCombine/mem-intrinsics.ll
M llvm/test/Transforms/InstCombine/mempcpy.ll
Log Message:
-----------
[InstCombine] Convert mem intrinsic with null into a noop (#100388)
When src/dest passed into memset/memcpy is null:
```
len == 0: this call is a noop.
len != 0: the behavior is undefined.
```
See also https://llvm.org/docs/LangRef.html#llvm-memset-intrinsics
Alive2: https://alive2.llvm.org/ce/z/tJeRNL
This patch converts these mem intrinsic calls into an assumption `len ==
0` to mitigate code-size bloat caused by JumpThreading.
Commit: d5a6ec1d4dd9a7593c68abfa49b75059ba98c91b
https://github.com/llvm/llvm-project/commit/d5a6ec1d4dd9a7593c68abfa49b75059ba98c91b
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libcxx/docs/ImplementationDefinedBehavior.rst
M libcxx/docs/Status/Cxx20Issues.csv
M libcxx/include/sstream
A libcxx/test/libcxx/input.output/string.streams/stringbuf/const_sso_buffer.pass.cpp
M libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/default.pass.cpp
Log Message:
-----------
[libc++][stringbuf] Test and document LWG2995. (#100879)
As mentioned in the LWG issue libc++ has already implemented the
optimization. This adds tests and documents the implementation defined
behaviour.
Drive-by fixes an initialization.
Commit: 5ad15e58136bc80eadcc0a7fceb463bbb5317345
https://github.com/llvm/llvm-project/commit/5ad15e58136bc80eadcc0a7fceb463bbb5317345
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/www/cxx_dr_status.html
Log Message:
-----------
[clang][NFC] Update `cxx_dr_status.html`
Commit: e7630a0d60821dc13bb0be4e50b49fba5f90471f
https://github.com/llvm/llvm-project/commit/e7630a0d60821dc13bb0be4e50b49fba5f90471f
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AMDGPU/canonicalize.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/packed-math.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/slp-v2f16.ll
Log Message:
-----------
AMDGPU: Improve cost handling of canonicalize (#101479)
Commit: d2c04592e63b5a796c79d42e2f5b5a8b1a2b2a72
https://github.com/llvm/llvm-project/commit/d2c04592e63b5a796c79d42e2f5b5a8b1a2b2a72
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/test/CodeGen/RISCV/rvv/vmerge.ll
M llvm/test/CodeGen/RISCV/rvv/vmv.v.v.ll
Log Message:
-----------
[RISCV] Support f16 vmv.v.v and vmerge.vvm intrinsics with Zvfhmin. (#101457)
Clang expects that this works.
Commit: e833e8beecc3301a203dbf2f6eeb14ed4d1e996e
https://github.com/llvm/llvm-project/commit/e833e8beecc3301a203dbf2f6eeb14ed4d1e996e
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
Log Message:
-----------
[Mem2Reg] Replace block maps with block numbers (#101391)
Very minor performance improvement.
Commit: b5fc083dc30994f8d4f43ba6064d7b27467352c0
https://github.com/llvm/llvm-project/commit/b5fc083dc30994f8d4f43ba6064d7b27467352c0
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/include/llvm/LinkAllPasses.h
M llvm/include/llvm/Transforms/Scalar.h
M llvm/include/llvm/Transforms/Scalar/LowerConstantIntrinsics.h
M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
M llvm/lib/CodeGen/TargetPassConfig.cpp
M llvm/lib/Transforms/Scalar/LowerConstantIntrinsics.cpp
M llvm/lib/Transforms/Scalar/Scalar.cpp
M llvm/test/CodeGen/AArch64/O0-pipeline.ll
M llvm/test/CodeGen/AArch64/O3-pipeline.ll
M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
M llvm/test/CodeGen/ARM/O3-pipeline.ll
M llvm/test/CodeGen/LoongArch/O0-pipeline.ll
M llvm/test/CodeGen/LoongArch/opt-pipeline.ll
M llvm/test/CodeGen/PowerPC/O0-pipeline.ll
M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
M llvm/test/CodeGen/RISCV/O0-pipeline.ll
M llvm/test/CodeGen/RISCV/O3-pipeline.ll
M llvm/test/CodeGen/X86/O0-pipeline.ll
M llvm/test/CodeGen/X86/opt-pipeline.ll
Log Message:
-----------
[CodeGen] Merge lowerConstantIntrinsics into pre-isel lowering (#97727)
Currently, the LowerConstantIntrinsics pass does an RPO traversal of
every function... only to find that many functions don't have constant
intrinsics (is.constant, objectsize). In the CodeGen pipeline, there is
already a pre-isel intrinsic lowering pass, which iterates over
intrinsic declarations and lowers all users. Call
lowerConstantIntrinsics from this pass to avoid the extra iteration over
the entire IR and the RPO traversal.
Commit: 1a5d8926c5f9c1e75a285e122cf6cad0191a41b5
https://github.com/llvm/llvm-project/commit/1a5d8926c5f9c1e75a285e122cf6cad0191a41b5
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-08-02 (Fri, 02 Aug 2024)
Changed paths:
M llvm/include/llvm/IR/ConstantRange.h
M llvm/lib/IR/ConstantRange.cpp
M llvm/test/Transforms/CorrelatedValuePropagation/shl.ll
M llvm/unittests/IR/ConstantRangeTest.cpp
Log Message:
-----------
[ConstantRange] Add support for `shlWithNoWrap` (#100594)
This patch adds initial support for `ConstantRange:: shlWithNoWrap` to
fold https://github.com/dtcxzyw/llvm-tools/issues/22. However, this
patch cannot fix the original issue. Improvements will be submitted in subsequent patches.
Commit: 68df06a0b2998765cb0a41353fcf0919bbf57ddb
https://github.com/llvm/llvm-project/commit/68df06a0b2998765cb0a41353fcf0919bbf57ddb
Author: yandalur <quic_yandalur at quicinc.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp
A llvm/test/CodeGen/Hexagon/cext-opt-block-addr.mir
Log Message:
-----------
[Hexagon] Do not optimize address of another function's block (#101209)
When the constant extender optimization pass encounters an instruction
that uses an extended address pointing to another function's block,
avoid adding the instruction to the extender list for the current
machine function.
Fixes https://github.com/llvm/llvm-project/issues/99714
Commit: 6d40580f917fe52a3b6992c6de2d7c60253cb906
https://github.com/llvm/llvm-project/commit/6d40580f917fe52a3b6992c6de2d7c60253cb906
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libc/newhdrgen/yaml_to_classes.py
Log Message:
-----------
[libc] Remove verbose printing from hdrgen tool (#101376)
Summary:
This fills the terminal with information already present from the
`add_custom_command(COMMENT ...)` field, so it breaks everything into
new lines. Remove this print to clean that up.
Commit: 2771ea4ea47db2361b9842211f9e9ee595320af6
https://github.com/llvm/llvm-project/commit/2771ea4ea47db2361b9842211f9e9ee595320af6
Author: Santanu Das <quic_santdas at quicinc.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
A llvm/test/CodeGen/Hexagon/hvx-concat-lower.ll
Log Message:
-----------
[Hexagon] Fix concat lowering for HVX for 64B vector length (#98318)
When concatenation of vector instructions is formed, as a part of it
vector rotation is performed. The direction of the shift was not
correctly calculated. This fixes the rotation factor.
Commit: 98e4413a38f286147b863a6ead9625228ab0ec7d
https://github.com/llvm/llvm-project/commit/98e4413a38f286147b863a6ead9625228ab0ec7d
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M mlir/test/Dialect/Vector/vector-transfer-flatten.mlir
M mlir/test/Dialect/Vector/vector-transfer-permutation-lowering.mlir
Log Message:
-----------
[mlir][vector] Update tests for xfer-permute-lowering (nfc) (#101468)
Updates formatting and variable names in:
* vector-transfer-permutation-lowering.mlir
This is primarily to improve consistency, both within this particular
test file as well as across tests. In particular, with this PR I'm
adopting similar naming convention to that that's already present in
vector-transfer-flatten.mlir.
Overview of changes:
* All memref input arguments are re-named as `%mem`.
* All vector input arguments are re-named as `%vec`.
* All tensor input arguments are re-named as `%dest`.
* LIT variables are update to be consistent with input arguments.
* Renamed all output arguments as `%res`.
* Updated indentation to be more C-like.
Commit: 2177a1767b88d684830b83ac7f06d0f9f15102e2
https://github.com/llvm/llvm-project/commit/2177a1767b88d684830b83ac7f06d0f9f15102e2
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M flang/runtime/copy.cpp
M flang/runtime/copy.h
A flang/runtime/stack.h
Log Message:
-----------
[flang][runtime] Avoid call recursion in CopyElement runtime. (#101421)
Device compilers may fail to identify maximum stack size required
by a kernel that calls CopyElement due to potential recursive calls.
To avoid this, we can use dynamically allocated Stack. To avoid
dynamic allocations on the host for simple cases, the Stack
implementation
has a reserved space (that ends up being allocated on the program
stack).
I tested both pre-allocated and 0-reserve implementations on the host,
and all passed. The actual reserve values might be tuned as needed.
Commit: 6df4e7c25ffb15ed8cba8ccb9cf9fa18b082013d
https://github.com/llvm/llvm-project/commit/6df4e7c25ffb15ed8cba8ccb9cf9fa18b082013d
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M flang/include/flang/ISO_Fortran_binding.h
M flang/include/flang/Optimizer/CodeGen/TBAABuilder.h
M flang/include/flang/Optimizer/CodeGen/TypeConverter.h
M flang/include/flang/Runtime/descriptor.h
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
M flang/runtime/CMakeLists.txt
M flang/runtime/ISO_Fortran_util.h
A flang/runtime/allocator-registry.cpp
A flang/runtime/allocator-registry.h
M flang/runtime/descriptor.cpp
M flang/test/Fir/box.fir
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/embox-char.fir
M flang/test/Fir/embox.fir
M flang/test/Fir/ignore-missing-type-descriptor.fir
M flang/test/Fir/polymorphic.fir
M flang/test/Fir/rebox-global.fir
M flang/test/Fir/rebox.fir
M flang/test/Fir/tbaa.fir
M flang/test/Fir/type-descriptor.fir
M flang/test/Lower/allocatable-polymorphic.f90
Log Message:
-----------
[flang] Add ability to have special allocator for descriptor data (#100690)
This patch enhances the descriptor with the ability to have specialized
allocator. The allocators are registered in a dedicated registry and the
index of the desired allocator is stored in the descriptor. The default
allocator, std::malloc, is registered at index 0.
In order to have this allocator index in the descriptor, the f18Addendum
field is repurposed to be able to hold the presence flag for the
addendum (lsb) and the allocator index.
Since this is a change in the semantic and name of the 7th field of the
descriptor, the CFI_VERSION is bumped to the date of the initial change.
This patch only adds the ability to have this features as part of the
descriptor but does not add specific allocator yet. CUDA fortran will be
the first user of this feature to allocate descriptor data in the
different type of device memory base on the CUDA attribute.
---------
Co-authored-by: Slava Zakharin <szakharin at nvidia.com>
Commit: c7c5e05389292da7e5a87e3d1d3ef08021911a53
https://github.com/llvm/llvm-project/commit/c7c5e05389292da7e5a87e3d1d3ef08021911a53
Author: David Green <david.green at arm.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
Log Message:
-----------
[AArch64] Format comment to fit into line-length. NFC
Commit: 2a5f7e58d71c394b241fdd1d905041ad0537acab
https://github.com/llvm/llvm-project/commit/2a5f7e58d71c394b241fdd1d905041ad0537acab
Author: Artem Pianykh <arr at fb.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M compiler-rt/lib/asan/asan_globals.cpp
Log Message:
-----------
[NFC][asan][odr] Use IntrusiveList for a ListOfGlobals
Extracted from #100923.
Commit: a5e67fba8abb35211aebb945d9d07ac988b80cf5
https://github.com/llvm/llvm-project/commit/a5e67fba8abb35211aebb945d9d07ac988b80cf5
Author: Tsz Chan <keithcth2001 at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/arm/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/newhdrgen/yaml/stdio.yaml
M libc/spec/stdc.td
M libc/src/stdio/CMakeLists.txt
A libc/src/stdio/asprintf.cpp
A libc/src/stdio/asprintf.h
M libc/src/stdio/printf_core/CMakeLists.txt
M libc/src/stdio/printf_core/core_structs.h
A libc/src/stdio/printf_core/vasprintf_internal.h
M libc/src/stdio/printf_core/writer.h
A libc/src/stdio/vasprintf.cpp
A libc/src/stdio/vasprintf.h
M libc/test/src/stdio/CMakeLists.txt
A libc/test/src/stdio/asprintf_test.cpp
A libc/test/src/stdio/vasprintf_test.cpp
Log Message:
-----------
[libc] Implement vasprintf and asprintf (#98824)
[libc] Implement vasprintf and asprintf
---------
Co-authored-by: Izaak Schroeder <izaak.schroeder at gmail.com>
Commit: 0c31123c8599bfd9d67549f6174812fbcf988d78
https://github.com/llvm/llvm-project/commit/0c31123c8599bfd9d67549f6174812fbcf988d78
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libc/src/stdio/printf_core/writer.h
Log Message:
-----------
[libc] Fix erroneous warning on GCC (#101520)
Commit: 7da1dbb632ca490c2ab3c2d6ff46cccda38c7acd
https://github.com/llvm/llvm-project/commit/7da1dbb632ca490c2ab3c2d6ff46cccda38c7acd
Author: Daniel Bertalan <dani at danielbertalan.dev>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Object/MachOObjectFile.cpp
Log Message:
-----------
[MachO] Remove redundant bounds check (#100176)
The condition was duplicated, the correct one for this message would
have been `ImportsEnd > SymbolsEnd`. However, this is a subset of
`ImportEnd > Symbols` (since `Symbols <= SymbolsEnd`), so it can be
removed altogether.
I made this thinko in 686d8ce.
Note that that change wasn't intended to be permanent, and served as a
quick stopgap to facilitate testing chained fixups in LLD before Apple
upstreamed their implementation.
Fixes #90662
Fixes #87203
Commit: 0af07c078798b7c427e2981377781b5cc555a568
https://github.com/llvm/llvm-project/commit/0af07c078798b7c427e2981377781b5cc555a568
Author: Fangrui Song <i at maskray.me>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M lld/ELF/DWARF.cpp
M lld/ELF/ICF.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/LinkerScript.cpp
M lld/ELF/MarkLive.cpp
M lld/ELF/OutputSections.cpp
M lld/ELF/OutputSections.h
M lld/ELF/Relocations.cpp
M lld/ELF/Relocations.h
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Writer.cpp
A lld/test/ELF/crel-rel-mixed.s
A lld/test/ELF/crel.s
M lld/test/ELF/debug-names.s
M lld/test/ELF/gc-sections.s
M lld/test/ELF/icf1.s
M lld/test/ELF/icf4.s
M lld/test/ELF/linkerscript/nocrossrefs.test
A lld/test/ELF/relocatable-crel-32.s
A lld/test/ELF/relocatable-crel.s
Log Message:
-----------
[ELF] Support relocatable files using CREL with explicit addends
... using the temporary section type code 0x40000020
(`clang -c -Wa,--crel,--allow-experimental-crel`). LLVM will change the
code and break compatibility (Clang and lld of different versions are
not guaranteed to cooperate, unlike other features). CREL with implicit
addends are not supported.
---
Introduce `RelsOrRelas::crels` to iterate over SHT_CREL sections and
update users to check `crels`.
(The decoding performance is critical and error checking is difficult.
Follow `skipLeb` and `R_*LEB128` handling, do not use
`llvm::decodeULEB128`, whichs compiles to a lot of code.)
A few users (e.g. .eh_frame, LLDDwarfObj, s390x) require random access. Pass
`/*supportsCrel=*/false` to `relsOrRelas` to allocate a buffer and
convert CREL to RELA (`relas` instead of `crels` will be used). Since
allocating a buffer increases, the conversion is only performed when
absolutely necessary.
---
Non-alloc SHT_CREL sections may be created in -r and --emit-relocs
links. SHT_CREL and SHT_RELA components need reencoding since
r_offset/r_symidx/r_type/r_addend may change. (r_type may change because
relocations referencing a symbol in a discarded section are converted to
`R_*_NONE`).
* SHT_CREL components: decode with `RelsOrRelas` and re-encode (`OutputSection::finalizeNonAllocCrel`)
* SHT_RELA components: convert to CREL (`relToCrel`). An output section can only have one relocation section.
* SHT_REL components: print an error for now.
SHT_REL to SHT_CREL conversion for -r/--emit-relocs is complex and
unsupported yet.
Link: https://discourse.llvm.org/t/rfc-crel-a-compact-relocation-format-for-elf/77600
Pull Request: https://github.com/llvm/llvm-project/pull/98115
Commit: d68a4d512006750f2e2e8b31993e2c3d16f252a9
https://github.com/llvm/llvm-project/commit/d68a4d512006750f2e2e8b31993e2c3d16f252a9
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/SandboxIR.h
M llvm/lib/SandboxIR/SandboxIR.cpp
Log Message:
-----------
[SandboxIR][NFC] Introduce templated CastInstImpl to simplify subclasses (#101427)
The CastInst subclasses all have pretty much the same implementation.
Add a helper templated class to help stamp out the subclasses more
succinctly.
Commit: bc747c3e1377e3e262d901cefcae2f563c895bb5
https://github.com/llvm/llvm-project/commit/bc747c3e1377e3e262d901cefcae2f563c895bb5
Author: tltao <tony.le.tao at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
M llvm/lib/Target/SystemZ/SystemZInstrInfo.td
A llvm/test/CodeGen/SystemZ/Large/large-ada-01.py
A llvm/test/CodeGen/SystemZ/Large/large-ada-02.py
Log Message:
-----------
[SystemZ][z/OS] Fix incorrect codegen for ADA_ENTRY pseudo instruction (#101415)
The current MCInstBuilder for generating an ALGFI when loading something
from the ADA is incorrect and will crash the compiler.
r0 must also be excluded from the registers returned as the result,
since it is treated as the value "0" on z/OS.
Also add some tests to properly test the paths where LLILF and ALGFI are
generated.
---------
Co-authored-by: Tony Tao <tonytao at ca.ibm.com>
Commit: 90065da6d5a5f661b60c2f75b0f2dc094d27f4f5
https://github.com/llvm/llvm-project/commit/90065da6d5a5f661b60c2f75b0f2dc094d27f4f5
Author: RoseZhang03 <rosezhang at google.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libc/fuzzing/CMakeLists.txt
M libc/fuzzing/math/CMakeLists.txt
A libc/fuzzing/math/sin_fuzz.cpp
Log Message:
-----------
[libc] created fuzz test for sin function (#101411)
Verifies that sin function output is correct by comparing with MPFR
output. NaN and inf are not tested (as our output will vary compared to
MPFR), and signed zeroes are already tested in unit tests.
Commit: 3497211d80c22e1c488f1617db1d70413a2096ec
https://github.com/llvm/llvm-project/commit/3497211d80c22e1c488f1617db1d70413a2096ec
Author: Michael Jones <michaelrj at google.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libc/fuzzing/math/RemQuoDiff.h
M libc/fuzzing/math/nextafter_differential_fuzz.cpp
Log Message:
-----------
[libc] Fix math fuzzers (#101529)
Fix minor typos that accumulated while the math fuzzers were disabled.
Commit: 83e6d872cfbb98b0b1e9a5080afe1e1c8cf69237
https://github.com/llvm/llvm-project/commit/83e6d872cfbb98b0b1e9a5080afe1e1c8cf69237
Author: RoseZhang03 <rosezhang at google.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libc/fuzzing/stdlib/heap_sort_fuzz.cpp
Log Message:
-----------
[libc] heap_sort_fuzz deleted unnecessary includes (#101535)
Including src/__suppot/macros/config.h is unnecessary
Commit: 41439d5bb72f1f582df8887b37931720d7233298
https://github.com/llvm/llvm-project/commit/41439d5bb72f1f582df8887b37931720d7233298
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/test/CodeGenCUDA/amdgpu-atomic-ops.cu
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.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/flat-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.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_atomics_scan_fmax.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f32-agent.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f32-system.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f64-agent.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f64-system.ll
Log Message:
-----------
AMDGPU: Handle remote/fine-grained memory in atomicrmw fmin/fmax lowering (#96759)
Consider the new atomic metadata when choosing to expand as cmpxchg
instead.
Commit: 8d151f804ff43aaed1edf810bb2a07607b8bba14
https://github.com/llvm/llvm-project/commit/8d151f804ff43aaed1edf810bb2a07607b8bba14
Author: Nhat Nguyen <nhat7203 at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libcxx/include/__algorithm/equal_range.h
M libcxx/include/__algorithm/includes.h
M libcxx/include/__algorithm/is_permutation.h
M libcxx/include/__algorithm/lower_bound.h
M libcxx/include/__algorithm/max_element.h
M libcxx/include/__algorithm/min_element.h
M libcxx/include/__algorithm/minmax.h
M libcxx/include/__algorithm/minmax_element.h
M libcxx/include/__algorithm/partial_sort_copy.h
M libcxx/include/__algorithm/search.h
M libcxx/include/__algorithm/search_n.h
M libcxx/include/__algorithm/upper_bound.h
M libcxx/src/regex.cpp
A libcxx/test/libcxx/algorithms/callable-requirements-rvalue.compile.pass.cpp
A libcxx/test/libcxx/algorithms/callable-requirements.verify.cpp
R libcxx/test/libcxx/algorithms/callable.verify.cpp
M libcxx/test/libcxx/algorithms/ranges_robust_against_copying_projections.pass.cpp
M libcxx/test/libcxx/algorithms/robust_against_cpp20_hostile_iterators.compile.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation_pred.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_n_pred.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp
M libcxx/test/std/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort_comp.pass.cpp
Log Message:
-----------
[libc++] Check correctly ref-qualified __is_callable in algorithms (#73451)
We were only checking that the comparator was rvalue callable,
when in reality the algorithms always call comparators as lvalues.
This patch also refactors the tests for callable requirements and
expands it to a few missing algorithms.
Fixes #69554
Commit: ab91371653720ef7bcfb69212c9a4537740c0ba1
https://github.com/llvm/llvm-project/commit/ab91371653720ef7bcfb69212c9a4537740c0ba1
Author: Brox Chen <broxigarchen at outlook.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrFormats.td
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/test/MC/AMDGPU/gfx10_unsupported.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
M llvm/test/MC/Disassembler/AMDGPU/decode-err.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
Log Message:
-----------
[AMDGPU][True16][MC] Support v_swap_b16. (#100442)
support V_SWAP_B16 true16 encoding in asm/disasm for GFX11/12
Co-authored-by: guochen2 <guochen2 at amd.com>
Commit: f95bd62cf99d12d5bfa5333d481fe9e7aa5a22ed
https://github.com/llvm/llvm-project/commit/f95bd62cf99d12d5bfa5333d481fe9e7aa5a22ed
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M lld/MachO/BPSectionOrderer.cpp
M lld/MachO/Options.td
M lld/test/MachO/bp-section-orderer-errs.s
Log Message:
-----------
[lld][InstrProf] Add "Separate" irpgo-profile-sort option (#101084)
Add the "Separate" option `--irpgo-profile-sort <profile` instead of
just the "Joined" option `--irpgo-profile-sort=<profile>`. This is
useful if the path has a `,` for some reason which would break when
trying to use `-Wl,--irpgo-profile-sort=<profile-with-comma>`.
While I'm here, use `static_cast<>` instead of the C style cast
introduced in https://github.com/llvm/llvm-project/pull/100627
Commit: 0512ba0a435a9d693cb61f182fc9e3eb7f6dbd6a
https://github.com/llvm/llvm-project/commit/0512ba0a435a9d693cb61f182fc9e3eb7f6dbd6a
Author: Tom Stellard <tstellar at redhat.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M .github/workflows/llvm-project-tests.yml
Log Message:
-----------
workflows: Fix libclc-tests (#101524)
The old out-of-tree build configuration stopped working and in tree
builds are supported now, so we should use the in tree configuration.
The only downside is we can't run the tests any more, but at least we
will be able to test the build again.
Commit: 855703537e4d7eb1d7310ba40c3459e79e3243d2
https://github.com/llvm/llvm-project/commit/855703537e4d7eb1d7310ba40c3459e79e3243d2
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/test/Transforms/LoopVectorize/X86/predicate-switch.ll
M llvm/test/Transforms/LoopVectorize/predicate-switch.ll
A llvm/test/Transforms/LoopVectorize/vplan-predicate-switch.ll
Log Message:
-----------
[LV] Add more tests with switches.
Extra tests for
https://github.com/llvm/llvm-project/pull/99808, including cost model
tests.
Commit: b6b0a240d0b51ce85624a65c6e43f501371bc61b
https://github.com/llvm/llvm-project/commit/b6b0a240d0b51ce85624a65c6e43f501371bc61b
Author: vporpo <vporpodas at google.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/SandboxIR.h
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Implement the remaining CastInst sub-classes (#101537)
This patch implements:
sandboxir::UIToFPInst
sandboxir::FPExtInst
sandboxir::FPTruncInst
sandboxir::SExtInst
sandboxir::ZExtInst
sandboxir::TruncInst
Commit: 5e326983b620507940816f4c30ab4d80fa6250ad
https://github.com/llvm/llvm-project/commit/5e326983b620507940816f4c30ab4d80fa6250ad
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libc/utils/gpu/loader/CMakeLists.txt
M libc/utils/gpu/loader/Loader.h
M libc/utils/gpu/loader/Main.cpp
M libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
M libc/utils/gpu/loader/nvptx/nvptx-loader.cpp
Log Message:
-----------
[libc] Use LLVM CommandLine for loader tool (#101501)
Summary:
This patch removes the ad-hoc parsing that I used previously and
replaces it with the LLVM CommnadLine interface. This doesn't change any
functionality, but makes it easier to maintain.
Commit: 18b58d42b2cba805ba4d34864d2e1e73e1610588
https://github.com/llvm/llvm-project/commit/18b58d42b2cba805ba4d34864d2e1e73e1610588
Author: Nathan Sidwell <nathan at acm.org>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
Log Message:
-----------
[clang-format] Rename variable more sensitively (#100943)
Renaming to `Disallowed`.
Commit: ea46e202a9e0344f8d6d3a595e41fd6c515b50c2
https://github.com/llvm/llvm-project/commit/ea46e202a9e0344f8d6d3a595e41fd6c515b50c2
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ExprClassification.cpp
A clang/test/SemaCXX/GH82167.cpp
Log Message:
-----------
[clang] fix classification of a string literal expression used as initializer (#101447)
Commit: 160fb1121cdf703c3ef5e61fb26c5659eb581489
https://github.com/llvm/llvm-project/commit/160fb1121cdf703c3ef5e61fb26c5659eb581489
Author: Bill Wendling <5993918+bwendling at users.noreply.github.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/test/CodeGen/attr-counted-by.c
Log Message:
-----------
[Clang][NFC] Improve generation of GEP and RecordDecl loop (#101434)
As with other loops, we need only look at a RecordDecl's FieldDecls.
Convert to using them. In the meantime, we can improve the generation of
the 'counted_by' FieldDecl's GEP by creating one GEP instead of a series
of GEPs.
Commit: 0def9a923dadc2b2b3dd067eefcef541e475594c
https://github.com/llvm/llvm-project/commit/0def9a923dadc2b2b3dd067eefcef541e475594c
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M flang/include/flang/Optimizer/CodeGen/CGOps.td
M flang/include/flang/Optimizer/Dialect/FIROps.td
A flang/include/flang/Runtime/allocator-registry.h
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
M flang/runtime/allocator-registry.cpp
R flang/runtime/allocator-registry.h
M flang/runtime/descriptor.cpp
M flang/test/Fir/embox.fir
Log Message:
-----------
[flang] Add allocator_idx attribute on fir.embox and fircg.ext_embox (#101212)
#100690 introduces allocator registry with the ability to store
allocator index in the descriptor. This patch adds an attribute to
fir.embox and fircg.ext_embox to be able to set the allocator index
while populating the descriptor fields.
Commit: 451bba6fbf0bc9a2bfff9253ac45caf7c57d38b9
https://github.com/llvm/llvm-project/commit/451bba6fbf0bc9a2bfff9253ac45caf7c57d38b9
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libcxx/include/__algorithm/equal_range.h
M libcxx/include/__algorithm/includes.h
M libcxx/include/__algorithm/is_permutation.h
M libcxx/include/__algorithm/lower_bound.h
M libcxx/include/__algorithm/max_element.h
M libcxx/include/__algorithm/min_element.h
M libcxx/include/__algorithm/minmax.h
M libcxx/include/__algorithm/minmax_element.h
M libcxx/include/__algorithm/partial_sort_copy.h
M libcxx/include/__algorithm/search.h
M libcxx/include/__algorithm/search_n.h
M libcxx/include/__algorithm/upper_bound.h
M libcxx/src/regex.cpp
R libcxx/test/libcxx/algorithms/callable-requirements-rvalue.compile.pass.cpp
R libcxx/test/libcxx/algorithms/callable-requirements.verify.cpp
A libcxx/test/libcxx/algorithms/callable.verify.cpp
M libcxx/test/libcxx/algorithms/ranges_robust_against_copying_projections.pass.cpp
M libcxx/test/libcxx/algorithms/robust_against_cpp20_hostile_iterators.compile.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation_pred.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_n_pred.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp
M libcxx/test/std/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort_comp.pass.cpp
Log Message:
-----------
[libc++] Revert "Check correctly ref-qualified __is_callable in algorithms (#73451)"
This reverts commit 8d151f804ff43aaed1edf810bb2a07607b8bba14, which
broke some build bots. I think that is caused by an invalid argument
order when checking __is_comparable in upper_bound.
Commit: 5e84646982d1ec9bc94e48dde4b47f03c044a156
https://github.com/llvm/llvm-project/commit/5e84646982d1ec9bc94e48dde4b47f03c044a156
Author: Zequan Wu <zequanwu at google.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
M clang/test/CodeGen/attr-nomerge.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/test/CodeGen/X86/nomerge.ll
Log Message:
-----------
[Clang] Fix nomerge attribute not working with __builtin_trap(), __debugbreak(), __builtin_verbose_trap() (#101549)
1. It fixes the problem that llvm.trap() not getting the nomerge
attribute.
2. It sets nomerge flag for the node if the instruction has nomerge
arrtibute.
This is a copy of https://reviews.llvm.org/D146164. This only attempts
to fix `nomerge` for `__builtin_trap()`, `__debugbreak()`,
`__builtin_verbose_trap()`, not working for non-trap builtins.
Fixes #53011
Commit: e89129ed30d64ed61e38269b1722adc18844a31c
https://github.com/llvm/llvm-project/commit/e89129ed30d64ed61e38269b1722adc18844a31c
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M flang/runtime/stack.h
Log Message:
-----------
[flang][runtime] Added missing RT_API_ATTRS. (#101536)
Commit: f0944f4be0b3187fa39e9161bc7b344029c200f5
https://github.com/llvm/llvm-project/commit/f0944f4be0b3187fa39e9161bc7b344029c200f5
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/trip-count-scalable-stride.ll
Log Message:
-----------
[SCEV] Prove no-self-wrap from negative power of two step (#101416)
We have existing code which reasons about a step evenly dividing the
iteration space is a finite loop with a single exit implying
no-self-wrap. The sign of the step doesn't effect this.
---------
Co-authored-by: Nikita Popov <github at npopov.com>
Commit: 97f723bab0f48aca1416b9f946037b39b11d50e9
https://github.com/llvm/llvm-project/commit/97f723bab0f48aca1416b9f946037b39b11d50e9
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libc/config/gpu/entrypoints.txt
M libc/src/stdio/printf_core/CMakeLists.txt
Log Message:
-----------
[libc] Fix 'vasprintf' not working in non-fullbuild mode
Commit: 8f33f1d829bfa8ab7af5fc60b413cba8994c33a1
https://github.com/llvm/llvm-project/commit/8f33f1d829bfa8ab7af5fc60b413cba8994c33a1
Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M libc/config/darwin/arm/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/docs/math/index.rst
M libc/spec/llvm_libc_ext.td
M libc/spec/stdc.td
M libc/src/math/CMakeLists.txt
A libc/src/math/daddf128.h
A libc/src/math/daddl.h
A libc/src/math/ddivf128.h
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/daddf128.cpp
A libc/src/math/generic/daddl.cpp
A libc/src/math/generic/ddivf128.cpp
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/daddl_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/daddf128_test.cpp
A libc/test/src/math/smoke/daddl_test.cpp
A libc/test/src/math/smoke/ddivf128_test.cpp
Log Message:
-----------
[libc][math][c23] Add dadd{l,f128} and ddiv{l,f128} C23 math functions (#100456)
- fadd removed because I need to add for different input types
- finishing rest of basic operations
- noticed duplicates will remove
---------
Co-authored-by: OverMighty <its.overmighty at gmail.com>
Commit: da5311a10608e99536a4762f9d989d74655af808
https://github.com/llvm/llvm-project/commit/da5311a10608e99536a4762f9d989d74655af808
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-08-01 (Thu, 01 Aug 2024)
Changed paths:
M .github/workflows/llvm-project-tests.yml
M .github/workflows/release-binaries.yml
M bolt/include/bolt/Core/DIEBuilder.h
M bolt/include/bolt/Core/GDBIndex.h
M bolt/include/bolt/Rewrite/DWARFRewriter.h
M bolt/lib/Core/DIEBuilder.cpp
M bolt/lib/Core/GDBIndex.cpp
M bolt/lib/Rewrite/CMakeLists.txt
M bolt/lib/Rewrite/DWARFRewriter.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/test/X86/debug-fission-single-convert.s
M bolt/test/X86/debug-fission-single.s
R bolt/test/X86/dwarf4-ftypes-dwo-input-dwp-output.test
R bolt/test/X86/dwarf4-ftypes-dwo-mono-input-dwp-output.test
M bolt/test/X86/dwarf4-split-gdb-index-types-gdb-generated.test
M bolt/test/X86/dwarf5-df-types-modify-dwo-name-mixed.test
M bolt/test/X86/dwarf5-df-types-modify-dwo-name.test
R bolt/test/X86/dwarf5-ftypes-dwo-mono-input-dwp-output.test
A bolt/test/timers.c
M clang/bindings/python/clang/cindex.py
M clang/cmake/modules/AddClang.cmake
M clang/docs/ReleaseNotes.rst
M clang/docs/analyzer/checkers.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/AST/Type.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/DiagnosticSerializationKinds.td
M clang/include/clang/Driver/Options.td
M clang/include/clang/Lex/PreprocessorOptions.h
M clang/include/clang/Sema/Overload.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/ExprClassification.cpp
M clang/lib/AST/Interp/Context.cpp
M clang/lib/AST/Interp/EvaluationResult.cpp
M clang/lib/AST/Interp/Interp.h
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/Type.cpp
M clang/lib/Analysis/Consumed.cpp
M clang/lib/Analysis/ThreadSafetyCommon.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/Driver/ToolChains/AIX.cpp
M clang/lib/Driver/ToolChains/Arch/X86.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/CommonArgs.h
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/PS4CPU.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp
M clang/test/AST/Interp/constexpr-subobj-initialization.cpp
M clang/test/AST/Interp/cxx2a.cpp
M clang/test/Analysis/pointer-sub.c
M clang/test/C/C23/n3018.c
M clang/test/CXX/drs/cwg25xx.cpp
M clang/test/CXX/drs/cwg28xx.cpp
M clang/test/CXX/drs/cwg8xx.cpp
A clang/test/CodeGen/LoongArch/align.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/attr-nomerge.cpp
A clang/test/CodeGen/math-libcalls-tbaa.c
R clang/test/CodeGen/math-libcalls-tbaa.cpp
M clang/test/CodeGen/pr3518.c
M clang/test/CodeGenCUDA/amdgpu-atomic-ops.cu
M clang/test/CodeGenCUDA/convergent.cu
M clang/test/Driver/cuda-cross-compiling.c
M clang/test/Driver/ps4-linker.c
M clang/test/Driver/x86-target-features.c
A clang/test/Headers/stdarg-cxx-modules.cpp
M clang/test/Index/pch-with-errors.c
M clang/test/Misc/pragma-attribute-supported-attributes-list.test
A clang/test/Modules/inline-builtins.cppm
M clang/test/Modules/load-module-with-errors.m
M clang/test/Preprocessor/embed_weird.cpp
M clang/test/Preprocessor/pragma_mc_func.c
M clang/test/Preprocessor/x86_target_features.c
A clang/test/SemaCUDA/attr-noconvergent.cu
A clang/test/SemaCXX/GH82167.cpp
M clang/test/SemaCXX/constexpr-subobj-initialization.cpp
M clang/test/SemaCXX/type-traits.cpp
M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
M clang/tools/clang-repl/CMakeLists.txt
M clang/tools/driver/CMakeLists.txt
M clang/tools/libclang/CMakeLists.txt
M clang/www/cxx_dr_status.html
M clang/www/make_cxx_dr_status
M cmake/Modules/LLVMCheckCompilerLinkerFlag.cmake
M compiler-rt/cmake/config-ix.cmake
M compiler-rt/include/profile/InstrProfData.inc
M compiler-rt/lib/asan/asan_globals.cpp
M compiler-rt/lib/builtins/os_version_check.c
M compiler-rt/lib/profile/InstrProfilingFile.c
M compiler-rt/lib/rtsan/rtsan_interceptors.cpp
M compiler-rt/test/builtins/TestCases/Darwin/platform_version_check_test.c
M flang/include/flang/ISO_Fortran_binding.h
M flang/include/flang/Optimizer/CodeGen/CGOps.td
M flang/include/flang/Optimizer/CodeGen/TBAABuilder.h
M flang/include/flang/Optimizer/CodeGen/TypeConverter.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
A flang/include/flang/Runtime/allocator-registry.h
M flang/include/flang/Runtime/descriptor.h
M flang/include/flang/Semantics/tools.h
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/runtime/CMakeLists.txt
M flang/runtime/ISO_Fortran_util.h
A flang/runtime/allocator-registry.cpp
M flang/runtime/copy.cpp
M flang/runtime/copy.h
M flang/runtime/descriptor.cpp
A flang/runtime/stack.h
M flang/test/Driver/omp-driver-offload.f90
M flang/test/Fir/box.fir
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/embox-char.fir
M flang/test/Fir/embox.fir
M flang/test/Fir/ignore-missing-type-descriptor.fir
M flang/test/Fir/polymorphic.fir
M flang/test/Fir/rebox-global.fir
M flang/test/Fir/rebox.fir
M flang/test/Fir/tbaa.fir
M flang/test/Fir/type-descriptor.fir
A flang/test/Lower/OpenMP/DelayedPrivatization/equivalence.f90
A flang/test/Lower/OpenMP/associate.f90
M flang/test/Lower/OpenMP/default-clause-implied-do-fix.f90
M flang/test/Lower/OpenMP/target.f90
M flang/test/Lower/OpenMP/task.f90
M flang/test/Lower/OpenMP/use-device-ptr-to-use-device-addr.f90
M flang/test/Lower/allocatable-polymorphic.f90
A flang/test/Semantics/OpenMP/copyprivate04.f90
M flang/test/Semantics/OpenMP/do05-positivecase.f90
M flang/test/Semantics/OpenMP/do20.f90
M flang/test/Semantics/OpenMP/implicit-dsa.f90
A flang/test/Semantics/OpenMP/parallel-shared05.f90
M flang/test/Semantics/OpenMP/reduction08.f90
M flang/test/Semantics/OpenMP/reduction09.f90
M flang/test/Semantics/OpenMP/symbol01.f90
M flang/test/Semantics/OpenMP/symbol02.f90
M flang/test/Semantics/OpenMP/symbol03.f90
M flang/test/Semantics/OpenMP/symbol05.f90
M flang/test/Semantics/OpenMP/symbol07.f90
M flang/test/Semantics/OpenMP/symbol08.f90
M flang/test/Semantics/OpenMP/symbol09.f90
M libc/CMakeLists.txt
M libc/benchmarks/gpu/src/math/CMakeLists.txt
M libc/cmake/modules/LLVMLibCLibraryRules.cmake
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/config.json
M libc/config/darwin/arm/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/gpu/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/docs/configure.rst
M libc/docs/math/index.rst
M libc/fuzzing/CMakeLists.txt
M libc/fuzzing/math/CMakeLists.txt
M libc/fuzzing/math/RemQuoDiff.h
M libc/fuzzing/math/nextafter_differential_fuzz.cpp
A libc/fuzzing/math/sin_fuzz.cpp
M libc/fuzzing/stdlib/CMakeLists.txt
A libc/fuzzing/stdlib/heap_sort_fuzz.cpp
M libc/include/llvm-libc-types/jmp_buf.h
M libc/newhdrgen/yaml/stdio.yaml
M libc/newhdrgen/yaml_to_classes.py
M libc/spec/llvm_libc_ext.td
M libc/spec/stdc.td
M libc/src/__support/FPUtil/BasicOperations.h
M libc/src/__support/FPUtil/CMakeLists.txt
M libc/src/math/CMakeLists.txt
A libc/src/math/daddf128.h
A libc/src/math/daddl.h
A libc/src/math/ddivf128.h
A libc/src/math/dfmaf128.h
A libc/src/math/dfmal.h
A libc/src/math/dsubf128.h
A libc/src/math/dsubl.h
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/daddf128.cpp
A libc/src/math/generic/daddl.cpp
A libc/src/math/generic/ddivf128.cpp
A libc/src/math/generic/dfmaf128.cpp
A libc/src/math/generic/dfmal.cpp
A libc/src/math/generic/dsubf128.cpp
A libc/src/math/generic/dsubl.cpp
M libc/src/math/generic/expf16.cpp
A libc/src/math/generic/getpayload.cpp
A libc/src/math/generic/getpayloadf.cpp
A libc/src/math/generic/getpayloadf128.cpp
A libc/src/math/generic/setpayload.cpp
A libc/src/math/generic/setpayloadf.cpp
A libc/src/math/generic/setpayloadf128.cpp
A libc/src/math/getpayload.h
A libc/src/math/getpayloadf.h
A libc/src/math/getpayloadf128.h
A libc/src/math/setpayload.h
A libc/src/math/setpayloadf.h
A libc/src/math/setpayloadf128.h
A libc/src/setjmp/aarch64/CMakeLists.txt
A libc/src/setjmp/aarch64/longjmp.cpp
A libc/src/setjmp/aarch64/setjmp.cpp
M libc/src/stdio/CMakeLists.txt
A libc/src/stdio/asprintf.cpp
A libc/src/stdio/asprintf.h
M libc/src/stdio/printf_core/CMakeLists.txt
M libc/src/stdio/printf_core/core_structs.h
A libc/src/stdio/printf_core/vasprintf_internal.h
M libc/src/stdio/printf_core/writer.h
A libc/src/stdio/vasprintf.cpp
A libc/src/stdio/vasprintf.h
A libc/src/stdio/vsscanf.cpp
A libc/src/stdio/vsscanf.h
M libc/startup/gpu/CMakeLists.txt
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/daddl_test.cpp
A libc/test/src/math/dfmal_test.cpp
A libc/test/src/math/dsubl_test.cpp
M libc/test/src/math/performance_testing/expf16_perf.cpp
M libc/test/src/math/smoke/CMakeLists.txt
M libc/test/src/math/smoke/SubTest.h
A libc/test/src/math/smoke/daddf128_test.cpp
A libc/test/src/math/smoke/daddl_test.cpp
A libc/test/src/math/smoke/ddivf128_test.cpp
A libc/test/src/math/smoke/dfmaf128_test.cpp
A libc/test/src/math/smoke/dfmal_test.cpp
A libc/test/src/math/smoke/dsubf128_test.cpp
A libc/test/src/math/smoke/dsubl_test.cpp
M libc/test/src/math/smoke/expf16_test.cpp
A libc/test/src/math/smoke/getpayload_test.cpp
A libc/test/src/math/smoke/getpayloadf128_test.cpp
A libc/test/src/math/smoke/getpayloadf_test.cpp
A libc/test/src/math/smoke/setpayload_test.cpp
A libc/test/src/math/smoke/setpayloadf128_test.cpp
A libc/test/src/math/smoke/setpayloadf_test.cpp
M libc/test/src/stdio/CMakeLists.txt
A libc/test/src/stdio/asprintf_test.cpp
A libc/test/src/stdio/vasprintf_test.cpp
A libc/test/src/stdio/vsscanf_test.cpp
M libc/utils/MPFRWrapper/MPFRUtils.cpp
M libc/utils/gpu/loader/CMakeLists.txt
M libc/utils/gpu/loader/Loader.h
M libc/utils/gpu/loader/Main.cpp
M libc/utils/gpu/loader/amdgpu/CMakeLists.txt
R libc/utils/gpu/loader/amdgpu/Loader.cpp
A libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
M libc/utils/gpu/loader/nvptx/CMakeLists.txt
R libc/utils/gpu/loader/nvptx/Loader.cpp
A libc/utils/gpu/loader/nvptx/nvptx-loader.cpp
M libcxx/.clang-format
M libcxx/CMakeLists.txt
R libcxx/benchmarks/CMakeLists.txt
R libcxx/benchmarks/CartesianBenchmarks.h
R libcxx/benchmarks/ContainerBenchmarks.h
R libcxx/benchmarks/GenerateInput.h
R libcxx/benchmarks/Utilities.h
R libcxx/benchmarks/VariantBenchmarks.h
R libcxx/benchmarks/algorithms.partition_point.bench.cpp
R libcxx/benchmarks/algorithms/common.h
R libcxx/benchmarks/algorithms/count.bench.cpp
R libcxx/benchmarks/algorithms/equal.bench.cpp
R libcxx/benchmarks/algorithms/fill.bench.cpp
R libcxx/benchmarks/algorithms/find.bench.cpp
R libcxx/benchmarks/algorithms/for_each.bench.cpp
R libcxx/benchmarks/algorithms/lower_bound.bench.cpp
R libcxx/benchmarks/algorithms/make_heap.bench.cpp
R libcxx/benchmarks/algorithms/make_heap_then_sort_heap.bench.cpp
R libcxx/benchmarks/algorithms/min.bench.cpp
R libcxx/benchmarks/algorithms/min_max_element.bench.cpp
R libcxx/benchmarks/algorithms/minmax.bench.cpp
R libcxx/benchmarks/algorithms/mismatch.bench.cpp
R libcxx/benchmarks/algorithms/pop_heap.bench.cpp
R libcxx/benchmarks/algorithms/pstl.stable_sort.bench.cpp
R libcxx/benchmarks/algorithms/push_heap.bench.cpp
R libcxx/benchmarks/algorithms/ranges_contains.bench.cpp
R libcxx/benchmarks/algorithms/ranges_ends_with.bench.cpp
R libcxx/benchmarks/algorithms/ranges_make_heap.bench.cpp
R libcxx/benchmarks/algorithms/ranges_make_heap_then_sort_heap.bench.cpp
R libcxx/benchmarks/algorithms/ranges_pop_heap.bench.cpp
R libcxx/benchmarks/algorithms/ranges_push_heap.bench.cpp
R libcxx/benchmarks/algorithms/ranges_sort.bench.cpp
R libcxx/benchmarks/algorithms/ranges_sort_heap.bench.cpp
R libcxx/benchmarks/algorithms/ranges_stable_sort.bench.cpp
R libcxx/benchmarks/algorithms/set_intersection.bench.cpp
R libcxx/benchmarks/algorithms/sort.bench.cpp
R libcxx/benchmarks/algorithms/sort_heap.bench.cpp
R libcxx/benchmarks/algorithms/stable_sort.bench.cpp
R libcxx/benchmarks/allocation.bench.cpp
R libcxx/benchmarks/atomic_wait.bench.cpp
R libcxx/benchmarks/atomic_wait_vs_mutex_lock.bench.cpp
R libcxx/benchmarks/deque.bench.cpp
R libcxx/benchmarks/deque_iterator.bench.cpp
R libcxx/benchmarks/exception_ptr.bench.cpp
R libcxx/benchmarks/filesystem.bench.cpp
R libcxx/benchmarks/format.bench.cpp
R libcxx/benchmarks/format_to.bench.cpp
R libcxx/benchmarks/format_to_n.bench.cpp
R libcxx/benchmarks/formatted_size.bench.cpp
R libcxx/benchmarks/formatter_float.bench.cpp
R libcxx/benchmarks/formatter_int.bench.cpp
R libcxx/benchmarks/function.bench.cpp
R libcxx/benchmarks/join_view.bench.cpp
R libcxx/benchmarks/lexicographical_compare_three_way.bench.cpp
R libcxx/benchmarks/libcxxabi/dynamic_cast.bench.cpp
R libcxx/benchmarks/libcxxabi/dynamic_cast_old_stress.bench.cpp
R libcxx/benchmarks/lit.cfg.py
R libcxx/benchmarks/lit.site.cfg.py.in
R libcxx/benchmarks/map.bench.cpp
R libcxx/benchmarks/monotonic_buffer.bench.cpp
R libcxx/benchmarks/numeric/gcd.bench.cpp
R libcxx/benchmarks/ordered_set.bench.cpp
R libcxx/benchmarks/random.bench.cpp
R libcxx/benchmarks/shared_mutex_vs_mutex.bench.cpp
R libcxx/benchmarks/std_format_spec_string_unicode.bench.cpp
R libcxx/benchmarks/std_format_spec_string_unicode_escape.bench.cpp
R libcxx/benchmarks/stop_token.bench.cpp
R libcxx/benchmarks/string.bench.cpp
R libcxx/benchmarks/stringstream.bench.cpp
R libcxx/benchmarks/system_error.bench.cpp
R libcxx/benchmarks/to_chars.bench.cpp
R libcxx/benchmarks/unordered_set_operations.bench.cpp
R libcxx/benchmarks/util_smartptr.bench.cpp
R libcxx/benchmarks/variant_visit_1.bench.cpp
R libcxx/benchmarks/variant_visit_2.bench.cpp
R libcxx/benchmarks/variant_visit_3.bench.cpp
R libcxx/benchmarks/vector_operations.bench.cpp
M libcxx/cmake/config-ix.cmake
M libcxx/docs/ImplementationDefinedBehavior.rst
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/docs/Status/Cxx20Issues.csv
M libcxx/docs/Status/Cxx20Papers.csv
M libcxx/docs/TestingLibcxx.rst
M libcxx/include/__algorithm/find_end.h
M libcxx/include/__algorithm/ranges_adjacent_find.h
M libcxx/include/__algorithm/ranges_all_of.h
M libcxx/include/__algorithm/ranges_any_of.h
M libcxx/include/__algorithm/ranges_binary_search.h
M libcxx/include/__algorithm/ranges_clamp.h
M libcxx/include/__algorithm/ranges_contains.h
M libcxx/include/__algorithm/ranges_contains_subrange.h
M libcxx/include/__algorithm/ranges_copy.h
M libcxx/include/__algorithm/ranges_copy_backward.h
M libcxx/include/__algorithm/ranges_copy_if.h
M libcxx/include/__algorithm/ranges_copy_n.h
M libcxx/include/__algorithm/ranges_count.h
M libcxx/include/__algorithm/ranges_count_if.h
M libcxx/include/__algorithm/ranges_ends_with.h
M libcxx/include/__algorithm/ranges_equal.h
M libcxx/include/__algorithm/ranges_equal_range.h
M libcxx/include/__algorithm/ranges_fill.h
M libcxx/include/__algorithm/ranges_fill_n.h
M libcxx/include/__algorithm/ranges_find.h
M libcxx/include/__algorithm/ranges_find_end.h
M libcxx/include/__algorithm/ranges_find_first_of.h
M libcxx/include/__algorithm/ranges_find_if.h
M libcxx/include/__algorithm/ranges_find_if_not.h
M libcxx/include/__algorithm/ranges_find_last.h
M libcxx/include/__algorithm/ranges_for_each.h
M libcxx/include/__algorithm/ranges_for_each_n.h
M libcxx/include/__algorithm/ranges_generate.h
M libcxx/include/__algorithm/ranges_generate_n.h
M libcxx/include/__algorithm/ranges_includes.h
M libcxx/include/__algorithm/ranges_inplace_merge.h
M libcxx/include/__algorithm/ranges_is_heap.h
M libcxx/include/__algorithm/ranges_is_heap_until.h
M libcxx/include/__algorithm/ranges_is_partitioned.h
M libcxx/include/__algorithm/ranges_is_permutation.h
M libcxx/include/__algorithm/ranges_is_sorted.h
M libcxx/include/__algorithm/ranges_is_sorted_until.h
M libcxx/include/__algorithm/ranges_lexicographical_compare.h
M libcxx/include/__algorithm/ranges_lower_bound.h
M libcxx/include/__algorithm/ranges_make_heap.h
M libcxx/include/__algorithm/ranges_max.h
M libcxx/include/__algorithm/ranges_max_element.h
M libcxx/include/__algorithm/ranges_merge.h
M libcxx/include/__algorithm/ranges_min.h
M libcxx/include/__algorithm/ranges_min_element.h
M libcxx/include/__algorithm/ranges_minmax.h
M libcxx/include/__algorithm/ranges_minmax_element.h
M libcxx/include/__algorithm/ranges_mismatch.h
M libcxx/include/__algorithm/ranges_move.h
M libcxx/include/__algorithm/ranges_move_backward.h
M libcxx/include/__algorithm/ranges_next_permutation.h
M libcxx/include/__algorithm/ranges_none_of.h
M libcxx/include/__algorithm/ranges_nth_element.h
M libcxx/include/__algorithm/ranges_partial_sort.h
M libcxx/include/__algorithm/ranges_partial_sort_copy.h
M libcxx/include/__algorithm/ranges_partition.h
M libcxx/include/__algorithm/ranges_partition_copy.h
M libcxx/include/__algorithm/ranges_partition_point.h
M libcxx/include/__algorithm/ranges_pop_heap.h
M libcxx/include/__algorithm/ranges_prev_permutation.h
M libcxx/include/__algorithm/ranges_push_heap.h
M libcxx/include/__algorithm/ranges_remove.h
M libcxx/include/__algorithm/ranges_remove_copy.h
M libcxx/include/__algorithm/ranges_remove_copy_if.h
M libcxx/include/__algorithm/ranges_remove_if.h
M libcxx/include/__algorithm/ranges_replace.h
M libcxx/include/__algorithm/ranges_replace_copy.h
M libcxx/include/__algorithm/ranges_replace_copy_if.h
M libcxx/include/__algorithm/ranges_replace_if.h
M libcxx/include/__algorithm/ranges_reverse.h
M libcxx/include/__algorithm/ranges_reverse_copy.h
M libcxx/include/__algorithm/ranges_rotate.h
M libcxx/include/__algorithm/ranges_rotate_copy.h
M libcxx/include/__algorithm/ranges_sample.h
M libcxx/include/__algorithm/ranges_search.h
M libcxx/include/__algorithm/ranges_search_n.h
M libcxx/include/__algorithm/ranges_set_difference.h
M libcxx/include/__algorithm/ranges_set_intersection.h
M libcxx/include/__algorithm/ranges_set_symmetric_difference.h
M libcxx/include/__algorithm/ranges_set_union.h
M libcxx/include/__algorithm/ranges_shuffle.h
M libcxx/include/__algorithm/ranges_sort.h
M libcxx/include/__algorithm/ranges_sort_heap.h
M libcxx/include/__algorithm/ranges_stable_partition.h
M libcxx/include/__algorithm/ranges_stable_sort.h
M libcxx/include/__algorithm/ranges_starts_with.h
M libcxx/include/__algorithm/ranges_swap_ranges.h
M libcxx/include/__algorithm/ranges_transform.h
M libcxx/include/__algorithm/ranges_unique.h
M libcxx/include/__algorithm/ranges_unique_copy.h
M libcxx/include/__algorithm/ranges_upper_bound.h
M libcxx/include/__atomic/atomic.h
M libcxx/include/__atomic/atomic_base.h
M libcxx/include/__atomic/atomic_flag.h
M libcxx/include/__atomic/atomic_ref.h
M libcxx/include/__config
M libcxx/include/__expected/expected.h
M libcxx/include/__iterator/advance.h
M libcxx/include/__iterator/distance.h
M libcxx/include/__iterator/next.h
M libcxx/include/__iterator/prev.h
M libcxx/include/__memory/ranges_construct_at.h
M libcxx/include/__memory/ranges_uninitialized_algorithms.h
M libcxx/include/__memory/uses_allocator_construction.h
M libcxx/include/__mutex/unique_lock.h
M libcxx/include/atomic
M libcxx/include/barrier
M libcxx/include/latch
M libcxx/include/semaphore
M libcxx/include/sstream
M libcxx/test/CMakeLists.txt
A libcxx/test/benchmarks/CMakeLists.txt
A libcxx/test/benchmarks/CartesianBenchmarks.h
A libcxx/test/benchmarks/ContainerBenchmarks.h
A libcxx/test/benchmarks/GenerateInput.h
A libcxx/test/benchmarks/Utilities.h
A libcxx/test/benchmarks/VariantBenchmarks.h
A libcxx/test/benchmarks/algorithms.partition_point.bench.cpp
A libcxx/test/benchmarks/algorithms/common.h
A libcxx/test/benchmarks/algorithms/count.bench.cpp
A libcxx/test/benchmarks/algorithms/equal.bench.cpp
A libcxx/test/benchmarks/algorithms/fill.bench.cpp
A libcxx/test/benchmarks/algorithms/find.bench.cpp
A libcxx/test/benchmarks/algorithms/for_each.bench.cpp
A libcxx/test/benchmarks/algorithms/lower_bound.bench.cpp
A libcxx/test/benchmarks/algorithms/make_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/make_heap_then_sort_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/min.bench.cpp
A libcxx/test/benchmarks/algorithms/min_max_element.bench.cpp
A libcxx/test/benchmarks/algorithms/minmax.bench.cpp
A libcxx/test/benchmarks/algorithms/mismatch.bench.cpp
A libcxx/test/benchmarks/algorithms/pop_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/pstl.stable_sort.bench.cpp
A libcxx/test/benchmarks/algorithms/push_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_contains.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_ends_with.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_make_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_make_heap_then_sort_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_pop_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_push_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_sort.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_sort_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/ranges_stable_sort.bench.cpp
A libcxx/test/benchmarks/algorithms/set_intersection.bench.cpp
A libcxx/test/benchmarks/algorithms/sort.bench.cpp
A libcxx/test/benchmarks/algorithms/sort_heap.bench.cpp
A libcxx/test/benchmarks/algorithms/stable_sort.bench.cpp
A libcxx/test/benchmarks/allocation.bench.cpp
A libcxx/test/benchmarks/atomic_wait.bench.cpp
A libcxx/test/benchmarks/atomic_wait_vs_mutex_lock.bench.cpp
A libcxx/test/benchmarks/deque.bench.cpp
A libcxx/test/benchmarks/deque_iterator.bench.cpp
A libcxx/test/benchmarks/exception_ptr.bench.cpp
A libcxx/test/benchmarks/filesystem.bench.cpp
A libcxx/test/benchmarks/format.bench.cpp
A libcxx/test/benchmarks/format_to.bench.cpp
A libcxx/test/benchmarks/format_to_n.bench.cpp
A libcxx/test/benchmarks/formatted_size.bench.cpp
A libcxx/test/benchmarks/formatter_float.bench.cpp
A libcxx/test/benchmarks/formatter_int.bench.cpp
A libcxx/test/benchmarks/function.bench.cpp
A libcxx/test/benchmarks/join_view.bench.cpp
A libcxx/test/benchmarks/lexicographical_compare_three_way.bench.cpp
A libcxx/test/benchmarks/libcxxabi/dynamic_cast.bench.cpp
A libcxx/test/benchmarks/libcxxabi/dynamic_cast_old_stress.bench.cpp
A libcxx/test/benchmarks/lit.cfg.py.in
A libcxx/test/benchmarks/lit.site.cfg.py.in
A libcxx/test/benchmarks/map.bench.cpp
A libcxx/test/benchmarks/monotonic_buffer.bench.cpp
A libcxx/test/benchmarks/numeric/gcd.bench.cpp
A libcxx/test/benchmarks/ordered_set.bench.cpp
A libcxx/test/benchmarks/random.bench.cpp
A libcxx/test/benchmarks/shared_mutex_vs_mutex.bench.cpp
A libcxx/test/benchmarks/std_format_spec_string_unicode.bench.cpp
A libcxx/test/benchmarks/std_format_spec_string_unicode_escape.bench.cpp
A libcxx/test/benchmarks/stop_token.bench.cpp
A libcxx/test/benchmarks/string.bench.cpp
A libcxx/test/benchmarks/stringstream.bench.cpp
A libcxx/test/benchmarks/system_error.bench.cpp
A libcxx/test/benchmarks/to_chars.bench.cpp
A libcxx/test/benchmarks/unordered_set_operations.bench.cpp
A libcxx/test/benchmarks/util_smartptr.bench.cpp
A libcxx/test/benchmarks/variant_visit_1.bench.cpp
A libcxx/test/benchmarks/variant_visit_2.bench.cpp
A libcxx/test/benchmarks/variant_visit_3.bench.cpp
A libcxx/test/benchmarks/vector_operations.bench.cpp
M libcxx/test/libcxx/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/vprint_unicode.pass.cpp
M libcxx/test/libcxx/input.output/iostream.format/output.streams/ostream.syn/includes.compile.pass.cpp
M libcxx/test/libcxx/input.output/iostream.format/print.fun/transcoding.pass.cpp
M libcxx/test/libcxx/input.output/iostream.format/print.fun/vprint_unicode_posix.pass.cpp
M libcxx/test/libcxx/input.output/iostream.format/print.fun/vprint_unicode_windows.pass.cpp
A libcxx/test/libcxx/input.output/string.streams/stringbuf/const_sso_buffer.pass.cpp
M libcxx/test/libcxx/time/convert_to_tm.pass.cpp
M libcxx/test/libcxx/utilities/any/allocator.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.expected/and_then.mandates.verify.cpp
M libcxx/test/libcxx/utilities/expected/expected.expected/no_unique_address.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.expected/noexcept.extension.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.unexpected/noexcept.extension.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.void/no_unique_address.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.void/noexcept.extension.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.void/value.lwg3940.verify.cpp
M libcxx/test/libcxx/utilities/format/enable_insertable.compile.pass.cpp
M libcxx/test/libcxx/utilities/format/format.arguments/format.arg/arg_t.compile.pass.cpp
M libcxx/test/libcxx/utilities/format/format.formatter/format.context/types.compile.pass.cpp
M libcxx/test/libcxx/utilities/format/format.functions/ascii.pass.cpp
M libcxx/test/libcxx/utilities/format/format.functions/escaped_output.ascii.pass.cpp
M libcxx/test/libcxx/utilities/format/format.string/format.string.std/code_point_width_estimation.pass.cpp
M libcxx/test/libcxx/utilities/format/format.string/format.string.std/concepts_precision.h
M libcxx/test/libcxx/utilities/format/format.string/format.string.std/escaped_output.pass.cpp
M libcxx/test/libcxx/utilities/format/format.string/format.string.std/extended_grapheme_cluster.pass.cpp
M libcxx/test/libcxx/utilities/format/format.string/format.string.std/test_exception.h
M libcxx/test/libcxx/vendor/ibm/bad_function_call.pass.cpp
M libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/sort.pass.cpp
M libcxx/test/std/atomics/atomics.ref/is_always_lock_free.pass.cpp
M libcxx/test/std/atomics/atomics.types.generic/general.compile.pass.cpp
M libcxx/test/std/atomics/atomics.types.generic/pointer.compile.pass.cpp
M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_notify_all.pass.cpp
M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_notify_one.pass.cpp
M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_wait.pass.cpp
M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_wait_explicit.pass.cpp
M libcxx/test/std/concepts/concepts.lang/concept.common/common_with.compile.pass.cpp
M libcxx/test/std/concepts/concepts.lang/concept.commonref/common_reference.compile.pass.cpp
M libcxx/test/std/containers/Emplaceable.h
M libcxx/test/std/containers/NotConstructible.h
M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.functions.format.pass.cpp
M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.functions.tests.h
M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.functions.vformat.pass.cpp
M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.pass.cpp
M libcxx/test/std/containers/container.adaptors/container.adaptors.format/parse.pass.cpp
M libcxx/test/std/containers/container.adaptors/container.adaptors.format/types.compile.pass.cpp
M libcxx/test/std/containers/container.node/node_handle.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.format.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.tests.h
M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.vformat.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/parse.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/types.compile.pass.cpp
M libcxx/test/std/containers/unord/unord.map/compare.pass.cpp
M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_or_assign.pass.cpp
M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/try.emplace.pass.cpp
M libcxx/test/std/diagnostics/syserr/is_error_code_enum.pass.cpp
M libcxx/test/std/diagnostics/syserr/is_error_condition_enum.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcode/syserr.errcode.constructors/ErrorCodeEnum.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcode/syserr.errcode.constructors/lwg3629.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcode/syserr.errcode.modifiers/ErrorCodeEnum.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcode/syserr.errcode.modifiers/lwg3629.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcondition/syserr.errcondition.constructors/lwg3629.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcondition/syserr.errcondition.modifiers/lwg3629.pass.cpp
M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/hash.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/locale-specific_form.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/print.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/print_tests.h
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/println.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/vprint_nonunicode.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/vprint_unicode.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/includes.compile.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/no_file_description.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/print.file.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/print.sh.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/print_tests.h
M libcxx/test/std/input.output/iostream.format/print.fun/println.blank_line.sh.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/println.file.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/println.sh.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/vprint_nonunicode.file.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/vprint_nonunicode.sh.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/vprint_unicode.file.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/vprint_unicode.sh.cpp
M libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/default.pass.cpp
M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.readable/indirectly_readable.compile.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/user_defined_char_type.pass.cpp
M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.PR44847.pass.cpp
M libcxx/test/std/ranges/range.utility/range.subrange/ctor.range_size.pass.cpp
M libcxx/test/std/strings/basic.string/string.modifiers/string_append/push_back.pass.cpp
M libcxx/test/std/thread/thread.barrier/arrive.pass.cpp
M libcxx/test/std/thread/thread.barrier/arrive_and_drop.pass.cpp
M libcxx/test/std/thread/thread.barrier/arrive_and_wait.pass.cpp
M libcxx/test/std/thread/thread.barrier/completion.pass.cpp
M libcxx/test/std/thread/thread.barrier/ctor.compile.pass.cpp
M libcxx/test/std/thread/thread.barrier/max.pass.cpp
M libcxx/test/std/thread/thread.latch/arrive_and_wait.pass.cpp
M libcxx/test/std/thread/thread.latch/count_down.pass.cpp
M libcxx/test/std/thread/thread.latch/ctor.pass.cpp
M libcxx/test/std/thread/thread.latch/max.pass.cpp
M libcxx/test/std/thread/thread.latch/try_wait.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/implicit_ctad.pass.cpp
R libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_assign.compile.fail.cpp
A libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_assign.compile.pass.cpp
R libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_ctor.compile.fail.cpp
A libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_ctor.compile.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/default.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_assign.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_ctor.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_adopt_lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_defer_lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_for.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_until.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/unlock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/member_swap.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/nonmember_swap.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/release.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/mutex.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/op_bool.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/owns_lock.pass.cpp
A libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/types.compile.pass.cpp
A libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/types.h
R libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/types.pass.cpp
A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/assign.compile.pass.cpp
R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/assign.verify.cpp
R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/copy.verify.cpp
A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/ctor.copy.compile.pass.cpp
A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/ctor.default.pass.cpp
R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/default.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock_shared.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock_shared.pass.cpp
R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/assign.compile.fail.cpp
A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/assign.compile.pass.cpp
R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/copy.compile.fail.cpp
A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/ctor.copy.compile.pass.cpp
A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/ctor.default.pass.cpp
R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/default.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock_shared.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_for.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_for.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_until.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until.pass.cpp
M libcxx/test/std/thread/thread.semaphore/acquire.pass.cpp
M libcxx/test/std/thread/thread.semaphore/binary.pass.cpp
M libcxx/test/std/thread/thread.semaphore/ctor.compile.pass.cpp
M libcxx/test/std/thread/thread.semaphore/max.pass.cpp
M libcxx/test/std/thread/thread.semaphore/release.pass.cpp
M libcxx/test/std/thread/thread.semaphore/timed.pass.cpp
M libcxx/test/std/thread/thread.semaphore/try_acquire.pass.cpp
M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.format.pass.cpp
M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.tests.h
M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.vformat.pass.cpp
M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.pass.cpp
M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/parse.pass.cpp
M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/types.compile.pass.cpp
M libcxx/test/std/time/rep.h
M libcxx/test/std/time/time.syn/formatter.day.pass.cpp
M libcxx/test/std/time/time.syn/formatter.duration.pass.cpp
M libcxx/test/std/time/time.syn/formatter.file_time.pass.cpp
M libcxx/test/std/time/time.syn/formatter.hh_mm_ss.pass.cpp
M libcxx/test/std/time/time.syn/formatter.local_info.pass.cpp
M libcxx/test/std/time/time.syn/formatter.local_time.pass.cpp
M libcxx/test/std/time/time.syn/formatter.month.pass.cpp
M libcxx/test/std/time/time.syn/formatter.month_day.pass.cpp
M libcxx/test/std/time/time.syn/formatter.month_day_last.pass.cpp
M libcxx/test/std/time/time.syn/formatter.month_weekday.pass.cpp
M libcxx/test/std/time/time.syn/formatter.sys_info.pass.cpp
M libcxx/test/std/time/time.syn/formatter.sys_time.pass.cpp
M libcxx/test/std/time/time.syn/formatter.weekday.pass.cpp
M libcxx/test/std/time/time.syn/formatter.weekday_index.pass.cpp
M libcxx/test/std/time/time.syn/formatter.weekday_last.pass.cpp
M libcxx/test/std/time/time.syn/formatter.year.pass.cpp
M libcxx/test/std/time/time.syn/formatter.year_month.pass.cpp
M libcxx/test/std/time/time.syn/formatter.year_month_day.pass.cpp
M libcxx/test/std/time/time.syn/formatter.year_month_day_last.pass.cpp
M libcxx/test/std/time/time.syn/formatter.year_month_weekday.pass.cpp
M libcxx/test/std/time/time.syn/formatter.year_month_weekday_last.pass.cpp
M libcxx/test/std/time/time.syn/formatter.zoned_time.pass.cpp
M libcxx/test/std/time/time.syn/formatter_tests.h
M libcxx/test/std/utilities/expected/expected.bad/base.compile.pass.cpp
M libcxx/test/std/utilities/expected/expected.bad/ctor.error.pass.cpp
M libcxx/test/std/utilities/expected/expected.bad/error.member.pass.cpp
M libcxx/test/std/utilities/expected/expected.bad/void-specialization.pass.cpp
M libcxx/test/std/utilities/expected/expected.bad/what.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.U.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.unexpected.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.unexpected.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/emplace.intializer_list.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/emplace.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.convert.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.convert.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.default.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.inplace.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.inplace_init_list.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.u.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.unexpect.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.unexpect_init_list.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.unexpected.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.unexpected.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/dtor.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/equality/equality.T2.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/equality/equality.other_expected.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/equality/equality.unexpected.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/observers/arrow.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/observers/bool.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/observers/deref.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/observers/error.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/observers/has_value.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/observers/value.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/observers/value_or.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/swap/free.swap.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/swap/member.swap.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/assign/assign.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/assign/assign.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/ctad.compile.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.error.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.inplace.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.inplace_init_list.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/equality.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/observer/error.const_ref.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/observer/error.const_ref_ref.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/observer/error.ref.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/observer/error.ref_ref.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/swap/swap.free.pass.cpp
M libcxx/test/std/utilities/expected/expected.unexpected/swap/swap.member.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/emplace.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.convert.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.convert.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.default.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.inplace.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.unexpect.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.unexpect_init_list.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.unexpected.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.unexpected.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/dtor.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/equality/equality.other_expected.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/equality/equality.unexpected.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/observers/bool.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/observers/deref.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/observers/error.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/observers/has_value.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/observers/value.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/swap/free.swap.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/swap/member.swap.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg.store/make_format_args.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg.store/make_format_args.sh.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg.store/make_wformat_args.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/ctor.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/operator_bool.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/visit.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/visit.return_type.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.deprecated.verify.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.args/ctad.compile.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.args/ctor.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.args/get.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.args/types.compile.pass.cpp
M libcxx/test/std/utilities/format/format.formattable/concept.formattable.compile.pass.cpp
M libcxx/test/std/utilities/format/format.formattable/concept.formattable.float.compile.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/advance_to.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/arg.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/ctor.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/locale.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/out.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.locking/enable_nonlocking_formatter_optimization.compile.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.bool.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.c_string.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char.fsigned-char.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char.funsigned-char.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char_array.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.floating_point.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.handle.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.pointer.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.signed_integral.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.string.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.unsigned_integral.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/advance_to.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/begin.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/check_arg_id.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/check_arg_id.verify.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/ctor.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/end.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/next_arg_id.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/next_arg_id.verify.cpp
M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/types.compile.pass.cpp
M libcxx/test/std/utilities/format/format.functions/P2418.pass.cpp
M libcxx/test/std/utilities/format/format.functions/bug_81590.compile.pass.cpp
M libcxx/test/std/utilities/format/format.functions/escaped_output.unicode.pass.cpp
M libcxx/test/std/utilities/format/format.functions/fill.unicode.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format.locale.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format.locale.runtime_format.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format.locale.verify.cpp
M libcxx/test/std/utilities/format/format.functions/format.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format.runtime_format.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format.verify.cpp
M libcxx/test/std/utilities/format/format.functions/format_tests.h
M libcxx/test/std/utilities/format/format.functions/format_to.locale.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format_to.locale.verify.cpp
M libcxx/test/std/utilities/format/format.functions/format_to.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format_to.verify.cpp
M libcxx/test/std/utilities/format/format.functions/format_to_n.locale.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format_to_n.locale.verify.cpp
M libcxx/test/std/utilities/format/format.functions/format_to_n.pass.cpp
M libcxx/test/std/utilities/format/format.functions/format_to_n.verify.cpp
M libcxx/test/std/utilities/format/format.functions/formatted_size.locale.pass.cpp
M libcxx/test/std/utilities/format/format.functions/formatted_size.locale.verify.cpp
M libcxx/test/std/utilities/format/format.functions/formatted_size.pass.cpp
M libcxx/test/std/utilities/format/format.functions/formatted_size.verify.cpp
M libcxx/test/std/utilities/format/format.functions/locale-specific_form.pass.cpp
M libcxx/test/std/utilities/format/format.functions/unicode.pass.cpp
M libcxx/test/std/utilities/format/format.functions/vformat.locale.pass.cpp
M libcxx/test/std/utilities/format/format.functions/vformat.pass.cpp
M libcxx/test/std/utilities/format/format.functions/vformat_to.locale.pass.cpp
M libcxx/test/std/utilities/format/format.functions/vformat_to.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtdef/format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtdef/parse.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtdef/set_brackets.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtdef/set_separator.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtkind/format_kind.compile.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtkind/format_kind.verify.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtkind/range_format.compile.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.functions.format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.functions.vformat.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/parse.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.functions.format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.functions.vformat.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtset/parse.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.functions.format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.functions.vformat.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/parse.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.vformat.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.formatter/parse.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.formatter/set_brackets.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.formatter/set_separator.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.formatter/underlying.pass.cpp
M libcxx/test/std/utilities/format/format.string/format.string.std/lwg3720_arg_id_width_precision_allowed_types.pass.cpp
M libcxx/test/std/utilities/format/format.string/format.string.std/lwg3720_arg_id_width_precision_allowed_types.verify.cpp
M libcxx/test/std/utilities/format/format.tuple/format.functions.format.pass.cpp
M libcxx/test/std/utilities/format/format.tuple/format.functions.format.verify.cpp
M libcxx/test/std/utilities/format/format.tuple/format.functions.tests.h
M libcxx/test/std/utilities/format/format.tuple/format.functions.vformat.pass.cpp
M libcxx/test/std/utilities/format/format.tuple/format.pass.cpp
M libcxx/test/std/utilities/format/format.tuple/parse.pass.cpp
M libcxx/test/std/utilities/format/format.tuple/set_brackets.pass.cpp
M libcxx/test/std/utilities/format/format.tuple/set_separator.pass.cpp
M libcxx/test/std/utilities/format/types.compile.pass.cpp
M libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.types/difference_type.pass.cpp
M libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.types/size_type.pass.cpp
M libcxx/test/std/utilities/memory/allocator.uses/allocator.uses.construction/uses_allocator_construction_args.pass.cpp
M libcxx/test/std/utilities/meta/meta.trans/meta.trans.other/common_reference.compile.pass.cpp
M libcxx/test/std/utilities/meta/meta.trans/meta.trans.other/common_type.pass.cpp
M libcxx/test/std/utilities/optional/optional.hash/hash.pass.cpp
M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.helper/tuple_size_incomplete.pass.cpp
M libcxx/test/std/utilities/utility/pairs/pairs.pair/ctor.pair_like.pass.cpp
M libcxx/test/std/utilities/variant/variant.hash/hash.pass.cpp
M libcxx/test/std/utilities/variant/variant.visit.member/visit.pass.cpp
M libcxx/test/std/utilities/variant/variant.visit/visit.pass.cpp
M libcxx/test/support/Counter.h
M libcxx/test/support/format.functions.common.h
M libcxx/test/support/test.support/make_string_header.pass.cpp
M libcxx/test/support/test_basic_format_arg.h
M libcxxabi/test/vendor/ibm/aix_xlclang_nested_excp_32.pass.sh.s
M libcxxabi/test/vendor/ibm/aix_xlclang_nested_excp_64.pass.sh.s
M libcxxabi/test/vendor/ibm/aix_xlclang_passing_excp_obj_32.pass.sh.S
M libcxxabi/test/vendor/ibm/aix_xlclang_passing_excp_obj_64.pass.sh.S
M libcxxabi/test/vendor/ibm/cond_reg_restore.pass.cpp
M libcxxabi/test/vendor/ibm/vec_reg_restore.pass.cpp
M libunwind/test/aix_signal_unwind.pass.sh.S
M lld/ELF/Config.h
M lld/ELF/DWARF.cpp
M lld/ELF/Driver.cpp
M lld/ELF/ICF.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/LinkerScript.cpp
M lld/ELF/MarkLive.cpp
M lld/ELF/OutputSections.cpp
M lld/ELF/OutputSections.h
M lld/ELF/Relocations.cpp
M lld/ELF/Relocations.h
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Writer.cpp
M lld/MachO/BPSectionOrderer.cpp
M lld/MachO/Options.td
M lld/docs/ReleaseNotes.rst
M lld/docs/ld.lld.1
M lld/test/CMakeLists.txt
A lld/test/ELF/crel-rel-mixed.s
A lld/test/ELF/crel.s
M lld/test/ELF/debug-names.s
M lld/test/ELF/gc-sections.s
M lld/test/ELF/icf1.s
M lld/test/ELF/icf4.s
M lld/test/ELF/linkerscript/nocrossrefs.test
A lld/test/ELF/relocatable-crel-32.s
A lld/test/ELF/relocatable-crel.s
A lld/test/ELF/zsectionheader.s
M lld/test/MachO/bp-section-orderer-errs.s
M lldb/cmake/modules/AddLLDB.cmake
M lldb/include/lldb/Interpreter/CommandObject.h
M lldb/include/lldb/Symbol/UnwindPlan.h
M lldb/include/lldb/Target/Target.h
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/source/Commands/CommandObjectBreakpoint.cpp
M lldb/source/Commands/CommandObjectBreakpointCommand.cpp
M lldb/source/Commands/CommandObjectDisassemble.cpp
M lldb/source/Commands/CommandObjectExpression.cpp
M lldb/source/Commands/CommandObjectFrame.cpp
M lldb/source/Commands/CommandObjectProcess.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Commands/CommandObjectThread.cpp
M lldb/source/Commands/CommandObjectWatchpoint.cpp
M lldb/source/Commands/CommandObjectWatchpoint.h
M lldb/source/Commands/CommandObjectWatchpointCommand.cpp
M lldb/source/Interpreter/CommandObject.cpp
M lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_arm.h
M lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_mips64.h
M lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_powerpc.h
M lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp
M lldb/source/Symbol/UnwindPlan.cpp
M lldb/source/Target/RegisterContextUnwind.cpp
M lldb/source/Target/Target.cpp
M lldb/source/Target/TargetProperties.td
M lldb/test/API/api/multiple-debuggers/TestMultipleDebuggers.py
M lldb/test/API/api/multiple-debuggers/multi-process-driver.cpp
M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
M lldb/test/Shell/SymbolFile/DWARF/vla.cpp
M lldb/tools/lldb-server/LLDBServerUtilities.cpp
M llvm/CMakeLists.txt
M llvm/CODE_OWNERS.TXT
M llvm/cmake/modules/AddLLVM.cmake
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/cmake/modules/HandleLLVMStdlib.cmake
R llvm/cmake/modules/LLVMCheckLinkerFlag.cmake
M llvm/docs/GlobalISel/MIRPatterns.rst
M llvm/include/llvm-c/Error.h
M llvm/include/llvm/ADT/GenericCycleImpl.h
M llvm/include/llvm/ADT/STLExtras.h
M llvm/include/llvm/Analysis/GenericDomTreeUpdater.h
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/include/llvm/Analysis/TargetLibraryInfo.def
M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutor.h
M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutorImpl.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/CodeGen/ValueTypes.td
M llvm/include/llvm/CodeGenTypes/MachineValueType.h
M llvm/include/llvm/IR/ConstantRange.h
M llvm/include/llvm/LinkAllPasses.h
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCSection.h
M llvm/include/llvm/ProfileData/InstrProf.h
M llvm/include/llvm/ProfileData/InstrProfData.inc
M llvm/include/llvm/SandboxIR/SandboxIR.h
M llvm/include/llvm/SandboxIR/SandboxIRValues.def
M llvm/include/llvm/SandboxIR/Tracker.h
M llvm/include/llvm/SandboxIR/Use.h
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/include/llvm/Transforms/Instrumentation/AddressSanitizer.h
M llvm/include/llvm/Transforms/Instrumentation/DataFlowSanitizer.h
M llvm/include/llvm/Transforms/Instrumentation/MemorySanitizer.h
M llvm/include/llvm/Transforms/Instrumentation/ThreadSanitizer.h
M llvm/include/llvm/Transforms/Scalar.h
M llvm/include/llvm/Transforms/Scalar/LowerConstantIntrinsics.h
M llvm/lib/Analysis/DomTreeUpdater.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/CodeGen/EarlyIfConversion.cpp
M llvm/lib/CodeGen/GlobalISel/LegalityPredicates.cpp
M llvm/lib/CodeGen/MIRParser/MIParser.cpp
M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
M llvm/lib/CodeGen/RegisterBankInfo.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/TargetPassConfig.cpp
M llvm/lib/IR/ConstantRange.cpp
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCContext.cpp
M llvm/lib/MC/MCSection.cpp
M llvm/lib/Object/MachOObjectFile.cpp
M llvm/lib/SandboxIR/SandboxIR.cpp
M llvm/lib/SandboxIR/Tracker.cpp
M llvm/lib/Support/Error.cpp
M llvm/lib/Support/Windows/Process.inc
M llvm/lib/Support/Windows/Signals.inc
M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/SVEInstrFormats.td
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrFormats.td
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILConstants.h
M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
M llvm/lib/Target/DirectX/DXILOpBuilder.h
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/lib/Target/DirectX/DXILPrepare.cpp
M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
M llvm/lib/Target/DirectX/DXILResourceAnalysis.cpp
M llvm/lib/Target/DirectX/DXILResourceAnalysis.h
M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
M llvm/lib/Target/DirectX/DirectX.h
M llvm/lib/Target/DirectX/DirectXPassRegistry.def
M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
M llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp
M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/README.txt
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
M llvm/lib/Target/RISCV/GISel/RISCVRegisterBankInfo.cpp
M llvm/lib/Target/RISCV/RISCVCodeGenPrepare.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/RISCV/RISCVSubtarget.h
M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
M llvm/lib/Target/SystemZ/SystemZInstrInfo.td
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86Subtarget.cpp
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
M llvm/lib/Transforms/Scalar/LoopSink.cpp
M llvm/lib/Transforms/Scalar/LowerConstantIntrinsics.cpp
M llvm/lib/Transforms/Scalar/Scalar.cpp
M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
M llvm/lib/Transforms/Utils/LCSSA.cpp
M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Analysis/CostModel/AMDGPU/canonicalize.ll
A llvm/test/Analysis/CycleInfo/unreachable-predecessor.ll
M llvm/test/Analysis/ScalarEvolution/finite-trip-count.ll
M llvm/test/Analysis/ScalarEvolution/ne-overflow.ll
M llvm/test/Analysis/ScalarEvolution/trip-count-implied-addrec.ll
M llvm/test/Analysis/ScalarEvolution/trip-count-scalable-stride.ll
M llvm/test/CodeGen/AArch64/O0-pipeline.ll
M llvm/test/CodeGen/AArch64/O3-pipeline.ll
A llvm/test/CodeGen/AArch64/peephole-csel.ll
A llvm/test/CodeGen/AArch64/peephole-csel.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/crash-stack-address-O0.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch-init.gfx.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement-stack-lower.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-frame-index.mir
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.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/copysign-simplify-demanded-bits.ll
M llvm/test/CodeGen/AMDGPU/dag-divergence.ll
A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-mov-b32.mir
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch-svs.ll
M llvm/test/CodeGen/AMDGPU/frame-index.mir
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.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/inline-asm.ll
M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
A llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.gfx10.ll
A llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll
M llvm/test/CodeGen/AMDGPU/sdag-print-divergence.ll
M llvm/test/CodeGen/AMDGPU/simplify-libcalls.ll
M llvm/test/CodeGen/AMDGPU/vselect.ll
M llvm/test/CodeGen/AMDGPU/while-break.ll
M llvm/test/CodeGen/AMDGPU/wqm.ll
M llvm/test/CodeGen/ARM/O3-pipeline.ll
M llvm/test/CodeGen/DirectX/UAVMetadata.ll
M llvm/test/CodeGen/DirectX/abs.ll
M llvm/test/CodeGen/DirectX/acos.ll
M llvm/test/CodeGen/DirectX/acos_error.ll
M llvm/test/CodeGen/DirectX/asin.ll
M llvm/test/CodeGen/DirectX/asin_error.ll
M llvm/test/CodeGen/DirectX/atan.ll
M llvm/test/CodeGen/DirectX/atan_error.ll
M llvm/test/CodeGen/DirectX/cbuf.ll
M llvm/test/CodeGen/DirectX/ceil.ll
M llvm/test/CodeGen/DirectX/ceil_error.ll
M llvm/test/CodeGen/DirectX/clamp.ll
M llvm/test/CodeGen/DirectX/comput_ids.ll
M llvm/test/CodeGen/DirectX/cos.ll
M llvm/test/CodeGen/DirectX/cos_error.ll
M llvm/test/CodeGen/DirectX/cosh.ll
M llvm/test/CodeGen/DirectX/cosh_error.ll
M llvm/test/CodeGen/DirectX/dot2_error.ll
M llvm/test/CodeGen/DirectX/dot3_error.ll
M llvm/test/CodeGen/DirectX/dot4_error.ll
M llvm/test/CodeGen/DirectX/exp.ll
M llvm/test/CodeGen/DirectX/exp2_error.ll
M llvm/test/CodeGen/DirectX/fabs.ll
M llvm/test/CodeGen/DirectX/fdot.ll
A llvm/test/CodeGen/DirectX/flattened_thread_id_in_group_error.ll
M llvm/test/CodeGen/DirectX/floor.ll
M llvm/test/CodeGen/DirectX/floor_error.ll
M llvm/test/CodeGen/DirectX/fmax.ll
M llvm/test/CodeGen/DirectX/fmin.ll
M llvm/test/CodeGen/DirectX/frac_error.ll
A llvm/test/CodeGen/DirectX/group_id_error.ll
M llvm/test/CodeGen/DirectX/idot.ll
M llvm/test/CodeGen/DirectX/isinf.ll
M llvm/test/CodeGen/DirectX/isinf_error.ll
M llvm/test/CodeGen/DirectX/log.ll
M llvm/test/CodeGen/DirectX/log10.ll
M llvm/test/CodeGen/DirectX/log2.ll
M llvm/test/CodeGen/DirectX/log2_error.ll
M llvm/test/CodeGen/DirectX/pow.ll
M llvm/test/CodeGen/DirectX/reversebits.ll
M llvm/test/CodeGen/DirectX/round.ll
M llvm/test/CodeGen/DirectX/round_error.ll
M llvm/test/CodeGen/DirectX/rsqrt.ll
M llvm/test/CodeGen/DirectX/rsqrt_error.ll
M llvm/test/CodeGen/DirectX/sin.ll
M llvm/test/CodeGen/DirectX/sin_error.ll
A llvm/test/CodeGen/DirectX/sin_no_stage_error.ll
M llvm/test/CodeGen/DirectX/sinh.ll
M llvm/test/CodeGen/DirectX/sinh_error.ll
M llvm/test/CodeGen/DirectX/smax.ll
M llvm/test/CodeGen/DirectX/smin.ll
M llvm/test/CodeGen/DirectX/sqrt.ll
M llvm/test/CodeGen/DirectX/sqrt_error.ll
M llvm/test/CodeGen/DirectX/tan.ll
M llvm/test/CodeGen/DirectX/tan_error.ll
M llvm/test/CodeGen/DirectX/tanh.ll
M llvm/test/CodeGen/DirectX/tanh_error.ll
A llvm/test/CodeGen/DirectX/thread_id_error.ll
A llvm/test/CodeGen/DirectX/thread_id_in_group_error.ll
M llvm/test/CodeGen/DirectX/trunc.ll
M llvm/test/CodeGen/DirectX/trunc_error.ll
M llvm/test/CodeGen/DirectX/umax.ll
M llvm/test/CodeGen/DirectX/umin.ll
A llvm/test/CodeGen/Hexagon/cext-opt-block-addr.mir
A llvm/test/CodeGen/Hexagon/hvx-concat-lower.ll
M llvm/test/CodeGen/LoongArch/O0-pipeline.ll
M llvm/test/CodeGen/LoongArch/opt-pipeline.ll
M llvm/test/CodeGen/LoongArch/ucmp.ll
M llvm/test/CodeGen/LoongArch/unaligned-memcpy-inline.ll
M llvm/test/CodeGen/NVPTX/math-intrins-sm80-ptx70-autoupgrade.ll
M llvm/test/CodeGen/NVPTX/math-intrins.ll
M llvm/test/CodeGen/PowerPC/O0-pipeline.ll
M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-load.mir
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-store.mir
A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/load.mir
A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/store.mir
M llvm/test/CodeGen/RISCV/O0-pipeline.ll
M llvm/test/CodeGen/RISCV/O3-pipeline.ll
M llvm/test/CodeGen/RISCV/avgflooru.ll
A llvm/test/CodeGen/RISCV/riscv-tail-dup-size.ll
M llvm/test/CodeGen/RISCV/rvv/abs-vp.ll
M llvm/test/CodeGen/RISCV/rvv/bitreverse-vp.ll
M llvm/test/CodeGen/RISCV/rvv/bswap-vp.ll
M llvm/test/CodeGen/RISCV/rvv/commutable.ll
M llvm/test/CodeGen/RISCV/rvv/ctpop-vp.ll
M llvm/test/CodeGen/RISCV/rvv/extractelt-int-rv32.ll
M llvm/test/CodeGen/RISCV/rvv/extractelt-int-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-abs-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-calling-conv.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extload-truncstore.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract-i1.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-extract-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-vpload.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vnmsac-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect-vp-bf16.ll
M llvm/test/CodeGen/RISCV/rvv/insertelt-int-rv32.ll
M llvm/test/CodeGen/RISCV/rvv/insertelt-int-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/legalize-store-sdnode.ll
R llvm/test/CodeGen/RISCV/rvv/mask-exts-truncs-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/mask-exts-truncs-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/mask-exts-truncs.ll
M llvm/test/CodeGen/RISCV/rvv/mscatter-combine.ll
M llvm/test/CodeGen/RISCV/rvv/regalloc-fast-crash.ll
M llvm/test/CodeGen/RISCV/rvv/strided-vpload.ll
M llvm/test/CodeGen/RISCV/rvv/unmasked-tu.ll
M llvm/test/CodeGen/RISCV/rvv/vfmerge.ll
M llvm/test/CodeGen/RISCV/rvv/vle.ll
M llvm/test/CodeGen/RISCV/rvv/vleff.ll
M llvm/test/CodeGen/RISCV/rvv/vloxei-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vloxei.ll
M llvm/test/CodeGen/RISCV/rvv/vlse.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv32-dead.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv64-dead.ll
M llvm/test/CodeGen/RISCV/rvv/vluxei-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vluxei.ll
M llvm/test/CodeGen/RISCV/rvv/vmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmerge.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.s.x-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.s.x-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vmv.s.x.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.v.v-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.v.v-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vmv.v.v.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.v.x-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.v.x-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vmv.v.x.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.x.s-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vmv.x.s-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vmv.x.s.ll
M llvm/test/CodeGen/RISCV/rvv/vnmsac-vp.ll
R llvm/test/CodeGen/RISCV/rvv/vrgather-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vrgather-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vrgather.ll
R llvm/test/CodeGen/RISCV/rvv/vrgatherei16-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vrgatherei16-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vrgatherei16.ll
R llvm/test/CodeGen/RISCV/rvv/vsadd-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vsadd-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vsadd.ll
R llvm/test/CodeGen/RISCV/rvv/vsaddu-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vsaddu-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vsaddu.ll
M llvm/test/CodeGen/RISCV/rvv/vse.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-vp-bf16.ll
M llvm/test/CodeGen/RISCV/rvv/vslide1down-constant-vl-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vslide1down-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vslide1down-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vslide1down.ll
M llvm/test/CodeGen/RISCV/rvv/vslide1up-constant-vl-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vslide1up-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vslide1up-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vslide1up.ll
R llvm/test/CodeGen/RISCV/rvv/vsmul-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vsmul-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vsmul.ll
M llvm/test/CodeGen/RISCV/rvv/vsoxei-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vsoxei.ll
M llvm/test/CodeGen/RISCV/rvv/vsse.ll
R llvm/test/CodeGen/RISCV/rvv/vssub-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vssub-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vssub.ll
R llvm/test/CodeGen/RISCV/rvv/vssubu-rv32.ll
R llvm/test/CodeGen/RISCV/rvv/vssubu-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/vssubu.ll
M llvm/test/CodeGen/RISCV/rvv/vsuxei-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vsuxei.ll
M llvm/test/CodeGen/RISCV/ucmp.ll
A llvm/test/CodeGen/SystemZ/Large/large-ada-01.py
A llvm/test/CodeGen/SystemZ/Large/large-ada-02.py
M llvm/test/CodeGen/X86/O0-pipeline.ll
A llvm/test/CodeGen/X86/apx/i386-ndd.ll
M llvm/test/CodeGen/X86/apx/setzucc.ll
A llvm/test/CodeGen/X86/avgflooru-i128.ll
M llvm/test/CodeGen/X86/avgflooru-scalar.ll
M llvm/test/CodeGen/X86/fp-strict-libcalls-msvc32.ll
M llvm/test/CodeGen/X86/nomerge.ll
M llvm/test/CodeGen/X86/opt-pipeline.ll
M llvm/test/Instrumentation/InstrProfiling/mcdc.ll
M llvm/test/MC/AMDGPU/gfx10_unsupported.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop1-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
M llvm/test/MC/Disassembler/AMDGPU/decode-err.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
A llvm/test/MC/ELF/layout-interdependency2.s
M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-variadics.td
M llvm/test/TableGen/GlobalISelCombinerEmitter/operand-types.td
M llvm/test/TableGen/GlobalISelCombinerEmitter/typeof-errors.td
A llvm/test/TableGen/GlobalISelCombinerEmitter/variadic-errors.td
M llvm/test/TableGen/dag-isel-regclass-emit-enum.td
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f32-agent.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f32-system.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f64-agent.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f64-system.ll
M llvm/test/Transforms/CorrelatedValuePropagation/shl.ll
M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
M llvm/test/Transforms/InstCombine/bitcast.ll
A llvm/test/Transforms/InstCombine/mem-intrinsics.ll
M llvm/test/Transforms/InstCombine/mempcpy.ll
A llvm/test/Transforms/InstCombine/nan.ll
A llvm/test/Transforms/InstCombine/nanl-fp128.ll
A llvm/test/Transforms/InstCombine/nanl-fp80.ll
A llvm/test/Transforms/InstCombine/nanl-ppc-fp128.ll
M llvm/test/Transforms/LoopVectorize/X86/predicate-switch.ll
M llvm/test/Transforms/LoopVectorize/predicate-switch.ll
A llvm/test/Transforms/LoopVectorize/vplan-predicate-switch.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-double-row-major.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-double.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-i32-row-major.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-i32.ll
M llvm/test/Transforms/MemProfContextDisambiguation/tailcall.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/loadorder.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/packed-math.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/slp-v2f16.ll
A llvm/test/Transforms/SLPVectorizer/X86/extract-vectorized-operand.ll
M llvm/test/Transforms/SLPVectorizer/revec.ll
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_isel.ll.expected
A llvm/test/tools/llvm-objdump/BPF/disassemble-symbolize-operands.s
M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
M llvm/tools/llvm-objdump/llvm-objdump.cpp
M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
M llvm/unittests/IR/ConstantRangeTest.cpp
M llvm/unittests/IR/DominatorTreeTest.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
M llvm/unittests/SandboxIR/TrackerTest.cpp
M llvm/unittests/Support/ErrorTest.cpp
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
M llvm/utils/TableGen/Common/GlobalISel/CodeExpander.h
M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h
M llvm/utils/TableGen/Common/GlobalISel/Patterns.cpp
M llvm/utils/TableGen/Common/GlobalISel/Patterns.h
M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
M llvm/utils/TableGen/DXILEmitter.cpp
M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
M llvm/utils/TableGen/GlobalISelEmitter.cpp
M llvm/utils/TableGen/VTEmitter.cpp
M mlir/include/mlir/Dialect/ControlFlow/IR/ControlFlowOps.td
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.h
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
M mlir/include/mlir/Dialect/SCF/Utils/Utils.h
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensor.h
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorAttrDefs.td
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
M mlir/lib/Conversion/SCFToOpenMP/SCFToOpenMP.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
M mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/lib/Dialect/SCF/Utils/Utils.cpp
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseIterationToScf.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseSpaceCollapse.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.h
M mlir/lib/Transforms/OpStats.cpp
M mlir/lib/Transforms/PrintIR.cpp
M mlir/lib/Transforms/ViewOpGraph.cpp
M mlir/python/mlir/runtime/np_to_memref.py
M mlir/python/requirements.txt
M mlir/test/Conversion/ArithToEmitC/arith-to-emitc-unsupported.mlir
M mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir
M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
M mlir/test/Dialect/Linalg/canonicalize.mlir
M mlir/test/Dialect/Linalg/tile-tensors.mlir
M mlir/test/Dialect/Linalg/tile-to-forall.mlir
M mlir/test/Dialect/Linalg/transform-op-tile.mlir
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
M mlir/test/Dialect/SparseTensor/invalid.mlir
M mlir/test/Dialect/SparseTensor/roundtrip.mlir
M mlir/test/Dialect/SparseTensor/sparse_kernels_to_iterator.mlir
M mlir/test/Dialect/Vector/vector-transfer-flatten.mlir
M mlir/test/Dialect/Vector/vector-transfer-permutation-lowering.mlir
M mlir/test/Interfaces/TilingInterface/tile-and-fuse-using-interface.mlir
M mlir/test/Interfaces/TilingInterface/tile-pad-using-interface.mlir
M mlir/test/Interfaces/TilingInterface/tile-using-interface.mlir
M mlir/test/Interfaces/TilingInterface/tile-using-scfforall.mlir
M mlir/test/Target/LLVMIR/openmp-private.mlir
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
M mlir/test/mlir-cpu-runner/math-polynomial-approx.mlir
M mlir/test/python/execution_engine.py
M mlir/utils/spirv/gen_spirv_dialect.py
M offload/include/Shared/EnvironmentVar.h
M offload/plugins-nextgen/amdgpu/dynamic_hsa/hsa.h
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/include/ErrorReporting.h
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/plugins-nextgen/common/src/PluginInterface.cpp
A offload/test/sanitizer/kernel_crash.c
A offload/test/sanitizer/kernel_crash_async.c
A offload/test/sanitizer/kernel_crash_many.c
A offload/test/sanitizer/kernel_crash_single.c
A offload/test/sanitizer/kernel_trap.c
A offload/test/sanitizer/kernel_trap_async.c
A offload/test/sanitizer/kernel_trap_many.c
M openmp/docs/design/Runtimes.rst
M polly/lib/Analysis/ScopBuilder.cpp
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Rebase
Created using spr 1.3.5
Compare: https://github.com/llvm/llvm-project/compare/b9cb0bdcda6d...da5311a10608
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