[all-commits] [llvm/llvm-project] 207004: [LLVM][AArch64] Set hasAndNot() to true for scalab...
Koakuma via All-commits
all-commits at lists.llvm.org
Thu May 22 18:50:32 PDT 2025
Branch: refs/heads/users/koachan/spr/sparc-use-op-then-halve-instructions-when-we-have-vis3
Home: https://github.com/llvm/llvm-project
Commit: 2070044c17242ad290665dc46bac5cd1c2b5e2c1
https://github.com/llvm/llvm-project/commit/2070044c17242ad290665dc46bac5cd1c2b5e2c1
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/test/CodeGen/AArch64/sve2-bsl.ll
M llvm/test/CodeGen/AArch64/vselect-constants.ll
Log Message:
-----------
[LLVM][AArch64] Set hasAndNot() to true for scalable vectors. (#139755)
NOTE: I've not added an SVE check because the use of scalable vectors
implies SVE or StreamingSVE must be available.
Commit: a2a280e58c95f76185ab93c1b73cb1608318b699
https://github.com/llvm/llvm-project/commit/a2a280e58c95f76185ab93c1b73cb1608318b699
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M openmp/runtime/src/ompt-internal.h
M openmp/runtime/src/ompt-specific.h
Log Message:
-----------
[OpenMP] Fix __builtin_return_address calls for SPARC (#138520)
`libomp` uses `__builtin_return_address` in two places. However, on some
targets those calls need to wrapped in `___builtin_extract_return_addr`
to get at the actual return address. SPARC is among those targets and
the only one where `clang` actually implements this, cf. [[clang][Sparc]
Fix __builtin_extract_return_addr
etc.](https://reviews.llvm.org/D91607). `compiler-rt` needed the same
adjustment, cf. [[sanitizer_common][test] Enable tests on
SPARC](https://reviews.llvm.org/D91608). On other targets, this is a
no-op. However, there are more targets that have the same issue and
`gcc`, unlike `clang`, correctly implements it, so there might be issues
when building `libomp` with `gcc`.
This patch adds the necessary calls.
Tested on `sparcv9-sun-solaris2.11`, `sparc64-unknown-linux-gnu`,
`amd64-pc-solaris2.11`, and `x86_64-pc-linux-gnu`.
Commit: ca912c7c08156e0c20cdd25f7cb0d3a277847a71
https://github.com/llvm/llvm-project/commit/ca912c7c08156e0c20cdd25f7cb0d3a277847a71
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
R llvm/test/CodeGen/NVPTX/shift-opt.ll
Log Message:
-----------
Revert bbc5221c95343d8d6869dce83d6fcf183767bd9f "[DAGCombiner] Fold pattern for srl-shl-zext" (#139876)
Reverts llvm/llvm-project#138290 due to buildbot failures in shift-opt.ll
Commit: b96c5df04e55396572a7c12cb6505f5a116072cb
https://github.com/llvm/llvm-project/commit/b96c5df04e55396572a7c12cb6505f5a116072cb
Author: yingopq <115543042+yingopq at users.noreply.github.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Target/Mips/MipsInstrInfo.cpp
M llvm/lib/Target/Mips/MipsInstrInfo.h
A llvm/test/CodeGen/Mips/unreachable.ll
Log Message:
-----------
[Mips] Add support of MipsInstrInfo::getNop() (#139863)
Fix compile crash when using __builtin_unreachable.
Fix #134913.
Commit: 3abd77ac157f87f2fa0c8083b9f27c1dd2896a25
https://github.com/llvm/llvm-project/commit/3abd77ac157f87f2fa0c8083b9f27c1dd2896a25
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/lib/Parse/ParseOpenMP.cpp
A clang/test/OpenMP/openmp_workshare.c
Log Message:
-----------
[clang][OpenMP] Treat "workshare" as unknown OpenMP directive (#139793)
The "workshare" construct is only present in Fortran. The common OpenMP
code does treat it as any other directive, but in clang we need to
reject it, and do so gracefully before it encounters an internal
assertion.
Fixes https://github.com/llvm/llvm-project/issues/139424
Commit: e06363f80f95b53a433762d0561741277521241e
https://github.com/llvm/llvm-project/commit/e06363f80f95b53a433762d0561741277521241e
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Semantics/check-omp-structure.cpp
A flang/test/Semantics/OpenMP/cancellation-construct-type.f90
Log Message:
-----------
[flang][OpenMP] Verify uses of OmpCancellationConstructTypeClause (#139743)
Some directive names can be used as clauses, for example in "cancel". In
case where a directive name is misplaced, it could be interpreted as a
clause.
Verify that such uses are valid, and emit a diagnostic message if not.
Fixes https://github.com/llvm/llvm-project/issues/138224
Commit: 8c67d2568124e8c1fcdef06e69e388ae489c728c
https://github.com/llvm/llvm-project/commit/8c67d2568124e8c1fcdef06e69e388ae489c728c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineGatherScatter - pull out repeated variables. NFC.
Commit: fb07683bc2402a75f6a5c568cdab195b695cd322
https://github.com/llvm/llvm-project/commit/fb07683bc2402a75f6a5c568cdab195b695cd322
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
A llvm/test/CodeGen/NVPTX/shift-opt.ll
Log Message:
-----------
[NVPTX] Add baseline srl-shl-zext tests from #138290 (#139878)
Commit: cdabce0c1b84239e335406c6a8f0429577b7186a
https://github.com/llvm/llvm-project/commit/cdabce0c1b84239e335406c6a8f0429577b7186a
Author: Vadim Curcă <80581374+VadimCurca at users.noreply.github.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M mlir/lib/Transforms/CompositePass.cpp
M mlir/test/Transforms/composite-pass.mlir
Log Message:
-----------
[MLIR] Remove extra 'any' from CompositePass inner pipeline string (#139877)
When a `CompositePass` is created programmatically, it incorrectly
prepends an extra `any` to the inner pipeline string. For example:
```c++
passManager.nestAny().addPass(createCompositeFixedPointPass(
"Pass1AndPass2",
[](OpPassManager &nestedPassManger) {
nestedPassManger.addPass(createPass1());
nestedPassManger.addPass(createPass2());
},
```
This would result in the following pipeline string:
```
any(composite-fixed-point-pass{max-iterations=3 name=Pass1AndPass2
pipeline=any(pass1,pass2)})
```
This commit fixes this issue, resulting in the pipeline string:
```
any(composite-fixed-point-pass{max-iterations=3 name=Pass1AndPass2
pipeline=pass1,pass2})
```
Commit: 2f2c327017598b16045b66c49e9a4c333d3b9dfe
https://github.com/llvm/llvm-project/commit/2f2c327017598b16045b66c49e9a4c333d3b9dfe
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/utils/TableGen/X86RecognizableInstr.cpp
M llvm/utils/TableGen/X86RecognizableInstr.h
Log Message:
-----------
[NFC][TableGen] Use StringRef in X86RecognizableInstr (#139648)
- Use `StringRef` instead of `std::string` in several functions.
- Fix some variable names to conform to LLVM coding standard.
- Use llvm::function_ref instead of function pointer for `handleOperand`
argument.
Commit: 7c57e82456c882b2e8cca728e3ff79030c9ae619
https://github.com/llvm/llvm-project/commit/7c57e82456c882b2e8cca728e3ff79030c9ae619
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/include/llvm/TableGen/Record.h
M llvm/lib/TableGen/Record.cpp
Log Message:
-----------
[NFC][TableGen] Code cleanup in Record.h/cpp (#138876)
- Use range for loops in several places.
- Change some variable names to conform to LLVM coding standard.
- Use ListSeparator instead of manual code to generate comma interleaved
strings.
- Remove unnecessary copies in SETDAGOP evaluation in BinOpInit::Fold.
- Eliminate duplicated code in the 2 overloads of RecordVal::setValue.
- Use explicit type in some range for loops.
- Tested by verifying that all the .inc files generated by building all
the *CommonTableGen targets stay unchanged.
Commit: 8732d0f38961687b8d2f588d35f9164784660862
https://github.com/llvm/llvm-project/commit/8732d0f38961687b8d2f588d35f9164784660862
Author: Steven Perron <stevenperron at google.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
A llvm/test/CodeGen/SPIRV/global-var-name-align.ll
A llvm/test/CodeGen/SPIRV/hlsl-resources/Packed.ll
Log Message:
-----------
[SPIRV] Don't add CPacked and Alignement decorations for Vulkan (#138711)
Packed structs get a different layout than a struct that is not packed.
This is handled by assigning different offset decoration when
appropriate. The `CPacked` decoration is not required, and is in fact
not valid when creating a shader.
Similaraly the alignment decoration is not allows when creating a
shader. We must avoid generating that decoration.
Fixes https://github.com/llvm/llvm-project/issues/138268
Commit: a31d7d1a2480708e665bd8556a5f0013f6350322
https://github.com/llvm/llvm-project/commit/a31d7d1a2480708e665bd8556a5f0013f6350322
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/lib/Headers/__clang_hip_cmath.h
Log Message:
-----------
[NFC] Typo in __clang_hip_cmath.h (#139892)
ambibuity -> ambiguity
Commit: 1914184e5c84d5e978512cfe790e3653a02bcb8e
https://github.com/llvm/llvm-project/commit/1914184e5c84d5e978512cfe790e3653a02bcb8e
Author: Marina Taylor <marina_taylor at apple.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Transforms/ObjCARC/ARCRuntimeEntryPoints.h
M llvm/lib/Transforms/ObjCARC/CMakeLists.txt
M llvm/lib/Transforms/ObjCARC/ObjCARC.cpp
M llvm/lib/Transforms/ObjCARC/ObjCARC.h
M llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
M llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
A llvm/test/Transforms/ObjCARC/contract-attached-call-retain-to-claim.ll
Log Message:
-----------
Reland "[ObjCARC][Contract] Optimize bundled RetainRV to ClaimRV" (#139889)
This teaches ObjCARCContract to transform attachedcall bundles
referencing objc_retainAutoreleasedReturnValue to instead reference
objc_claimAutoreleasedReturnValue.
The only distinction between the two is that the latter is required to
be guaranteed to immediately follow the call it's attached to, and, by
construction, the bundles always achieve that by:
- not being separable from the call through IR and the backend
- not getting the marker emitted when claimARV is the attachedcall.
This is enabled only for arm64, arm64e, and arm64_32 on macOS13/iOS16
and related operating systems.
Co-authored-by: Ahmed Bougacha <ahmed at bougacha.org>
Commit: 7e7871d3f58b9da72ca180fcd7f0d2da3f92ec4a
https://github.com/llvm/llvm-project/commit/7e7871d3f58b9da72ca180fcd7f0d2da3f92ec4a
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M lldb/source/Target/Process.cpp
Log Message:
-----------
[lldb] Clear loaded sections even earlier
Follow-up to #138892 fixing breakage on windows. Calling
ClearAllLoadedSections earlier is necessary to avoid throwing out the
work done by the windows process plugin.
Commit: 7a9fd62278a2eab8160fa476c3a64e66786f99ad
https://github.com/llvm/llvm-project/commit/7a9fd62278a2eab8160fa476c3a64e66786f99ad
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/blend-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr88802.ll
M llvm/test/Transforms/LoopVectorize/if-conversion-nest.ll
M llvm/test/Transforms/LoopVectorize/if-reduction.ll
M llvm/test/Transforms/LoopVectorize/no_outside_user.ll
M llvm/test/Transforms/LoopVectorize/phi-cost.ll
M llvm/test/Transforms/LoopVectorize/pr55167-fold-tail-live-out.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/reduction.ll
M llvm/test/Transforms/LoopVectorize/single-value-blend-phis.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-counting-down.ll
M llvm/test/Transforms/LoopVectorize/uniform-blend.ll
Log Message:
-----------
[VPlan] Use VPlan operand order for VPBlendRecipes. (#139475)
Don't use the order of incoming values of IR phis when creating
VPBlendRecipes. Instead, simply use the incoming operands and
blocks from the VPWidenPHIRecipe.
Note that this changes the order of the incoming operands/masks for some
blends.
PR: https://github.com/llvm/llvm-project/pull/139475
Commit: 6a125afdd586411e02f85f6cf078acbd855a2724
https://github.com/llvm/llvm-project/commit/6a125afdd586411e02f85f6cf078acbd855a2724
Author: OverMighty <its.overmighty at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M libc/src/__support/FPUtil/dyadic_float.h
Log Message:
-----------
[libc] Fix DyadicFloat::generic_as() using FPBits<float16> not FPBits<T> (#139899)
Commit: 5b9246517f8f82932f3a171c60b5d656f8f51cb0
https://github.com/llvm/llvm-project/commit/5b9246517f8f82932f3a171c60b5d656f8f51cb0
Author: Graham Hunter <graham.hunter at arm.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/unittests/Transforms/Vectorize/CMakeLists.txt
A llvm/unittests/Transforms/Vectorize/VPlanPatternMatchTest.cpp
Log Message:
-----------
[LV] Fix ScalarIVSteps vplan pattern matcher, remove m_CanonicalIV() (#138298)
783a846 changed VPScalarIVStepsRecipe to take 3 arguments (adding
VF explicitly) instead of 2, but didn't change the corresponding
pattern matcher.
This matcher was only used in vputils::isHeaderMask, and no test
ever reached that function with a ScalarIVSteps recipe for the
value being matched -- it was always a WideCanonicalIV. So the
matcher bailed out immediately before checking arguments and
asserting that the number of arguments in the recipe was the
same provided by the matcher.
Since the constructors for ScalarIVSteps take 3 values, we should
be safe to update the matcher and guard it with a dedicated gtest.
m_CanonicalIV() on the other hand is removed; as a phi recipe it
may not have a consistent number of arguments to match, only
requiring one (the start value) when being constructed with the
assumption that a second incoming value is added for the backedge
later. In order to keep the matcher we would need to add multiple
matchers with different numbers of arguments for it depending on
what phase of vplan construction we were in, and ensure that we
never reorder matcher usage vs. vplan transformation. Since the
main IR PatternMatch.h doesn't contain any matchers for PHI nodes,
I think we can just remove it and match via m_Specific() using the
VPValue we get from Plan.getCanonicalIV().
Commit: 65a9a3d5b12449f4d32b4f6c01bcc421185a4bf6
https://github.com/llvm/llvm-project/commit/65a9a3d5b12449f4d32b4f6c01bcc421185a4bf6
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/lib/Sema/SemaOpenACCClause.cpp
A clang/test/SemaOpenACC/gh139894.cpp
Log Message:
-----------
[OpenACC] Fix asserts when checking clauses after invalid directive
When implementing the parsing for OpenACC I ensured that we could always
continue to do diagnostics/etc. For the most part, I was consistent
with that assumption throughout clause Sema, but in 3 cases I left in
some unreachables for cases where this would happen. I've now properly
handled all 3 in a reasonable way.
Fixes: #139894
Commit: f486cc4417059e47e5b6e18294bbacd767c04030
https://github.com/llvm/llvm-project/commit/f486cc4417059e47e5b6e18294bbacd767c04030
Author: Asher Mancinelli <ashermancinelli at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/ControlFlowConverter.cpp
M flang/test/Fir/vector-always.fir
M flang/test/Integration/unroll.f90
M flang/test/Integration/unroll_and_jam.f90
M flang/test/Integration/vector-always.f90
Log Message:
-----------
[flang] Add loop annotation attributes to the loop backedge (#126082)
Flang currently adds loop metadata to a conditional branch in the loop
preheader, while clang adds it to the loop latch's branch instruction.
Langref says:
> Currently, loop metadata is implemented as metadata attached to the
branch instruction in the loop latch block.
>
> https://llvm.org/docs/LangRef.html#llvm-loop
I misread langref a couple times, but I think this is the appropriate
branch op for the LoopAnnotationAttr. In a couple examples I found that
the metadata was lost entirely during canonicalization. This patch makes
the codegen look more like clang's and the annotations persist through
codegen.
* current clang: https://godbolt.org/z/8WhbcrnG3
* current flang: https://godbolt.org/z/TrPboqqcn
Commit: edc9d91ca4957e3a7b2e10848f3c71fae765fe07
https://github.com/llvm/llvm-project/commit/edc9d91ca4957e3a7b2e10848f3c71fae765fe07
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp
Log Message:
-----------
[libc++] Enable the GDB pretty printers for Clang (#135484)
The GDB pretty printer test works just fine with Clang in the CI now,
except that it breaks (not exactly unexpectedly) with optimizations
enabled.
Commit: 9ca8248a9173e7756fbeb7ec3562332639d36423
https://github.com/llvm/llvm-project/commit/9ca8248a9173e7756fbeb7ec3562332639d36423
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/include/clang/AST/Expr.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/unittests/AST/ASTImporterTest.cpp
Log Message:
-----------
[clang] Save ShuffleVectorExpr args as ConstantExpr (#139709)
The passed indices have to be constant integers anyway, which we verify
before creating the ShuffleVectorExpr. Use the value we create there and
save the indices using a ConstantExpr instead. This way, we don't have
to evaluate the args every time we call getShuffleMaskIdx().
Commit: c5229e92cefd5d25ffdb0dd5264e67e8ce0cdd5f
https://github.com/llvm/llvm-project/commit/c5229e92cefd5d25ffdb0dd5264e67e8ce0cdd5f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M libc/docs/configure.rst
M libc/docs/dev/code_style.rst
M libc/docs/dev/source_tree_layout.rst
Log Message:
-----------
[libc] Fix typos in documentation (#139852)
Commit: 0eb8a92ce9a55059b06bf456b53971bb62246a9f
https://github.com/llvm/llvm-project/commit/0eb8a92ce9a55059b06bf456b53971bb62246a9f
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Parse/ParseOpenMP.cpp
M clang/test/OpenMP/metadirective_messages.cpp
Log Message:
-----------
[OpenMP] Fix tentative parsing crash with metadirective (#139901)
There were two crashes that have the same root cause: not correctly
handling unexpected tokens. In one case, we were failing to return early
which caused us to parse a paren as a regular token instead of a special
token, causing an assertion. The other case was failing to commit or
revert the tentative parse action when not getting a paren when one was
expected.
Fixes #139665
Commit: 3302f9f63d1cba91b260212992caf6c895582f3b
https://github.com/llvm/llvm-project/commit/3302f9f63d1cba91b260212992caf6c895582f3b
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
Move release note to a better spot; NFC
Commit: 7e690db5157bfda1a2be3a99d16e8875a2d42b96
https://github.com/llvm/llvm-project/commit/7e690db5157bfda1a2be3a99d16e8875a2d42b96
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/lib/Sema/SemaConcept.cpp
Log Message:
-----------
[Clang][NFC] Introduce no local variable to avoid use after move (#139784)
Static analysis flagged the use of Left.size() because we just moved out
of Left and that would be undefined behavior. Fix is to take the size
and store it in a local variable instead.
Commit: 440e510b896be2ef4a4f0730b8201378beee55b3
https://github.com/llvm/llvm-project/commit/440e510b896be2ef4a4f0730b8201378beee55b3
Author: Fangyi Zhou <me at fangyi.io>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
A clang/test/Analysis/ftime-trace-no-init.cpp
Log Message:
-----------
[clang][analyzer] Fix a nullptr dereference when `-ftime-trace` is used (#139820)
Fixes #139779.
The bug was introduced in #137355 in `SymbolConjured::getStmt`, when
trying to obtain a statement for a CFG initializer without an
initializer. This commit adds a null check before access.
Commit: c2b9aa0e72616edf9f22e7df27295c259a6b8fc5
https://github.com/llvm/llvm-project/commit/c2b9aa0e72616edf9f22e7df27295c259a6b8fc5
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/docs/MLGO.rst
Log Message:
-----------
[docs][mlgo] Fix list formatting (#139922)
Fix after #139205
Commit: c632ac3506731e394dd7e3ac3f3320f5442250b4
https://github.com/llvm/llvm-project/commit/c632ac3506731e394dd7e3ac3f3320f5442250b4
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/X86/phi-operand-gathered-loads.ll
Log Message:
-----------
[SLP][NFC]Add a test with the gather operand in phi node in gathered loads
Commit: ee47454bb8be7f4cd1ecbd862c5a82d24ef696c7
https://github.com/llvm/llvm-project/commit/ee47454bb8be7f4cd1ecbd862c5a82d24ef696c7
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/test/Dialect/Linalg/vectorization.mlir
Log Message:
-----------
[mlir][vector] Refactor `createWriteOrMaskedWrite` (#138137)
This patch updates `createWriteOrMaskedWrite` to make it consistent with
`createReadOrMaskedRead`.
Before diving into the details: note that these utilities are currently
implemented in different files — "VectorUtils.cpp" (Vector) and
"Vectorization.cpp" (Linalg). In a subsequent patch, I plan to move
`createWriteOrMaskedWrite` into "VectorUtils.cpp".
SUMMARY OF CHANGES:
The main change is to remove the logic that creates the destination
tensor, which previously looked like:
```cpp
Value dest = builder.create<tensor::EmptyOp>(loc, destSizes,
inputType.getElementType());
```
With this patch, createWriteOrMaskedWrite now simply generates:
```mlir
%res = vector.transfer_write %vectorToStore into %dest
```
This replaces the previous form:
```mlir
%dest = tensor.empty(%destSizes)
%res = vector.transfer_write %vectorToStore into %dest
```
In other words, the destination value `%dest` is now passed as an input
parameter. This makes `createWriteOrMaskedWrite` re-usable in contexts
where the destination tensor is already known — for example, in
`vectorizeAsInsertSliceOp`, which I will update in a follow-up patch.
OTHER CHANGES:
* Added comments and clarified TODOs.
* Updated tests: since destination sizes are now computed independently
inside `createWriteOrMaskedWrite`, some additional `tensor.dim` ops
appear. These will be cleaned up by CSE + canonicalization.
Commit: eac7466448f920e733f12beca28ff848cfa4810d
https://github.com/llvm/llvm-project/commit/eac7466448f920e733f12beca28ff848cfa4810d
Author: Alexey Karyakin <akaryaki at quicinc.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/LTO/LTOBackend.cpp
A llvm/test/ThinLTO/X86/cache-emit-asm.ll
Log Message:
-----------
[LTO] Fix a crash with thin LTO caching and asm output (#138203)
The `CacheStream::commit()` function (defined in Caching.cpp) deletes
the underlying raw stream. Some output streamers may hold a pointer
to it, which then will outlive the stream object.
In particular, MCAsmStreamer keeps the pointer to the raw stream
though a separate `formatted_raw_stream` object, which buffers data and
there is no path to explicitly flush this data. Before this change,
the buffered data was flushed during the MCAsmStreamer destructor.
After #136121, this happened after the `commit()` function is called.
Therefore, it caused a crash because the `formatted_raw_stream` object
tries to write the buffered data into a deleted raw stream. Even if
we don't delete the stream to avoid the crash, it would be too late
as the output stream cannot accept data after commit().
Fixes: #138194.
Commit: aa054c681059257d371857945c08840f69f68379
https://github.com/llvm/llvm-project/commit/aa054c681059257d371857945c08840f69f68379
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
M llvm/test/Transforms/ConstraintElimination/and-implied-by-operands.ll
M llvm/test/Transforms/ConstraintElimination/eq.ll
M llvm/test/Transforms/ConstraintElimination/gep-arithmetic-signed-predicates.ll
M llvm/test/Transforms/ConstraintElimination/geps-precondition-overflow-check.ll
M llvm/test/Transforms/ConstraintElimination/loops-bottom-tested-pointer-cmps.ll
M llvm/test/Transforms/ConstraintElimination/loops-header-tested-pointer-cmps.ll
M llvm/test/Transforms/ConstraintElimination/or-implied-by-operands.ll
M llvm/test/Transforms/ConstraintElimination/or.ll
Log Message:
-----------
[ConstraintElim] Simplify and/or instead of replacing its operand (#139874)
In `checkOrAndOpImpliedByOther`, replacing an operand of a disjoint or
is unsafe: https://alive2.llvm.org/ce/z/4R4hxN
This patch performs the simplification directly, to avoid miscompilation
and unnecessary canonicalization.
Closes https://github.com/llvm/llvm-project/issues/137937.
Commit: c9d05f3bcb3df5e56c0f9fc91366d62a229e7fb9
https://github.com/llvm/llvm-project/commit/c9d05f3bcb3df5e56c0f9fc91366d62a229e7fb9
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/include/llvm/ADT/APFixedPoint.h
M llvm/include/llvm/ADT/APFloat.h
M llvm/include/llvm/ADT/APInt.h
M llvm/include/llvm/ADT/DynamicAPInt.h
M llvm/include/llvm/ADT/SlowDynamicAPInt.h
M llvm/include/llvm/ADT/TrieRawHashMap.h
M llvm/include/llvm/ADT/Twine.h
M llvm/include/llvm/Support/BalancedPartitioning.h
M llvm/include/llvm/Support/BranchProbability.h
M llvm/include/llvm/Support/DebugCounter.h
M llvm/include/llvm/Support/KnownBits.h
M llvm/include/llvm/Support/SMTAPI.h
M llvm/include/llvm/Support/ScaledNumber.h
M llvm/lib/Support/APFixedPoint.cpp
M llvm/lib/Support/BalancedPartitioning.cpp
M llvm/lib/Support/DebugCounter.cpp
M llvm/lib/Support/DynamicAPInt.cpp
M llvm/lib/Support/KnownBits.cpp
M llvm/lib/Support/ScaledNumber.cpp
M llvm/lib/Support/SlowDynamicAPInt.cpp
M llvm/lib/Support/Z3Solver.cpp
Log Message:
-----------
[llvm] properly guard dump methods in Support lib classes (#139804)
## Purpose
Add proper preprocessor guards for all `dump()` methods in the LLVM
support library. This change ensures these methods are not part of the
public ABI for release builds.
## Overview
* Annotates all `dump` methods in Support and ADT source with the
`LLVM_DUMP_METHOD` macro.
* Conditionally includes all `dump` method definitions in Support and
ADT source so they are only present on debug/assert builds and when
`LLVM_ENABLE_DUMP` is explicitly defined.
NOTE: For many of these `dump` methods, the implementation was already
properly guarded but the declaration in the header file was not.
## Background
This issue was raised in comments on #136629. I am addressing it as a
separate change since it is independent from the changes being made in
that PR.
According to [this
documentation](https://github.com/llvm/llvm-project/blob/main/llvm/include/llvm/Support/Compiler.h#L637),
`dump` methods should be annotated with `LLVM_DUMP_METHOD` and
conditionally included as follows:
```
#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
LLVM_DUMP_METHOD void dump() const;
#endif
```
## Validation
* Local release build succeeds.
* CI
Commit: 93f19cb00917303027be2013c48cf9b78ff453d6
https://github.com/llvm/llvm-project/commit/93f19cb00917303027be2013c48cf9b78ff453d6
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
Log Message:
-----------
[mlir] Fix a warning
This patch fixes:
mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp:1544:14: error:
unused variable 'destType' [-Werror,-Wunused-variable]
Commit: 998dca42351f3292512af56207b603dc2fef565b
https://github.com/llvm/llvm-project/commit/998dca42351f3292512af56207b603dc2fef565b
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
M lldb/unittests/DAP/ProtocolTypesTest.cpp
Log Message:
-----------
[lldb-dap] Add unit test for protocol enum types (#139848)
Add dedicated unit tests for the protocol enum types.
Commit: 5fb9dca14aeaf12219ff149bf3a4f94c8dc58d8b
https://github.com/llvm/llvm-project/commit/5fb9dca14aeaf12219ff149bf3a4f94c8dc58d8b
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
M lldb/source/Target/Process.cpp
M lldb/test/API/lang/cpp/dynamic-value/TestDynamicValue.py
Log Message:
-----------
Revert "[lldb] Call Target::ClearAllLoadedSections earlier (#138892)"
This reverts commit 97aa01bef770ec651c86978d137933e09221dd00 and
7e7871d3f58b9da72ca180fcd7f0d2da3f92ec4a due to failures on windows.
Commit: 899f26315cdae25addfd0ddbc6c9390bfbb74c3e
https://github.com/llvm/llvm-project/commit/899f26315cdae25addfd0ddbc6c9390bfbb74c3e
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/docs/CMakeLists.txt
M clang/docs/analyzer/user-docs.rst
M clang/docs/analyzer/user-docs/CommandLineUsage.rst
A clang/docs/analyzer/user-docs/Options.rst.in
A clang/docs/tools/generate_analyzer_options_docs.py
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
A clang/test/Analysis/generate_analyzer_options_docs.test
M clang/test/lit.cfg.py
Log Message:
-----------
[NFC][analyzer] Document configuration options (#135169)
This commit documents the process of specifying values for the analyzer
options and checker options implemented in the static analyzer, and adds
a script which includes the documentation of the analyzer options (which
was previously only available through a command-line flag) in the
RST-based web documentation.
Commit: ba23eedc68ee1363ae8c31afc0f4b5071779eb0b
https://github.com/llvm/llvm-project/commit/ba23eedc68ee1363ae8c31afc0f4b5071779eb0b
Author: Andi Drebes <47449897+andidr at users.noreply.github.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M mlir/include/mlir/IR/OpImplementation.h
M mlir/lib/AsmParser/AsmParserImpl.h
M mlir/lib/AsmParser/Lexer.cpp
M mlir/lib/AsmParser/TokenKinds.def
M mlir/test/IR/parser.mlir
M mlir/test/lib/Dialect/Test/TestAttrDefs.td
M mlir/test/lib/Dialect/Test/TestAttributes.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
Log Message:
-----------
[MLIR][parser] Add token type and parser methods for forward slashes (#125056)
This adds a token for a forward slash to the token definition list and
the methods to `AsmParser::parseSlash()` and
`AsmParser::parseOptionalSlash()`, similar to other tokens used as
operators (e.g., star, plus, etc.). This allows implementations of
attributes that contain arithmetic expressions to support operators with
a forward slash, e.g., a division.
The newly added check tests trigger the parsing of a slash in an
attribute.
Commit: 9a0e1c79886ed95642b3400c0ec82f8a72d52ff6
https://github.com/llvm/llvm-project/commit/9a0e1c79886ed95642b3400c0ec82f8a72d52ff6
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/include/llvm/ADT/APFixedPoint.h
M llvm/include/llvm/ADT/APFloat.h
M llvm/include/llvm/ADT/APInt.h
M llvm/include/llvm/ADT/DynamicAPInt.h
M llvm/include/llvm/ADT/SlowDynamicAPInt.h
M llvm/include/llvm/ADT/TrieRawHashMap.h
M llvm/include/llvm/ADT/Twine.h
M llvm/include/llvm/Support/BalancedPartitioning.h
M llvm/include/llvm/Support/BranchProbability.h
M llvm/include/llvm/Support/DebugCounter.h
M llvm/include/llvm/Support/KnownBits.h
M llvm/include/llvm/Support/SMTAPI.h
M llvm/include/llvm/Support/ScaledNumber.h
M llvm/lib/Support/APFixedPoint.cpp
M llvm/lib/Support/BalancedPartitioning.cpp
M llvm/lib/Support/DebugCounter.cpp
M llvm/lib/Support/DynamicAPInt.cpp
M llvm/lib/Support/KnownBits.cpp
M llvm/lib/Support/ScaledNumber.cpp
M llvm/lib/Support/SlowDynamicAPInt.cpp
M llvm/lib/Support/Z3Solver.cpp
Log Message:
-----------
Revert "[llvm] properly guard dump methods in Support lib classes" (#139927)
Reverts llvm/llvm-project#139804
Commit: 26fbbfd98f56a065b415eb9bea88a20e4c44ab31
https://github.com/llvm/llvm-project/commit/26fbbfd98f56a065b415eb9bea88a20e4c44ab31
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/OpenMPClause.h
M clang/lib/AST/OpenACCClause.cpp
Log Message:
-----------
[NFC][Clang] Simplify getTrailingObjects for OpenACC/OpenMP Clause (#139838)
Simplify usage of `getTrailingObjects` for OpenACC/OpenMP Clause by
using either the non-templated form for single trailing types or using
the single argument form that returns an ArrayRef/MutableArrayRef.
Commit: 9d5d715330821b8dc1c2880a8d6356a7829eef64
https://github.com/llvm/llvm-project/commit/9d5d715330821b8dc1c2880a8d6356a7829eef64
Author: Amir Ayupov <aaupov at fb.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M bolt/include/bolt/Profile/Heatmap.h
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Profile/Heatmap.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/test/X86/heatmap-preagg.test
Log Message:
-----------
[BOLT][heatmap] Add synthetic hot text section (#139824)
In heatmap mode, report samples and utilization of the section(s)
between hot text markers `[__hot_start, __hot_end)`.
The intended use is with multi-way splitting where there are several
sections that contain "hot" code (e.g. `.text.warm` with CDSplit).
Addresses the comment on #139193
https://github.com/llvm/llvm-project/pull/139193#pullrequestreview-2835274682
Test Plan: updated heatmap-preagg.test
Commit: 31e981ca1dc323c8a32012cb60a0a8fe3985db1a
https://github.com/llvm/llvm-project/commit/31e981ca1dc323c8a32012cb60a0a8fe3985db1a
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
M clang/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp
M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
Log Message:
-----------
[NFC][analyzer] Clarify that ExplodedGraph has only one root (#139903)
Previously the class `ExplodedGraph` had a data member called `Roots`
which could (in theory) store multiple root nodes -- but in practice
exploded graphs always had at most one root node (zero was possible for
empty and partially copied graphs) and introducing a graph with multiple
roots would've caused severe malfuncitons (e.g. in code that used the
pattern `*roots_begin()` to refer to _the_ root node).
I don't see any practical use case for adding multiple root nodes in a
single graph (this seems to be yet another of the "generalize for the
sake of generalization" decisions which were common in the early history
of the analyzer), so this commit replaces the vector `Roots` with
`ExplodedNode *Root` (which may be null when the graph is empty or under
construction).
Note that the complicated logic of `ExplodedGraph::trim` deserves a
through cleanup, but I left that for a follow-up commit.
Commit: 2422b1795f3c10edbd9db4cce2a5cd16f657ca17
https://github.com/llvm/llvm-project/commit/2422b1795f3c10edbd9db4cce2a5cd16f657ca17
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/DebugInfo/LogicalView/Readers/LVDWARFReader.cpp
Log Message:
-----------
[DebugInfo] Simplify a string comparison (NFC) (#139918)
Note that the lambda function we are in returns bool, so
FileZero.compare(FileOne) is equivalent to FileZero != FileOne in this
context.
Commit: bcf36548476191c74e88281e00a36a67eab7a278
https://github.com/llvm/llvm-project/commit/bcf36548476191c74e88281e00a36a67eab7a278
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoZilsd.td
A llvm/test/CodeGen/RISCV/zilsd.ll
Log Message:
-----------
[RISCV] Lower i64 load/stores to ld/sd with Zilsd. (#139808)
Don't split i64 load/store when we have Zilsd.
In the future, we should enhanced the LoadStoreOptimizer pass to do
this, but this is a good starting point. Even if we support it in
LoadStoreOptimizer, we might still want this for volatile loads/stores
to guarantee the use of Zilsd.
Commit: 441d382f9350c1345555c958244f252c00923824
https://github.com/llvm/llvm-project/commit/441d382f9350c1345555c958244f252c00923824
Author: John Harrison <harjohn at google.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M lldb/unittests/DAP/CMakeLists.txt
A lldb/unittests/DAP/TransportTest.cpp
Log Message:
-----------
[lldb-dap] Adding unit tests for Transport. (#139926)
This adds basic support for testing the Transport class and includes
tests for 'Read' and 'Write'.
Commit: 4ac8e90df78354b06f7b4f8ffa135c1a1ee7e944
https://github.com/llvm/llvm-project/commit/4ac8e90df78354b06f7b4f8ffa135c1a1ee7e944
Author: Sean Fertile <sd.fertile at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/lib/Basic/Targets/PPC.cpp
M clang/test/Driver/ppc-mrop-protection-support-check.c
Log Message:
-----------
[PPC] Disable rop-protect for 32-bit OS targets. (#139619)
The instructions are not supported on either 32-bit ELF (due to no
redzone) or 32-bit AIX due to the instructions always using the full
64-bit width of the register inputs.
Commit: f1ecff8f8890a5fd7c78ede648039a206d2dbd83
https://github.com/llvm/llvm-project/commit/f1ecff8f8890a5fd7c78ede648039a206d2dbd83
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M libcxx/test/std/algorithms/alg.modifying.operations/alg.swap/ranges.swap_ranges.pass.cpp
M libcxx/test/std/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp
Log Message:
-----------
[libc++] Improve test coverage and readability for swap_ranges (#133752)
This patch enhances the test coverage of `{std,ranges}::swap_ranges` by
adding larger test cases with 100 elements across different containers.
It also inlines standalone tests for better readability, avoiding
unnecessary navigation.
This patch addresses a follow-up suggestion from PR #121138 to extend
test coverage beyond 3 elements.
Commit: 0afa62c169021ac56bc4c25b76604586f4bdae06
https://github.com/llvm/llvm-project/commit/0afa62c169021ac56bc4c25b76604586f4bdae06
Author: Sean Fertile <sd.fertile at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/test/Driver/ppc-mrop-protection-support-check.c
Log Message:
-----------
[NFC] Reduce number of run steps in ppc rop-protect test. (#139607)
Test was running both -mcpu=pwrN and -mcpu=powerN compile steps for
power N = 8, 9 and 10. Reduce to one run step for each form using power8
for one instance and power 10 for the other.
Commit: a3ba00a3dbc314794d8ca14d0c0993ef5a229069
https://github.com/llvm/llvm-project/commit/a3ba00a3dbc314794d8ca14d0c0993ef5a229069
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/test/CodeGenHLSL/builtins/ByteAddressBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-constructors.hlsl
Log Message:
-----------
[HLSL][NFC] Simplify resource constructors codegen tests (#139842)
Verification of the local allocas and load/store is not that useful and
it makes the test fragile.
Commit: bf0655f2080248a59aa2b79f2579798b8158869c
https://github.com/llvm/llvm-project/commit/bf0655f2080248a59aa2b79f2579798b8158869c
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/test/CodeGen/RISCV/attr-riscv-rvv-vector-bits-less-8-call.c
M clang/test/CodeGen/RISCV/attr-riscv-rvv-vector-bits-less-8-cast.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-bitcast-less-8.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-cast.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-codegen.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-globals.c
M llvm/include/llvm/IR/DerivedTypes.h
Log Message:
-----------
[RISCV] Improve casting between i1 scalable vectors and i8 fixed vectors for -mrvv-vector-bits (#139190)
For i1 vectors, we used an i8 fixed vector as the storage type.
If the known minimum number of elements of the scalable vector type is
less than 8, we were doing the cast through memory. This used a load or
store from a fixed vector alloca. If is less than 8, DataLayout
indicates that the load/store reads/writes vscale bytes even if vscale
is known and vscale*X is less than or equal to 8. This means the load or
store is outside the bounds of the fixed size alloca as far as
DataLayout is concerned leading to undefined behavior.
This patch avoids this by widening the i1 scalable vector type with zero
elements until it is divisible by 8. This allows it be bitcasted to/from
an i8 scalable vector. We then insert or extract the i8 fixed vector
into this type.
Hopefully this enables #130973 to be accepted.
Commit: 80fa6214821582511c687d00a484929530df1661
https://github.com/llvm/llvm-project/commit/80fa6214821582511c687d00a484929530df1661
Author: Deric C. <cheung.deric at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/DXContainerConstants.def
M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
M llvm/lib/Target/DirectX/DXILShaderFlags.h
M llvm/test/CodeGen/DirectX/ShaderFlags/low-precision.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/res-may-not-alias-sm6.7.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/use-native-low-precision-0.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/use-native-low-precision-1.ll
Log Message:
-----------
[DirectX] Set shader feature flags MinimumPrecision and NativeLowPrecision, and refactor the logic for setting low-precision-related flags (#139623)
Fixes #138997 and does refactoring for low-precision-related flags.
The shader feature flags MinimumPrecision and NativeLowPrecision were
not being set, leading to validation errors.
This PR sets these shader feature flags [as in
DXC](https://github.com/microsoft/DirectXShaderCompiler/blob/377c4ca6d82adb83bf2eaf978a7040443848d6fd/lib/DXIL/DxilShaderFlags.cpp#L58-L63)
and adds tests for them.
This PR also performs some refactoring of low-precision-related flags to
make it less confusing.
- The `UseNativeLowPrecision` DXIL module flag has been renamed to
`NativeLowPrecisionMode` to imply that it is setting some execution
state which the module should be interpreted with
- The LLVM module flag `dx.nativelowprec` is now read only once and sets
a bool to be used by `updateFunctionFlags()` and for setting the DXIL
module flag `NativeLowPrecisionMode`
- The `MinimumPrecision`, `NativeLowPrecision`, and
`LowPrecisionPresent` shader feature flags are all set together under
`updateFunctionFlags()`
- Moved the logic for setting DXIL module flags `NativeLowPrecisionMode`
and `ResMayNotAlias` out of the per-function loop and placed it
alongside the logic for setting other DXIL module flags
(`DisableOptimizations`, `Max64UAVs`, and `UAVsAtEveryStage` flags)
---------
Co-authored-by: Justin Bogner <mail at justinbogner.com>
Commit: 47144a0dc1f987981da14c18af9dbf962a6eb9c7
https://github.com/llvm/llvm-project/commit/47144a0dc1f987981da14c18af9dbf962a6eb9c7
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Transforms/Utils/CloneFunction.cpp
Log Message:
-----------
[CloneFunction][DebugInfo] Ensure DILocalVariables of inlined functions are not cloned (NFC) (#138590)
This change was separated from
https://github.com/llvm/llvm-project/pull/119001.
When cloning functions, use IdentityMDPredicate to ensure that if
DISubprogram is not cloned, then its DILocalVariables are not cloned
either.
This is currently expected to be an NFC, as DILocalVariables only
reference their subprograms (via DILocalScopes) and types, and inlined
DISubprograms and DITypes are not cloned. Thus, DILocalVariables are
mapped to self in ValueMapper (in mapTopLevelUniquedNode).
However, it will be needed for the original PR
https://github.com/llvm/llvm-project/pull/119001, where a
DILocalVariable may refer to a local type of a DISubprogram that is
being cloned. In that case, ValueMapper will clone DILocalVariable even
if it belongs to an inlined DISubprogram that is not cloned, which
should be avoided.
I'm making this change into a separate PR to make the original PR a bit
smaller, and because this has more to do with variables than with types.
Commit: baf2cfa299ea62f3bdb717c8f464f824257527ff
https://github.com/llvm/llvm-project/commit/baf2cfa299ea62f3bdb717c8f464f824257527ff
Author: Fangyi Zhou <me at fangyi.io>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
R clang/test/Analysis/ftime-trace-no-init.cpp
Log Message:
-----------
Revert "[clang][analyzer] Fix a nullptr dereference when `-ftime-trace` is used" (#139936)
Reverts llvm/llvm-project#139820
Reverting due to buildbot failures in asan
Commit: 28d732a24ef06bab3a2cd6c17975281155f63cd6
https://github.com/llvm/llvm-project/commit/28d732a24ef06bab3a2cd6c17975281155f63cd6
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M lldb/tools/debugserver/source/CMakeLists.txt
Log Message:
-----------
[lldb][cmake] Set `CMAKE_OSX_SYSROOT` when building debugserver with CMake 4 (#138020)
CMake 4 no longer sets the `CMAKE_OSX_SYSROOT` variable by default. If
you've updated to CMake 4 on macOS (e.g. with brew) and try building
LLDB with CMake/ninja, this will yield an error when building
debugserver that clang is unable to run since it tries to compile files
that don't exist.
These files are supposed to be generated by the `mig` process. `mig`
needs the `CMAKE_OSX_SYSROOT` variable in order to work and without it,
it silently fails to generate the files that later on need to be
compiled.
This commit sets this SDK path for mig and will fatal error out of config
when building debugserver without having set CMAKE_OSX_SYSROOT.
Commit: db099f14d9c80110beb4c1999cfdec7a08ae462d
https://github.com/llvm/llvm-project/commit/db099f14d9c80110beb4c1999cfdec7a08ae462d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M lld/docs/ELF/warn_backrefs.rst
M lld/docs/windows_support.rst
Log Message:
-----------
[lld] Fix typos in documentation (#139854)
Commit: cf552a1d82650f9ea4a03e0467d0ca64dbc3e5c4
https://github.com/llvm/llvm-project/commit/cf552a1d82650f9ea4a03e0467d0ca64dbc3e5c4
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
Log Message:
-----------
[LIR] Simplify processLoopStridedStore [nfc]
Just move the assertions and exits down under the existing if clauses.
This improves readability.
Commit: 6049db08fa5005c9535b22da0e07993395129f29
https://github.com/llvm/llvm-project/commit/6049db08fa5005c9535b22da0e07993395129f29
Author: Alexey Karyakin <akaryaki at quicinc.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/test/ThinLTO/X86/cache-emit-asm.ll
Log Message:
-----------
[LTO] Use llvm-lto2 instead of lld in the test (#139928)
This is a follow-up to #138203. The added test used lld but lld is not
always available, which breaks builds. Make the test use llvm-lto2. Also
make the test a bit more similar to other tests in the same directory.
Commit: a05cf2927aab2494740853e6f4bd98591382e11c
https://github.com/llvm/llvm-project/commit/a05cf2927aab2494740853e6f4bd98591382e11c
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Use WeakTrackVH instead of Instruction in EntryToLastInstruction
Use WEakTrackVH to prevent instability in the vectorizer.
Fixes #139729
Commit: 539265b9044f8cda513e5e65d11f2630a32176cf
https://github.com/llvm/llvm-project/commit/539265b9044f8cda513e5e65d11f2630a32176cf
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M lldb/source/Plugins/ExpressionParser/Clang/ASTStructExtractor.cpp
Log Message:
-----------
[lldb] Simplify a string comparison (NFC) (#139932)
Commit: d47cd5008bae7c4159dac1f92d266ddeeb70f55d
https://github.com/llvm/llvm-project/commit/d47cd5008bae7c4159dac1f92d266ddeeb70f55d
Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/test/Target/LLVMIR/blockaddress.mlir
Log Message:
-----------
[MLIR][LLVM] Fix blockaddress mapping to LLVM blocks (#139814)
After each function is translated, both value and block maps are erased,
which makes the current mapping of blockaddresses to llvm blocks broken
- the patching happens only after *all* functions are translated.
Simplify the overall mapping, update comments, variable names and fix
the bug.
---------
Co-authored-by: Christian Ulmann <christianulmann at gmail.com>
Commit: b434bc4e90c2b83156871e7b4e12f04447930b9c
https://github.com/llvm/llvm-project/commit/b434bc4e90c2b83156871e7b4e12f04447930b9c
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
Log Message:
-----------
[CIR][NFC] Remove redundant pointer casts (#139898)
This mirrors incubator changes from https://github.com/llvm/clangir/pull/1609
Commit: 8c435886aaee7619314edac9b142ef6fb2dd935f
https://github.com/llvm/llvm-project/commit/8c435886aaee7619314edac9b142ef6fb2dd935f
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
R libcxx/test/benchmarks/algorithms/pstl.stable_sort.bench.cpp
R libcxx/test/benchmarks/algorithms/ranges_sort.bench.cpp
R libcxx/test/benchmarks/algorithms/ranges_stable_sort.bench.cpp
R libcxx/test/benchmarks/algorithms/sort.bench.cpp
A libcxx/test/benchmarks/algorithms/sorting/common.h
A libcxx/test/benchmarks/algorithms/sorting/is_sorted.bench.cpp
A libcxx/test/benchmarks/algorithms/sorting/is_sorted_until.bench.cpp
A libcxx/test/benchmarks/algorithms/sorting/partial_sort.bench.cpp
A libcxx/test/benchmarks/algorithms/sorting/partial_sort_copy.bench.cpp
A libcxx/test/benchmarks/algorithms/sorting/sort.bench.cpp
A libcxx/test/benchmarks/algorithms/sorting/stable_sort.bench.cpp
R libcxx/test/benchmarks/algorithms/stable_sort.bench.cpp
Log Message:
-----------
[libc++] Refactor and add benchmark coverage for [alg.sort] (#128236)
This patch adds missing benchmark coverage for partial_sort,
partial_sort_copy, is_sorted and is_sorted_until.
It also refactors the existing benchmarks for sort and stable_sort to
follow the consistent style of the new algorithm benchmarks. However,
these benchmarks were notoriously slow to run since they tested multiple
data patterns on multiple data types. To try to alleviate this, I
reduced the benchmarks to only run on integral types and on a single
non-integral type, which should faithfully show how the algorithm
behaves for anything non-integral. However, this is technically a
reduction in coverage.
Commit: 61c1f6d7e84f1213bd727437a7ec5b7fc5eaf121
https://github.com/llvm/llvm-project/commit/61c1f6d7e84f1213bd727437a7ec5b7fc5eaf121
Author: Martin Storsjö <martin at martin.st>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
[cmake] Warn if LLVM_PROFDATA_FILE was specified but wasn't found (#139882)
Ideally we should perhaps even error out here; if the user requested
building with profiling info, but that profile wasn't found, it seems
like the build configuration is subtly broken, and I would expect the
user to want to know about it. But that may be a too disruptive change,
as users may very well rely on being able to build things in such a
setup anyway thanks to Hyrum's Law.
To make things clearer, at least print a warning in this case.
Commit: 6ed05ed773f9ab1aa31c86d55254884ce48f0915
https://github.com/llvm/llvm-project/commit/6ed05ed773f9ab1aa31c86d55254884ce48f0915
Author: James Newling <james.newling at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/test/Dialect/Vector/linearize.mlir
Log Message:
-----------
[mlir][vector] linearize vector.insert_strided_slice (flatten to vector.shuffle) (#138725)
Extends the set of vector operations that we can linearize to include
vector.insert_strided_slice. The new pattern reuses the ideas from
vector.extract_strided_slice linearization.
Commit: e1b3af6dc4362c5281abf255c4078992ce64ad33
https://github.com/llvm/llvm-project/commit/e1b3af6dc4362c5281abf255c4078992ce64ad33
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
M llvm/test/CodeGen/RISCV/double-mem.ll
Log Message:
-----------
[RISCV] Add isel patterns to use Zilsd for f64 load/store for Zdinx on RV32. (#139935)
Commit: 76d866f7935b746e5e50e7d760344c14502bd8e7
https://github.com/llvm/llvm-project/commit/76d866f7935b746e5e50e7d760344c14502bd8e7
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/test/CodeGen/dllexport.c
M clang/test/CodeGen/dllimport.c
M clang/test/CodeGen/dso-local-executable.c
M clang/test/CodeGenCXX/dllexport.cpp
M clang/test/CodeGenCXX/dllimport-members.cpp
M clang/test/CodeGenCXX/dllimport.cpp
M clang/test/CodeGenCXX/dso-local-executable.cpp
Log Message:
-----------
[Cygwin] Global symbols should be external by default (#139797)
Behaves as same as both of Clang and GCC targetting MinGW. Required for
compatibility for Cygwin-GCC.
Divided from https://github.com/llvm/llvm-project/pull/138773
Commit: a3d52ea99e1438d6cd39de2eb27e43ac27700bf7
https://github.com/llvm/llvm-project/commit/a3d52ea99e1438d6cd39de2eb27e43ac27700bf7
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/test/CodeGenCXX/dllexport-missing-key.cpp
M clang/test/CodeGenCXX/dllimport-missing-key.cpp
M clang/test/CodeGenCXX/dllimport-rtti.cpp
M clang/test/CodeGenCXX/rtti-mingw64.cpp
M clang/test/CodeGenCXX/virt-dtor-key.cpp
M clang/test/CodeGenCXX/vtable-key-function-ios.cpp
Log Message:
-----------
[Cygwin] RTTI and VTable should be dllexport-ed (#139798)
Behaves as same as both of Clang and GCC targetting MinGW. Required for
compatibility for Cygwin-GCC.
Divided from https://github.com/llvm/llvm-project/pull/138773
Commit: cb53ece2cab0096539e6a5c9d53da4e5db5cc270
https://github.com/llvm/llvm-project/commit/cb53ece2cab0096539e6a5c9d53da4e5db5cc270
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/test/CodeGenCXX/dllexport-members.cpp
M clang/test/CodeGenCXX/mingw-template-dllexport.cpp
M clang/test/SemaCXX/dllexport.cpp
M clang/test/SemaCXX/dllimport.cpp
Log Message:
-----------
[Cygwin] Template instantiations should be exported by default (#139799)
Behaves as same as both of Clang and GCC targetting MinGW. Required for
compatibility for Cygwin-GCC.
Divided from https://github.com/llvm/llvm-project/pull/138773
Commit: b6c7d7c879032e8e04686f257a3494d3672051cc
https://github.com/llvm/llvm-project/commit/b6c7d7c879032e8e04686f257a3494d3672051cc
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/zdinx-large-spill.mir
Log Message:
-----------
[RISCV] Tweak zdinx-large-spill.mir so it tests what it was intended to. NFC
Commit: 03697cf8fce89e8841c67543aa0e4ecebe91387e
https://github.com/llvm/llvm-project/commit/03697cf8fce89e8841c67543aa0e4ecebe91387e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M mlir/lib/Dialect/Affine/Transforms/AffineDataCopyGeneration.cpp
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
Log Message:
-----------
[mlir] Use llvm::find_if (NFC) (#139912)
Commit: 5ee67ee6bc45979eb81b087c6a700573e2ab61db
https://github.com/llvm/llvm-project/commit/5ee67ee6bc45979eb81b087c6a700573e2ab61db
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/utils/TableGen/FastISelEmitter.cpp
Log Message:
-----------
[LLVM][TableGen] Code cleanup in FastISelEmitter.cpp (#139644)
- Use StringRef instead of std::string for `InstructionMemo::Name`.
- Use range for loops, zip_equal and structured bindings in loops.
- Use llvm::any_of instead of manual loops.
- Use ListSeparator.
- Remove {} around single-line if-else chains.
- Use ArrayRef<> instead of const vector reference for function args.
- Change `getLegalCName` to accept a `StringRef` to avoid
StringRef->std::string casting in several places.
- Use StringRef instead of std::string for `OpcodeName` (and in
associated maps).
Tested by verifying no changes in .inc files with and without this
change.
Commit: 3138f6cc8c3378731aad966bf63cb5d54fb9e2ea
https://github.com/llvm/llvm-project/commit/3138f6cc8c3378731aad966bf63cb5d54fb9e2ea
Author: Peng Chen <pchen7e2 at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
A mlir/test/mlir-tblgen/cpp-class-comments.td
M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
M mlir/tools/mlir-tblgen/CMakeLists.txt
A mlir/tools/mlir-tblgen/CppGenUtilities.cpp
A mlir/tools/mlir-tblgen/CppGenUtilities.h
M mlir/tools/mlir-tblgen/DialectGen.cpp
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
M mlir/tools/mlir-tblgen/OpInterfacesGen.cpp
Log Message:
-----------
[MLIR] Generate cpp comments for TableGen summary and description (#139606)
This commit takes the `summary` and `description` of TableGen files and
generate a cpp comments on top of the declarations of generated cpp
classes.
The main motivation is to improve the developer experience. When people
work on compilers from an IDE, they will be able to hover over the
symbols (e.g. `"ADialect::BOp"`) in their cpp code and see the summary
and descriptions without having to referring to the `.td` files.
Commit: e24d8662e8121a22c4629071692bd114c3ff8b42
https://github.com/llvm/llvm-project/commit/e24d8662e8121a22c4629071692bd114c3ff8b42
Author: Amir Ayupov <aaupov at fb.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M bolt/test/X86/callcont-fallthru.s
Log Message:
-----------
[BOLT][test] Disable PLT check in callcont-fallthru (#139953)
Some testing configurations don't support `nm --synthetic` option (where
nm is a symlink to llvm-nm), which prevents us from resolving `puts at plt`
symbol address in profile generation inside the test.
Disable the check until llvm-nm support is landed (#138232).
Test Plan: bin/llvm-lit -a tools/bolt/test/X86/callcont-fallthru.s
Commit: 0563186a76ddf51b8a7b6eaf0357c224f2625df8
https://github.com/llvm/llvm-project/commit/0563186a76ddf51b8a7b6eaf0357c224f2625df8
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
M llvm/include/llvm/ADT/APFixedPoint.h
M llvm/include/llvm/ADT/APFloat.h
M llvm/include/llvm/ADT/APInt.h
M llvm/include/llvm/ADT/DynamicAPInt.h
M llvm/include/llvm/ADT/SlowDynamicAPInt.h
M llvm/include/llvm/ADT/TrieRawHashMap.h
M llvm/include/llvm/ADT/Twine.h
M llvm/include/llvm/Support/BranchProbability.h
M llvm/include/llvm/Support/DebugCounter.h
M llvm/include/llvm/Support/KnownBits.h
M llvm/include/llvm/Support/SMTAPI.h
M llvm/include/llvm/Support/ScaledNumber.h
M llvm/lib/Support/APFixedPoint.cpp
M llvm/lib/Support/DebugCounter.cpp
M llvm/lib/Support/DynamicAPInt.cpp
M llvm/lib/Support/KnownBits.cpp
M llvm/lib/Support/ScaledNumber.cpp
M llvm/lib/Support/SlowDynamicAPInt.cpp
M llvm/lib/Support/Z3Solver.cpp
Log Message:
-----------
[llvm] properly guard dump methods in Support lib classes (#139938)
## Purpose
Add proper preprocessor guards for all `dump()` methods in the LLVM
support library. This change ensures these methods are not part of the
public ABI for release builds.
## Overview
* Annotates all `dump` methods in Support and ADT source with the
`LLVM_DUMP_METHOD` macro.
* Conditionally includes all `dump` method definitions in Support and
ADT source so they are only present on debug/assert builds and when
`LLVM_ENABLE_DUMP` is explicitly defined.
NOTE: For many of these `dump` methods, the implementation was already
properly guarded but the declaration in the header file was not.
## Background
This PR is a redo of #139804 with some changes to fix clang and unit
test build breaks.
This issue was raised in comments on #136629. I am addressing it as a
separate change since it is independent from the changes being made in
that PR.
According to [this
documentation](https://github.com/llvm/llvm-project/blob/main/llvm/include/llvm/Support/Compiler.h#L637),
`dump` methods should be annotated with `LLVM_DUMP_METHOD` and
conditionally included as follows:
```
#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
LLVM_DUMP_METHOD void dump() const;
#endif
```
## Validation
* Local release build succeeds.
* CI
Commit: 0ab67ec191673a148d84f3819f5c97aaa5b84364
https://github.com/llvm/llvm-project/commit/0ab67ec191673a148d84f3819f5c97aaa5b84364
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
A llvm/include/llvm/Transforms/Vectorize/EVLIndVarSimplify.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/lib/Transforms/Vectorize/CMakeLists.txt
A llvm/lib/Transforms/Vectorize/EVLIndVarSimplify.cpp
A llvm/test/Transforms/LoopVectorize/RISCV/evl-iv-simplify.ll
Log Message:
-----------
[LV][EVL] Introduce the EVLIndVarSimplify Pass for EVL-vectorized loops (#131005)
When we enable EVL-based loop vectorization w/ predicated tail-folding,
each vectorized loop has effectively two induction variables: one
calculates the step using (VF x vscale) and the other one increases the
IV by values returned from experiment.get.vector.length. The former,
also known as canonical IV, is more favorable for analyses as it's
"countable" in the sense of SCEV; the latter (EVL-based IV), however, is
more favorable to codegen, at least for those that support scalable
vectors like AArch64 SVE and RISC-V.
The idea is that we use canonical IV all the way until the end of all
vectorizers, where we replace it with EVL-based IV using EVLIVSimplify
introduced here. Such that we can have the best from both worlds.
This Pass is enabled by default in RISC-V. However, since we haven't
really vectorize loops with predicate tail-folding by default, this Pass
is no-op at this moment.
Commit: 864f0ff4efc220609764a3075c289b395dc9b907
https://github.com/llvm/llvm-project/commit/864f0ff4efc220609764a3075c289b395dc9b907
Author: Jessica Clarke <jrtc27 at jrtc27.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/test/CodeGen/builtins-arm64.c
M clang/test/CodeGen/builtins-wasm.c
M llvm/docs/LangRef.rst
M llvm/include/llvm/IR/Intrinsics.td
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
M llvm/test/Assembler/autoupgrade-thread-pointer.ll
M llvm/test/CodeGen/AArch64/stack-tagging-prologue.ll
M llvm/test/Instrumentation/HWAddressSanitizer/alloca-array.ll
M llvm/test/Instrumentation/HWAddressSanitizer/alloca-compat.ll
M llvm/test/Instrumentation/HWAddressSanitizer/alloca-with-calls.ll
M llvm/test/Instrumentation/HWAddressSanitizer/exception-lifetime.ll
M llvm/test/Instrumentation/HWAddressSanitizer/prologue.ll
M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope-setjmp.ll
M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
M llvm/test/Transforms/SafeStack/AArch64/abi.ll
M llvm/test/Transforms/SafeStack/AArch64/abi_ssp.ll
M llvm/test/Transforms/SafeStack/AArch64/unreachable.ll
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
Log Message:
-----------
[clang][IR] Overload @llvm.thread.pointer to support non-AS0 targets (#132489)
Thread-local globals live, by default, in the default globals address
space, which may not be 0, so we need to overload @llvm.thread.pointer
to support other address spaces, and use the default globals address
space in Clang.
Commit: d46458c11b4ea7906e1d02d598af2033df98f80e
https://github.com/llvm/llvm-project/commit/d46458c11b4ea7906e1d02d598af2033df98f80e
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/test/tools/llvm-exegesis/AArch64/skip_unsupported_instructions.s
Log Message:
-----------
[llvm-exegesis] Disable test
This patch disables the skip unsupported instructions test on AArch64. On
machines that have hardware support for pointer authentication the test will
try and disable certain features, but currently fails depending upon the
configuration.
Commit: e8b2c3176a9adf3c3a6b9cb78e2fb140dbdbf71a
https://github.com/llvm/llvm-project/commit/e8b2c3176a9adf3c3a6b9cb78e2fb140dbdbf71a
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/M68k/CMakeLists.txt
M llvm/lib/Target/M68k/M68kISelDAGToDAG.cpp
M llvm/lib/Target/M68k/M68kISelLowering.cpp
M llvm/lib/Target/M68k/M68kISelLowering.h
M llvm/lib/Target/M68k/M68kInstrInfo.td
A llvm/lib/Target/M68k/M68kSelectionDAGInfo.cpp
A llvm/lib/Target/M68k/M68kSelectionDAGInfo.h
M llvm/lib/Target/M68k/M68kSubtarget.cpp
M llvm/lib/Target/M68k/M68kSubtarget.h
Log Message:
-----------
[M68k] TableGen-erate SDNode descriptions (#139449)
This consolidates node definitions into one place and enables automatic
node verification.
Part of #119709.
Commit: a608b4914209f4238fe83a6b5fa8fd7219f11115
https://github.com/llvm/llvm-project/commit/a608b4914209f4238fe83a6b5fa8fd7219f11115
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/Passes.h
Log Message:
-----------
[llvm] clang-format llvm/CodeGen/Passes.h (#139951)
Reformat a few header files under llvm/include/llvm/CodeGen/Passes.h
with clang-format in preparation for a codemod.
This is just a formatting change; no functionality is impacted.
Commit: 960afcc90e8fb75b725ed331f4bc60eb2398d6e5
https://github.com/llvm/llvm-project/commit/960afcc90e8fb75b725ed331f4bc60eb2398d6e5
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang/include/clang/Serialization/ModuleCache.h
M clang/include/clang/Serialization/ModuleFile.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
M clang/include/clang/Tooling/DependencyScanning/InProcessModuleCache.h
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ModuleCache.cpp
M clang/lib/Serialization/ModuleManager.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp
Log Message:
-----------
[clang][modules] Timestamp-less validation API (#138983)
Timestamps are an implementation detail of the cross-process module
cache implementation. This PR hides it from the `ModuleCache` API, which
simplifies the in-process implementation.
Commit: 0dd2c9f7a3f42138da0b8ed4fea80470ea7a510f
https://github.com/llvm/llvm-project/commit/0dd2c9f7a3f42138da0b8ed4fea80470ea7a510f
Author: Thurston Dang <thurston at google.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/IR/AutoUpgrade.cpp
Log Message:
-----------
Fix-forward build error from #132489
Replace deprecated use of getDeclaration that was added in #132489
llvm/lib/IR/AutoUpgrade.cpp:1480:26: error: 'getDeclaration' is deprecated: Use getOrInsertDeclaration instead [-Werror,-Wdeprecated-declarations]
1480 | NewFn = Intrinsic::getDeclaration(
| ^~~~~~~~~~~~~~
| getOrInsertDeclaration
Commit: 21f1a616d60934953de3f304aafcad968e770b0a
https://github.com/llvm/llvm-project/commit/21f1a616d60934953de3f304aafcad968e770b0a
Author: James Newling <james.newling at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
M mlir/test/Dialect/Vector/canonicalize/vector-transpose.mlir
M mlir/test/Dialect/Vector/vector-transpose-lowering.mlir
Log Message:
-----------
[mlir][vector] Additional transpose folding (#138347)
Fold transpose with unit-dimensions. Seen in the wild:
```
%0 = vector.transpose %arg, [0, 2, 1, 3] : vector<6x1x1x4xi8> to vector<6x1x1x4xi8>
```
This transpose can be folded because (1) it preserves the shape and (2)
the shuffled dims are unit extent.
Also addresses comment about static vs anonymous namespace:
https://github.com/llvm/llvm-project/pull/135841#discussion_r2071869067
---------
Signed-off-by: James Newling <james.newling at gmail.com>
Commit: 847561e48f4e00f69ceaa3b25ca6ad2138fbbb83
https://github.com/llvm/llvm-project/commit/847561e48f4e00f69ceaa3b25ca6ad2138fbbb83
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsNVVM.td
Log Message:
-----------
[NVPTX] Further refactor intrinsic definitions to remove redundancy (NFC) (#139924)
Note: the diff indicates this change has no impact on the intrinsic code
generated by table-gen.
Commit: 1043810769a5efcbf5d1f468dc48ddcc289c5b32
https://github.com/llvm/llvm-project/commit/1043810769a5efcbf5d1f468dc48ddcc289c5b32
Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
R offload/test/offloading/gpupgo/pgo1.c
R offload/test/offloading/gpupgo/pgo2.c
A offload/test/offloading/gpupgo/pgo_atomic_teams.c
A offload/test/offloading/gpupgo/pgo_atomic_threads.c
A offload/test/offloading/gpupgo/pgo_device_and_host.c
A offload/test/offloading/gpupgo/pgo_device_only.c
Log Message:
-----------
[PGO][Offload] Update PGO GPU tests (#132262)
Commit: 1778d3b8245b9a7787bbd0b00f60f879ed4689c9
https://github.com/llvm/llvm-project/commit/1778d3b8245b9a7787bbd0b00f60f879ed4689c9
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/test/Dialect/Vector/linearize.mlir
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[mlir] [vector] Add linearization pattern for vector.create_mask (#138214)
This PR is a breakdown [3 / 4] of the PR #136193
The PR adds linearization patterns for vector.create_mask
Commit: d0a6b2f4c093f085f861f0f91767091e561bcec0
https://github.com/llvm/llvm-project/commit/d0a6b2f4c093f085f861f0f91767091e561bcec0
Author: Nico Weber <thakis at chromium.org>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-doc/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/unittests/clang-doc/BUILD.gn
Log Message:
-----------
[gn] port 3bdfa6f3e8eb
Commit: 3a9992d248b510428d31a6ba644a673fe5c9683e
https://github.com/llvm/llvm-project/commit/3a9992d248b510428d31a6ba644a673fe5c9683e
Author: Nico Weber <thakis at chromium.org>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Passes/BUILD.gn
Log Message:
-----------
[gn] port ec406e86745af
Commit: 87e6f1d7eba26e724c2824353edb48b3d9269957
https://github.com/llvm/llvm-project/commit/87e6f1d7eba26e724c2824353edb48b3d9269957
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
Log Message:
-----------
[gn build] Port 0ab67ec19167
Commit: 699a2f188d77a273312a68ae8bae60606559c860
https://github.com/llvm/llvm-project/commit/699a2f188d77a273312a68ae8bae60606559c860
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/CodeGen/BUILD.gn
Log Message:
-----------
[gn build] Port 14836597f5d8
Commit: 8b53ada2422a350397cbe4058f8cd8c21a5137a5
https://github.com/llvm/llvm-project/commit/8b53ada2422a350397cbe4058f8cd8c21a5137a5
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/Transforms/Vectorize/BUILD.gn
Log Message:
-----------
[gn build] Port 5b9246517f8f
Commit: 41fcd7e78be0dac2c8d984afce341b5223703a8a
https://github.com/llvm/llvm-project/commit/41fcd7e78be0dac2c8d984afce341b5223703a8a
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/include/llvm/ADT/BitmaskEnum.h
M llvm/unittests/ADT/BitmaskEnumTest.cpp
Log Message:
-----------
[ADT] Add operator! to BitmaskEnum (#139958)
Add a logical (boolean) "not" operator.
Commit: 18b885f66babff3a10451bc811ffc077d61ed8ee
https://github.com/llvm/llvm-project/commit/18b885f66babff3a10451bc811ffc077d61ed8ee
Author: Qinkun Bao <qinkun at google.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang/include/clang/Serialization/ModuleCache.h
M clang/include/clang/Serialization/ModuleFile.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
M clang/include/clang/Tooling/DependencyScanning/InProcessModuleCache.h
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ModuleCache.cpp
M clang/lib/Serialization/ModuleManager.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp
Log Message:
-----------
Revert "[clang][modules] Timestamp-less validation API" (#139987)
Reverts llvm/llvm-project#138983
Commit: 34be80aa6edda60e240e4ea46f28b1b54ababf72
https://github.com/llvm/llvm-project/commit/34be80aa6edda60e240e4ea46f28b1b54ababf72
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M mlir/lib/ExecutionEngine/JitRunner.cpp
R mlir/test/mlir-runner/verify-entry-point-result.mlir
A mlir/test/mlir-runner/verify-entry-point.mlir
Log Message:
-----------
[mlir-runner] Check entry function does not expect arguments (#136825)
This PR fixes a crash if entry function has inputs. Fixes #136143.
Commit: 520773b47eba0df02730b929df073e1a38474bae
https://github.com/llvm/llvm-project/commit/520773b47eba0df02730b929df073e1a38474bae
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorLib.hlsl
M clang/test/CodeGenHLSL/builtins/ByteAddressBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/static-local-ctor.hlsl
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
Log Message:
-----------
[HLSL] Add resource constructor with implicit binding for global resources (#138976)
Adds constructor for resources with implicit binding and applies it to
all resources without binding at the global scope.
Adds Clang builtin function
`__builtin_hlsl_resource_handlefromimplicitbinding` that gets translated
to `llvm.dx|spv.resource.handlefromimplicitbinding` intrinsic calls.
Specific bindings are assigned in DXILResourceImplicitBinding pass.
Design proposals:
https://github.com/llvm/wg-hlsl/blob/main/proposals/0024-implicit-resource-binding.md
https://github.com/llvm/wg-hlsl/blob/main/proposals/0025-resource-constructors.md
One change from the proposals is that the `orderId` parameter is added
onto the constructor. Originally it was supposed to be generated in
codegen when the `llvm.dx|spv.resource.handlefromimplicitbinding` call
is emitted, but that is not possible because the call is inside a
constructor, and the constructor body is generated once per resource
type and not resource instance. So the only way to inject instance-based
data like `orderId` into the
`llvm.dx|spv.resource.handlefromimplicitbinding` call is that it must
come in via the constructor argument.
Closes #136784
Commit: 2a8960e48b178fb2533e71bbe164e9f383046114
https://github.com/llvm/llvm-project/commit/2a8960e48b178fb2533e71bbe164e9f383046114
Author: Jim Lin <jim at andestech.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/features-info.ll
A llvm/test/MC/RISCV/xandesvdot-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Add Andes XAndesVDot (Andes Vector Dot Product) extension. (#139849)
The spec can be found at:
https://github.com/andestech/andes-v5-isa/releases/tag/ast-v5_4_0-release.
This patch only supports assembler.
Intrinsics support will be added in a later patch.
Commit: ee786975195c9cab264c88db8c43980b78780167
https://github.com/llvm/llvm-project/commit/ee786975195c9cab264c88db8c43980b78780167
Author: Jim Lin <jim at andestech.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsRISCV.td
A llvm/include/llvm/IR/IntrinsicsRISCVXAndes.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
A llvm/test/CodeGen/RISCV/rvv/xandesvpackfph-vfpmadb.ll
A llvm/test/CodeGen/RISCV/rvv/xandesvpackfph-vfpmadt.ll
Log Message:
-----------
[RISCV] Support LLVM IR intrinsics for XAndesVPackFPH (#139860)
This patch adds LLVM IR intrinsic support for XAndesVPackFPH.
The document for the intrinsics can be found at:
https://github.com/andestech/andes-vector-intrinsic-doc/blob/ast-v5_4_0-release-v5/auto-generated/andes-v5/intrinsic_funcs.adoc#andes-vector-packed-fp16-extensionxandesvpackfph
and with policy variants
https://github.com/andestech/andes-vector-intrinsic-doc/blob/ast-v5_4_0-release-v5/auto-generated/andes-v5/policy_funcs/intrinsic_funcs.adoc#andes-vector-packed-fp16-extensionxandesvpackfph
The clang part will be added in a later patch.
Co-authored-by: Tony Chuan-Yue Yuan <yuan593 at andestech.com>
Commit: 4630d464c5cfd3f2ccdf3ac167694977736ce00e
https://github.com/llvm/llvm-project/commit/4630d464c5cfd3f2ccdf3ac167694977736ce00e
Author: Matt <msta at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/Module.h
A clang/test/Modules/pr130712.cppm
Log Message:
-----------
[clang] Fix a segfault when M is a nullptr (#130712)
If `MM->getOwningModule` returns nullptr, then `isVisible` is called
with nullptr, which then calls `getImportLoc(nullptr)`
https://github.com/llvm/llvm-project/blob/077e0c134a31cc16c432ce685458b1de80bfbf84/clang/lib/Lex/PPMacroExpansion.cpp#L208
Commit: 1e503d08e1b6a285608e266acafd40eb2be5ca83
https://github.com/llvm/llvm-project/commit/1e503d08e1b6a285608e266acafd40eb2be5ca83
Author: Iris Shi <0.0 at owo.li>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Driver/riscv-arch.c
M clang/test/Preprocessor/riscv-target-features.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
A llvm/lib/Target/RISCV/RISCVInstrInfoQ.td
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/features-info.ll
A llvm/test/MC/RISCV/rv32q-invalid.s
A llvm/test/MC/RISCV/rv64q-invalid.s
A llvm/test/MC/RISCV/rv64q-valid.s
A llvm/test/MC/RISCV/rvq-aliases-valid.s
A llvm/test/MC/RISCV/rvq-pseudos.s
A llvm/test/MC/RISCV/rvq-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV][MC] Add support for Q extension (#139369)
Closes #130217.
https://github.com/riscv/riscv-isa-manual/blob/main/src/q-st-ext.adoc
Commit: 25e91ed202f0a0c4a8ad946fbbc0a507deff2b8b
https://github.com/llvm/llvm-project/commit/25e91ed202f0a0c4a8ad946fbbc0a507deff2b8b
Author: Iris Shi <0.0 at owo.li>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td
A llvm/test/MC/RISCV/rv64zfa-only-valid.s
M llvm/test/MC/RISCV/zfa-invalid.s
A llvm/test/MC/RISCV/zfa-quad-invalid.s
M llvm/test/MC/RISCV/zfa-valid.s
Log Message:
-----------
[RISCV][MC] Add Q support for Zfa (#139508)
https://github.com/riscv/riscv-isa-manual/blob/main/src/zfa.adoc
Commit: 99e8d22d6944428d6e6632e9537bd338a650c453
https://github.com/llvm/llvm-project/commit/99e8d22d6944428d6e6632e9537bd338a650c453
Author: Iris Shi <0.0 at owo.li>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoQ.td
M llvm/lib/Target/RISCV/RISCVSchedGenericOOO.td
M llvm/lib/Target/RISCV/RISCVSchedMIPSP8700.td
M llvm/lib/Target/RISCV/RISCVSchedRocket.td
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
M llvm/lib/Target/RISCV/RISCVSchedSiFiveP400.td
M llvm/lib/Target/RISCV/RISCVSchedSiFiveP500.td
M llvm/lib/Target/RISCV/RISCVSchedSiFiveP600.td
M llvm/lib/Target/RISCV/RISCVSchedSpacemitX60.td
M llvm/lib/Target/RISCV/RISCVSchedSyntacoreSCR345.td
M llvm/lib/Target/RISCV/RISCVSchedSyntacoreSCR7.td
M llvm/lib/Target/RISCV/RISCVSchedTTAscalonD8.td
M llvm/lib/Target/RISCV/RISCVSchedXiangShanNanHu.td
M llvm/lib/Target/RISCV/RISCVSchedule.td
Log Message:
-----------
[RISCV][Scheduler] Add scheduler definitions for the Q extension (#139495)
Commit: 369c4093482210442bb42366c53fd55f4355dc8c
https://github.com/llvm/llvm-project/commit/369c4093482210442bb42366c53fd55f4355dc8c
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Driver.cpp
M lld/ELF/Writer.cpp
M llvm/include/llvm/Support/FileOutputBuffer.h
M llvm/lib/Support/FileOutputBuffer.cpp
M llvm/unittests/Support/FileOutputBufferTest.cpp
Log Message:
-----------
Support,lld: Rename misnamed F_no_mmap to F_mmap
`F_no_mmap` introduced by https://reviews.llvm.org/D69294 is misnamed.
It oughts to be `F_mmap`
When the output is a regular file or do not exist,
`--no-mmap-output-file` is the default. Relands #134787 by fixing the
lld option default. Note: changing the default to --map-output-file
would likely fail on llvm-clang-x86_64-sie-win
(https://lab.llvm.org/buildbot/#/builders/46/builds/14847)
Pull Request: https://github.com/llvm/llvm-project/pull/139836
Commit: 40778822f7191d6f10fa36d9036133370a12bd9a
https://github.com/llvm/llvm-project/commit/40778822f7191d6f10fa36d9036133370a12bd9a
Author: Madhur Amilkanthwar <madhura at nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/test/Transforms/GVN/phi.ll
M llvm/test/Transforms/GVN/pre-compare.ll
M llvm/test/Transforms/GVN/readattrs.ll
M llvm/test/Transforms/GVN/setjmp.ll
M llvm/test/Transforms/GVN/tbaa.ll
M llvm/test/Transforms/GVN/vscale.ll
Log Message:
-----------
[GVN][NFC] Add MSSA checks in tests 2/N (#137814)
The previous patch in this series is #130261
Commit: 690a30f3fd68a1a97bd3f8b13470abf9d34a61df
https://github.com/llvm/llvm-project/commit/690a30f3fd68a1a97bd3f8b13470abf9d34a61df
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[llvm] Construct SmallVector with ArrayRef (NFC) (#139992)
Commit: 70ef89b9137e03b86cd49fd221cb8c0324984684
https://github.com/llvm/llvm-project/commit/70ef89b9137e03b86cd49fd221cb8c0324984684
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-14 (Wed, 14 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
Log Message:
-----------
[AMDGPU] Use std::optional::value_or (NFC) (#140006)
Commit: 53f11dd4d60ad416cfeaabaf59a33d7754a8f1f1
https://github.com/llvm/llvm-project/commit/53f11dd4d60ad416cfeaabaf59a33d7754a8f1f1
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M libcxx/include/__fwd/pair.h
M libcxx/include/__memory/uses_allocator_construction.h
M libcxx/include/__node_handle
M libcxx/include/__tree
M libcxx/include/map
M libcxx/test/libcxx/containers/associative/tree_key_value_traits.pass.cpp
M libcxx/utils/gdb/libcxx/printers.py
Log Message:
-----------
[libc++] Avoid type-punning between __value_type and pair (#134819)
Before this patch, we were dereferencing pointers to objects which were
never constructed. Now we always assume that nodes store `pair<const
KeyT, ValueT>` for maps instead, as they actually do. This patch also
allows for significant follow-up simplifications, since
`__node_value_type` and `__container_value_type` are the same type now.
Commit: ab119add3573c834185810a15a8a3648b1819959
https://github.com/llvm/llvm-project/commit/ab119add3573c834185810a15a8a3648b1819959
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
LangRef: Fix minimumnum/maximumnum nan handling phrasing (#139228)
Make this consistent with other operations with respect to
signaling nan quieting. This was specifying that quieting is
required, which is true for IEEE. Make this consistent with other
IR operations, and signaling nan quieting is possible but optional
in the case where there are two nan inputs.
This permits directly selecting the intrinsic to the hardware
instruction in the default floating-point environment for shaders.
Commit: 647db1b02d1c6702737378c0726deda234a23ec4
https://github.com/llvm/llvm-project/commit/647db1b02d1c6702737378c0726deda234a23ec4
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.cpp
M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.h
A llvm/test/CodeGen/AArch64/aarch64-sme-stubs.ll
M llvm/test/CodeGen/AArch64/sme-peephole-opts.ll
M llvm/test/CodeGen/AArch64/sme-vg-to-stack.ll
M llvm/test/CodeGen/AArch64/sme-zt0-state.ll
M llvm/unittests/Target/AArch64/SMEAttributesTest.cpp
Log Message:
-----------
Reland "[AArch64][SME] Split SMECallAttrs out of SMEAttrs" (#138671)
SMECallAttrs is a new helper class that holds all the SMEAttrs for a
call. The interfaces to query actions needed for the call (e.g. change
streaming mode) have been moved to the SMECallAttrs class.
The main motivation for this change is to make the split between the
caller, callee, and callsite attributes more apparent.
Before this change, we would always merge callsite and callee
attributes. The main reason to do this was to handle indirect calls,
however, we also occasionally used callsite attributes on direct calls
in tests (mainly to avoid creating multiple function declarations). With
this patch, we now explicitly handle indirect calls and disallow
incompatible attributes on direct calls (so this patch is not entirely
an NFC).
Same as #137239, but with a change to avoid inferring SME attributes for
function definitions. This allows stubbing the SME ABI routines in C/C++
(and matches the old behaviour).
Commit: 85c3c986304a83b2e2fda2cefb62e0f456c14dac
https://github.com/llvm/llvm-project/commit/85c3c986304a83b2e2fda2cefb62e0f456c14dac
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M lldb/include/lldb/Core/Address.h
M lldb/source/Core/Address.cpp
M lldb/source/Target/RegisterContextUnwind.cpp
M lldb/test/Shell/Unwind/Inputs/basic-block-sections-with-dwarf.s
M lldb/test/Shell/Unwind/basic-block-sections-with-dwarf-static.test
Log Message:
-----------
[lldb] Fix offset computation in RegisterContextUnwind (#137155)
AddressFunctionScope was always returning the first address range of the
function (assuming it was the only one). This doesn't work for
RegisterContextUnwind (it's only caller), when the function doesn't
start at the lowest address because it throws off the 'how many bytes
"into" a function I am' computation. This patch replaces the result with
a call to (recently introduced)
SymbolContext::GetFunctionOrSymbolAddress.
Commit: 291fa641ec084ce32468d8a2a9205157d88b022d
https://github.com/llvm/llvm-project/commit/291fa641ec084ce32468d8a2a9205157d88b022d
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
A clang/test/Headers/__clang_hip_cmath-return_types.hip
Log Message:
-----------
Pre-Commit tests: [HIP] Fix return type in __clang_hip_cmath.h (#139891)
Tests related to https://github.com/llvm/llvm-project/pull/139697
Commit: aa9f8596b01fef013ab62c20e61fc96d165f60f7
https://github.com/llvm/llvm-project/commit/aa9f8596b01fef013ab62c20e61fc96d165f60f7
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/dropped_debug_info_assert.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-inline-asm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-metadata.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-legalize-range-metadata.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mmra.ll
M llvm/test/CodeGen/AMDGPU/lower-kernel-and-module-lds.ll
M llvm/test/CodeGen/AMDGPU/lower-kernel-lds.ll
M llvm/test/CodeGen/AMDGPU/lower-lds-struct-aa-memcpy.ll
M llvm/test/CodeGen/AMDGPU/lower-lds-struct-aa-merge.ll
M llvm/test/CodeGen/AMDGPU/lower-lds-struct-aa.ll
M llvm/test/CodeGen/AMDGPU/lower-module-lds-all-indirect-accesses.ll
M llvm/test/CodeGen/AMDGPU/lower-module-lds-indirect-extern-uses-max-reachable-alignment.ll
M llvm/test/CodeGen/AMDGPU/lower-module-lds-via-hybrid.ll
M llvm/test/CodeGen/AMDGPU/mmra.ll
Log Message:
-----------
[AMDGPU] Add flag to prevent reruns of LowerModuleLDS (#129520)
FullLTO has to run this early before module splitting occurs otherwise
module splitting won't work as expected. There was a targeted fix for
fortran on another branch that disables the LTO run but that'd break
full LTO module splitting entirely.
Test changes are due to metadata indexes shifting.
See #122891
Commit: c15539cdc45dafbaca45cda83d0ca7a09d6b9d51
https://github.com/llvm/llvm-project/commit/c15539cdc45dafbaca45cda83d0ca7a09d6b9d51
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/X86Vector/X86Vector.td
M mlir/include/mlir/Dialect/X86Vector/X86VectorInterfaces.td
M mlir/lib/Dialect/X86Vector/IR/X86VectorDialect.cpp
M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
Log Message:
-----------
[mlir][x86vector] Improve intrinsic operands creation (#138666)
Refactors intrinsic op interface to delegate initial operands mapping to
the dialect converter and allow intrinsic operands getters to only
perform last mile post-processing.
Commit: 780054d3ff18075a6bc433029f336931792b1d2d
https://github.com/llvm/llvm-project/commit/780054d3ff18075a6bc433029f336931792b1d2d
Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/ISDOpcodes.h
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
A llvm/test/CodeGen/AArch64/nofpclass.ll
A llvm/test/CodeGen/ARM/nofpclass.ll
A llvm/test/CodeGen/Mips/nofpclass.ll
A llvm/test/CodeGen/X86/nofpclass.ll
Log Message:
-----------
CodeGen: Add ISD::AssertNoFPClass (#138839)
It is used to mark a value that we are sure that it is not some fcType.
The examples include:
* An arguments of a function is marked with nofpclass
* Output value of an intrinsic can be sure to not be some type
So that the following operation can make some assumptions.
Commit: 0bc39937164f09823c906926d7eefd7a8bcb5161
https://github.com/llvm/llvm-project/commit/0bc39937164f09823c906926d7eefd7a8bcb5161
Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/ISDOpcodes.h
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
Log Message:
-----------
[SelectionDAG] Add an ISD node for for get.active.lane.mask (#139084)
For now expansion still happens in SelectionDAGBuilder when
GET_ACTIVE_LANE_MASK is not legal on the target.
This patch also includes changes in AArch64ISelLowering to replace
handling of the get.active.lane.mask intrinsic to use the ISD node.
Tablegen patterns are added which match to whilelo for scalable types.
A follow up change will add support for more types to be lowered to
GET_ACTIVE_LANE_MASK by allowing splitting of the node.
Commit: eb5e66b82d09a5d084700fa5d8713c40d27ed1bd
https://github.com/llvm/llvm-project/commit/eb5e66b82d09a5d084700fa5d8713c40d27ed1bd
Author: Alexander Romanov <alexander.romanov at syntacore.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZicbo.td
Log Message:
-----------
[RISCV] Change type of Zicbop prefetch operand to GPRMem (#139888)
Prior to this commit PREFETCH_* instructions considered their operand
register to be a simple GPR which is not entirely correct as it is a
base address for possible prefetching operation (According to cmobase
v1.0.1)
Commit: c4f7ab1d2e27d7d742d89606eb40ffd547b448b1
https://github.com/llvm/llvm-project/commit/c4f7ab1d2e27d7d742d89606eb40ffd547b448b1
Author: George Chaltas <george.chaltas at intel.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Initialize IR block pointers in ILV. (NFC) (#139807)
Setting unitialized pointers to nullptr in InnerLoopVectorizer()
constructor. These were noticed during a review of the code. Seems like
a good idea to clean them up.
Commit: ba5591e39d50973bf60fe2716d085465b62768e8
https://github.com/llvm/llvm-project/commit/ba5591e39d50973bf60fe2716d085465b62768e8
Author: Pablo Antonio Martinez <pablo.antonio.martinez at huawei.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/test/Dialect/Linalg/transform-op-fuse-into-containing.mlir
Log Message:
-----------
[mlir][Transform] Reuse bbArgs in FuseIntoContainingOp (#135066)
When fusing two ops with the same output operand using
FuseIntoContainingOp, the current implementation makes both ops write
into a different value pointing to the same tensor. This, in the end,
will bufferize into two different buffers, which is sub-optimal. The
current patch solves this problem, adding support to reuse the tensor by
both consumer and producer.
More precisely, before FuseIntoContainingOp is applied, we may have two
ops that write into the same output tensor. However, the consumer would
be tiled, thus the op would write into the loop iter_args (i.e., it does
not write directly into the original tensor). When the producer is fused
into the loop, the output tensor of the producer remains the same, so
the consumer and producer writes into two different values (consumer
writes into the iter_args and producer into the original tensor).
The current patch clones the consumer into the loop and checks if the
consumer is writing to the same value pointed by the loop inits, in
which case, it makes the output point to such tensor.
Commit: 947a52db7c88a6946e0d888851cc93faca6d726f
https://github.com/llvm/llvm-project/commit/947a52db7c88a6946e0d888851cc93faca6d726f
Author: Csanád Hajdú <csanad.hajdu at arm.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/test/CodeGen/AArch64/arm64-arith-saturating.ll
M llvm/test/CodeGen/AArch64/bitcast-extend.ll
M llvm/test/CodeGen/AArch64/fix-shuffle-vector-be-rev.ll
M llvm/test/CodeGen/AArch64/fp16-vector-shuffle.ll
M llvm/test/CodeGen/AArch64/itofp.ll
M llvm/test/CodeGen/AArch64/neon-bitcast.ll
M llvm/test/CodeGen/AArch64/neon-insert-sve-elt.ll
M llvm/test/CodeGen/AArch64/neon-insextbitcast.ll
M llvm/test/CodeGen/AArch64/shuffle-extend.ll
M llvm/test/CodeGen/AArch64/vector-fcvt.ll
Log Message:
-----------
[AArch64] Prefer using DUP instead of INS where possible (#138549)
Replace all instances of `INS(IMPLICIT_DEF, 0, v, idx)` with
`DUP(v, idx)` in instruction selection.
`INS` (e.g. `mov v0.s[0], v1.s[1]`) has a value dependency on its output
register, which becomes a false dependency when we're inserting into an
`IMPLICIT_DEF` register. We can break this false dependency by using
`DUP` (e.g. `mov s0, v1.s[1]`) instead.
Commit: fbdf38ed4397e1d24c31a4bd79f7c6f55939f34f
https://github.com/llvm/llvm-project/commit/fbdf38ed4397e1d24c31a4bd79f7c6f55939f34f
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M libcxx/src/.clang-tidy
M libcxx/test/configs/cmake-bridge.cfg.in
A libcxx/test/libcxx/clang_tidy.sh.py
M libcxx/utils/ci/run-buildbot
Log Message:
-----------
[libc++] run clang-tidy on src/ in the CI (#121198)
This adds a new test to run clang-tidy on the `src/` directory and
temporarily disables and clang-tidy checks that currently fail. They
will be enabled in follow-up patches.
Commit: e7e4d99c586399758e6ddb76fb358c2dcccfae36
https://github.com/llvm/llvm-project/commit/e7e4d99c586399758e6ddb76fb358c2dcccfae36
Author: Ricardo Jesus <rjj at nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/test/CodeGen/AArch64/arm64-vshift.ll
Log Message:
-----------
[AArch64] Use vecshiftL64 instead of vecshiftR64 to match scalar SLI imm. (#139904)
`SIMDScalarLShiftDTied` should be using `vecshiftL64` to match
the immediate argument rather than `vecshiftR64` as the latter
prevents the pattern from matching 0 (and allows 64 instead).
Fixes #139879.
Commit: 49bced456c50fbb4e06543115b34e15585c7864b
https://github.com/llvm/llvm-project/commit/49bced456c50fbb4e06543115b34e15585c7864b
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M libcxx/include/__format/format_functions.h
M libcxx/test/benchmarks/format/format.bench.cpp
Log Message:
-----------
[libc++] Add basic constant folding for std::format (#107197)
```
-------------------------------------------------------------------
Benchmark old new
-------------------------------------------------------------------
BM_format_string<char>/1 42.1 ns 7.67 ns
BM_format_string<char>/2 22.3 ns 3.84 ns
BM_format_string<char>/4 10.6 ns 1.92 ns
BM_format_string<char>/8 5.31 ns 0.815 ns
BM_format_string<char>/16 2.79 ns 0.480 ns
BM_format_string<char>/32 1.63 ns 0.550 ns
BM_format_string<char>/64 0.782 ns 0.276 ns
BM_format_string<char>/128 0.397 ns 0.145 ns
BM_format_string<char>/256 0.211 ns 0.066 ns
BM_format_string<char>/512 0.154 ns 0.035 ns
BM_format_string<char>/1024 0.146 ns 0.021 ns
BM_format_string<char>/2048 0.125 ns 0.033 ns
BM_format_string<char>/4096 0.097 ns 0.016 ns
BM_format_string<char>/8192 0.077 ns 0.012 ns
BM_format_string<char>/16384 0.066 ns 0.010 ns
BM_format_string<char>/32768 0.062 ns 0.016 ns
BM_format_string<char>/65536 0.062 ns 0.016 ns
BM_format_string<char>/131072 0.443 ns 0.015 ns
BM_format_string<char>/262144 0.629 ns 0.017 ns
BM_format_string<char>/524288 0.715 ns 0.020 ns
BM_format_string<char>/1048576 0.757 ns 0.020 ns
BM_format_string<wchar_t>/1 38.8 ns 34.0 ns
BM_format_string<wchar_t>/2 19.4 ns 16.9 ns
BM_format_string<wchar_t>/4 9.88 ns 8.45 ns
BM_format_string<wchar_t>/8 6.30 ns 6.47 ns
BM_format_string<wchar_t>/16 3.11 ns 3.21 ns
BM_format_string<wchar_t>/32 1.60 ns 1.63 ns
BM_format_string<wchar_t>/64 0.899 ns 0.925 ns
BM_format_string<wchar_t>/128 0.676 ns 0.693 ns
BM_format_string<wchar_t>/256 0.658 ns 0.685 ns
BM_format_string<wchar_t>/512 0.556 ns 0.531 ns
BM_format_string<wchar_t>/1024 0.428 ns 0.402 ns
BM_format_string<wchar_t>/2048 0.328 ns 0.319 ns
BM_format_string<wchar_t>/4096 0.276 ns 0.274 ns
BM_format_string<wchar_t>/8192 0.252 ns 0.251 ns
BM_format_string<wchar_t>/16384 0.248 ns 0.246 ns
BM_format_string<wchar_t>/32768 0.229 ns 0.232 ns
BM_format_string<wchar_t>/65536 0.248 ns 0.246 ns
BM_format_string<wchar_t>/131072 0.250 ns 0.240 ns
BM_format_string<wchar_t>/262144 3.03 ns 3.03 ns
BM_format_string<wchar_t>/524288 3.14 ns 3.15 ns
BM_format_string<wchar_t>/1048576 3.60 ns 3.61 ns
BM_string_without_formatting<char> 32.2 ns 0.470 ns
BM_string_without_formatting<wchar_t> 38.8 ns 10.2 ns
```
Commit: 9893f6bed3ab707383dc1901a237f0d4481049d6
https://github.com/llvm/llvm-project/commit/9893f6bed3ab707383dc1901a237f0d4481049d6
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/lib/Headers/__clang_hip_cmath.h
M clang/test/Headers/__clang_hip_cmath-return_types.hip
Log Message:
-----------
[HIP] Fix return type in __clang_hip_cmath.h (#139697)
Before, some functions like `isgreater(float, double)` would return a
`double` instead of a `bool`.
Stumbled upon this bug while trying to adapt
[`External/CUDA/cmath.cu`](https://github.com/llvm/llvm-test-suite/blob/main/External/CUDA/cmath.cu)
to HIP.
```
/_llvm-test-suite/External/HIP/../CUDA/math_h.cu:617:20: error: static assertion failed due to requirement 'std::is_same<double, bool>::value':
617 | static_assert((std::is_same<decltype(isgreater((float)0, (double)0)), bool>::value), "");
```
Commit: 8bd35ca41253ea36fff78d5acf59956a30b6555b
https://github.com/llvm/llvm-project/commit/8bd35ca41253ea36fff78d5acf59956a30b6555b
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/test/CodeGen/SPIRV/pointers/resource-addrspacecast-2.ll
M llvm/test/CodeGen/SPIRV/pointers/resource-addrspacecast.ll
Log Message:
-----------
[SPIR-V] Fix LIT tests, improve ICmpInst's type inference (#139726)
1. There are failed LIT tests at the moment due to type inference
errors.
```
Failed Tests (3):
LLVM :: CodeGen/SPIRV/pointers/ptr-eq-types.ll
LLVM :: CodeGen/SPIRV/validate/sycl-hier-par-basic.ll
LLVM :: CodeGen/SPIRV/validate/sycl-tangle-group-algorithms.ll
```
This PR improves type inference to fix the errors.
2. The following tests start passing:
```
Unexpectedly Passed Tests (2):
LLVM :: CodeGen/SPIRV/pointers/resource-addrspacecast-2.ll
LLVM :: CodeGen/SPIRV/pointers/resource-addrspacecast.ll
```
This PR removes XFAILS in those two test cases.
Commit: c807395011a027caae9ac196edfac328fb90443a
https://github.com/llvm/llvm-project/commit/c807395011a027caae9ac196edfac328fb90443a
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/long-pointer-distance.ll
Log Message:
-----------
[LAA/SLP] Don't truncate APInt in getPointersDiff (#139941)
Change getPointersDiff to return an std::optional<int64_t>, and fill
this value with using APInt::trySExtValue. This simple change requires
changes to other functions in LAA, and major changes in SLPVectorizer
changing types from 32-bit to 64-bit.
Fixes #139202.
Commit: 7cc200529f5791ceed510a02c0fa5343d535267d
https://github.com/llvm/llvm-project/commit/7cc200529f5791ceed510a02c0fa5343d535267d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/test/CodeGen/X86/pr63108.ll
Log Message:
-----------
[X86] pr63108.ll - regenerate test checks
Commit: 7983bdcaa57cb8647b7abede15ec91c89cc43bba
https://github.com/llvm/llvm-project/commit/7983bdcaa57cb8647b7abede15ec91c89cc43bba
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/test/CodeGen/X86/machine-combiner-int-vec.ll
Log Message:
-----------
[X86] machine-combiner-int-vec.ll - regenerate test checks for TERNLOG comments
Reduces diffs in upcoming patch
Commit: 4f19a5c050b0f18703198d839f135a7800306eb5
https://github.com/llvm/llvm-project/commit/4f19a5c050b0f18703198d839f135a7800306eb5
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/test/CodeGen/X86/avg-mask.ll
Log Message:
-----------
[X86] avg-mask.ll - regenerate test checks for TERNLOG comments
Reduces diffs in upcoming patch
Commit: 156985eb8803d72caeff2cbe0e9098286606847f
https://github.com/llvm/llvm-project/commit/156985eb8803d72caeff2cbe0e9098286606847f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/test/CodeGen/X86/avgfloors.ll
Log Message:
-----------
[X86] avgfloors.ll - regenerate test checks for TERNLOG comments
Reduces diffs in upcoming patch
Commit: 4ba8f4e213c97733e3b61e5856b0e85e3d7d6a7f
https://github.com/llvm/llvm-project/commit/4ba8f4e213c97733e3b61e5856b0e85e3d7d6a7f
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/Handler/RequestHandler.h
M lldb/tools/lldb-dap/Handler/ScopesRequestHandler.cpp
M lldb/tools/lldb-dap/JSONUtils.h
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
M lldb/unittests/DAP/ProtocolTypesTest.cpp
Log Message:
-----------
[lldb][lldb-dap] Migrate ScopesRequest to structured types (#138116)
Migrate ScopesRequest To use the Protocol Types
Commit: 5b0572875cafb02fc144d1f6e6e51a34ef27d951
https://github.com/llvm/llvm-project/commit/5b0572875cafb02fc144d1f6e6e51a34ef27d951
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M lld/COFF/COFFLinkerContext.h
M lld/COFF/Chunks.cpp
M lld/COFF/DLL.cpp
M lld/COFF/Driver.cpp
M lld/COFF/InputFiles.cpp
M lld/COFF/SymbolTable.cpp
M lld/COFF/Writer.cpp
M lld/test/COFF/arm64ec-entry-mangle.test
M lld/test/COFF/arm64ec-hybmp.s
M lld/test/COFF/arm64ec-lib.test
M lld/test/COFF/arm64ec-patchable-thunks.test
M lld/test/COFF/arm64ec-range-thunks.s
M lld/test/COFF/arm64ec.test
M lld/test/COFF/arm64x-altnames.s
M lld/test/COFF/arm64x-buildid.s
M lld/test/COFF/arm64x-comm.s
M lld/test/COFF/arm64x-crt-sec.s
M lld/test/COFF/arm64x-ctors-sec.s
M lld/test/COFF/arm64x-guardcf.s
M lld/test/COFF/arm64x-import.test
M lld/test/COFF/arm64x-symtab.s
M lld/test/COFF/arm64x-wrap.s
M lld/test/COFF/autoimport-arm64ec-data.test
Log Message:
-----------
[LLD][COFF] Add support for including native ARM64 objects in ARM64EC images (#137653)
MSVC linker accepts native ARM64 object files as input with
`-machine:arm64ec`, similar to `-machine:arm64x`. Its usefulness is very
limited; for example, both exports and imports are not reflected in the
PE structures and can't work. However, their symbol tables are otherwise
functional.
Since we already have handling of multiple symbol tables implemented for
ARM64X, the required changes are mostly about adjusting relevant checks
to account for them on the ARM64EC target.
Delay-load helper handling is a bit of a shortcut. The patch never pulls
it for native object files and just ensures that the code is fine with
that. In general, I think it would be nice to adjust the driver to pull
it only when it's actually referenced, which would allow applying the
same logic to the native symbol table on ARM64EC without worrying about
pulling too much.
Commit: 3764ba23484afda683eea390407103e609ef4354
https://github.com/llvm/llvm-project/commit/3764ba23484afda683eea390407103e609ef4354
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M compiler-rt/cmake/Modules/AddCompilerRT.cmake
M compiler-rt/cmake/builtin-config-ix.cmake
M compiler-rt/lib/builtins/CMakeLists.txt
M compiler-rt/lib/builtins/aarch64/chkstk.S
M compiler-rt/lib/builtins/aarch64/lse.S
M compiler-rt/lib/builtins/aarch64/sme-libc-mem-routines.S
M compiler-rt/lib/builtins/clear_cache.c
M compiler-rt/lib/builtins/cpu_model/aarch64.c
M compiler-rt/lib/builtins/cpu_model/aarch64.h
M compiler-rt/lib/builtins/fp_compare_impl.inc
M compiler-rt/lib/builtins/fp_lib.h
M compiler-rt/lib/builtins/udivmodti4.c
M compiler-rt/test/builtins/Unit/enable_execute_stack_test.c
M compiler-rt/test/builtins/Unit/fixunstfdi_test.c
M compiler-rt/test/builtins/Unit/multc3_test.c
Log Message:
-----------
[compiler-rt] Add initial ARM64EC builtins support (#139279)
Use the aarch64 variants of assembly functions.
Co-authored-by: Billy Laws <blaws05 at gmail.com>
Commit: 849ecbc3ba1c95f41ee8dd5240c314e1a1980438
https://github.com/llvm/llvm-project/commit/849ecbc3ba1c95f41ee8dd5240c314e1a1980438
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
Log Message:
-----------
[AMDGPU] Simplify getIns64. NFCI. (#139981)
This big switch is unmaintainable and buggy. In particular it
unconditionally
adds clamp if there is omod to VOP3.
Commit: e3867cb07ed1ed319609fbea0ce15f40e2a0efad
https://github.com/llvm/llvm-project/commit/e3867cb07ed1ed319609fbea0ce15f40e2a0efad
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M lldb/unittests/DAP/ProtocolTypesTest.cpp
Log Message:
-----------
[NFC][lldb][lldb-dap] fix C++20 extension warning (#140031)
warning for designated initializers
introduced in commit 4ba8f4e
Commit: d5da557782dd47395fb41e03d7663df6319d7ea6
https://github.com/llvm/llvm-project/commit/d5da557782dd47395fb41e03d7663df6319d7ea6
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M lld/COFF/Driver.cpp
M lld/COFF/Options.td
A lld/test/COFF/arm64x-sameaddress.test
Log Message:
-----------
[LLD][COFF] Allow -arm64xsameaddress in ARM64EC directives (#139631)
Make it a no-op for now, which is sufficient for non-hybrid images.
Fixes #131712.
Commit: c507a0830df2e4fd0c234eee035aac2109de6d6e
https://github.com/llvm/llvm-project/commit/c507a0830df2e4fd0c234eee035aac2109de6d6e
Author: Durgadoss R <durgadossr at nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/docs/NVPTXUsage.rst
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
A llvm/test/CodeGen/NVPTX/cp-async-bulk-s2g-sm100.ll
M llvm/test/CodeGen/NVPTX/cp-async-bulk.ll
Log Message:
-----------
[NVPTX] Add TMA Bulk Copy Intrinsics (#138679)
This patch adds a new variant of TMA Bulk Copy
intrinsics introduced in sm100+. This variant
has an additional byte_mask to select the bytes
for the copy operation.
* Selection is all done through table-gen now.
So, this patch removes the corresponding
SelectCpAsyncBulkS2G() function.
* lit tests are verified with a cuda-12.8 ptxas
executable.
PTX Spec link:
https://docs.nvidia.com/cuda/parallel-thread-execution/#data-movement-and-conversion-instructions-bulk-copy
Signed-off-by: Durgadoss R <durgadossr at nvidia.com>
Commit: f8f11c541dec9bfc19f80918cf12da71d6ae7b99
https://github.com/llvm/llvm-project/commit/f8f11c541dec9bfc19f80918cf12da71d6ae7b99
Author: David Green <david.green at arm.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
A clang/test/CodeGen/AArch64/struct-coerce-using-ptr.cpp
Log Message:
-----------
[AArch64] Add a test case for the coerced arguments. NFC
Commit: 767a203a9e61e307086be96288947d130367a267
https://github.com/llvm/llvm-project/commit/767a203a9e61e307086be96288947d130367a267
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
Log Message:
-----------
[clang][bytecode] Fix discarded LValueToRValueBitCasts (#140034)
We handle discarding fine, but we used to ignore all discarded cast
expressions. Handle bitcasts differently.
Commit: 8bbe0d050ae49062835a8a0729b3219ba1f6362b
https://github.com/llvm/llvm-project/commit/8bbe0d050ae49062835a8a0729b3219ba1f6362b
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
M llvm/unittests/Transforms/Vectorize/VPlanVerifierTest.cpp
Log Message:
-----------
[VPlan] Verify dominance for incoming values of phi-like recipes. (#124838)
Update the verifier to verify dominance for incoming values for phi-like
recipes. The defining recipe must dominate the incoming block for the
incoming value.
Builds on top of https://github.com/llvm/llvm-project/pull/138472 to
retrieve incoming values & corresponding blocks for phi-like recipes.
PR: https://github.com/llvm/llvm-project/pull/124838
Commit: 42ee758bec885deaad08162cc8e97a87d2aba100
https://github.com/llvm/llvm-project/commit/42ee758bec885deaad08162cc8e97a87d2aba100
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/package.json
M lldb/tools/lldb-dap/src-ts/extension.ts
M lldb/tools/lldb-dap/src-ts/ui/modules-data-provider.ts
Log Message:
-----------
Complete the Implementation of DAP modules explorer. (#139934)
This extends the TreeView to show the module property as a tree item instead of
rendering it through the markdown tooltip.

Commit: 30b0946326354d247a92622f08be4722df58bb55
https://github.com/llvm/llvm-project/commit/30b0946326354d247a92622f08be4722df58bb55
Author: Sergio Afonso <safonsof at amd.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Lower/OpenMP/target.f90
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/test/Dialect/OpenMP/ops.mlir
Log Message:
-----------
[Flang][MLIR][OpenMP] Improve use_device_* handling (#137198)
This patch updates MLIR op verifiers for operations taking arguments
that must always be defined by an `omp.map.info` operation to check this
requirement.
It also modifies Flang lowering for `use_device_{addr, ptr}`, as well as
the custom MLIR printer and parser for these clauses, to support
initializing it to `OMP_MAP_RETURN_PARAM` and represent this in the MLIR
representation as `return_param`. This internal mapping flag is what
eventually is used for variables passed via these clauses into the
target region when translating to LLVM IR, so making it explicit in
Flang and MLIR removes an inconsistency in the current representation.
Commit: 0cd7e8aa911dd4d0d6f4c43bef28fd853cf929f5
https://github.com/llvm/llvm-project/commit/0cd7e8aa911dd4d0d6f4c43bef28fd853cf929f5
Author: Sergio Afonso <safonsof at amd.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
Log Message:
-----------
[MLIR][OpenMP] Assert on map translation functions, NFC (#137199)
This patch adds assertions to map-related MLIR to LLVM IR translation
functions and utils to explicitly document whether they are intended for
host or device compilation only.
Over time, map-related handling has increased in complexity. This is
compounded by the fact that some handling is device-specific and some is
host-specific. By explicitly asserting on these functions on the
expected compilation pass, the flow should become slighlty easier to
follow.
Commit: 849990479f0ccc93b1f599167de6e90bdd3e219a
https://github.com/llvm/llvm-project/commit/849990479f0ccc93b1f599167de6e90bdd3e219a
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/unittests/Transforms/Vectorize/VPlanVerifierTest.cpp
Log Message:
-----------
[VPlan] Update check line in verifier unit test w/o assertions.
Should fix failures with assertions disabled, including
https://lab.llvm.org/buildbot/#/builders/2/builds/24015.
Commit: 310ed2b070432db3899473c4c2fd92f6a5e35067
https://github.com/llvm/llvm-project/commit/310ed2b070432db3899473c4c2fd92f6a5e35067
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/test/Transforms/LoopUnroll/peel-last-iteration.ll
Log Message:
-----------
[LoopUnroll] Add tests with multiple exiting/latches and small BTCs.
Extra test coverage for cases mentioned during review of
https://github.com/llvm/llvm-project/pull/139551.
Commit: 124e547e83f3604ac634083542f5313d1badef9b
https://github.com/llvm/llvm-project/commit/124e547e83f3604ac634083542f5313d1badef9b
Author: Frederik Harwath <frederik.harwath at amd.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
Log Message:
-----------
[AMDGPU][Docs] Correct Radeon Pro 5600M ISA (#140041)
As observed by LLVM Discord user "buck", the Radeon Pro 5600M is gfx1011
and the entry in the gfx1010 category was probably meant to be Radeon RX
5600M which indeed is gfx1010.
Commit: 2110faaf5546c06fa4e06697eff8842f19302221
https://github.com/llvm/llvm-project/commit/2110faaf5546c06fa4e06697eff8842f19302221
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/utils/TableGen/X86RecognizableInstr.cpp
Log Message:
-----------
[NFC][TableGen][X86] Use StringSwitch to map from string -> enum (#139929)
Use StringSwitch instead of macro to map from a string to enum values in
X86RecognizableInstr.cpp.
Commit: df9a90cdc5d6a74a183e0c1a77bd7fceacf1df0c
https://github.com/llvm/llvm-project/commit/df9a90cdc5d6a74a183e0c1a77bd7fceacf1df0c
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M openmp/runtime/test/ompt/callback.h
Log Message:
-----------
[OpenMP][test] Define print_possible_return_addresses on SPARC (#138523)
Parts of the `openmp` testsuite currently don't build on SPARC due to
the lack of a `print_possible_return_addresses` definition.
This patch provides one. With it, the vast majority of tests `PASS` on
Solaris/sparcv9 and, with an additional patch, on Linux/sparc64.
The current definition was obtained empirically.
Tested on `sparcv9-sun-solaris2.11`, `sparc64-unknown-linux-gnu`,
`amd64-pc-solaris2.11`, and `x86_64-pc-linux-gnu`.
Commit: f1eebf9e94e3051e88e8f3d3365b663a88e1ca0a
https://github.com/llvm/llvm-project/commit/f1eebf9e94e3051e88e8f3d3365b663a88e1ca0a
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/include/clang/AST/ASTConcept.h
M clang/lib/AST/ASTConcept.cpp
Log Message:
-----------
[NFC][Clang] Adopt simplified `getTrailingObjects` in ASTConcept (#139974)
Use non-templated form of `getTrailingObjects` when using a single
trailing type in `TrailingObjects`.
Commit: 5f53ca30da249b2d46f61791e12e74efef9a8bb6
https://github.com/llvm/llvm-project/commit/5f53ca30da249b2d46f61791e12e74efef9a8bb6
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclTemplate.h
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclTemplate.cpp
Log Message:
-----------
[NFC][Clang] Adopt simplified `getTrailingObjects` in Decl/DeclTemplate (#139977)
Adopt simplied `getTrailingObjects` variants that are not templated
and/or return ArrayRef in Decl/DeclTemplate .h/.cpp files.
Commit: b26adacc8550bc8786ecba08ec87d0b228930bf4
https://github.com/llvm/llvm-project/commit/b26adacc8550bc8786ecba08ec87d0b228930bf4
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/cxx20.cpp
Log Message:
-----------
[clang][bytecode] Check destructors for temporaries (#140039)
Also, increase the EvalID in isPotentialConstantExpr(), since this is
its own evaluation.
Commit: 8e2ac7d6194451cbe2b7203212f2bb4f278e6438
https://github.com/llvm/llvm-project/commit/8e2ac7d6194451cbe2b7203212f2bb4f278e6438
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/include/llvm/Frontend/Directive/DirectiveBase.td
M llvm/include/llvm/Frontend/OpenMP/OMP.td
M llvm/include/llvm/TableGen/DirectiveEmitter.h
M llvm/test/TableGen/directive1.td
M llvm/test/TableGen/directive2.td
M llvm/utils/TableGen/Basic/DirectiveEmitter.cpp
Log Message:
-----------
[llvm][OpenMP] Add "SourceLanguages" property to Directive (#139960)
The official languages that OpenMP recognizes are C/C++ and Fortran.
Some OpenMP directives are language-specific, some are C/C++-only, some
are Fortran-only.
Add a property to the TableGen definition of Directive that will be the
list of languages that allow the directive.
The TableGen backend will then generate a bitmask-like enumeration
SourceLanguages, and a function
SourceLanguages getDirectiveLanguages(Directive D);
Commit: 9273091502994f9b68ca0d1fd04fadd02c0a36df
https://github.com/llvm/llvm-project/commit/9273091502994f9b68ca0d1fd04fadd02c0a36df
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/lib/Parse/ParseOpenMP.cpp
A clang/test/OpenMP/openmp_non_c_directives.c
R clang/test/OpenMP/openmp_workshare.c
Log Message:
-----------
[clang][OpenMP] Improve handling of non-C/C++ directives (#139961)
The PR139793 added handling of the Fortran-only "workshare" directive,
however there are more such directives, e.g. "allocators". Use the
genDirectiveLanguages function to detect non-C/C++ directives instead of
enumerating them.
Commit: 6090c0e0ee1ab8f1a9b6b2354fc5b204ebaebb99
https://github.com/llvm/llvm-project/commit/6090c0e0ee1ab8f1a9b6b2354fc5b204ebaebb99
Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M bolt/test/X86/callcont-fallthru.s
Log Message:
-----------
[BOLT][test] Fix disabling of the PLT check in callcont-fallthru (#140026)
PR #139953 used `DONTRUN` to disable some run lines, but that didn't
work. Now switching to `RUN-DISABLED` for disabling the tests until
llvm-nm support is landed (#138232).
Commit: 43db72d56d6491e5b826172f9dea706aec92693c
https://github.com/llvm/llvm-project/commit/43db72d56d6491e5b826172f9dea706aec92693c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Transforms/IPO/ForceFunctionAttrs.cpp
A llvm/test/Transforms/ForcedFunctionAttrs/open-file-error.ll
Log Message:
-----------
ForceFunctionAttrs: Use reportFatalUsageError (#139473)
Commit: 6fc031291955d5d3c69f7df9b9f7460c473d114a
https://github.com/llvm/llvm-project/commit/6fc031291955d5d3c69f7df9b9f7460c473d114a
Author: Lukacma <Marian.Lukac at arm.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/include/clang/Basic/arm_neon.td
M clang/lib/AST/Type.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/test/CodeGen/AArch64/fp8-init-list.c
A clang/test/CodeGen/AArch64/fp8-intrinsics/acle_neon_fp8_untyped.c
M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_sve2_fp8_fdot.c
M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_sve2_fp8_fmla.c
M clang/test/CodeGen/arm-mfp8.c
M clang/utils/TableGen/NeonEmitter.cpp
Log Message:
-----------
[Clang][AArch64] Add fp8 variants for untyped NEON intrinsics (#128019)
This patch adds fp8 variants to existing intrinsics, whose operation
doesn't depend on arguments being a specific type.
It also changes mfloat8 type representation in memory from `i8` to
`<1xi8>`
Commit: d08b176edc82b8fbd417e0ead7b77abc5f45fce2
https://github.com/llvm/llvm-project/commit/d08b176edc82b8fbd417e0ead7b77abc5f45fce2
Author: Guray Ozen <guray.ozen at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/test/Conversion/NVVMToLLVM/nvvm-to-llvm.mlir
Log Message:
-----------
[MLIR][NVVM] Add `inline_ptx` op (#139923)
This op allows using PTX directly within the NVVM dialect, while greatly
simplifying llvm.inline_asm generation.
**Example 1: Read-only Parameters**
Sets `"l,r"` automatically.
```
nvvm.inline_ptx "mbarrier.init.b64 [$0], $1;" (%barrier_gen, %count) : !llvm.ptr, i32
// Lowers to:
llvm.inline_asm has_side_effects asm_dialect = att
"mbarrier.init.b64 [$0], $1;", "l,r" %arg0, %arg2 : (!llvm.ptr, i32) -> ()
```
**Example 2: Read-only and Write-only Parameters**
Sets `=f,f"` automatically. `=` is set because there is store.
```
%0 = nvvm.inline_ptx "ex2.approx.ftz.f32 $0, $1;" (%input) : f32 -> f32
// Lowers to:
%0 = llvm.inline_asm has_side_effects asm_dialect = att "ex2.approx.ftz.f32 $0, $1;", "=f,f" %arg0 : (f32) -> f32
```
**Example 3: Predicate Usage**
Now `@$2` is set automatically for predication.
```
nvvm.inline_ptx "mbarrier.init.b64 [$0], $1;" (%barrier_gen, %count), predicate = %pred : !llvm.ptr, i32, i1
// Lowers to:
llvm.inline_asm has_side_effects asm_dialect = att "@$2 mbarrier.init.b64 [$0], $1;", "l,r,b" %arg0, %arg2, %arg3 : (!llvm.ptr, i32, i1) -> ()
```
---------
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: a2f156b84ab124ccfbbe2bd6cbbdb2f3bcbba0ce
https://github.com/llvm/llvm-project/commit/a2f156b84ab124ccfbbe2bd6cbbdb2f3bcbba0ce
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
Log Message:
-----------
[Clang] Fix deduction of explicit object member functions (#140030)
When taking the address of an overload set containing an explicit object
member, we should not take the
explicit object parameter into account.
Commit: 636628d8fde45fc2bb99a1016f7503d0e744ab89
https://github.com/llvm/llvm-project/commit/636628d8fde45fc2bb99a1016f7503d0e744ab89
Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Frontend/CommandLineSourceLoc.h
M clang/lib/Frontend/CompilerInvocation.cpp
A clang/test/CodeCompletion/source-loc-zero.cpp
A clang/test/Refactor/source-loc-zero.cpp
M clang/tools/clang-refactor/ClangRefactor.cpp
Log Message:
-----------
[clang] Enforce 1-based indexing for command line source locations (#139457)
Fixes #139375
Clang expects command line source locations to be provided using 1-based
indexing.
Currently, Clang does not reject zero as invalid argument for column or
line number, which can cause Clang to crash.
This commit extends validation in `ParsedSourceLocation::FromString` to
only accept (unsinged) non-zero integers.
Commit: 9a26dff74834d6c3d9d72eac10e2f2479014ebca
https://github.com/llvm/llvm-project/commit/9a26dff74834d6c3d9d72eac10e2f2479014ebca
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/cxx20.cpp
Log Message:
-----------
[clang][bytecode] Check dtor calls for one-past-end pointers (#140047)
Commit: 6ee30e8dd8810f6ce49095a30a2caae683d92ff5
https://github.com/llvm/llvm-project/commit/6ee30e8dd8810f6ce49095a30a2caae683d92ff5
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Log Message:
-----------
[InstCombine] Fix incorrect number of iterations (#140004)
Commit: 7314d38b72ea647c67ceab0de4755d2d61073dac
https://github.com/llvm/llvm-project/commit/7314d38b72ea647c67ceab0de4755d2d61073dac
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/IR/AutoUpgrade.cpp
Log Message:
-----------
[NFC][AutoUpgrade] Use `ConstantPointerNull::get` instead of `Constant::getNullValue` for known pointer types (#139984)
This is a preparation change for upcoming PRs that will update the
semantics of
`ConstantPointerNull`, making it to represent an actual `nullptr` rather
than a
zero-valued pointer.
Commit: 9658c55116c2bb4757ca309b37028f06f5709526
https://github.com/llvm/llvm-project/commit/9658c55116c2bb4757ca309b37028f06f5709526
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Log Message:
-----------
[SelectionDAG] Fix a warning
This patch fixes:
llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:7506:17: error:
unused variable 'NoFPClass' [-Werror,-Wunused-variable]
Commit: ed572aaac8b142a7bf09a235f5497bc7e201f762
https://github.com/llvm/llvm-project/commit/ed572aaac8b142a7bf09a235f5497bc7e201f762
Author: Asher Mancinelli <ashermancinelli at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M flang/include/flang/Semantics/symbol.h
Log Message:
-----------
[flang] Add missing copy assignment operator (#139966)
On Clang 17 the implicit copy assignment operator was issuing a warning because of the user-declared copy constructor. Declare the copy assignment operator as default.
Commit: 059b0c2efbf30d986d812c4d2cf6d6c7876569fe
https://github.com/llvm/llvm-project/commit/059b0c2efbf30d986d812c4d2cf6d6c7876569fe
Author: Cullen Rhodes <cullen.rhodes at arm.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
Log Message:
-----------
[ValueTracking][NFC] Drop outdated TODO in canCreateUndefOrPoison (#139915)
The inrange constexpr GEP case is handled since 425cbbc602c9.
Commit: 1f570b1c2df6ec93a90ec8f0751fe8355644f1c6
https://github.com/llvm/llvm-project/commit/1f570b1c2df6ec93a90ec8f0751fe8355644f1c6
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M lldb/source/Target/DynamicRegisterInfo.cpp
Log Message:
-----------
[lldb] Use llvm::unique (NFC) (#139910)
While I am at it, this patch removes the "if" statement.
std::vector::erase(first, last) doesn't do anything when
first == last.
Commit: 9f569fe2e7b68db856716a1ae3b0a6738a281d1e
https://github.com/llvm/llvm-project/commit/9f569fe2e7b68db856716a1ae3b0a6738a281d1e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
Log Message:
-----------
[lldb] Use std::optional::value_or (NFC) (#140011)
Commit: d9ab5bc82d7e5dc4d132d1e674b06ec683e019f9
https://github.com/llvm/llvm-project/commit/d9ab5bc82d7e5dc4d132d1e674b06ec683e019f9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
M mlir/lib/Dialect/Quant/IR/QuantOps.cpp
Log Message:
-----------
[mlir] Use llvm::is_contained (NFC) (#140012)
Commit: 3667f29dfd1100a0eda7bfc4584ba2cfb6880b94
https://github.com/llvm/llvm-project/commit/3667f29dfd1100a0eda7bfc4584ba2cfb6880b94
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
M llvm/lib/Transforms/IPO/SampleProfile.cpp
Log Message:
-----------
[llvm] Use std::optional::value_or (NFC) (#140014)
Commit: b7d6a54703823bfba2b437e4b764ceb16b73c2af
https://github.com/llvm/llvm-project/commit/b7d6a54703823bfba2b437e4b764ceb16b73c2af
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M libcxx/docs/CodingGuidelines.rst
M libcxx/docs/DesignDocs/FileTimeType.rst
M libcxx/docs/TestingLibcxx.rst
Log Message:
-----------
[libc++] Fix typos in documentation (#139853)
Commit: 3d6d5dfed2b303e9fba74586993df3fa85058991
https://github.com/llvm/llvm-project/commit/3d6d5dfed2b303e9fba74586993df3fa85058991
Author: James Newling <james.newling at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
M mlir/lib/Dialect/SCF/Transforms/StructuralTypeConversions.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/test/Dialect/Vector/linearize.mlir
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[mlir][vector] Address linearization comments (post commit) (#138075)
This PR adds some documentation to address comments in
https://github.com/llvm/llvm-project/pull/136581
This PR adds a test for linearization across scf.for. This new test
might be considered redundant by more experienced MLIRers, but might
help newer users understand how to linearize scf/cf/func operations
easily
The documentation added in this PR also tightens our definition of
linearization, to now exclude unrolling (which creates multiple ops from
1 op). We hadn't really specified what linearization meant before.
Commit: 6d942c5c16c384feca50c9f2a4262413410e7d9e
https://github.com/llvm/llvm-project/commit/6d942c5c16c384feca50c9f2a4262413410e7d9e
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/unittests/Transforms/Vectorize/VPlanVerifierTest.cpp
Log Message:
-----------
[llvm] Fix test breakage in Vectorize/VPlanVerifierTest.cpp (#140079)
Fix test breakage in Vectorize/VPlanVerifierTest.cpp introduced in
change 849990479 (typo).
Commit: cd72777f09506a43daeae64dce587cde9c57a1f6
https://github.com/llvm/llvm-project/commit/cd72777f09506a43daeae64dce587cde9c57a1f6
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
A llvm/test/CodeGen/RISCV/zdinx-spill.ll
Log Message:
-----------
[RISCV] Add test for spilling and reloading a GPRPair for Zdinx+RV32. NFC (#139983)
I couldn't find any existing coverage for PseudoRV32ZdinxSD and
PseudoRV32ZdinxLD being emitted from
storeRegToStackSlot/loadRegFromStackSlot.
Commit: 426573332cb7c70ede293d13bac7564eb2c0b753
https://github.com/llvm/llvm-project/commit/426573332cb7c70ede293d13bac7564eb2c0b753
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
Log Message:
-----------
[RISCV] Use RISCVRegisterInfo::isRVVRegClass to replace IsScalableVector in storeRegToStackSlot/loadRegFromStackSlot. NFC (#139979)
Commit: 540cf25a6df56fa1810a7411477dca9896aeed20
https://github.com/llvm/llvm-project/commit/540cf25a6df56fa1810a7411477dca9896aeed20
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
M llvm/test/CodeGen/RISCV/double-calling-conv.ll
M llvm/test/CodeGen/RISCV/double-convert.ll
M llvm/test/CodeGen/RISCV/double-imm.ll
M llvm/test/CodeGen/RISCV/double-mem.ll
M llvm/test/CodeGen/RISCV/double-previous-failure.ll
M llvm/test/CodeGen/RISCV/double-round-conv-sat.ll
M llvm/test/CodeGen/RISCV/zdinx-boundary-check.ll
M llvm/test/CodeGen/RISCV/zdinx-memoperand.ll
Log Message:
-----------
[RISCV] Split f64 loads/stores for RV32+Zdinx during isel instead of post-RA. (#139840)
This avoids a bunch of complexity around making sure the offset doesn't
exceed 4093 so we can add 4 after splitting later. By splitting early,
the split loads/stores will get selected independently.
There's a bit of follow up work to do, particularly around splitting a
constant pool load. Overall I think this is cleaner with less edge
cases.
Commit: 381a649fb991eadb0c594de2d8b6166fcc11345a
https://github.com/llvm/llvm-project/commit/381a649fb991eadb0c594de2d8b6166fcc11345a
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTDiagnostic.h
M clang/include/clang/AST/Type.h
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/AST/ASTDiagnostic.cpp
M clang/lib/AST/Type.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaExpr.cpp
A clang/test/SemaCXX/warn-implicit-unicode-conversions.cpp
M libcxx/include/print
M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find.pass.cpp
M libcxx/test/std/localization/codecvt_unicode.pass.cpp
M libcxx/test/std/localization/locale.categories/category.ctype/locale.codecvt/locale.codecvt.members/char16_t_char8_t_in.pass.cpp
M libcxx/test/std/localization/locale.categories/category.ctype/locale.codecvt/locale.codecvt.members/char16_t_char8_t_out.pass.cpp
M libcxx/test/std/localization/locale.categories/category.ctype/locale.codecvt/locale.codecvt.members/char32_t_char8_t_in.pass.cpp
M libcxx/test/std/localization/locale.categories/category.ctype/locale.codecvt/locale.codecvt.members/char32_t_char8_t_out.pass.cpp
M libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/assign2.pass.cpp
M libcxx/utils/libcxx/test/features.py
M llvm/include/llvm/Support/ConvertUTF.h
M llvm/lib/Support/ConvertUTFWrapper.cpp
Log Message:
-----------
[Clang] Add warnings when mixing different charN_t types (#138708)
charN_t represent code units of different UTF encodings. Therefore the
values of 2 different charN_t objects do not represent the same
characters.
In order to avoid comparing apples and oranges, we add new warnings to
warn on:
- Implicit conversions
- Comparisons
- Other cases involving arithmetic conversions
We only produce the warning if we cannot establish the comparison would
be safe through constant evaluation.
The new `-Wimplicit-unicode-conversion` warning is enabled by default.
Note that this PR intentionally doesn;t touches char/wchar_t, but it
would be worth considering also warning on extending the new warnings to
these types (in a follow up)
Additionally most arithmetic operations on charN_t don't really make
sense (ie what does it mean to addition code units), so we could add
warnings for that.
Fixes #138526
Commit: 21d506414053d260ee78fa5a27b6bf3edc547088
https://github.com/llvm/llvm-project/commit/21d506414053d260ee78fa5a27b6bf3edc547088
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineConcatVectorOps - remove VBMI2 limit for v32i16/v64i8 shuffle concatentation (#140077)
This is no longer required with the improvements to subvector load sharing with shouldReduceLoadWidth
Commit: d58d5d6e9d6761f88344f439e7fdf63d41c8c384
https://github.com/llvm/llvm-project/commit/d58d5d6e9d6761f88344f439e7fdf63d41c8c384
Author: Vincent <vincent0710 at outlook.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/SemaCXX/cxx2a-consteval.cpp
Log Message:
-----------
[clang] Compound Literal Statement Constant Expression Assertion Fix (#139479)
Compound literals initializer-list should be a constant expression if it
is defined outside the body of a function.
Emit error instead of falling through tripping assertion error.
Fixes #139160
Commit: 5defe490c9b1356916245e1832859c361ac8d812
https://github.com/llvm/llvm-project/commit/5defe490c9b1356916245e1832859c361ac8d812
Author: Thurston Dang <thurston at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CodeGenFunction.h
Log Message:
-----------
[sanitizer][NFCI] Add 'SanitizerAnnotateDebugInfo' (#139965)
This generalizes the debug info annotation code from https://github.com/llvm/llvm-project/pull/139149 and moves it into a helper function, SanitizerAnnotateDebugInfo().
Future work can use 'ApplyDebugLocation ApplyTrapDI(*this, SanitizerAnnotateDebugInfo(Ordinal));' to add annotations to additional checks.
Commit: 0eb4bd27d1ab15ea6b078ac386be01ae13d261a9
https://github.com/llvm/llvm-project/commit/0eb4bd27d1ab15ea6b078ac386be01ae13d261a9
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExprMember.cpp
M clang/test/Sema/atomic-expr.c
Log Message:
-----------
[C] Silence unreachable -Watomic-access diagnostics (#140064)
Accessing the member of a structure or union which is _Atomic-qualified
is undefined behavior in C. We currently diagnose that with a warning
that defaults to an error. In turn, this means we reject a valid program
if the access it not reachable because of the error. e.g.,
if (0)
SomeAtomicStruct.Member = 12; // Was diagnosed
This silences the diagnostic if the member access is not reachable.
Commit: 59c6d70ed8120b8864e5f796e2bf3de5518a0ef0
https://github.com/llvm/llvm-project/commit/59c6d70ed8120b8864e5f796e2bf3de5518a0ef0
Author: weiguozhi <57237827+weiguozhi at users.noreply.github.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/CodeGen/CodeGenPrepare.cpp
A llvm/test/Transforms/CodeGenPrepare/X86/sink-addr-reuse.ll
Log Message:
-----------
[CodeGenPrepare] Make sure instruction get from SunkAddrs is before MemoryInst (#139303)
Function optimizeBlock may do optimizations on a block for multiple
times. In the first iteration of the loop, MemoryInst1 may generate a
sunk instruction and store it into SunkAddrs. In the second iteration of
the loop, MemoryInst2 may use the same address and then it can reuse the
sunk instruction stored in SunkAddrs, but MemoryInst2 may be before
MemoryInst1 and the corresponding sunk instruction. In order to avoid
use before def error, we need to find appropriate insert position for the
sunk instruction.
Fixes #138208.
Commit: 15b20a13e6a35a8c5864080644f9bc39f6dbd573
https://github.com/llvm/llvm-project/commit/15b20a13e6a35a8c5864080644f9bc39f6dbd573
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/tools/llvm-objdump/llvm-objdump.cpp
Log Message:
-----------
[NFC][llvm-objdump] Add ostream param to control console prints (#139931)
Commit: 2bc9f43ba1116fb3989e28ecc3934209145a6250
https://github.com/llvm/llvm-project/commit/2bc9f43ba1116fb3989e28ecc3934209145a6250
Author: Alexander Peskov <apeskov at nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/NVPTX/shift-opt.ll
Log Message:
-----------
[DAGCombiner] Fold pattern for srl-shl-zext (REAPPLIED) (#140038)
Fold (srl (lop x, (shl (zext y), c1)), c1) -> (lop (srl x, c1), (zext y)) where c1 <= leadingzeros(zext(y)).
This is equivalent of existing fold chain (srl (shl (zext y), c1), c1) -> (and (zext y), mask) -> (zext y), but logical op in the middle prevents it from combining.
Profit : Allow to reduce the number of instructions.
Original commit: #138290 / bbc5221
Previously reverted due to conflict in LIT test. Mainline changed
default version of load instruction to untyped version by this #137698 .
Updated test uses `ld.param.b64` instead of `ld.param.u64`.
Commit: d6b73da15211d2286c6b0750b68d139104d463b9
https://github.com/llvm/llvm-project/commit/d6b73da15211d2286c6b0750b68d139104d463b9
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/ProfileData/InstrProfWriter.cpp
Log Message:
-----------
[NFC] One-liner clang-format (#140104)
`InstrProfWriter::setOutputSparse` gets re-formatted when
InstrProfWriter.cpp is modified. So formatted this line.
Commit: f0d7fea98b4afc29dfca11bfc58c7411c794ccae
https://github.com/llvm/llvm-project/commit/f0d7fea98b4afc29dfca11bfc58c7411c794ccae
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/include/llvm/IR/IRBuilder.h
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
Log Message:
-----------
[IRBuilder] Use AAMDNodes helper class in CreateMem* routines [nfc-ish] (#139950)
I'm not 100% sure this is NFC because we have the possibility we're
propagating additional metadata we'd missed before. We don't see any
test changes resulting from this though.
Commit: 113898326b9cf3d9bb9edc3023e75fb3e4f82422
https://github.com/llvm/llvm-project/commit/113898326b9cf3d9bb9edc3023e75fb3e4f82422
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dep after 3d6d5dfed2b303e9fba74586993df3fa85058991
Commit: 81d48e0f61f3e78cd6d6be9d3c8e48e7761a5ed5
https://github.com/llvm/llvm-project/commit/81d48e0f61f3e78cd6d6be9d3c8e48e7761a5ed5
Author: Fangyi Zhou <me at fangyi.io>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
M clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
A clang/test/Analysis/ftime-trace-no-init.cpp
Log Message:
-----------
[clang][analyzer] Fix a nullptr dereference when -ftime-trace is used (Reland) (#139980)
Fixes #139779.
The bug was introduced in #137355 in `SymbolConjured::getStmt`, when
trying to obtain a statement for a CFG initializer without an
initializer. This commit adds a null check before access.
Previous PR #139820, Revert #139936
Additional notes since previous PR:
When conjuring a symbol, sometimes there is no valid CFG element, e.g.
in the file causing the crash, there is no element at all in the CFG. In
these cases, the CFG element reference in the expression engine will be
invalid. As a consequence, there needs to be extra checks to ensure the
validity of the CFG element reference.
Commit: 682a976768b274c71ebd42198d1bbf0f27fec1e2
https://github.com/llvm/llvm-project/commit/682a976768b274c71ebd42198d1bbf0f27fec1e2
Author: Chengjun <chengjunp at Nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/include/llvm/Analysis/AliasAnalysis.h
M llvm/lib/Analysis/AliasAnalysis.cpp
M llvm/lib/Target/NVPTX/NVPTXAliasAnalysis.h
Log Message:
-----------
[AA] Change RunEarly to be a Boolean Flag in ExternalAAWrapper (#139158)
Change the previous runEarly virtual function in ExternalAAWrapper to be
a boolean flag.
Commit: 58b9b865feffede59616cfc05cefa956d5352314
https://github.com/llvm/llvm-project/commit/58b9b865feffede59616cfc05cefa956d5352314
Author: John Harrison <harjohn at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M lldb/tools/lldb-dap/DAP.h
M lldb/unittests/DAP/CMakeLists.txt
A lldb/unittests/DAP/DAPTest.cpp
A lldb/unittests/DAP/Handler/DisconnectTest.cpp
A lldb/unittests/DAP/TestBase.cpp
A lldb/unittests/DAP/TestBase.h
M lldb/unittests/DAP/TransportTest.cpp
Log Message:
-----------
[lldb-dap] Setup DAP for unit testing. (#139937)
This is a very simple case that currently only validates we can create a
DAP instance and send a message over the transport layer. More in-depth
tests will require additional helpers and possibly refactors of DAP to
make it more testable, however this is some ground work to have basic
support for unit tests.
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: e2c1dd5f234664066adce6467a5e3f36834b971b
https://github.com/llvm/llvm-project/commit/e2c1dd5f234664066adce6467a5e3f36834b971b
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M third-party/unittest/googletest/README.LLVM
M third-party/unittest/googletest/include/gtest/gtest-printers.h
Log Message:
-----------
Fix CI after #138708 (#140111)
Silence a warning in gtest casting a char8_t/char16_t to char32_t.
Note that this cast, as well as the behavior of `PrintTo(char32_t)` is
incorrect when printing a code unit that does not represent a code
point. See https://github.com/google/googletest/issues/4762
Commit: 1acac5cd38210131c543e4635fcbfd4d597e15f5
https://github.com/llvm/llvm-project/commit/1acac5cd38210131c543e4635fcbfd4d597e15f5
Author: Sinkevich Artem <a.sinkevich at ispras.ru>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/lib/Driver/SanitizerArgs.cpp
M clang/test/Driver/fsanitize.c
Log Message:
-----------
[sanitizer] Fix empty string in unsupported argument error for -fsanitize-trap (#136549)
When using `-fsanitize-trap` with a sanitizer group that doesn't support
trapping, an empty argument is passed to
`err_drv_unsupported_option_argument`. Use new `toStringWithGroups` for
the diagnostic.
Commit: bb10c3ba7f77d40a7fbfd4ac815015d3a4ae476a
https://github.com/llvm/llvm-project/commit/bb10c3ba7f77d40a7fbfd4ac815015d3a4ae476a
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Transforms/Utils/LoopPeel.h
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Utils/LoopPeel.cpp
M llvm/test/Transforms/LoopUnroll/peel-last-iteration.ll
Log Message:
-----------
[LoopPeel] Implement initial peeling off the last loop iteration. (#139551)
Generalize countToEliminateCompares to also consider peeling off the
last iteration if it eliminates a compare.
At the moment, codegen for peeling off the last iteration is quite
restrictive and callers have to make sure that the exit condition can be
adjusted when peeling and that the loop executes at least 2 iterations.
Both will be relaxed in follow-ups.
PR: https://github.com/llvm/llvm-project/pull/139551
Commit: 2cdb7f3fc4c03df546dc61b67b1a5d2a6f03624d
https://github.com/llvm/llvm-project/commit/2cdb7f3fc4c03df546dc61b67b1a5d2a6f03624d
Author: Nuko Y. <or at dmc.chat>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/test/CodeGen/AArch64/reserveXreg.ll
Log Message:
-----------
[AArch64] Disable machine-verifier for failing test, fix perf regression (#140005)
Disables machine-verifier on failing test for now for the test to pass
on expensive-checks. Also fixes performance regression
(https://llvm-compile-time-tracker.com/compare.php?from=64082912a500d004c53ad1b3425098b495572663&to=26f97ee9aa413db240c397f96ddd5b0553a57d30&stat=instructions:u)
mentioned in #138448 by not computing reserved registers every loop
iteration.
Commit: faf5d747f174cc9d714839f0d3bce1a783eac2ac
https://github.com/llvm/llvm-project/commit/faf5d747f174cc9d714839f0d3bce1a783eac2ac
Author: Max191 <44243577+Max191 at users.noreply.github.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
M mlir/test/Dialect/Linalg/data-layout-propagation.mlir
Log Message:
-----------
[mlir] Fix DataLayoutPropagation foldings invalidating IR (#140103)
Fixes a bug in DataLayoutPropagation that was replacing generic op
destinations with tensor.empty() ops, even when the destination operand
was being used.
Addresses post-merge comment:
https://github.com/llvm/llvm-project/pull/138332/files/a9c1dccc3f73793bdd9e1f51ab3a6e15403a8338#r2091193712
Signed-off-by: Max Dawkins <maxdawkins19 at gmail.com>
Co-authored-by: Max Dawkins <maxdawkins19 at gmail.com>
Commit: 9457616527b50590e9c9d5e91723b35b26e447cd
https://github.com/llvm/llvm-project/commit/9457616527b50590e9c9d5e91723b35b26e447cd
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M flang/lib/Semantics/expression.cpp
A flang/test/Semantics/pad-hollerith-arg.f
Log Message:
-----------
[flang] Pad Hollerith actual arguments (#139782)
For more compatible legacy behavior on old tests, extend Hollerith
actual arguments on the right with trailing blanks out to a multiple of
8 bytes. Fixes Fujitsu test 0343_0069.
Commit: 36ccfe29be3a5fec8c9c2e1d8354e304500afd9b
https://github.com/llvm/llvm-project/commit/36ccfe29be3a5fec8c9c2e1d8354e304500afd9b
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M flang-rt/lib/runtime/assign.cpp
Log Message:
-----------
[flang] Clear obsolete type from reallocated allocatable (#139788)
When an assignment to a polymorphic allocatable changes its type to an
intrinsic type, be sure to reset its descriptor's derived type pointer
to null.
Fixes https://github.com/llvm/llvm-project/issues/136522.
Commit: c26e7520a939556bd23f7db3b7e0f4530b9d94a8
https://github.com/llvm/llvm-project/commit/c26e7520a939556bd23f7db3b7e0f4530b9d94a8
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M flang/include/flang/Parser/preprocessor.h
M flang/lib/Parser/preprocessor.cpp
A flang/test/Preprocessing/func-on-command-line.F90
Log Message:
-----------
[flang] Support -D for function-like macros (#139812)
Handle a command-line function-like macro definition like
"-Dfoo(a)=...".
TODO: error reporting for badly formed argument lists.
Commit: b7e13ab42929562d0fa78b623562341ef78617b4
https://github.com/llvm/llvm-project/commit/b7e13ab42929562d0fa78b623562341ef78617b4
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M flang/docs/ModFiles.md
Log Message:
-----------
[flang][docs] Document technique for regenerating a module hermetically (#139975)
A flang-new module file is Fortran source, so it can be recompiled with
the `-fhermetic-module-files` option to convert it into a hermetic one.
Commit: 5c551cbe462ea1b22bfe7e42e248ca29ea5c334c
https://github.com/llvm/llvm-project/commit/5c551cbe462ea1b22bfe7e42e248ca29ea5c334c
Author: Chinmay Deshpande <chdeshpa at amd.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
Log Message:
-----------
[NFC] Fix warning formatting for AMDGPUUsage.rst
Commit: 2661e995ceebd6fd083e5b62aeff21e67b28e9a4
https://github.com/llvm/llvm-project/commit/2661e995ceebd6fd083e5b62aeff21e67b28e9a4
Author: PiJoules <6019989+PiJoules at users.noreply.github.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/test/Transforms/WholeProgramDevirt/virtual-const-prop-begin.ll
M llvm/test/Transforms/WholeProgramDevirt/virtual-const-prop-check.ll
M llvm/test/Transforms/WholeProgramDevirt/virtual-const-prop-end.ll
M llvm/test/Transforms/WholeProgramDevirt/virtual-const-prop-small-alignment-32.ll
M llvm/test/Transforms/WholeProgramDevirt/virtual-const-prop-small-alignment-64.ll
M llvm/unittests/Transforms/IPO/WholeProgramDevirt.cpp
Log Message:
-----------
[llvm] Ensure propagated constants in the vtable are aligned (#136630)
It's possible for virtual constant propagation in whole program
devirtualization to create unaligned loads. We originally saw this with
4-byte aligned relative vtables where we could store 8-byte values
before/after the vtable. But since the vtable is 4-byte aligned and we
unconditionally do an 8-byte load, we can't guarantee that the stored
constant will always be aligned to 8 bytes. We can also see this with
normal vtables whenever a 1-byte char is stored in the vtable because
the offset calculation for the GEP doesn't take into account the
original vtable alignment.
This patch introduces two changes to virtual constant propagation:
1. Do not propagate constants whose preferred alignment is larger than
the vtable alignment. This is required because if the constants are
stored in the vtable, we can only guarantee the constant will be stored
at an address at most aligned to the vtable's alignment.
2. Round up the offset used in the GEP before the load to ensure it's at
an address suitably aligned such that we can load from it.
This patch updates tests to reflect this alignment change and adds some
cases for relative vtables.
Commit: 18ecff4f65067adfd9fcd721d93bb29b646e4756
https://github.com/llvm/llvm-project/commit/18ecff4f65067adfd9fcd721d93bb29b646e4756
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/CGData/StableFunctionMap.cpp
M llvm/lib/CGData/StableFunctionMapRecord.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/DebugInfo/LogicalView/Core/LVRange.cpp
M llvm/lib/DebugInfo/LogicalView/Core/LVReader.cpp
M llvm/lib/DebugInfo/LogicalView/Core/LVScope.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
Log Message:
-----------
[llvm] Use llvm::stable_sort (NFC) (#140067)
Commit: 6033a4859a0131062bef4eb765b438e6110b40a2
https://github.com/llvm/llvm-project/commit/6033a4859a0131062bef4eb765b438e6110b40a2
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/CodeGen/MIRPrinter.cpp
Log Message:
-----------
[CodeGen] Use std::tie to implement a comparison functor (NFC) (#140088)
std::tie simplifies the lexicographical comparison while making the
code a little more consistent within MIRPrinter.cpp as we have a very
similar comparison functor in MIRPrinter::convertCalledGlobals, about
30 lines below the code this patch touches.
Commit: f9dbfb1566043d744d66ff8b5415269c6ec59743
https://github.com/llvm/llvm-project/commit/f9dbfb1566043d744d66ff8b5415269c6ec59743
Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M flang/test/Lower/OpenACC/acc-data-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-data.f90
M flang/test/Lower/OpenACC/acc-enter-data-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-enter-data.f90
M flang/test/Lower/OpenACC/acc-exit-data-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-exit-data.f90
M flang/test/Lower/OpenACC/acc-kernels-loop.f90
M flang/test/Lower/OpenACC/acc-kernels.f90
M flang/test/Lower/OpenACC/acc-parallel-loop.f90
M flang/test/Lower/OpenACC/acc-parallel.f90
M flang/test/Lower/OpenACC/acc-serial-loop.f90
M flang/test/Lower/OpenACC/acc-serial.f90
M flang/test/Lower/OpenACC/acc-update.f90
M flang/test/Lower/OpenACC/acc-wait.f90
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/test/Conversion/OpenACCToSCF/convert-openacc-to-scf.mlir
M mlir/test/Dialect/OpenACC/invalid.mlir
M mlir/test/Dialect/OpenACC/ops.mlir
Log Message:
-----------
[flang][acc] Update assembly formats to include asyncOnly, async, and wait (#140122)
The async implementation is inconsistent in terms of the assembly
format. While renaming `UpdateOp`'s `async` to `asyncOnly`, this PR
handles `asyncOnly` along with async operands in every operation.
Regarding `EnterDataOp` and `ExitDataOp`, they do not accept device
types; thus, the async and the wait clauses without values lead to the
`async` and the `wait` attributes (not `asyncOnly` nor `waitOnly`). This
PR also processes them with async and wait operands all together.
Commit: a6ddfb387df7866afc8ac0f7e9d517cd37345e61
https://github.com/llvm/llvm-project/commit/a6ddfb387df7866afc8ac0f7e9d517cd37345e61
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/include/clang/AST/DeclCXX.h
M clang/lib/AST/DeclCXX.cpp
Log Message:
-----------
[NFC][Clang] Adopt simplified `getTrailingObjects` in DeclCXX (#140078)
- Adopt non-templated and ArrayRef returning forms of
`getTrailingObjects`.
- Replace some initialization loop with std::uninitialized_fill_n.
- Remove unneeded `numTrailingObjects` for last trailing type.
Commit: 6c405694d134f708c064df37bf4ac79a84374c58
https://github.com/llvm/llvm-project/commit/6c405694d134f708c064df37bf4ac79a84374c58
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[VPlan] Get type from start value for VPWidenIntOrFpInduction (NFC).
NFC for now but this can cause verification failures in the future,
since after bf5627c85e697 wide induction may be narrowed. By using the
type from the start value, we will always return the correct type.
Commit: acdba28e148ac1e94d6c041f9911230e1e90e9cd
https://github.com/llvm/llvm-project/commit/acdba28e148ac1e94d6c041f9911230e1e90e9cd
Author: Deric C. <cheung.deric at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
M llvm/lib/Target/DirectX/DXILShaderFlags.h
M llvm/test/CodeGen/DirectX/ShaderFlags/disable-opt-cs.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/disable-opt-lib.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/max-64-uavs-array-valver1.5.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/max-64-uavs-array-valver1.6.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/max-64-uavs.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/res-may-not-alias-sm6.7.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/uavs-at-every-stage-lib-valver1.7.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/uavs-at-every-stage-vs.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/use-native-low-precision-1.ll
Log Message:
-----------
[DirectX] Set whole-module flags prior to evaluating per-function flags (#139967)
Fixes #139024 and #139954
- Refactor DXILShaderFlags to compute the flags that apply to a whole
module before computing flags that apply individually to each function
- Make DXILResourceMap const, since it is not modified in
DXILShaderFlags
- Per-function shader flag analysis now initially starts with the set of
flags that apply to the whole module instead of starting from no flags.
This change fixes the above linked issues
- Fix shader flag tests affected by the above change
Commit: 090f46d8d246762401c41c5486dde299382d6c90
https://github.com/llvm/llvm-project/commit/090f46d8d246762401c41c5486dde299382d6c90
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/include/clang/Sema/Overload.h
M clang/test/SemaCXX/overload-resolution-deferred-templates.cpp
Log Message:
-----------
[Clang] Fix an assertion in the resolution of perfect matches (#140073)
Function pointers can have an identity conversion to a pointer to member
function if they are resolved to a member function.
Fix a regression introduced by #136203
Commit: efae492ad1ba80764ec4a85f5622a8713646f970
https://github.com/llvm/llvm-project/commit/efae492ad1ba80764ec4a85f5622a8713646f970
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
Log Message:
-----------
[VPlan] Add VPTypeAnalysis constructor taking a VPlan (NFC).
Add constructor that retrieves the scalar type from the trip count
expression, if no canonical IV is available. Used in the verifier, in
preparation for late verification, when the canonical IV has been
dissolved.
Commit: 4f663cca15f2b53c2bc6a84d1b1f5bd81679356d
https://github.com/llvm/llvm-project/commit/4f663cca15f2b53c2bc6a84d1b1f5bd81679356d
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Transforms/Utils/LoopPeel.cpp
Log Message:
-----------
[LoopPeel] Make sure PeelLast is always initialized.
Make sure PeelLast is initialized on all paths.
Should fix MSan bootstrap failures
https://lab.llvm.org/buildbot/#/builders/164/builds/9992
https://lab.llvm.org/buildbot/#/builders/94/builds/7158
Fixup after https://github.com/llvm/llvm-project/pull/139551.
Commit: fc7857ca95bba93807959ad09f983221db8811e1
https://github.com/llvm/llvm-project/commit/fc7857ca95bba93807959ad09f983221db8811e1
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
A clang/include/clang/CIR/Dialect/OpenACC/CIROpenACCTypeInterfaces.h
A clang/include/clang/CIR/Dialect/OpenACC/RegisterOpenACCExtensions.h
M clang/lib/CIR/CodeGen/CIRGenerator.cpp
M clang/lib/CIR/CodeGen/CMakeLists.txt
M clang/lib/CIR/Dialect/CMakeLists.txt
A clang/lib/CIR/Dialect/OpenACC/CIROpenACCTypeInterfaces.cpp
A clang/lib/CIR/Dialect/OpenACC/CMakeLists.txt
A clang/lib/CIR/Dialect/OpenACC/RegisterOpenACCExtensions.cpp
A clang/unittests/CIR/CMakeLists.txt
A clang/unittests/CIR/PointerLikeTest.cpp
M clang/unittests/CMakeLists.txt
Log Message:
-----------
[CIR] Add PointerLikeType interface support for cir::PointerType (#139768)
This adds code to attach the OpenACC PointerLikeType interface to
cir::PointerType, along with a unit test for the interface.
Commit: 2e6433b8293ac64923c737078e87dc39fc4bced6
https://github.com/llvm/llvm-project/commit/2e6433b8293ac64923c737078e87dc39fc4bced6
Author: Steven Perron <stevenperron at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/lib/CodeGen/CGClass.cpp
A clang/test/CodeGenHLSL/convergence/global_array.hlsl
Log Message:
-----------
[clang] Emit convergence tokens for loop in global array init (#140120)
When initializing a global array, a loop is generated, but no
convergence is emitted for the loop. This fixes that up.
Commit: a4eb0db062b646907a2c19d54f8240fe4bdd98ce
https://github.com/llvm/llvm-project/commit/a4eb0db062b646907a2c19d54f8240fe4bdd98ce
Author: Finn Plummer <canadienfinn at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/CodeGenHLSL/RootSignature.hlsl
M llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h
M llvm/lib/Frontend/HLSL/HLSLRootSignature.cpp
Log Message:
-----------
[HLSL][RootSignature] Add metadata generation for descriptor tables (#139633)
- prereq: Modify `RootSignatureAttr` to hold a reference to the owned
declaration
- Define and implement `MetadataBuilder` in `HLSLRootSignature`
- Integrate and invoke the builder in `CGHLSLRuntime.cpp` to generate
the Root Signature for any associated entry functions
- Add tests to demonstrate functionality in `RootSignature.hlsl`
Resolves https://github.com/llvm/llvm-project/issues/126584
Note: this is essentially just
https://github.com/llvm/llvm-project/pull/125131 rebased onto the new
approach of constructing a root signature decl, instead of holding the
elements in `AdditionalMembers`.
Commit: f01f08292e894a565baa1b2741b31fbcf53a18cb
https://github.com/llvm/llvm-project/commit/f01f08292e894a565baa1b2741b31fbcf53a18cb
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
A llvm/test/CodeGen/AMDGPU/fptrunc.v2f16.no.fast.math.ll
R llvm/test/CodeGen/AMDGPU/fptrunc.v2f16.no.fast.path.ll
Log Message:
-----------
AMDGPU: Make v2f32 -> v2f16 legal when target supports v_cvt_pk_f16_f32 (#139956)
If targets support v_cvt_pk_f16_f32 instruction, v2f32 -> v2f16 should
be legal. However, SelectionDAG does not allow us to specify the source
type in the legalization rules. To workaround this, we make FP_ROUND
Custom for v2f16 then set up v2f32 -> v2f16 to be legal during custom
lowering.
Fixes: SWDEV-532608 -- expected v_cvt_pk_f16_f32 was not generated.
Commit: a3c4a5cb63df01ae63ae0a8c3e4c3e1fdbc3b70c
https://github.com/llvm/llvm-project/commit/a3c4a5cb63df01ae63ae0a8c3e4c3e1fdbc3b70c
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/docs/MLGO.rst
Log Message:
-----------
[MLGO][Docs] Add documentation on corpus tooling (#139362)
This adds some documentation on the three corpus tools, some examples,
and fixes the TODO telling me to get this done.
Commit: 8e53e3b4ef79ad4f4658d6f3e235e49c6062aec5
https://github.com/llvm/llvm-project/commit/8e53e3b4ef79ad4f4658d6f3e235e49c6062aec5
Author: Matthias Braun <matze at braunis.de>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachineOperand.h
Log Message:
-----------
Fix comment mentioning nonexistent parameter (#140138)
Don't mention nonexistent parameter in comment. The parameter was
removed in https://github.com/llvm/llvm-project/pull/126003 .
Commit: f113cab1912c19581a48b7330cadfbd24f51fc58
https://github.com/llvm/llvm-project/commit/f113cab1912c19581a48b7330cadfbd24f51fc58
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
Log Message:
-----------
[AMDGPU] Cleanup bytesel variables. NFC. (#140131)
Somehow we ended up with 2 sets of td variables: Is...ByteSel and
Has...ByteSel. Keep only Has... form.
Commit: 136f2ba2a7bca015ef831c91fb0db5e5e31b7632
https://github.com/llvm/llvm-project/commit/136f2ba2a7bca015ef831c91fb0db5e5e31b7632
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ExprConstant.cpp
M clang/test/SemaCXX/constant-expression-p2280r4.cpp
Log Message:
-----------
[Clang][AST] Fix HandleLValueBase to deal with references (#140105)
Since P2280R4 Unknown references and pointers was implemented,
HandleLValueBase now has to deal with referneces:
D.MostDerivedType->getAsCXXRecordDecl()
will return a nullptr if D.MostDerivedType is a ReferenceType. The fix
is to use getNonReferenceType() to obtain the Pointee Type if we have a
reference.
Fixes: https://github.com/llvm/llvm-project/issues/139452
Commit: 642d5d74b5cc8c07b0e35cfa24e8ffb7de189bcd
https://github.com/llvm/llvm-project/commit/642d5d74b5cc8c07b0e35cfa24e8ffb7de189bcd
Author: Nico Weber <thakis at chromium.org>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
A llvm/utils/gn/secondary/clang/unittests/CIR/BUILD.gn
Log Message:
-----------
[gn] "port" fc7857ca95bb (CIRUnitTests)
CIRUnitTests depends on mlir, so create a dummy target to make
the sync script happy. (This is behind CLANG_ENABLE_CIR in cmake.)
Commit: 6d7b5c3742165d35100adc1605220b590c93ef89
https://github.com/llvm/llvm-project/commit/6d7b5c3742165d35100adc1605220b590c93ef89
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/test/CIR/CodeGenOpenACC/data.c
M clang/test/CIR/CodeGenOpenACC/kernels.c
M clang/test/CIR/CodeGenOpenACC/parallel.c
M clang/test/CIR/CodeGenOpenACC/serial.c
M clang/test/CIR/CodeGenOpenACC/wait.c
Log Message:
-----------
[OpenACC][CIR] Update tests after #140122
Patch #140122 changed the format of OpenACC 'async', without changing
the clang tests. This patch updates the test.
Commit: b07e19fe5d0521bf0652bd073a6cedc0c4984f2b
https://github.com/llvm/llvm-project/commit/b07e19fe5d0521bf0652bd073a6cedc0c4984f2b
Author: Thurston Dang <thurston at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/lib/CodeGen/CGClass.cpp
Log Message:
-----------
[NFCI][cfi] Refactor into 'SanitizerInfoFromCFICheckKind' (#140117)
This refactors existing code into a 'SanitizerInfoFromCFICheckKind'
helper function. This will be useful in future work to annotate CFI
checks with debug info
(https://github.com/llvm/llvm-project/pull/139809).
Commit: 5c25061f32c2d9a18fb8a35709a4b540f573aa89
https://github.com/llvm/llvm-project/commit/5c25061f32c2d9a18fb8a35709a4b540f573aa89
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M .github/new-prs-labeler.yml
Log Message:
-----------
[MLGO]{Github] Add MLGO docs page to the MLGO PR subscriber group
This ensures that the MLGO PR subscriber team gets pinged if the document gets
modified which makes sense given it is MLGO specific.
Commit: de0bcd0564e4e67ae2afe1bad41c7bc505362e19
https://github.com/llvm/llvm-project/commit/de0bcd0564e4e67ae2afe1bad41c7bc505362e19
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/test/CodeGen/RISCV/stack-offset.ll
Log Message:
-----------
[RISCV] Use QC_E_ADDI while eliminating the frameindex (#139515)
The QC_E_ADDI instruction from the Xqcilia extension takes a signed
26-bit immediate and can be used instead of splitting the offset across
two ADDI's while eliminating the frameindex.
Commit: 8d3a70770fda43c1f1ae797f307adf25b65e7209
https://github.com/llvm/llvm-project/commit/8d3a70770fda43c1f1ae797f307adf25b65e7209
Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/test/Target/LLVMIR/Import/instructions.ll
M mlir/test/Target/LLVMIR/llvmir.mlir
Log Message:
-----------
[MLIR][LLVM] Improve inline asm importer (#139989)
Add support for importing more information into InlineAsmOp:
elementtype, side effects, align stack, asm dialect and operand attrs.
Commit: 56aa935bec14116314ab0450be761ad9d776bfa8
https://github.com/llvm/llvm-project/commit/56aa935bec14116314ab0450be761ad9d776bfa8
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/emit-encoded.h
M flang-rt/lib/runtime/edit-input.cpp
Log Message:
-----------
[flang-rt] Fix warnings
This patch fixes:
flang-rt/include/flang-rt/runtime/emit-encoded.h:67:27: error:
implicit conversion from 'const char16_t' to 'char32_t' may change
the meaning of the represented code unit
[-Werror,-Wcharacter-conversion]
flang-rt/lib/runtime/edit-input.cpp:1114:18: error: implicit
conversion from 'char32_t' to 'char16_t' may lose precision and
change the meaning of the represented code unit
[-Werror,-Wcharacter-conversion]
flang-rt/lib/runtime/edit-input.cpp:1133:18: error: implicit
conversion from 'char32_t' to 'char16_t' may lose precision and
change the meaning of the represented code unit
[-Werror,-Wcharacter-conversion]
flang-rt/lib/runtime/edit-input.cpp:1033:14: error: implicit
conversion from 'char32_t' to 'char16_t' may lose precision and
change the meaning of the represented code unit
[-Werror,-Wcharacter-conversion]
flang-rt/lib/runtime/edit-input.cpp:986:14: error: implicit
conversion from 'char32_t' to 'char16_t' may lose precision and
change the meaning of the represented code unit
[-Werror,-Wcharacter-conversion]
Commit: 97ad399c48d33247a66cca928a77a612f1e7bb4d
https://github.com/llvm/llvm-project/commit/97ad399c48d33247a66cca928a77a612f1e7bb4d
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
A llvm/test/MC/AsmParser/token.s
Log Message:
-----------
MCParser: Move LCurly/RCurly testing into tokenIsStartOfStatement
Commit 8a0453e23abf27433b7539b2da2060d2df9fb39c (2015) added LCurly and
RCurly cases for Hexagon instruction bundles. While gas x86 also adopted
`{` in 2017 for pseudo prefixes (see `tc_symbol_chars`), `{` remains
uncommon among targets. Move `{` and `}` parsing into the newly
introduced `tokenIsStartOfStatement` hook (#137997).
Pull Request: https://github.com/llvm/llvm-project/pull/140101
Commit: f3f28323adbb9d01372d81b4c78ed94683e58757
https://github.com/llvm/llvm-project/commit/f3f28323adbb9d01372d81b4c78ed94683e58757
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
A llvm/include/llvm/ProfileData/DataAccessProf.h
M llvm/include/llvm/ProfileData/InstrProf.h
M llvm/lib/ProfileData/CMakeLists.txt
A llvm/lib/ProfileData/DataAccessProf.cpp
M llvm/lib/ProfileData/InstrProf.cpp
M llvm/unittests/ProfileData/CMakeLists.txt
A llvm/unittests/ProfileData/DataAccessProfTest.cpp
Log Message:
-----------
[StaticDataLayout][PGO] Add profile format for static data layout, and the classes to operate on the profiles. (#138170)
Context: For
https://discourse.llvm.org/t/rfc-profile-guided-static-data-partitioning/83744#p-336543-background-3,
we propose to profile memory loads and stores via hardware events,
symbolize the addresses of binary static data sections and feed the
profile back into compiler for data partitioning.
This change adds the profile format for static data layout, and the
classes to operate on it.
The profile and its format
1. Conceptually, a piece of data (call it a symbol) is represented by
its symbol name or its content hash. The former applies to majority of
data whose mangled name remains relatively stable over binary releases,
and the latter applies to string literals (with name patterns like
`.str.<N>[.llvm.<hash>]`.
- The symbols with samples are hot data. The number of hot symbols is
small relative to all symbols. The profile tracks its sampled counts and
locations. Sampled counts come from hardware events, and locations come
from debug information in the profiled binary. The symbols without
samples are cold data. The number of such cold symbols is large. The
profile tracks its representation (the name or content hash).
- Based on a preliminary study, debug information coverage for data
symbols is partial and best-effort. In the LLVM IR, global variables
with source code correspondence may or may not have debug information.
Therefore the location information is optional in the profiles.
2. The profile-and-compile cycle is similar to SamplePGO. Profiles are
sampled from production binaries, and used in next binary releases.
Known cold symbols and new hot symbols can both have zero sampled
counts, so the profile records known cold symbols to tell the two for
next compile.
In the profile's serialization format, strings are concatenated together
and compressed. Individual records stores the index.
A separate PR will connect this class to InstrProfReader/Writer via
MemProfReader/Writer.
---------
Co-authored-by: Kazu Hirata <kazu at google.com>
Commit: 8d63afbe5c8c5856ab4c2e663c1076313001565d
https://github.com/llvm/llvm-project/commit/8d63afbe5c8c5856ab4c2e663c1076313001565d
Author: joaosaffran <126493771+joaosaffran at users.noreply.github.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/DXContainer.h
M llvm/include/llvm/MC/DXContainerRootSignature.h
M llvm/lib/MC/DXContainerRootSignature.cpp
M llvm/lib/ObjectYAML/DXContainerEmitter.cpp
M llvm/lib/Target/DirectX/DXILRootSignature.cpp
Log Message:
-----------
[NFC] Refactoring MCDXBC to support out of order storage of root parameters (#137284)
This PR refactors mcdxbc data structure for root signatures to support
out of order storage of in memory root signature data.
closes: #139585
---------
Co-authored-by: joaosaffran <joao.saffran at microsoft.com>
Commit: dae5c4e1e7deef1fddad6e83d0f109b6fc9c5cc4
https://github.com/llvm/llvm-project/commit/dae5c4e1e7deef1fddad6e83d0f109b6fc9c5cc4
Author: Iris Shi <0.0 at owo.li>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/ctlz-cttz-ctpop.ll
M llvm/test/CodeGen/RISCV/ctz_zero_return_test.ll
M llvm/test/CodeGen/RISCV/mul-expand.ll
M llvm/test/CodeGen/RISCV/mul.ll
M llvm/test/CodeGen/RISCV/rv64xtheadbb.ll
M llvm/test/CodeGen/RISCV/rv64zbb.ll
M llvm/test/CodeGen/RISCV/rvv/known-never-zero.ll
M llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll
M llvm/test/CodeGen/RISCV/urem-seteq-illegal-types.ll
M llvm/test/CodeGen/RISCV/xqccmp-additional-stack.ll
M llvm/test/CodeGen/RISCV/zcmp-additional-stack.ll
Log Message:
-----------
[RISCV] Expand constant multiplication for targets without M extension (#137195)
Closes #137023
On RISC-V machines without a native multiply instruction (e.g., `rv32i`
base), multiplying a variable by a constant integer often compiles to a
call to a library routine like `__mul{s,d}i3`.
```assembly
.globl __mulxi3
.type __mulxi3, @function
__mulxi3:
mv a2, a0
mv a0, zero
.L1:
andi a3, a1, 1
beqz a3, .L2
add a0, a0, a2
.L2:
srli a1, a1, 1
slli a2, a2, 1
bnez a1, .L1
ret
```
This library function implements multiplication in software using a loop
of shifts and adds, processing the constant bit by bit. On rv32i, it
requires a minimum of 8 instructions (for multiply by `0`) and up to
about 200 instructions (by `0xffffffff`), involves heavy branching and
function call overhead.
When not optimizing for size, we could expand the constant
multiplication into a sequence of shift and add/sub instructions. For
now we use non-adjacent form for the shift and add/sub sequence, which
could save 1/2 - 2/3 instructions compared to a shl+add-only sequence.
Commit: 7028c00f69864d47e811f955d4b5cb54eaeb73ed
https://github.com/llvm/llvm-project/commit/7028c00f69864d47e811f955d4b5cb54eaeb73ed
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/ProfileData/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/ProfileData/BUILD.gn
Log Message:
-----------
[gn build] Port f3f28323adbb
Commit: 13c484c6e1c96d44bcefe177ea96f170c2e3ac10
https://github.com/llvm/llvm-project/commit/13c484c6e1c96d44bcefe177ea96f170c2e3ac10
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
Log Message:
-----------
[CIR] Upstream Vector support in elementTypeIfVector (#140125)
Upstream vector support in the element type if vector as a required
change for upstreaming other Vec Ops
Issue https://github.com/llvm/llvm-project/issues/136487
Commit: 664c937b4378b4ecc12ac193f4205966a3aa2aac
https://github.com/llvm/llvm-project/commit/664c937b4378b4ecc12ac193f4205966a3aa2aac
Author: Elvis Wang <elvis.wang at sifive.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanValue.h
M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-types.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
Log Message:
-----------
[VPlan] Implement VPExtendedReduction, VPMulAccumulateReductionRecipe and corresponding vplan transformations. (#137746)
This patch introduce two new recipes.
* VPExtendedReductionRecipe
- cast + reduction.
* VPMulAccumulateReductionRecipe
- (cast) + mul + reduction.
This patch also implements the transformation that match following
patterns via vplan and converts to abstract recipes for better cost
estimation.
* VPExtendedReduction
- reduce(cast(...))
* VPMulAccumulateReductionRecipe
- reduce.add(mul(...))
- reduce.add(mul(ext(...), ext(...))
- reduce.add(ext(mul(ext(...), ext(...))))
The converted abstract recipes will be lower to the concrete recipes
(widen-cast + widen-mul + reduction) just before recipe execution.
Note that this patch still relies on legacy cost model the calculate the
cost for these patters.
Will enable vplan-based cost decision in #113903.
Split from #113903.
Commit: f95f3030e595b76a3aa0295997e7dcf865c28796
https://github.com/llvm/llvm-project/commit/f95f3030e595b76a3aa0295997e7dcf865c28796
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/AST/HLSL/ast-dump-comment-cbuffer.hlsl
M clang/test/AST/HLSL/packoffset.hlsl
M clang/test/AST/HLSL/pch_hlsl_buffer.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorFunction.hlsl
M clang/test/CodeGenHLSL/cbuffer.hlsl
Log Message:
-----------
[HLSL] Implicit resource binding for cbuffers (#139022)
Constant buffers defined with the `cbuffer` keyword do not have a
constructor. Instead, the call to initialize the resource handle based
on its binding is generated in codegen. This change adds initialization
of `cbuffer` handles that have implicit binding.
Closes #139617
Commit: 257dfc3a1f568218bf923f37e20a6aff862817b6
https://github.com/llvm/llvm-project/commit/257dfc3a1f568218bf923f37e20a6aff862817b6
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
Log Message:
-----------
[CIR] Fix using getElementType (#140177)
Fix for elementTypeIfVector
Commit: 9f438e0b0670d5d70fc81288a192b4e8815ac77a
https://github.com/llvm/llvm-project/commit/9f438e0b0670d5d70fc81288a192b4e8815ac77a
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/test/MC/Disassembler/Mips/mips32r6/valid-mips32r6.txt
M llvm/test/MC/Disassembler/Mips/mips64r6/valid-mips64r6.txt
M llvm/test/MC/Mips/macro-rem.s
Log Message:
-----------
Mips,test: Fix check prefix
#140149
Commit: dc9171afc481f28865fc19ba7bc88c6596bb86e9
https://github.com/llvm/llvm-project/commit/dc9171afc481f28865fc19ba7bc88c6596bb86e9
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
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/RISCVInstrInfoXqci.td
A llvm/test/CodeGen/RISCV/xqcibi.ll
Log Message:
-----------
[RISCV] Add isel patterns for generating Xqcibi branch instructions (#139872)
Add ISEL patterns for generating the Xqcibi branch immediate
instructions. Similar to #135771 adds new CondCodes for the various
branch instructions and uses them to return the appropriate instruction.
Commit: ca6398c79e43ea1289bfec8c623a55f47ed3f992
https://github.com/llvm/llvm-project/commit/ca6398c79e43ea1289bfec8c623a55f47ed3f992
Author: yingopq <115543042+yingopq at users.noreply.github.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp
A llvm/test/CodeGen/Mips/private-global-prefix.ll
Log Message:
-----------
[COFF][Mips] Set PrivateGlobalPrefix to .L (#140033)
When calling external functions which start with `L`, would generate
error: assembler label 'LeaveFoo' can not be undefined. This pr would
fix this issue.
Fix #134914.
Commit: 680b3b742da02972bc0b5298b6f472d2b95ca90a
https://github.com/llvm/llvm-project/commit/680b3b742da02972bc0b5298b6f472d2b95ca90a
Author: Iris Shi <0.0 at owo.li>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td
M llvm/lib/Target/RISCV/RISCVSchedGenericOOO.td
M llvm/lib/Target/RISCV/RISCVSchedule.td
Log Message:
-----------
[RISCV][Scheduler] Add scheduling definitions for 128-bit Zfa instructions (#140003)
Followup of #139495 and #139508
Commit: 86e9be0954ac054bdf5164d1e9a17e330cbd2429
https://github.com/llvm/llvm-project/commit/86e9be0954ac054bdf5164d1e9a17e330cbd2429
Author: Ruiling, Song <ruiling.song at amd.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/include/llvm/ADT/EquivalenceClasses.h
Log Message:
-----------
EquivalenceClasses: Make ECValue public. NFC (#139689)
Expose the inner class so that we can explicitly write the type outside
the parent class.
Commit: bcb1227c3c1cc904fe6bc724b78c8c737234c709
https://github.com/llvm/llvm-project/commit/bcb1227c3c1cc904fe6bc724b78c8c737234c709
Author: Dhruv Srivastava <dhruv.srivastava at ibm.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M lldb/source/Plugins/Process/AIX/CMakeLists.txt
A lldb/source/Plugins/Process/AIX/NativeThreadAIX.cpp
A lldb/source/Plugins/Process/AIX/NativeThreadAIX.h
Log Message:
-----------
[lldb][AIX] Adding NativeThreadAIX (#139537)
This PR is in reference to porting LLDB on AIX.
Link to discussions on llvm discourse and github:
1. https://discourse.llvm.org/t/port-lldb-to-ibm-aix/80640
2. https://github.com/llvm/llvm-project/issues/101657
The complete changes for porting are present in this draft PR:
https://github.com/llvm/llvm-project/pull/102601
**Description:**
Adding NativeThreadAIX base files,
to be integrated with already merged NativeProcessAIX.
Commit: af083d09bd1815bd50f2efb9f999bec145a564b1
https://github.com/llvm/llvm-project/commit/af083d09bd1815bd50f2efb9f999bec145a564b1
Author: Kiva <imkiva at islovely.icu>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/BuiltinsRISCV.td
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
A clang/test/CodeGen/RISCV/riscv-zihintpause.c
M llvm/include/llvm/IR/IntrinsicsRISCV.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
A llvm/test/CodeGen/RISCV/riscv-zihintpause.ll
Log Message:
-----------
[RISCV] Add `zihintpause` LLVM/Clang intrinsic (#139519)
This PR adds the missing intrinsic `__builtin_riscv_pause` for the
zihintpause extension.
Spec:
https://five-embeddev.com/riscv-user-isa-manual/Priv-v1.12/zihintpause.html
Fixes #129961
Commit: 0f0fd6213e5cbf2276ee1fb23590e51ebe41810a
https://github.com/llvm/llvm-project/commit/0f0fd6213e5cbf2276ee1fb23590e51ebe41810a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M clang/lib/Basic/Targets/SystemZ.cpp
Log Message:
-----------
[Basic] Use std::optional::value_or (NFC) (#140172)
Commit: 5ca94f92fbeb2cb3c59e33169bee950b7f521400
https://github.com/llvm/llvm-project/commit/5ca94f92fbeb2cb3c59e33169bee950b7f521400
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
Log Message:
-----------
[llvm-jitlink] Use std::optional::value_or (NFC) (#140173)
Commit: a83668c3dd68bfab02ba8a109a6e09b4127f49e9
https://github.com/llvm/llvm-project/commit/a83668c3dd68bfab02ba8a109a6e09b4127f49e9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M bolt/lib/Core/DIEBuilder.cpp
Log Message:
-----------
[BOLT] Use llvm::upper_bound (NFC) (#140174)
Commit: 1001d6a6cdfcfc3c045afd24e8b4db814384bf4f
https://github.com/llvm/llvm-project/commit/1001d6a6cdfcfc3c045afd24e8b4db814384bf4f
Author: Christian Ulmann <christianulmann at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M mlir/include/mlir/Target/LLVMIR/Import.h
M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
M mlir/include/mlir/Target/LLVMIR/TypeFromLLVM.h
M mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Target/LLVMIR/TypeFromLLVM.cpp
A mlir/test/Target/LLVMIR/Import/import-structs-as-literals.ll
Log Message:
-----------
[MLIR][LLVM] Add import-structs-as-literals flag to the IR import (#140098)
This commit introduces the `import-structs-as-literals` option to the
MLIR import. This ensures that all struct types are imported as literal
structs, even when they are named in LLVM IR.
Commit: 937446d433b1c0bb3e4194847b3e620f308b0fbb
https://github.com/llvm/llvm-project/commit/937446d433b1c0bb3e4194847b3e620f308b0fbb
Author: Min Hsu <min at myhsu.dev>
Date: 2025-05-15 (Thu, 15 May 2025)
Changed paths:
M llvm/lib/Target/M68k/M68kInstrData.td
M llvm/lib/Target/M68k/M68kInstrInfo.td
M llvm/lib/Target/M68k/MCTargetDesc/M68kMCCodeEmitter.cpp
M llvm/test/MC/M68k/Data/Classes/MxMOVEM_MR.s
M llvm/test/MC/M68k/Data/Classes/MxMOVEM_RM.s
Log Message:
-----------
[M68k] Fix incorrect move mask encoding with pre-decrement operand
When the memory operand of MOVEM instruction has an addressing mode of
pre-decrement, the move mask should be reversed.
This patch fixes it by creating a new asm operand with a different
encoding method.
Reported by @petmac
Commit: c41812e6eaa95a7e43e0613d9ffab6f5eb17b92c
https://github.com/llvm/llvm-project/commit/c41812e6eaa95a7e43e0613d9ffab6f5eb17b92c
Author: Christopher Di Bella <cjdb at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M libcxx/include/map
M libcxx/test/std/containers/associative/map/map.modifiers/insert_or_assign.pass.cpp
Log Message:
-----------
[libcxx] applies #134819 to `insert_or_assign` with `const key_type&` (#140124)
This was missed due to using prvalues in the test case, which were
picked up by the rvalue-reference overload instead.
Commit: 76ba29bfd8e8aaf5b0267598d18434a0d13945a2
https://github.com/llvm/llvm-project/commit/76ba29bfd8e8aaf5b0267598d18434a0d13945a2
Author: Oliver Hunt <oliver at apple.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h
M clang/include/clang/Basic/DiagnosticCategories.h
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Sema/ScopeInfo.h
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
M clang/lib/Basic/DiagnosticIDs.cpp
M llvm/include/llvm/ADT/ImmutableSet.h
M llvm/include/llvm/Bitstream/BitCodes.h
M llvm/include/llvm/CodeGen/MachineInstr.h
M llvm/include/llvm/Demangle/ItaniumDemangle.h
M llvm/include/llvm/IR/Metadata.h
M llvm/include/llvm/IR/ModuleSummaryIndex.h
M llvm/include/llvm/IR/User.h
M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h
M llvm/lib/Target/AArch64/AArch64CollectLOH.cpp
M llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
M llvm/lib/Target/CSKY/CSKYConstantIslandPass.cpp
M llvm/lib/Target/Mips/MipsConstantIslandPass.cpp
Log Message:
-----------
[NFC] Address bit-field storage sizes to ensure ideal packing (#139825)
The MS bit-field packing ABI depends on the storage size of the type of
being placed in the bit-field. This PR addresses a number of cases in
llvm where the storage type has lead to suboptimal packing.
Commit: 17853c3a5f59fff72f2e5071d24a365043219376
https://github.com/llvm/llvm-project/commit/17853c3a5f59fff72f2e5071d24a365043219376
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
Log Message:
-----------
[libclang/python][NFC] Refactor wildcard import of `ctypes` (#140191)
The list is not that long.
Commit: a23d18726d32172f855d451375df2816b815c191
https://github.com/llvm/llvm-project/commit/a23d18726d32172f855d451375df2816b815c191
Author: Brad Smith <brad at comstyle.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Haiku.cpp
M clang/test/Driver/haiku.c
Log Message:
-----------
[Driver][Haiku] Add /boot/system/develop/headers/gcc/include header path (#140189)
Commit: 9a1bfc17d3acd33a5674cb442625f20495d5e5f5
https://github.com/llvm/llvm-project/commit/9a1bfc17d3acd33a5674cb442625f20495d5e5f5
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
A llvm/test/CodeGen/RISCV/xqcibm-extract.ll
Log Message:
-----------
[RISCV] Add SEXT_INREG patterns for Xqcibm ext instruction (#140192)
Handle sign_extend_inreg from i1/i8/i16
Commit: 1c2c02c8cbb6949c06fe26a72200ccfb37ac8c96
https://github.com/llvm/llvm-project/commit/1c2c02c8cbb6949c06fe26a72200ccfb37ac8c96
Author: Iris Shi <0.0 at owo.li>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedule.td
Log Message:
-----------
[RISCV][Scheduler] Split `UnsupportedSchedZfa` by other fp extensions (#140186)
Commit: bf92b127d2637948f53d11a187e865aa10e2e74c
https://github.com/llvm/llvm-project/commit/bf92b127d2637948f53d11a187e865aa10e2e74c
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Transforms/Utils/LoopPeel.h
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Utils/LoopPeel.cpp
M llvm/test/Transforms/LoopUnroll/peel-last-iteration.ll
Log Message:
-----------
Revert "[LoopPeel] Implement initial peeling off the last loop iteration. (#139551)"
This reverts commit bb10c3ba7f77d40a7fbfd4ac815015d3a4ae476a.
Also reverts 4f663cca15f2b53c2bc6a84d1b1f5bd81679356d:
Revert "[LoopPeel] Make sure PeelLast is always initialized."
Revert for now to bring msan bots back to green
https://lab.llvm.org/buildbot/#/builders/164/builds/9992
https://lab.llvm.org/buildbot/#/builders/94/builds/7158
Commit: eb4fde9a4e7e43947be9116563f5307f745bc541
https://github.com/llvm/llvm-project/commit/eb4fde9a4e7e43947be9116563f5307f745bc541
Author: Dominik Adamski <dominik.adamski at amd.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/AddAliasTags.cpp
M flang/test/Fir/tbaa-codegen2.fir
M flang/test/Transforms/tbaa-with-dummy-scope2.fir
M flang/test/Transforms/tbaa2.fir
M flang/test/Transforms/tbaa3.fir
Log Message:
-----------
Revert "[Flang] Turn on alias analysis for locally allocated objects" (#140202)
Reverts llvm/llvm-project#139682 (commit: cf16c97bfa1416672d8990862369e86f360aa11e )
due to reported regression in Fujitsu Fortran test suite:
https://ci.linaro.org/job/tcwg_flang_test--main-aarch64-Ofast-sve_vla-build/2081/artifact/artifacts/notify/mail-body.txt/*view*/
Commit: 39fa5b31c5e603ef96f5130913c86c821b2f0620
https://github.com/llvm/llvm-project/commit/39fa5b31c5e603ef96f5130913c86c821b2f0620
Author: Oliver Hunt <oliver at apple.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h
Log Message:
-----------
[llvm][NFC] Update LocalVarDef::CVRegister to fix size MS ABI (#140214)
LocalVarDef::CVRegister being a uint16_t is not enough for the fields to
be packed with the MS ABI.
This makes the field a 16 bit a uint32_t
Commit: bb5566aac2f236d49c74ce3c53b5c832f4d9a22b
https://github.com/llvm/llvm-project/commit/bb5566aac2f236d49c74ce3c53b5c832f4d9a22b
Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/docs/GitHub.rst
Log Message:
-----------
[llvm][docs] Improve usage note on stacked PRs (#138949)
Commit: 82a9cb358b4977e06179419b472a5b7657e55963
https://github.com/llvm/llvm-project/commit/82a9cb358b4977e06179419b472a5b7657e55963
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
A clang/bindings/python/tests/cindex/test_lib.py
Log Message:
-----------
[libclang/python] Ensure all used library functions are registered (#140015)
Add a few library functions that were not previously registered to the
`CDLL` object. The current behavior relied on the default `restype` to
work.
Add a test to check that all used library functions are properly
registered.
Commit: c2045f24eab06960e0418d7d82856407b19156ad
https://github.com/llvm/llvm-project/commit/c2045f24eab06960e0418d7d82856407b19156ad
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_cursor.py
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[libclang/python] Add typing annotations for the Cursor class (#138103)
This fully annotates the Cursor class, resolving 95 strict typing errors
as the next step towards #76664
These changes are a superset of the typing annotation changes from
#120590
Commit: fd85ffb4c43be80c179145a382d78a7c9ca3c1b7
https://github.com/llvm/llvm-project/commit/fd85ffb4c43be80c179145a382d78a7c9ca3c1b7
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/min.ll
M llvm/test/CodeGen/AMDGPU/v_sat_pk_u8_i16.ll
Log Message:
-----------
[AMDGPU] Handle min/max in isNarrowingProfitable (#140206)
Introduces a slight regression in some cases but it'll even out once we
disable the promotion in CGP.
Commit: 858649ad0e2bd4c24d4e577094707a53acfe6ade
https://github.com/llvm/llvm-project/commit/858649ad0e2bd4c24d4e577094707a53acfe6ade
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/StmtProfile.cpp
M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
Log Message:
-----------
[Clang] Profile singly-resolved UnresolvedLookupExpr with the declaration (#140029)
For a dependent variable template specialization, we don't build a
dependent Decl node or a DeclRefExpr to represent it. Instead, we
preserve the UnresolvedLookupExpr until instantiation.
However, this approach isn't ideal for constraint normalization. We
consider the qualifier during profiling, but since that's based on the
written code, it can introduce confusing differences, even when the
expressions resolve to the same declaration.
This change ensures that, if possible, we profile the resolved
declaration instead of its qualifier. For expressions that resolve to
more than one declarations, we still profile its qualifier, as otherwise
it would make us depend on the order of lookup results.
Fixes https://github.com/llvm/llvm-project/issues/139476
Commit: 3aaf44f95de24339d73c0093576a4a3cc42404ad
https://github.com/llvm/llvm-project/commit/3aaf44f95de24339d73c0093576a4a3cc42404ad
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/test/CodeGen/AArch64/variant-pcs.ll
Log Message:
-----------
[AArch64] Restrict .variant_pcs directive to ELF targets (#138924)
Directive was implemented in c87bd2d8eb37 to support lazy binding and is
emitted for vector PCS functions. It's specific to ELF but is currently
emitted for all binary formats and crashing on non-ELF targets.
Fixes #138260
---------
Co-authored-by: Cullen Rhodes <cullen.rhodes at arm.com>
Commit: 5e7bc5e080fb393c3ddb954fa9fd3714284f72c2
https://github.com/llvm/llvm-project/commit/5e7bc5e080fb393c3ddb954fa9fd3714284f72c2
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAGCombiner] Remove hasOneUse check from sext+sext_inreg to sext_inreg combine (#140207)
The hasOneUseCheck does not really add anything and makes the combine too
restrictive. Upcoming patches benefit from removing the hasOneUse check.
Commit: aacebaeab5448b4ef614aa8aca52ca210e451f79
https://github.com/llvm/llvm-project/commit/aacebaeab5448b4ef614aa8aca52ca210e451f79
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/add.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ashr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lshr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sext_inreg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shl-ext-reduce.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sub.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/xnor.ll
M llvm/test/CodeGen/AMDGPU/add.v2i16.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.160bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.192bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.224bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.288bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.32bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.352bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
M llvm/test/CodeGen/AMDGPU/anyext.ll
M llvm/test/CodeGen/AMDGPU/ashr.v2i16.ll
M llvm/test/CodeGen/AMDGPU/bitreverse.ll
M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
M llvm/test/CodeGen/AMDGPU/cgp-bitfield-extract.ll
M llvm/test/CodeGen/AMDGPU/ctlz.ll
M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/cttz.ll
M llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/fneg.ll
M llvm/test/CodeGen/AMDGPU/lshr.v2i16.ll
M llvm/test/CodeGen/AMDGPU/min.ll
M llvm/test/CodeGen/AMDGPU/sdwa-peephole.ll
M llvm/test/CodeGen/AMDGPU/sext-in-reg.ll
M llvm/test/CodeGen/AMDGPU/shl.v2i16.ll
M llvm/test/CodeGen/AMDGPU/sminmax.v2i16.ll
M llvm/test/CodeGen/AMDGPU/sra.ll
M llvm/test/CodeGen/AMDGPU/sub.v2i16.ll
M llvm/test/CodeGen/AMDGPU/widen-smrd-loads.ll
M llvm/test/CodeGen/AMDGPU/zero_extend.ll
Log Message:
-----------
[AMDGPU] Do not promote uniform i16 operations to i32 in CGP (#140208)
For the majority of cases, this is a neutral or positive change.
There are even testcases that greatly benefit from it, but some regressions are possible.
There is #140040 for GlobalISel that'd need to be fixed but it's only a one instruction regression and I think it can be fixed later.
Solves #64591
Commit: 22576e2ccec60af6d27d8fd95ad3ca721b914815
https://github.com/llvm/llvm-project/commit/22576e2ccec60af6d27d8fd95ad3ca721b914815
Author: Matthew Devereau <matthew.devereau at arm.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/include/clang/Basic/TargetInfo.h
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/test/CodeGen/AArch64/cpu-supports-target.c
M clang/test/CodeGen/AArch64/targetattr.c
M clang/test/CodeGen/X86/avx512-error.c
M clang/test/CodeGen/target-avx-abi-diag.c
Log Message:
-----------
[Clang][AArch64] Add pessimistic vscale_range for sve/sme (#137624)
The "target-features" function attribute is not currently considered
when adding vscale_range to a function. When +sve/+sme are pushed onto
functions with "#pragma attribute push(+sve/+sme)", the function
potentially misses out on optimizations that rely on vscale_range being
present.
Commit: 299a278db16fa0944472af79bfec31dd678c5b37
https://github.com/llvm/llvm-project/commit/299a278db16fa0944472af79bfec31dd678c5b37
Author: Wenju He <wenju.he at intel.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M libclc/clc/include/clc/clcmacro.h
M libclc/clc/lib/generic/math/clc_lgamma_r.cl
Log Message:
-----------
[libclc] Improving vector code generated from scalar code (#140008)
The previous method splits vector data into two halves. shuffle_vector
concatenates the two results into a vector data of original size. This
PR eliminates the use of shuffle_vector.
Commit: d779b8f92b4352b88b8512709ec0fe63f1c03695
https://github.com/llvm/llvm-project/commit/d779b8f92b4352b88b8512709ec0fe63f1c03695
Author: Wenju He <wenju.he at intel.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M libclc/cmake/modules/AddLibclc.cmake
Log Message:
-----------
[libclc] Append file_specific_compile_options after ARG_COMPILE_FLAGS (#139871)
This enables file_specific_compile_options to take precedence over
ARG_COMPILE_FLAGS. For example, if we add -fno-slp-vectorize to
COMPILE_OPTIONS of a file, the behavior changes as follows:
* Before this PR: -fno-slp-vectorize is overwritten by -O3, resulting in
SLP vectorizer remaining enabled.
* After this PR: -fno-slp-vectorize overwrites -O3, effectively
disabling SLP vectorizer.
Commit: 9f77c26ec641c7f0c353f74ee6ee072086e2f3d7
https://github.com/llvm/llvm-project/commit/9f77c26ec641c7f0c353f74ee6ee072086e2f3d7
Author: Weibo He <NewSigma at 163.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/docs/Coroutines.rst
M llvm/include/llvm/Transforms/Coroutines/CoroShape.h
M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
A llvm/test/Transforms/Coroutines/gh105595.ll
Log Message:
-----------
[CoroEarly] Hide promise alloca for later passes (#139243)
Currently coroutine promises are modeled as allocas. This is problematic
because other middle-end passes will assume promise dead after coroutine
suspend, leading to misoptimizations.
I propose the front ends remain free to emit and use allocas to model
coro promise. At CoroEarly, we will replace all uses of promise alloca
with `coro.promise`. Non coroutine passes should only access promise
through `coro.promise`. Then at CoroSplit, we will lower `coro.promise`
back to promise alloca again. So that it will be correctly collected
into coro frame. Note that we do not have to bother maintainers of other
middle-end passes.
Fix #105595
Commit: b712590ef4acfd9f0bea42aff695b22ca99ae5dd
https://github.com/llvm/llvm-project/commit/b712590ef4acfd9f0bea42aff695b22ca99ae5dd
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/test/CodeGen/X86/vector-shuffle-256-v4.ll
Log Message:
-----------
[X86] Add test coverage for #140234
Commit: 882a4c531f6d9903d1d98e6fbd2be7b29ff7bdc3
https://github.com/llvm/llvm-project/commit/882a4c531f6d9903d1d98e6fbd2be7b29ff7bdc3
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineGatherScatter - ensure index / pointer sizes match when converting index shift to scale (#140110)
The index value can sext/trunc to the pointer size before being scaled
Noticed while reviewing #139703
Commit: 711d72e38ecc5a9b605ae9bf2dbc9c3f34d8aca5
https://github.com/llvm/llvm-project/commit/711d72e38ecc5a9b605ae9bf2dbc9c3f34d8aca5
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/sve-intrinsics-while.ll
Log Message:
-----------
[LLVM][SVE] Relax optimizeIncrementingWhile constant operand requirements. (#140037)
Only the latter part of optimizeIncrementingWhile requires a constant
first operand and so the initial bailout code is preventing the obvious
whilele(X,MAX_INT) -> splat(true) combine.
Commit: e5f8998ac86f3cbbc763f0a1a9e23824e70b4af7
https://github.com/llvm/llvm-project/commit/e5f8998ac86f3cbbc763f0a1a9e23824e70b4af7
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Pointer.h
A clang/test/AST/ByteCode/lifetimes26.cpp
Log Message:
-----------
[clang][bytecode] Explicitly start variable lifetimes via placement new (#140221)
placement new /std::construct{,_at} can resurrect a variable after it's
destructor has been called.
Commit: e829963a4fefa1b9540647799800b16d88bf0412
https://github.com/llvm/llvm-project/commit/e829963a4fefa1b9540647799800b16d88bf0412
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M libcxx/src/include/overridable_function.h
Log Message:
-----------
[libc++][NFC] Update the documentation for _LIBCPP_OVERRIDABLE_FUNCTION (#140121)
Commit: 25c4478f38378134b303e68f157d2887f749995c
https://github.com/llvm/llvm-project/commit/25c4478f38378134b303e68f157d2887f749995c
Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/commute-compares.ll
Log Message:
-----------
[NFC][AMDGPU] Convert commute-compares.ll to autogenerated CHECK lines (#140076)
Commit: 38e0f983ada4cb753bcaafaf8fa9e2f2dfdef2ba
https://github.com/llvm/llvm-project/commit/38e0f983ada4cb753bcaafaf8fa9e2f2dfdef2ba
Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang-tools-extra/clangd/index/FileIndex.cpp
Log Message:
-----------
[CLANGD] [NFC] Fix proposed by static analyzer. (#140116)
This fixes an issue reported by the sanitizer with the following error
message:
`copy_constructor_call: IndexOpts` is passed by value as a parameter to`
clang::index::IndexingOptions::IndexingOptions` instead of being moved.
Commit: c02e6ca3b3ea84566800043bb4c29c67eb63f223
https://github.com/llvm/llvm-project/commit/c02e6ca3b3ea84566800043bb4c29c67eb63f223
Author: Dhruv Srivastava <dhruv.srivastava at ibm.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M lldb/source/Plugins/ObjectFile/XCOFF/ObjectFileXCOFF.cpp
M lldb/source/Plugins/ObjectFile/XCOFF/ObjectFileXCOFF.h
A lldb/test/Shell/ObjectFile/XCOFF/basic-info32.yaml
Log Message:
-----------
[lldb][AIX] Added 32-bit XCOFF Executable support (#139875)
This PR is in reference to porting LLDB on AIX.
Link to discussions on llvm discourse and github:
1. https://discourse.llvm.org/t/port-lldb-to-ibm-aix/80640
2. https://github.com/llvm/llvm-project/issues/101657
The complete changes for porting are present in this draft PR:
https://github.com/llvm/llvm-project/pull/102601
**Description:**
Adding support for XCOFF 32 bit file format as well in lldb, up to the
point where 64-bit support is implemented.
Added a new test case for the same.
This is an incremental PR on top of the previous couple of XCOFF support
commits.
Commit: a07cc181cced04850a9e93fc9b57321c8b6ff408
https://github.com/llvm/llvm-project/commit/a07cc181cced04850a9e93fc9b57321c8b6ff408
Author: David Green <david.green at arm.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/argument-blocks-array-of-struct.ll
Log Message:
-----------
[AArch64][GlobalISel] Add GISel test coverage for argument-blocks-array-of-struct.ll. NFC
See #50062.
Commit: dd32ad1c3787c51e72d496c03ab7948c98f93e06
https://github.com/llvm/llvm-project/commit/dd32ad1c3787c51e72d496c03ab7948c98f93e06
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/lib/Lex/Preprocessor.cpp
Log Message:
-----------
[Clang][Lex][NFC] Assert getExternalSource() in updateOutOfDateIdentifier (#140137)
Static analysis flagged the unconditional access of getExternalSource().
We don't initialize ExternalSource during construction but via
setExternalSource(). If this is not set it will violate the invariant
covered by the assert.
Commit: 689a960b693446f0d258240fea0c844b6e685d6e
https://github.com/llvm/llvm-project/commit/689a960b693446f0d258240fea0c844b6e685d6e
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsNVVM.td
Log Message:
-----------
[NVPTX] Update various intrinsic attributes (#140119)
Commit: 910220b84fa18ce2cbb2e21dd53b9f3d0ae582a7
https://github.com/llvm/llvm-project/commit/910220b84fa18ce2cbb2e21dd53b9f3d0ae582a7
Author: David Salinas <dsalinas at amd.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-objdump.rst
A llvm/include/llvm/Object/OffloadBundle.h
M llvm/lib/Object/CMakeLists.txt
A llvm/lib/Object/OffloadBundle.cpp
A llvm/test/tools/llvm-objdump/Offloading/fatbin.test
M llvm/tools/llvm-objdump/OffloadDump.cpp
M llvm/tools/llvm-objdump/OffloadDump.h
M llvm/tools/llvm-objdump/llvm-objdump.cpp
M llvm/unittests/Object/CMakeLists.txt
A llvm/unittests/Object/OffloadingBundleTest.cpp
Log Message:
-----------
Reapply: [llvm-objdump] Add support for HIP offload bundles (#140128)
Utilize the new extensions to the LLVM Offloading API to extend to
llvm-objdump to handle dumping fatbin offload bundles generated by HIP.
This extension to llvm-objdump adds the option --offload-fatbin.
Specifying this option will take the input object/executable and extract
all offload fatbin bundle entries into distinct code object files with
names reflecting the source file name combined with the Bundle Entry ID.
Users can also use the --arch-name option to filter offload fatbin
bundle entries by their target triple.
---------
Co-authored-by: dsalinas <dsalinas at MKM-L1-DSALINAS.amd.com>
Commit: 8eafd93034063971f08a06faa7a75a616b9866b6
https://github.com/llvm/llvm-project/commit/8eafd93034063971f08a06faa7a75a616b9866b6
Author: Douglas <Douglas.Gliner at sony.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M lld/test/ELF/link-open-file.test
M llvm/lib/Support/FileOutputBuffer.cpp
Log Message:
-----------
[Support] Set `OF_Delete` for `InMemoryBuffer`'s call to `openFileForWrite` under `commit` (#140109)
https://github.com/llvm/llvm-project/pull/134787 unintentionally enabled
`--mmap-output-file` by default under LLD which caused the Windows-only
test `lld\test\ELF\link-open-file.test` to fail. This failure uncovered
what appears to be an inconsistency on Windows between
`createOnDiskBuffer` and `createInMemoryBuffer` with respect to `DELETE`
access for the output file.
The output file created by `createOnDiskBuffer` sets the flag
`OF_Delete` as part of `fs::TempFile::create` while the output file
created by `createInMemoryBuffer` sets `OF_None` under
`InMemoryBuffer::commit`.
The test `lld\test\ELF\link-open-file.test` ensures that if
`FILE_SHARE_DELETE` is _not_ specified for an output file that LLD is
expected to overwrite, LLD should fail. This only happens if: "the file
or device has been opened for delete access" which is only done for
`fs::TempFile::create`.
See
https://learn.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-createfilew#FILE_SHARE_DELETE.
Therefore, I propose setting `OF_Delete` for `InMemoryBuffer::commit`'s
call to `openFileForWrite` to stay consistent with
`fs::TempFile::create`.
Commit: e1ca2c5b6098b1fbeca4be7886a128f36ec1ea94
https://github.com/llvm/llvm-project/commit/e1ca2c5b6098b1fbeca4be7886a128f36ec1ea94
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M libcxx/utils/sym_diff.py
Log Message:
-----------
[libc++] Reject abilist if it contains an ABI tag (#139030)
We currently don't have any ABI tags in our dylib symbols, and this is
unlikely to change in the future. By diagnosing this we avoid
accidentally adding one through e.g. having `_LIBCPP_HIDE_FROM_ABI` on
an exported symbol.
Commit: 2b5222b1927fbe89d9d6a72a63f5dca2d457565f
https://github.com/llvm/llvm-project/commit/2b5222b1927fbe89d9d6a72a63f5dca2d457565f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-256-v4.ll
Log Message:
-----------
[X86] SimplifyDemandedVectorEltsForTargetNode - add X86ISD::MOVDDUP handling (#140237)
Reduce YMM MOVDDUP node to XMM if the upper elements are not demanded
Noticed while working on #140234
Commit: ba631508ae7fec17dd104370106191c7ea6539a5
https://github.com/llvm/llvm-project/commit/ba631508ae7fec17dd104370106191c7ea6539a5
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Object/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Object/BUILD.gn
Log Message:
-----------
[gn build] Port 910220b84fa1
Commit: 9c3ab1cfc8295e64d7bfb3bd5bec36859069a962
https://github.com/llvm/llvm-project/commit/9c3ab1cfc8295e64d7bfb3bd5bec36859069a962
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-objdump.rst
R llvm/include/llvm/Object/OffloadBundle.h
M llvm/lib/Object/CMakeLists.txt
R llvm/lib/Object/OffloadBundle.cpp
R llvm/test/tools/llvm-objdump/Offloading/fatbin.test
M llvm/tools/llvm-objdump/OffloadDump.cpp
M llvm/tools/llvm-objdump/OffloadDump.h
M llvm/tools/llvm-objdump/llvm-objdump.cpp
M llvm/unittests/Object/CMakeLists.txt
R llvm/unittests/Object/OffloadingBundleTest.cpp
Log Message:
-----------
Revert "Reapply: [llvm-objdump] Add support for HIP offload bundles (#140128)"
This reverts commit 910220b84fa18ce2cbb2e21dd53b9f3d0ae582a7.
Multiple buildbot failures have been reported:
https://github.com/llvm/llvm-project/pull/140128
Commit: 3aeced73088e08c61999a8d011e28481d959b1bc
https://github.com/llvm/llvm-project/commit/3aeced73088e08c61999a8d011e28481d959b1bc
Author: Alexander Kornienko <alexfh at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/PropertiesBase.td
A clang/test/Modules/pr140130.cpp
Log Message:
-----------
[clang] Fix assertion failure in constexpr union deserialization (#140179)
This commit fixes https://github.com/llvm/llvm-project/issues/140130
Commit: e401fb8c47f4ac0190654381b21d35451edea5e7
https://github.com/llvm/llvm-project/commit/e401fb8c47f4ac0190654381b21d35451edea5e7
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Passes/AsmDump.cpp
M bolt/lib/Passes/BinaryPasses.cpp
Log Message:
-----------
[BOLT] Use llvm::replace (NFC) (#140199)
Commit: ab1fea49e252ac40c6c5c84eca59841ac559f932
https://github.com/llvm/llvm-project/commit/ab1fea49e252ac40c6c5c84eca59841ac559f932
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
M clang-tools-extra/clang-tidy/llvm/HeaderGuardCheck.cpp
M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
M clang-tools-extra/clangd/Diagnostics.cpp
M clang-tools-extra/clangd/FindTarget.cpp
M clang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
M clang-tools-extra/modularize/ModularizeUtilities.cpp
M clang-tools-extra/modularize/ModuleAssistant.cpp
M clang-tools-extra/modularize/PreprocessorTracker.cpp
M clang-tools-extra/pp-trace/PPCallbacksTracker.cpp
Log Message:
-----------
[clang-tools-extra] Use llvm::replace (NFC) (#140200)
Commit: 5c60f066488e3ebdacc5f63e8421715a152ab401
https://github.com/llvm/llvm-project/commit/5c60f066488e3ebdacc5f63e8421715a152ab401
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/TextAPI/InterfaceFile.cpp
Log Message:
-----------
[TextAPI] Use llvm::replace (NFC) (#140201)
Commit: 7d633068870fde2a05596e9efa3b5ff4d9ad7097
https://github.com/llvm/llvm-project/commit/7d633068870fde2a05596e9efa3b5ff4d9ad7097
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/docs/DebuggingCoroutines.rst
M clang/docs/InternalsManual.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/Modules.rst
M clang/docs/PointerAuthentication.rst
M clang/docs/RealtimeSanitizer.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/StandardCPlusPlusModules.rst
M clang/docs/UsersManual.rst
M clang/docs/analyzer/checkers.rst
M clang/docs/analyzer/user-docs/Installation.rst
Log Message:
-----------
[clang] Fix typos in documentation (#140211)
Commit: 4567c11d284fe404df80fb3293dac3e2aa85b79e
https://github.com/llvm/llvm-project/commit/4567c11d284fe404df80fb3293dac3e2aa85b79e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.cpp
M clang/lib/Frontend/DiagnosticRenderer.cpp
M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
M clang/lib/Lex/PPDirectives.cpp
Log Message:
-----------
[clang] Use llvm::binary_search (NFC) (#140216)
Commit: 36290b7289adc3fe696c5e9111c91cd95ccc2772
https://github.com/llvm/llvm-project/commit/36290b7289adc3fe696c5e9111c91cd95ccc2772
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Object/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Object/BUILD.gn
Log Message:
-----------
[gn build] Port 9c3ab1cfc829
Commit: 8696d16242d220373460ab17f9fc10b2dd5d38dc
https://github.com/llvm/llvm-project/commit/8696d16242d220373460ab17f9fc10b2dd5d38dc
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.h
M clang/test/CIR/CodeGenOpenACC/combined.cpp
M clang/test/CIR/CodeGenOpenACC/openacc-not-implemented.cpp
Log Message:
-----------
[OpenACC][CIR] Implement 'async' lowering for combined constructs
Implementation is 'trivial' as were the rest of the non data clauses, so
this implements them, finishing the last non-data/var-list clause for
combined constructs. Also ensures this is properly tested.
Commit: 78af0f3ab8e6fcd52337b7ba5873deea5d2bfe7d
https://github.com/llvm/llvm-project/commit/78af0f3ab8e6fcd52337b7ba5873deea5d2bfe7d
Author: Iris Shi <0.0 at owo.li>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M mlir/lib/Dialect/ArmSME/Transforms/TileAllocation.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferDeallocationOpInterface.cpp
M mlir/lib/Dialect/Linalg/Transforms/DecomposeGenericByUnfoldingPermutation.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenEnv.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
M mlir/lib/Dialect/Utils/StaticValueUtils.cpp
M mlir/lib/Pass/Pass.cpp
M mlir/tools/mlir-tblgen/OpDocGen.cpp
Log Message:
-----------
[mlir][NFC] Use `llvm::sort` (#140261)
Commit: 04fde85057cb4da2e560da629df7a52702eac489
https://github.com/llvm/llvm-project/commit/04fde85057cb4da2e560da629df7a52702eac489
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
Log Message:
-----------
[VPlan] Rename isUniform(AfterVectorization) to isSingleScalar (NFC). (#140134)
Update the naming in VPReplicateRecipe and vputils to the more accurate
isSingleScalar, as the functions check for cases where only a single
scalar is needed, either because it produces the same value for all
lanes or has only their first lane used.
Discussed in https://github.com/llvm/llvm-project/pull/139150.
PR: https://github.com/llvm/llvm-project/pull/140134
Commit: 6ebb84869e6cf1a643b053e53931c6075b2cc8ae
https://github.com/llvm/llvm-project/commit/6ebb84869e6cf1a643b053e53931c6075b2cc8ae
Author: Jameson Nash <vtjnash at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
langref updates for aarch64 trampoline (#139740)
Add clarifying comments to the langref from the review of #126743
Commit: 087a5d2ec7897cd99d3787820711fec76a8e1792
https://github.com/llvm/llvm-project/commit/087a5d2ec7897cd99d3787820711fec76a8e1792
Author: John Harrison <harjohn at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
M lldb/test/API/tools/lldb-dap/breakpoint-events/TestDAP_breakpointEvents.py
M lldb/test/API/tools/lldb-dap/cancel/TestDAP_cancel.py
M lldb/test/API/tools/lldb-dap/commands/TestDAP_commands.py
M lldb/test/API/tools/lldb-dap/completions/TestDAP_completions.py
M lldb/test/API/tools/lldb-dap/console/TestDAP_console.py
M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
M lldb/test/API/tools/lldb-dap/exception/TestDAP_exception.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/test/API/tools/lldb-dap/module/TestDAP_module.py
M lldb/test/API/tools/lldb-dap/output/TestDAP_output.py
M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart.py
M lldb/test/API/tools/lldb-dap/stop-hooks/TestDAP_stop_hooks.py
M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
M lldb/tools/lldb-dap/DAPError.cpp
M lldb/tools/lldb-dap/DAPError.h
M lldb/tools/lldb-dap/Handler/ContinueRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.h
Log Message:
-----------
[lldb-dap] Adding additional asserts to unit tests. (#140107)
Adding an assert that the 'continue' request succeeds caused a number of
tests to fail. This showed a number of tests that were not specifying if
they should be stopped or not at key points in the test. This is likely
contributing to these tests being flaky since the debugger is not in the
expected state.
Additionally, I spent a little time trying to improve the readability of
the dap_server.py and lldbdap_testcase.py.
Commit: 63a4cae56cf896abd12ecf8dbd50f7f5fb9549e1
https://github.com/llvm/llvm-project/commit/63a4cae56cf896abd12ecf8dbd50f7f5fb9549e1
Author: Momchil Velikov <momchil.velikov at arm.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/ArmSVE/IR/ArmSVE.td
M mlir/lib/Dialect/ArmSVE/Transforms/LegalizeForLLVMExport.cpp
M mlir/test/Dialect/ArmSVE/legalize-for-llvm.mlir
M mlir/test/Target/LLVMIR/arm-sve.mlir
Log Message:
-----------
[MLIR][ArmSVE] Add an ArmSVE dialect operation which maps to `svdupq_lane` (#135633)
Commit: 71d1b4c77c39201b0d533c2eccb2f5cbc1561b22
https://github.com/llvm/llvm-project/commit/71d1b4c77c39201b0d533c2eccb2f5cbc1561b22
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/include/llvm/Demangle/ItaniumDemangle.h
Log Message:
-----------
[ItaniumDemangle] Make it independent of LLVM again. NFC
Commit: be6c1684c058ff40b5cb29e7eb88f06f72dd50df
https://github.com/llvm/llvm-project/commit/be6c1684c058ff40b5cb29e7eb88f06f72dd50df
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
Log Message:
-----------
[AMDGPU] Automate creation of byte_sel dags. NFCI. (#140155)
Commit: e30301aaecd24141cbdcd740aa4c16c0d9b05307
https://github.com/llvm/llvm-project/commit/e30301aaecd24141cbdcd740aa4c16c0d9b05307
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/CodeGen/MachineCopyPropagation.cpp
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
Log Message:
-----------
[MachineCopyPropagation] Make use of lane mask info in basic block liveins (#140248)
Commit: 82bad53bda39bd7a7bbdab81e72887dea8479a47
https://github.com/llvm/llvm-project/commit/82bad53bda39bd7a7bbdab81e72887dea8479a47
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/unittests/ProfileData/DataAccessProfTest.cpp
Log Message:
-----------
[StaticDataLayout][PGO] Remove inclusion of private gmock header
This one is supposed to be included via gmock.h
Commit: 589e7abea570a813ef8a2e8b8f130fd40cd07141
https://github.com/llvm/llvm-project/commit/589e7abea570a813ef8a2e8b8f130fd40cd07141
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang-tools-extra/clang-tidy/readability/MagicNumbersCheck.cpp
Log Message:
-----------
[clang-tidy] Use std::binary_search (NFC) (#140263)
Commit: 9adcb4fe125e5b2bdf894fb35c7d91e10c10e1ea
https://github.com/llvm/llvm-project/commit/9adcb4fe125e5b2bdf894fb35c7d91e10c10e1ea
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/include/clang/Basic/JsonSupport.h
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/lib/CodeGen/CGBlocks.cpp
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/unittests/Driver/ToolChainTest.cpp
Log Message:
-----------
[clang] Use llvm::replace (NFC) (#140264)
Commit: fa2263b3097c4e5f361505ce564a246a7f289172
https://github.com/llvm/llvm-project/commit/fa2263b3097c4e5f361505ce564a246a7f289172
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.h
Log Message:
-----------
[CIR][NFC] Use arrangeFunctionDeclaration to build function types (#139787)
This change replaces the simplified call that we were previously using
to convert the function type provided by a global declaration to the CIR
function type. We now go through 'arrangeGlobalDeclaration' which builds
the function type in a more complicated manner. This change has no
observable differences for the currently upstreamed CIR support, but it
is necessary to prepare for C++ member function calls, which require the
extra handling.
Commit: 2f5a24d0c555832ec6e5747cc7bad814ed97cbdc
https://github.com/llvm/llvm-project/commit/2f5a24d0c555832ec6e5747cc7bad814ed97cbdc
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
Log Message:
-----------
[CIR][NFC] Fix warning about unhandled Decl (#140159)
This fixes a warning about an unhandled Decl that was recently
introduced. While adding the new decl, I noticed that one of the others
that was in the "NYI" group belonged in the "unreachable" group, so I
moved it also.
Commit: c72c0b298c13ebc4d374e84b8ea20f8ca4f5ace2
https://github.com/llvm/llvm-project/commit/c72c0b298c13ebc4d374e84b8ea20f8ca4f5ace2
Author: nd <dmitry.neverov at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M lldb/source/Target/Target.cpp
Log Message:
-----------
Fix race condition during iteration through modules (#139283) (#139862)
Use the locking iterator to ensure module don't change during iteration.
Commit: 7fe1b43122230b556481b56210bc72466c1076d5
https://github.com/llvm/llvm-project/commit/7fe1b43122230b556481b56210bc72466c1076d5
Author: James Y Knight <jyknight at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M utils/bazel/configure.bzl
M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/python/BUILD.bazel
Log Message:
-----------
NFC: reformat bazel files with buildifier.
Commit: e9c9c33fa4e26b7e18947dfefa960f68945d1899
https://github.com/llvm/llvm-project/commit/e9c9c33fa4e26b7e18947dfefa960f68945d1899
Author: Momchil Velikov <momchil.velikov at arm.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/ArmSVE/IR/ArmSVE.td
M mlir/lib/Dialect/ArmSVE/Transforms/LegalizeForLLVMExport.cpp
M mlir/test/Dialect/ArmSVE/legalize-for-llvm.mlir
M mlir/test/Dialect/ArmSVE/roundtrip.mlir
M mlir/test/Target/LLVMIR/arm-sve.mlir
Log Message:
-----------
[MLIR][ArmSVE] Add an ArmSVE dialect operation which maps to svusmmla (#135634)
Commit: 23a674d2ecc428a96d28c9772cc5178eaf763863
https://github.com/llvm/llvm-project/commit/23a674d2ecc428a96d28c9772cc5178eaf763863
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M libcxxabi/src/demangle/ItaniumDemangle.h
Log Message:
-----------
[libcxxabi] Update ItaniumDemangle.h from LLVM (#140273)
76ba29bfd8e8aaf5b0267598d18434a0d13945a2 landed changes in
ItaniumDemangle.h on the LLVM side that were not propagated over to the
libcxxabi side. This patch fixes that.
Commit: 7f4a9105df26a1c481d6b6d390a9d24e8ea987d1
https://github.com/llvm/llvm-project/commit/7f4a9105df26a1c481d6b6d390a9d24e8ea987d1
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVMakeCompressible.cpp
A llvm/test/CodeGen/RISCV/make-compressible-zilsd.mir
Log Message:
-----------
[RISCV] Add Zilsd/Zclsd support to RISCVMakeCompressible. (#140136)
Commit: dcd62f3674907b0d31a303b95ea5aa844ffd8238
https://github.com/llvm/llvm-project/commit/dcd62f3674907b0d31a303b95ea5aa844ffd8238
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[SelectionDAG] Rename MemSDNode::getOriginalAlign to getBaseAlign. NFC (#139930)
This matches the underlying function in MachineMemOperand and how it is
printed when BaseAlign differs from Align.
Commit: ea4bf3456f775360cbf5de40edb2899a19b33456
https://github.com/llvm/llvm-project/commit/ea4bf3456f775360cbf5de40edb2899a19b33456
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
A llvm/test/CodeGen/RISCV/fold-addi-loadstore-zilsd.ll
Log Message:
-----------
[RISCV] Add Zilsd to RISCVMergeBaseOffset. (#140157)
I only tested a simple case for folding the addi from medany codemodel.
I assume everything else should just work.
Commit: ec44c74fe7444c521c82e1ebef0d6a4e7be33252
https://github.com/llvm/llvm-project/commit/ec44c74fe7444c521c82e1ebef0d6a4e7be33252
Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
A clang/test/CIR/CodeGen/switch_flat_op.cpp
A clang/test/CIR/IR/switch-flat.cir
A clang/test/CIR/Transforms/switch.cir
Log Message:
-----------
[CIR] Upstream support for FlattenCFG switch and SwitchFlatOp (#139154)
This PR adds support for the `FlattenCFG` transformation on `switch`
statements. It also introduces the `SwitchFlatOp`, which is necessary
for subsequent lowering to LLVM.
Commit: 52af23f950bc9585c623bfff6ac2a7d4fbe5e18a
https://github.com/llvm/llvm-project/commit/52af23f950bc9585c623bfff6ac2a7d4fbe5e18a
Author: Raphael Moreira Zinsly <rzinsly at ventanamicro.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/stack-probing-dynamic.ll
Log Message:
-----------
[RISCV] Add stack probing in eliminateCallFramePseudoInstr (#139731)
Stack clash protection code was missing from
RISCVFrameLowering::eliminateCallFramePseudoInstr, calling allocateStack
fixes it.
This patch also fixes the tests in stack-probing-dynamic.ll that should
be testing the stack allocation before a function call.
Commit: ebb15353d2a1edefb40faa0ad56e661b7aee3134
https://github.com/llvm/llvm-project/commit/ebb15353d2a1edefb40faa0ad56e661b7aee3134
Author: peremyach <akhabutdinov at meta.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h
M llvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h
M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
M llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp
M llvm/lib/DebugInfo/GSYM/DwarfTransformer.cpp
Log Message:
-----------
Reduce llvm-gsymutil memory usage (#139907)
For large binaries gsymutil ends up using too much memory. This diff
adds DIE tree cleanup per compile unit to reduce memory usage.
P. S. Not sure about formatting. Maybe it hasn't been run in a while, or
I have misconfigured something.
`$ git clang-format HEAD~1
clang-format did not modify any files
$ clang-format --version
clang-format version 21.0.0git
(git at github.com:peremyach/llvm-project.git
8d945c8357e1bd9872a34f92620d4916bfd27482)
`
Co-authored-by: Arslan Khabutdinov <akhabutdinov at fb.com>
Commit: 7674d6fa9e45c1748d0dd49430aa472028d44a2d
https://github.com/llvm/llvm-project/commit/7674d6fa9e45c1748d0dd49430aa472028d44a2d
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/include/llvm/TableGen/Record.h
M llvm/lib/TableGen/Record.cpp
M llvm/utils/TableGen/AsmWriterEmitter.cpp
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
M llvm/utils/TableGen/Common/VarLenCodeEmitterGen.cpp
Log Message:
-----------
[LLVM][TableGen] Simplify `DagInit::get` (#140056)
- Add `DagInit::get` overloads that do not need ValName to be specified.
- Fix some calls to either not create temporary arrays for DAG args or
use the std::pair<> overload.
Commit: d79d9b8fbfc7e8411aeaf2f5e1be9d4247594fee
https://github.com/llvm/llvm-project/commit/d79d9b8fbfc7e8411aeaf2f5e1be9d4247594fee
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/reused-scalar-repeated-in-node.ll
M llvm/test/Transforms/SLPVectorizer/X86/buildvectors-parent-phi-nodes.ll
M llvm/test/Transforms/SLPVectorizer/X86/full-matched-bv-with-subvectors.ll
M llvm/test/Transforms/SLPVectorizer/X86/matched-bv-schedulable.ll
M llvm/test/Transforms/SLPVectorizer/X86/matched-nodes-updated.ll
A llvm/test/Transforms/SLPVectorizer/X86/node-outside-used-only.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-vectorized-in-transform.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-node-num-operands.ll
M llvm/test/Transforms/SLPVectorizer/revec.ll
Log Message:
-----------
[SLP]Change the insertion point for outside-block-used nodes and prevec phi operand gathers
Need to set the insertion point for (non-schedulable) vector node after
the last instruction in the node to avoid def-use breakage. But it also
causes miscompilation with gather/buildvector operands of the phi nodes,
used in the same phi only in the block.
These nodes supposed to be inserted at the end of the block and after
changing the insertion point for the non-schedulable vec block, it also
may break def-use dependencies. Need to prevector such nodes, to emit
them as early as possible, so the vectorized nodes are inserted before
these nodes.
Fixes #139728
Reviewers: hiraditya, HanKuanChen, RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/139917
Commit: 818893177807663f438155f8d962d32a9473ae99
https://github.com/llvm/llvm-project/commit/818893177807663f438155f8d962d32a9473ae99
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Rename getOriginalAlign->getBaseAlign after #139930
Commit: e620f10f57bf698b7446f134528bb2585fdf1f28
https://github.com/llvm/llvm-project/commit/e620f10f57bf698b7446f134528bb2585fdf1f28
Author: Dan Blackwell <danblackwell95 at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M compiler-rt/test/sanitizer_common/TestCases/Posix/sanitizer_set_report_path_test.cpp
Log Message:
-----------
[compiler-rt][sanitizer_common] Alter sanitizer_set_report_path_test to not assume a fixed file path (#139282)
Currently, `Posix/sanitizer_set_report_path_test.cpp` contains the
following check: `// CHECK: ERROR: Can't create directory:
{{.*}}Posix/Output/sanitizer_set_report_path_test.cpp.tmp`. This makes
an assumption that the test file resides in `Posix/Output`, however when
testing on a remote device, an alternative temporary directory path is
used. This patch instead checks that the path in the error message
matches the requested path dynamically.
Commit: aec685ea77e97bcc6892b12e970857fb1b049528
https://github.com/llvm/llvm-project/commit/aec685ea77e97bcc6892b12e970857fb1b049528
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/IR/DataLayout.h
Log Message:
-----------
[DataLayout] Introduce DataLayout::getAddressSize(AS)
This function can be used to retrieve the number of bits that can be used
for arithmetic in a given address space (i.e. the range of the address
space). For most in-tree targets this should not make any difference
but differentiating between the size of a pointer in bits and the address
range is extremely important e.g. for CHERI-enabled targets, where pointers
carry additional metadata such as bounds and permissions and only a subset
of the pointer bits is used as the address.
The address size is defined to be the same as the index size.
We considered adding a separate property since targets exist where indexing
and address range actually use different sizes (AMDGPU fat pointers with
160 representation, 48 bit address and 32 bit index), but for the purposes
of LLVM semantics, differentiating them does not add much value and it
introduces a lot of complexity in ensure the correct bits are used. See
the reasoning by @nikic on https://discourse.llvm.org/t/clarifiying-the-semantics-of-ptrtoint/83987/38https://discourse.llvm.org/t/clarifiying-the-semantics-of-ptrtoint/83987/49
Originally uploaded as https://reviews.llvm.org/D135158
Reviewed By: davidchisnall, krzysz00
Pull Request: https://github.com/llvm/llvm-project/pull/139347
Commit: 4b104c68530581cb72da687b6edf61f5e799b5c1
https://github.com/llvm/llvm-project/commit/4b104c68530581cb72da687b6edf61f5e799b5c1
Author: Hui <hui.xie1990 at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M libcxx/include/__flat_set/utils.h
A libcxx/test/libcxx/containers/container.adaptors/flat.multiset/insert_range.pass.cpp
A libcxx/test/libcxx/containers/container.adaptors/flat.set/insert_range.pass.cpp
Log Message:
-----------
[libc++] Fix flat_{multi}set insert_range (#137462)
Fixes #136656
Commit: 85fe4ab8a3faa58317c247051df2195c89bed0fa
https://github.com/llvm/llvm-project/commit/85fe4ab8a3faa58317c247051df2195c89bed0fa
Author: Mariusz Kwiczala <70530507+sfc-gh-mkwiczala at users.noreply.github.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
A llvm/include/llvm/DebugInfo/GSYM/GsymContext.h
R llvm/include/llvm/DebugInfo/GSYM/GsymDIContext.h
M llvm/lib/DebugInfo/GSYM/CMakeLists.txt
A llvm/lib/DebugInfo/GSYM/GsymContext.cpp
R llvm/lib/DebugInfo/GSYM/GsymDIContext.cpp
M llvm/lib/DebugInfo/Symbolize/Symbolize.cpp
M llvm/utils/gn/secondary/llvm/lib/DebugInfo/GSYM/BUILD.gn
Log Message:
-----------
Rename GsymDIContext to GsymContext (#140227)
Renaming based on suggestion here:
https://github.com/llvm/llvm-project/pull/139686#discussion_r2089538528
Commit: 0de8ff6d9c7cd661f3938d15d370141174afb60f
https://github.com/llvm/llvm-project/commit/0de8ff6d9c7cd661f3938d15d370141174afb60f
Author: David Green <david.green at arm.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/div.ll
M llvm/test/Analysis/CostModel/AArch64/rem.ll
M llvm/test/Analysis/CostModel/AArch64/shuffle-broadcast.ll
M llvm/test/Analysis/CostModel/AArch64/shuffle-load.ll
M llvm/test/Analysis/CostModel/AArch64/shuffle-other.ll
M llvm/test/Analysis/CostModel/AArch64/shuffle-store.ll
Log Message:
-----------
[AArch64] Reduce the cost of repeated sub-shuffle (#139331)
Given a larger-than-legal shuffle we will split into multiple sub-parts.
This adds a check to the computed costs of sub-shuffles so that repeated
sequences are not accounted for multiple times. This especially reduces
the cost of broadcasts/splats.
Commit: 976b00654a37ada462fc19df11a1d2468c1c463c
https://github.com/llvm/llvm-project/commit/976b00654a37ada462fc19df11a1d2468c1c463c
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/combine-reduce-add-to-vcpop.ll
Log Message:
-----------
[RISCV] Disable combineToVCPOP for illegal scalable vector types. (#140195)
This transform creates target specific instructions which must have
legal types. We were checking this for fixed vectors, but not scalable
vectors. This caused a crash with <vscale x 1 x i1> which isn't legal
for Zve32x.
Commit: 4e01a07cffc43f720ed527969ba70c396940ce2e
https://github.com/llvm/llvm-project/commit/4e01a07cffc43f720ed527969ba70c396940ce2e
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/arm64ec-hybrid-patchable.ll
M llvm/test/CodeGen/AArch64/arm64ec-varargs.ll
M llvm/test/CodeGen/AArch64/darwinpcs-tail.ll
M llvm/test/CodeGen/AArch64/vararg-tallcall.ll
M llvm/test/CodeGen/AArch64/win64_vararg2.ll
Log Message:
-----------
[AArch64] Fixes for Windows varargs handling. (#139972)
Omit spills when va_start is not present, like we do on other targets.
In most situations this is just an optimization, but for thunks in
arm64ec, we need this because it's illegal to reference varargs in a
thunk.
Fix the bug that prevented omitting vararg spills from working properly:
we need to avoid interfering with musttail handling. (This is not a
Windows-only issue, but it mostly affects Windows because musttail
thunks are mostly used for the Microsoft C++ ABI.)
On arm64ec, don't set x4 and x5 for musttail thunks; forward them from
the caller.
Fixes #139856 .
Commit: 48587f30d63689816f3d5a1d199dba42ff332247
https://github.com/llvm/llvm-project/commit/48587f30d63689816f3d5a1d199dba42ff332247
Author: Grigory Pastukhov <99913765+grigorypas at users.noreply.github.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaDecl.cpp
A clang/test/SemaCXX/warn-nrvo.cpp
Log Message:
-----------
[clang] Add new warning: not eliding copy on return (missed NRVO) (#139973)
Commit: 00c5cd8a7a3f7e363d8f0d172ea88af91612c7fa
https://github.com/llvm/llvm-project/commit/00c5cd8a7a3f7e363d8f0d172ea88af91612c7fa
Author: Bill Wendling <morbo at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M libc/config/config.json
Log Message:
-----------
[libc] Fix typo: Configue -> Configure (#140166)
Commit: efa28338d858e1ea2bf705d50a0404bc602c8fe1
https://github.com/llvm/llvm-project/commit/efa28338d858e1ea2bf705d50a0404bc602c8fe1
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/include/clang/Sema/Overload.h
M clang/test/SemaCXX/overload-resolution-deferred-templates.cpp
Log Message:
-----------
[Clang] Fix a regression introduced by #140073 (#140288)
Pointer to data member don't decay, assuming they do caused an assertion
failure.
Commit: dd4a73069c289985afc1ccfd0c512e5791ede404
https://github.com/llvm/llvm-project/commit/dd4a73069c289985afc1ccfd0c512e5791ede404
Author: Qinkun Bao <qinkun at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/ProfileList.cpp
M clang/lib/Basic/SanitizerSpecialCaseList.cpp
M llvm/include/llvm/Support/SpecialCaseList.h
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[NFCI][Sanitizer] Convert SpecialCaseList::Sections from StringMap to vector.
As discussed in https://github.com/llvm/llvm-project/pull/139772, SpecialCaseList::Sections can keep the order of Sections when parsing the case list.
Reviewers: thurstond, vitalybuka
Reviewed By: vitalybuka
Pull Request: https://github.com/llvm/llvm-project/pull/140127
Commit: ad6bb707730247abc07810c0598434a86361e049
https://github.com/llvm/llvm-project/commit/ad6bb707730247abc07810c0598434a86361e049
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/CIBestPractices.rst
M llvm/docs/CMake.rst
M llvm/docs/CodeGenerator.rst
M llvm/docs/Coroutines.rst
M llvm/docs/CoverageMappingFormat.rst
M llvm/docs/DeveloperPolicy.rst
M llvm/docs/ExtendingLLVM.rst
M llvm/docs/InstrProfileFormat.rst
M llvm/docs/InterfaceExportAnnotations.rst
Log Message:
-----------
[llvm] Fix typos in documentation (#140275)
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: ba93685ea228523c1f717f569e08185098b7defb
https://github.com/llvm/llvm-project/commit/ba93685ea228523c1f717f569e08185098b7defb
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/test/Transforms/LoopVectorize/single_early_exit_with_outer_loop.ll
Log Message:
-----------
[VPlan] Also use original parent loop for exit VPBBs.
When vectorizing loops with early exits that is nested within another
one, one of the loop exits may be outside both loops, so setting adding
it to the parent loop is incorrect. Also use the original parent loop
for exit blocks.
Commit: 3def9976ebeb1dec7fb867a927f3e2e4adf1816b
https://github.com/llvm/llvm-project/commit/3def9976ebeb1dec7fb867a927f3e2e4adf1816b
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/CodeGen/TailDuplicator.cpp
Log Message:
-----------
Use early return/continue in TailDuplicator::duplicateInstruction [nfc]
Commit: 4a4f0ffb5ba62428559f9d8d6f788505d350834f
https://github.com/llvm/llvm-project/commit/4a4f0ffb5ba62428559f9d8d6f788505d350834f
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/Support/CMakeLists.txt
Log Message:
-----------
Fixed cmake config in case of LLVM_ENABLE_RPMALLOC=ON and non MSVC compiler (#139770)
This patch fixes the following error in case of LLVM_ENABLE_RPMALLOC=ON
and clang or other non MSVC compiler:
```
CMake Error at cmake/modules/AddLLVM.cmake:644 (add_library):
Target "LLVMSupport" links to item " -INCLUDE:malloc" which has leading or
trailing whitespace. This is now an error according to policy CMP0004.
Call Stack (most recent call first):
cmake/modules/AddLLVM.cmake:944 (llvm_add_library)
cmake/modules/AddLLVM.cmake:917 (add_llvm_library)
lib/Support/CMakeLists.txt:139 (add_llvm_component_library)
```
Note `delayload_flags` is empty before this line is case of non MSVC
compiler.
The behavior is the same with CMake 3.25.3 and 4.0.2.
Commit: b3e7e4bb252c82c45639569c6b5f91c5c63742b6
https://github.com/llvm/llvm-project/commit/b3e7e4bb252c82c45639569c6b5f91c5c63742b6
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[VPlan] Also specialize getNumIncoming for VPWidenPointerInd (NFC).
Similar to VPWidenIntOrFpInductionRecipe, VPWidenPointerInductionRecipe
only has a single incoming value and no backedge value.
Currently NFC as there are no problematic uses at the moment.
Commit: ff78d233c0c40f94ef922a4ea1b88e02bd126040
https://github.com/llvm/llvm-project/commit/ff78d233c0c40f94ef922a4ea1b88e02bd126040
Author: David Green <david.green at arm.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
Log Message:
-----------
[AArch64] Ensure Source1 and Source2 are initialized.
Try to appease the sanatizers builders by making sure the Source1 and Source2
and initialized when passed to the tuple.
See #139331.
Commit: fec9be9f73c3a777a7649ce35f3e523f303a8f20
https://github.com/llvm/llvm-project/commit/fec9be9f73c3a777a7649ce35f3e523f303a8f20
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M mlir/include/mlir/Query/Matcher/SliceMatchers.h
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel][mlir] Add missing dep and include after 9b63bdd15418e90d0c6889d26e490db89ae744d1
This fixes issues when compiling SliceMatchers.h separately. In
particular, the missing include triggered a "member access into
incomplete type" error:
```
third_party/llvm/llvm-project/mlir/include/mlir/Query/Matcher/SliceMatchers.h:91:30: error: member access into incomplete type 'Operation'
91 | for (auto operand : subOp->getOperands()) {
| ^
third_party/llvm/llvm-project/mlir/include/mlir/Analysis/SliceAnalysis.h:20:7: note: forward declaration of 'mlir::Operation'
20 | class Operation;
| ^
```
Commit: 7175970fc5987ac5a7ae0cb8d2527b200b27a5ec
https://github.com/llvm/llvm-project/commit/7175970fc5987ac5a7ae0cb8d2527b200b27a5ec
Author: Amy Huang <akhuang at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/test/Transforms/LoopIdiom/strlen.ll
Log Message:
-----------
Add debug location to strlen in LoopIdiomRecognize pass (#140164)
Pass down the debug location to the generated strlen call
because LLVM maintains that calls to inlinable functions must have debug info.
Commit: 555d68f3db3fd189809bd19dd274e3bf5ac68d2f
https://github.com/llvm/llvm-project/commit/555d68f3db3fd189809bd19dd274e3bf5ac68d2f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
Log Message:
-----------
[RISCV] Use implicit def/use of SP for PROBED_STACKALLOC*. (#139153)
Commit: 33684ac9be4892579f63a8e2b67080419426cf98
https://github.com/llvm/llvm-project/commit/33684ac9be4892579f63a8e2b67080419426cf98
Author: PiJoules <6019989+PiJoules at users.noreply.github.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
A llvm/test/Transforms/LowerTypeTests/cfi-coff-comdat-rename.ll
Log Message:
-----------
[llvm][CFI] Do not canonicalize COFF functions in a comdat (#139962)
COFF requires that a function exists with the same name as a comdat. Not
having this key function results in `LLVM ERROR: Associative COMDAT
symbol '...' does not exist.` CFI by default will attempt to
canonicalize a function by appending `.cfi` to its name which allows
external references to refer to the new canonical alias, but it does not
change the comdat name. We can change the comdat name since symbol and
comdat resolution occurs before LTO, so we already know which symbols
are prevailing.
Commit: ba38e56c989af932eaa7b287a8e6197abf693e57
https://github.com/llvm/llvm-project/commit/ba38e56c989af932eaa7b287a8e6197abf693e57
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M libc/config/linux/riscv/entrypoints.txt
M libc/src/sys/time/linux/getitimer.cpp
M libc/src/sys/time/linux/setitimer.cpp
Log Message:
-----------
[libc] Enable setitimer and getitimer functions on riscv (#139182)
These functions don't have a _time64 variant, so we can't use time_t
directly (since our time_t is a uint64_t). The workaround is to use
longs when doing the syscall and write back when necessary.
Commit: da944e009955982927759c2f1fd47d43b236cc51
https://github.com/llvm/llvm-project/commit/da944e009955982927759c2f1fd47d43b236cc51
Author: Aaron St George <aaronstgeorge at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/test/Dialect/Tensor/canonicalize.mlir
Log Message:
-----------
[mlir][tensor] Add shape inference support for `tensor.concat` op. (#140168)
## description
`tensor.concat` requires operands and the result to match on all
dimensions except the concatenation dimension. If one operand is already
static in those dimensions, the other operands and result type may
safely be refined to that same static shape. This PR adds
canonicalization patterns to refine `tensor.concat` types and propagate
static shapes to other canonicalization patterns through casts.
## example
```mlir
%2 = tensor.concat dim(0) %0, %1: (tensor<?x12xi32>, tensor<?x?xi32>) ->tensor<?x12xi32>
```
becomes:
```mlir
%cast = tensor.cast %1 : tensor<?x?xi32> to tensor<?x12xi32>
%2 = tensor.concat dim(0) %0, %cast : (tensor<?x12xi32>,
tensor<?x12xi32>) -> tensor<?x12xi32>
```
---------
Co-authored-by: Ian Wood <ianwood2024 at u.northwestern.edu>
Commit: dd4b69f9a837048b19346eff2e9f931a51cc91c9
https://github.com/llvm/llvm-project/commit/dd4b69f9a837048b19346eff2e9f931a51cc91c9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/lib/Basic/Diagnostic.cpp
Log Message:
-----------
[Basic] Use llvm::erase_if (NFC) (#140309)
Commit: 1fa8394e78cc0eb73a766bcae1ad76af7e3b84da
https://github.com/llvm/llvm-project/commit/1fa8394e78cc0eb73a766bcae1ad76af7e3b84da
Author: Leonard Chan <leonardchan at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
R llvm/test/Transforms/LowerTypeTests/cfi-coff-comdat-rename.ll
Log Message:
-----------
Revert "[llvm][CFI] Do not canonicalize COFF functions in a comdat (#139962)"
This reverts commit 33684ac9be4892579f63a8e2b67080419426cf98.
Reverting since this is breaking a bunch of builders. See the llvm-ci
messages on https://github.com/llvm/llvm-project/pull/139962.
Commit: 286ab11dc65de8175e2bce69fd7e36acd3be7ce0
https://github.com/llvm/llvm-project/commit/286ab11dc65de8175e2bce69fd7e36acd3be7ce0
Author: Leonard Chan <leonardchan at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
A llvm/test/Transforms/LowerTypeTests/cfi-coff-comdat-rename.ll
Log Message:
-----------
Reapply "[llvm][CFI] Do not canonicalize COFF functions in a comdat (#139962)"
This reapplies 33684ac9be4892579f63a8e2b67080419426cf98 with appropriate
requires on tests.
COFF requires that a function exists with the same name as a comdat. Not
having this key function results in `LLVM ERROR: Associative COMDAT
symbol '...' does not exist.` CFI by default will attempt to
canonicalize a function by appending `.cfi` to its name which allows
external references to refer to the new canonical alias, but it does not
change the comdat name. We can change the comdat name since symbol and
comdat resolution occurs before LTO, so we already know which symbols
are prevailing.
Commit: 437195efbfa32af9ab00cdab4ded5d3756a4cf8e
https://github.com/llvm/llvm-project/commit/437195efbfa32af9ab00cdab4ded5d3756a4cf8e
Author: Chinmay Deshpande <chdeshpa at amd.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/32-bit-local-address-space.ll
M llvm/test/CodeGen/AMDGPU/dagcombine-select.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.update.dpp.ll
M llvm/test/CodeGen/AMDGPU/llvm.fma.f16.ll
M llvm/test/CodeGen/AMDGPU/load-global-f32.ll
M llvm/test/CodeGen/AMDGPU/shift-and-i64-ubfe.ll
M llvm/test/CodeGen/AMDGPU/trunc.ll
Log Message:
-----------
[NFC][AMDGPU] Update tests to use autogened CHECKs (#140311)
Commit: 6a0e626af58bdf8ae8c07cfe8aec94f4565734a3
https://github.com/llvm/llvm-project/commit/6a0e626af58bdf8ae8c07cfe8aec94f4565734a3
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang-tools-extra/clang-doc/HTMLMustacheGenerator.cpp
M clang-tools-extra/unittests/clang-doc/CMakeLists.txt
M clang-tools-extra/unittests/clang-doc/HTMLMustacheGeneratorTest.cpp
Log Message:
-----------
[clang-doc] Add HTMLMustacheGenerator methods (#138061)
Split from #133161. This patch fills in the implementation for a number
of the MustacheHTMLGenerator methods. Many of these APIs are just
stubbed out, and will have their implementation filled in by later
patches.
Co-authored-by: Peter Chou <peter.chou at mail.utoronto.ca>
Commit: 5c154277efa32cad37be7a09003bc0db61de3198
https://github.com/llvm/llvm-project/commit/5c154277efa32cad37be7a09003bc0db61de3198
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/clang-tools-extra/unittests/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dep after 6a0e626af58bdf8ae8c07cfe8aec94f4565734a3
Commit: f7ef8dcbad9d5ac6cf2a8917d5ce03564fdfd0d8
https://github.com/llvm/llvm-project/commit/f7ef8dcbad9d5ac6cf2a8917d5ce03564fdfd0d8
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
Log Message:
-----------
[CIR] Fix problem with phantom function arguments (#140322)
There was a problem introduced today where sometimes the CIR for
functions with no arguments would be generated with phantom arguments.
This was causing intermittent test failures.
The problem appears to have been that we were using two different
Profile implementations to generate the FoldingSetNodeID for
CIRGenFunctionInfo so occaissionally when we tried to look for a
pre-existing entry for a function with no arguments it would incorrectly
match a CIRGenFunctionInfo entry that had arguments.
To prevent this from happening again, I rewrote one of the two Profile
functions to call the other.
Commit: 39315663a40a261772df94218fd33e205e888e54
https://github.com/llvm/llvm-project/commit/39315663a40a261772df94218fd33e205e888e54
Author: Malavika Samak <malavika.samak at gmail.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-array.cpp
Log Message:
-----------
[-Wunsafe-buffer-usage] Fix false warnings when const sized array is safely accessed (array [idx %const]) (#140113)
The -Wunsafe-buffer-usage analysis currently warns when a const sized
array is safely accessed, with an index that is bound by the remainder
operator. The false alarm is now suppressed.
Example:
int circular_buffer(int array[10], uint idx) {
return array[idx %10]; // Safe operation
}
rdar://148443453
---------
Co-authored-by: MalavikaSamak <malavika2 at apple.com>
Commit: 9178a1720667807aa46dcfc3069bad7e8fef5f2e
https://github.com/llvm/llvm-project/commit/9178a1720667807aa46dcfc3069bad7e8fef5f2e
Author: LauraElanorJones <164247463+LauraElanorJones at users.noreply.github.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M lldb/docs/use/python.rst
Log Message:
-----------
Update python.rst (#140333)
Fix code block formatting in section "The Decision Point Breakpoint
Commands"
Commit: 0e0b501bf53677105b539fa4f84cbfb76c46f74d
https://github.com/llvm/llvm-project/commit/0e0b501bf53677105b539fa4f84cbfb76c46f74d
Author: John Harrison <harjohn at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/test/API/tools/lldb-dap/breakpoint-events/TestDAP_breakpointEvents.py
M lldb/test/API/tools/lldb-dap/cancel/TestDAP_cancel.py
M lldb/test/API/tools/lldb-dap/completions/TestDAP_completions.py
M lldb/test/API/tools/lldb-dap/console/TestDAP_console.py
M lldb/test/API/tools/lldb-dap/console/TestDAP_redirection_to_console.py
M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
M lldb/test/API/tools/lldb-dap/evaluate/TestDAP_evaluate.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/test/API/tools/lldb-dap/module-event/TestDAP_module_event.py
M lldb/test/API/tools/lldb-dap/module/TestDAP_module.py
M lldb/test/API/tools/lldb-dap/repl-mode/TestDAP_repl_mode_detection.py
M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart.py
M lldb/test/API/tools/lldb-dap/send-event/TestDAP_sendEvent.py
M lldb/test/API/tools/lldb-dap/stackTrace/TestDAP_stackTrace.py
M lldb/test/API/tools/lldb-dap/stackTraceDisassemblyDisplay/TestDAP_stackTraceDisassemblyDisplay.py
M lldb/test/API/tools/lldb-dap/startDebugging/TestDAP_startDebugging.py
M lldb/test/API/tools/lldb-dap/stop-hooks/TestDAP_stop_hooks.py
M lldb/test/API/tools/lldb-dap/threads/TestDAP_threads.py
M lldb/test/API/tools/lldb-dap/variables/children/TestDAP_variables_children.py
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/ConfigurationDoneRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/InitializeRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/LaunchRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.h
M lldb/tools/lldb-dap/Protocol/ProtocolBase.h
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
Log Message:
-----------
[lldb-dap] Take two at refactoring the startup sequence. (#140331)
This is more straight forward refactor of the startup sequence that
reverts parts of ba29e60f9a2222bd5e883579bb78db13fc5a7588. Unlike my
previous attempt, I ended up removing the pending request queue and not
including an `AsyncReqeustHandler` because I don't think we actually
need that at the moment.
The key is that during the startup flow there are 2 parallel operations
happening in the DAP that have different triggers.
* The `initialize` request is sent and once the response is received the
`launch` or `attach` is sent.
* When the `initialized` event is recieved the `setBreakpionts` and
other config requests are made followed by the `configurationDone`
event.
I moved the `initialized` event back to happen in the `PostRun` of the
`launch` or `attach` request handlers. This ensures that we have a valid
target by the time the configuration calls are made. I added also added
a few extra validations that to the `configurationeDone` handler to
ensure we're in an expected state.
I've also fixed up the tests to match the new flow. With the other
additional test fixes in 087a5d2ec7897cd99d3787820711fec76a8e1792 I
think we've narrowed down the main source of test instability that
motivated the startup sequence change.
Commit: bda8c502bffa4f526bc3a7d22179ebfe398351c7
https://github.com/llvm/llvm-project/commit/bda8c502bffa4f526bc3a7d22179ebfe398351c7
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/lib/Driver/ToolChains/MSVC.cpp
Log Message:
-----------
[Driver] Use llvm::is_contained (NFC) (#140310)
Commit: dfac0445d0813abe2260ffdc9eeb23671cefd812
https://github.com/llvm/llvm-project/commit/dfac0445d0813abe2260ffdc9eeb23671cefd812
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M lldb/tools/lldb-dap/EventHelper.cpp
M lldb/tools/lldb-dap/Handler/EvaluateRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/ExceptionInfoRequestHandler.cpp
M lldb/tools/lldb-dap/JSONUtils.cpp
Log Message:
-----------
[lldb-dap] Avoid creating temporary instances of std::string (NFC) (#140325)
EmplaceSafeString accepts StringRef for the last parameter, str, and
then internally creates a copy of str via StringRef::str or
llvm::json::fixUTF8, so caller do not need to create their own
temporary instances of std::string.
Commit: 6963309af12f8d1a688fa2c42019d83e78a0024c
https://github.com/llvm/llvm-project/commit/6963309af12f8d1a688fa2c42019d83e78a0024c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M clang/lib/Frontend/CompilerInvocation.cpp
Log Message:
-----------
[Frontend] Avoid creating a temporary instance of std::string (NFC) (#140326)
Since getLastArgValue returns StringRef, and the constructor of
SmallString accepts StringRef, we do not need to go through a
temporary instance of std::string.
Commit: 6d9ce6767d259a5231ae312a19459f8fea3bd0ca
https://github.com/llvm/llvm-project/commit/6d9ce6767d259a5231ae312a19459f8fea3bd0ca
Author: Jeremy Kun <jkun at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorDialect.cpp
M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/test/Dialect/Tensor/bufferize.mlir
Log Message:
-----------
[mlir][bufferization] implement BufferizableOpInterface for concat op (#140171)
Lowers `tensor.concat` to an alloc with a series of `memref.copy` ops to
copy the operands to the alloc.
Example:
```mlir
func.func @tensor.concat(%f: tensor<8xf32>) -> tensor<16xf32> {
%t = tensor.concat dim(0) %f, %f : (tensor<8xf32>, tensor<8xf32>) -> tensor<16xf32>
return %t : tensor<16xf32>
}
```
Produces
```mlir
module {
func.func @tensor.concat(%arg0: tensor<8xf32>) -> tensor<16xf32> {
// initialization
%0 = bufferization.to_memref %arg0 : tensor<8xf32> to memref<8xf32>
%alloc = memref.alloc() {alignment = 64 : i64} : memref<8xf32>
memref.copy %0, %alloc : memref<8xf32> to memref<8xf32>
%alloc_0 = memref.alloc() {alignment = 64 : i64} : memref<8xf32>
memref.copy %0, %alloc_0 : memref<8xf32> to memref<8xf32>
%alloc_1 = memref.alloc() {alignment = 64 : i64} : memref<16xf32>
// one copy for each operand
%subview = memref.subview %alloc_1[0] [8] [1] : memref<16xf32> to memref<8xf32, strided<[1]>>
memref.copy %alloc, %subview : memref<8xf32> to memref<8xf32, strided<[1]>>
%subview_2 = memref.subview %alloc_1[8] [8] [1] : memref<16xf32> to memref<8xf32, strided<[1], offset: 8>>
memref.copy %alloc_0, %subview_2 : memref<8xf32> to memref<8xf32, strided<[1], offset: 8>>
%1 = bufferization.to_tensor %alloc_1 : memref<16xf32> to tensor<16xf32>
return %1 : tensor<16xf32>
}
}
```
This is my first time implementing BufferizableOpInterface, so I'm
looking for some advice on how I can:
1. Clean up my implementation.
2. Avoid duplicate `memref.copy` ops in the `// initialization` section
above when handling duplicate `tensor.concat` operands.
---------
Co-authored-by: Jeremy Kun <j2kun at users.noreply.github.com>
Commit: 7b8bc1b3d1ae99894b4c7741e08a0b9bfb2ffb80
https://github.com/llvm/llvm-project/commit/7b8bc1b3d1ae99894b4c7741e08a0b9bfb2ffb80
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorDialect.cpp
M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/test/Dialect/Tensor/bufferize.mlir
Log Message:
-----------
Revert "[mlir][bufferization] implement BufferizableOpInterface for concat op (#140171)"
This reverts commit 6d9ce6767d259a5231ae312a19459f8fea3bd0ca.
Multiple builtbot failures have been reported:
https://github.com/llvm/llvm-project/pull/140171
Commit: 952306226b5d9279ad3049baa8f10082e12a635a
https://github.com/llvm/llvm-project/commit/952306226b5d9279ad3049baa8f10082e12a635a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M bolt/lib/Passes/PettisAndHansen.cpp
Log Message:
-----------
[BOLT] Use llvm::max_element (NFC) (#140342)
Commit: e66cecd8d56f4bb62e01e47830327f28dcd7ac66
https://github.com/llvm/llvm-project/commit/e66cecd8d56f4bb62e01e47830327f28dcd7ac66
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M clang/lib/AST/Expr.cpp
Log Message:
-----------
[clang][NFC] Clean up Expr::isTemporaryObject() (#140229)
Commit: 578741b5e85110565b9b2de84d93b2c993ac0b79
https://github.com/llvm/llvm-project/commit/578741b5e85110565b9b2de84d93b2c993ac0b79
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
M llvm/test/CodeGen/AMDGPU/annotate-existing-abi-attributes.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
M llvm/test/CodeGen/AMDGPU/attr-amdgpu-max-num-workgroups-propagate.ll
M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior.ll
M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit.ll
M llvm/test/CodeGen/AMDGPU/attributor-loop-issue-58639.ll
M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
M llvm/test/CodeGen/AMDGPU/indirect-call-set-from-other-function.ll
M llvm/test/CodeGen/AMDGPU/inline-attr.ll
M llvm/test/CodeGen/AMDGPU/issue120256-annotate-constexpr-addrspacecast.ll
M llvm/test/CodeGen/AMDGPU/pal-simple-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/propagate-flat-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
M llvm/test/CodeGen/AMDGPU/recursive_global_initializer.ll
M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
Log Message:
-----------
[AMDGPU][Attributor] Rework update of `AAAMDWavesPerEU` (#123995)
Currently, we use `AAAMDWavesPerEU` to iteratively update values based
on attributes from the associated function, potentially propagating
user-annotated values, along with `AAAMDFlatWorkGroupSize`. Similarly,
we have `AAAMDFlatWorkGroupSize`. However, since the value calculated
through the flat workgroup size always dominates the user annotation
(i.e., the attribute), running `AAAMDWavesPerEU` iteratively is
unnecessary if no user-annotated value exists.
This PR completely rewrites how the `amdgpu-waves-per-eu` attribute is
handled in `AMDGPUAttributor`. The key changes are as follows:
- `AAAMDFlatWorkGroupSize` remains unchanged.
- `AAAMDWavesPerEU` now only propagates user-annotated values.
- A new function is added to check and update `amdgpu-waves-per-eu`
based on the following rules:
- No waves per eu, no flat workgroup size: Assume a flat workgroup size
of `1,1024` and compute waves per eu based on this.
- No waves per eu, flat workgroup size exists: Use the provided flat
workgroup size to compute waves-per-eu.
- Waves per eu exists, no flat workgroup size: This is a tricky case. In
this PR, we assume a flat workgroup size of `1,1024`, but this can be
adjusted if a different approach is preferred. Alternatively, we could
directly use the user-annotated value.
- Both waves per eu and flat workgroup size exist: If there’s a
conflict, the value derived from the flat workgroup size takes
precedence over waves per eu.
This PR also updates the logic for merging two waves per eu pairs. The
current implementation, which uses `clampStateAndIndicateChange` to
compute a union, might not be ideal. If we think from ensure proper
resource allocation perspective, for instance, if one pair specifies a
minimum of 2 waves per eu, and another specifies a minimum of 4, we
should guarantee that 4 waves per eu can be supported, as failing to do
so could result in excessive resource allocation per wave. A similar
principle applies to the upper bound. Thus, the PR uses the following
approach for merging two pairs, `lo_a,up_a` and `lo_b,up_b`: `max(lo_a,
lo_b), max(up_a, up_b)`. This ensures that resource allocation adheres
to the stricter constraints from both inputs.
Fix #123092.
Commit: 4ddab1252fe6a90111a034cef184549882aaba2b
https://github.com/llvm/llvm-project/commit/4ddab1252fe6a90111a034cef184549882aaba2b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/test/CodeGen/AMDGPU/packed-fp32.ll
Log Message:
-----------
AMDGPU: Move reg_sequence splat handling (#140313)
This code clunkily tried to find a splat reg_sequence by
looking at every use of the reg_sequence, and then looking
back at the reg_sequence to see if it's a splat. Extract this
into a separate helper function to help clean this up. This now
parses whether the reg_sequence forms a splat once, and defers the
legal inline immediate check to the use check (which is really use
context dependent)
The one regression is in globalisel, which has an extra
copy that should have been separately folded out. It was getting
dealt with by the handling of foldable copies in tryToFoldACImm.
This is preparation for #139908 and #139317
Commit: aaaae99663dbb220c6c27fa9cacf93fcb8f20e7c
https://github.com/llvm/llvm-project/commit/aaaae99663dbb220c6c27fa9cacf93fcb8f20e7c
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
Log Message:
-----------
[SelectionDAG] Use getInsertSubvector/VectorElt and getExtractSubvector/VectorElt in LegalizeVectorTypes. NFC
Commit: 061a7699f343ed2a8782b48dc585f1ab7cc6727e
https://github.com/llvm/llvm-project/commit/061a7699f343ed2a8782b48dc585f1ab7cc6727e
Author: Iris Shi <0.0 at owo.li>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp
M llvm/lib/DWARFLinker/Parallel/ArrayList.h
M llvm/lib/ExecutionEngine/Orc/Core.cpp
M llvm/lib/ExecutionEngine/Orc/Debugging/DebugInfoSupport.cpp
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPreloadKernelArguments.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
M llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/TargetParser/AArch64TargetParser.cpp
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/lib/Transforms/Utils/CodeLayout.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/utils/TableGen/ExegesisEmitter.cpp
Log Message:
-----------
[llvm][NFC] Use `llvm::sort()` (#140335)
Commit: 0153b49f32c251ac34a478815f81c92975529b5d
https://github.com/llvm/llvm-project/commit/0153b49f32c251ac34a478815f81c92975529b5d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
Log Message:
-----------
[Scalar] Avoid creating temporary instances of std::string (NFC) (#140327)
ExprLinearizer::write takes StringRef and immediately sends the
content to the stream without hanging onto the pointer, so we do not
need to create temporary instances of std::string.
Commit: e1cee35546c91a4ec1df87827f4ef996fa21a35f
https://github.com/llvm/llvm-project/commit/e1cee35546c91a4ec1df87827f4ef996fa21a35f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
Log Message:
-----------
[CodeGen] Use llvm::lower_bound (NFC) (#140341)
Commit: 2c51f5e2d5bc7bdfe38eeb12ea0b343ad9e31650
https://github.com/llvm/llvm-project/commit/2c51f5e2d5bc7bdfe38eeb12ea0b343ad9e31650
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M mlir/lib/Dialect/Async/Transforms/AsyncToAsyncRuntime.cpp
Log Message:
-----------
[mlir] Use DenseMap::contains (NFC) (#140351)
Commit: 39722154d8ae901e5b69176cc3cd8d63211e80f4
https://github.com/llvm/llvm-project/commit/39722154d8ae901e5b69176cc3cd8d63211e80f4
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GCMetadata.h
Log Message:
-----------
[CodeGen] Use MapVector::contains (NFC) (#140352)
Commit: 07e2300a8c9c8a70384ddfe310cf3495fab1821c
https://github.com/llvm/llvm-project/commit/07e2300a8c9c8a70384ddfe310cf3495fab1821c
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-16 (Fri, 16 May 2025)
Changed paths:
M lld/test/ELF/aarch64-reloc-implicit-addend.test
M lld/test/ELF/aarch64-thunk-align.s
M lld/test/ELF/arm-cmse-diagnostics.s
M lld/test/ELF/arm-cmse-implib.s
M lld/test/ELF/arm-cmse-keep-sections.s
M lld/test/ELF/arm-cmse-noveneers.s
M lld/test/ELF/arm-cmse-secure.s
M lld/test/ELF/arm-cmse-veneers.s
M lld/test/ELF/avr-reloc-error.s
M lld/test/ELF/basic-avr.s
M lld/test/ELF/compress-debug-sections-reloc.s
M lld/test/ELF/eh-frame-value-format7.s
M lld/test/ELF/eh-frame-value-format8.s
M lld/test/ELF/gdb-index-dwarf5-type-unit.s
M lld/test/ELF/gdb-index-icf.s
M lld/test/ELF/i386-pc16.test
M lld/test/ELF/i386-pc8.s
M lld/test/ELF/i386-reloc-16-large-addend.s
M lld/test/ELF/i386-reloc-8-large-addend.s
M lld/test/ELF/i386-reloc-large-addend.s
M lld/test/ELF/i386-reloc-range.s
M lld/test/ELF/i386-reloc8-reloc16-addend.s
M lld/test/ELF/just-symbols-cref.s
M lld/test/ELF/just-symbols.s
M lld/test/ELF/linkerscript/avr5.test
M lld/test/ELF/linkerscript/memory-no-sections.test
M lld/test/ELF/loongarch-pc-aligned.s
M lld/test/ELF/msp430.s
M lld/test/ELF/nmagic.s
M lld/test/ELF/oformat-binary-ttext.s
M lld/test/ELF/sectionstart-noallochdr.s
M lld/test/ELF/systemz-reloc-disp12.s
M lld/test/ELF/systemz-reloc-disp20.s
M lld/test/ELF/systemz-reloc-pc16.s
M lld/test/ELF/systemz-reloc-pc32.s
M lld/test/ELF/x86-64-reloc-32.s
M lld/test/ELF/x86-64-reloc-pc32.s
Log Message:
-----------
[ELF,test] Specify image base to make -Ttext/--section-start tests less sensitive
Many tests specify -Ttext, -Tdata, or --section-start without SECTIONS
commands. When the specified address is lower than the image base,
* In the default --ro-segment case, there will be a read-only PT_LOAD segment covering ELF header/program headers, which may cover no section (as many tests omit .rodata). This appears unusual and has non-ascending p_vaddr.
* In the --no-rosegment case, an `error: output file too large` occurs.
We will add a diagnostic (#140187) and possibly change layout. Add
--image-base to make these tests less sensitive.
Commit: d9a1f8a3a8ffe26949101501f4d07bc316fb4bf9
https://github.com/llvm/llvm-project/commit/d9a1f8a3a8ffe26949101501f4d07bc316fb4bf9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
Log Message:
-----------
[AMDGPU] Fix a warning
This patch fixes:
llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp:1139:17: error: unused
variable 'Func' [-Werror,-Wunused-variable]
Commit: 21c878e72dddaa1495cb71ea636f69ddcab5e0f4
https://github.com/llvm/llvm-project/commit/21c878e72dddaa1495cb71ea636f69ddcab5e0f4
Author: David Green <david.green at arm.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/GlobalISel/artifact-combine-unmerge.mir
M llvm/test/CodeGen/AArch64/GlobalISel/artifact-find-value.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-canonicalize-icmp.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-copy.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-fabs.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-fconstant.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-flog2.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-fneg.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-fptrunc.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-fsqrt.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-icmp-to-lhs-known-bits.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-inttoptr-ptrtoint.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-mul-to-shl.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-ptradd-int2ptr.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-ptrtoint.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-sext-trunc-sextload.mir
M llvm/test/CodeGen/AArch64/GlobalISel/constant-mir-debugify.mir
M llvm/test/CodeGen/AArch64/GlobalISel/contract-store.mir
M llvm/test/CodeGen/AArch64/GlobalISel/fold-brcond-fcmp.mir
M llvm/test/CodeGen/AArch64/GlobalISel/fold-fp-select.mir
M llvm/test/CodeGen/AArch64/GlobalISel/fold-global-offsets-target-features.mir
M llvm/test/CodeGen/AArch64/GlobalISel/fold-select.mir
M llvm/test/CodeGen/AArch64/GlobalISel/form-bitfield-extract-from-shr.mir
M llvm/test/CodeGen/AArch64/GlobalISel/fp16-copy-gpr.mir
M llvm/test/CodeGen/AArch64/GlobalISel/inline-memcpy-forced.mir
M llvm/test/CodeGen/AArch64/GlobalISel/inline-memcpy.mir
M llvm/test/CodeGen/AArch64/GlobalISel/inline-small-memcpy.mir
M llvm/test/CodeGen/AArch64/GlobalISel/labels-are-not-dead.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-atomicrmw.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-bzero.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-cmpxchg.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-combines.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-cttz-zero-undef.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-divrem.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-extload.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-fcopysign.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-fexp2.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-fmaximum.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-fminimum.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-fp-arith.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-fp128-fconstant.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-fp16-fconstant.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-fpext.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-fptoi.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-global-pic.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-global.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-ignore-hint.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-ignore-non-generic.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-intrinsic-get-dynamic-area-offset.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-inttoptr.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-llround.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-load-store-fewerElts.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-load-store-vector-of-ptr.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-load-trunc.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-lrint.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-lround.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-memcpy-with-debug-info.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-or.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-pow.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-reduce-fadd.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-reduce-or.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-sbfx.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-sext-copy.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-sext-zext-128.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-sextload.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-ubfx.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-undef.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-vaarg.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-vacopy.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-vector-shift.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-xor.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-zextload.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-combiner.mir
M llvm/test/CodeGen/AArch64/GlobalISel/lifetime-marker-no-dce.mir
M llvm/test/CodeGen/AArch64/GlobalISel/load-wro-addressing-modes.mir
M llvm/test/CodeGen/AArch64/GlobalISel/localizer-propagate-debug-loc.mir
M llvm/test/CodeGen/AArch64/GlobalISel/localizer.mir
M llvm/test/CodeGen/AArch64/GlobalISel/no-regclass.mir
M llvm/test/CodeGen/AArch64/GlobalISel/non-pow-2-extload-combine.mir
M llvm/test/CodeGen/AArch64/GlobalISel/observer-change-crash.mir
M llvm/test/CodeGen/AArch64/GlobalISel/opt-fold-and-tbz-tbnz.mir
M llvm/test/CodeGen/AArch64/GlobalISel/opt-fold-compare.mir
M llvm/test/CodeGen/AArch64/GlobalISel/opt-fold-trunc-tbz-tbnz.mir
M llvm/test/CodeGen/AArch64/GlobalISel/opt-overlapping-and.mir
M llvm/test/CodeGen/AArch64/GlobalISel/opt-shifted-reg-compare.mir
M llvm/test/CodeGen/AArch64/GlobalISel/phi-mir-debugify.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-combine-ptr-add-chain.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-combiner-and-trivial-mask.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-combiner-copy-prop.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-combiner-identity.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-combiner-merge.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-combiner-redundant-sextinreg.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-adjust-icmp-imm.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-ext.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-rev.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-shuf-to-ins.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-shuffle-duplane.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-shuffle-splat.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-swap-compare-operands.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-trn.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-truncstore.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-vashr-vlshr.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-zip.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizercombiner-extractvec-faddp.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizercombiner-hoist-same-hands.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizercombiner-mulpow2.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizercombiner-rotate.mir
M llvm/test/CodeGen/AArch64/GlobalISel/postselectopt-constrain-new-regop.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizer-combiner-icmp-to-true-false-known-bits.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizer-combiner-load-or-pattern-align.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizer-combiner-load-or-pattern.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizer-combiner-narrow-binop-feeding-add.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-extending-loads-s1.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-funnel-shifts-to-rotates.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-icmp-redundant-trunc.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-invert-cmp.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-not-really-equiv-insts.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-select.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-sextload-from-sextinreg.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-simplify-add.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-trivial-arith.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-undef.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-xor-of-and-with-same-reg.mir
M llvm/test/CodeGen/AArch64/GlobalISel/preselect-process-phis.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-ceil.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-extract-vector-elt.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-extract.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-fcmp.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-fma.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-fp-use-def.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-intrinsic-round.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-intrinsic-trunc.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-intrinsic.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-llround.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-lround.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-maxnum.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-minnum.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-nearbyint.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-shift-imm-64.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbank-trunc-s128.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbankselect-build-vector.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbankselect-default.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbankselect-reductions.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbankselect-unmerge-vec.mir
M llvm/test/CodeGen/AArch64/GlobalISel/retry-artifact-combine.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-abs.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-add-low.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-atomicrmw.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-bitcast.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-bitreverse.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-brcond-of-binop.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-build-vector.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-cmpxchg.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-concat-vectors.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-constant.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-ctlz.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-ctpop.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-cttz.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-dbg-value.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-ext.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-extload.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-extract-vector-elt-with-extend.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-faddp.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-fcmp.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-fma.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-fmaximum.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-fminimum.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-fmul-indexed.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-fp-casts.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-fp16-fconstant.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-frint-nofp16.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-frint.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-gv-cmodel-tiny.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-imm.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-implicit-def.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-insert-extract.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-int-ext.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-intrinsic-aarch64-sdiv.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-intrinsic-crypto-aesmc.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-intrinsic-round.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-intrinsic-trunc.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-ld2.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-ld4.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-ldaxr-intrin.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-ldxr-intrin.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-load-store-vector-of-ptr.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-load.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-logical-imm.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-logical-shifted-reg.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-mul.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-muladd.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-nearbyint.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-neon-vcvtfxu2fp.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-neon-vector-fcmp.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-pr32733.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-reduce-add.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-returnaddress-liveins.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-rev.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-rotate.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-saddo.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-sbfx.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-scalar-merge.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-sextload.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-shufflevec-undef-mask-elt.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-ssubo.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-st2.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-stlxr-intrin.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-store-truncating-float.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-store.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-stx.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-trap.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-trn.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-trunc.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-uaddo.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-usubo.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-uzp.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-with-no-legality-check.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-xor.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-zext-as-copy.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-zextload.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-zip.mir
M llvm/test/CodeGen/AArch64/GlobalISel/speculative-hardening-brcond.mir
M llvm/test/CodeGen/AArch64/GlobalISel/store-merging-debug.mir
M llvm/test/CodeGen/AArch64/GlobalISel/store-wro-addressing-modes.mir
M llvm/test/CodeGen/AArch64/GlobalISel/subreg-copy.mir
M llvm/test/CodeGen/AArch64/GlobalISel/xro-addressing-mode-constant.mir
Log Message:
-----------
[AArch64][GlobalISel] Regenerate AArch64/GlobalISel/*.mir test checks. NFC
This served as a test of update_mir_test_checks from #140296, although the test
changes are mostly because the tests have not ben regenerated in a long time.
We managed to stop it from removing extra comments, only the empty lines are
now removed.
Commit: 8d0ebd823c6d91527e00a92bbe7ca148de0241f5
https://github.com/llvm/llvm-project/commit/8d0ebd823c6d91527e00a92bbe7ca148de0241f5
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/vararg.ll
Log Message:
-----------
[InstCombine] Special handle `va_copy(dst, src) + va_end(src)` (#140250)
Closes https://github.com/llvm/llvm-project/issues/140215.
Commit: d84b97ebb3bcdae2b815d1ecfaaee7b5ec8b63f9
https://github.com/llvm/llvm-project/commit/d84b97ebb3bcdae2b815d1ecfaaee7b5ec8b63f9
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
A clang-tools-extra/clang-tidy/bugprone/MisleadingSetterOfReferenceCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/MisleadingSetterOfReferenceCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/misleading-setter-of-reference.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/test/clang-tidy/checkers/bugprone/misleading-setter-of-reference.cpp
Log Message:
-----------
[clang-tidy] Add check bugprone-misleading-setter-of-reference (#132242)
Commit: 676e660e2dafea6d0f720d2b712dd39fac10e7de
https://github.com/llvm/llvm-project/commit/676e660e2dafea6d0f720d2b712dd39fac10e7de
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
Log Message:
-----------
[gn build] Port d84b97ebb3bc
Commit: 3fcfce4c5e5fd1c3072e8db1d692c93459e8cd74
https://github.com/llvm/llvm-project/commit/3fcfce4c5e5fd1c3072e8db1d692c93459e8cd74
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Transforms/Utils/LoopPeel.h
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Utils/LoopPeel.cpp
M llvm/test/Transforms/LoopUnroll/peel-last-iteration.ll
Log Message:
-----------
Reapply "[LoopPeel] Implement initial peeling off the last loop iteration. (#139551)"
This reverts the revert commit bf92b127d2637948f53d11a187e865aa10e2e74c.
This adds missing initialization of PeelLast in gatherPeelingPreferences.
Original message:
Generalize countToEliminateCompares to also consider peeling off the
last iteration if it eliminates a compare.
At the moment, codegen for peeling off the last iteration is quite
restrictive and callers have to make sure that the exit condition can be
adjusted when peeling and that the loop executes at least 2 iterations.
Both will be relaxed in follow-ups.
PR: https://github.com/llvm/llvm-project/pull/139551
Commit: 9e22f9611a5b61f412dbf1b72a4fe2d2089eeec2
https://github.com/llvm/llvm-project/commit/9e22f9611a5b61f412dbf1b72a4fe2d2089eeec2
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/RISCV/rv32zbb.ll
M llvm/test/CodeGen/RISCV/rv64zbb.ll
Log Message:
-----------
[DAGCombiner] Fix a "subtraction if above a constant threshold" miscompile (#140042)
This fixes #135194 incorrectly reusing the existing `add nuw/nsw`
while the transformed code relies on an unsigned wrap.
Commit: 809d3422237ac5a123e03f14cd8559f8b4eb690b
https://github.com/llvm/llvm-project/commit/809d3422237ac5a123e03f14cd8559f8b4eb690b
Author: Sylvestre Ledru <sylvestre at debian.org>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/docs/Proposals/VariableNames.rst
Log Message:
-----------
fix the link to the Mozilla coding style ref
Commit: c5ec66880bd3bcab3a93cd1ccf3d6947501b3a9e
https://github.com/llvm/llvm-project/commit/c5ec66880bd3bcab3a93cd1ccf3d6947501b3a9e
Author: David Green <david.green at arm.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-buildvector.mir
Log Message:
-----------
[AArch64][GlobalISel] Add a known-bits build vector test. NFC
Commit: 722385e87bb8e6e0fe79975d679285815629cc7f
https://github.com/llvm/llvm-project/commit/722385e87bb8e6e0fe79975d679285815629cc7f
Author: David Green <david.green at arm.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-shuffle.mir
M llvm/test/CodeGen/AArch64/aarch64-dup-ext.ll
M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
M llvm/test/CodeGen/AArch64/aarch64-smull.ll
Log Message:
-----------
[GlobalISel] Add G_SHUFFLE_VECTOR computeKnownBits (#139501)
The code is taken from SelectionDAG::computeKnownBits.
Commit: bf1d4a0710a6e1d2c99e579bcf435b92ab5d0506
https://github.com/llvm/llvm-project/commit/bf1d4a0710a6e1d2c99e579bcf435b92ab5d0506
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/test/Transforms/LICM/hoist-binop.ll
Log Message:
-----------
[LICM] Preserve Disjoint flag on OR when hoisting. (#140266)
Update hoistBOAssociation to preserve Disjoint flags on the newly
created instructions if both ORs are disjoint.
Fixes https://github.com/llvm/llvm-project/issues/139625.
PR: https://github.com/llvm/llvm-project/pull/140266
Commit: 252ba8e3fb361772003c38566c99233c07adc4bd
https://github.com/llvm/llvm-project/commit/252ba8e3fb361772003c38566c99233c07adc4bd
Author: Matthias Braun <matze at braunis.de>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/CodeGen/MIRPrinter.cpp
Log Message:
-----------
NFC: Refactor MIRPrinter into state struct and functions (#140317)
Moves `MIRPRinter` and `MIPrinter` fields into a new `MFPrintState`
struct. Turns methods into independent functions.
- This slightly simplifies the code.
- In the future this will allow to pass the state around to other printing functions
without the need to expose classes in the public headers.
Commit: fcef8a471e083e0dbd139302bc20250cfe4c57cd
https://github.com/llvm/llvm-project/commit/fcef8a471e083e0dbd139302bc20250cfe4c57cd
Author: David Green <david.green at arm.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
Log Message:
-----------
[GlobalISel] Put legalizer rule debug behind a verbose option. (#138277)
With the large number of G_ opcodes now present, this debug information
emitted for checking the global isel legalizer rules are valid is quite
verbose and runs even when gisel is not being used. This makes it
especially verbose when running a single pass with -debug.
This patch puts it behind a verbose debug option so that most people
don't need to worry about it.
Commit: 68e4f6090b369c14da8c6ef1f614664b9e0427e1
https://github.com/llvm/llvm-project/commit/68e4f6090b369c14da8c6ef1f614664b9e0427e1
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Utility/FileSpec.cpp
M lldb/utils/TableGen/LLDBOptionDefEmitter.cpp
M lldb/utils/TableGen/LLDBPropertyDefEmitter.cpp
Log Message:
-----------
[lldb] Use llvm::replace (NFC) (#140343)
Commit: 395f8695da4c0e22d562dc7255be19491d5169b5
https://github.com/llvm/llvm-project/commit/395f8695da4c0e22d562dc7255be19491d5169b5
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/BasicPtxBuilderInterface.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Transforms/ViewOpGraph.cpp
Log Message:
-----------
[mlir] Use llvm::replace (NFC) (#140344)
Commit: 17db75eab173c96665cd164443494e41f2dc951e
https://github.com/llvm/llvm-project/commit/17db75eab173c96665cd164443494e41f2dc951e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M mlir/test/lib/Dialect/Affine/TestReifyValueBounds.cpp
Log Message:
-----------
[mlir] Remove an unused "using" decl (NFC) (#140357)
The last use was removed by:
commit f8d314f0ee5e750e1e47b47fb55d14f6d1e991e1
Author: Matthias Springer <me at m-sp.org>
Date: Mon Apr 15 18:14:18 2024 +0200
Commit: e81fab68478754097c3354c0d2749ab009f8f0c8
https://github.com/llvm/llvm-project/commit/e81fab68478754097c3354c0d2749ab009f8f0c8
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
M llvm/lib/Transforms/Vectorize/VPlanVerifier.h
Log Message:
-----------
[VPlan] Verify final VPlan, just before execution. (NFC)
Add additional verifier call just before execution, to make sure the
final VPlan is valid.
Note that this currently requires disabling a small number of checks
when running late.
Commit: 573746ee519643f4015b2fb6cf4bfab53ccee1f1
https://github.com/llvm/llvm-project/commit/573746ee519643f4015b2fb6cf4bfab53ccee1f1
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
Log Message:
-----------
[RISCV] Remove fixup_riscv_pcrel_hi20 from evaluateTargetFixup. NFC
It can be handled by the target-neutral code path in MCAssembler::evaluateFixup.
Commit: 2f05451198e2f222ec66cec4892ada0509519290
https://github.com/llvm/llvm-project/commit/2f05451198e2f222ec66cec4892ada0509519290
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVTargetObjectFile.cpp
Log Message:
-----------
RISCV: Replace most Specifier constants with relocation types
... as they map directly and we don't utilize -Wswitch.
Retained VK_*_LO constants for lowering to LO_I or LO_S.
The Sparc port has eliminated all Specifier constants (commit
003fa7731d81a47c98e9c55f80d509933c9b91f6), and the LoongArch port is
nearly free of them (#138632).
Pull Request: https://github.com/llvm/llvm-project/pull/138644
Commit: f695c8d529eae4b8cf6583bdd02824d24c47b0b0
https://github.com/llvm/llvm-project/commit/f695c8d529eae4b8cf6583bdd02824d24c47b0b0
Author: Justin Bogner <mail at justinbogner.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/test/CodeGenHLSL/builtins/dot4add_i8packed.hlsl
M clang/test/CodeGenHLSL/builtins/dot4add_u8packed.hlsl
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/test/CodeGen/DirectX/dot4add_i8packed.ll
A llvm/test/CodeGen/DirectX/dot4add_i8packed_error.ll
M llvm/test/CodeGen/DirectX/dot4add_u8packed.ll
A llvm/test/CodeGen/DirectX/dot4add_u8packed_error.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/dot4add_i8packed.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/dot4add_u8packed.ll
Log Message:
-----------
[DirectX][SPIRV] Fix the lowering of dot4add (#140315)
There were some issues with these ops:
- The overload wasn't being specified (`dx.op.dot4AddPacked` vs
`dx.op.dot4AddPacked.i32`)
- The versioning wasn't correct (These ops were added in SM 6.4)
- The argument order was off - while the HLSL function has the
accumulator as the last argument, the DXIL op lists it first.
This fixes the DXIL.td definition and adjusts the LLVM DX and SPIRV
intrinsics to match the argument order in DXIL rather than the argument
order in HLSL.
Fixes #139018
Commit: 60fb92179291e848eb7b04913bdc818d081db296
https://github.com/llvm/llvm-project/commit/60fb92179291e848eb7b04913bdc818d081db296
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/reused-scalar-repeated-in-node.ll
M llvm/test/Transforms/SLPVectorizer/X86/buildvectors-parent-phi-nodes.ll
M llvm/test/Transforms/SLPVectorizer/X86/full-matched-bv-with-subvectors.ll
M llvm/test/Transforms/SLPVectorizer/X86/matched-bv-schedulable.ll
M llvm/test/Transforms/SLPVectorizer/X86/matched-nodes-updated.ll
R llvm/test/Transforms/SLPVectorizer/X86/node-outside-used-only.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-vectorized-in-transform.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-node-num-operands.ll
M llvm/test/Transforms/SLPVectorizer/revec.ll
Log Message:
-----------
Revert "[SLP]Change the insertion point for outside-block-used nodes and prevec phi operand gathers"
This reverts commit d79d9b8fbfc7e8411aeaf2f5e1be9d4247594fee to fix
a bug reported in https://github.com/llvm/llvm-project/pull/139917#issuecomment-2888216404
Commit: 9c60431b673c478606e63ff1e47860eb4eb6af09
https://github.com/llvm/llvm-project/commit/9c60431b673c478606e63ff1e47860eb4eb6af09
Author: Jon Chesterfield <jonathanchesterfield at gmail.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/include/llvm/ADT/SmallVector.h
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Vectorize/VPlanSLP.h
Log Message:
-----------
[NFC] Add a specialization of DenseMapInfo for SmallVector (#140380)
Equivalent to the three existing uses I found which were all pointers.
Implementing the general pattern so SmallVector<int> etc will work as
well.
Added to the SmallVector.h header as opposed to DenseMapInfo.h following
the StringRef.h and SmallBitVector.h prior art.
Noticed while writing an unrelated patch which currently wants a map
from small vectors to other things and cleaner to generalise than add
another specialisation to said patch.
Commit: ac16520cfcecfd23b5941ab68a321b5a0ca56b1d
https://github.com/llvm/llvm-project/commit/ac16520cfcecfd23b5941ab68a321b5a0ca56b1d
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/test/MC/ELF/section-unique.s
Log Message:
-----------
MC: Improve ,unique tests
Run llvm-readelf and llvm-objdump, and test .pushsection
Commit: 0642bf9a9830fdab88f9bf15243e965a03c78b3f
https://github.com/llvm/llvm-project/commit/0642bf9a9830fdab88f9bf15243e965a03c78b3f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
Log Message:
-----------
[ICP] Use a block with LLVM_DEBUG (NFC) (#140387)
Using a block inside LLVM_DEBUG allows us to simplify the code with a
single LLVM_DEBUG and remove maybe_unused.
Commit: f9f69dac2a63afd9b317033bfe055a174bdd180f
https://github.com/llvm/llvm-project/commit/f9f69dac2a63afd9b317033bfe055a174bdd180f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/InstallAPI/DylibVerifier.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
Log Message:
-----------
[clang] Remove redundant control flow statements (NFC) (#140359)
Commit: f5576729a4e26d62ba183a9443025f00ebdcc1e9
https://github.com/llvm/llvm-project/commit/f5576729a4e26d62ba183a9443025f00ebdcc1e9
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
A llvm/test/Transforms/Reassociate/or-disjoint.ll
Log Message:
-----------
[Reassociate] Add tests with disjoint OR.
Commit: 2e2a7923a428e78b5387be1e28f63db1bc1171bb
https://github.com/llvm/llvm-project/commit/2e2a7923a428e78b5387be1e28f63db1bc1171bb
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/ProfileData/InstrProfWriter.cpp
Log Message:
-----------
[ProfileData] Use DenseMap::try_emplace (NFC) (#140394)
We can simplify the code with structured binding and try_emplace.
Note that try_emplace default-constructs the value if omitted.
FWIW, structured binding, a C++17 feature, wasn't available in our
codebase at the time the code was written.
Commit: c6ad46434790ebcab6394dbe2381bebcf05c30f7
https://github.com/llvm/llvm-project/commit/c6ad46434790ebcab6394dbe2381bebcf05c30f7
Author: Qinkun Bao <qinkun at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M clang/include/clang/Basic/Diagnostic.h
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/ProfileList.cpp
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[NFC] Run code formatter on Diagnostic.h/cpp ProfileList.cpp SpecialCaseList.cpp
Reviewers: vitalybuka
Reviewed By: vitalybuka
Pull Request: https://github.com/llvm/llvm-project/pull/140316
Commit: 55531e33d3114e63ef7d2079896fb80243061395
https://github.com/llvm/llvm-project/commit/55531e33d3114e63ef7d2079896fb80243061395
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/test/Transforms/LICM/hoist-binop.ll
Log Message:
-----------
[LICM] Add test reassociating ADD nuw nsw.
Commit: 7108deca41f1ef05e399287bb5b37301e484123d
https://github.com/llvm/llvm-project/commit/7108deca41f1ef05e399287bb5b37301e484123d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/MC/MCContext.cpp
Log Message:
-----------
[MC] Use *Map::try_emplace (NFC) (#140397)
try_emplace with is much shorter and simpler if we are
default-constructing the value.
While I'm at it, this patch uses structured bindings to receive the
return value from try_emplace.
Commit: c51417d75b0090e33299475a3ddec648768bd746
https://github.com/llvm/llvm-project/commit/c51417d75b0090e33299475a3ddec648768bd746
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
Log Message:
-----------
[RISCV] Use llvm::any_of (NFC) (#140398)
Commit: d1cd68881ad41bbaa81c49e54d5f1cb2b0fec093
https://github.com/llvm/llvm-project/commit/d1cd68881ad41bbaa81c49e54d5f1cb2b0fec093
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/CodeGen/MachineScheduler.cpp
M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
Log Message:
-----------
[llvm] Use llvm::is_sorted (NFC) (#140399)
Commit: fadaf0c513c8054db04e5ae234a27232568fac28
https://github.com/llvm/llvm-project/commit/fadaf0c513c8054db04e5ae234a27232568fac28
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
Log Message:
-----------
[SandboxVectorizer] Use llvm::upper_bound (NFC) (#140400)
Commit: 9b93c9a28418febb1eb2642cf7dea034e877d158
https://github.com/llvm/llvm-project/commit/9b93c9a28418febb1eb2642cf7dea034e877d158
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/include/llvm/IR/PassManagerImpl.h
Log Message:
-----------
[PassManager] Simplify code with DenseMap::try_emplace (NFC) (#140402)
We can simplify the code with DenseMap::try_emplace and structured
binding. Note that DenseMap::try_emplace default-constructs the value
if omitted.
Commit: c0ca030782f9c572a5df5f3506652e81aeecad0d
https://github.com/llvm/llvm-project/commit/c0ca030782f9c572a5df5f3506652e81aeecad0d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M clang-tools-extra/clang-include-fixer/find-all-symbols/SymbolInfo.cpp
Log Message:
-----------
[clang-include-fixer] Remove an unused "using" decl (NFC) (#140354)
We do use MappingTraits in this file, but all uses are inside the
llvm::yaml namespace, so we don't rely on the "using" decl.
Commit: bc6107a8d23d7a1d14f801f8f4ec84188d942f2f
https://github.com/llvm/llvm-project/commit/bc6107a8d23d7a1d14f801f8f4ec84188d942f2f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/include/llvm/Support/Allocator.h
M llvm/lib/Support/CommandLine.cpp
Log Message:
-----------
[Support] Use range-based for loops (NFC) (#140401)
Commit: 1a40edf2c08297bde3e651a521d74356ee94e238
https://github.com/llvm/llvm-project/commit/1a40edf2c08297bde3e651a521d74356ee94e238
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.cpp
M clang-tools-extra/clangd/refactor/Rename.cpp
Log Message:
-----------
[clang-tools-extra] Use llvm::find_if (NFC) (#140411)
Commit: ff78648b096379eb73e6c5976b8a3a16f0b54a68
https://github.com/llvm/llvm-project/commit/ff78648b096379eb73e6c5976b8a3a16f0b54a68
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
M llvm/lib/DebugInfo/LogicalView/Readers/LVBinaryReader.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp
M llvm/unittests/XRay/GraphTest.cpp
Log Message:
-----------
[llvm] Use llvm::find_if (NFC) (#140412)
Commit: 6290cc33e9a6541ccb4711991247a77e0a5b9412
https://github.com/llvm/llvm-project/commit/6290cc33e9a6541ccb4711991247a77e0a5b9412
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M clang/lib/AST/VTableBuilder.cpp
M clang/lib/Lex/ModuleMap.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/unittests/Support/TimeProfilerTest.cpp
M clang/utils/TableGen/SveEmitter.cpp
Log Message:
-----------
[clang] Use llvm::stable_sort (NFC) (#140413)
Commit: 304070575a4c585cc3bb2ef206b77bf988c400ff
https://github.com/llvm/llvm-project/commit/304070575a4c585cc3bb2ef206b77bf988c400ff
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/AsmParser/LLParser.cpp
Log Message:
-----------
[AsmParser] Use range-based for loops (NFC) (#140414)
Commit: 751e6c08b2f6cd40908b8810a2a2da476e88417e
https://github.com/llvm/llvm-project/commit/751e6c08b2f6cd40908b8810a2a2da476e88417e
Author: Matthias Springer <me at m-sp.org>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
Log Message:
-----------
[mlir][Transforms] Check for correct type converter rule implementation (#140347)
If a type conversion rule fails to apply, it should not append any types
to the result. This commit just adds an assertion to detect such cases
of incorrect API usage.
Commit: 3360a23e60b00fb0260b2aa37495867cff3ec40d
https://github.com/llvm/llvm-project/commit/3360a23e60b00fb0260b2aa37495867cff3ec40d
Author: Matthias Springer <me at m-sp.org>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorDescriptor.cpp
Log Message:
-----------
[mlir][SparseTensor] Fix type conversion rule (#140350)
A type conversion rule cannot make any assumptions about the number of
pre-existing types in the `results` vector.
This commit fixes a failed assertion in a SparseTensor type conversion
rule. This is only reproducible when type conversion caching is
deactivated. There's no way to do this at the moment. This commit is in
preparation of adding context-aware type conversions, which will
deactivate type caching in such cases.
Commit: d08833f23fc8b25e1c3ef88274aa12f330601932
https://github.com/llvm/llvm-project/commit/d08833f23fc8b25e1c3ef88274aa12f330601932
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M bolt/lib/Core/DebugData.cpp
M bolt/lib/Passes/FrameAnalysis.cpp
M bolt/lib/Passes/HFSort.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/tools/bat-dump/bat-dump.cpp
Log Message:
-----------
[BOLT] Remove unused local variables (NFC) (#140421)
While I'm at it, this patch removes GetExecutablePath, which becomes
unused after removing the sole use.
Commit: f2165b9d5807ec7dc510ff3727698b3124b0b4e9
https://github.com/llvm/llvm-project/commit/f2165b9d5807ec7dc510ff3727698b3124b0b4e9
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/dropped_debug_info_assert.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-inline-asm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-metadata.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-legalize-range-metadata.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mmra.ll
M llvm/test/CodeGen/AMDGPU/lower-kernel-and-module-lds.ll
M llvm/test/CodeGen/AMDGPU/lower-kernel-lds.ll
M llvm/test/CodeGen/AMDGPU/lower-lds-struct-aa-memcpy.ll
M llvm/test/CodeGen/AMDGPU/lower-lds-struct-aa-merge.ll
M llvm/test/CodeGen/AMDGPU/lower-lds-struct-aa.ll
M llvm/test/CodeGen/AMDGPU/lower-module-lds-all-indirect-accesses.ll
M llvm/test/CodeGen/AMDGPU/lower-module-lds-indirect-extern-uses-max-reachable-alignment.ll
M llvm/test/CodeGen/AMDGPU/lower-module-lds-via-hybrid.ll
M llvm/test/CodeGen/AMDGPU/mmra.ll
Log Message:
-----------
Revert "[AMDGPU] Add flag to prevent reruns of LowerModuleLDS (#129520)"
This reverts commit aa9f8596b01fef013ab62c20e61fc96d165f60f7 because it made
some assumptions that may not be valid.
Commit: 1bc004346784b91085ebaeed9be15de189d74817
https://github.com/llvm/llvm-project/commit/1bc004346784b91085ebaeed9be15de189d74817
Author: Jeremy Kun <jkun at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorDialect.cpp
M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/test/Dialect/Tensor/bufferize.mlir
Log Message:
-----------
Restore #140171 with to_memref -> to_buffer (#140355)
https://github.com/llvm/llvm-project/pull/140171 was reverted because an
op's name changed and I neglected to rebase before merging.
---------
Co-authored-by: Jeremy Kun <j2kun at users.noreply.github.com>
Commit: ef1bb2a243e0534394be2a74b0ded212d110d3c7
https://github.com/llvm/llvm-project/commit/ef1bb2a243e0534394be2a74b0ded212d110d3c7
Author: Matthias Springer <me at m-sp.org>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorDescriptor.cpp
Log Message:
-----------
[mlir][SparseTensor] Fix unused variable error (#140428)
Commit: c2835e70fd0c8729238bcc56020b6f0a47dfd225
https://github.com/llvm/llvm-project/commit/c2835e70fd0c8729238bcc56020b6f0a47dfd225
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
M mlir/lib/Transforms/RemoveDeadValues.cpp
Log Message:
-----------
[mlir] Remove unused local variables (NFC) (#140423)
Commit: 465e0daa6c6b0ddd010bc1c5f316c6be0d8b17b6
https://github.com/llvm/llvm-project/commit/465e0daa6c6b0ddd010bc1c5f316c6be0d8b17b6
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M bolt/include/bolt/Profile/DataReader.h
M bolt/lib/Profile/DataReader.cpp
Log Message:
-----------
[BOLT] Avoid repeated hash lookups (NFC) (#140426)
We can use try_emplace to succinctly implement GetOrCreateFuncEntry
and GetOrCreateFuncMemEntry. Since it's a bit mouthful to say
FuncBasicSampleData::ContainerTy(), this patch changes the second
parameters to default ones.
Commit: ad060dfa4c910e8253ba328be947ef70f6597326
https://github.com/llvm/llvm-project/commit/ad060dfa4c910e8253ba328be947ef70f6597326
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-17 (Sat, 17 May 2025)
Changed paths:
M bolt/lib/Passes/ShrinkWrapping.cpp
Log Message:
-----------
[BOLT] Use llvm::stable_sort (NFC) (#140429)
Commit: 3ccb15d6caf57f2a866d496ada2fb52d14b179d2
https://github.com/llvm/llvm-project/commit/3ccb15d6caf57f2a866d496ada2fb52d14b179d2
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
Log Message:
-----------
[libclang/python] Add typing annotations for the Type class (#140378)
This fully annotates the Type class, resolving 75 strict typing errors
as the next step towards #76664
Commit: 07c085af3efcd67503232f99a1652efc6e54c1a9
https://github.com/llvm/llvm-project/commit/07c085af3efcd67503232f99a1652efc6e54c1a9
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/SystemZ/pr47665.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/version-stride-with-integer-casts.ll
Log Message:
-----------
[VPlan] Add narrowToSingleScalarRecipe transform. (#139150)
Add a new convertToUniformRecipes transform which uses VPlan-based
uniformity analysis to determine if wide recipes and replicate recipes
can be converted to uniform recipes.
There are a few places where we ad-hoc convert recipes to uniform
recipes, which this transform will eventually replace. There are a few
more generalizations required to do so which I plan to do as follow-ups.
By converting the recipes to uniform recipes, we effectively materialize
the information from the VPlan-based analysis.
Note that there is one regression at the moment in SystemZ/pr47665.ll
due to trivial constant folding opportunities in the input IR. This will
be fixed by VPlan-based constant folding
(https://github.com/llvm/llvm-project/pull/125365/)
PR: https://github.com/llvm/llvm-project/pull/139150
Commit: b18ebd17b82db0bdf5bb8cae59c3208288fbef93
https://github.com/llvm/llvm-project/commit/b18ebd17b82db0bdf5bb8cae59c3208288fbef93
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/test/Analysis/LoopAccessAnalysis/forked-pointers.ll
Log Message:
-----------
[LAA] Improve forked-pointers.ll test (#140383)
Commit: 7e14161f49b32387988cf9d937bbfaa27d0fbdd5
https://github.com/llvm/llvm-project/commit/7e14161f49b32387988cf9d937bbfaa27d0fbdd5
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/lib/Transforms/Utils/LoopPeel.cpp
A llvm/test/Transforms/LoopUnroll/unroll-and-peel-last-iteration.ll
Log Message:
-----------
[LoopPeel] Handle constants when updating exit values when peeling last.
Account for constant values when updating exit values after peeling an
iteration from the end. This can happen if the inner loop gets unrolled
and simplified.
Fixes https://github.com/llvm/llvm-project/issues/140442.
Commit: 962aa2666fe8aa99e25bb255a99d3ab02d8441b4
https://github.com/llvm/llvm-project/commit/962aa2666fe8aa99e25bb255a99d3ab02d8441b4
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M libcxx/include/map
M libcxx/test/std/containers/associative/map/incomplete_type.pass.cpp
M libcxx/test/support/min_allocator.h
Log Message:
-----------
[libc++] Don't instantiate allocators in __tree on an incomplete type (#140225)
This causes a mismatch between `value_type` and
`allocator_type::value_type` in `__tree`, but I think that's acceptable.
`__tree` primarily gets a `__value_type` wrapper due to potential ABI
breaks and unwraps it to the same as `allocator_type::value_type` in the
end. A cleanup patch will also change `__tree::value_type` to be the
same as `allocator_type::value_type`, making the type mismatch only
visible where `__tree` is instantiated in `map`.
Commit: f6867709a7a7e59ecf8a39c75627ae906ac8e1df
https://github.com/llvm/llvm-project/commit/f6867709a7a7e59ecf8a39c75627ae906ac8e1df
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M libcxx/include/__tree
M libcxx/test/std/containers/associative/set/set.cons/copy_assign.pass.cpp
Log Message:
-----------
[libc++] Fix set::operator= when instantiating with a std::pair (#140385)
This has been introduced by #134819, most likely due to a merge conflict
I didn't resolve properly (I thought I did in that patch what I'm now
doing here).
Commit: 0b553e055ad01ca6a2c88f7da92157df29e42fd0
https://github.com/llvm/llvm-project/commit/0b553e055ad01ca6a2c88f7da92157df29e42fd0
Author: dty2 <118413413+dty2 at users.noreply.github.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/test/CodeGenCXX/cxx1z-inline-variables.cpp
M clang/test/SemaTemplate/cxx17-inline-variables.cpp
Log Message:
-----------
[Clang] Fix missed initializer instantiation bug for variable templates (#138122)
Fixes https://github.com/llvm/llvm-project/issues/135032
Due to nested templates, when instantiating the outer layer (the
template class), the inner layer (the template variable) uses delayed
instantiation.
This causes the declaration (VarDecl) of the template variable to retain
the type from the original template declaration (i.e., auto), and it
loses the initializer.
Later, when instantiating the template variable, its
VarTemplateSpecializationDecl type depends on the VarDecl type.
Thus, the VarTemplateSpecializationDecl also has no initializer, and its
type remains auto.
Ultimately, when building the reference expression in
Sema::BuildDeclarationNameExpr, the expression's type is auto and stays
as auto until code generation, triggering llvm_unreachable in
CodeGenTypes::ConvertType.
Since I noticed that the deduction of auto type is caused by the
initializer
I plan to do special processing for template variables of type auto,
that is, to prevent their delayed instantiation
so that their initializers will not be lost when the outer template
class is instantiated
Commit: a0a2a1e095ddd092e668b0b3f9a7dfa9655255e1
https://github.com/llvm/llvm-project/commit/a0a2a1e095ddd092e668b0b3f9a7dfa9655255e1
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/lib/Transforms/Utils/LoopPeel.cpp
M llvm/test/Transforms/LoopUnroll/peel-last-iteration.ll
Log Message:
-----------
[LoopPeel] Make sure exit condition has a single use when peeling last.
Update the check in canPeelLastIteration to make sure the exiting
condition has a single use. When peeling the last iteration, we adjust
the condition in the loop body to be true one iteration early, which
would be incorrect for other users.
Fixes https://github.com/llvm/llvm-project/issues/140444.
Commit: ffb9bbfd0745dc22e1fd6edd7b62f72b91f4f6de
https://github.com/llvm/llvm-project/commit/ffb9bbfd0745dc22e1fd6edd7b62f72b91f4f6de
Author: Shay Kleiman <42376404+shay-kl at users.noreply.github.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
M mlir/lib/Dialect/GPU/Transforms/EliminateBarriers.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp
M mlir/lib/Dialect/MemRef/Transforms/ExpandStridedMetadata.cpp
M mlir/test/Conversion/MemRefToLLVM/expand-then-convert-to-llvm.mlir
M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/misc-other.mlir
M mlir/test/Dialect/MemRef/emulate-narrow-type.mlir
M mlir/test/Dialect/MemRef/invalid.mlir
M mlir/test/Dialect/MemRef/ops.mlir
Log Message:
-----------
[mlir][MemRef] Changed AssumeAlignment into a Pure ViewLikeOp (#139521)
Made AssumeAlignment a ViewLikeOp that returns a new SSA memref equal
to its memref argument and made it have Pure trait. This
gives it a defined memory effect that matches what it does in practice
and makes it behave nicely with optimizations which won't get rid of it
unless its result isn't being used.
Commit: 4504e775509483ec20912bc1d805717eecb311ca
https://github.com/llvm/llvm-project/commit/4504e775509483ec20912bc1d805717eecb311ca
Author: Shay Kleiman <42376404+shay-kl at users.noreply.github.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M mlir/test/Integration/Dialect/MemRef/assume-alignment-runtime-verification.mlir
Log Message:
-----------
[mlir][MemRef] Fixed a lit test for assume alignment (#140447)
Fixed a lit test that failed from my previous commit
Commit: 01bf2d71d0681122e2518a12115418c5c0a42218
https://github.com/llvm/llvm-project/commit/01bf2d71d0681122e2518a12115418c5c0a42218
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/select-undef.ll
Log Message:
-----------
[AMDGPU] select-undef.ll - regenerate test checks
Ensure we see all the codegen to help find any lurking unexpected behaviours
Commit: ad3136689090f79b52afcb5a95ec87e893006877
https://github.com/llvm/llvm-project/commit/ad3136689090f79b52afcb5a95ec87e893006877
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.h
Log Message:
-----------
[X86] Move X86ISD::FP_TO_SINT_SAT/FP_TO_UINT_SAT outside of the MEMORY_OPCODE enum block (#140272)
Move to closer to the other regular conversion opcodes
Fixes #140271
Commit: c861fe8a71e64f3d2108c58147e7375cd9314521
https://github.com/llvm/llvm-project/commit/c861fe8a71e64f3d2108c58147e7375cd9314521
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M libcxx/include/__algorithm/shuffle.h
M libcxx/include/__algorithm/sort.h
M libcxx/include/__atomic/atomic_sync.h
M libcxx/include/__charconv/from_chars_floating_point.h
M libcxx/include/__charconv/to_chars_floating_point.h
M libcxx/include/__chrono/exception.h
M libcxx/include/__chrono/file_clock.h
M libcxx/include/__chrono/steady_clock.h
M libcxx/include/__chrono/system_clock.h
M libcxx/include/__condition_variable/condition_variable.h
M libcxx/include/__config
M libcxx/include/__exception/exception.h
M libcxx/include/__exception/exception_ptr.h
M libcxx/include/__exception/nested_exception.h
M libcxx/include/__exception/operations.h
M libcxx/include/__exception/terminate.h
M libcxx/include/__expected/bad_expected_access.h
M libcxx/include/__filesystem/directory_entry.h
M libcxx/include/__filesystem/directory_iterator.h
M libcxx/include/__filesystem/filesystem_error.h
M libcxx/include/__filesystem/operations.h
M libcxx/include/__filesystem/path.h
M libcxx/include/__filesystem/path_iterator.h
M libcxx/include/__filesystem/recursive_directory_iterator.h
M libcxx/include/__format/format_error.h
M libcxx/include/__functional/function.h
M libcxx/include/__functional/hash.h
M libcxx/include/__hash_table
M libcxx/include/__locale
M libcxx/include/__memory/align.h
M libcxx/include/__memory/shared_count.h
M libcxx/include/__memory/shared_ptr.h
M libcxx/include/__memory_resource/memory_resource.h
M libcxx/include/__memory_resource/monotonic_buffer_resource.h
M libcxx/include/__memory_resource/synchronized_pool_resource.h
M libcxx/include/__memory_resource/unsynchronized_pool_resource.h
M libcxx/include/__mutex/mutex.h
M libcxx/include/__mutex/once_flag.h
M libcxx/include/__new/exceptions.h
M libcxx/include/__new/new_handler.h
M libcxx/include/__ostream/basic_ostream.h
M libcxx/include/__ostream/print.h
M libcxx/include/__pstl/backends/libdispatch.h
M libcxx/include/__random/binomial_distribution.h
M libcxx/include/__random/random_device.h
M libcxx/include/__system_error/error_category.h
M libcxx/include/__system_error/error_code.h
M libcxx/include/__system_error/error_condition.h
M libcxx/include/__system_error/system_error.h
M libcxx/include/__system_error/throw_system_error.h
M libcxx/include/__thread/this_thread.h
M libcxx/include/__thread/thread.h
M libcxx/include/__verbose_abort
M libcxx/include/any
M libcxx/include/barrier
M libcxx/include/codecvt
M libcxx/include/condition_variable
M libcxx/include/fstream
M libcxx/include/future
M libcxx/include/ios
M libcxx/include/istream
M libcxx/include/locale
M libcxx/include/mutex
M libcxx/include/print
M libcxx/include/regex
M libcxx/include/shared_mutex
M libcxx/include/sstream
M libcxx/include/stdexcept
M libcxx/include/streambuf
M libcxx/include/string
M libcxx/include/strstream
M libcxx/include/valarray
M libcxx/include/variant
M libcxx/src/algorithm.cpp
M libcxx/src/any.cpp
M libcxx/src/atomic.cpp
M libcxx/src/barrier.cpp
M libcxx/src/call_once.cpp
M libcxx/src/charconv.cpp
M libcxx/src/chrono.cpp
M libcxx/src/condition_variable.cpp
M libcxx/src/condition_variable_destructor.cpp
M libcxx/src/error_category.cpp
M libcxx/src/expected.cpp
M libcxx/src/experimental/chrono_exception.cpp
M libcxx/src/filesystem/directory_entry.cpp
M libcxx/src/filesystem/directory_iterator.cpp
M libcxx/src/filesystem/filesystem_clock.cpp
M libcxx/src/filesystem/filesystem_error.cpp
M libcxx/src/filesystem/operations.cpp
M libcxx/src/filesystem/path.cpp
M libcxx/src/fstream.cpp
M libcxx/src/functional.cpp
M libcxx/src/future.cpp
M libcxx/src/hash.cpp
M libcxx/src/ios.cpp
M libcxx/src/iostream.cpp
M libcxx/src/locale.cpp
M libcxx/src/memory.cpp
M libcxx/src/memory_resource.cpp
M libcxx/src/mutex.cpp
M libcxx/src/mutex_destructor.cpp
M libcxx/src/optional.cpp
M libcxx/src/ostream.cpp
M libcxx/src/print.cpp
M libcxx/src/random.cpp
M libcxx/src/random_shuffle.cpp
M libcxx/src/regex.cpp
M libcxx/src/shared_mutex.cpp
M libcxx/src/std_stream.h
M libcxx/src/stdexcept.cpp
M libcxx/src/string.cpp
M libcxx/src/strstream.cpp
M libcxx/src/system_error.cpp
M libcxx/src/thread.cpp
M libcxx/src/valarray.cpp
M libcxx/src/vector.cpp
M libcxx/src/verbose_abort.cpp
M libcxx/test/tools/clang_tidy_checks/hide_from_abi.cpp
Log Message:
-----------
[libc++] Introduce ABI sensitive areas to avoid requiring _LIBCPP_HIDE_FROM_ABI everywhere (#131156)
This patch introduces `_LIBCPP_{BEGIN,END}_EXPLICIT_ABI_ANNOTATIONS`,
which allow us to have implicit annotations for most functions, and just
where it's not "hide_from_abi everything" we add explicit annotations.
This allows us to drop the `_LIBCPP_HIDE_FROM_ABI` macro from most
functions in libc++.
Commit: dd702b39699f5f35e862387f88e79e078491094c
https://github.com/llvm/llvm-project/commit/dd702b39699f5f35e862387f88e79e078491094c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/lib/Object/Object.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/tools/llvm-mca/llvm-mca.cpp
M llvm/tools/llvm-rc/ResourceFileWriter.cpp
Log Message:
-----------
[llvm] Remove unused local variables (NFC) (#140422)
Commit: 013c7ba78590badf20d769a2de13bddabcfb1c5d
https://github.com/llvm/llvm-project/commit/013c7ba78590badf20d769a2de13bddabcfb1c5d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
Log Message:
-----------
[CodeGen] Use DenseMap::try_emplace (NFC) (#140430)
We can simplify the code with DenseMap::try_emplace and structured
binding. Note that DenseMap::try_emplace default-constructs the value
if omitted.
Commit: 4388f38fbd9a0e6e55d5233cefa3e4ac3d8815d9
https://github.com/llvm/llvm-project/commit/4388f38fbd9a0e6e55d5233cefa3e4ac3d8815d9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/Sema/SemaCUDA.cpp
M clang/utils/TableGen/ClangOptionDocEmitter.cpp
Log Message:
-----------
[clang] Use llvm::max_element (NFC) (#140435)
Commit: 09d65fe8a190fdd461be18c8f6be57a1c2a2b6f7
https://github.com/llvm/llvm-project/commit/09d65fe8a190fdd461be18c8f6be57a1c2a2b6f7
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/lib/Support/TrieRawHashMap.cpp
Log Message:
-----------
[Support] Use std::optional::value_or (NFC) (#140436)
Commit: 159f05fcaf9888ceaa70d0a6e78e1da30d418de7
https://github.com/llvm/llvm-project/commit/159f05fcaf9888ceaa70d0a6e78e1da30d418de7
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M clang/include/clang/AST/ExprCXX.h
Log Message:
-----------
[AST] Remove "const" from "const ArrayRef" (NFC) (#140437)
Commit: 852b11c75fb8f6132298b9a67c886b02ff9d387a
https://github.com/llvm/llvm-project/commit/852b11c75fb8f6132298b9a67c886b02ff9d387a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/tools/bugpoint/CrashDebugger.cpp
Log Message:
-----------
[bugpoint] Use range-based for loops (NFC) (#140438)
Commit: a86344c5a9854ae38d925566d3e9fbc0854254f6
https://github.com/llvm/llvm-project/commit/a86344c5a9854ae38d925566d3e9fbc0854254f6
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M lldb/source/Target/RegisterContextUnwind.cpp
Log Message:
-----------
[lldb] Remove redundant calls to std::unique_ptr<T>::get (NFC) (NFC) (#140440)
Commit: b12d68e0b253b4dc6c3fd9d99ee8421605e274aa
https://github.com/llvm/llvm-project/commit/b12d68e0b253b4dc6c3fd9d99ee8421605e274aa
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M libcxx/test/libcxx/feature_test_macro/ftm_metadata.sh.py
A libcxx/test/libcxx/feature_test_macro/generate_header_test.sh.py
M libcxx/test/libcxx/feature_test_macro/implemented_ftms.sh.py
M libcxx/test/libcxx/feature_test_macro/invalid.sh.py
M libcxx/test/libcxx/feature_test_macro/is_implemented.sh.py
M libcxx/test/libcxx/feature_test_macro/standard_ftms.sh.py
A libcxx/test/libcxx/feature_test_macro/standard_library_headers.sh.py
M libcxx/test/libcxx/feature_test_macro/std_dialects.sh.py
M libcxx/test/libcxx/feature_test_macro/test_data.json
M libcxx/test/libcxx/feature_test_macro/version_header.sh.py
M libcxx/test/libcxx/feature_test_macro/version_header_implementation.sh.py
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++] Implements the new FTM header test generator. (#134542)
This generator has almost identical output to the existing script.
Notable differences are
- conditionally include headers that are not implemented yet
- removes the synopsis
- uses 2 spaces indent in `# if`
There are a few more test macros added that triggered bugs in existing
FTM.
Commit: e003326cd8e474f1c5be030f63c975b354c3f784
https://github.com/llvm/llvm-project/commit/e003326cd8e474f1c5be030f63c975b354c3f784
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M clang/lib/Sema/SemaChecking.cpp
Log Message:
-----------
[Sema] Use llvm::is_contained (NFC) (#140455)
Commit: 04c73adfe2ed3597e10859c753b0dbdfd7e5f210
https://github.com/llvm/llvm-project/commit/04c73adfe2ed3597e10859c753b0dbdfd7e5f210
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.cpp
M clang-tools-extra/clangd/CompileCommands.cpp
Log Message:
-----------
[clang-tools-extra] Use llvm::is_contained (NFC) (#140456)
Commit: 9384e8e63c2e51a5dfac1c53d07442bb0c8d8773
https://github.com/llvm/llvm-project/commit/9384e8e63c2e51a5dfac1c53d07442bb0c8d8773
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M clang-tools-extra/clang-tidy/misc/ConfusableTable/BuildConfusableTable.cpp
M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
Log Message:
-----------
[clang-tools-extra] Use llvm::max_element (NFC) (#140458)
Commit: 0fc9cd13a6e3e3707794f4e016b15831d5f0b334
https://github.com/llvm/llvm-project/commit/0fc9cd13a6e3e3707794f4e016b15831d5f0b334
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M clang/include/clang/Serialization/ContinuousRangeMap.h
M clang/lib/Format/UsingDeclarationsSorter.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/tools/libclang/CIndex.cpp
Log Message:
-----------
[clang] Use llvm::unique (NFC) (#140459)
Commit: 61ba3e4c99a0f806a798fba398e82a4969054bc1
https://github.com/llvm/llvm-project/commit/61ba3e4c99a0f806a798fba398e82a4969054bc1
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
Log Message:
-----------
[CIR][LLVMLowering] Upstream unary operators for VectorType (#139444)
This change adds support for unary ops for VectorType
Issue https://github.com/llvm/llvm-project/issues/136487
Commit: 5ab3c5215688f62dbc3707f0e9cc2e8b69c0a7f0
https://github.com/llvm/llvm-project/commit/5ab3c5215688f62dbc3707f0e9cc2e8b69c0a7f0
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
Log Message:
-----------
[lldb-dap] Member variable cleanup in DAP.{cpp,h} (NFC) (#140390)
- Use in-class member initialization to simplify the constructor.
- Remove unimplemented SetConfigurationDone.
- Consistently use Doxygen-style comments.
Commit: 3d0c616ce30cdc3d9c26dda8fdc608a6c85f00a6
https://github.com/llvm/llvm-project/commit/3d0c616ce30cdc3d9c26dda8fdc608a6c85f00a6
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M lldb/tools/lldb-dap/CMakeLists.txt
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
A lldb/tools/lldb-dap/Variables.cpp
A lldb/tools/lldb-dap/Variables.h
M lldb/unittests/DAP/CMakeLists.txt
A lldb/unittests/DAP/VariablesTest.cpp
Log Message:
-----------
[lldb-dap] Move the Variables struct into its own file (#140393)
Move the Variables struct out of DAP.h and into its own file to reduce
the complexity of the latter. This PR also makes the members that are
implementation details private and adds a handful of basic unit tests.
Commit: 5247a4fc71b733ecb107a036046e5e92146aea5c
https://github.com/llvm/llvm-project/commit/5247a4fc71b733ecb107a036046e5e92146aea5c
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/utils/gn/secondary/lldb/tools/lldb-dap/BUILD.gn
Log Message:
-----------
[gn build] Port 3d0c616ce30c
Commit: 5fa985e751c8f890fff31e190473aeeb6f7a9fc5
https://github.com/llvm/llvm-project/commit/5fa985e751c8f890fff31e190473aeeb6f7a9fc5
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
Log Message:
-----------
[VPlan] Support cloning initial VPlan (NFC).
Support cloning VPlans as they are created by the initial buildVPlan,
i.e. scalar header not yet connected and no trip-count set. This is not
used yet but will in follow-up changes/
Also add a unit test for cloning & printing.
Commit: 1b41599cf8972abbf0d2ee7595dba78a4b158af0
https://github.com/llvm/llvm-project/commit/1b41599cf8972abbf0d2ee7595dba78a4b158af0
Author: Jessica Clarke <jrtc27 at jrtc27.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCAsmInfo.h
M llvm/include/llvm/MC/MCDirectives.h
M llvm/include/llvm/MC/MCELFStreamer.h
M llvm/include/llvm/MC/MCStreamer.h
M llvm/include/llvm/MC/MCWasmStreamer.h
M llvm/include/llvm/MC/MCWinCOFFStreamer.h
M llvm/lib/MC/MCAsmInfo.cpp
M llvm/lib/MC/MCAsmStreamer.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/MC/MCMachOStreamer.cpp
M llvm/lib/MC/MCNullStreamer.cpp
M llvm/lib/MC/MCParser/DarwinAsmParser.cpp
M llvm/lib/MC/MCStreamer.cpp
M llvm/lib/MC/MCWasmStreamer.cpp
M llvm/lib/MC/MCWinCOFFStreamer.cpp
M llvm/lib/Object/RecordStreamer.h
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.h
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendDarwin.h
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendELF.h
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendWinCOFF.h
M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86TargetStreamer.h
M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFTargetStreamer.cpp
M llvm/lib/Target/X86/X86AsmPrinter.cpp
M llvm/test/CodeGen/ARM/ldrd.ll
M llvm/test/CodeGen/ARM/thumb-function-section-reloc.ll
M llvm/test/CodeGen/Thumb/thumb-shrink-wrapping.ll
M llvm/test/DebugInfo/ARM/header.ll
M llvm/utils/UpdateTestChecks/asm.py
Log Message:
-----------
[MC][AArch64][ARM][X86] Push target-dependent assembler flags into targets (#139844)
The .syntax unified directive and .codeX/.code X directives are, other
than some simple common printing code, exclusively implemented in the
targets themselves. Thus, remove the corresponding MCAF_* flags and
reimplement the directives solely within the targets. This avoids
exposing all targets to all other targets' flags.
Since MCAF_SubsectionsViaSymbols is all that remains, convert it to its
own function like other directives, simplifying its implementation.
Note that, on X86, we now always need a target streamer when parsing
assembly, as it's now used for directives that aren't COFF-specific. It
still does not however need to do anything when producing a non-COFF
object file, so this commit does not introduce any new target streamers.
There is some churn in test output, and corresponding UTC regex changes,
due to comments no longer being flushed by these various directives (and
EmitEOL is not exposed outside MCAsmStreamer.cpp so we couldn't do so
even if we wanted to), but that was a bit odd to be doing anyway.
This is motivated by Morello LLVM, which adds yet another assembler flag
to distinguish A64 and C64 instruction sets, but did not update every
switch and so emits warnings during the build. Rather than fix those
warnings it seems better to instead make the problem not exist in the
first place via this change.
Commit: fb86b3d96b73f4e628288b180ef4e038da8b7bc1
https://github.com/llvm/llvm-project/commit/fb86b3d96b73f4e628288b180ef4e038da8b7bc1
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/crash_bullet3.ll
M llvm/test/Transforms/SLPVectorizer/X86/matched-bv-schedulable.ll
A llvm/test/Transforms/SLPVectorizer/X86/node-outside-used-only.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi-node-with-cycle.ll
M llvm/test/Transforms/SLPVectorizer/X86/user-node-with-same-last-instr.ll
M llvm/test/Transforms/SLPVectorizer/revec.ll
Log Message:
-----------
[SLP]Change the insertion point for outside-block-used nodes and prevec phi operand gathers
Need to set the insertion point for (non-schedulable) vector node after
the last instruction in the node to avoid def-use breakage. But it also
causes miscompilation with gather/buildvector operands of the phi nodes,
used in the same phi only in the block.
These nodes supposed to be inserted at the end of the block and after
changing the insertion point for the non-schedulable vec block, it also
may break def-use dependencies. Need to prevector such nodes, to emit
them as early as possible, so the vectorized nodes are inserted before
these nodes.
Fixes #139728
Recommit after revert 60fb92179291e848eb7b04913bdc818d081db296
Reviewers: hiraditya, HanKuanChen, RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/139917
Commit: 204252e2df80876702616518a5154dccacf3ebac
https://github.com/llvm/llvm-project/commit/204252e2df80876702616518a5154dccacf3ebac
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
Log Message:
-----------
Revert "[VPlan] Support cloning initial VPlan (NFC)."
This reverts commit 5fa985e751c8f890fff31e190473aeeb6f7a9fc5.
Revert as this seems to introduce a call to a pure virtual function on a
few configs, e.g.
https://lab.llvm.org/buildbot/#/builders/169/builds/11535
Commit: 35ee462fefe18927cc3a626d22f7b32f14b5eaf7
https://github.com/llvm/llvm-project/commit/35ee462fefe18927cc3a626d22f7b32f14b5eaf7
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
Log Message:
-----------
[LAA] Add assert check CanDoRTIFNeeded can be computed w/o RT.Need (NFC)
Add assert to ensure that CanDoRTIfNeeded can be computed w/o
RtCheck.Need, to prepare for adjusting the condition.
Commit: 9d3ef8a66fbcb614843ae6e864d0b0a950ceb9ae
https://github.com/llvm/llvm-project/commit/9d3ef8a66fbcb614843ae6e864d0b0a950ceb9ae
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/lib/MC/ELFObjectWriter.cpp
Log Message:
-----------
ELFObjectWriter: Simplify
Commit: bb8e2a893728d9017409bf1de413eff2a035ae57
https://github.com/llvm/llvm-project/commit/bb8e2a893728d9017409bf1de413eff2a035ae57
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/masked-load-compress-reordered.ll
Log Message:
-----------
[SLP]Relax assertion to avoid compiler crash
Need to relax the assertion to fix a compiler crash in case if the
reordered compress loads are more profitable than the ordered ones.
Fixes #140334
Commit: ec7a5091655f75839e8da57a76aec6600a864915
https://github.com/llvm/llvm-project/commit/ec7a5091655f75839e8da57a76aec6600a864915
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/lib/MC/ELFObjectWriter.cpp
Log Message:
-----------
ELFObjectWriter: Simplify R_PPC64_TOC special case. NFC
Commit: ad673151085cc6cd85ae05714e201e0b6dd78e37
https://github.com/llvm/llvm-project/commit/ad673151085cc6cd85ae05714e201e0b6dd78e37
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M lldb/tools/lldb-dap/CMakeLists.txt
A lldb/tools/lldb-dap/CommandPlugins.cpp
A lldb/tools/lldb-dap/CommandPlugins.h
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/Handler/InitializeRequestHandler.cpp
Log Message:
-----------
[lldb-dap] Move the command plugins out of the DAP header (#140396)
Move the command plugins out of the DAP header and into their file. This
PR also renames the classes from "RequestHandler" to "Command". Although
they are implemented in terms of sending requests, they are not
"handlers".
Commit: 048788419ee2e6d05b0daf0e391ccb0e3466a12b
https://github.com/llvm/llvm-project/commit/048788419ee2e6d05b0daf0e391ccb0e3466a12b
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/utils/gn/secondary/lldb/tools/lldb-dap/BUILD.gn
Log Message:
-----------
[gn build] Port ad673151085c
Commit: c512d951861c9e35649b6c9672c227244bb9b6be
https://github.com/llvm/llvm-project/commit/c512d951861c9e35649b6c9672c227244bb9b6be
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCAssembler.h
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/MC/MCAsmBackend.cpp
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.h
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h
Log Message:
-----------
MC: Generalize RISCV/LoongArch handleAddSubRelocations and AVR shouldForceRelocation
Introduce MCAsmBackend::addReloc to manage relocation appending.
The default implementation uses shouldForceRelocation to check
unresolved fixups and calls recordRelocation to append a relocation when
needed.
RISCV and LoongArch override addReloc to handle ADD/SUB relocations,
with potential support for RELAX relocations in the future.
AVR overrides addReloc to customize shouldForceRelocation behavior
(#121498).
applyFixup is moved into evaluateFixup.
Commit: 6d515ce8270ebeeaab771c7db08fbf9bf146e31d
https://github.com/llvm/llvm-project/commit/6d515ce8270ebeeaab771c7db08fbf9bf146e31d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
M mlir/lib/Dialect/MemRef/Transforms/ExtractAddressComputations.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
Log Message:
-----------
[mlir] Use llvm::all_of (NFC) (#140464)
Commit: fbb8a0c9c8a0725b60d84333dd0c4af706b15bed
https://github.com/llvm/llvm-project/commit/fbb8a0c9c8a0725b60d84333dd0c4af706b15bed
Author: Brad Smith <brad at comstyle.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M clang/tools/clang-shlib/CMakeLists.txt
M llvm/cmake/modules/AddLLVM.cmake
M llvm/tools/llvm-shlib/CMakeLists.txt
Log Message:
-----------
[CMake] Add a linker test for -Bsymbolic-functions to AddLLVM (#79539)
Add a linker test for -Bsymbolic-functions to AddLLVM and remove
the illumos hardcoded bits for its handling. OpenBSD also has a
local patch for linking with the old BFD linker on mips64 and
sparc64.
Commit: c78e6bbd830a4633fa7c80aebb9680b6acf913c6
https://github.com/llvm/llvm-project/commit/c78e6bbd830a4633fa7c80aebb9680b6acf913c6
Author: Jim Lin <jim at andestech.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
A llvm/test/CodeGen/RISCV/rv32xandesperf.ll
A llvm/test/CodeGen/RISCV/rv64xandesperf.ll
M llvm/test/CodeGen/RISCV/rv64zba.ll
Log Message:
-----------
[RISCV] Add sext_inreg patterns for XAndesPerf nds.bfos instruction (#139714)
Add the patterns sign_extend_inreg i1/i8/i16.
Commit: eb467a088bd9c5f2755cbc6152195670bf45ae0e
https://github.com/llvm/llvm-project/commit/eb467a088bd9c5f2755cbc6152195670bf45ae0e
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M lldb/unittests/DAP/CMakeLists.txt
A lldb/unittests/DAP/FifoFilesTest.cpp
Log Message:
-----------
[lldb-dap] Add unit test for FifoFiles (#140480)
Commit: 6e857b49cc2809692c295806ad02288645d60017
https://github.com/llvm/llvm-project/commit/6e857b49cc2809692c295806ad02288645d60017
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-18 (Sun, 18 May 2025)
Changed paths:
M llvm/include/llvm/MC/MCValue.h
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
M llvm/test/MC/PowerPC/ppc64-relocs-01.s
Log Message:
-----------
MC: Move R_PPC64_TOC case to PowerPCAsmBackend
Commit: c798e195409a2d6fabbb166285d9dfe8ca7599a7
https://github.com/llvm/llvm-project/commit/c798e195409a2d6fabbb166285d9dfe8ca7599a7
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMInterfaces.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMInterfaces.td
M mlir/include/mlir/Dialect/X86Vector/X86Vector.td
M mlir/include/mlir/Dialect/X86Vector/X86VectorInterfaces.td
M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMInterfaces.cpp
M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
Log Message:
-----------
[mlir][llvm][x86vector] One-to-one intrinsic op interface (#140055)
Adds an LLVMIR op interface that can used by external operations to
model LLVM intrinsics. Related 'op to llvm.call_intrinsic' rewriter
helper is moved into common LLVM conversion patterns. The x86vector
dialect is refactored to use the new common abstraction.
The one-to-one intrinsic op is tied to LLVM intrinsic call semantics.
Thus, the op interface, previously defined as a part of x86vector
dialect, is moved into the LLVMIR interfaces to allow other low-level
dialects to define operations abstracting specific intrinsic semantics
while minimizing infrastructure duplication.
Related RFC:
https://discourse.llvm.org/t/rfc-simplify-x86-intrinsic-generation/85581/6
Commit: 267e2406a79a08f62529eb9e59e183f43f575c70
https://github.com/llvm/llvm-project/commit/267e2406a79a08f62529eb9e59e183f43f575c70
Author: Jim Lin <jim at andestech.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
Log Message:
-----------
[RISCV] Add reusable SelectCC_GPR_riirr multiclass. NFC (#140224)
Add reusable SelectCC_GPR_riirr multiclass. Allow Select_GPR_Using_CC_*
in XCV and Xqci to share a commom multiclass implmentation.
Commit: 23e8480536957b04ccaac2f49a979d5b03c6169c
https://github.com/llvm/llvm-project/commit/23e8480536957b04ccaac2f49a979d5b03c6169c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll
Log Message:
-----------
[X86] IsElementEquivalent - add basic handling for X86ISD::SUBV_BROADCAST_LOAD (#139727)
If we're broadcasting a subvector, then the elements at equal positions within each subvector are the same.
Commit: 071987959a08b46072593026aa05c18430220f6d
https://github.com/llvm/llvm-project/commit/071987959a08b46072593026aa05c18430220f6d
Author: Sven van Haastregt <sven.vanhaastregt at arm.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
Log Message:
-----------
[SPIR-V] Clarify builtin default value handling; NFC (#139691)
- Use a bool in `generateGetQueryInst` and rename the variable to better
convey its purpose.
- Replace mentions of 0 by `DefaultValue` in comments.
- Fix typos.
Commit: f594cd09364f52c27452d1369cc1fed5d768eb6c
https://github.com/llvm/llvm-project/commit/f594cd09364f52c27452d1369cc1fed5d768eb6c
Author: Mel Chen <mel.chen at sifive.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Analysis/IVDescriptors.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[IVDescriptor][LV] Return Instruction::Or for IAnyOf/FAnyOf in getOpcode(), nfc (#140242)
Commit: dc0dcab397ae3de38141e1995e4b4e5e3bb98660
https://github.com/llvm/llvm-project/commit/dc0dcab397ae3de38141e1995e4b4e5e3bb98660
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
A flang/test/Lower/OpenMP/flush-common.f90
R flang/test/Semantics/OpenMP/flush04.f90
Log Message:
-----------
[flang][OpenMP] Allow flush of common block (#139528)
I think this was denied by accident in
https://github.com/llvm/llvm-project/commit/68180d8d16f07db8200dfce7bae26a80c43ebc5e.
Flush of a common block is allowed by the standard on my reading. It is
not allowed by classic-flang but is supported by gfortran and ifx.
This doesn't need any lowering changes. The LLVM translation ignores the
flush argument list because the openmp runtime library doesn't support
flushing specific data.
Depends upon https://github.com/llvm/llvm-project/pull/139522. Ignore
the first commit in this PR.
Commit: 0cac25bcf5a246eb8a1f02d5041731ae9a6f00e0
https://github.com/llvm/llvm-project/commit/0cac25bcf5a246eb8a1f02d5041731ae9a6f00e0
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/Format/ContinuationIndenter.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Fix the indent of StartOfName after AttributeMacro (#140361)
Fix #139510
Commit: 8231182fed491b25a9597ba83cd284e097cc31ac
https://github.com/llvm/llvm-project/commit/8231182fed491b25a9597ba83cd284e097cc31ac
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
Log Message:
-----------
[libclang/python][NFC] Document how null cursors are handled (#140499)
Now that we looked at this aspect closely and fixed things, I think we
can document this.
Commit: 6da2acf8e99ec517bfbe498af2519d29834e2583
https://github.com/llvm/llvm-project/commit/6da2acf8e99ec517bfbe498af2519d29834e2583
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Merge short inline function in macro definition body (#140366)
Fix #62356
Commit: 5ddcd765dbb088b3fe8eb09dd38db1252981962c
https://github.com/llvm/llvm-project/commit/5ddcd765dbb088b3fe8eb09dd38db1252981962c
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/Format.cpp
M clang/tools/clang-format/ClangFormat.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatReplacementTest.cpp
M clang/unittests/Format/SortImportsTestJava.cpp
M clang/unittests/Format/SortIncludesTest.cpp
Log Message:
-----------
[clang-format][NFC] Upgrade SortIncludes option to a struct (#140497)
This allows adding other suboptions e.g. IgnoreExtension in #137840.
Commit: 38d2306b62d6b0b7cc0a1bc0d73a2f9c8323bd87
https://github.com/llvm/llvm-project/commit/38d2306b62d6b0b7cc0a1bc0d73a2f9c8323bd87
Author: Momchil Velikov <momchil.velikov at arm.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
Log Message:
-----------
[MLIR] Minor fixes to FoldTransposeBroadcast rewrite (#140083)
This patch contains two minor changes, which I believe were the original
author's intent.
* when folding `transpose(broadcast(x))` emit `broadcast(x)` instead of
`broadcast(broadcast(x))`. The latter causes transient verifier
failures with `mlir-opt --debug` , e.g.
```
mlir-asm-printer: 'func.func' failed to verify and will be printed in generic form
"func.func"() <{function_type = (vector<4x1x1x7xi8>) -> vector<3x2x4x5x6x7xi8>, sym_name = "broadcast_transpose_mixed_example"}> ({
^bb0(%arg0: vector<4x1x1x7xi8>):
%0 = "vector.broadcast"(%arg0) : (vector<4x1x1x7xi8>) -> vector<2x3x4x5x6x7xi8>
%1 = "vector.broadcast"(%0) : (vector<2x3x4x5x6x7xi8>) -> vector<3x2x4x5x6x7xi8>
"func.return"(%1) : (vector<3x2x4x5x6x7xi8>) -> ()
}) : () -> ()
```
* when checking permutation groups the variable `low` was set just once
to zero, thus checking was quadratic. It looks the intent was for `low`
to track the beginning of each dimension groups. (Nevertheless the check
was correct).
Commit: b060022103f551d8ca1dad84122ef73927c86512
https://github.com/llvm/llvm-project/commit/b060022103f551d8ca1dad84122ef73927c86512
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M libcxx/utils/ci/docker-compose.yml
Log Message:
-----------
[libc++] Bump GCC_HEAD_VERSION to 16
We need to update or GCC version to be able to upgrade to GCC 15.
Commit: 2483831617a17155afdadc593d227231f83edc05
https://github.com/llvm/llvm-project/commit/2483831617a17155afdadc593d227231f83edc05
Author: Durgadoss R <durgadossr at nvidia.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMDialect.h
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/test/Target/LLVMIR/nvvm/tma_bulk_copy.mlir
Log Message:
-----------
[MLIR][NVVM] Extend TMA Bulk Copy Op (#140232)
This patch extends the non-tensor TMA Bulk Copy Op
(from shared_cta to global) with an optional
byte mask operand. This mask helps selectively
copy a particular byte to the destination.
* lit tests are added to verify the lowering to the intrinsics.
Signed-off-by: Durgadoss R <durgadossr at nvidia.com>
Commit: 3a86e0bd29f30d9fc9aea91d481372a1f8f69014
https://github.com/llvm/llvm-project/commit/3a86e0bd29f30d9fc9aea91d481372a1f8f69014
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/include/istream
M libcxx/include/streambuf
A libcxx/test/benchmarks/streams/getline.bench.cpp
M libcxx/test/std/strings/basic.string/string.nonmembers/string.io/get_line.pass.cpp
A libcxx/test/support/stream_types.h
Log Message:
-----------
[libc++] Optimize std::getline (#121346)
```
-----------------------------------------------
Benchmark old new
-----------------------------------------------
BM_getline_string 318 ns 32.4 ns
```
Commit: 172c2817e5912901f65bd7a43f6df559fb5fcfd3
https://github.com/llvm/llvm-project/commit/172c2817e5912901f65bd7a43f6df559fb5fcfd3
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
Log Message:
-----------
[clang][bytecode] Use a SmallVector for EvalEmitter's locals (#140513)
The offset we return for them are just indices, so we can use a vector
here.
Commit: 1b711b27d20500639e42fb866e3a20ef8d39326c
https://github.com/llvm/llvm-project/commit/1b711b27d20500639e42fb866e3a20ef8d39326c
Author: Mel Chen <mel.chen at sifive.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Clean up the function VPInstruction::generate for ComputeReductionResult, nfc (#140245)
When reducing unrolled parts, explicitly check for min/max reductions
using the function RecurrenceDescriptor::isMinMaxRecurrenceKind. Only if
the reduction is not min/max reduction, call
RecurrenceDescriptor::getOpcode() to handle other cases via CreateBinOp.
Based on https://github.com/llvm/llvm-project/pull/140242
Related to https://github.com/llvm/llvm-project/pull/118393
Commit: bca39f4e8f79c84b66a51a87d7ae8ecc4b0fe436
https://github.com/llvm/llvm-project/commit/bca39f4e8f79c84b66a51a87d7ae8ecc4b0fe436
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/test/AST/ByteCode/lifetimes.cpp
Log Message:
-----------
[clang][bytecode] Add a scope to function calls (#140441)
We need a place to destroy the temporaries created for call arguments.
Commit: 1ead4a8a85b7708f731bce83a22d807c0eded9ea
https://github.com/llvm/llvm-project/commit/1ead4a8a85b7708f731bce83a22d807c0eded9ea
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/IR/Value.def
Log Message:
-----------
IR: Reorder ConstantData enum values (#138638)
This sorts ConstantData to the low values, so we can perform
a hasUseList check in a single compare instead of requiring 2
compares plus an and for the range check.
Commit: 868e1fc1f9cdc6bd108e4873a21e194da272628f
https://github.com/llvm/llvm-project/commit/868e1fc1f9cdc6bd108e4873a21e194da272628f
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/IR/Value.h
Log Message:
-----------
IR: Remove redundant UseList check in addUse (#138676)
Not sure if this did anything for compile time or not.
Commit: cc51cbe27877aa7cc297f7e41afa5515edabcbdc
https://github.com/llvm/llvm-project/commit/cc51cbe27877aa7cc297f7e41afa5515edabcbdc
Author: Hubert Tong <hubert.reinterpretcast at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/test/Driver/no-integrated-cpp.c
Log Message:
-----------
[clang][Driver][test][NFC] Adjust test for targets with no cc1as (#140490)
Have the test accept use of the toolchain assembler instead of `-cc1as`
as some targets, such as AIX, do not use `-cc1as`.
Commit: c27e10fa65f76f5868da14c818f7cd021624ae8f
https://github.com/llvm/llvm-project/commit/c27e10fa65f76f5868da14c818f7cd021624ae8f
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
A libclc/clc/include/clc/math/clc_erf.h
A libclc/clc/include/clc/math/clc_erfc.h
M libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/generic/math/clc_erf.cl
A libclc/clc/lib/generic/math/clc_erfc.cl
M libclc/generic/lib/math/erf.cl
M libclc/generic/lib/math/erfc.cl
Log Message:
-----------
[libclc] Mov erf & erfc to CLC library (#140524)
This completes the set of maths builtins.
No attempt to vectorize or optimize this code. The implementation is
licensed to SunPro so will probably need to be replaced at some point in
the future anyway. Calls to other builtins have been replaced with the
CLC equivalents, and some bit-hacking was replaced with the fabs
builtin.
Commit: c28d6c2f5fefa13e7c7efd245ace2698e47a494c
https://github.com/llvm/llvm-project/commit/c28d6c2f5fefa13e7c7efd245ace2698e47a494c
Author: Ming-Yi Lai <ming-yi.lai at mediatek.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/Basic/Targets/RISCV.cpp
A clang/test/Preprocessor/riscv-cf-protection-branch.c
Log Message:
-----------
[Clang][RISCV] Add Zicfilp CFI unlabeled scheme preprocessor macros (#109600)
This patch adds preprocessor macros when Zicfilp CFI is enabled. To be
specific:
+ `#define __riscv_landing_pad 1` when `-fcf-protection=[full|branch]`
+ `#define __riscv_landing_pad_unlabeled 1` when
`-fcf-protection=[full|branch] -mcf-branch-label-scheme=unlabeled`
The macros are proposed in riscv-non-isa/riscv-c-api-doc#76 , and the
CLI flags are from riscv-non-isa/riscv-toolchain-conventions#54.
Commit: 61d3ad963c9a8764a20c01c26374000d9ba5975d
https://github.com/llvm/llvm-project/commit/61d3ad963c9a8764a20c01c26374000d9ba5975d
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolutionPatternMatch.h
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
Log Message:
-----------
[SCEVPatternMatch] Introduce m_scev_AffineAddRec (#140377)
Introduce m_scev_AffineAddRec to match affine AddRecs, a class_match for
SCEVConstant, and demonstrate their utility in LSR and SCEV. While at
it, rename m_Specific to m_scev_Specific for clarity.
Commit: d0ee35851bb9fca4ee6c53dc1cc081d999a95e65
https://github.com/llvm/llvm-project/commit/d0ee35851bb9fca4ee6c53dc1cc081d999a95e65
Author: Noam Zaks <63877260+noamzaks at users.noreply.github.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/IRDL/IR/IRDLOps.td
Log Message:
-----------
Fix typo in IRDL docs (#140460)
Rename "can has" -> to "has".
And replace a "can have" with a "has" to make it explicit that something is required.
Commit: 572add06012036366e02ff5fe6be8e0bd803b157
https://github.com/llvm/llvm-project/commit/572add06012036366e02ff5fe6be8e0bd803b157
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/SemaCXX/consteval-assert.cpp
Log Message:
-----------
[clang][bytecode] Diagnose failed constexpr assertions differently (#140000)
Adjust to the new way the ast walker is doing it.
Commit: d067014f13871642888afde850cdc558c32f350c
https://github.com/llvm/llvm-project/commit/d067014f13871642888afde850cdc558c32f350c
Author: Liam Semeria <56208783+liamsemeria at users.noreply.github.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/ADT/APInt.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/Support/APInt.cpp
M llvm/unittests/ADT/APIntTest.cpp
Log Message:
-----------
[APInt] Added APInt::clearBits() method (#137098)
Added APInt::clearBits(unsigned loBit, unsigned hiBit) that clears bits within a certain range.
Fixes #136550
---------
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Commit: 416b7dfaa0d114b552c596d320f0aaac5651e61e
https://github.com/llvm/llvm-project/commit/416b7dfaa0d114b552c596d320f0aaac5651e61e
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M flang/include/flang/Optimizer/CodeGen/FIROpPatterns.h
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/copy-codegen.fir
M flang/test/Fir/embox-char.fir
M flang/test/Fir/embox-substring.fir
Log Message:
-----------
[flang] use DataLayout instead of GEP to compute element size (#140235)
Now that the datalayout is part of codegen, use that to generate type
size constants in codegen instead of generating GEP.
Commit: e8a307498d678970e0be8cd7718ba0779d5ee307
https://github.com/llvm/llvm-project/commit/e8a307498d678970e0be8cd7718ba0779d5ee307
Author: William <113542065+saturn691 at users.noreply.github.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M compiler-rt/lib/builtins/extendhfsf2.c
M compiler-rt/lib/builtins/truncsfhf2.c
Log Message:
-----------
[builtins][AArch32] Fix __gnu_* functions (#137638)
Move to a consistent calling convention for both Clang/GNU such that
they can be linked with each other.
All ARM targets now use the soft-float calling convention for
`__gnu_h2f_ieee` and `__gnu_f2h_ieee`, as described in
https://github.com/ARM-software/abi-aa/blob/main/rtabi32/rtabi32.rst#the-floating-point-helper-functions.
Commit: 70501ed2f0f9dc06baffa7ee124845e40687675b
https://github.com/llvm/llvm-project/commit/70501ed2f0f9dc06baffa7ee124845e40687675b
Author: Sam Tebbs <samuel.tebbs at arm.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reg-usage.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-known-trip-count.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-types.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
M llvm/test/Transforms/LoopVectorize/ARM/tail-folding-reduces-vf.ll
M llvm/test/Transforms/LoopVectorize/RISCV/inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage-bf16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage-f16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-4.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-5.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-6.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-7.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-8.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f64-stride-3.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f64-stride-4.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f64-stride-5.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f64-stride-6.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f64-stride-7.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f64-stride-8.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-half.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i16-stride-8.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-4-indices-012u.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-4.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-5.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-6.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-7.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-8.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i64-stride-3.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i64-stride-4.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i64-stride-7.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i64-stride-8.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f64-stride-8.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i64-stride-8.ll
M llvm/test/Transforms/LoopVectorize/X86/CostModel/masked-scatter-i64-with-i8-index.ll
M llvm/test/Transforms/LoopVectorize/X86/reg-usage.ll
Log Message:
-----------
[LoopVectorizer] Prune VFs based on plan register pressure (#132190)
This PR moves the register usage checking to after the plans are
created, so that any recipes that optimise register usage (such as
partial reductions) can be properly costed and not have their VF pruned
unnecessarily.
Depends on https://github.com/llvm/llvm-project/pull/137746
Commit: 52e1995eca35da79d27576b94b614a7fd2420c41
https://github.com/llvm/llvm-project/commit/52e1995eca35da79d27576b94b614a7fd2420c41
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512f.ll
Log Message:
-----------
[X86] Add tests showing failure to combine AVX512 shuffles to match "cross lane" SHLDQ/SRLDQ patterns using VALIGN
We match two input shuffles, but not if one input is zero
Commit: 992458d26bbd2b8744408dbb4ab8d6b6058301d6
https://github.com/llvm/llvm-project/commit/992458d26bbd2b8744408dbb4ab8d6b6058301d6
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsRISCV.td
Log Message:
-----------
[RISCV][NFC] Fix the mismatch in comment (#140511)
There should be only one `vector_in`.
And we remove the surrounding double quotes.
Commit: 6d8a52146c853e74727d8f000dc6236781aa45dd
https://github.com/llvm/llvm-project/commit/6d8a52146c853e74727d8f000dc6236781aa45dd
Author: Bart Chrzaszcz <bartchr at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/LLVMInterfaces.cpp
Log Message:
-----------
[mlir] Fix bazel build after `c798e19`. (#140537)
`@llvm-project//mlir:LLVMDialect` builds fine without the header. Don't
think it was needed.
Commit: c56e7f22f06ac52d2ef3ea487910ab60a1256138
https://github.com/llvm/llvm-project/commit/c56e7f22f06ac52d2ef3ea487910ab60a1256138
Author: Christian Sigg <csigg at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/test/Dialect/Arith/canonicalize.mlir
Log Message:
-----------
[mlir][arith] Canonicalize sitofp(truncf) -> sitofp, and uitofp. (#139925)
Add a canonicalization patterns that simplifies `truncf(sitofp(x))` to
`sitofp(x)` and `truncf(uitofp(x))` to `uitofp(x)`, if truncf has default rounding mode.
This assumes that the destination type of truncf is representable by the
intermediate type.
Note that the truncf semantics requires that the destination type is
narrower than the source type, so this is true for all types I can
possibly think of, but one could probably construct an artificial
counter example.
Somewhat related: https://github.com/llvm/llvm-project/pull/128096
Commit: 25da043c55e25d066a5aa8af6ca14cf82a845eb2
https://github.com/llvm/llvm-project/commit/25da043c55e25d066a5aa8af6ca14cf82a845eb2
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lldb/source/Expression/FunctionCaller.cpp
Log Message:
-----------
[lldb] Use llvm::is_contained (NFC) (#140466)
Commit: 52ca511f64bc5b0e8cbbefb0c396fe9481fb4b04
https://github.com/llvm/llvm-project/commit/52ca511f64bc5b0e8cbbefb0c396fe9481fb4b04
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
Log Message:
-----------
[mlir] Use llvm::is_contained (NFC) (#140467)
Commit: 2a277f9ff1c793e25167537b0202f333f8f91f60
https://github.com/llvm/llvm-project/commit/2a277f9ff1c793e25167537b0202f333f8f91f60
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/APINotes/APINotesReader.cpp
M clang/lib/AST/Type.cpp
Log Message:
-----------
[clang] Use llvm::is_sorted (NFC) (#140468)
Commit: 325281631a3b5c089dd732d9ca10704431447859
https://github.com/llvm/llvm-project/commit/325281631a3b5c089dd732d9ca10704431447859
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/AST/DeclBase.cpp
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/SourceManager.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/Lex/PPLexerChange.cpp
M clang/lib/Lex/Preprocessor.cpp
M clang/lib/Sema/SemaDecl.cpp
Log Message:
-----------
[clang] Use *Map::try_emplace (NFC) (#140477)
We can simplify the code with *Map::try_emplace where we need
default-constructed values while avoding calling constructors when
keys are already present.
Commit: 91a7085faf268b595e597fa2a2b979ca7b8de0a8
https://github.com/llvm/llvm-project/commit/91a7085faf268b595e597fa2a2b979ca7b8de0a8
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lld/COFF/LLDMapFile.cpp
M lld/ELF/SyntheticSections.cpp
M lld/wasm/Writer.cpp
Log Message:
-----------
[lld] Use llvm::stable_sort (NFC) (#140488)
Commit: 2c6b239cc6102398701359dddda8023d26fcb95d
https://github.com/llvm/llvm-project/commit/2c6b239cc6102398701359dddda8023d26fcb95d
Author: Sebastian Pop <spop at nvidia.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/Analysis/DependenceAnalysis.h
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
A llvm/test/Analysis/DependenceAnalysis/DifferentAccessSize.ll
A llvm/test/Analysis/DependenceAnalysis/DifferentOffsets.ll
M llvm/test/Analysis/DependenceAnalysis/MIVCheckConst.ll
Log Message:
-----------
[DA] handle memory accesses with different offsets and strides (#123436)
This patch corrects the behavior of the Dependence Analysis for memory
accesses that do not start at the same offset or do not have similar
strides. When offsets or strides cannot be disambiguated at compile
time, DA collects a set of runtime assumptions under which the
dependence test becomes valid. The default remains the same as before
the patch: DA rejects the dependence test as undecidable instead of
collecting runtime assumptions.
---------
Co-authored-by: Michael Kruse <github at meinersbur.de>
Co-authored-by: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Commit: 4bdd116b80670cf74ced3e36def6ca09169ff7ac
https://github.com/llvm/llvm-project/commit/4bdd116b80670cf74ced3e36def6ca09169ff7ac
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/Sema/SemaAMDGPU.cpp
A clang/test/CodeGenHIP/amdgpu-load-to-lds.hip
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx950.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-load-to-lds.cl
A clang/test/SemaOpenCL/builtins-amdgcn-load-to-lds-err.cl
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.to.lds.gfx950.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.to.lds.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-mem-transfer.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/mem-intrinsics.ll
M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
M mlir/test/Conversion/AMDGPUToROCDL/load_lds.mlir
M mlir/test/Dialect/LLVMIR/rocdl.mlir
M mlir/test/Target/LLVMIR/rocdl.mlir
Log Message:
-----------
[AMDGPU] Add a new amdgcn.load.to.lds intrinsic (#137425)
This PR adds a amdgns_load_to_lds intrinsic that abstracts over loads to
LDS from global (address space 1) pointers and buffer fat pointers
(address space 7), since they use the same API and "gather from a
pointer to LDS" is something of an abstract operation.
This commit adds the intrinsic and its lowerings for addrspaces 1 and 7,
and updates the MLIR wrappers to use it (loosening up the restrictions
on loads to LDS along the way to match the ground truth from target
features).
It also plumbs the intrinsic through to clang.
Commit: 1532ee6916ef16627bafddced391c0b5a31390fe
https://github.com/llvm/llvm-project/commit/1532ee6916ef16627bafddced391c0b5a31390fe
Author: Ross Brunton <ross at codeplay.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
A offload/include/Shared/OffloadErrcodes.inc
A offload/include/Shared/OffloadError.h
M offload/liboffload/API/CMakeLists.txt
M offload/liboffload/API/Common.td
M offload/liboffload/include/OffloadImpl.hpp
M offload/liboffload/include/generated/OffloadAPI.h
M offload/liboffload/include/generated/OffloadPrint.hpp
M offload/plugins-nextgen/common/CMakeLists.txt
M offload/plugins-nextgen/common/include/PluginInterface.h
A offload/plugins-nextgen/common/src/OffloadError.cpp
M offload/tools/offload-tblgen/CMakeLists.txt
R offload/tools/offload-tblgen/FuncsGen.cpp
M offload/tools/offload-tblgen/Generators.hpp
A offload/tools/offload-tblgen/MiscGen.cpp
M offload/tools/offload-tblgen/offload-tblgen.cpp
Log Message:
-----------
[Offload] Add Error Codes to PluginInterface (#138258)
A new ErrorCode enumeration is present in PluginInterface which can
be used when returning an llvm::Error from offload and PluginInterface
functions.
This enum must be kept up to sync with liboffload's ol_errc_t enum, so
both are automatically generated from liboffload's enum definition.
Some error codes have also been shuffled around to allow for future
work. Note that this patch only adds the machinery; actual error codes
will be added in a future patch.
~~Depends on #137339 , please ignore first commit of this MR.~~ This has
been merged.
Commit: f3d36b15f6dde7ca2d080279274d5d0f4bfc8c30
https://github.com/llvm/llvm-project/commit/f3d36b15f6dde7ca2d080279274d5d0f4bfc8c30
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/test/CodeGen/X86/fcmp-logic.ll
Log Message:
-----------
[X86] Add test coverage for #140534
Commit: 59f8af35b6bb15c0794873786cb34c7867be357b
https://github.com/llvm/llvm-project/commit/59f8af35b6bb15c0794873786cb34c7867be357b
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/include/clang/AST/DeclFriend.h
M clang/include/clang/AST/DeclGroup.h
M clang/include/clang/AST/DeclObjC.h
M clang/lib/AST/DeclGroup.cpp
Log Message:
-----------
[NFC][Clang] Adopt simplified `getTrailingObjects` in DeclFriend (#140081)
- Adopt non-templated `getTrailingObjects` in DeclFriend, DeclGroup, and
DeclObjC
- Use indexing into ArrayRef returned by `getTrailingObjects` and
eliminate explicit OOB asserts.
Commit: dc25ab389c2d441ba378d4db56a4a61e3eedb889
https://github.com/llvm/llvm-project/commit/dc25ab389c2d441ba378d4db56a4a61e3eedb889
Author: Vy Nguyen <vyng at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lldb/source/Commands/CommandObjectSource.cpp
A lldb/test/Shell/Commands/list-header.test
Log Message:
-----------
[lldb]Make `list` command work with headers when possible. (#139002)
Given this simple test case:
```
// foo.h
extern int* ptr;
inline void g(int x) {
*ptr = x; // should raise a SIGILL
}
//--------------
// foo.cc
#include "foo.h"
int* ptr;
//--------------
// main.cc
#include "foo.h"
int main() {
g(123); // Call the inlined function and crash
return 0;
}
$ clang -g main.cc foo.cc -o main.out
$ lldb main.out
```
When you run `main.out` under lldb, it'd stop inside `void g(int)`
because of the crash.
The stack trace would show that it had crashed in `foo.h`, but if you do
`list foo.h:2`, lldb would complain that it could not find the source
file, which is confusing.
This patch make `list` work with headers.
Commit: bb92c80dbb09e4d958d8c3c6bfc21570916d5f0e
https://github.com/llvm/llvm-project/commit/bb92c80dbb09e4d958d8c3c6bfc21570916d5f0e
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
Log Message:
-----------
[clang][bytecode][NFC] Simplify VisitCompoundLiteralExpr (#140547)
Commit: 3b93122907ec9d7c283398332051943964df8c9a
https://github.com/llvm/llvm-project/commit/3b93122907ec9d7c283398332051943964df8c9a
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.h
M clang/test/AST/ByteCode/cxx11.cpp
Log Message:
-----------
[clang][bytecode] Do not diagnose volatile reads in CPCE mode (#140546)
This matches the diagnostic output of the current interpreter.
Commit: f85d03c21518fa87239fa4e2d23267d0d5af9cf6
https://github.com/llvm/llvm-project/commit/f85d03c21518fa87239fa4e2d23267d0d5af9cf6
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/include/clang/AST/DeclOpenACC.h
M clang/include/clang/AST/StmtOpenACC.h
M clang/lib/AST/StmtOpenACC.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
Log Message:
-----------
[NFC][Clang] Adopt simplified `getTrailingObjects` in Decl/StmtOpenACC (#140087)
Adopt non-templated and array-ref returning forms of
`getTrailingObjects` in DeclOpenACC and StmtOpenACC. Also use
std::uninitialized_contruct_n to make the code a little concise.
Commit: 37ece04e096b76eef5f3cf7241ea3ff0d212a8ed
https://github.com/llvm/llvm-project/commit/37ece04e096b76eef5f3cf7241ea3ff0d212a8ed
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/include/clang/AST/Expr.h
M clang/lib/AST/Expr.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
Log Message:
-----------
[NFC][Clang] Adopt simplified `getTrailingObjects` in Expr.cpp/h (#140102)
Adopt non-templated and array-ref returning forms of
`getTrailingObjects` in Expr.cpp/.h.
Use ArrayRef forms to eliminate manual asserting for OOB index. Use
llvm::copy() instead of std::copy() in some instances.
Commit: 7cf2860cbdc158a04d4a982fa7043cd9e6401e77
https://github.com/llvm/llvm-project/commit/7cf2860cbdc158a04d4a982fa7043cd9e6401e77
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDecl.cpp
A clang/test/SemaCXX/thread-specifier.cpp
Log Message:
-----------
[C++] Fix a crash with __thread and dependent types (#140542)
We were checking whether the initializer is a valid constant expression
even if the variable was dependent. Now we delay that checking until
after the template has been instantiated.
Fixes #140509
Commit: d34e28eaf97840bd5573dfc3b11a82d795b31b87
https://github.com/llvm/llvm-project/commit/d34e28eaf97840bd5573dfc3b11a82d795b31b87
Author: Lucie Tvrznikova <tvrz at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObject.h
Log Message:
-----------
addinitional -> additional typo fix
Commit: 21b4059b3c89641f7c996fcab493583cb3721e27
https://github.com/llvm/llvm-project/commit/21b4059b3c89641f7c996fcab493583cb3721e27
Author: Koakuma <koachan at protonmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcInstPrinter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcInstPrinter.h
M llvm/lib/Target/Sparc/SparcInstrInfo.td
M llvm/test/MC/Disassembler/Sparc/sparc.txt
M llvm/test/MC/Sparc/Misc/little-endian.s
M llvm/test/MC/Sparc/Relocations/expr.s
M llvm/test/MC/Sparc/Relocations/relocation.s
M llvm/test/MC/Sparc/sparc64-bpr-offset.s
Log Message:
-----------
[SPARC] Print target address when disassembling branches and calls (#140340)
Similar to https://reviews.llvm.org/D93241, print target addresses
instead of raw offset values when disassembling branches and calls.
Should fix https://github.com/llvm/llvm-project/issues/122196 and
https://github.com/llvm/llvm-project/issues/139284.
Commit: 35a9631279268b6d3d0f0826da0c09e78db6529a
https://github.com/llvm/llvm-project/commit/35a9631279268b6d3d0f0826da0c09e78db6529a
Author: Rohit Aggarwal <44664450+rohitaggarwal007 at users.noreply.github.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/masked_gather_scatter.ll
Log Message:
-----------
[X86][SelectionDAG] Handle the case for gather where index is SHL (#139703)
Fix the Gather's Index for SHL Opcode in which shift amount is 4 or greater.
It is in the continuity of #137813
---------
Co-authored-by: Rohit Aggarwal <Rohit.Aggarwal at amd.com>
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Commit: e8a2ce1e9c9db26f2adf4ea6c65eea0299d3a211
https://github.com/llvm/llvm-project/commit/e8a2ce1e9c9db26f2adf4ea6c65eea0299d3a211
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
Log Message:
-----------
[AArch64] When printing SYS aliases, use explicit `NeedsReg` flag from tablegen (NFC) (#140484)
Currently, when printing SYS aliases, the first instruction operand is
compared with the string constant "all" to decide if a register needs to
be parsed as the next operand.
For example, `TLBI VMALLE1IS` contains "all" so no register is expected,
but `TLBI IPAS2E1IS` doesn't match, so a register is expected.
Future AArch64 SYS aliases won't always match this pattern, so use the
(already provided) explicit `NeedsReg` bit flag provided in tablegen to
check if a register is required to be parsed. This is already used by
the code in `AArch64InstPrinter.cpp`, so now we are consistent in this
source file too.
No test files have been changed, since this is a non-functional change,
and all AArch64 test cases continue to pass after this change.
Commit: 5c3784023fcfa608d24364ca11cd688c5805a55e
https://github.com/llvm/llvm-project/commit/5c3784023fcfa608d24364ca11cd688c5805a55e
Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
A llvm/test/CodeGen/AMDGPU/unfold-masked-merge-scalar-variablemask.ll
Log Message:
-----------
[NFC][AMDGPU] Add test for unfold-masked-merge-scalar-variablemask.ll (#140093)
This enables DAGCombine to recognize and form and_not + or patterns when
hasAndNot is true, allowing better SALU codegen for masked merge idioms.
For example:
(A & (B ^ C)) ^ C → (A & B) | (~A & C)
References:
* https://reviews.llvm.org/D45563#change-EG4Z6zDTofCc
* https://bugs.llvm.org/show_bug.cgi?id=6773
* https://graphics.stanford.edu/~seander/bithacks.html#MaskedMerge
Commit: 12fb0d451bbdd1d1e8035197e4f5e47e8afa6141
https://github.com/llvm/llvm-project/commit/12fb0d451bbdd1d1e8035197e4f5e47e8afa6141
Author: Deric C. <cheung.deric at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILLegalizePass.cpp
A llvm/test/CodeGen/DirectX/legalize-memcpy.ll
Log Message:
-----------
[DirectX] Legalize memcpy (#139173)
Fixes #137188
This PR legalizes memcpy for DXIL in cases where:
- the src and dst arguments are from Alloca or a GlobalVariable,
- the src and dst are pointers to an ArrayType,
- the array element types of src and dst must be equivalent, and
- the len param is a ConstantInt
These assumptions simplify the legalization and, with the addition of
#138991, covers the currently-known cases of memcpy that appear when
compiling DML shaders.
This PR may be unnecessary if #138788 determines that memset and memcpy
can be eliminated entirely.
---------
Co-authored-by: Finn Plummer <canadienfinn at gmail.com>
Co-authored-by: Greg Roth <grroth at microsoft.com>
Commit: b24c33a9d745bd2a3009f1d52f31247772e954e5
https://github.com/llvm/llvm-project/commit/b24c33a9d745bd2a3009f1d52f31247772e954e5
Author: Thurston Dang <thurston at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/test/CodeGen/cfi-check-fail-debuginfo.c
M clang/test/CodeGen/cfi-icall-generalize-debuginfo.c
M clang/test/CodeGen/cfi-icall-normalize2-debuginfo.c
Log Message:
-----------
[cfi] Enable -fsanitize-annotate-debug-info functionality for CFI checks (#139809)
This connects the -fsanitize-annotate-debug-info plumbing (https://github.com/llvm/llvm-project/pull/138577) to CFI check codegen, using SanitizerAnnotateDebugInfo() (https://github.com/llvm/llvm-project/pull/139965) and SanitizerInfoFromCFIKind (https://github.com/llvm/llvm-project/pull/140117).
Note: SanitizerAnnotateDebugInfo() is updated to a public function because it is needed in ItaniumCXXABI.
Updates the tests from https://github.com/llvm/llvm-project/pull/139149.
Commit: e3950a049a8f098b8d28a9c89fe3f21f5c0b1682
https://github.com/llvm/llvm-project/commit/e3950a049a8f098b8d28a9c89fe3f21f5c0b1682
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/Sema/SemaOpenACCClause.cpp
A clang/test/SemaOpenACC/gh140339.cpp
Log Message:
-----------
[OpenACC] Fix 'vector' checking when inside combined construct
For some reason when implementing 'vector' I didn't include switch
entries for the combined constructs. I audited the rest of the uses of
this pattern, and got it right everywhere else, so I'm not sure why I
missed it here.
Fixes: #140339
Commit: e33e623cdf188faf56da62677910c707a7e94bf7
https://github.com/llvm/llvm-project/commit/e33e623cdf188faf56da62677910c707a7e94bf7
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/test/CodeGen/NVPTX/div.ll
Log Message:
-----------
[NVPTX] Consistently check fast-math flags when lowering div (#136890)
When choosing the `div.*` variant during ISel, check the
instruction-level fast-math flags.
Commit: f3f63ce50ac776bed53aa0c1163db6d5ed25196d
https://github.com/llvm/llvm-project/commit/f3f63ce50ac776bed53aa0c1163db6d5ed25196d
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
Log Message:
-----------
[CIR][LLVMLowering] Upstream binary operators for VectorType (#140099)
This change adds support for binary ops for VectorType
Issue https://github.com/llvm/llvm-project/issues/136487
Commit: db4c94f96410fd4432f8de9e9b1dec44ca07b6d8
https://github.com/llvm/llvm-project/commit/db4c94f96410fd4432f8de9e9b1dec44ca07b6d8
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.h
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACCLoop.cpp
A clang/test/CIR/CodeGenOpenACC/compute-copy.c
Log Message:
-----------
[OpenACC][CIR] Implement beginning of 'copy' lowering for compute con… (#140304)
…structs
This is a partial implementation of the 'copy' lowering. It is missing 3
things, which are coming in future patches:
1- does not handle subscript/subarrays for emission as variables 2- does
not handle member expressions for emissions as variables 3- does not
handle modifier-list
1 and 2 are because of the complexity and should be split off into a
separate patch. 3 is because it isn't clear how the IR is going to
handle this, and I'd like to make sure it gets done 'all at once' when
the IR is updated to handle these, so I'm pushing that off to the
future.
This DOES however handle the complexity of having a acc.copyin and
acc.copyout, plus the additional complexity of the 'async' clause.
Commit: 1b44eb2f6b862fb171629321bf2f5ec231899c71
https://github.com/llvm/llvm-project/commit/1b44eb2f6b862fb171629321bf2f5ec231899c71
Author: Vy Nguyen <vyng at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lldb/test/Shell/Commands/list-header.test
Log Message:
-----------
[lldb][nfc]Temporarily disable test on non-x86 because output-redirec… (#140585)
because output-redirection doesn't work properly
Commit: 7a242387c950c7060143da6da0e6fb91f36bb458
https://github.com/llvm/llvm-project/commit/7a242387c950c7060143da6da0e6fb91f36bb458
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang/include/clang/Serialization/ModuleCache.h
M clang/include/clang/Serialization/ModuleFile.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
M clang/include/clang/Tooling/DependencyScanning/InProcessModuleCache.h
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ModuleCache.cpp
M clang/lib/Serialization/ModuleManager.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp
Log Message:
-----------
Reland "[clang][modules] Timestamp-less validation API (#139987)"
This reverts commit 18b885f66babff3a10451bc811ffc077d61ed8ee, effectively reapplying #139987. This commit fixes unit tests (for example ASTUnitTest.SaveLoadPreservesLangOptionsInPrintingPolicy) where the `ASTUnit::ModCache` pointer dereferenced within `ASTUnit::serialize()` was null. This commit makes sure each factory function does initialize `ASTUnit::ModCache`.
Commit: 77de8a0c0abc9d245a7c6278670554b47ae183ea
https://github.com/llvm/llvm-project/commit/77de8a0c0abc9d245a7c6278670554b47ae183ea
Author: choikwa <5455710+choikwa at users.noreply.github.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/AMDGPU.cpp
A clang/test/CodeGen/logb_scalbn.c
Log Message:
-----------
[AMDGPU][clang] provide device implementation for __builtin_logb and … (#129347)
…__builtin_scalbn
Clang generates library calls for __builtin_* functions which can be a
problem for GPUs that cannot handle them. This patch generates call to
device implementation for __builtin_logb and ldexp intrinsic for
__builtin_scalbn.
Commit: 3bae8e2ef2ff02dcba745cb47ea1264fd08885cc
https://github.com/llvm/llvm-project/commit/3bae8e2ef2ff02dcba745cb47ea1264fd08885cc
Author: nerix <nerixdev at outlook.de>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lldb/test/API/CMakeLists.txt
M lldb/test/API/lit.site.cfg.py.in
Log Message:
-----------
[lldb] Suppport testing with debug-python on Windows (#140443)
When trying to run the LLDB API tests on Windows with a debug
configuration, they fail, because the `_lldb` module won't be found. As
explained in https://github.com/llvm/llvm-project/issues/51272, this is
because lit will run the test with `python.exe` but the module is built
for the debug version of python, `python_d.exe`.
CMake already resolved the debug executable in
`Python3_EXECUTABLE_DEBUG`, so this PR changes the
`config.python_executable` to point to `python_d.exe` on Windows in
debug mode.
The check is equivalent to the one done in the top-level LLDB CMakeLists
[when setting the python
suffix](https://github.com/llvm/llvm-project/blob/3ccb15d6caf57f2a866d496ada2fb52d14b179d2/lldb/CMakeLists.txt#L79-L86).
Commit: dd0a1c56df90f5ff2b4d6a5fba2e28b2e05d6450
https://github.com/llvm/llvm-project/commit/dd0a1c56df90f5ff2b4d6a5fba2e28b2e05d6450
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/Support/ScaledNumber.h
M llvm/lib/Support/ScaledNumber.cpp
Log Message:
-----------
[llvm] revert preprocessor dump method guards from llvm::ScaledNumber (#140574)
## Purpose
Reverts the preprocessor guards added to the `dump()` methods in
`llvm/Support/ScaledNumber.h` in #139938 so that the header can be
included when building an external project in debug mode against a
release LLVM build.
## Overview
This is a clean revert of two files modified in #139938. The rest of
that change should not cause similar problems.
## Background
The following new build error was reported on #139938, which was merged
last week:
```
module.cpp:(.text._ZNK4llvm12ScaledNumberImE4dumpEv[_ZNK4llvm12ScaledNumberImE4dumpEv]+0x34): undefined reference to `llvm::ScaledNumberBase::dump(unsigned long, short, int)'
```
See further discussion on #139938.
## Validation
Implemented a simple external LLVM project to reproduce the issue.
Verified the the following link failure is observed on LLVM main
(Windows + Clang) without this change:
```
C:\WINDOWS\system32\cmd.exe /C "cd . && C:\PROGRA~1\LLVM\bin\CLANG_~1.EXE -nostartfiles -nostdlib -O0 -g -Xclang -gcodeview -D_DEBUG -D_DLL -D_MT -Xclang --dependent-lib=msvcrtd -Xlinker /subsystem:console -fuse-ld=lld-link CMakeFiles/llvm-dump-test.dir/main.cxx.obj -o llvm-dump-test.exe -Xlinker /MANIFEST:EMBED -Xlinker /implib:llvm-dump-test.lib -Xlinker /pdb:llvm-dump-test.pdb -Xlinker /version:0.0 -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 -loldnames && cd ."
lld-link: error: undefined symbol: public: static void __cdecl llvm::ScaledNumberBase::dump(unsigned __int64, short, int)
>>> referenced by S:\llvm\llvm-project\llvm\include\llvm\Support\ScaledNumber.h:614
>>> CMakeFiles/llvm-dump-test.dir/main.cxx.obj:(public: void __cdecl llvm::ScaledNumber<unsigned __int64>::dump(void) const)
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.
```
Verified the link issue is resolved after applying this change.
Also, manually included all header files that were modified in #139938
in the test program and verified there are no other link errors.
Commit: b6dfe4dbfecc753a28c82e044e022dff6e7365b1
https://github.com/llvm/llvm-project/commit/b6dfe4dbfecc753a28c82e044e022dff6e7365b1
Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/invalid.mlir
Log Message:
-----------
[mlir][Vector] Fix `vector.mask` parser for incorrect passthru cases (#140319)
This MR fixes a crash when parsing an invalid `vector.mask` with a
passtru operand.
Commit: 99720bbb87d4f1968a3e25075e616063fbc18936
https://github.com/llvm/llvm-project/commit/99720bbb87d4f1968a3e25075e616063fbc18936
Author: Chao Chen <chao.chen at intel.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M mlir/lib/Dialect/Utils/IndexingUtils.cpp
Log Message:
-----------
[MLIR][Utils] Fix the overflow issue in computeSuffixProductImpl for 32-bit system. (#140567)
In `int64_t r = strides.size() - 2`, it may cause overflow on 32-bit
system when strides.size() is 1, because `strides.size()` is defined
as `unsigned int`
Commit: 021443cd2a8127ab0432c5e48f9dbba30d9bc6ce
https://github.com/llvm/llvm-project/commit/021443cd2a8127ab0432c5e48f9dbba30d9bc6ce
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ExprConstant.cpp
M clang/test/SemaCXX/constant-expression-p2280r4.cpp
Log Message:
-----------
[clang] fix constexpr-unknown handling of self-references. (#132990)
Usually, in constant evaluation, references which are local to the
evaluation have to be initialized before they're accessed. However,
there's one funny special case: the initializer of a reference can refer
to itself. This generally ends up being undefined behavior if it's used
in an evaluated context, but it isn't otherwise forbidden.
In constant evaluation, this splits into two cases: global variables,
and local variables in constexpr functions. This patch handles both of
those cases. (Local variables tends to trip other errors in most cases,
but if you try hard enough, you can get an accepts-invalid.)
Fixes #131330 .
Commit: fe1c4827b77a8d39bb1462cb4df08f6fe572097a
https://github.com/llvm/llvm-project/commit/fe1c4827b77a8d39bb1462cb4df08f6fe572097a
Author: Vy Nguyen <vyng at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lldb/test/Shell/Commands/list-header.test
Log Message:
-----------
[lldb][nfc]Make test "xfail" on windows (#140588)
Commit: d8665bb76788790b107c2ed455d691c89987f3f3
https://github.com/llvm/llvm-project/commit/d8665bb76788790b107c2ed455d691c89987f3f3
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lldb/unittests/DAP/CMakeLists.txt
A lldb/unittests/DAP/Handler/ContinueTest.cpp
Log Message:
-----------
[lldb-dap] Add ContinueRequestHandler unit test (#140566)
Add a simple unit test for the ContinueRequestHandler that checks that
it returns an error when the (dummy process) is not stopped.
Commit: 811b8090f88afc212f1c9d199780934c677a1f65
https://github.com/llvm/llvm-project/commit/811b8090f88afc212f1c9d199780934c677a1f65
Author: Gergely Futo <gergely.futo at hightec-rt.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/fpenv.ll
Log Message:
-----------
[RISCV] [NFC] Add llvm.get.rounding test (#139921)
Precommit for fixing ReadFRM.
Commit: 175f8a444b296ba956505a5760805f05a175111b
https://github.com/llvm/llvm-project/commit/175f8a444b296ba956505a5760805f05a175111b
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/test/Modules/fmodules-validate-once-per-build-session.c
Log Message:
-----------
[clang] Attempt to fix "test/Modules/fmodules-validate-once-per-build-session.c"
This test started failing after 7a242387: https://lab.llvm.org/buildbot/#/builders/154/builds/16276. There seem to be two bugs:
* The `-fno-modules-force-validate-user-headers` flag was passed on the wrong line.
* Changing source files was being done without an explicit `sleep`, meaning there was a possibility of the files maintaining their old modification time and not triggering the expected rebuilds.
Commit: 0f38543df55575562c75e1227fc9ada22417fa8f
https://github.com/llvm/llvm-project/commit/0f38543df55575562c75e1227fc9ada22417fa8f
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/TableGen/Record.cpp
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
Log Message:
-----------
[NFC][TableGen] Use SmallVector range constructor when possible (#140284)
Initialize vectors using constructor instead of llvm::append_range when
possible.
Commit: 3932360b14c390188977a53ecba6c13fff685aae
https://github.com/llvm/llvm-project/commit/3932360b14c390188977a53ecba6c13fff685aae
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/utils/TableGen/ClangOptionDocEmitter.cpp
M clang/utils/TableGen/NeonEmitter.cpp
M llvm/include/llvm/TableGen/Record.h
M llvm/lib/TableGen/Record.cpp
M llvm/utils/TableGen/AsmMatcherEmitter.cpp
M llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
M llvm/utils/TableGen/CallingConvEmitter.cpp
M llvm/utils/TableGen/CodeGenMapTable.cpp
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
M llvm/utils/TableGen/GlobalISelEmitter.cpp
M llvm/utils/TableGen/OptionParserEmitter.cpp
M mlir/lib/TableGen/AttrOrTypeDef.cpp
M mlir/lib/TableGen/Interfaces.cpp
M mlir/lib/TableGen/Operator.cpp
M mlir/lib/Tools/mlir-tblgen/MlirTblgenMain.cpp
Log Message:
-----------
[LLVM][TableGen] Rename `ListInit::getValues()` to `getElements()` (#140289)
Rename `ListInit::getValues()` to `getElements()` to better match with
other `ListInit` members like `getElement`. Keep `getValues()` for
existing downstream code but mark it deprecated.
Commit: 29fd76777d786ac25fef6b15c99f28c709091eb3
https://github.com/llvm/llvm-project/commit/29fd76777d786ac25fef6b15c99f28c709091eb3
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/test/TableGen/VarLenEncoder.td
M llvm/utils/TableGen/Common/VarLenCodeEmitterGen.cpp
Log Message:
-----------
[NFC][TableGen] Create valid Dag in VarLenCodeEmitter (#140283)
- Set the Dag ArgNames correctly when normalizing the Dag for slice.
- Add unit test to exercise the "slice" hi/lo swap case.
Commit: 322d0197f5c5d4cf3a6bb2d86a0112788fd6c529
https://github.com/llvm/llvm-project/commit/322d0197f5c5d4cf3a6bb2d86a0112788fd6c529
Author: Carlos Galvez <carlosgalvezp at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang-tools-extra/clang-tidy/concurrency/MtUnsafeCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/concurrency/mt-unsafe-glibc.cpp
Log Message:
-----------
[clang-tidy] Do not flag strerror in concurrency-mt-unsafe (#140520)
The docs of the check state:
> Glibc’s list is compiled from GNU web documentation with a search for
MT-Safe tag
And strerror fulfills exactly that:
https://www.gnu.org/software/libc/manual/html_node/Error-Messages.html
> Function: char * strerror (int errnum)
> Preliminary: | MT-Safe | AS-Unsafe heap i18n | AC-Unsafe mem | See
POSIX Safety Concepts.
So concurrency-mt-unsafe should not flag it.
Fixes #140515
---------
Co-authored-by: Carlos Gálvez <carlos.galvez at zenseact.com>
Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>
Commit: 195e640846765402d1a622006e6a9f9fa3192955
https://github.com/llvm/llvm-project/commit/195e640846765402d1a622006e6a9f9fa3192955
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
Log Message:
-----------
[TableGen] Fix the build
This patch fixes:
llvm/utils/TableGen/Common/CodeGenRegisters.cpp:653:57: error:
'getValues' is deprecated: Use getElements instead
[-Werror,-Wdeprecated-declarations]
Commit: 2b7cc2b03ea858633016cd16a1630be7fc0db837
https://github.com/llvm/llvm-project/commit/2b7cc2b03ea858633016cd16a1630be7fc0db837
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx90a.ll
M llvm/test/CodeGen/AMDGPU/operand-folding.ll
M llvm/test/CodeGen/AMDGPU/si-fold-operands-subreg-imm.mir
Log Message:
-----------
AMDGPU: Add more mfma with constant splat input tests (#140581)
Baseline tests for #139317
Commit: 36018494fdb9e92e0f61f6937e5ecd3a4472677f
https://github.com/llvm/llvm-project/commit/36018494fdb9e92e0f61f6937e5ecd3a4472677f
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/test/CodeGen/AMDGPU/constrained-shift.ll
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx90a.ll
M llvm/test/CodeGen/AMDGPU/operand-folding.ll
M llvm/test/CodeGen/AMDGPU/packed-fp32.ll
M llvm/test/CodeGen/AMDGPU/si-fold-operands-subreg-imm.mir
Log Message:
-----------
AMDGPU: Check for subreg match when folding through reg_sequence (#140582)
We need to consider the use instruction's intepretation of the bits,
not the defined immediate without use context. This will regress
some cases where we previously coud match f64 inline constants. We
can restore them by either using pseudo instructions to materialize f64
constants, or recognizing reg_sequence decomposed into 32-bit pieces for them
(which essentially means recognizing every other input is a 0).
Fixes #139908
Commit: 025639bc396f1e0d2ead279c5f345cb381733f16
https://github.com/llvm/llvm-project/commit/025639bc396f1e0d2ead279c5f345cb381733f16
Author: Justin Cady <desk at justincady.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/test/CoverageMapping/terminate-statements.cpp
A compiler-rt/test/profile/Linux/coverage-do-while.c
Log Message:
-----------
[Coverage] Fix mapping for do-while loops with terminating statements (#139777)
The current region mapping for do-while loops that contain statements
such as break or continue results in inaccurate line coverage reports
for the line following the loop.
This change handles terminating statements the same way that other loop
constructs do, correcting the region mapping for accurate reports. It
also fixes a fragile test relying on exact line numbers.
Fixes #139122
Commit: 10d198b32cd0b6aaeeaf1a6217611797c01f47f7
https://github.com/llvm/llvm-project/commit/10d198b32cd0b6aaeeaf1a6217611797c01f47f7
Author: Vy Nguyen <vyng at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lldb/test/Shell/Commands/list-header.test
Log Message:
-----------
[lldb] Update Xfail window (#140599)
Commit: 72b2219b3e2319e29831e4e9b07c440444f3add6
https://github.com/llvm/llvm-project/commit/72b2219b3e2319e29831e4e9b07c440444f3add6
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang/include/clang/Serialization/ModuleCache.h
M clang/include/clang/Serialization/ModuleFile.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
M clang/include/clang/Tooling/DependencyScanning/InProcessModuleCache.h
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ModuleCache.cpp
M clang/lib/Serialization/ModuleManager.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp
Log Message:
-----------
Revert "[clang][modules] Timestamp-less validation API (#139987)"
This reverts commit 7a242387c950c7060143da6da0e6fb91f36bb458. Even after 175f8a44, the Modules/fmodules-validate-once-per-build-session.c test is not fixed on the clang-armv8-quick build bot. (Failure occurs on line 114.)
Commit: 30c990990940c15650ee1a488255a37c7a7af094
https://github.com/llvm/llvm-project/commit/30c990990940c15650ee1a488255a37c7a7af094
Author: Ely Ronnen <elyronnen at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.h
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
M lldb/unittests/DAP/ProtocolTypesTest.cpp
Log Message:
-----------
[lldb-dap] Migrate disassemble request to structured handler (#140482)
Commit: 553d4c1d90d9181b647b2028a90f59cdd8ebcb0b
https://github.com/llvm/llvm-project/commit/553d4c1d90d9181b647b2028a90f59cdd8ebcb0b
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/ADT/APFixedPoint.h
M llvm/include/llvm/ADT/APFloat.h
M llvm/include/llvm/ADT/APInt.h
M llvm/include/llvm/ADT/APSInt.h
M llvm/include/llvm/ADT/DAGDeltaAlgorithm.h
M llvm/include/llvm/ADT/DeltaAlgorithm.h
M llvm/include/llvm/ADT/DeltaTree.h
M llvm/include/llvm/ADT/DynamicAPInt.h
M llvm/include/llvm/ADT/FloatingPointMode.h
M llvm/include/llvm/ADT/FoldingSet.h
M llvm/include/llvm/ADT/IntEqClasses.h
M llvm/include/llvm/ADT/IntervalMap.h
M llvm/include/llvm/ADT/RewriteBuffer.h
M llvm/include/llvm/ADT/RewriteRope.h
M llvm/include/llvm/ADT/SlowDynamicAPInt.h
M llvm/include/llvm/ADT/SmallPtrSet.h
M llvm/include/llvm/ADT/SmallVector.h
M llvm/include/llvm/ADT/Statistic.h
M llvm/include/llvm/ADT/StringExtras.h
M llvm/include/llvm/ADT/StringMap.h
M llvm/include/llvm/ADT/StringRef.h
M llvm/include/llvm/ADT/TrieRawHashMap.h
M llvm/include/llvm/ADT/Twine.h
Log Message:
-----------
[llvm] annotate interfaces in llvm/ADT for DLL export (#136629)
## Purpose
This patch is one in a series of code-mods that annotate LLVM’s public
interface for export. This patch annotates the `llvm/ADT` library. These
annotations currently have no meaningful impact on the LLVM build;
however, they are a prerequisite to support an LLVM Windows DLL (shared
library) build.
## Background
This effort is tracked in #109483. Additional context is provided in
[this
discourse](https://discourse.llvm.org/t/psa-annotating-llvm-public-interface/85307),
and documentation for `LLVM_ABI` and related annotations is found in the
LLVM repo
[here](https://github.com/llvm/llvm-project/blob/main/llvm/docs/InterfaceExportAnnotations.rst).
The bulk of these changes were generated automatically using the
[Interface Definition Scanner (IDS)](https://github.com/compnerd/ids)
tool, followed formatting with `git clang-format`.
The following manual adjustments were also applied after running IDS:
- Add `#include "llvm/Support/Compiler.h"` to files where it was not
auto-added by IDS due to no pre-existing block of include statements.
- Add `LLVM_ABI_FRIEND` to a small number of `friend` function
declarations
- Add `LLVM_ABI` to a subset of private class methods and fields that
require export
## Validation
Local builds and tests to validate cross-platform compatibility. This
included llvm, clang, and lldb on the following configurations:
- Windows with MSVC
- Windows with Clang
- Linux with GCC
- Linux with Clang
- Darwin with Clang
Commit: c92ff61cee858d0b28f2c3187baa29dd61eb6d87
https://github.com/llvm/llvm-project/commit/c92ff61cee858d0b28f2c3187baa29dd61eb6d87
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/Reassociate.h
M llvm/include/llvm/Transforms/Utils/Local.h
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/lib/Transforms/Utils/Local.cpp
Log Message:
-----------
[Local] Move OverflowTracking to Local.h, move logic to helpers (NFC) (#140403)
Move parts of the logic used by Reassociate to OverflowTracking
(mergeFlags & applyFlags) and move the definition to Local.h.
For now it just moves the NUW/NSW handling, as this matches the uses in
LICM. I'll look into the FP math handling separately, as it looks like
there's a difference between Reassociate (takes all flags from I, while
LICM takes the intersection of the flags on both instructions).
PR: https://github.com/llvm/llvm-project/pull/140403
Commit: 114e4508b2fd8df34740572383e749f3184a2a89
https://github.com/llvm/llvm-project/commit/114e4508b2fd8df34740572383e749f3184a2a89
Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
Log Message:
-----------
[CIR] Remove the empty verifier in cir.ifOp (#140457)
The empty verifier is redundant because cir::IfOp has no constraints to
enforce its verify() always succeeds.
Commit: e3b167cb22f4ac09ad39a836105dbdb109124969
https://github.com/llvm/llvm-project/commit/e3b167cb22f4ac09ad39a836105dbdb109124969
Author: Gergely Futo <gergely.futo at hightec-rt.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/test/CodeGen/RISCV/fpenv.ll
Log Message:
-----------
[RISCV] Implement RISCVTargetLowering::getRoundingControlRegisters (#139864)
By adding FRM/FFLAGS as implicit defs, ReadFRM is not optimized out.
Commit: 0b4cfd19f237fbbffb6e49b82dd91ee65e1e43a2
https://github.com/llvm/llvm-project/commit/0b4cfd19f237fbbffb6e49b82dd91ee65e1e43a2
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/fold-addi-loadstore.ll
Log Message:
-----------
[RISCV] Remove stale TODO from test. NFC
MachineSink has folded this ADDI since 5b53fa04db33a931b843b32946065490513484bf.
Commit: a0c515a9ef3be780e2dfd64d86de9e401b137b28
https://github.com/llvm/llvm-project/commit/a0c515a9ef3be780e2dfd64d86de9e401b137b28
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
A clang/lib/CIR/CodeGen/CIRGenCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
A clang/lib/CIR/CodeGen/CIRGenCXXExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.h
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.h
M clang/lib/CIR/CodeGen/CMakeLists.txt
A clang/test/CIR/CodeGen/member-functions.cpp
Log Message:
-----------
[CIR] Upstream support for C++ member function calls (#140290)
This change adds the support needed to handle a C++ member function
call, including arranging the function type with an argument added for
the 'this' parameter. It was necessary to introduce the class to handle
the CXXABI, but at this time no target-specific subclasses have been
added.
Commit: a04cff172f31aaa8c5932cf1b204c161b95b1b0a
https://github.com/llvm/llvm-project/commit/a04cff172f31aaa8c5932cf1b204c161b95b1b0a
Author: Nico Weber <thakis at chromium.org>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/utils/gn/secondary/lldb/test/BUILD.gn
Log Message:
-----------
[gn] port 3bae8e2ef2ff0
Commit: f5609aa1b014bea1eb72a992665c6afa41015794
https://github.com/llvm/llvm-project/commit/f5609aa1b014bea1eb72a992665c6afa41015794
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/allocator-registry.h
M flang-rt/include/flang-rt/runtime/descriptor.h
M flang-rt/include/flang-rt/runtime/reduction-templates.h
M flang-rt/lib/cuda/CMakeLists.txt
M flang-rt/lib/cuda/allocatable.cpp
M flang-rt/lib/cuda/allocator.cpp
M flang-rt/lib/cuda/descriptor.cpp
M flang-rt/lib/cuda/pointer.cpp
M flang-rt/lib/runtime/allocatable.cpp
M flang-rt/lib/runtime/array-constructor.cpp
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/character.cpp
M flang-rt/lib/runtime/copy.cpp
M flang-rt/lib/runtime/derived.cpp
M flang-rt/lib/runtime/descriptor.cpp
M flang-rt/lib/runtime/extrema.cpp
M flang-rt/lib/runtime/findloc.cpp
M flang-rt/lib/runtime/matmul-transpose.cpp
M flang-rt/lib/runtime/matmul.cpp
M flang-rt/lib/runtime/misc-intrinsic.cpp
M flang-rt/lib/runtime/pointer.cpp
M flang-rt/lib/runtime/temporary-stack.cpp
M flang-rt/lib/runtime/tools.cpp
M flang-rt/lib/runtime/transformational.cpp
M flang-rt/unittests/Evaluate/reshape.cpp
M flang-rt/unittests/Runtime/Allocatable.cpp
M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp
M flang-rt/unittests/Runtime/CUDA/AllocatorCUF.cpp
M flang-rt/unittests/Runtime/CUDA/Memory.cpp
M flang-rt/unittests/Runtime/CharacterTest.cpp
M flang-rt/unittests/Runtime/CommandTest.cpp
M flang-rt/unittests/Runtime/TemporaryStack.cpp
M flang-rt/unittests/Runtime/tools.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Runtime/CUDA/allocatable.h
M flang/include/flang/Runtime/CUDA/allocator.h
M flang/include/flang/Runtime/CUDA/pointer.h
M flang/include/flang/Runtime/allocatable.h
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Optimizer/Builder/Runtime/Allocatable.cpp
M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/test/Fir/CUDA/cuda-allocate.fir
M flang/test/Fir/cuf-invalid.fir
M flang/test/Fir/cuf.mlir
M flang/test/HLFIR/elemental-codegen.fir
M flang/test/Lower/CUDA/cuda-allocatable.cuf
M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-declare.f90
M flang/test/Lower/allocatable-polymorphic.f90
M flang/test/Lower/allocatable-runtime.f90
M flang/test/Lower/allocate-mold.f90
M flang/test/Lower/polymorphic.f90
M flang/test/Lower/volatile-allocatable.f90
M flang/test/Transforms/lower-repack-arrays.fir
Log Message:
-----------
[flang][cuda] Use a reference for asyncObject (#140614)
Switch from `int64_t` to `int64_t*` to fit with the rest of the
implementation.
New tentative with some fix. The previous was reverted some time ago.
Reviewed in #138010
Commit: 2dd6a8c35a79710273bb98da8729ec6dea251998
https://github.com/llvm/llvm-project/commit/2dd6a8c35a79710273bb98da8729ec6dea251998
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lldb/tools/lldb-dap/DAP.h
Log Message:
-----------
[lldb-dap] Remove unused enum (NFC)
Commit: f27cfeae6a544775803a50b3ed4c87e9193889a2
https://github.com/llvm/llvm-project/commit/f27cfeae6a544775803a50b3ed4c87e9193889a2
Author: Jacob Lalonde <jalalonde at fb.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lldb/test/API/tools/lldb-dap/progress/TestDAP_Progress.py
M lldb/tools/lldb-dap/ProgressEvent.cpp
Log Message:
-----------
[LLDB][Progress-On-Dap] Have indeterminate progress actually send events. (#140162)
Recently, I got a report how a user 'hung', and come to find out it's
actually because DAP is checking percentage, and on non-deterministic
events, we will effectively never send a progress event to DAP. Here we
short circuit and don't view percentages for DAP messages and solely
depend on the DAP 250ms throttle, which is probably still too
aggressive, but better than no updates.
Commit: 91a45a33fca6f372933c6c796e55550cc40f82d4
https://github.com/llvm/llvm-project/commit/91a45a33fca6f372933c6c796e55550cc40f82d4
Author: Qinkun Bao <qinkun at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
A clang/test/CodeGen/ubsan-src-ignorelist-category.test
Log Message:
-----------
[NFC] Pre-commit UBSAN src:*=sanitize test (#140602)
For https://github.com/llvm/llvm-project/pull/140529
Commit: 2523a8358ab9526a46f825fd94cc8a5d018f5ff7
https://github.com/llvm/llvm-project/commit/2523a8358ab9526a46f825fd94cc8a5d018f5ff7
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lldb/tools/lldb-dap/src-ts/debug-adapter-factory.ts
Log Message:
-----------
[lldb-dap] launch the adapter from the workspace folder. (#140604)
if the `cwd` option is empty this means the adapter is created in the
home folder.
Any relative file saved is in the home folder. The files should be
relative to the current workspace folder.
Commit: b93bc773f86b3746f8023c5dda9a8ab892fa0499
https://github.com/llvm/llvm-project/commit/b93bc773f86b3746f8023c5dda9a8ab892fa0499
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/test/CodeGen/ubsan-src-ignorelist-category.test
Log Message:
-----------
[NFC] Extend ubsan-src-ignorelist-category.test
For #140529.
Commit: 5db4aeae3c413d586faed03771626818d6a807a9
https://github.com/llvm/llvm-project/commit/5db4aeae3c413d586faed03771626818d6a807a9
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/test/CodeGen/ubsan-src-ignorelist-category.test
Log Message:
-----------
[NFC] Extend ubsan-src-ignorelist-category.test
For #140529.
Commit: f171e050411efbed46c483db6d4dff7814e2d3e4
https://github.com/llvm/llvm-project/commit/f171e050411efbed46c483db6d4dff7814e2d3e4
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenFunction.h
A clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
R clang/lib/CIR/CodeGen/CIRGenOpenACCClause.h
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACCLoop.cpp
M clang/lib/CIR/CodeGen/CMakeLists.txt
Log Message:
-----------
[NFC][OpenACC] Refactor clause emission- (#140586)
Having the whole clause emission be in a header file ended up being
pragmatic, but ended up being a sizable negative for a variety of
reasons. This patch moves it to its own .cpp file and makes
CIRGenFunction instead call into the visitor via a template instead.
This is possible because the valid list of construct kinds is quite
finite, and easy to enumerate.
Commit: 050e49a93a41909e1f80d6e1d66917f53e4ba016
https://github.com/llvm/llvm-project/commit/050e49a93a41909e1f80d6e1d66917f53e4ba016
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/GlobalISel/rv64zba.ll
M llvm/test/CodeGen/RISCV/rv64zba.ll
Log Message:
-----------
[RISCV] Fix copy/paste mistake in test comments. NFC
Commit: dfabd61f7370cdd2ba76876b04993e991bb4e58b
https://github.com/llvm/llvm-project/commit/dfabd61f7370cdd2ba76876b04993e991bb4e58b
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lldb/source/Plugins/Process/Utility/CMakeLists.txt
A lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_riscv32.cpp
A lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_riscv32.h
A lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_riscv32.cpp
A lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_riscv32.h
M lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_riscv64.cpp
A lldb/source/Plugins/Process/Utility/RegisterInfos_riscv32.h
M lldb/source/Plugins/Process/elf-core/CMakeLists.txt
A lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_riscv32.cpp
A lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_riscv32.h
M lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp
Log Message:
-----------
[lldb] Support riscv32 ELF corefiles (#115408)
Add support for riscv32 ELF corefiles.
Commit: c5191905a8b0ec0e10a8f72138571871ab1e99e9
https://github.com/llvm/llvm-project/commit/c5191905a8b0ec0e10a8f72138571871ab1e99e9
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/utils/gn/secondary/lldb/source/Plugins/Process/Utility/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/Plugins/Process/elf-core/BUILD.gn
Log Message:
-----------
[gn build] Port dfabd61f7370
Commit: b586ddfd285c76ea6ea9656a11cfb03fcde58787
https://github.com/llvm/llvm-project/commit/b586ddfd285c76ea6ea9656a11cfb03fcde58787
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/test/CodeGen/DirectX/Metadata/srv_metadata.ll
M llvm/test/CodeGen/DirectX/Metadata/uav_metadata.ll
Log Message:
-----------
[HLSL][NFC] Add resource globals created for metadata to test baseline (#140620)
Adds checks for resource globals that were created for DXIL metadata.
The names of the globals and the names of the types will be changing
soon. Adding these to the baseline will make it easier to see what is
changing.
Commit: 7268c4e7b3b905835597129f40ba697c0f1319dd
https://github.com/llvm/llvm-project/commit/7268c4e7b3b905835597129f40ba697c0f1319dd
Author: Snehasish Kumar <snehasishk at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/unittests/ProfileData/InstrProfTest.cpp
M llvm/unittests/ProfileData/MemProfTest.cpp
Log Message:
-----------
[NFC][MemProf] Fix typo in type name (#140500)
Commit: a53b306c479cb905c0ac3bb6567e4a20b379643e
https://github.com/llvm/llvm-project/commit/a53b306c479cb905c0ac3bb6567e4a20b379643e
Author: Snehasish Kumar <snehasishk at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/ProfileData/MemProf.h
A llvm/include/llvm/ProfileData/MemProfRadixTree.h
M llvm/include/llvm/ProfileData/MemProfReader.h
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/ProfileData/CMakeLists.txt
M llvm/lib/ProfileData/IndexedMemProfData.cpp
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/lib/ProfileData/MemProf.cpp
A llvm/lib/ProfileData/MemProfRadixTree.cpp
M llvm/unittests/ProfileData/InstrProfTest.cpp
M llvm/unittests/ProfileData/MemProfTest.cpp
Log Message:
-----------
[NFC][MemProf] Move Radix tree methods to their own header and cpp. (#140501)
Part of a larger refactoring with the following goals
1. Reduce the size of MemProf.h
2. Avoid including ModuleSummaryIndex just for a couple of types
Commit: ad3c1d2091d7f793101d7acbb06f3449ab01a310
https://github.com/llvm/llvm-project/commit/ad3c1d2091d7f793101d7acbb06f3449ab01a310
Author: Snehasish Kumar <snehasishk at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/include/llvm/ProfileData/MemProfYAML.h
M llvm/lib/ProfileData/MemProf.cpp
M llvm/lib/ProfileData/MemProfReader.cpp
M llvm/lib/Transforms/Instrumentation/MemProfiler.cpp
M llvm/unittests/ProfileData/MemProfTest.cpp
M llvm/unittests/Transforms/Instrumentation/MemProfUseTest.cpp
Log Message:
-----------
[NFC][MemProf] Move getGUID out of IndexedMemProfRecord (#140502)
Part of a larger refactoring with the following goals
1. Reduce the size of MemProf.h
2. Avoid including ModuleSummaryIndex just for a couple of types
Commit: 0528848def299b9af334268a8f658df5105f6b64
https://github.com/llvm/llvm-project/commit/0528848def299b9af334268a8f658df5105f6b64
Author: Snehasish Kumar <snehasishk at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/ProfileData/IndexedMemProfData.h
M llvm/include/llvm/ProfileData/InstrProfWriter.h
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/include/llvm/ProfileData/MemProfRadixTree.h
M llvm/include/llvm/ProfileData/MemProfReader.h
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/ProfileData/InstrProfWriter.cpp
M llvm/lib/ProfileData/MemProf.cpp
M llvm/unittests/ProfileData/InstrProfTest.cpp
M llvm/unittests/ProfileData/MemProfTest.cpp
M llvm/unittests/Transforms/Instrumentation/MemProfUseTest.cpp
Log Message:
-----------
[NFC][MemProf] Move IndexedMemProfData to its own header. (#140503)
Part of a larger refactoring with the following goals
1. Reduce the size of MemProf.h
2. Avoid including ModuleSummaryIndex just for a couple of types
Commit: c2fd63c32ccbf466e4848149d1d050056370d5a9
https://github.com/llvm/llvm-project/commit/c2fd63c32ccbf466e4848149d1d050056370d5a9
Author: Snehasish Kumar <snehasishk at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/ProfileData/MemProf.h
Log Message:
-----------
[NFC][MemProf] Add the LLVM license text and minor clean up. (#140504)
Part of a larger refactoring with the following goals
1. Reduce the size of MemProf.h
2. Avoid including ModuleSummaryIndex just for a couple of types
Commit: ad450313b7eaee91ec0df62d1686f024cc5cadf1
https://github.com/llvm/llvm-project/commit/ad450313b7eaee91ec0df62d1686f024cc5cadf1
Author: Alexander Yermolovich <43973793+ayermolo at users.noreply.github.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/test/tools/dsymutil/X86/op-convert-offset.test
Log Message:
-----------
[dsym][test][nfc] Remove DIE offsets. (#140628)
This test seems to be non-determistic recently.
Changed it not to rely on offsets.
Commit: 4cfbe55781cb8fb95568c9a8538912f68d2ff681
https://github.com/llvm/llvm-project/commit/4cfbe55781cb8fb95568c9a8538912f68d2ff681
Author: Snehasish Kumar <snehasishk at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/Analysis/MemoryProfileInfo.h
M llvm/include/llvm/IR/ModuleSummaryIndex.h
A llvm/include/llvm/ProfileData/MemProfCommon.h
M llvm/lib/ProfileData/CMakeLists.txt
M llvm/lib/Transforms/Instrumentation/MemProfiler.cpp
Log Message:
-----------
[NFC][MemProf] Move types shared between Analysis, ProfileData and ModuleSummary (Core) to a separate header (#140505)
Part of a larger refactoring with the following goals
1. Reduce the size of MemProf.h
2. Avoid including ModuleSummaryIndex just for a couple of types
Commit: 0a718797eaf141b9117b6ff41dc02c52f462918e
https://github.com/llvm/llvm-project/commit/0a718797eaf141b9117b6ff41dc02c52f462918e
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/ProfileData/BUILD.gn
Log Message:
-----------
[gn build] Port a53b306c479c
Commit: 30ebcf6280ae098d9d16f5648e99855d612e4954
https://github.com/llvm/llvm-project/commit/30ebcf6280ae098d9d16f5648e99855d612e4954
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Store operand entries in the map
Instead of looking through all the vectorizable tree to find the operand
entry, better to store it in a separate map and perform quick lookup,
basing on user tree entry and operand index.
It allows to remove lots of duplicated code, simplify processing and fix
potential future issues with the analysis, affected by the codegen.
Also, improves compile time.
Reviewers: HanKuanChen, RKSimon, hiraditya
Reviewed By: hiraditya
Pull Request: https://github.com/llvm/llvm-project/pull/140549
Commit: 73c638f897327b7869435a588bde7909709ca795
https://github.com/llvm/llvm-project/commit/73c638f897327b7869435a588bde7909709ca795
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Semantics/cuf09.cuf
Log Message:
-----------
[flang][cuda] Set implicit CUDA device attribute in block construct (#140637)
Commit: e9c0840e9b4adc0f5cef53b4f4bcfcc0f475c4fa
https://github.com/llvm/llvm-project/commit/e9c0840e9b4adc0f5cef53b4f4bcfcc0f475c4fa
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/test/CodeGen/RISCV/fold-addi-loadstore-zilsd.ll
Log Message:
-----------
[RISCV] Add LD_RV32/SD_RV32 to RISCVInstrInfo::canFoldIntoAddrMode. (#140631)
Commit: dbfd0fd4fffedc8946e8f33ab6d8b782c958febb
https://github.com/llvm/llvm-project/commit/dbfd0fd4fffedc8946e8f33ab6d8b782c958febb
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[LangRef] Clarify that `ptrtoint` behaves like a capturing bitcast
This clarifies the outcome of the discussion in
https://discourse.llvm.org/t/clarifiying-the-semantics-of-ptrtoint/83987/54
In the future, we will also introduce a non-capturing pointer -> address
conversion using a new `ptrtoaddr` instruction.
Reviewed By: krzysz00
Pull Request: https://github.com/llvm/llvm-project/pull/139349
Commit: 90daed32a82ad2695d27db285ac36f579f2b270e
https://github.com/llvm/llvm-project/commit/90daed32a82ad2695d27db285ac36f579f2b270e
Author: Snehasish Kumar <snehasishk at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/ProfileData/CMakeLists.txt
Log Message:
-----------
[ProfileData] Restore Core as a dependency for the ProfileData library (#140650)
#140505 dropped the dependency on core but it's still needed as indicated by the failing dynamically linked builds.
Commit: 07e2ba445df7d277e5195c0ec85b133735ea76e3
https://github.com/llvm/llvm-project/commit/07e2ba445df7d277e5195c0ec85b133735ea76e3
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/test/CodeGen/target-data.c
M clang/test/CodeGenOpenCL/amdgpu-env-amdgcn.cl
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/test/Analysis/StackSafetyAnalysis/extend-ptr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/unsupported-ptr-add.ll
M llvm/test/CodeGen/AMDGPU/ptrmask.ll
M llvm/test/Transforms/AlignmentFromAssumptions/amdgpu-crash.ll
M llvm/test/Transforms/EarlyCSE/AMDGPU/memrealtime.ll
M llvm/test/Transforms/FunctionAttrs/make-buffer-rsrc.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/noop-ptrint-pair.ll
M llvm/test/Transforms/InferAddressSpaces/X86/noop-ptrint-pair.ll
M llvm/test/Transforms/LoopLoadElim/pr46854-adress-spaces.ll
M llvm/test/Transforms/OpenMP/attributor_pointer_offset_crash.ll
M llvm/test/Transforms/OpenMP/indirect_call_kernel_info_crash.ll
M llvm/test/Transforms/OpenMP/spmdization_constant_prop.ll
M llvm/test/Transforms/OpenMP/spmdization_kernel_env_dep.ll
M llvm/test/Transforms/OpenMP/values_in_offload_arrays.alloca.ll
M llvm/unittests/Bitcode/DataLayoutUpgradeTest.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
M llvm/unittests/Transforms/Utils/CodeExtractorTest.cpp
M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
M mlir/test/Target/LLVMIR/omptarget-memcpy-align-metadata.mlir
M mlir/test/Target/LLVMIR/omptarget-multi-reduction.mlir
M mlir/test/Target/LLVMIR/omptarget-parallel-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-parallel-wsloop.mlir
M mlir/test/Target/LLVMIR/omptarget-private-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction.mlir
M mlir/test/Target/LLVMIR/omptarget-teams-reduction.mlir
M mlir/test/Target/LLVMIR/omptarget-wsloop-collapsed.mlir
M mlir/test/Target/LLVMIR/omptarget-wsloop.mlir
Log Message:
-----------
[AMDGPU] Set AS8 address width to 48 bits
Of the 128-bits of buffer descriptor only 48 bits are address bits, so
following the discussion on https://discourse.llvm.org/t/clarifiying-the-semantics-of-ptrtoint/83987/54,
the logic conclusion is to set the index width to 48 bits instead of
the current value of 128.
Most of the test changes are mechanical datalayout updates, but there
is one actual change: the ptrmask test now uses .i48 instead of .i128
and I had to update SelectionDAGBuilder to correctly extend the mask.
Reviewed By: krzysz00
Pull Request: https://github.com/llvm/llvm-project/pull/139419
Commit: ae46353f5f47695ef448f558df5e5cdd48159266
https://github.com/llvm/llvm-project/commit/ae46353f5f47695ef448f558df5e5cdd48159266
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCFixup.h
M llvm/lib/MC/MCAsmBackend.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
Log Message:
-----------
RISCV,LoongArch: Encode RELAX relocation implicitly
When linker relaxation is enabled, relaxable relocations are followed by
a R_RISCV_RELAX/R_LARCH_RELAX relocation. They are encoded as two fixups by
CodeEmitter and expected to have the same `IsResolved` value within
MCAssembler::evaluateFixup (they must lead to either 0 or 2
relocations). This scheme wasite space and requires RISCVAsmBackend::shouldForceRelocation
to be conservative.
This patch introduces MCFixup::NeedsRelax to encode the RELAX relocation implicitly.
The fixup will lead to either 0 or 2 relocations.
Pull Request: https://github.com/llvm/llvm-project/pull/140494
Commit: df0358f36b69689b8d502efd08cb8422cf170600
https://github.com/llvm/llvm-project/commit/df0358f36b69689b8d502efd08cb8422cf170600
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lldb/tools/lldb-dap/DAP.cpp
Log Message:
-----------
[lldb-dap] Remove spurious move (NFC) (#140641)
getArgumentsIfRequest is returning a local variable by value. Using
std::move is not needed and may inhibit copy elision. Also fixes the
braces around a single-line if.
Commit: a0a55df385a41c5bfa4107f83a5fa62b89d68914
https://github.com/llvm/llvm-project/commit/a0a55df385a41c5bfa4107f83a5fa62b89d68914
Author: Aaron St George <aaronstgeorge at gmail.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
Log Message:
-----------
[mlir][tensor][NFC] Code cleanup around shape inference support for `tensor.concat` op (#140616)
Addresses some code review on
https://github.com/llvm/llvm-project/pull/140168 that came in after
merge.
Commit: b8e5307031e4b12207fa5f6c4b540d997bf34556
https://github.com/llvm/llvm-project/commit/b8e5307031e4b12207fa5f6c4b540d997bf34556
Author: Ruiling, Song <ruiling.song at amd.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/test/tools/UpdateTestChecks/update_mir_test_checks/Inputs/x86-dead-def.mir
M llvm/test/tools/UpdateTestChecks/update_mir_test_checks/Inputs/x86-dead-def.mir.expected
M llvm/utils/update_mir_test_checks.py
Log Message:
-----------
update_mir_test_checks: keep comment embedded in MIR (#140016)
We often add inline comment in mir. It is useful to keep them.
Commit: 383e5f3e2da5c11ecbf1482eb0c39df38ac84e59
https://github.com/llvm/llvm-project/commit/383e5f3e2da5c11ecbf1482eb0c39df38ac84e59
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/StmtProfile.cpp
M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
Log Message:
-----------
Revert "[Clang] Profile singly-resolved UnresolvedLookupExpr with the declaration" (#140655)
This introduced a bug where noexcept specifiers are involved, as
reported in
https://github.com/llvm/llvm-project/pull/140029#issuecomment-2892259764
Addressing that doesn't seem trivial at the moment, so I'll need some
time to think it over; in the meantime let's
revert the offending patch.
Reverts llvm/llvm-project#140029
Commit: 755acb174ab2a176eabd33d55ec4024e9f353e9d
https://github.com/llvm/llvm-project/commit/755acb174ab2a176eabd33d55ec4024e9f353e9d
Author: Yury Plyakhin <yury.plyakhin at intel.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/docs/SPIRVUsage.rst
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_2d_block_io/2d_block_io_generic.ll
Log Message:
-----------
[SPIR-V] Add SPV_INTEL_2d_block_io extension (#140140)
Adds additional subgroup block prefetch, load,
load transposed, load transformed and store
instructions to read two-dimensional blocks of
data from a two-dimensional region of memory, or
to write two-dimensional blocks of data to a
two-dimensional region of memory.
Spec:
https://github.com/KhronosGroup/SPIRV-Registry/blob/main/extensions/INTEL/SPV_INTEL_2d_block_io.asciidoc
---------
Co-authored-by: Dmitry Sidorov <dmitry.sidorov at intel.com>
Commit: e264cff6fd676784adf1e436747259548ba708f8
https://github.com/llvm/llvm-project/commit/e264cff6fd676784adf1e436747259548ba708f8
Author: Chinmay Deshpande <chdeshpa at amd.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/fceil64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.store.format.d16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.format.d16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.store.format.d16.ll
M llvm/test/CodeGen/AMDGPU/scratch-simple.ll
Log Message:
-----------
[NFC][AMDGPU] Update tests to use autogened CHECKs (#140648)
Commit: bdf03fcff3a6bce810ccb4b007f542de09aef42d
https://github.com/llvm/llvm-project/commit/bdf03fcff3a6bce810ccb4b007f542de09aef42d
Author: Iris Shi <0.0 at owo.li>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp
M llvm/lib/DWARFLinker/Parallel/ArrayList.h
M llvm/lib/ExecutionEngine/Orc/Core.cpp
M llvm/lib/ExecutionEngine/Orc/Debugging/DebugInfoSupport.cpp
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPreloadKernelArguments.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
M llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/TargetParser/AArch64TargetParser.cpp
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/lib/Transforms/Utils/CodeLayout.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/utils/TableGen/ExegesisEmitter.cpp
Log Message:
-----------
Revert "[llvm][NFC] Use `llvm::sort()`" (#140668)
Commit: dba030e8d8f22651ac0277a0568f917958121633
https://github.com/llvm/llvm-project/commit/dba030e8d8f22651ac0277a0568f917958121633
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaAsmBackend.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.h
Log Message:
-----------
[Xtensa] Rename XtensaMCAsmBackend and internalize it
Follow the majority of targets by naming this XXXAsmBackend instead of
XXXMCAsmBackend. Switch to the modern license header text.
Commit: 95202ab54ec85898aba46020a18449f46890800c
https://github.com/llvm/llvm-project/commit/95202ab54ec85898aba46020a18449f46890800c
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/include/llvm/MC/MCFixupKindInfo.h
M llvm/lib/MC/MCAssembler.cpp
Log Message:
-----------
MC: Remove unused MCFixupKindInfo::FKF_Constant
This was an ARM workaround, which has been removed by #76574
Commit: a754bc27e4b25dfe871e1750249a915e62aaf82c
https://github.com/llvm/llvm-project/commit/a754bc27e4b25dfe871e1750249a915e62aaf82c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M llvm/lib/CodeGen/RDFLiveness.cpp
Log Message:
-----------
[CodeGen] Avoid repeated map lookups (NFC) (#140662)
Commit: e0515c890dd33224cfece497b5c81e03fdf669d0
https://github.com/llvm/llvm-project/commit/e0515c890dd33224cfece497b5c81e03fdf669d0
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/docs/BoundsSafety.rst
M clang/docs/BoundsSafetyAdoptionGuide.rst
M clang/docs/HIPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/UsersManual.rst
Log Message:
-----------
[clang] Fix typos in documentation (#140663)
Commit: 1fa26efeed01e1aa23b483c78d5364a0d755105c
https://github.com/llvm/llvm-project/commit/1fa26efeed01e1aa23b483c78d5364a0d755105c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Record.cpp
M clang/lib/AST/ByteCode/Record.h
Log Message:
-----------
[AST] Drop const from a return type (NFC) (#140665)
Commit: 575f66cf5e1be238226970fcd84fdae59d41fd18
https://github.com/llvm/llvm-project/commit/575f66cf5e1be238226970fcd84fdae59d41fd18
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M lld/ELF/SyntheticSections.h
Log Message:
-----------
[lld] Drop const from a return type (NFC) (#140667)
Commit: d561d595c4ee741f873972c03afa829e6c566ffd
https://github.com/llvm/llvm-project/commit/d561d595c4ee741f873972c03afa829e6c566ffd
Author: Jim Lin <jim at andestech.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/include/clang/Basic/CMakeLists.txt
M clang/include/clang/Basic/TargetBuiltins.h
A clang/include/clang/Basic/riscv_andes_vector.td
M clang/include/clang/Sema/RISCVIntrinsicManager.h
M clang/include/clang/Sema/SemaRISCV.h
M clang/include/clang/Support/RISCVVIntrinsicUtils.h
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/Headers/CMakeLists.txt
A clang/lib/Headers/andes_vector.h
M clang/lib/Parse/ParsePragma.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaRISCV.cpp
M clang/lib/Support/RISCVVIntrinsicUtils.cpp
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/nds_vfpmadb.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/nds_vfpmadt.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/nds_vfpmadb.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/nds_vfpmadt.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/nds_vfpmadb.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/nds_vfpmadt.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/nds_vfpmadb.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/nds_vfpmadt.c
M clang/test/Sema/riscv-bad-intrinsic-pragma.c
M clang/utils/TableGen/RISCVVEmitter.cpp
M clang/utils/TableGen/TableGen.cpp
Log Message:
-----------
[RISCV] Implement intrinsics for XAndesVPackFPH (#140007)
This patch implements clang intrinsic support for XAndesVPackFPH.
The document for the intrinsics can be found at:
https://github.com/andestech/andes-vector-intrinsic-doc/blob/ast-v5_4_0-release-v5/auto-generated/andes-v5/intrinsic_funcs.adoc#andes-vector-packed-fp16-extensionxandesvpackfph
and with policy variants
https://github.com/andestech/andes-vector-intrinsic-doc/blob/ast-v5_4_0-release-v5/auto-generated/andes-v5/policy_funcs/intrinsic_funcs.adoc#andes-vector-packed-fp16-extensionxandesvpackfph
Co-authored-by: Tony Chuan-Yue Yuan <yuan593 at andestech.com>
Commit: 5c1db3823e0d7ac820c938ca81adbffda3d98219
https://github.com/llvm/llvm-project/commit/5c1db3823e0d7ac820c938ca81adbffda3d98219
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/EnterExpressionEvaluationContext.h
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaCoroutine.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/test/CXX/stmt.stmt/stmt.select/stmt.if/p2.cpp
Log Message:
-----------
[Clang] Functions called in discarded statements should not be instantiated (#140576)
Functions referenced in discarded statements could be treated as
odr-used
because we did not properly set the correct evaluation context in some
places.
Fixes https://github.com/llvm/llvm-project/issues/140449
Commit: 6181f4f89d022ebf33ed8a449655347eb1b9b6c0
https://github.com/llvm/llvm-project/commit/6181f4f89d022ebf33ed8a449655347eb1b9b6c0
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M lldb/include/lldb/API/SBValue.h
M lldb/source/API/SBValue.cpp
M lldb/test/API/python_api/sbvalue_synthetic/TestSBValueSynthetic.py
M lldb/test/API/python_api/sbvalue_synthetic/main.cpp
Log Message:
-----------
[lldb] Retcon SBValue::GetChildAtIndex(synthetic=true) (#140065)
The motivation here is being (un)able to treat pointer values as an
array consistently. This works for pointers to simple/scalar values, but
for aggregates, we get a very surprising result:
- GetChildAtIndex(x, ??, true) returns the `x` child of the zeroth array
member (the one you get by dereferencing the pointer/array) for all `x`
which are smaller than the number of children of that value.
- for other values of `x`, we get `v[x]`, where `v` is treated like a
(C) pointer
This patch reimagines this interface so that the value of `true` always
treats (pointer and array) values as pointers. For `false`, we always
dereference pointers, while in the case of arrays, we only return the
values as far as the array bounds will allow.
This has the potential to break existing code, but I have a suspicion
that code was already broken to begin with, which is why I think this
would be better than introducing a new API and keeping the old (and
surprising) behavior. If our own test coverage is any indication,
breakage should be minimal.
Commit: 3e4c9dc299c35155934688184319d391b298fff7
https://github.com/llvm/llvm-project/commit/3e4c9dc299c35155934688184319d391b298fff7
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M libcxx/include/__functional/function.h
Log Message:
-----------
[libc++] Add explicit ABI annotations to functions from the block runtime declared in <__functional/function.h> (#140592)
Commit: 67f4d841f06640f3bcbe91cc9b9ad0ea047e4518
https://github.com/llvm/llvm-project/commit/67f4d841f06640f3bcbe91cc9b9ad0ea047e4518
Author: Adrian Kuegel <akuegel at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[llvm][Bazel] Adjust according to changes in 4cfbe55
Commit: 0baacd1a58420f7e4da14faa1f0e9a21d5294a6a
https://github.com/llvm/llvm-project/commit/0baacd1a58420f7e4da14faa1f0e9a21d5294a6a
Author: NimishMishra <42909663+NimishMishra at users.noreply.github.com>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
A flang/test/Lower/OpenMP/wsloop-linear.f90
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/openmp-llvm.mlir
M mlir/test/Target/LLVMIR/openmp-todo.mlir
Log Message:
-----------
[flang][OpenMP] Support MLIR lowering of linear clause for omp.wsloop (#139385)
This patch adds support for MLIR lowering of linear clause on omp.wsloop
(except for linear modifiers).
Commit: f8e2e709f079f5aafc9d8cd67ee9401910d43fc1
https://github.com/llvm/llvm-project/commit/f8e2e709f079f5aafc9d8cd67ee9401910d43fc1
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/include/llvm/CGData/StableFunctionMap.h
M llvm/lib/CGData/StableFunctionMapRecord.cpp
Log Message:
-----------
[CGData] Return ArrayRef<std::string> in getNames (NFC) (#140675)
All uses of getNames is read access to the list of names, so we can
just return ArrayRef<std::string>. There is no need to make a copy as
we prepare a return value.
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: f73287e623a6c2e4a3485832bc3e10860cd26eb5
https://github.com/llvm/llvm-project/commit/f73287e623a6c2e4a3485832bc3e10860cd26eb5
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M libcxx/include/__locale_dir/support/windows.h
M libcxx/include/__thread/support/windows.h
M libcxx/src/support/win32/locale_win32.cpp
M libcxx/src/support/win32/thread_win32.cpp
Log Message:
-----------
[libc++] Make ABI annotations explicit for windows-specific code (#140507)
This doesn't show up in the CI, since we don't have abilists for
windows. I'm also not sure whether we want them, so I don't think we can
easily test this change.
Commit: d644597f57050d575212bd7b20abad892a07e6de
https://github.com/llvm/llvm-project/commit/d644597f57050d575212bd7b20abad892a07e6de
Author: David Green <david.green at arm.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/knownbits-shuffle.mir
M llvm/test/CodeGen/AArch64/aarch64-dup-ext.ll
M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
Log Message:
-----------
[GlobalISel] Add computeNumSignBits for G_SHUFFLE_VECTOR (#139505)
The code is similar to computeKnownBits and the code in
SelectionDAG::ComputeNumSignBits.
Commit: b565933fd7befde370cdef503ad3910f9cfe478a
https://github.com/llvm/llvm-project/commit/b565933fd7befde370cdef503ad3910f9cfe478a
Author: Adrian Kuegel <akuegel at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[Bazel] Adapt to d561d595c4ee741f873972c03afa829e6c566ffd
Also restore ":Core" dependency, it is actually needed.
Commit: b3e15baf7c649a12e71ff281b83e9213abae2977
https://github.com/llvm/llvm-project/commit/b3e15baf7c649a12e71ff281b83e9213abae2977
Author: ita-sc <ivan.tetyushkin at syntacore.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M lldb/source/Host/common/TCPSocket.cpp
Log Message:
-----------
[lldb] Extend information for failed connection for gdb server (#139916)
Before:
```
(lldb) r
error: connect remote failed (Failed to connect port)
error: Failed to connect port
```
After the patch:
```
(lldb) r
error: connect remote failed (Failed to connect localhost:47140)
error: Failed to connect localhost:47140
```
Commit: 57aa7fa6ed64394ecd7d68fe34984b89778f319b
https://github.com/llvm/llvm-project/commit/57aa7fa6ed64394ecd7d68fe34984b89778f319b
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/and-or-setcc.ll
M llvm/test/CodeGen/X86/extract-vselect-setcc.ll
M llvm/test/CodeGen/X86/extractelement-fp.ll
M llvm/test/CodeGen/X86/fcmp-logic.ll
M llvm/test/CodeGen/X86/lzcnt-zext-cmp.ll
M llvm/test/CodeGen/X86/pr40539.ll
M llvm/test/CodeGen/X86/vector-reduce-fmax-nnan.ll
M llvm/test/CodeGen/X86/vector-reduce-fmin-nnan.ll
Log Message:
-----------
[X86] SimplifyDemandedVectorEltsForTargetNode - replace packed fcmp node with scalar fcmp node if only element0 is demanded (#140563)
These unnecessary vectorisation can appear due to fplogic opcodes only being available for 128-bit types - which can prevent folds that only work on the scalar source types and also lead to fcmp of garbage data in the upper elements.
Fixes #140534
Commit: 32a1b6a70b3ec9066dd70ccf538f735a5c58e031
https://github.com/llvm/llvm-project/commit/32a1b6a70b3ec9066dd70ccf538f735a5c58e031
Author: shivaramaarao <58245296+shivaramaarao at users.noreply.github.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/test/Driver/fveclib-codegen.f90
M flang/test/Driver/fveclib.f90
Log Message:
-----------
[flang][veclib] Adding AMDLIBM target to fveclib (#140533)
This commit adds AMDLIBM support to fveclib targets. The support is
already present in clang and this patch extends it to flang.
Commit: 034eaeddc30cbaf273744580f15325514d5fb928
https://github.com/llvm/llvm-project/commit/034eaeddc30cbaf273744580f15325514d5fb928
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
Log Message:
-----------
[lldb][DataFormatters] Adjust retrieval of unordered_map element type (#140256)
A user ran into an issue where the libc++ `std::unordered_map` formatter
fails because it can't deduce the `element_type`. That happens because
the `node_type` is a forwad declaration. And, in fact, dsymutil stripped
the definition for `std::__1::__hash_node<...>` for a particular
instantiation. While I'm still unclear whether this is a dsymutil bug,
this patch works around said issue by getting the element type from the
`__table_` member.
Drive-by:
- Set the `m_element_type` in `Update`, which is where the other members
are initialized
I don't have a reduced example of this unfortunately. But the crux of
the issue is that `std::__1::__hash_node<...>` only has a forward
declaration in the dsym. Then trying to call `GetTypeTemplateArgument`
on that `CompilerType` fails. And even if the definition was present in
the dsym it seems like we're stopped in a context where the CU only had
a forward declaration DIE for that type and the `node_type` never ends
up being completed with the definition that lives in another CU.
rdar://150813798
Commit: 80816e792382da286b29f937938ab54ae159f482
https://github.com/llvm/llvm-project/commit/80816e792382da286b29f937938ab54ae159f482
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/test/Dialect/LLVMIR/invalid.mlir
M mlir/test/Target/LLVMIR/llvmir-invalid.mlir
M mlir/test/Target/LLVMIR/llvmir.mlir
Log Message:
-----------
[mlir][LLVM] handle ArrayAttr for constant array of structs (#139724)
While LLVM IR dialect has a way to represent arbitrary LLVM constant
array of structs via an insert chain, it is in practice very expensive
for the compilation time as soon as the array is bigger than a couple
hundred elements. This is because generating and later folding such
insert chain is really not cheap.
This patch allows representing array of struct constants via ArrayAttr in
the LLVM dialect.
Commit: 32cf55aef3f83723616e27d149ea0186d73481b0
https://github.com/llvm/llvm-project/commit/32cf55aef3f83723616e27d149ea0186d73481b0
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M libclc/CMakeLists.txt
R libclc/amdgcn-amdhsa/lib/SOURCES
R libclc/amdgcn-amdhsa/lib/workitem/get_global_size.cl
R libclc/amdgcn-amdhsa/lib/workitem/get_local_size.cl
R libclc/amdgcn-amdhsa/lib/workitem/get_num_groups.cl
R libclc/amdgcn/lib/SOURCES
R libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.ll
R libclc/amdgcn/lib/mem_fence/fence.cl
R libclc/amdgcn/lib/synchronization/barrier.cl
R libclc/amdgcn/lib/workitem/get_global_offset.cl
R libclc/amdgcn/lib/workitem/get_global_size.cl
R libclc/amdgcn/lib/workitem/get_group_id.cl
R libclc/amdgcn/lib/workitem/get_local_id.cl
R libclc/amdgcn/lib/workitem/get_local_size.cl
R libclc/amdgcn/lib/workitem/get_num_groups.cl
R libclc/amdgcn/lib/workitem/get_work_dim.cl
R libclc/clspv/lib/SOURCES
R libclc/clspv/lib/math/fma.cl
R libclc/clspv/lib/shared/vstore_half.cl
R libclc/clspv/lib/shared/vstore_half.inc
R libclc/clspv/lib/subnormal_config.cl
M libclc/cmake/modules/AddLibclc.cmake
R libclc/generic/include/clc/as_type.h
R libclc/generic/include/clc/async/async_work_group_copy.h
R libclc/generic/include/clc/async/async_work_group_copy.inc
R libclc/generic/include/clc/async/async_work_group_strided_copy.h
R libclc/generic/include/clc/async/async_work_group_strided_copy.inc
R libclc/generic/include/clc/async/prefetch.h
R libclc/generic/include/clc/async/prefetch.inc
R libclc/generic/include/clc/async/wait_group_events.h
R libclc/generic/include/clc/atomic/atom_add.h
R libclc/generic/include/clc/atomic/atom_and.h
R libclc/generic/include/clc/atomic/atom_cmpxchg.h
R libclc/generic/include/clc/atomic/atom_dec.h
R libclc/generic/include/clc/atomic/atom_decl_int32.inc
R libclc/generic/include/clc/atomic/atom_decl_int64.inc
R libclc/generic/include/clc/atomic/atom_inc.h
R libclc/generic/include/clc/atomic/atom_max.h
R libclc/generic/include/clc/atomic/atom_min.h
R libclc/generic/include/clc/atomic/atom_or.h
R libclc/generic/include/clc/atomic/atom_sub.h
R libclc/generic/include/clc/atomic/atom_xchg.h
R libclc/generic/include/clc/atomic/atom_xor.h
R libclc/generic/include/clc/atomic/atomic_add.h
R libclc/generic/include/clc/atomic/atomic_and.h
R libclc/generic/include/clc/atomic/atomic_cmpxchg.h
R libclc/generic/include/clc/atomic/atomic_dec.h
R libclc/generic/include/clc/atomic/atomic_decl.inc
R libclc/generic/include/clc/atomic/atomic_inc.h
R libclc/generic/include/clc/atomic/atomic_max.h
R libclc/generic/include/clc/atomic/atomic_min.h
R libclc/generic/include/clc/atomic/atomic_or.h
R libclc/generic/include/clc/atomic/atomic_sub.h
R libclc/generic/include/clc/atomic/atomic_xchg.h
R libclc/generic/include/clc/atomic/atomic_xor.h
R libclc/generic/include/clc/clc.h
R libclc/generic/include/clc/common/degrees.h
R libclc/generic/include/clc/common/degrees.inc
R libclc/generic/include/clc/common/mix.h
R libclc/generic/include/clc/common/mix.inc
R libclc/generic/include/clc/common/radians.h
R libclc/generic/include/clc/common/radians.inc
R libclc/generic/include/clc/common/sign.h
R libclc/generic/include/clc/common/smoothstep.h
R libclc/generic/include/clc/common/smoothstep.inc
R libclc/generic/include/clc/common/step.h
R libclc/generic/include/clc/common/step.inc
R libclc/generic/include/clc/convert.h
R libclc/generic/include/clc/explicit_fence/explicit_memory_fence.h
R libclc/generic/include/clc/geometric/cross.h
R libclc/generic/include/clc/geometric/distance.h
R libclc/generic/include/clc/geometric/dot.h
R libclc/generic/include/clc/geometric/fast_distance.h
R libclc/generic/include/clc/geometric/fast_length.h
R libclc/generic/include/clc/geometric/fast_normalize.h
R libclc/generic/include/clc/geometric/length.h
R libclc/generic/include/clc/geometric/normalize.h
R libclc/generic/include/clc/image/image.h
R libclc/generic/include/clc/image/image_defines.h
R libclc/generic/include/clc/integer/abs.h
R libclc/generic/include/clc/integer/abs.inc
R libclc/generic/include/clc/integer/abs_diff.h
R libclc/generic/include/clc/integer/abs_diff.inc
R libclc/generic/include/clc/integer/add_sat.h
R libclc/generic/include/clc/integer/add_sat.inc
R libclc/generic/include/clc/integer/clz.h
R libclc/generic/include/clc/integer/ctz.h
R libclc/generic/include/clc/integer/hadd.h
R libclc/generic/include/clc/integer/mad24.h
R libclc/generic/include/clc/integer/mad_hi.h
R libclc/generic/include/clc/integer/mad_sat.h
R libclc/generic/include/clc/integer/mad_sat.inc
R libclc/generic/include/clc/integer/mul24.h
R libclc/generic/include/clc/integer/mul_hi.h
R libclc/generic/include/clc/integer/popcount.h
R libclc/generic/include/clc/integer/rhadd.h
R libclc/generic/include/clc/integer/rotate.h
R libclc/generic/include/clc/integer/rotate.inc
R libclc/generic/include/clc/integer/sub_sat.h
R libclc/generic/include/clc/integer/sub_sat.inc
R libclc/generic/include/clc/integer/unary.inc
R libclc/generic/include/clc/integer/upsample.h
R libclc/generic/include/clc/math/acos.h
R libclc/generic/include/clc/math/acosh.h
R libclc/generic/include/clc/math/acospi.h
R libclc/generic/include/clc/math/asin.h
R libclc/generic/include/clc/math/asinh.h
R libclc/generic/include/clc/math/asinpi.h
R libclc/generic/include/clc/math/atan.h
R libclc/generic/include/clc/math/atan2.h
R libclc/generic/include/clc/math/atan2pi.h
R libclc/generic/include/clc/math/atanh.h
R libclc/generic/include/clc/math/atanpi.h
R libclc/generic/include/clc/math/cbrt.h
R libclc/generic/include/clc/math/ceil.h
R libclc/generic/include/clc/math/copysign.h
R libclc/generic/include/clc/math/cos.h
R libclc/generic/include/clc/math/cosh.h
R libclc/generic/include/clc/math/cospi.h
R libclc/generic/include/clc/math/erf.h
R libclc/generic/include/clc/math/erfc.h
R libclc/generic/include/clc/math/exp.h
R libclc/generic/include/clc/math/exp10.h
R libclc/generic/include/clc/math/exp2.h
R libclc/generic/include/clc/math/expm1.h
R libclc/generic/include/clc/math/fabs.h
R libclc/generic/include/clc/math/fdim.h
R libclc/generic/include/clc/math/floor.h
R libclc/generic/include/clc/math/fma.h
R libclc/generic/include/clc/math/fmax.h
R libclc/generic/include/clc/math/fmin.h
R libclc/generic/include/clc/math/fmod.h
R libclc/generic/include/clc/math/fract.h
R libclc/generic/include/clc/math/frexp.h
R libclc/generic/include/clc/math/frexp.inc
R libclc/generic/include/clc/math/half_cos.h
R libclc/generic/include/clc/math/half_divide.h
R libclc/generic/include/clc/math/half_exp.h
R libclc/generic/include/clc/math/half_exp10.h
R libclc/generic/include/clc/math/half_exp2.h
R libclc/generic/include/clc/math/half_log.h
R libclc/generic/include/clc/math/half_log10.h
R libclc/generic/include/clc/math/half_log2.h
R libclc/generic/include/clc/math/half_powr.h
R libclc/generic/include/clc/math/half_recip.h
R libclc/generic/include/clc/math/half_rsqrt.h
R libclc/generic/include/clc/math/half_sin.h
R libclc/generic/include/clc/math/half_sqrt.h
R libclc/generic/include/clc/math/half_tan.h
R libclc/generic/include/clc/math/hypot.h
R libclc/generic/include/clc/math/ilogb.h
R libclc/generic/include/clc/math/ldexp.h
R libclc/generic/include/clc/math/ldexp.inc
R libclc/generic/include/clc/math/lgamma.h
R libclc/generic/include/clc/math/lgamma_r.h
R libclc/generic/include/clc/math/log.h
R libclc/generic/include/clc/math/log10.h
R libclc/generic/include/clc/math/log1p.h
R libclc/generic/include/clc/math/log2.h
R libclc/generic/include/clc/math/logb.h
R libclc/generic/include/clc/math/mad.h
R libclc/generic/include/clc/math/maxmag.h
R libclc/generic/include/clc/math/minmag.h
R libclc/generic/include/clc/math/modf.h
R libclc/generic/include/clc/math/nan.h
R libclc/generic/include/clc/math/nan.inc
R libclc/generic/include/clc/math/native_cos.h
R libclc/generic/include/clc/math/native_divide.h
R libclc/generic/include/clc/math/native_exp.h
R libclc/generic/include/clc/math/native_exp10.h
R libclc/generic/include/clc/math/native_exp2.h
R libclc/generic/include/clc/math/native_log.h
R libclc/generic/include/clc/math/native_log10.h
R libclc/generic/include/clc/math/native_log2.h
R libclc/generic/include/clc/math/native_powr.h
R libclc/generic/include/clc/math/native_recip.h
R libclc/generic/include/clc/math/native_rsqrt.h
R libclc/generic/include/clc/math/native_sin.h
R libclc/generic/include/clc/math/native_sqrt.h
R libclc/generic/include/clc/math/native_tan.h
R libclc/generic/include/clc/math/nextafter.h
R libclc/generic/include/clc/math/pow.h
R libclc/generic/include/clc/math/pown.h
R libclc/generic/include/clc/math/powr.h
R libclc/generic/include/clc/math/remainder.h
R libclc/generic/include/clc/math/remquo.h
R libclc/generic/include/clc/math/rint.h
R libclc/generic/include/clc/math/rootn.h
R libclc/generic/include/clc/math/round.h
R libclc/generic/include/clc/math/rsqrt.h
R libclc/generic/include/clc/math/sin.h
R libclc/generic/include/clc/math/sincos.h
R libclc/generic/include/clc/math/sinh.h
R libclc/generic/include/clc/math/sinpi.h
R libclc/generic/include/clc/math/sqrt.h
R libclc/generic/include/clc/math/tan.h
R libclc/generic/include/clc/math/tanh.h
R libclc/generic/include/clc/math/tanpi.h
R libclc/generic/include/clc/math/tgamma.h
R libclc/generic/include/clc/math/trunc.h
R libclc/generic/include/clc/misc/shuffle.h
R libclc/generic/include/clc/misc/shuffle2.h
R libclc/generic/include/clc/relational/all.h
R libclc/generic/include/clc/relational/any.h
R libclc/generic/include/clc/relational/bitselect.h
R libclc/generic/include/clc/relational/bitselect.inc
R libclc/generic/include/clc/relational/isequal.h
R libclc/generic/include/clc/relational/isfinite.h
R libclc/generic/include/clc/relational/isgreater.h
R libclc/generic/include/clc/relational/isgreaterequal.h
R libclc/generic/include/clc/relational/isinf.h
R libclc/generic/include/clc/relational/isless.h
R libclc/generic/include/clc/relational/islessequal.h
R libclc/generic/include/clc/relational/islessgreater.h
R libclc/generic/include/clc/relational/isnan.h
R libclc/generic/include/clc/relational/isnormal.h
R libclc/generic/include/clc/relational/isnotequal.h
R libclc/generic/include/clc/relational/isordered.h
R libclc/generic/include/clc/relational/isunordered.h
R libclc/generic/include/clc/relational/select.h
R libclc/generic/include/clc/relational/signbit.h
R libclc/generic/include/clc/shared/clamp.h
R libclc/generic/include/clc/shared/clamp.inc
R libclc/generic/include/clc/shared/max.h
R libclc/generic/include/clc/shared/max.inc
R libclc/generic/include/clc/shared/min.h
R libclc/generic/include/clc/shared/min.inc
R libclc/generic/include/clc/shared/vload.h
R libclc/generic/include/clc/shared/vstore.h
R libclc/generic/include/clc/synchronization/barrier.h
R libclc/generic/include/clc/synchronization/cl_mem_fence_flags.h
R libclc/generic/include/clc/workitem/get_global_id.h
R libclc/generic/include/clc/workitem/get_global_offset.h
R libclc/generic/include/clc/workitem/get_global_size.h
R libclc/generic/include/clc/workitem/get_group_id.h
R libclc/generic/include/clc/workitem/get_local_id.h
R libclc/generic/include/clc/workitem/get_local_size.h
R libclc/generic/include/clc/workitem/get_num_groups.h
R libclc/generic/include/clc/workitem/get_work_dim.h
R libclc/generic/lib/SOURCES
R libclc/generic/lib/async/async_work_group_copy.cl
R libclc/generic/lib/async/async_work_group_copy.inc
R libclc/generic/lib/async/async_work_group_strided_copy.cl
R libclc/generic/lib/async/async_work_group_strided_copy.inc
R libclc/generic/lib/async/prefetch.cl
R libclc/generic/lib/async/prefetch.inc
R libclc/generic/lib/async/wait_group_events.cl
R libclc/generic/lib/atomic/atom_add.cl
R libclc/generic/lib/atomic/atom_and.cl
R libclc/generic/lib/atomic/atom_cmpxchg.cl
R libclc/generic/lib/atomic/atom_dec.cl
R libclc/generic/lib/atomic/atom_inc.cl
R libclc/generic/lib/atomic/atom_int32_binary.inc
R libclc/generic/lib/atomic/atom_max.cl
R libclc/generic/lib/atomic/atom_min.cl
R libclc/generic/lib/atomic/atom_or.cl
R libclc/generic/lib/atomic/atom_sub.cl
R libclc/generic/lib/atomic/atom_xchg.cl
R libclc/generic/lib/atomic/atom_xor.cl
R libclc/generic/lib/atomic/atomic_add.cl
R libclc/generic/lib/atomic/atomic_and.cl
R libclc/generic/lib/atomic/atomic_cmpxchg.cl
R libclc/generic/lib/atomic/atomic_dec.cl
R libclc/generic/lib/atomic/atomic_inc.cl
R libclc/generic/lib/atomic/atomic_max.cl
R libclc/generic/lib/atomic/atomic_min.cl
R libclc/generic/lib/atomic/atomic_or.cl
R libclc/generic/lib/atomic/atomic_sub.cl
R libclc/generic/lib/atomic/atomic_xchg.cl
R libclc/generic/lib/atomic/atomic_xor.cl
R libclc/generic/lib/common/degrees.cl
R libclc/generic/lib/common/mix.cl
R libclc/generic/lib/common/mix.inc
R libclc/generic/lib/common/radians.cl
R libclc/generic/lib/common/sign.cl
R libclc/generic/lib/common/smoothstep.cl
R libclc/generic/lib/common/step.cl
R libclc/generic/lib/gen_convert.py
R libclc/generic/lib/geometric/cross.cl
R libclc/generic/lib/geometric/distance.cl
R libclc/generic/lib/geometric/dot.cl
R libclc/generic/lib/geometric/fast_distance.cl
R libclc/generic/lib/geometric/fast_length.cl
R libclc/generic/lib/geometric/fast_normalize.cl
R libclc/generic/lib/geometric/fast_normalize.inc
R libclc/generic/lib/geometric/length.cl
R libclc/generic/lib/geometric/normalize.cl
R libclc/generic/lib/integer/abs.cl
R libclc/generic/lib/integer/abs.inc
R libclc/generic/lib/integer/abs_diff.cl
R libclc/generic/lib/integer/abs_diff.inc
R libclc/generic/lib/integer/add_sat.cl
R libclc/generic/lib/integer/clz.cl
R libclc/generic/lib/integer/ctz.cl
R libclc/generic/lib/integer/hadd.cl
R libclc/generic/lib/integer/mad24.cl
R libclc/generic/lib/integer/mad_hi.cl
R libclc/generic/lib/integer/mad_sat.cl
R libclc/generic/lib/integer/mul24.cl
R libclc/generic/lib/integer/mul_hi.cl
R libclc/generic/lib/integer/popcount.cl
R libclc/generic/lib/integer/rhadd.cl
R libclc/generic/lib/integer/rotate.cl
R libclc/generic/lib/integer/sub_sat.cl
R libclc/generic/lib/integer/upsample.cl
R libclc/generic/lib/math/acos.cl
R libclc/generic/lib/math/acosh.cl
R libclc/generic/lib/math/acospi.cl
R libclc/generic/lib/math/asin.cl
R libclc/generic/lib/math/asinh.cl
R libclc/generic/lib/math/asinpi.cl
R libclc/generic/lib/math/atan.cl
R libclc/generic/lib/math/atan2.cl
R libclc/generic/lib/math/atan2pi.cl
R libclc/generic/lib/math/atanh.cl
R libclc/generic/lib/math/atanpi.cl
R libclc/generic/lib/math/cbrt.cl
R libclc/generic/lib/math/ceil.cl
R libclc/generic/lib/math/copysign.cl
R libclc/generic/lib/math/cos.cl
R libclc/generic/lib/math/cosh.cl
R libclc/generic/lib/math/cospi.cl
R libclc/generic/lib/math/erf.cl
R libclc/generic/lib/math/erfc.cl
R libclc/generic/lib/math/exp.cl
R libclc/generic/lib/math/exp10.cl
R libclc/generic/lib/math/exp2.cl
R libclc/generic/lib/math/expm1.cl
R libclc/generic/lib/math/fabs.cl
R libclc/generic/lib/math/fdim.cl
R libclc/generic/lib/math/floor.cl
R libclc/generic/lib/math/fma.cl
R libclc/generic/lib/math/fmax.cl
R libclc/generic/lib/math/fmax.inc
R libclc/generic/lib/math/fmin.cl
R libclc/generic/lib/math/fmin.inc
R libclc/generic/lib/math/fmod.cl
R libclc/generic/lib/math/fract.cl
R libclc/generic/lib/math/frexp.cl
R libclc/generic/lib/math/half_cos.cl
R libclc/generic/lib/math/half_divide.cl
R libclc/generic/lib/math/half_exp.cl
R libclc/generic/lib/math/half_exp10.cl
R libclc/generic/lib/math/half_exp2.cl
R libclc/generic/lib/math/half_log.cl
R libclc/generic/lib/math/half_log10.cl
R libclc/generic/lib/math/half_log2.cl
R libclc/generic/lib/math/half_powr.cl
R libclc/generic/lib/math/half_recip.cl
R libclc/generic/lib/math/half_rsqrt.cl
R libclc/generic/lib/math/half_sin.cl
R libclc/generic/lib/math/half_sqrt.cl
R libclc/generic/lib/math/half_tan.cl
R libclc/generic/lib/math/hypot.cl
R libclc/generic/lib/math/ilogb.cl
R libclc/generic/lib/math/ldexp.cl
R libclc/generic/lib/math/ldexp.inc
R libclc/generic/lib/math/lgamma.cl
R libclc/generic/lib/math/lgamma_r.cl
R libclc/generic/lib/math/log.cl
R libclc/generic/lib/math/log10.cl
R libclc/generic/lib/math/log1p.cl
R libclc/generic/lib/math/log2.cl
R libclc/generic/lib/math/logb.cl
R libclc/generic/lib/math/mad.cl
R libclc/generic/lib/math/maxmag.cl
R libclc/generic/lib/math/minmag.cl
R libclc/generic/lib/math/modf.cl
R libclc/generic/lib/math/nan.cl
R libclc/generic/lib/math/nan.inc
R libclc/generic/lib/math/native_cos.cl
R libclc/generic/lib/math/native_divide.cl
R libclc/generic/lib/math/native_exp.cl
R libclc/generic/lib/math/native_exp10.cl
R libclc/generic/lib/math/native_exp2.cl
R libclc/generic/lib/math/native_log.cl
R libclc/generic/lib/math/native_log10.cl
R libclc/generic/lib/math/native_log2.cl
R libclc/generic/lib/math/native_powr.cl
R libclc/generic/lib/math/native_recip.cl
R libclc/generic/lib/math/native_rsqrt.cl
R libclc/generic/lib/math/native_sin.cl
R libclc/generic/lib/math/native_sqrt.cl
R libclc/generic/lib/math/native_tan.cl
R libclc/generic/lib/math/nextafter.cl
R libclc/generic/lib/math/pow.cl
R libclc/generic/lib/math/pown.cl
R libclc/generic/lib/math/powr.cl
R libclc/generic/lib/math/remainder.cl
R libclc/generic/lib/math/remquo.cl
R libclc/generic/lib/math/remquo.inc
R libclc/generic/lib/math/rint.cl
R libclc/generic/lib/math/rootn.cl
R libclc/generic/lib/math/round.cl
R libclc/generic/lib/math/rsqrt.cl
R libclc/generic/lib/math/sin.cl
R libclc/generic/lib/math/sincos.cl
R libclc/generic/lib/math/sinh.cl
R libclc/generic/lib/math/sinpi.cl
R libclc/generic/lib/math/sqrt.cl
R libclc/generic/lib/math/tan.cl
R libclc/generic/lib/math/tanh.cl
R libclc/generic/lib/math/tanpi.cl
R libclc/generic/lib/math/tgamma.cl
R libclc/generic/lib/math/trunc.cl
R libclc/generic/lib/misc/shuffle.cl
R libclc/generic/lib/misc/shuffle2.cl
R libclc/generic/lib/relational/all.cl
R libclc/generic/lib/relational/any.cl
R libclc/generic/lib/relational/binary_def.inc
R libclc/generic/lib/relational/bitselect.cl
R libclc/generic/lib/relational/bitselect.inc
R libclc/generic/lib/relational/isequal.cl
R libclc/generic/lib/relational/isfinite.cl
R libclc/generic/lib/relational/isgreater.cl
R libclc/generic/lib/relational/isgreaterequal.cl
R libclc/generic/lib/relational/isinf.cl
R libclc/generic/lib/relational/isless.cl
R libclc/generic/lib/relational/islessequal.cl
R libclc/generic/lib/relational/islessgreater.cl
R libclc/generic/lib/relational/isnan.cl
R libclc/generic/lib/relational/isnormal.cl
R libclc/generic/lib/relational/isnotequal.cl
R libclc/generic/lib/relational/isordered.cl
R libclc/generic/lib/relational/isunordered.cl
R libclc/generic/lib/relational/select.cl
R libclc/generic/lib/relational/signbit.cl
R libclc/generic/lib/relational/unary_def.inc
R libclc/generic/lib/shared/clamp.cl
R libclc/generic/lib/shared/clamp.inc
R libclc/generic/lib/shared/max.cl
R libclc/generic/lib/shared/max.inc
R libclc/generic/lib/shared/min.cl
R libclc/generic/lib/shared/min.inc
R libclc/generic/lib/shared/vload.cl
R libclc/generic/lib/shared/vload_half.inc
R libclc/generic/lib/shared/vstore.cl
R libclc/generic/lib/shared/vstore_half.inc
R libclc/generic/lib/subnormal_config.cl
R libclc/generic/lib/subnormal_disable.ll
R libclc/generic/lib/subnormal_helper_func.ll
R libclc/generic/lib/subnormal_use_default.ll
R libclc/generic/lib/workitem/get_global_id.cl
R libclc/generic/lib/workitem/get_global_size.cl
A libclc/opencl/include/clc/opencl/as_type.h
A libclc/opencl/include/clc/opencl/async/async_work_group_copy.h
A libclc/opencl/include/clc/opencl/async/async_work_group_copy.inc
A libclc/opencl/include/clc/opencl/async/async_work_group_strided_copy.h
A libclc/opencl/include/clc/opencl/async/async_work_group_strided_copy.inc
A libclc/opencl/include/clc/opencl/async/prefetch.h
A libclc/opencl/include/clc/opencl/async/prefetch.inc
A libclc/opencl/include/clc/opencl/async/wait_group_events.h
A libclc/opencl/include/clc/opencl/atomic/atom_add.h
A libclc/opencl/include/clc/opencl/atomic/atom_and.h
A libclc/opencl/include/clc/opencl/atomic/atom_cmpxchg.h
A libclc/opencl/include/clc/opencl/atomic/atom_dec.h
A libclc/opencl/include/clc/opencl/atomic/atom_decl_int32.inc
A libclc/opencl/include/clc/opencl/atomic/atom_decl_int64.inc
A libclc/opencl/include/clc/opencl/atomic/atom_inc.h
A libclc/opencl/include/clc/opencl/atomic/atom_max.h
A libclc/opencl/include/clc/opencl/atomic/atom_min.h
A libclc/opencl/include/clc/opencl/atomic/atom_or.h
A libclc/opencl/include/clc/opencl/atomic/atom_sub.h
A libclc/opencl/include/clc/opencl/atomic/atom_xchg.h
A libclc/opencl/include/clc/opencl/atomic/atom_xor.h
A libclc/opencl/include/clc/opencl/atomic/atomic_add.h
A libclc/opencl/include/clc/opencl/atomic/atomic_and.h
A libclc/opencl/include/clc/opencl/atomic/atomic_cmpxchg.h
A libclc/opencl/include/clc/opencl/atomic/atomic_dec.h
A libclc/opencl/include/clc/opencl/atomic/atomic_decl.inc
A libclc/opencl/include/clc/opencl/atomic/atomic_inc.h
A libclc/opencl/include/clc/opencl/atomic/atomic_max.h
A libclc/opencl/include/clc/opencl/atomic/atomic_min.h
A libclc/opencl/include/clc/opencl/atomic/atomic_or.h
A libclc/opencl/include/clc/opencl/atomic/atomic_sub.h
A libclc/opencl/include/clc/opencl/atomic/atomic_xchg.h
A libclc/opencl/include/clc/opencl/atomic/atomic_xor.h
A libclc/opencl/include/clc/opencl/clc.h
A libclc/opencl/include/clc/opencl/common/degrees.h
A libclc/opencl/include/clc/opencl/common/mix.h
A libclc/opencl/include/clc/opencl/common/mix.inc
A libclc/opencl/include/clc/opencl/common/radians.h
A libclc/opencl/include/clc/opencl/common/sign.h
A libclc/opencl/include/clc/opencl/common/smoothstep.h
A libclc/opencl/include/clc/opencl/common/smoothstep.inc
A libclc/opencl/include/clc/opencl/common/step.h
A libclc/opencl/include/clc/opencl/common/step.inc
A libclc/opencl/include/clc/opencl/convert.h
A libclc/opencl/include/clc/opencl/explicit_fence/explicit_memory_fence.h
A libclc/opencl/include/clc/opencl/geometric/cross.h
A libclc/opencl/include/clc/opencl/geometric/distance.h
A libclc/opencl/include/clc/opencl/geometric/dot.h
A libclc/opencl/include/clc/opencl/geometric/fast_distance.h
A libclc/opencl/include/clc/opencl/geometric/fast_length.h
A libclc/opencl/include/clc/opencl/geometric/fast_normalize.h
A libclc/opencl/include/clc/opencl/geometric/length.h
A libclc/opencl/include/clc/opencl/geometric/normalize.h
A libclc/opencl/include/clc/opencl/image/image.h
A libclc/opencl/include/clc/opencl/image/image_defines.h
A libclc/opencl/include/clc/opencl/integer/abs.h
A libclc/opencl/include/clc/opencl/integer/abs.inc
A libclc/opencl/include/clc/opencl/integer/abs_diff.h
A libclc/opencl/include/clc/opencl/integer/abs_diff.inc
A libclc/opencl/include/clc/opencl/integer/add_sat.h
A libclc/opencl/include/clc/opencl/integer/clz.h
A libclc/opencl/include/clc/opencl/integer/ctz.h
A libclc/opencl/include/clc/opencl/integer/hadd.h
A libclc/opencl/include/clc/opencl/integer/mad24.h
A libclc/opencl/include/clc/opencl/integer/mad_hi.h
A libclc/opencl/include/clc/opencl/integer/mad_sat.h
A libclc/opencl/include/clc/opencl/integer/mul24.h
A libclc/opencl/include/clc/opencl/integer/mul_hi.h
A libclc/opencl/include/clc/opencl/integer/popcount.h
A libclc/opencl/include/clc/opencl/integer/rhadd.h
A libclc/opencl/include/clc/opencl/integer/rotate.h
A libclc/opencl/include/clc/opencl/integer/sub_sat.h
A libclc/opencl/include/clc/opencl/integer/upsample.h
A libclc/opencl/include/clc/opencl/math/acos.h
A libclc/opencl/include/clc/opencl/math/acosh.h
A libclc/opencl/include/clc/opencl/math/acospi.h
A libclc/opencl/include/clc/opencl/math/asin.h
A libclc/opencl/include/clc/opencl/math/asinh.h
A libclc/opencl/include/clc/opencl/math/asinpi.h
A libclc/opencl/include/clc/opencl/math/atan.h
A libclc/opencl/include/clc/opencl/math/atan2.h
A libclc/opencl/include/clc/opencl/math/atan2pi.h
A libclc/opencl/include/clc/opencl/math/atanh.h
A libclc/opencl/include/clc/opencl/math/atanpi.h
A libclc/opencl/include/clc/opencl/math/cbrt.h
A libclc/opencl/include/clc/opencl/math/ceil.h
A libclc/opencl/include/clc/opencl/math/copysign.h
A libclc/opencl/include/clc/opencl/math/cos.h
A libclc/opencl/include/clc/opencl/math/cosh.h
A libclc/opencl/include/clc/opencl/math/cospi.h
A libclc/opencl/include/clc/opencl/math/erf.h
A libclc/opencl/include/clc/opencl/math/erfc.h
A libclc/opencl/include/clc/opencl/math/exp.h
A libclc/opencl/include/clc/opencl/math/exp10.h
A libclc/opencl/include/clc/opencl/math/exp2.h
A libclc/opencl/include/clc/opencl/math/expm1.h
A libclc/opencl/include/clc/opencl/math/fabs.h
A libclc/opencl/include/clc/opencl/math/fdim.h
A libclc/opencl/include/clc/opencl/math/floor.h
A libclc/opencl/include/clc/opencl/math/fma.h
A libclc/opencl/include/clc/opencl/math/fmax.h
A libclc/opencl/include/clc/opencl/math/fmin.h
A libclc/opencl/include/clc/opencl/math/fmod.h
A libclc/opencl/include/clc/opencl/math/fract.h
A libclc/opencl/include/clc/opencl/math/frexp.h
A libclc/opencl/include/clc/opencl/math/frexp.inc
A libclc/opencl/include/clc/opencl/math/half_cos.h
A libclc/opencl/include/clc/opencl/math/half_divide.h
A libclc/opencl/include/clc/opencl/math/half_exp.h
A libclc/opencl/include/clc/opencl/math/half_exp10.h
A libclc/opencl/include/clc/opencl/math/half_exp2.h
A libclc/opencl/include/clc/opencl/math/half_log.h
A libclc/opencl/include/clc/opencl/math/half_log10.h
A libclc/opencl/include/clc/opencl/math/half_log2.h
A libclc/opencl/include/clc/opencl/math/half_powr.h
A libclc/opencl/include/clc/opencl/math/half_recip.h
A libclc/opencl/include/clc/opencl/math/half_rsqrt.h
A libclc/opencl/include/clc/opencl/math/half_sin.h
A libclc/opencl/include/clc/opencl/math/half_sqrt.h
A libclc/opencl/include/clc/opencl/math/half_tan.h
A libclc/opencl/include/clc/opencl/math/hypot.h
A libclc/opencl/include/clc/opencl/math/ilogb.h
A libclc/opencl/include/clc/opencl/math/ldexp.h
A libclc/opencl/include/clc/opencl/math/ldexp.inc
A libclc/opencl/include/clc/opencl/math/lgamma.h
A libclc/opencl/include/clc/opencl/math/lgamma_r.h
A libclc/opencl/include/clc/opencl/math/log.h
A libclc/opencl/include/clc/opencl/math/log10.h
A libclc/opencl/include/clc/opencl/math/log1p.h
A libclc/opencl/include/clc/opencl/math/log2.h
A libclc/opencl/include/clc/opencl/math/logb.h
A libclc/opencl/include/clc/opencl/math/mad.h
A libclc/opencl/include/clc/opencl/math/maxmag.h
A libclc/opencl/include/clc/opencl/math/minmag.h
A libclc/opencl/include/clc/opencl/math/modf.h
A libclc/opencl/include/clc/opencl/math/nan.h
A libclc/opencl/include/clc/opencl/math/nan.inc
A libclc/opencl/include/clc/opencl/math/native_cos.h
A libclc/opencl/include/clc/opencl/math/native_divide.h
A libclc/opencl/include/clc/opencl/math/native_exp.h
A libclc/opencl/include/clc/opencl/math/native_exp10.h
A libclc/opencl/include/clc/opencl/math/native_exp2.h
A libclc/opencl/include/clc/opencl/math/native_log.h
A libclc/opencl/include/clc/opencl/math/native_log10.h
A libclc/opencl/include/clc/opencl/math/native_log2.h
A libclc/opencl/include/clc/opencl/math/native_powr.h
A libclc/opencl/include/clc/opencl/math/native_recip.h
A libclc/opencl/include/clc/opencl/math/native_rsqrt.h
A libclc/opencl/include/clc/opencl/math/native_sin.h
A libclc/opencl/include/clc/opencl/math/native_sqrt.h
A libclc/opencl/include/clc/opencl/math/native_tan.h
A libclc/opencl/include/clc/opencl/math/nextafter.h
A libclc/opencl/include/clc/opencl/math/pow.h
A libclc/opencl/include/clc/opencl/math/pown.h
A libclc/opencl/include/clc/opencl/math/powr.h
A libclc/opencl/include/clc/opencl/math/remainder.h
A libclc/opencl/include/clc/opencl/math/remquo.h
A libclc/opencl/include/clc/opencl/math/rint.h
A libclc/opencl/include/clc/opencl/math/rootn.h
A libclc/opencl/include/clc/opencl/math/round.h
A libclc/opencl/include/clc/opencl/math/rsqrt.h
A libclc/opencl/include/clc/opencl/math/sin.h
A libclc/opencl/include/clc/opencl/math/sincos.h
A libclc/opencl/include/clc/opencl/math/sinh.h
A libclc/opencl/include/clc/opencl/math/sinpi.h
A libclc/opencl/include/clc/opencl/math/sqrt.h
A libclc/opencl/include/clc/opencl/math/tan.h
A libclc/opencl/include/clc/opencl/math/tanh.h
A libclc/opencl/include/clc/opencl/math/tanpi.h
A libclc/opencl/include/clc/opencl/math/tgamma.h
A libclc/opencl/include/clc/opencl/math/trunc.h
A libclc/opencl/include/clc/opencl/misc/shuffle.h
A libclc/opencl/include/clc/opencl/misc/shuffle2.h
A libclc/opencl/include/clc/opencl/relational/all.h
A libclc/opencl/include/clc/opencl/relational/any.h
A libclc/opencl/include/clc/opencl/relational/bitselect.h
A libclc/opencl/include/clc/opencl/relational/bitselect.inc
A libclc/opencl/include/clc/opencl/relational/isequal.h
A libclc/opencl/include/clc/opencl/relational/isfinite.h
A libclc/opencl/include/clc/opencl/relational/isgreater.h
A libclc/opencl/include/clc/opencl/relational/isgreaterequal.h
A libclc/opencl/include/clc/opencl/relational/isinf.h
A libclc/opencl/include/clc/opencl/relational/isless.h
A libclc/opencl/include/clc/opencl/relational/islessequal.h
A libclc/opencl/include/clc/opencl/relational/islessgreater.h
A libclc/opencl/include/clc/opencl/relational/isnan.h
A libclc/opencl/include/clc/opencl/relational/isnormal.h
A libclc/opencl/include/clc/opencl/relational/isnotequal.h
A libclc/opencl/include/clc/opencl/relational/isordered.h
A libclc/opencl/include/clc/opencl/relational/isunordered.h
A libclc/opencl/include/clc/opencl/relational/select.h
A libclc/opencl/include/clc/opencl/relational/signbit.h
A libclc/opencl/include/clc/opencl/shared/clamp.h
A libclc/opencl/include/clc/opencl/shared/clamp.inc
A libclc/opencl/include/clc/opencl/shared/max.h
A libclc/opencl/include/clc/opencl/shared/max.inc
A libclc/opencl/include/clc/opencl/shared/min.h
A libclc/opencl/include/clc/opencl/shared/min.inc
A libclc/opencl/include/clc/opencl/shared/vload.h
A libclc/opencl/include/clc/opencl/shared/vstore.h
A libclc/opencl/include/clc/opencl/synchronization/barrier.h
A libclc/opencl/include/clc/opencl/synchronization/cl_mem_fence_flags.h
A libclc/opencl/include/clc/opencl/workitem/get_global_id.h
A libclc/opencl/include/clc/opencl/workitem/get_global_offset.h
A libclc/opencl/include/clc/opencl/workitem/get_global_size.h
A libclc/opencl/include/clc/opencl/workitem/get_group_id.h
A libclc/opencl/include/clc/opencl/workitem/get_local_id.h
A libclc/opencl/include/clc/opencl/workitem/get_local_size.h
A libclc/opencl/include/clc/opencl/workitem/get_num_groups.h
A libclc/opencl/include/clc/opencl/workitem/get_work_dim.h
A libclc/opencl/lib/amdgcn-amdhsa/SOURCES
A libclc/opencl/lib/amdgcn-amdhsa/workitem/get_global_size.cl
A libclc/opencl/lib/amdgcn-amdhsa/workitem/get_local_size.cl
A libclc/opencl/lib/amdgcn-amdhsa/workitem/get_num_groups.cl
A libclc/opencl/lib/amdgcn/SOURCES
A libclc/opencl/lib/amdgcn/cl_khr_int64_extended_atomics/minmax_helpers.ll
A libclc/opencl/lib/amdgcn/mem_fence/fence.cl
A libclc/opencl/lib/amdgcn/synchronization/barrier.cl
A libclc/opencl/lib/amdgcn/workitem/get_global_offset.cl
A libclc/opencl/lib/amdgcn/workitem/get_global_size.cl
A libclc/opencl/lib/amdgcn/workitem/get_group_id.cl
A libclc/opencl/lib/amdgcn/workitem/get_local_id.cl
A libclc/opencl/lib/amdgcn/workitem/get_local_size.cl
A libclc/opencl/lib/amdgcn/workitem/get_num_groups.cl
A libclc/opencl/lib/amdgcn/workitem/get_work_dim.cl
A libclc/opencl/lib/clspv/SOURCES
A libclc/opencl/lib/clspv/math/fma.cl
A libclc/opencl/lib/clspv/shared/vstore_half.cl
A libclc/opencl/lib/clspv/shared/vstore_half.inc
A libclc/opencl/lib/clspv/subnormal_config.cl
A libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/generic/async/async_work_group_copy.cl
A libclc/opencl/lib/generic/async/async_work_group_copy.inc
A libclc/opencl/lib/generic/async/async_work_group_strided_copy.cl
A libclc/opencl/lib/generic/async/async_work_group_strided_copy.inc
A libclc/opencl/lib/generic/async/prefetch.cl
A libclc/opencl/lib/generic/async/prefetch.inc
A libclc/opencl/lib/generic/async/wait_group_events.cl
A libclc/opencl/lib/generic/atomic/atom_add.cl
A libclc/opencl/lib/generic/atomic/atom_and.cl
A libclc/opencl/lib/generic/atomic/atom_cmpxchg.cl
A libclc/opencl/lib/generic/atomic/atom_dec.cl
A libclc/opencl/lib/generic/atomic/atom_inc.cl
A libclc/opencl/lib/generic/atomic/atom_int32_binary.inc
A libclc/opencl/lib/generic/atomic/atom_max.cl
A libclc/opencl/lib/generic/atomic/atom_min.cl
A libclc/opencl/lib/generic/atomic/atom_or.cl
A libclc/opencl/lib/generic/atomic/atom_sub.cl
A libclc/opencl/lib/generic/atomic/atom_xchg.cl
A libclc/opencl/lib/generic/atomic/atom_xor.cl
A libclc/opencl/lib/generic/atomic/atomic_add.cl
A libclc/opencl/lib/generic/atomic/atomic_and.cl
A libclc/opencl/lib/generic/atomic/atomic_cmpxchg.cl
A libclc/opencl/lib/generic/atomic/atomic_dec.cl
A libclc/opencl/lib/generic/atomic/atomic_inc.cl
A libclc/opencl/lib/generic/atomic/atomic_max.cl
A libclc/opencl/lib/generic/atomic/atomic_min.cl
A libclc/opencl/lib/generic/atomic/atomic_or.cl
A libclc/opencl/lib/generic/atomic/atomic_sub.cl
A libclc/opencl/lib/generic/atomic/atomic_xchg.cl
A libclc/opencl/lib/generic/atomic/atomic_xor.cl
A libclc/opencl/lib/generic/common/degrees.cl
A libclc/opencl/lib/generic/common/mix.cl
A libclc/opencl/lib/generic/common/mix.inc
A libclc/opencl/lib/generic/common/radians.cl
A libclc/opencl/lib/generic/common/sign.cl
A libclc/opencl/lib/generic/common/smoothstep.cl
A libclc/opencl/lib/generic/common/step.cl
A libclc/opencl/lib/generic/geometric/cross.cl
A libclc/opencl/lib/generic/geometric/distance.cl
A libclc/opencl/lib/generic/geometric/dot.cl
A libclc/opencl/lib/generic/geometric/fast_distance.cl
A libclc/opencl/lib/generic/geometric/fast_length.cl
A libclc/opencl/lib/generic/geometric/fast_normalize.cl
A libclc/opencl/lib/generic/geometric/fast_normalize.inc
A libclc/opencl/lib/generic/geometric/length.cl
A libclc/opencl/lib/generic/geometric/normalize.cl
A libclc/opencl/lib/generic/integer/abs.cl
A libclc/opencl/lib/generic/integer/abs.inc
A libclc/opencl/lib/generic/integer/abs_diff.cl
A libclc/opencl/lib/generic/integer/abs_diff.inc
A libclc/opencl/lib/generic/integer/add_sat.cl
A libclc/opencl/lib/generic/integer/clz.cl
A libclc/opencl/lib/generic/integer/ctz.cl
A libclc/opencl/lib/generic/integer/hadd.cl
A libclc/opencl/lib/generic/integer/mad24.cl
A libclc/opencl/lib/generic/integer/mad_hi.cl
A libclc/opencl/lib/generic/integer/mad_sat.cl
A libclc/opencl/lib/generic/integer/mul24.cl
A libclc/opencl/lib/generic/integer/mul_hi.cl
A libclc/opencl/lib/generic/integer/popcount.cl
A libclc/opencl/lib/generic/integer/rhadd.cl
A libclc/opencl/lib/generic/integer/rotate.cl
A libclc/opencl/lib/generic/integer/sub_sat.cl
A libclc/opencl/lib/generic/integer/upsample.cl
A libclc/opencl/lib/generic/math/acos.cl
A libclc/opencl/lib/generic/math/acosh.cl
A libclc/opencl/lib/generic/math/acospi.cl
A libclc/opencl/lib/generic/math/asin.cl
A libclc/opencl/lib/generic/math/asinh.cl
A libclc/opencl/lib/generic/math/asinpi.cl
A libclc/opencl/lib/generic/math/atan.cl
A libclc/opencl/lib/generic/math/atan2.cl
A libclc/opencl/lib/generic/math/atan2pi.cl
A libclc/opencl/lib/generic/math/atanh.cl
A libclc/opencl/lib/generic/math/atanpi.cl
A libclc/opencl/lib/generic/math/cbrt.cl
A libclc/opencl/lib/generic/math/ceil.cl
A libclc/opencl/lib/generic/math/copysign.cl
A libclc/opencl/lib/generic/math/cos.cl
A libclc/opencl/lib/generic/math/cosh.cl
A libclc/opencl/lib/generic/math/cospi.cl
A libclc/opencl/lib/generic/math/erf.cl
A libclc/opencl/lib/generic/math/erfc.cl
A libclc/opencl/lib/generic/math/exp.cl
A libclc/opencl/lib/generic/math/exp10.cl
A libclc/opencl/lib/generic/math/exp2.cl
A libclc/opencl/lib/generic/math/expm1.cl
A libclc/opencl/lib/generic/math/fabs.cl
A libclc/opencl/lib/generic/math/fdim.cl
A libclc/opencl/lib/generic/math/floor.cl
A libclc/opencl/lib/generic/math/fma.cl
A libclc/opencl/lib/generic/math/fmax.cl
A libclc/opencl/lib/generic/math/fmax.inc
A libclc/opencl/lib/generic/math/fmin.cl
A libclc/opencl/lib/generic/math/fmin.inc
A libclc/opencl/lib/generic/math/fmod.cl
A libclc/opencl/lib/generic/math/fract.cl
A libclc/opencl/lib/generic/math/frexp.cl
A libclc/opencl/lib/generic/math/half_cos.cl
A libclc/opencl/lib/generic/math/half_divide.cl
A libclc/opencl/lib/generic/math/half_exp.cl
A libclc/opencl/lib/generic/math/half_exp10.cl
A libclc/opencl/lib/generic/math/half_exp2.cl
A libclc/opencl/lib/generic/math/half_log.cl
A libclc/opencl/lib/generic/math/half_log10.cl
A libclc/opencl/lib/generic/math/half_log2.cl
A libclc/opencl/lib/generic/math/half_powr.cl
A libclc/opencl/lib/generic/math/half_recip.cl
A libclc/opencl/lib/generic/math/half_rsqrt.cl
A libclc/opencl/lib/generic/math/half_sin.cl
A libclc/opencl/lib/generic/math/half_sqrt.cl
A libclc/opencl/lib/generic/math/half_tan.cl
A libclc/opencl/lib/generic/math/hypot.cl
A libclc/opencl/lib/generic/math/ilogb.cl
A libclc/opencl/lib/generic/math/ldexp.cl
A libclc/opencl/lib/generic/math/ldexp.inc
A libclc/opencl/lib/generic/math/lgamma.cl
A libclc/opencl/lib/generic/math/lgamma_r.cl
A libclc/opencl/lib/generic/math/log.cl
A libclc/opencl/lib/generic/math/log10.cl
A libclc/opencl/lib/generic/math/log1p.cl
A libclc/opencl/lib/generic/math/log2.cl
A libclc/opencl/lib/generic/math/logb.cl
A libclc/opencl/lib/generic/math/mad.cl
A libclc/opencl/lib/generic/math/maxmag.cl
A libclc/opencl/lib/generic/math/minmag.cl
A libclc/opencl/lib/generic/math/modf.cl
A libclc/opencl/lib/generic/math/nan.cl
A libclc/opencl/lib/generic/math/nan.inc
A libclc/opencl/lib/generic/math/native_cos.cl
A libclc/opencl/lib/generic/math/native_divide.cl
A libclc/opencl/lib/generic/math/native_exp.cl
A libclc/opencl/lib/generic/math/native_exp10.cl
A libclc/opencl/lib/generic/math/native_exp2.cl
A libclc/opencl/lib/generic/math/native_log.cl
A libclc/opencl/lib/generic/math/native_log10.cl
A libclc/opencl/lib/generic/math/native_log2.cl
A libclc/opencl/lib/generic/math/native_powr.cl
A libclc/opencl/lib/generic/math/native_recip.cl
A libclc/opencl/lib/generic/math/native_rsqrt.cl
A libclc/opencl/lib/generic/math/native_sin.cl
A libclc/opencl/lib/generic/math/native_sqrt.cl
A libclc/opencl/lib/generic/math/native_tan.cl
A libclc/opencl/lib/generic/math/nextafter.cl
A libclc/opencl/lib/generic/math/pow.cl
A libclc/opencl/lib/generic/math/pown.cl
A libclc/opencl/lib/generic/math/powr.cl
A libclc/opencl/lib/generic/math/remainder.cl
A libclc/opencl/lib/generic/math/remquo.cl
A libclc/opencl/lib/generic/math/remquo.inc
A libclc/opencl/lib/generic/math/rint.cl
A libclc/opencl/lib/generic/math/rootn.cl
A libclc/opencl/lib/generic/math/round.cl
A libclc/opencl/lib/generic/math/rsqrt.cl
A libclc/opencl/lib/generic/math/sin.cl
A libclc/opencl/lib/generic/math/sincos.cl
A libclc/opencl/lib/generic/math/sinh.cl
A libclc/opencl/lib/generic/math/sinpi.cl
A libclc/opencl/lib/generic/math/sqrt.cl
A libclc/opencl/lib/generic/math/tan.cl
A libclc/opencl/lib/generic/math/tanh.cl
A libclc/opencl/lib/generic/math/tanpi.cl
A libclc/opencl/lib/generic/math/tgamma.cl
A libclc/opencl/lib/generic/math/trunc.cl
A libclc/opencl/lib/generic/misc/shuffle.cl
A libclc/opencl/lib/generic/misc/shuffle2.cl
A libclc/opencl/lib/generic/relational/all.cl
A libclc/opencl/lib/generic/relational/any.cl
A libclc/opencl/lib/generic/relational/binary_def.inc
A libclc/opencl/lib/generic/relational/bitselect.cl
A libclc/opencl/lib/generic/relational/bitselect.inc
A libclc/opencl/lib/generic/relational/isequal.cl
A libclc/opencl/lib/generic/relational/isfinite.cl
A libclc/opencl/lib/generic/relational/isgreater.cl
A libclc/opencl/lib/generic/relational/isgreaterequal.cl
A libclc/opencl/lib/generic/relational/isinf.cl
A libclc/opencl/lib/generic/relational/isless.cl
A libclc/opencl/lib/generic/relational/islessequal.cl
A libclc/opencl/lib/generic/relational/islessgreater.cl
A libclc/opencl/lib/generic/relational/isnan.cl
A libclc/opencl/lib/generic/relational/isnormal.cl
A libclc/opencl/lib/generic/relational/isnotequal.cl
A libclc/opencl/lib/generic/relational/isordered.cl
A libclc/opencl/lib/generic/relational/isunordered.cl
A libclc/opencl/lib/generic/relational/select.cl
A libclc/opencl/lib/generic/relational/signbit.cl
A libclc/opencl/lib/generic/relational/unary_def.inc
A libclc/opencl/lib/generic/shared/clamp.cl
A libclc/opencl/lib/generic/shared/clamp.inc
A libclc/opencl/lib/generic/shared/max.cl
A libclc/opencl/lib/generic/shared/max.inc
A libclc/opencl/lib/generic/shared/min.cl
A libclc/opencl/lib/generic/shared/min.inc
A libclc/opencl/lib/generic/shared/vload.cl
A libclc/opencl/lib/generic/shared/vload_half.inc
A libclc/opencl/lib/generic/shared/vstore.cl
A libclc/opencl/lib/generic/shared/vstore_half.inc
A libclc/opencl/lib/generic/subnormal_config.cl
A libclc/opencl/lib/generic/subnormal_disable.ll
A libclc/opencl/lib/generic/subnormal_helper_func.ll
A libclc/opencl/lib/generic/subnormal_use_default.ll
A libclc/opencl/lib/generic/workitem/get_global_id.cl
A libclc/opencl/lib/generic/workitem/get_global_size.cl
A libclc/opencl/lib/ptx-nvidiacl/SOURCES
A libclc/opencl/lib/ptx-nvidiacl/mem_fence/fence.cl
A libclc/opencl/lib/ptx-nvidiacl/synchronization/barrier.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_global_id.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_group_id.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_id.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_size.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_num_groups.cl
A libclc/opencl/lib/r600/SOURCES
A libclc/opencl/lib/r600/SOURCES_3.9
A libclc/opencl/lib/r600/image/get_image_attributes_impl.ll
A libclc/opencl/lib/r600/image/get_image_channel_data_type.cl
A libclc/opencl/lib/r600/image/get_image_channel_order.cl
A libclc/opencl/lib/r600/image/get_image_depth.cl
A libclc/opencl/lib/r600/image/get_image_dim.cl
A libclc/opencl/lib/r600/image/get_image_height.cl
A libclc/opencl/lib/r600/image/get_image_width.cl
A libclc/opencl/lib/r600/image/read_image_impl.ll
A libclc/opencl/lib/r600/image/read_imagef.cl
A libclc/opencl/lib/r600/image/read_imagei.cl
A libclc/opencl/lib/r600/image/read_imageui.cl
A libclc/opencl/lib/r600/image/write_image_impl.ll
A libclc/opencl/lib/r600/image/write_imagef.cl
A libclc/opencl/lib/r600/image/write_imagei.cl
A libclc/opencl/lib/r600/image/write_imageui.cl
A libclc/opencl/lib/r600/synchronization/barrier.cl
A libclc/opencl/lib/r600/workitem/get_global_offset.cl
A libclc/opencl/lib/r600/workitem/get_global_size.cl
A libclc/opencl/lib/r600/workitem/get_group_id.cl
A libclc/opencl/lib/r600/workitem/get_local_id.cl
A libclc/opencl/lib/r600/workitem/get_local_size.cl
A libclc/opencl/lib/r600/workitem/get_num_groups.cl
A libclc/opencl/lib/r600/workitem/get_work_dim.cl
A libclc/opencl/lib/spirv/SOURCES
A libclc/opencl/lib/spirv/math/fma.cl
A libclc/opencl/lib/spirv/subnormal_config.cl
R libclc/ptx-nvidiacl/lib/SOURCES
R libclc/ptx-nvidiacl/lib/mem_fence/fence.cl
R libclc/ptx-nvidiacl/lib/synchronization/barrier.cl
R libclc/ptx-nvidiacl/lib/workitem/get_global_id.cl
R libclc/ptx-nvidiacl/lib/workitem/get_group_id.cl
R libclc/ptx-nvidiacl/lib/workitem/get_local_id.cl
R libclc/ptx-nvidiacl/lib/workitem/get_local_size.cl
R libclc/ptx-nvidiacl/lib/workitem/get_num_groups.cl
R libclc/r600/lib/SOURCES
R libclc/r600/lib/SOURCES_3.9
R libclc/r600/lib/image/get_image_attributes_impl.ll
R libclc/r600/lib/image/get_image_channel_data_type.cl
R libclc/r600/lib/image/get_image_channel_order.cl
R libclc/r600/lib/image/get_image_depth.cl
R libclc/r600/lib/image/get_image_dim.cl
R libclc/r600/lib/image/get_image_height.cl
R libclc/r600/lib/image/get_image_width.cl
R libclc/r600/lib/image/read_image_impl.ll
R libclc/r600/lib/image/read_imagef.cl
R libclc/r600/lib/image/read_imagei.cl
R libclc/r600/lib/image/read_imageui.cl
R libclc/r600/lib/image/write_image_impl.ll
R libclc/r600/lib/image/write_imagef.cl
R libclc/r600/lib/image/write_imagei.cl
R libclc/r600/lib/image/write_imageui.cl
R libclc/r600/lib/synchronization/barrier.cl
R libclc/r600/lib/workitem/get_global_offset.cl
R libclc/r600/lib/workitem/get_global_size.cl
R libclc/r600/lib/workitem/get_group_id.cl
R libclc/r600/lib/workitem/get_local_id.cl
R libclc/r600/lib/workitem/get_local_size.cl
R libclc/r600/lib/workitem/get_num_groups.cl
R libclc/r600/lib/workitem/get_work_dim.cl
R libclc/spirv/lib/SOURCES
R libclc/spirv/lib/math/fma.cl
R libclc/spirv/lib/subnormal_config.cl
A libclc/utils/gen_convert.py
Log Message:
-----------
[libclc] Reorganize OpenCL builtins (#140557)
This commits moves all OpenCL builtins under a top-level 'opencl'
directory, akin to how the CLC builtins are organized. This new
structure aims to better convey the separation of the two layers and
that 'CLC' is not a subset of OpenCL or a libclc target.
In doing so this commit moves the location of the 'lib' directory to
match CLC: libclc/generic/lib/ becomes libclc/opencl/lib/generic/. This
allows us to remove some special casing in CMake and ensure a common
directory structure.
It also tries to better communicate that the OpenCL headers are
libclc-specific OpenCL headers and should not be confused with or used
as standard OpenCL headers. It does so by ensuring includes are of the
form <clc/opencl/*>. It might be that we don't specifically need the
libclc OpenCL headers and we simply could use clang's built-in
declarations, but we can revisit that later.
Aside from the code move, there is some code formatting and updating a
couple of OpenCL builtin includes to use the readily available gentype
helpers. This allows us to remove some '.inc' files.
Commit: b95ad8eca6ae1ef73b4ee3018b69446995f39353
https://github.com/llvm/llvm-project/commit/b95ad8eca6ae1ef73b4ee3018b69446995f39353
Author: David Green <david.green at arm.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAGCombine] Use isLegalExtLoad for MatchLoadCombine (#140536)
This looks wrong to me, but I don't have a test case where it alters the
generated code.
Commit: 2fb6ff46f62e53e821b37d3ca0a71985969eaf44
https://github.com/llvm/llvm-project/commit/2fb6ff46f62e53e821b37d3ca0a71985969eaf44
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M libclc/clc/include/clc/geometric/clc_cross.h
M libclc/opencl/include/clc/opencl/clc.h
Log Message:
-----------
[libclc] Fix header inclusion issues
For some reason these weren't picked up by pre-commit CI.
Commit: d01355645b1fece147163e1cfe9f71d9c704860e
https://github.com/llvm/llvm-project/commit/d01355645b1fece147163e1cfe9f71d9c704860e
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/test/AST/ByteCode/records.cpp
Log Message:
-----------
[clang][bytecode] Check downcasts for the correct type (#140689)
In multiple inheritance/diamond scenarios, we might arrive at the wrong
type.
Commit: c9d62491981fe720c1b3255fa2f9ddf744590c65
https://github.com/llvm/llvm-project/commit/c9d62491981fe720c1b3255fa2f9ddf744590c65
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
A llvm/test/CodeGen/X86/pr140491-sincos-lifetimes.ll
Log Message:
-----------
[SDAG] Ensure load is included in output chain of sincos expansion (#140525)
The load not being included in the chain meant that it could materialize
after a `@llvm.lifetime.end` annotation on the pointer. This could
result in miscompiles if the stack slot is reused for another value.
Fixes https://github.com/llvm/llvm-project/issues/140491
Commit: f10a90587f044e134d470ca1ab56d8f244f25336
https://github.com/llvm/llvm-project/commit/f10a90587f044e134d470ca1ab56d8f244f25336
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/TargetInfo.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/test/CodeGenCXX/arm64-generated-fn-attr.cpp
Log Message:
-----------
[clang][AArch64] Move initialization of ptrauth-* function attrs (#140277)
Move the initialization of ptrauth-* function attributes near the
initialization of branch protection attributes. The semantics of these
groups of attributes partially overlaps, so handle both groups in
getDefaultFunctionAttributes() and setTargetAttributes() functions to
prevent getting them out of sync. This fixes C++ TLS wrappers.
Commit: f5401c6a16eefda58e8dfbdc246ad353b09777d0
https://github.com/llvm/llvm-project/commit/f5401c6a16eefda58e8dfbdc246ad353b09777d0
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/test/binary-analysis/AArch64/gs-pacret-autiasp.s
M bolt/test/binary-analysis/AArch64/gs-pauth-calls.s
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
Log Message:
-----------
[BOLT] Gadget scanner: analyze functions without CFG information (#133461)
Support simple analysis of the functions for which BOLT is unable to
reconstruct the CFG. This patch is inspired by the approach implemented
by Kristof Beyls in the original prototype of gadget scanner, but a
CFG-unaware counterpart of the data-flow analysis is implemented
instead of separate version of gadget detector, as multiple gadget kinds
are detected now.
Commit: 838ddc28f222ae244626a827a433fd9235546d3d
https://github.com/llvm/llvm-project/commit/838ddc28f222ae244626a827a433fd9235546d3d
Author: Sirui Mu <msrlancern at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.h
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
M clang/lib/CIR/CodeGen/CIRGenTypes.h
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/call.cpp
M clang/test/CIR/IR/call.cir
Log Message:
-----------
[CIR] Add support for indirect calls (#139748)
This PR adds support for indirect calls to the `cir.call` operation.
Commit: 4060d3874623687cd3af73ad883efc7b1ab6fcd2
https://github.com/llvm/llvm-project/commit/4060d3874623687cd3af73ad883efc7b1ab6fcd2
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/CodeGen/BranchFolding.cpp
A llvm/test/DebugInfo/X86/branch-folder-dbg.mir
Log Message:
-----------
[BranchFolding] Merge debug locs on common hoisted code (#140063)
branch-folder hoists common instructions from TBB and FBB into their
pred. Without this patch it achieves this by splicing the instructions from TBB
and deleting the common ones in FBB. That moves the debug locations and debug
instructions from TBB into the pred without modification, which is not
ideal. The merged instructions should get merged debug locations for debugging
and PGO purposes, which is handled in this patch. Debug instructions also need
to be handled differently. That'll come in another patch. This issue was found
by @omern1.
Commit: 5dfaf8418d6b597ef75cf768dba1cd26fc8b318c
https://github.com/llvm/llvm-project/commit/5dfaf8418d6b597ef75cf768dba1cd26fc8b318c
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/fsh-combiner-disabled.ll
Log Message:
-----------
[LLVM][AArch64] Correctly lower funnel shifts by constants. (#140058)
Prevent LowerFunnelShift from creating an invalid ISD::FSHR when
lowering "ISD::FSHL X, Y, 0". Such inputs are rare because it's a NOP
that DAGCombiner will optimise away. However, we should not rely on this
and so this PR mirrors the same optimisation.
Ensure LowerFunnelShift normalises constant shift amounts because isel
rules expect them to be in the range [0, src bit length).
NOTE: To simiplify testing, this PR also adds a command line option to
disable the DAG combiner (-combiner-disabled).
Commit: 0c82e06bb6218c186888d3a4186aae6309bb74c4
https://github.com/llvm/llvm-project/commit/0c82e06bb6218c186888d3a4186aae6309bb74c4
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/test/Transforms/LICM/hoist-binop.ll
Log Message:
-----------
[LICM] Use OverflowTracking to preserve NUW/NSW when reassociating. (#140404)
This enables preserving NSW when both adds have NSW and NUW.
For now, set AllKnownNonNegative/AllKnownNonZero to false when using in
LICM.
https://alive2.llvm.org/ce/z/uu79Xc
Depends on https://github.com/llvm/llvm-project/pull/140403.
PR: https://github.com/llvm/llvm-project/pull/140404
Commit: 8f03e1a9d5ef4eab0a249f7007dbc1b7b9a0921a
https://github.com/llvm/llvm-project/commit/8f03e1a9d5ef4eab0a249f7007dbc1b7b9a0921a
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/include/clang/Basic/DebugOptions.def
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/CMakeLists.txt
A clang/test/DebugInfo/KeyInstructions/flag.cpp
A clang/test/DebugInfo/KeyInstructions/lit.local.cfg
M clang/test/lit.site.cfg.py.in
Log Message:
-----------
[KeyInstr][Clang] Add Clang option -g[no-]key-instructions (#134627)
This needs to be driver level to pass an -mllvm flag to LLVM, though this may
change soon as the -mllvm flag will soon not be necessary.
Keep the flag help-hidden as the feature is under development.
This patch is part of a stack that teaches Clang to generate Key Instructions
metadata for C and C++.
RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668
The feature is only functional in LLVM if LLVM is built with CMake flag
LLVM_EXPERIMENTAL_KEY_INSTRUCTIONs. Eventually that flag will be removed.
Commit: a17ff7f33ccbccec1a71c1846cdfed43c4818d08
https://github.com/llvm/llvm-project/commit/a17ff7f33ccbccec1a71c1846cdfed43c4818d08
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/test/CodeGen/X86/scalarize-fp.ll
Log Message:
-----------
[X86] scalarize-fp.ll - add AVX512 test coverage
Commit: 4b54d1a49781c7ec69334fbdee0b6e61a824d101
https://github.com/llvm/llvm-project/commit/4b54d1a49781c7ec69334fbdee0b6e61a824d101
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/test/CodeGen/X86/scalarize-fp.ll
Log Message:
-----------
[X86] Add #140693 test coverage
Commit: a6303099fde64875ded9a4fb807abc907cb80629
https://github.com/llvm/llvm-project/commit/a6303099fde64875ded9a4fb807abc907cb80629
Author: Scott Manley <rscottmanley at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M flang/include/flang/Lower/OpenACC.h
M flang/lib/Lower/OpenACC.cpp
M flang/test/Lower/OpenACC/acc-reduction.f90
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
Log Message:
-----------
[OpenACC] unify reduction and private-like init region recipes (#140652)
Between firstprivate, private and reduction init regions, the difference
is largely whether or not the temp that is created is initialized or
not. Some recent fixes were made to privatization (#135698, #137869) but
did not get propagated to reductions, even though they need to return
the yield the same things from their init regions.
To mitigate this discrepancy in the future, refactor the init region
recipes so they can be shared between the three recipe ops.
Also add "none" to the OpenACC_ReductionOperator enum for better error
checking.
Commit: 746c682c4a8a6418fa7fca2c65176433135e6549
https://github.com/llvm/llvm-project/commit/746c682c4a8a6418fa7fca2c65176433135e6549
Author: hev <wangrui at loongson.cn>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArch.td
M llvm/lib/Target/LoongArch/LoongArchExpandAtomicPseudoInsts.cpp
M llvm/lib/Target/LoongArch/LoongArchISelDAGToDAG.h
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
M llvm/test/CodeGen/LoongArch/alloca.ll
M llvm/test/CodeGen/LoongArch/alsl.ll
M llvm/test/CodeGen/LoongArch/annotate-tablejump.ll
M llvm/test/CodeGen/LoongArch/atomicrmw-cond-sub-clamp.ll
M llvm/test/CodeGen/LoongArch/atomicrmw-uinc-udec-wrap.ll
M llvm/test/CodeGen/LoongArch/bitreverse.ll
M llvm/test/CodeGen/LoongArch/bnez-beqz.ll
M llvm/test/CodeGen/LoongArch/branch-relaxation.ll
M llvm/test/CodeGen/LoongArch/bstrins_w.ll
M llvm/test/CodeGen/LoongArch/bstrpick_w.ll
M llvm/test/CodeGen/LoongArch/bswap-bitreverse.ll
M llvm/test/CodeGen/LoongArch/bswap.ll
M llvm/test/CodeGen/LoongArch/bytepick.ll
M llvm/test/CodeGen/LoongArch/ctlz-cttz-ctpop.ll
M llvm/test/CodeGen/LoongArch/ctpop-with-lsx.ll
M llvm/test/CodeGen/LoongArch/exception-pointer-register.ll
M llvm/test/CodeGen/LoongArch/fabs.ll
M llvm/test/CodeGen/LoongArch/fcopysign.ll
M llvm/test/CodeGen/LoongArch/feature-32bit.ll
M llvm/test/CodeGen/LoongArch/intrinsic-csr-side-effects.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/and.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/ashr.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/atomic-cmpxchg-128.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/atomic-cmpxchg.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw-fp.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw-lam-bh.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw-lamcas.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw-minmax.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/br.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/double-convert.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/fcmp-dbl.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/fcmp-flt.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/float-convert.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/load-store-fp.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/load-store.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/lshr.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/mul.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/sdiv-udiv-srem-urem.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/select-bare-int.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/select-fpcc-int.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/select-icc-int.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/sext-zext-trunc.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/shl.ll
M llvm/test/CodeGen/LoongArch/jump-table.ll
M llvm/test/CodeGen/LoongArch/rotl-rotr.ll
M llvm/test/CodeGen/LoongArch/select-to-shiftand.ll
M llvm/test/CodeGen/LoongArch/shift-masked-shamt.ll
M llvm/test/CodeGen/LoongArch/smul-with-overflow.ll
M llvm/test/CodeGen/LoongArch/stack-realignment-with-variable-sized-objects.ll
M llvm/test/CodeGen/LoongArch/typepromotion-overflow.ll
M llvm/test/MC/LoongArch/Basic/Integer/atomic.s
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.generated.expected
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.nogenerated.expected
Log Message:
-----------
[LoongArch] Introduce `32s` target feature for LA32S ISA extensions (#139695)
According to the offical LoongArch reference manual, the 32-bit
LoongArch is divied into two variants: the Reduced version (LA32R) and
Standard version (LA32S). LA32S extends LA32R by adding additional
instructions, and the 64-bit version (LA64) fully includes the LA32S
instruction set.
This patch introduces a new target feature `32s` for the LoongArch
backend, enabling support for instructions specific to the LA32S
variant.
The LA32S exntension includes the following additional instructions:
- ALSL.W
- {AND,OR}N
- B{EQ,NE}Z
- BITREV.{4B,W}
- BSTR{INS,PICK}.W
- BYTEPICK.W
- CL{O,Z}.W
- CPUCFG
- CT{O,Z}.W
- EXT.W,{B,H}
- F{LD,ST}X.{D,S}
- MASK{EQ,NE}Z
- PC{ADDI,ALAU12I}
- REVB.2H
- ROTR{I},W
Additionally, LA32R defines three new instruction aliases:
- RDCNTID.W RJ => RDTIMEL.W ZERO, RJ
- RDCNTVH.W RD => RDTIMEH.W RD, ZERO
- RDCNTVL.W RD => RDTIMEL.W RD, ZERO
Commit: f62c379f71b12e23b80e4f1bfa07900f8469050d
https://github.com/llvm/llvm-project/commit/f62c379f71b12e23b80e4f1bfa07900f8469050d
Author: Pradeep Kumar <pradeepku at nvidia.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/docs/NVPTXUsage.rst
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
A llvm/test/CodeGen/NVPTX/clusterlaunchcontrol-multicast.ll
A llvm/test/CodeGen/NVPTX/clusterlaunchcontrol.ll
Log Message:
-----------
[LLVM][NVPTX] Add NVPTX codegen support for clusterlaunchcontrol instruction (#134568)
This commit adds NVPTX codegen support for clusterlaunchcontrol instructions with tests under clusterlaunchcontrol.ll and clusterlaunchcontrol-multicast.ll. For more information, Please refer [PTX
ISA](https://docs.nvidia.com/cuda/parallel-thread-execution/?a#parallel-synchronization-and-communication-instructions-clusterlaunchcontrol-try-cancel)
Commit: 67440f0b836268b5741e2d047044339122c37748
https://github.com/llvm/llvm-project/commit/67440f0b836268b5741e2d047044339122c37748
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.h
M clang/test/AST/ByteCode/cxx11.cpp
Log Message:
-----------
[clang][bytecode] Diagnose comparisons of unrelated zero-sized pointers (#140695)
Commit: 48a2836b4de7998018ee4f2b8c8171f7151aebf5
https://github.com/llvm/llvm-project/commit/48a2836b4de7998018ee4f2b8c8171f7151aebf5
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
A bolt/test/binary-analysis/AArch64/gs-pauth-address-checks.s
M bolt/test/binary-analysis/AArch64/gs-pauth-address-materialization.s
M bolt/test/binary-analysis/AArch64/gs-pauth-calls.s
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
A bolt/test/binary-analysis/AArch64/gs-pauth-signing-oracles.s
Log Message:
-----------
[BOLT] Gadget scanner: detect signing oracles (#134146)
Implement the detection of signing oracles. In this patch, a signing
oracle is defined as a sign instruction that accepts a "non-protected"
pointer, but for a slightly different definition of "non-protected"
compared to control flow instructions.
A second BitVector named TrustedRegs is added to the register state
computed by the data-flow analysis. The difference between a
"safe-to-dereference" and a "trusted" register states is that to make
an unsafe register trusted by authentication, one has to make sure
that the authentication succeeded. For example, on AArch64 without
FEAT_PAuth2 and FEAT_EPAC, an authentication instruction produces an
invalid pointer on failure, so that subsequent memory access triggers
an error, but re-signing such pointer would "fix" the signature.
Note that while a separate "trusted" register state may be redundant
depending on the specific semantics of auth and sign operations, it is
still important to check signing operations: while code like this
resign:
autda x0, x1
pacda x0, x2
ret
is probably safe provided `autda` generates an error on authentication
failure, this function
sign_anything:
pacda x0, x1
ret
is inherently unsafe.
Commit: 3918ef3688dc7e9ef1c0158867efe2b88bf68bec
https://github.com/llvm/llvm-project/commit/3918ef3688dc7e9ef1c0158867efe2b88bf68bec
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/strided-loads-with-external-use-ptr.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/unordered-loads-operands.ll
M llvm/test/Transforms/SLPVectorizer/X86/reordered-masked-loads.ll
Log Message:
-----------
[SLP]Fix the analysis for masked compress loads
Need to remove the check for Orders in interleaved loads analysis and
estimate shuffle cost without the reordering to correctly handle the
costs of masked compress loads.
Reviewers: hiraditya, HanKuanChen, RKSimon
Reviewed By: HanKuanChen, RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/140647
Commit: 5ed0b3a2d7596e3d04fe51998c14e7927e6d7e2e
https://github.com/llvm/llvm-project/commit/5ed0b3a2d7596e3d04fe51998c14e7927e6d7e2e
Author: peremyach <akhabutdinov at meta.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h
M llvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h
M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
M llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp
M llvm/lib/DebugInfo/GSYM/DwarfTransformer.cpp
Log Message:
-----------
Revert "Reduce llvm-gsymutil memory usage" (#140696)
Reverts llvm/llvm-project#139907 as per discussion in
https://github.com/llvm/llvm-project/issues/140545 due to tests becoming
flaky
Commit: 14706d6cdebf6f7660eec70399716eb90cbbffc2
https://github.com/llvm/llvm-project/commit/14706d6cdebf6f7660eec70399716eb90cbbffc2
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/lib/Passes/PAuthGadgetScanner.cpp
Log Message:
-----------
[BOLT] Gadget scanner: use more appropriate types (NFC) (#135661)
* use more flexible `ArrayRef<T>` and `StringRef` types instead of
`const std::vector<T> &` and `const std::string &`, correspondingly,
for function arguments
* return plain `const SrcState &` instead of `ErrorOr<const SrcState &>`
from `SrcSafetyAnalysis::getStateBefore`, as absent state is not
handled gracefully by any caller
Commit: 85a6bedf00e9e655cc0cf690878af37820f94905
https://github.com/llvm/llvm-project/commit/85a6bedf00e9e655cc0cf690878af37820f94905
Author: David Green <david.green at arm.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-sve-splat.mir
Log Message:
-----------
[GlobalISel] Add known bits and sign-bits handling for G_SPLAT_VECTOR (#140204)
This forwards the KnownBits / SignBits from the scalar operand through
to the vector elements. The value is implicitly truncated if it is
larger than the vector element size. The change in
GISelValueTracking::computeNumSignBits allows scalable sign-bits using a
single element demanded elts, and brings it in line with the code in
ValueTracking and SDAG (and GISelValueTracking::getKnownBits). That was
the main motivation for adding this opcode, to prevent scalable vector
asserts.
Commit: 9c33faf8628ae639e6c9b39857e1e413c49e38f0
https://github.com/llvm/llvm-project/commit/9c33faf8628ae639e6c9b39857e1e413c49e38f0
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/test/CodeGenCXX/cxx1y-variable-template.cpp
M clang/test/SemaCXX/cxx1y-variable-templates_top_level.cpp
Log Message:
-----------
[Clang] Use correct evaluation contexts when instantiating a var without initializer (#140699)
The evaluation context was improperly set up, such that we were trying
to set up cleanups for a global variable at the point of use, which led
to incorrect diagnostics about the variable not being capturable.
Fixes #140632
Fixes #140622
Commit: 54f2b45c98c6f5ea4767b9a58930d634d8e95da6
https://github.com/llvm/llvm-project/commit/54f2b45c98c6f5ea4767b9a58930d634d8e95da6
Author: Rohit Aggarwal <44664450+rohitaggarwal007 at users.noreply.github.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/include/clang/Basic/CodeGenOptions.def
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/test/Driver/fveclib.c
M llvm/include/llvm/Frontend/Driver/CodeGenOptions.h
Log Message:
-----------
[Clang][Driver][fveclib] Fix target parsing for -fveclib=AMDLIBM option (#140544)
The behavior of -fveclib=AMDLIBM should be similar to -fveclib=libmvec.
Example - Error message for unsupported target usage should be same.
We are handling the missed cases for -fveclib=AMDLIBM and aligning it to
-fveclib=libmvec usage.
---------
Co-authored-by: Rohit Aggarwal <Rohit.Aggarwal at amd.com>
Commit: 01d9c7f2ac095707b0cc01b75878b9e25b20a909
https://github.com/llvm/llvm-project/commit/01d9c7f2ac095707b0cc01b75878b9e25b20a909
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/scalarize-fp.ll
Log Message:
-----------
[X86] combineSCALAR_TO_VECTOR - fold (v4i32 (scalar_to_vector (i32 (bitcast (float))))) to MOVD/SS (#140704)
Partial fix for #140693
Commit: f057a58be39937b2ce8b4a02a13fb1bee3b1f2a2
https://github.com/llvm/llvm-project/commit/f057a58be39937b2ce8b4a02a13fb1bee3b1f2a2
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/include/llvm/IR/DebugInfo.h
M llvm/lib/IR/DebugInfo.cpp
A llvm/test/DebugInfo/Generic/debuginfofinder-retained-nodes.ll
Log Message:
-----------
[DebugInfo] Update DebugInfoFinder to take retainedNodes into account (#140285)
Since https://reviews.llvm.org/D144004, DISubprogram's retainedNodes
field is used to track DIImportedEntities, in addition to local
variables and labels.
However, the corresponding update for DebugInfoFinder, to make it visit
DISubprogram's retainedNodes, was missing.
This is the fix for it.
This change is separated from
https://github.com/llvm/llvm-project/pull/119001 to simplify it.
Commit: 90539473ec66d023daf333d153e2b9d80cfaf6b9
https://github.com/llvm/llvm-project/commit/90539473ec66d023daf333d153e2b9d80cfaf6b9
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/utils/TableGen/Basic/DirectiveEmitter.cpp
Log Message:
-----------
[utils][TableGen] Remove unused parameter in DirectiveEmitter, NFC (#140605)
Commit: 46ab684bddc812771226e53010642f3c846efe92
https://github.com/llvm/llvm-project/commit/46ab684bddc812771226e53010642f3c846efe92
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/test/TableGen/directive1.td
M llvm/test/TableGen/directive2.td
M llvm/utils/TableGen/Basic/DirectiveEmitter.cpp
Log Message:
-----------
[utils][TableGen] Unify name qualifications in DirectiveEmitter (#140606)
Remove extraneous qualifications from names when
- the name is explicitly enclosed by corresponding namespaces, and
- the name is in a body of a function defined in corresponding
namespaces. Otherwise add missing qualifications.
This applies to individual sections of TableGen output, and makes name
lookup independent of the context in which these sections are included.
Commit: d56d537f9b003869e9376fd9e15bff99423ca4af
https://github.com/llvm/llvm-project/commit/d56d537f9b003869e9376fd9e15bff99423ca4af
Author: Dmitry Sidorov <dmitry.sidorov at intel.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/AST/ASTContext.cpp
M clang/lib/Sema/SemaType.cpp
M clang/test/CodeGenCXX/ext-int.cpp
M clang/test/CodeGenCXX/matrix-vector-bit-int.cpp
M clang/test/SemaCXX/ext-int.cpp
M clang/test/SemaCXX/matrix-type.cpp
A llvm/test/CodeGen/X86/vec-2bit-int.ll
Log Message:
-----------
[Clang] Allow vector and matrix type attributes for sub-byte _BitInt (#140253)
It is useful for several cases, particularly for 4-bit integers.
Commit: cf1f116f7832908ed8eb91e02403055e9ef555ee
https://github.com/llvm/llvm-project/commit/cf1f116f7832908ed8eb91e02403055e9ef555ee
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
M llvm/test/Transforms/LoopVectorize/RISCV/blocks-with-dead-instructions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-cost.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/pr47665.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/X86/replicate-recipe-with-only-first-lane-used.ll
A llvm/test/Transforms/LoopVectorize/constantfolder-infer-correct-gepty.ll
A llvm/test/Transforms/LoopVectorize/constantfolder.ll
M llvm/test/Transforms/LoopVectorize/debugloc-optimize-vfuf-term.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/interleave-and-scalarize-only.ll
Log Message:
-----------
[VPlan] Introduce constant folder in simplifyRecipe (#125365)
Introduce a VPlan-level constant folder in simplifyRecipe that tries to
fold a recipe to a constant using TargetFolder.
Commit: 4fa2c62e324afacf2788e60cc34bcfe7ee62d06d
https://github.com/llvm/llvm-project/commit/4fa2c62e324afacf2788e60cc34bcfe7ee62d06d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/CodeGen/CGClass.cpp
Log Message:
-----------
Fix MSVC "not all control paths return a value" warning. NFC.
Commit: 2f66e5fcbad211e0d71b1a533071d31b36f088ec
https://github.com/llvm/llvm-project/commit/2f66e5fcbad211e0d71b1a533071d31b36f088ec
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/Sema/JumpDiagnostics.cpp
A clang/test/SemaOpenACC/gh140712.cpp
Log Message:
-----------
[OpenACC] Fixed error recovery during jump diagnostics for OpenACC
We didn't consider/test a case where the structured block/loop would be
empty, which happens when the body is ONLY a break.
Fixes: #140712
Commit: 822db013192e446bb7197a4cec82b8f02207cc41
https://github.com/llvm/llvm-project/commit/822db013192e446bb7197a4cec82b8f02207cc41
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M bolt/lib/Passes/PAuthGadgetScanner.cpp
Log Message:
-----------
[BOLT] Fix warnings
This patch fixes:
bolt/lib/Passes/PAuthGadgetScanner.cpp:564:19: error: unused
variable 'CheckedReg' [-Werror,-Wunused-variable]
bolt/lib/Passes/PAuthGadgetScanner.cpp:565:17: error: unused
variable 'FirstInst' [-Werror,-Wunused-variable]
Commit: 86f2fdd5e448abbe8d215e2f79a0c388bf7ca2ed
https://github.com/llvm/llvm-project/commit/86f2fdd5e448abbe8d215e2f79a0c388bf7ca2ed
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/include/llvm/TableGen/Record.h
M mlir/lib/TableGen/CodeGenHelpers.cpp
Log Message:
-----------
[TableGen] Tach getInputFilename to return StringRef (NFC) (#140690)
AFAICT, all callers of getInputFilename consume the string right away.
Nobody seems to rely on the "copy" behavior that comes with returning
"const std::string".
Commit: ba52b56e1864319b1044a8c6cd543be74c33b4d4
https://github.com/llvm/llvm-project/commit/ba52b56e1864319b1044a8c6cd543be74c33b4d4
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
Log Message:
-----------
[Analysis] Avoid repeated hash lookups (NFC) (#140691)
With this patch, we always update Inserted. That's OK because we only
read Inserted as shown in this patch. Without this patch, it's a
write-only variable.
Commit: 050892d2f879d278b3342edde028f62bf77d00d2
https://github.com/llvm/llvm-project/commit/050892d2f879d278b3342edde028f62bf77d00d2
Author: Ross Brunton <ross at codeplay.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M offload/include/Shared/OffloadErrcodes.inc
M offload/include/Shared/OffloadError.h
M offload/liboffload/API/Common.td
M offload/liboffload/include/generated/OffloadAPI.h
M offload/liboffload/include/generated/OffloadPrint.hpp
M offload/liboffload/src/OffloadImpl.cpp
M offload/libomptarget/PluginManager.cpp
M offload/libomptarget/device.cpp
M offload/plugins-nextgen/amdgpu/dynamic_hsa/hsa.h
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/plugins-nextgen/common/src/GlobalHandler.cpp
M offload/plugins-nextgen/common/src/JIT.cpp
M offload/plugins-nextgen/common/src/PluginInterface.cpp
M offload/plugins-nextgen/common/src/RPC.cpp
M offload/plugins-nextgen/cuda/dynamic_cuda/cuda.h
M offload/plugins-nextgen/cuda/src/rtl.cpp
M offload/plugins-nextgen/host/src/rtl.cpp
M offload/unittests/OffloadAPI/kernel/olGetKernel.cpp
Log Message:
-----------
[Offload] Use new error code handling mechanism and lower-case messages (#139275)
[Offload] Use new error code handling mechanism
This removes the old ErrorCode-less error method and requires
every user to provide a concrete error code. All calls have been
updated.
In addition, for consistency with error messages elsewhere in LLVM, all
messages have been made to start lower case.
Commit: c19a3cb613bd43813f30d98d34808430ff95b202
https://github.com/llvm/llvm-project/commit/c19a3cb613bd43813f30d98d34808430ff95b202
Author: Ross Brunton <ross at codeplay.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M offload/unittests/OffloadAPI/common/Fixtures.hpp
Log Message:
-----------
[Offload] Make OffloadAPI gtest error messages more readable (#140728)
Commit: ed07412888e2ef5a1f36a48eb5a280050e223fad
https://github.com/llvm/llvm-project/commit/ed07412888e2ef5a1f36a48eb5a280050e223fad
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
A flang/include/flang/Optimizer/CodeGen/LLVMInsertChainFolder.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/lib/Optimizer/CodeGen/CMakeLists.txt
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
A flang/lib/Optimizer/CodeGen/LLVMInsertChainFolder.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
A flang/test/Fir/convert-and-fold-insert-on-range.fir
Log Message:
-----------
[flang] translate derived type array init to attribute if possible (#140268)
This patch relies on #140235 and #139724 to speed-up compilations of
files with derived type array global with initial value.
Currently, such derived type global init was lowered to an
llvm.mlir.insertvalue chain in the LLVM IR dialect because there was no
way to represent such value via attributes.
This chain was later folded in LLVM dialect to LLVM IR using LLVM IR
(not dialect) folding. This insert chain generation and folding is very
expensive for big arrays. For instance, this patch brings down the
compilation of FM_lib fmsave.f95 from 50s
to 0.5s.
Commit: a0058d18512e0ddf355bb474701e2183d84a0506
https://github.com/llvm/llvm-project/commit/a0058d18512e0ddf355bb474701e2183d84a0506
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Make TreeEntry a class and store "need-to-schedule" state
TreeEntry should be a class, not a struct, since it has private members.
Also, do no repeat Does-Not-Need-To-Schedule analysis during codegen,
codegen may affect the result of the analysis in future patches.
Reviewers: hiraditya, HanKuanChen, RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/140734
Commit: 1a9377bef3d3c42edf6cc705466ededd6f7761f6
https://github.com/llvm/llvm-project/commit/1a9377bef3d3c42edf6cc705466ededd6f7761f6
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/Analysis/ThreadSafety.cpp
A clang/test/Analysis/thread-safety-handle-parenthesis.cpp
Log Message:
-----------
[clang][analysis] Thread Safety Analysis: Handle parenthesis (#140656)
Commit: 621a5a976e2364677e57f1b3ab37417f2ed38fba
https://github.com/llvm/llvm-project/commit/621a5a976e2364677e57f1b3ab37417f2ed38fba
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineAdd - use SDPatternMatch to simplify "(add (zext (vXi1 X)), Y) -> (sub Y, (sext (vXi1 X)))" matching. (#140731)
Commit: 09fd8f0093b8ff489d76285d893be152e4ca4c24
https://github.com/llvm/llvm-project/commit/09fd8f0093b8ff489d76285d893be152e4ca4c24
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512f.ll
Log Message:
-----------
[X86] matchBinaryPermuteShuffle - match AVX512 "cross lane" SHLDQ/SRLDQ style patterns using VALIGN (#140538)
Very similar to what we do in lowerShuffleAsVALIGN
I've updated isTargetShuffleEquivalent to correctly handle SM_SentinelZero in the expected shuffle mask, but it only allows an exact match (or the test mask was undef) - it can't be used to match zero elements with MaskedVectorIsZero.
Noticed while working on #140516
Commit: 2318491432f7afb8f98713a2e43c685088cc729e
https://github.com/llvm/llvm-project/commit/2318491432f7afb8f98713a2e43c685088cc729e
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Do the analysis first and then actual codegen, NFC
Commit: 138a899fe047fb2734af5e1996bfa39f7a5897c2
https://github.com/llvm/llvm-project/commit/138a899fe047fb2734af5e1996bfa39f7a5897c2
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
A clang/test/CIR/CodeGenOpenACC/combined-copy.c
Log Message:
-----------
[OpenACC][CIR] Implement simple 'copy' lowering for combined constructs
These are identical in IR as the 'compute' constructs, but require a
little additional work since we have 2 operations to work around, not
just 1. Note that the test is nearly identical to the compute version,
except that the combined 'tag's are present, plus the 'loop' construct.
Commit: ad80f736312c73c51501bf26ca9d2d0569b8a8c0
https://github.com/llvm/llvm-project/commit/ad80f736312c73c51501bf26ca9d2d0569b8a8c0
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] Fix a warning
This patch fixes:
llvm/lib/Target/X86/X86ISelLowering.cpp:39622:12: error: explicitly
assigning value of variable of type 'SDValue' to itself
[-Werror,-Wself-assign-overloaded]
Commit: 95e4db8fa7d4adf1cd629e3fa7877ec95a1adfaa
https://github.com/llvm/llvm-project/commit/95e4db8fa7d4adf1cd629e3fa7877ec95a1adfaa
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
A llvm/test/tools/llvm-objdump/ELF/SystemZ/adjust-vma.test
M llvm/test/tools/llvm-objdump/X86/elf-disassemble-symbololize-operands.yaml
M llvm/tools/llvm-objdump/llvm-objdump.cpp
Log Message:
-----------
[llvm-objdump] --adjust-vma: Call getInstruction with adjusted address
llvm-objdump currently calls MCDisassembler::getInstruction with
unadjusted address and MCInstPrinter::printInst with adjusted address.
The decoded branch targets will be adjusted as expected for most targets
(as the getInstruction address is insignificant) but not for SystemZ
(where the getInstruction address is displayed).
Specify an adjust address to fix SystemZInstPrinter output.
The added test utilizes llvm/utils/update_test_body.py to make updates
easier and additionally checks that we don't adjust SHN_ABS symbol
addresses.
Pull Request: https://github.com/llvm/llvm-project/pull/140471
Commit: 4a0ae4f504c82869355349dd22b89f2228b886f3
https://github.com/llvm/llvm-project/commit/4a0ae4f504c82869355349dd22b89f2228b886f3
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
Log Message:
-----------
[RISCV] Add LD_RV32/SD_RV32 to a few more functions in RISCVInstrInfo. (#140640)
isLoadFromStackSlot/isStoreToStackSlot/getMemOperandsWithOffsetWidth
The first 2 probably requires spills/reloads which we don't use
LD_RV32/SD_RV32 for yet.
I think getMemOperandsWithOffsetWidth is mainly used for load/store
clustering. I think we can assume this just works.
Commit: e8dff7bea468525ec966061324baed88d67b025d
https://github.com/llvm/llvm-project/commit/e8dff7bea468525ec966061324baed88d67b025d
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/SemaOpenACC/compute-construct-copy-clause.c
Log Message:
-----------
[OpenACC] Fix location of array-section diagnostic.
In a sub-subscript of an array-section, it is actually an array section.
So make sure we get the location correct when there isn't a 'colon' to
look at.
Commit: 17e293d5b8f1e4486606127f2bc2fa5d1d52c13e
https://github.com/llvm/llvm-project/commit/17e293d5b8f1e4486606127f2bc2fa5d1d52c13e
Author: CarolineConcatto <caroline.concatto at arm.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/MC/Disassembler/AArch64/armv8.4a-flag.txt
Log Message:
-----------
[LLVM][AArch64]CFINV - Add UNPREDICTABLE behaviour if CRm is not zero (#140593)
Now CFINV follows AXFLAGS behaviour for CRm.
It looks like (0) in the instruction encoding means that the behaviour
is UNPREDICTABLE if that bit is not zero.
Commit: b92b548168ce6e9023b689cf0cf429dee62c3c0c
https://github.com/llvm/llvm-project/commit/b92b548168ce6e9023b689cf0cf429dee62c3c0c
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCV.td
M llvm/lib/Target/RISCV/RISCVProcessors.td
A llvm/lib/Target/RISCV/RISCVSchedSiFiveP800.td
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/div.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/fmadd.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/load.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/mask.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/mul-cpop.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/vle-vse-vlm.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/vlse-vsse.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/vlseg-vsseg.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/vlxe-vsxe.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/vmv.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/zfa.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/zvbb.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/zvbc.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/zvkg.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/zvkned.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/zvknhb.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/zvksed.s
A llvm/test/tools/llvm-mca/RISCV/SiFiveP800/zvksh.s
Log Message:
-----------
[RISCV] Add scheduling model for SiFive P800 processors (#139316)
The scheduling model for SiFive P800 series cores. They have 6 integer
pipes, 2 floating point pipes, and 2 vector pipes.
https://chipsandcheese.com/p/hot-chips-2023-sifives-p870-takes-risc-v-further
The tests are meant to have the same coverage as its P600 counterpart.
Commit: 54aa9282edb5a3abe625893a63018bb75dc5c541
https://github.com/llvm/llvm-project/commit/54aa9282edb5a3abe625893a63018bb75dc5c541
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIROrderedAssignments.cpp
A flang/test/HLFIR/order_assignments/where-after-cse.fir
Log Message:
-----------
[flang] Undo the effects of CSE for hlfir.exactly_once. (#140190)
CSE may delete operations from hlfir.exactly_once and reuse
the equivalent results from the parent region(s), e.g. from the parent
hlfir.region_assign. This makes it problematic to clone
hlfir.exactly_once before the top-level hlfir.where.
This patch adds a "canonicalizer" that pulls in such operations
back into hlfir.exactly_once.
Commit: b3c3297c1a8ee85efac7236b47883bc0b89d1883
https://github.com/llvm/llvm-project/commit/b3c3297c1a8ee85efac7236b47883bc0b89d1883
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedSiFiveP800.td
Log Message:
-----------
[RISCV] Fix missing WriteRes for Q extensions in SiFiveP800 scheudling model
Commit: 7e9d9dba9cabb4cd840e5f34a07729f8fdc2112e
https://github.com/llvm/llvm-project/commit/7e9d9dba9cabb4cd840e5f34a07729f8fdc2112e
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/fmax3-maximumnum.ll
M llvm/test/CodeGen/AMDGPU/fmin3-minimumnum.ll
Log Message:
-----------
[AMDGPU][True16][CodeGen] update test fmax3/fmin3 test with true16 mode (#140752)
This is a NFC patch.
This patch duplicate GFX11plus runlines and apply them with
"+mattr=+real-true16" and "+mattr=-real-true16" on fmax3/fmin3 tests,
and putting '-real-true16' on gisel testline. And then update the test
with the update script
Commit: ff127624be8cca921d1a6ed457cc3310b094ff59
https://github.com/llvm/llvm-project/commit/ff127624be8cca921d1a6ed457cc3310b094ff59
Author: Dave Lee <davelee.com at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M lldb/source/Target/TargetProperties.td
M lldb/test/API/functionalities/data-formatter/data-formatter-advanced/TestDataFormatterAdv.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/forward_list/TestDataFormatterGenericForwardList.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/list/TestDataFormatterGenericList.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/multimap/TestDataFormatterGenericMultiMap.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/multiset/TestDataFormatterGenericMultiSet.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/set/TestDataFormatterGenericSet.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/unordered/TestDataFormatterGenericUnordered.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/iterator/TestDataFormatterLibccIterator.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/map/TestDataFormatterLibccMap.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/string/TestDataFormatterLibcxxString.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/string_view/TestDataFormatterLibcxxStringView.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/vbool/TestDataFormatterLibcxxVBool.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/vector/TestDataFormatterLibcxxVector.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libstdcpp/iterator/TestDataFormatterStdIterator.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libstdcpp/map/TestDataFormatterStdMap.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libstdcpp/string/TestDataFormatterStdString.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libstdcpp/vbool/TestDataFormatterStdVBool.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libstdcpp/vector/TestDataFormatterStdVector.py
M lldb/test/API/functionalities/data-formatter/synthcapping/TestSyntheticCapping.py
Log Message:
-----------
[lldb] Reduce max-children-count default to readable size (#139826)
Change the default from 256 to 24. The argument is that 256 is too large to be scanned
by eye, and too large to print in a terminal which can be only 40-50 lines in height.
When all children must be shown, `frame variable` and `expression` both support the `-A`
(`--show-all-children`) flag.
rdar://145327522
Commit: a1e314d10d6ad16c572a959411902856e9f9d2ed
https://github.com/llvm/llvm-project/commit/a1e314d10d6ad16c572a959411902856e9f9d2ed
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
A llvm/test/tools/llvm-objdump/ELF/SystemZ/lit.local.cfg
Log Message:
-----------
[test] Add lit.local.cfg after #140471
Commit: 6fb23afb8dfa1c9244aa1f30df947ad201a1c934
https://github.com/llvm/llvm-project/commit/6fb23afb8dfa1c9244aa1f30df947ad201a1c934
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/Sema/SemaInit.cpp
M clang/test/Sema/warn-default-const-init.c
Log Message:
-----------
[C] Do not diagnose unions with -Wdefault-const-init (#140725)
A default-initialized union with a const member is generally reasonable
in C and isn't necessarily incompatible with C++, so we now silence the
diagnostic in that case. However, we do still diagnose a const-
qualified, default-initialized union as that is incompatible with C++.
Commit: 47b89fb412ad1b9c2dfc3ca34622a4315584c6e9
https://github.com/llvm/llvm-project/commit/47b89fb412ad1b9c2dfc3ca34622a4315584c6e9
Author: David Green <david.green at arm.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/popcount.ll
Log Message:
-----------
[AArch64] Use i32 extract from UADDV in popcount lowering. (#140718)
We need the top bits to be zeroes, but an v8i8->i32 EXTRACT_VECTOR_ELT will
anyext into the top bits. The instruction we create (UADDV) is known to be
zeroes in the upper bits, so we can convert to a larger v2i32 vector and
extract from there, similar to the operation currently performed for i64
types.
Fixes #140707
Commit: 0cf6b4f5ee28128340410e544540ef242e8fe959
https://github.com/llvm/llvm-project/commit/0cf6b4f5ee28128340410e544540ef242e8fe959
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/docs/RISCVUsage.rst
Log Message:
-----------
[Docs][RISCV] Move Zilsd to 'Supported' status. NFC (#140757)
Commit: 2a1af502d421f6d0dc48c9187fdafc502e51824e
https://github.com/llvm/llvm-project/commit/2a1af502d421f6d0dc48c9187fdafc502e51824e
Author: Sarah Spall <sarahspall at microsoft.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
M llvm/test/CodeGen/DirectX/isinf.ll
Log Message:
-----------
[DirectX] scalarize the dx.isinf intrinsic (#140638)
The DXIL IsInf op only takes scalars.
Closes #140577
Commit: 5999988af8e8a262f56c9819a044b8656bd63f75
https://github.com/llvm/llvm-project/commit/5999988af8e8a262f56c9819a044b8656bd63f75
Author: Sarah Spall <sarahspall at microsoft.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
Log Message:
-----------
[HLSL] Move where ZExt happens in 'EmitStoreThroughExtVectorComponentLValue' to handle bug with hlsl boolean vector swizzles (#140627)
In 'EmitStoreThroughExtVectorComponentLValue', move the code which ZExts
in the case the Destination Scalar Type is larger than the Source Scalar
Type, to the top of the function, to ensure each condition is handled.
The previous code missed this case:
```
bool4 b = true.xxxx;
b.xyz = false.xxx;
```
Leading to a bad shuffle vector.
Closes #140564
Commit: 747620db2a02b889ae3ba3921d6c0e526a3e7677
https://github.com/llvm/llvm-project/commit/747620db2a02b889ae3ba3921d6c0e526a3e7677
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/Transforms/Passes.td
M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
M mlir/lib/Dialect/XeGPU/Transforms/CMakeLists.txt
A mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
A mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-rr.mlir
A mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
Log Message:
-----------
[mlir] [XeGPU] Add XeGPU workgroup to subgroup pass (#139477)
This PR adds the XeGPU workgroup (wg) to subgroup (sg) pass. The wg to
sg pass transforms the xegpu wg level operations to subgroup operations
based on the sg_layout and sg_data attribute. The PR adds transformation
patterns for following Ops
1. CreateNdDesc
2. LoadNd
3. StoreNd
4. PrefetchNd
4. UpdateNdOffset
5. Dpas
Commit: 51e222ef48222e6e5745b96a484164dbdcaea239
https://github.com/llvm/llvm-project/commit/51e222ef48222e6e5745b96a484164dbdcaea239
Author: Maksim Panchenko <maks at fb.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M bolt/lib/Core/BinaryFunction.cpp
M bolt/test/AArch64/lite-mode.s
Log Message:
-----------
[BOLT][AArch64] Fix crash for conditional tail calls (#140669)
When conditional tail call is located in old code while BOLT is
operating in lite mode, the call will require optional pending
relocation with a type that is currently not supported resulting in a
build-time crash.
Before a proper fix is implemented, ignore conditional tail calls for
relocation purposes and mark their target functions to be patched, i.e.
to be served as veneers/thunks.
Commit: 0931874b219cfdae38fcf24d33c8efa001697d5a
https://github.com/llvm/llvm-project/commit/0931874b219cfdae38fcf24d33c8efa001697d5a
Author: Justin Cady <desk at justincady.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
A compiler-rt/test/profile/Linux/coverage-exception.cpp
Log Message:
-----------
[Coverage] Add testing to validate code coverage for exceptions (#133463)
While investigating an issue with code coverage reporting around
exceptions it was useful to have a baseline of what works today.
This change adds end-to-end testing to validate code coverage behavior
that is currently working with regards to exception handling.
Commit: cbcfe667bbda2ba2862d873350309e29b4368880
https://github.com/llvm/llvm-project/commit/cbcfe667bbda2ba2862d873350309e29b4368880
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenCXXExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/test/CIR/CodeGen/forrange.cpp
Log Message:
-----------
[CIR] Upstream support for iterator-based range for loops (#140636)
This change adds handling for C++ member operator calls, implicit no-op
casts, and l-value call expressions. Together, these changes enable
handling of range for loops based on iterators.
Commit: a9ee8e4a454ec01fefba8829d2847527aa80623f
https://github.com/llvm/llvm-project/commit/a9ee8e4a454ec01fefba8829d2847527aa80623f
Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/CMakeLists.txt
M llvm/cmake/config-ix.cmake
M llvm/include/llvm/Config/config.h.cmake
A llvm/include/llvm/Support/TextEncoding.h
M llvm/lib/Support/CMakeLists.txt
A llvm/lib/Support/TextEncoding.cpp
M llvm/unittests/Support/CMakeLists.txt
M llvm/unittests/Support/ConvertEBCDICTest.cpp
A llvm/unittests/Support/TextEncodingTest.cpp
Log Message:
-----------
Create a EncodingConverter class with both iconv and icu support. (#138893)
This patch adds a wrapper class called EncodingConverter for
ConverterEBCDIC. This class is then extended to support the ICU library
or iconv library. The ICU library currently takes priority over the
iconv library.
Relevant RFCs:
https://discourse.llvm.org/t/rfc-adding-a-charset-converter-to-the-llvm-support-library/69795
https://discourse.llvm.org/t/rfc-enabling-fexec-charset-support-to-llvm-and-clang-reposting/71512
Stacked PR to enable fexec-charset that depends on this:
https://github.com/llvm/llvm-project/pull/138895
See old PR for review and commit history:
https://github.com/llvm/llvm-project/pull/74516
Commit: c17ae161fdb713652292d6dff7c9317cbac8bb25
https://github.com/llvm/llvm-project/commit/c17ae161fdb713652292d6dff7c9317cbac8bb25
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M flang-rt/lib/cuda/allocator.cpp
Log Message:
-----------
[flang][cuda] Use nullptr for comparison (#140767)
Comparison without explicit nullptr seems to bring false positives. Use
explicit nullptr.
Commit: 38250ed3b2b9693b23a530104716ed769715135d
https://github.com/llvm/llvm-project/commit/38250ed3b2b9693b23a530104716ed769715135d
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
Log Message:
-----------
[gn build] Manually port a9ee8e4a
Can make these into gn args later if needed.
Commit: 611f47c46c7c737da6b7dfeb6fb9d2e92b6ac449
https://github.com/llvm/llvm-project/commit/611f47c46c7c737da6b7dfeb6fb9d2e92b6ac449
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIROrderedAssignments.cpp
Log Message:
-----------
[flang] Fix a warning
This patch fixes:
flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIROrderedAssignments.cpp:1377:10:
error: variable 'isValid' set but not used
[-Werror,-Wunused-but-set-variable]
Commit: b99e57583e0e3fa52eac181c97cef07eb6a4b13c
https://github.com/llvm/llvm-project/commit/b99e57583e0e3fa52eac181c97cef07eb6a4b13c
Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/Transforms/Passes.td
M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
M mlir/lib/Dialect/XeGPU/Transforms/CMakeLists.txt
R mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
R mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-rr.mlir
R mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
Log Message:
-----------
Revert "[mlir] [XeGPU] Add XeGPU workgroup to subgroup pass (#139477)" (#140779)
This reverts commit 747620db2a02b889ae3ba3921d6c0e526a3e7677.
Multiple bot failures
Commit: 4964d98057943493e8ee487e738a0601e0614d38
https://github.com/llvm/llvm-project/commit/4964d98057943493e8ee487e738a0601e0614d38
Author: Dan Blackwell <danblackwell95 at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
Log Message:
-----------
[compiler-rt] Replace deprecated os_trace calls on mac (#138908)
Currently there are deprecation warnings suppressed for `os_trace`; this
patch replaces all uses with `os_log_error`.
rdar://140295247
Commit: 0ccd57e289b43d9263510aa9889726f02973a78d
https://github.com/llvm/llvm-project/commit/0ccd57e289b43d9263510aa9889726f02973a78d
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
A llvm/test/CodeGen/RISCV/rvv/partial-reduction-add.ll
Log Message:
-----------
[RISCV] Add basic coverage of vector.partial.reduce.add [nfc]
Commit: c555c8d554f0875967861f6bb7da9159444d1860
https://github.com/llvm/llvm-project/commit/c555c8d554f0875967861f6bb7da9159444d1860
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/Sema/SemaInit.cpp
M clang/test/Sema/warn-default-const-init.c
Log Message:
-----------
[C] Do not diagnose flexible array members with -Wdefault-const-init-field-unsafe (#140578)
This addresses post-commit review feedback from someone who discovered
that we diagnosed code like the following:
```
struct S {
int len;
const char fam[];
} s;
```
despite it being invalid to initialize the flexible array member.
Note, this applies to flexible array members and zero-sized arrays at
the end of a structure (an old-style flexible array member), but it does
not apply to one-sized arrays at the end of a structure because those do
occupy storage that can be initialized.
Commit: 9260d310f1cb5e622ace5bcb8dfe86c3f5d76b3d
https://github.com/llvm/llvm-project/commit/9260d310f1cb5e622ace5bcb8dfe86c3f5d76b3d
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
R clang/lib/AST/ByteCode/Frame.cpp
M clang/lib/AST/ByteCode/Frame.h
M clang/lib/AST/CMakeLists.txt
Log Message:
-----------
[clang][bytecode][NFC] Remove Frame.cpp (#140750)
The file was basically empty. The actual implementation for function
frames of the two interpreter life in their own respective files.
Commit: 8708c42e314c28300aff96757db9592904dad4d5
https://github.com/llvm/llvm-project/commit/8708c42e314c28300aff96757db9592904dad4d5
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zvqdotq.ll
Log Message:
-----------
[RISCV] Add zvqdotq tests using partial.reduce.add [nfc]
Commit: be5b4fad2921dc28a0b9af8106177aa4c4862ce0
https://github.com/llvm/llvm-project/commit/be5b4fad2921dc28a0b9af8106177aa4c4862ce0
Author: Anthony Cabrera-Lara <anthonycabreralara at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M lldb/source/Interpreter/InterpreterProperties.td
Log Message:
-----------
Update InterpreterProperties.td (#140746)
Fix typo in interpreter property description.
Fixes #140708
Commit: 1b6b036c0220c095c2917308775aa2ddcba506ad
https://github.com/llvm/llvm-project/commit/1b6b036c0220c095c2917308775aa2ddcba506ad
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M lldb/docs/use/map.rst
Log Message:
-----------
[lldb][docs] add command to save core file in gdb to lldb command map. (#140771)
Commit: 705e27c23474f3177670a791b5b54eefedee0cd8
https://github.com/llvm/llvm-project/commit/705e27c23474f3177670a791b5b54eefedee0cd8
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
A llvm/test/Transforms/LoopUnroll/peel-last-iteration-with-constant-trip-count.ll
A llvm/test/Transforms/LoopUnroll/peel-last-iteration-with-variable-trip-count.ll
R llvm/test/Transforms/LoopUnroll/peel-last-iteration.ll
Log Message:
-----------
[LoopPeel] Add tests for peeling from end with variable trip counts.
Add more test coverage for peeling the last iteration with variable trip
counts. Separate test cases for constant and variable trip counts in
different files.
Commit: 26d9cb17a6e655993c991b66b21d5c378256d79b
https://github.com/llvm/llvm-project/commit/26d9cb17a6e655993c991b66b21d5c378256d79b
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/test/DebugInfo/RISCV/dwarf-riscv-relocs.ll
A llvm/test/DebugInfo/X86/debug-line-in-one-fragment.ll
Log Message:
-----------
[MC][DebugInfo] Emit linetable entries with known offsets immediately (#134677)
DWARF linetable entries are usually emitted as a sequence of
MCDwarfLineAddrFragment fragments containing the line-number difference
and an MCExpr describing the instruction-range the linetable entry
covers. These then get relaxed during assembly emission.
However, a large number of these instruction-range expressions are
ranges within a fixed MCDataFragment, i.e. a range over fixed-size
instructions that are not subject to relaxation at a later stage. Thus,
we can compute the address-delta immediately, and not spend time and
memory describing that computation so it can be deferred.
Commit: 5aa3171f2cd4518c868348f62fe27a85637c111f
https://github.com/llvm/llvm-project/commit/5aa3171f2cd4518c868348f62fe27a85637c111f
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/frame-index-elimination.ll
Log Message:
-----------
AMDGPU: Add regression test for multiple frame index lowering (#140784)
Failures appeared after https://github.com/llvm/llvm-project/pull/140587 but this case wasn't covered
Commit: 3f196e029314e3ccb429413a5f38ad241e50f3c5
https://github.com/llvm/llvm-project/commit/3f196e029314e3ccb429413a5f38ad241e50f3c5
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M lldb/source/ValueObject/ValueObject.cpp
M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
A lldb/test/API/functionalities/postmortem/elf-core/altmain2.core
A lldb/test/API/functionalities/postmortem/elf-core/altmain2.out
Log Message:
-----------
[lldb][core] Fix getting summary of a variable pointing to r/o memory (#139196)
Motivation example:
```
> lldb -c altmain2.core
...
(lldb) var F
(const char *) F = 0x0804a000 ""
```
The variable `F` points to a read-only memory page not dumped to the
core file, so `Process::ReadMemory()` cannot read the data. The patch
switches to `Target::ReadMemory()`, which can read data both from the
process memory and the application binary.
Commit: 317c932622b8ee65ad0a7df23d8bf4c03aee09bb
https://github.com/llvm/llvm-project/commit/317c932622b8ee65ad0a7df23d8bf4c03aee09bb
Author: Aaron Puchert <aaron.puchert at sap.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/test/SemaCXX/type-trait-common-type.cpp
M clang/test/SemaCXX/type-traits.cpp
Log Message:
-----------
Suppress errors from well-formed-testing type traits in SFINAE contexts (#135390)
There are several type traits that produce a boolean value or type based
on the well-formedness of some expression (more precisely, the immediate
context, i.e. for example excluding nested template instantiation):
* `__is_constructible` and variants,
* `__is_convertible` and variants,
* `__is_assignable` and variants,
* `__reference_{binds_to,{constructs,converts}_from}_temporary`,
* `__is_trivially_equality_comparable`,
* `__builtin_common_type`.
(It should be noted that the standard doesn't always base this on the
immediate context being well-formed: for `std::common_type` it's based
on whether some expression "denotes a valid type." But I assume that's
an editorial issue and means the same thing.)
Errors in the immediate context are suppressed, instead the type traits
return another value or produce a different type if the expression is
not well-formed. This is achieved using an `SFINAETrap` with
`AccessCheckingSFINAE` set to true. If the type trait is used outside of
an SFINAE context, errors are discarded because in that case the
`SFINAETrap` sets `InNonInstantiationSFINAEContext`, which makes
`isSFINAEContext` return an `optional(nullptr)`, which causes the errors
to be discarded in `EmitDiagnostic`. However, in an SFINAE context this
doesn't happen, and errors are added to `SuppressedDiagnostics` in the
`TemplateDeductionInfo` returned by `isSFINAEContext`. Once we're done
with deducing template arguments and have decided which template is
going to be instantiated, the errors corresponding to the chosen
template are then emitted. At this point we get errors from those type
traits that we wouldn't have seen if used with the same arguments
outside of an SFINAE context. That doesn't seem right.
So what we want to do is always set `InNonInstantiationSFINAEContext`
when evaluating these well-formed-testing type traits, regardless of
whether we're in an SFINAE context or not. This should only affect the
immediate context, as nested contexts add a new `CodeSynthesisContext`
that resets `InNonInstantiationSFINAEContext` for the time it's active.
Going through uses of `SFINAETrap` with `AccessCheckingSFINAE` = `true`,
it occurred to me that all of them want this behavior and we can just
use this parameter to decide whether to use a non-instantiation context.
The uses are precisely the type traits mentioned above plus the
`TentativeAnalysisScope`, where I think it is also fine. (Though I think
we don't do tentative analysis in SFINAE contexts anyway.)
Because the parameter no longer just sets `AccessCheckingSFINAE` in Sema
but also `InNonInstantiationSFINAEContext`, I think it should be renamed
(along with uses, which also point the reviewer to the affected places).
Since we're testing for validity of some expression, `ForValidityCheck`
seems to be a good name.
The added tests should more or less correspond to the users of
`SFINAETrap` with `AccessCheckingSFINAE` = `true`. I added a test for
errors outside of the immediate context for only one type trait, because
it requires some setup and is relatively noisy.
We put the `ForValidityCheck` condition first because it's constant in
all uses and this would then allow the compiler to prune the call to
`isSFINAEContext` when true.
Fixes #132044.
Commit: 11db1285e4a195b45bd54292658e561d0c707f82
https://github.com/llvm/llvm-project/commit/11db1285e4a195b45bd54292658e561d0c707f82
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/test/BUILD.gn
Log Message:
-----------
[gn build] Manually port 8f03e1a
Commit: 04ad8d4900fb4534a2120335e26d1a1a310ef256
https://github.com/llvm/llvm-project/commit/04ad8d4900fb4534a2120335e26d1a1a310ef256
Author: Peiyong Lin <linpyong at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/lib/Conversion/ArmSMEToLLVM/ArmSMEToLLVM.cpp
M mlir/lib/Conversion/GPUToNVVM/WmmaOpsToNvvm.cpp
M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
M mlir/lib/Conversion/NVGPUToNVVM/NVGPUToNVVM.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Dialect/AMX/Transforms/LegalizeForLLVMExport.cpp
M mlir/test/Conversion/FuncToLLVM/calling-convention.mlir
M mlir/test/Conversion/MemRefToLLVM/convert-dynamic-memref-ops.mlir
M mlir/test/Conversion/MemRefToLLVM/convert-static-memref-ops.mlir
M mlir/test/Conversion/MemRefToLLVM/expand-then-convert-to-llvm.mlir
Log Message:
-----------
Emit inbounds and nuw attributes in memref. (#138984)
Now that MLIR accepts nuw and nusw in getelementptr, this patch emits
the inbounds and nuw attributes when lower memref to LLVM in load and
store operators.
This patch also strengthens the memref.load and memref.store spec about
undefined behaviour during lowering.
This patch also lifts the |rewriter| parameter in getStridedElementPtr
ahead so that LLVM::GEPNoWrapFlags can be added at the end with a
default value and grouped together with other operators' parameters.
Signed-off-by: Lin, Peiyong <linpyong at gmail.com>
Commit: cbac2a924171f7a38cd788a5cc4642ef95dd40e4
https://github.com/llvm/llvm-project/commit/cbac2a924171f7a38cd788a5cc4642ef95dd40e4
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
M llvm/lib/Support/ThreadPool.cpp
M llvm/lib/Target/AMDGPU/AMDGPURewriteOutArguments.cpp
M llvm/unittests/DebugInfo/CodeView/TypeIndexDiscoveryTest.cpp
Log Message:
-----------
[llvm] Use llvm::is_contained (NFC) (#140742)
Commit: e25abd0d549d4313ec39bb9fbbc974ec3dbc23a0
https://github.com/llvm/llvm-project/commit/e25abd0d549d4313ec39bb9fbbc974ec3dbc23a0
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/tools/bugpoint/FindBugs.cpp
Log Message:
-----------
[bugpoint] Use a range-based for loop (NFC) (#140743)
Commit: 98595cfd6fe1d565821bc6507073a87bbaa7db6f
https://github.com/llvm/llvm-project/commit/98595cfd6fe1d565821bc6507073a87bbaa7db6f
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachineBasicBlock.h
M llvm/include/llvm/CodeGen/MachineDomTreeUpdater.h
M llvm/include/llvm/CodeGen/MachineDominators.h
A llvm/include/llvm/CodeGen/MachineFunctionAnalysisManager.h
M llvm/include/llvm/CodeGen/MachinePassManager.h
M llvm/include/llvm/Support/GenericDomTree.h
M llvm/lib/CodeGen/MachinePassManager.cpp
Log Message:
-----------
[llvm] prepare explicit template instantiations in llvm/CodeGen for DLL export annotations (#140653)
## Purpose
This patch prepares the llvm/CodeGen library for public interface
annotations in support of an LLVM Windows DLL (shared library) build,
tracked in #109483. The purpose of this patch is to make the upcoming
codemod of this library more straight-forward. It is not expected to
impact any functionality.
The `LLVM_ABI` annotations will be added in a subsequent patch. These
changes are required to build with visibility annotations using Clang
and gcc on Linux/Darwin/etc; Windows DLL can build fine without them.
## Overview
This PR does four things in preparation for adding `LLVM_ABI`
annotations to llvm/CodeGen:
1. Explicitly include `Machine.h` and `Function.h` headers from
`MachinePassManager.cpp` so that `Function` and `Machine` types are
available for the instantiations of `InnerAnalysisManagerProxy`. Without
this change, Clang only will only export one of the templates after
visibility annotations are added to them. Unclear if this is a Clang bug
or expected behavior, but this change avoids the issue and should be
harmless.
2. Refactor the definition of `MachineFunctionAnalysisManager` to its
own header file. Without this change, it is not possible to add
visibility annotations to the declaration with causing gcc to produce
`-Wattribute` warnings.
3. Remove the redundant specialization of the
`DominatorTreeBase<MachineBasicBlock, false>::addRoot` method. The
specialization is the same as implemented in `DominatorTreeBase` so
should be unnecessary. Without this change, it is not possible to
annotate the subsequent instantiations of `DominatorTreeBase` in the
header file without gcc producing `-Wattribute` warnings. Mark
unspecialized `addRoot` as `inline` to match the removed specialized
version.
4. Move the explicit instantiations of the `GenericDomTreeUpdater`
template earlier in the header file. These need to appear before being
used in the `MachineDomTreeUpdater` class definition or gcc will produce
warnings once visibility annotations are added.
## Background
The LLVM Windows DLL effort is tracked in #109483. Additional context is
provided in [this
discourse](https://discourse.llvm.org/t/psa-annotating-llvm-public-interface/85307).
Clang and gcc handle visibility attributes on explicit template
instantiations a bit differently; gcc is pickier and generates
`-Wattribute` warnings when an explicit instantiation with a visibility
annotation appears after the type has already appeared in the
translation unit. These warnings can be avoided by moving explicit
template instantiations so they always appear first.
## Validation
Local builds and tests to validate cross-platform compatibility. This
included llvm, clang, and lldb on the following configurations:
- Windows with MSVC
- Windows with Clang
- Linux with GCC
- Linux with Clang
- Darwin with Clang
Commit: a690852b290fc9c843933f95d1c8ebb6d7b97adb
https://github.com/llvm/llvm-project/commit/a690852b290fc9c843933f95d1c8ebb6d7b97adb
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/tools/llvm-exegesis/lib/Assembler.cpp
Log Message:
-----------
[llvm-exegesis] Error instead of aborting on verification failure (#137581)
This patch makes llvm-exegesis emit an error when the machine function
fails in MachineVerification rather than aborting. This allows
downstream users (particularly https://github.com/google/gematria) to
handle these errors rather than having the entire process crash. This
essentially be NFC from the user perspective minus the addition of the
new error message.
Commit: a414877a7a5f000d01370acb1162eb1dea87f48c
https://github.com/llvm/llvm-project/commit/a414877a7a5f000d01370acb1162eb1dea87f48c
Author: Daniel Paoliello <danpao at microsoft.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/include/llvm/Transforms/CFGuard.h
M llvm/lib/MC/MCObjectFileInfo.cpp
M llvm/lib/Target/X86/X86AsmPrinter.cpp
M llvm/lib/Target/X86/X86AsmPrinter.h
M llvm/lib/Target/X86/X86ExpandPseudo.cpp
M llvm/lib/Target/X86/X86FastISel.cpp
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/lib/Target/X86/X86InstrControl.td
M llvm/lib/Target/X86/X86InstrFragments.td
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrPredicates.td
M llvm/lib/Target/X86/X86MCInstLower.cpp
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Target/X86/X86RegisterInfo.td
M llvm/lib/Transforms/CFGuard/CFGuard.cpp
A llvm/test/CodeGen/X86/win-import-call-optimization-cfguard.ll
A llvm/test/CodeGen/X86/win-import-call-optimization-jumptable.ll
A llvm/test/CodeGen/X86/win-import-call-optimization-nocalls.ll
A llvm/test/CodeGen/X86/win-import-call-optimization.ll
A llvm/test/MC/X86/win-import-call-optimization.s
Log Message:
-----------
[x64][win] Add compiler support for x64 import call optimization (equivalent to MSVC /d2guardretpoline) (#126631)
This is the x64 equivalent of #121516
Since import call optimization was originally [added to x64 Windows to
implement a more efficient retpoline
mitigation](https://techcommunity.microsoft.com/blog/windowsosplatform/mitigating-spectre-variant-2-with-retpoline-on-windows/295618)
the section and constant names relating to this all mention "retpoline"
and we need to mark indirect calls, control-flow guard calls and jumps
for jump tables in the section alongside calls to imported functions.
As with the AArch64 feature, this emits a new section into the obj which
is used by the MSVC linker to generate the Dynamic Value Relocation
Table and the section itself does not appear in the final binary.
The Windows Loader requires a specific sequence of instructions be
emitted when this feature is enabled:
* Indirect calls/jumps must have the function pointer to jump to in
`rax`.
* Calls to imported functions must use the `rex` prefix and be followed
by a 5-byte nop.
* Indirect calls must be followed by a 3-byte nop.
Commit: de3e8fff20700f305270644d0ae9dc9e5598f089
https://github.com/llvm/llvm-project/commit/de3e8fff20700f305270644d0ae9dc9e5598f089
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M .ci/generate_test_report_lib.py
M .ci/metrics/metrics.py
Log Message:
-----------
[NFC][CI] Reformat python files
Looks like some of these were not properly formatted at some point. This
patch reformats these files so that future diffs are cleaner when
running the formatter over the whole file.
Commit: c39915fa2ea2f8cc7f51d3692d17cbc8a968714c
https://github.com/llvm/llvm-project/commit/c39915fa2ea2f8cc7f51d3692d17cbc8a968714c
Author: Han-Chung Wang <hanhan0912 at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/ConvertToDestinationStyle.cpp
M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Dialect/MemRef/Transforms/ExtractAddressComputations.cpp
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/lib/Dialect/SCF/Utils/Utils.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseVectorization.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Tensor/IR/TensorTilingInterfaceImpl.cpp
M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Tensor/Transforms/ReshapePatterns.cpp
M mlir/lib/Dialect/Tensor/Transforms/SwapExtractSliceWithProducerPatterns.cpp
M mlir/lib/Dialect/Utils/StaticValueUtils.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransferOpTransforms.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
Log Message:
-----------
[mlir][NFC] Simplify constant checks with isOneInteger and renamed isZeroInteger. (#139340)
The revision adds isOneInteger helper, and simplifies the existing code
with the two methods. It removes some lambda, which makes code cleaner.
For downstream users, you can update the code with the below script.
```bash
sed -i "s/isZeroIndex/isZeroInteger/g" **/*.h
sed -i "s/isZeroIndex/isZeroInteger/g" **/*.cpp
```
---------
Signed-off-by: hanhanW <hanhan0912 at gmail.com>
Commit: d2992423e336b06a3c75b6f99aed6dd73abc3112
https://github.com/llvm/llvm-project/commit/d2992423e336b06a3c75b6f99aed6dd73abc3112
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/test/CodeGen/AMDGPU/addrspacecast.ll
A llvm/test/Transforms/Attributor/AMDGPU/do-not-replace-addrspacecast-with-constantpointernull.ll
A llvm/test/Transforms/Attributor/AMDGPU/lit.local.cfg
Log Message:
-----------
[Attributor] Don't replace `addrspacecast (ptr null to ptr addrspace(x))` with `ptr addrspace(x) null` (#126779)
`ConstantPointerNull` represents a pointer with value 0, but it doesn’t
necessarily mean a `nullptr`. `ptr addrspace(x) null` is not the same as
`addrspacecast (ptr null to ptr addrspace(x))` if the `nullptr` in AS X
is not
zero. Therefore, we can't simply replace it.
Fixes #115083.
Commit: 554e27ef69616fda5747a9d8137c9eb987857a12
https://github.com/llvm/llvm-project/commit/554e27ef69616fda5747a9d8137c9eb987857a12
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
Log Message:
-----------
[CIR][NFC] Eliminate ArgInfo structure (#140612)
A previous refactoring had reduced the ArgInfo structure to contain a
single member, the argument type. This change eliminates the ArgInfo
structure entirely, instead just storing the argument type directly in
places where ArgInfo had previously been used.
This also updates the place where the arg types were previously being
copied for a call to CIRGenFunctionInfo::Profile to instead use the
stored argument types buffer directly and adds assertions where the
calculated folding set ID is used to verify that any match was correct.
Commit: dfc65ef65e4e92fee244c0eed7ec9223fc943b65
https://github.com/llvm/llvm-project/commit/dfc65ef65e4e92fee244c0eed7ec9223fc943b65
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M lldb/tools/lldb-dap/package.json
M lldb/tools/lldb-dap/src-ts/debug-session-tracker.ts
M lldb/tools/lldb-dap/src-ts/ui/modules-data-provider.ts
Log Message:
-----------
[lldb][lldb-dap] show modules pane if supported by the adapter (#140603)
Fixes #140589
Added logic to dynamically set the `lldb-dap.showModules` context based
on the presence of modules in the debug session.
Commit: 6cac792bf9eacb1ed0c80fc7c767fc99c50e2524
https://github.com/llvm/llvm-project/commit/6cac792bf9eacb1ed0c80fc7c767fc99c50e2524
Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/invalid.mlir
Log Message:
-----------
[mlir][Vector] Improve `vector.mask` verifier (#139823)
This PR improves the `vector.mask` verifier to make sure it's not
applying masking semantics to operations defined outside of the
`vector.mask` region. Documentation is updated to emphasize that and
make it clearer, even though it already stated that.
As part of this change, the logic that ensures that a terminator is
present in the region mask has been simplified to make it less
surprising to the user when a `vector.yield` is explicitly provided in
the IR.
Commit: 580f70e070423d79a909fc61f744cb853bacdd37
https://github.com/llvm/llvm-project/commit/580f70e070423d79a909fc61f744cb853bacdd37
Author: Max191 <44243577+Max191 at users.noreply.github.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
Log Message:
-----------
[mlir] Check for int limits when converting gpu dims (#140747)
When the upper_bound of a gpu dim op (like `gpu.block_dim`) is the
maximum i32 integer value, the op conversion for it causes overflow by
adding 1 to convert the bound from closed to open. This fixes the bug by
clamping the open bound to the maximum i32 value.
---------
Signed-off-by: Max Dawkins <max.dawkins at gmail.com>
Commit: 6b9da28b2b9f00f347a09a87463d7443928be99b
https://github.com/llvm/llvm-project/commit/6b9da28b2b9f00f347a09a87463d7443928be99b
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-pointer-ops.ll
Log Message:
-----------
[AMDGPU][LowerBufferFatPointers] Handle addrspacecast null to p7 (#140775)
Some application code operating on generic pointers (that then gete
initialized to buffer fat pointers) may perform tests against nullptr.
After address space inference, this results in comparisons against
`addrspacecast (ptr null to ptr addrspace(7))`, which were crashing.
However, while general casts to ptr addrspace(7) from generic pointers
aren't supposted, it is possible to cast null pointers to the all-zerose
bufer resource and 0 offset, which this patch adds.
It also adds a TODO for casting _out_ of buffer resources, which isn't
implemented here but could be.
Commit: 13c467b2cdc0e185671875a0d8e53a420382c73d
https://github.com/llvm/llvm-project/commit/13c467b2cdc0e185671875a0d8e53a420382c73d
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/mem-intrinsics.ll
Log Message:
-----------
[AMDGPU] Add make.buffer.rsrc to InferAddressSpaces (#140770)
make.buffer.rsrc can be subjected to address space inference. There's
not _currently_ a reason to have this, but we might as well handle this
in case it comes up.
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: f78a081cdb360b129aa7e184e3b04fdc70468077
https://github.com/llvm/llvm-project/commit/f78a081cdb360b129aa7e184e3b04fdc70468077
Author: Nico Weber <thakis at chromium.org>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Sema/BUILD.gn
Log Message:
-----------
[gn] port d561d595c4ee (clang riscv_andes_vector.td)
Commit: 08b21c87adad650a37a312172ad4e3e8361bb2b6
https://github.com/llvm/llvm-project/commit/08b21c87adad650a37a312172ad4e3e8361bb2b6
Author: Nico Weber <thakis at chromium.org>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
Log Message:
-----------
[gn] fix mistake in f78a081cdb3
Commit: d549abfe00ced8455f80355b200ee42e648020f7
https://github.com/llvm/llvm-project/commit/d549abfe00ced8455f80355b200ee42e648020f7
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn
Log Message:
-----------
[gn build] Port 9260d310f1cb
Commit: da62b3eda92d2b41abadd8fca196554e108a58ea
https://github.com/llvm/llvm-project/commit/da62b3eda92d2b41abadd8fca196554e108a58ea
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Support/BUILD.gn
Log Message:
-----------
[gn build] Port a9ee8e4a454e
Commit: 88c4ef2f9fc0cda90c8452bc1c46844aaa722a3e
https://github.com/llvm/llvm-project/commit/88c4ef2f9fc0cda90c8452bc1c46844aaa722a3e
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
Log Message:
-----------
[gn build] Port d561d595c4ee
Commit: 80f0ffb937940cf98d9dd6c6b5c1b8772e35bab2
https://github.com/llvm/llvm-project/commit/80f0ffb937940cf98d9dd6c6b5c1b8772e35bab2
Author: YAMAMOTO Takashi <yamamoto at midokura.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M lld/wasm/LTO.cpp
Log Message:
-----------
[lld][WebAssembly] Set the target-cpu in LTO config (#140010)
I couldn't find an existing way to pass -mcpu=lime1 equivalent to LTO
codegen.
This commit would privide one. With this commit, you can do so by
passing
`-mllvm -mcpu=lime1` to wasm-ld.
Commit: 744a469bbadb282c58e39b2c76008352f42e7e1a
https://github.com/llvm/llvm-project/commit/744a469bbadb282c58e39b2c76008352f42e7e1a
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M bolt/test/AArch64/check-init-not-moved.s
M bolt/test/AArch64/pad-before-funcs.s
M bolt/test/RISCV/reloc-jt.s
M bolt/test/X86/double-rel-scan.s
M bolt/test/X86/double-rel.s
Log Message:
-----------
[BOLT,test] Add --image-base to tests that use --section-start
When using -no-pie without a SECTIONS command, the linker uses the
target's default image base. If -Ttext= or --section-start specifies an
output section address below this base, the result is likely unintended.
LLD will give a diagnostic (#140187) and may change the behavior in the future.
It's good to set an explicit image base to avoid relying on its current
behavior. BOLT doesn't seem to care whether a PT_PHDR segment is
present.
Pull Request: https://github.com/llvm/llvm-project/pull/140570
Commit: ada2fbfe36c83cc7c575da70b7eae8c12483f758
https://github.com/llvm/llvm-project/commit/ada2fbfe36c83cc7c575da70b7eae8c12483f758
Author: Alan Li <me at alanli.org>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
A llvm/test/CodeGen/AMDGPU/GlobalISel/bug_shuffle_vector_to_scalar.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/prelegalizer-combiner-shuffle.mir
Log Message:
-----------
[GISel] Fix ShuffleVector assert (#139769)
Fixes issue: https://github.com/llvm/llvm-project/issues/139752
When G_SHUFFLE_VECTOR has only 1 element then it is possible the vector
is decayed into a scalar.
Commit: 7385772fdbc6d97c5e05caf3e61546ad1de5b556
https://github.com/llvm/llvm-project/commit/7385772fdbc6d97c5e05caf3e61546ad1de5b556
Author: Nhat Nguyen <hoangnhat2911 at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M mlir/lib/Analysis/DataFlow/LivenessAnalysis.cpp
M mlir/test/Transforms/remove-dead-values.mlir
Log Message:
-----------
[mlir] [liveness] Conservatively mark operands of return-like op inside non-callable and non-regionbranch op as live (#140793)
Currently the liveness analysis always marks operands yielded in regions
that aren't classified as `RegionBranchOpInterface` or
`CallableOpInterface` as non-live. Examples for these ops include
linalg.generic (with `linalg.yield` as terminator) or gpu ops (with
`gpu.yield` as terminator).
This in turn makes the `remove-dead-values` pass always incorrectly
remove the bodies of these ops, leading to invalid IR. Because these ops
define their own semantics, I have conservatively marked all operands of
these yield ops to be live.
Commit: 3cf65656b608810789b666f706e143cf7e5ffc10
https://github.com/llvm/llvm-project/commit/3cf65656b608810789b666f706e143cf7e5ffc10
Author: tangaac <tangyan01 at loongson.cn>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvshuf4i.ll
Log Message:
-----------
[LoongArch] Remove wrong vector shuffle lowering for lasx. (#140688)
PR https://github.com/llvm/llvm-project/pull/137918 introduces a wrong
lowering for v4f64/v4i64 to generate xvshuf4i.d instruction.
This PR reverts the wrong part of lasx.
Commit: 7b513393872fe608721ce4014606b03dd780a5c9
https://github.com/llvm/llvm-project/commit/7b513393872fe608721ce4014606b03dd780a5c9
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M lldb/tools/lldb-dap/DAP.cpp
Log Message:
-----------
[lldb-dap] Avoid double 'new' events for dyld on Darwin (#140810)
I got a bug report where a pedantic DAP client complains about getting
two "new" module events for the same UUID. This is caused by the dyld
transition from the on-disk dyld to the shared cache dyld, which share
the same UUID. The transition is not generating an unloaded event
(because we're not really unloading dyld) but we do get a loaded event
(because the load address changed). This PR fixes the issue by relying
on the modules set as the source of truth instead of relying on the
event type.
Commit: 6811a3bedfd33ee64e884467791d2c299504b0e8
https://github.com/llvm/llvm-project/commit/6811a3bedfd33ee64e884467791d2c299504b0e8
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/test/Fir/CUDA/cuda-code-gen.mlir
Log Message:
-----------
[flang][cuda] Allocate extra descriptor in managed memory when it is coming from device (#140818)
Commit: 064912217cfd2a91debfef8ffa65217991b087f5
https://github.com/llvm/llvm-project/commit/064912217cfd2a91debfef8ffa65217991b087f5
Author: Pat Doyle <patdoyle at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel][mlir] Add missing dep for 747620d (#140830)
fixes the following errors:
ERROR:
/var/lib/buildkite-agent/.cache/bazel/_bazel_buildkite-agent/6a1efeb401da192d3572f00e2f11245b/external/llvm-project/mlir/BUILD.bazel:3410:11:
Compiling mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
failed: (Exit 1): clang failed: error executing CppCompile command (from
target @@llvm-project//mlir:XeGPUTransforms) /usr/lib/llvm-18/bin/clang
-U_FORTIFY_SOURCE -fstack-protector -Wall -Wthread-safety -Wself-assign
-Wunused-but-set-parameter -Wno-free-nonheap-object -fcolor-diagnostics
-fno-omit-frame-pointer ... (remaining 130 arguments skipped)
Use --sandbox_debug to see verbose messages from the sandbox and retain
the sandbox build root for debugging
external/llvm-project/mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp:11:10:
error: module llvm-project//mlir:XeGPUTransforms does not depend on a
module exporting 'mlir/Dialect/Arith/Utils/Utils.h'
11 | #include "mlir/Dialect/Arith/Utils/Utils.h"
| ^
external/llvm-project/mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp:13:10:
fatal error: 'mlir/Dialect/Index/IR/IndexDialect.h' file not found
13 | #include "mlir/Dialect/Index/IR/IndexDialect.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 errors generated.
Commit: 701fe51fd667904d160fb46b6ceba09006fe8291
https://github.com/llvm/llvm-project/commit/701fe51fd667904d160fb46b6ceba09006fe8291
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaInit.cpp
M clang/test/SemaTemplate/deduction-guide.cpp
Log Message:
-----------
[Clang] Fix an inadvertent overwrite of sub-initializers (#140714)
When using InitChecker with VerifyOnly, we create a new designated
initializer to handle anonymous fields. However in the last call to
CheckDesignatedInitializer, the subinitializer isn't properly preserved
but it gets overwritten by the cloned one. Which causes the initializer
to reference the dependent field, breaking assumptions when we
initialize the instantiated specialization.
Fixes https://github.com/llvm/llvm-project/issues/67173
Commit: 0dfdf7efbfe347517eb4c7f544043a71af4e4a25
https://github.com/llvm/llvm-project/commit/0dfdf7efbfe347517eb4c7f544043a71af4e4a25
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M clang/lib/Format/Format.cpp
M clang/tools/clang-format/ClangFormat.cpp
M clang/unittests/Format/FormatTestRawStrings.cpp
Log Message:
-----------
[clang-format] Handle raw string literals containing JSON code (#140666)
Fix #65400
Commit: 57a90edacdf4ef14c6a95531681e8218cd23c4ab
https://github.com/llvm/llvm-project/commit/57a90edacdf4ef14c6a95531681e8218cd23c4ab
Author: Johannes Doerfert <johannes at jdoerfert.de>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M offload/DeviceRTL/src/Synchronization.cpp
A offload/test/offloading/single_threaded_for_barrier_hang_1.c
A offload/test/offloading/single_threaded_for_barrier_hang_2.c
Log Message:
-----------
[OpenMP][GPU][FIX] Enable generic barriers in single threaded contexts (#140786)
The generic GPU barrier implementation checked if it was the main thread
in generic mode to identify single threaded regions. This doesn't work
since inside of a non-active (=sequential) parallel, that thread becomes
the main thread of a team, and is not the main thread in generic mode.
At least that is the implementation of the APIs today.
To identify single threaded regions we now check the team size
explicitly.
This exposed three other issues; one is, for now, expected and not a
bug, the second one is a bug and has a FIXME in the
single_threaded_for_barrier_hang_1.c file, and the final one is also
benign as described in the end.
The non-bug issue comes up if we ever initialize a thread state.
Afterwards we will never run any region in parallel. This is a little
conservative, but I guess thread states are really bad for performance
anyway.
The bug comes up if we optimize single_threaded_for_barrier_hang_1 and
execute it in Generic-SPMD mode. For some reason we loose all the
updates to b. This looks very much like a compiler bug, but could also
be another logic issue in the runtime. Needs to be investigated.
Issue number 3 comes up if we have nested parallels inside of a target
region. The clang SPMD-check logic gets confused, determines SPMD (which
is fine) but picks an unreasonable thread count. This is all benign, I
think, just weird:
```
#pragma omp target teams
#pragma omp parallel num_threads(64)
#pragma omp parallel num_threads(10)
{}
```
Was launched with 10 threads, not 64.
Commit: 0f2a46995164c99064264d60d7a2dc0c9c5a716e
https://github.com/llvm/llvm-project/commit/0f2a46995164c99064264d60d7a2dc0c9c5a716e
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/test/CodeGen/AMDGPU/v_swap_b16.ll
M llvm/test/CodeGen/AMDGPU/v_swap_b32.mir
Log Message:
-----------
Revert "[AMDGPU] remove move instruction if there is no user of it (#136735)"
This reverts commit 883afa4ef93d824ec11981ccad04af1cd1e4ce29 since it is not
technically sound.
Commit: 9a553d3766aacb69e884823da92dedff264e3f0f
https://github.com/llvm/llvm-project/commit/9a553d3766aacb69e884823da92dedff264e3f0f
Author: Srinivasa Ravi <srinivasar at nvidia.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/GPU/IR/CompilationAttrInterfaces.td
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
M mlir/include/mlir/Dialect/LLVMIR/CMakeLists.txt
M mlir/include/mlir/Dialect/LLVMIR/NVVMDialect.h
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
A mlir/include/mlir/Dialect/LLVMIR/NVVMRequiresSMTraits.h
A mlir/include/mlir/Dialect/LLVMIR/NVVMRequiresSMTraits.td
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/lib/Dialect/LLVMIR/CMakeLists.txt
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
A mlir/lib/Dialect/LLVMIR/IR/NVVMRequiresSMTraits.cpp
A mlir/test/Dialect/LLVMIR/nvvm-check-targetSM.mlir
M mlir/test/lib/Dialect/Test/CMakeLists.txt
M mlir/test/lib/Dialect/Test/TestOps.h
M mlir/test/lib/Dialect/Test/TestOps.td
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[MLIR][NVVM] Add NVVMRequiresSM op traits (#126886)
Motivation:
Currently, the NVVMOps are not verified against the supported SM
architectures. This can manifest as an ISel failure in the NVPTX LLVM
backend during CodeGen to PTX ISA. This PR addresses this issue by
adding verifier checks for Target-SM architectures in the NVVM Dialect
itself, thereby catching the errors early on.
Summary:
* Parametric traits named `NVVMRequiresSM` and `NVVMRequiresSMa` are
added to facilitate the version checks for typical and arch-accelerated
versions respectively.
* These traits can be attached to any NVVM Op to enable the checks for
the particular Op. (example shown below)
* An attribute interface called named `TargetAttrVerifyInterface` is
added to the GPU dialect which any target attribute seeking to perform
target-verification on the module can implement.
* The checks are performed by the `NVVMTargetAttr` (implementing the
`TargetAttrVerifyInterface` interface) when called from the GPU module
verifier where it walks through the module and performs the checks for
Ops with the `NVVMRequiresSM` traits.
* A few Ops in `NVVMOps.td` have been updated to serve as examples.
Example Usage:
```
def NVVM_ReduxOp : NVVM_Op<"redux.sync"> {...}
----> def NVVM_ReduxOp : NVVM_Op<"redux.sync", [NVVMRequiresSM<80>]> {...}
def NVVM_WgmmaFenceAlignedOp : NVVM_Op<"wgmma.fence.aligned"> {...}
----> def NVVM_WgmmaFenceAlignedOp : NVVM_Op<"wgmma.fence.aligned", [NVVMRequiresSMa<[90]>]> {...}
```
---------
Co-authored-by: Guray Ozen <guray.ozen at gmail.com>
Commit: 211ee04a616b0071adefe57015daf5702b0a09b4
https://github.com/llvm/llvm-project/commit/211ee04a616b0071adefe57015daf5702b0a09b4
Author: Javier Lopez-Gomez <javier.lopez.gomez at proton.me>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/DebugInfo/LogicalView/Core/LVScope.cpp
M llvm/lib/DebugInfo/LogicalView/Readers/LVBinaryReader.cpp
M llvm/unittests/DebugInfo/LogicalView/DWARFReaderTest.cpp
A llvm/unittests/DebugInfo/LogicalView/Inputs/test-dwarf-clang-unspec-params.elf
Log Message:
-----------
[llvm-debuginfo-analyzer] Fix a couple of unhandled DWARF situations leading to a crash (#137221)
This pull request fixes a couple of unhandled situations in DWARF input
leading to a crash. Specifically,
- If the DWARF input contains a declaration of a C variadic function
(where `...` translates to `DW_TAG_unspecified_parameters`), which is
then followed by a definition, `llvm_unreachable()` is hit in
`LVScope::addMissingElements()`. This is only visible in Debug builds.
- Parsing of instructions in `LVBinaryReader::createInstructions()` does
not check whether `Offset` lies within the `Bytes` ArrayRef. A specially
crafted DWARF input can lead to this condition.
Commit: a4782ff903267a053885f999e499cce6023bf239
https://github.com/llvm/llvm-project/commit/a4782ff903267a053885f999e499cce6023bf239
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/tools/llvm-mca/CodeRegion.cpp
M llvm/tools/llvm-mca/CodeRegion.h
Log Message:
-----------
[llvm-mca] Drop const from a return type (NFC) (#140836)
Commit: adbe155eeed6582f85d4c8e2a9268d3df31bf70d
https://github.com/llvm/llvm-project/commit/adbe155eeed6582f85d4c8e2a9268d3df31bf70d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M polly/include/polly/CodeGen/IslNodeBuilder.h
M polly/include/polly/ScopInfo.h
M polly/lib/Analysis/ScopInfo.cpp
M polly/lib/CodeGen/IslAst.cpp
Log Message:
-----------
[polly] Drop const from return types (NFC) (#140837)
Commit: 51b288d9cfb4918cffd915b8654cabf28bb391b2
https://github.com/llvm/llvm-project/commit/51b288d9cfb4918cffd915b8654cabf28bb391b2
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/CodeGen/StackMaps.cpp
Log Message:
-----------
[CodeGen] Avoid repeated hash lookups (NFC) (#140838)
Commit: 557448e14420e1a916280ea6c61cafbf833ff948
https://github.com/llvm/llvm-project/commit/557448e14420e1a916280ea6c61cafbf833ff948
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
Log Message:
-----------
[DebugInfo] Use std::map::try_emplace (NFC) (#140839)
This patch provides default member initialization for SymInfo, which
in turns allows us to call std::map::try_emplace without the value.
Commit: 1fd24369c31d5bc980ff45e0aa788f46288c129c
https://github.com/llvm/llvm-project/commit/1fd24369c31d5bc980ff45e0aa788f46288c129c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
Log Message:
-----------
[CodeGen] Use range-based for loops (NFC) (#140840)
Commit: 9d0614e77ab1c5e2264e07d9b4b5f9780b38781c
https://github.com/llvm/llvm-project/commit/9d0614e77ab1c5e2264e07d9b4b5f9780b38781c
Author: Ely Ronnen <elyronnen at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M lldb/include/lldb/API/SBTarget.h
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/source/API/SBTarget.cpp
M lldb/test/API/tools/lldb-dap/disassemble/TestDAP_disassemble.py
M lldb/test/API/tools/lldb-dap/disassemble/main.c
M lldb/test/API/tools/lldb-dap/instruction-breakpoint/TestDAP_instruction_breakpoint.py
M lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp
Log Message:
-----------
[lldb-dap] fix disassembly request instruction offset handling (#140486)
Fix the handling of the `instructionOffset` parameter, which resulted in
always returning the wrong disassembly because VSCode always uses
`instructionOffset = -50` and expects 50 instructions before the given
address, instead of 50 bytes before
Commit: 3c8a6bc3b7bf3fd4ce7b1a4058874df09ba51676
https://github.com/llvm/llvm-project/commit/3c8a6bc3b7bf3fd4ce7b1a4058874df09ba51676
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
Log Message:
-----------
[clang][bytecode] Optimize classify() further (#140735)
Try to do as few checks as possible. Check for builtin types only once,
then look at the BuiltinType Kind. For integers, we cache the int and
long size, since those are used a lot and the ASTContext::getIntWidth()
call is costly.
Commit: 645846d43b1e6b71b376589d146043db2ed2be54
https://github.com/llvm/llvm-project/commit/645846d43b1e6b71b376589d146043db2ed2be54
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Program.cpp
Log Message:
-----------
[clang][bytecode] Initialize global strings via memcpy (#140789)
If we know the char width is 1, we can just copy
the data over instead of going through the Pointer API.
Commit: 2ed8c27d03dac098744d51f580e7cca38707b183
https://github.com/llvm/llvm-project/commit/2ed8c27d03dac098744d51f580e7cca38707b183
Author: Ely Ronnen <elyronnen at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M lldb/test/API/tools/lldb-dap/disassemble/TestDAP_disassemble.py
Log Message:
-----------
add @skipIfWindows to unresolved disassemble test on windows (#140852)
Fix https://lab.llvm.org/buildbot/#/builders/141/builds/8867
Commit: d50c85df255c6f0ba195bcf3f9c5236120e3984d
https://github.com/llvm/llvm-project/commit/d50c85df255c6f0ba195bcf3f9c5236120e3984d
Author: Balázs Benics <108414871+balazs-benics-sonarsource at users.noreply.github.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
Log Message:
-----------
[analyzer][NFC] Move PrettyStackTraceLocationContext into dispatchWorkItem (#140035)
[analyzer][NFC] Move PrettyStackTraceLocationContext into
dispatchWorkItem
This change helps with ensuring that the abstract machine call stack is
only dumped exactly once no matter what checker callback we have the
crash in.
Note that `check::EndAnalysis` callbacks are resolved outside of
`dispatchWorkItem`, but that's the only checker callback that is outside
of `dispatchWorkItem`.
CPP-6476
Commit: f87bcf1b4905b3be04998e04a22e515798d82e24
https://github.com/llvm/llvm-project/commit/f87bcf1b4905b3be04998e04a22e515798d82e24
Author: tangaac <tangyan01 at loongson.cn>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchRegisterInfo.cpp
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/extractelement.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/extractelement.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-trunc.ll
M llvm/test/CodeGen/LoongArch/vector-fp-imm.ll
Log Message:
-----------
[LoongArch] Add patterns for vstelm instructions (#139201)
Commit: a21986b152927b368eb9c7516ebeaa0b5fbd3167
https://github.com/llvm/llvm-project/commit/a21986b152927b368eb9c7516ebeaa0b5fbd3167
Author: Jonas Rickert <Jonas.Rickert at amd.com>
Date: 2025-05-20 (Tue, 20 May 2025)
Changed paths:
M mlir/lib/Rewrite/ByteCode.cpp
M mlir/test/Rewrite/pdl-bytecode.mlir
M mlir/test/lib/Rewrite/TestPDLByteCode.cpp
Log Message:
-----------
[MLIR][PDL] Skip over all results in the PDL Bytecode if a Constraint/Rewrite failed (#139255)
Skipping only over the first results leads to the curCodeIt pointing to
the wrong location in the bytecode, causing the execution to continue
with a wrong instruction after the Constraint/Rewrite.
Signed-off-by: Rickert, Jonas <Jonas.Rickert at amd.com>
Commit: 49a9bbba67f0d488e871c30898c9945beabd3400
https://github.com/llvm/llvm-project/commit/49a9bbba67f0d488e871c30898c9945beabd3400
Author: Adrian Kuegel <akuegel at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M utils/bazel/llvm_configs/config.h.cmake
Log Message:
-----------
[Bazel] Port a9ee8e4a454ec01fefba8829d2847527aa80623f
Commit: bc546cabe5381c3f047dcb8004cdf3cf81c10461
https://github.com/llvm/llvm-project/commit/bc546cabe5381c3f047dcb8004cdf3cf81c10461
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/include/clang/AST/Type.h
M clang/lib/AST/Type.cpp
Log Message:
-----------
[clang][NFC] Clean up ASTContext.cpp (#140847)
Use BuiltinType::{isInteger,isSignedInteger,isUnsignedInteger} instead
of doing the comparisons here.
Commit: 9f1da90d6f996f2d4606b2d1e31b494d72a82b0e
https://github.com/llvm/llvm-project/commit/9f1da90d6f996f2d4606b2d1e31b494d72a82b0e
Author: Hsiangkai Wang <hsiangkai.wang at arm.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M mlir/lib/Dialect/SPIRV/Transforms/RewriteInsertsPass.cpp
M mlir/test/Dialect/SPIRV/Transforms/rewrite-inserts.mlir
Log Message:
-----------
[mlir][SPIRV] Do not rewrite CompositeInsert for coopmatrix (#137837)
When rewriting multiple CompositeInserts to CompositeConstruct, we need
to know the number of elements of the result type. However, we cannot
query the number of elements for cooperative matrix types.
Commit: 5bd3c44b79d2ebfe3def8f5476c07689e6f76839
https://github.com/llvm/llvm-project/commit/5bd3c44b79d2ebfe3def8f5476c07689e6f76839
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
M clang-tools-extra/clangd/unittests/ProjectAwareIndexTests.cpp
Log Message:
-----------
[clang-tools-extra] Remove redundant control flow statements (NFC) (#140846)
Commit: 462cede350f8c1e8f712663e53d556336db57aae
https://github.com/llvm/llvm-project/commit/462cede350f8c1e8f712663e53d556336db57aae
Author: Adrian Kuegel <akuegel at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[Bazel] Follow fixes for 9a553d3766aacb69e884823da92dedff264e3f0f
Commit: ad055434283d48aa0261106486f6017ae4674016
https://github.com/llvm/llvm-project/commit/ad055434283d48aa0261106486f6017ae4674016
Author: Adrian Kuegel <akuegel at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[Bazel] Also adapt test/BUILD for 9a553d3766aacb69e884823da92dedff264e3f0f
Commit: fe6290ef5b6c77fcf1d9f27114b515dec2c7c0d3
https://github.com/llvm/llvm-project/commit/fe6290ef5b6c77fcf1d9f27114b515dec2c7c0d3
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Analysis/MLInlineAdvisor.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.cpp
M llvm/lib/LTO/LTOModule.cpp
M llvm/lib/Target/Hexagon/HexagonGenMux.cpp
M llvm/lib/Transforms/AggressiveInstCombine/TruncInstCombine.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
M llvm/lib/Transforms/Utils/ValueMapper.cpp
M llvm/tools/llvm-mca/Views/BottleneckAnalysis.cpp
Log Message:
-----------
[llvm] Use *Map::try_emplace (NFC) (#140843)
try_emplace can default-construct values, so we do not need to do so
on our own. Plus, try_emplace(Key) is much shorter than
insert(std::make_pair(Key, Value()).
Commit: 9f4cea209e512f31b067dcfe9ee3da8ee9b1a6f0
https://github.com/llvm/llvm-project/commit/9f4cea209e512f31b067dcfe9ee3da8ee9b1a6f0
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/CMake.rst
M llvm/docs/ConvergenceAndUniformity.rst
M llvm/docs/LangRef.rst
M llvm/docs/MLGO.rst
M llvm/docs/MemoryModelRelaxationAnnotations.rst
M llvm/docs/MyFirstTypoFix.rst
M llvm/docs/NVPTXUsage.rst
M llvm/docs/OpaquePointers.rst
M llvm/docs/RISCVUsage.rst
M llvm/docs/Vectorizers.rst
M llvm/docs/XRayFDRFormat.rst
Log Message:
-----------
[llvm] Fix typos in documentation (#140844)
Commit: f4cebe5d73c24ab53917bd58aedc9db892a164ae
https://github.com/llvm/llvm-project/commit/f4cebe5d73c24ab53917bd58aedc9db892a164ae
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/Sema/SemaExpr.cpp
M clang/test/CXX/stmt.stmt/stmt.select/stmt.if/p2.cpp
Log Message:
-----------
[Clang] Fix a regression introduced by #140576 (#140859)
Lambda bodies should not be treated as subexpressions of the enclosing
scope.
Commit: d827588c36131c342fe3602a2876b40efc39638a
https://github.com/llvm/llvm-project/commit/d827588c36131c342fe3602a2876b40efc39638a
Author: Luke Lau <luke at igalia.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
A llvm/test/Transforms/VectorCombine/X86/intrinsic-scalarize.ll
A llvm/test/Transforms/VectorCombine/intrinsic-scalarize.ll
Log Message:
-----------
[VectorCombine] Scalarize binop-like intrinsics (#138095)
Currently VectorCombine can scalarize vector compares and binary ops.
This extends it to also scalarize binary-op like intrinsics like umax,
minnum etc.
The motivation behind this is to scalarize more intrinsics in
VectorCombine rather than in DAGCombine, so we can sink splats across
basic blocks: see #137786
This currently has very little effect on generated code because
InstCombine doesn't yet canonicalize binary intrinsics where one operand
is a constant into the form that VectorCombine expects, i.e. `binop
(shuffle insert) const --> shuffle (binop insert const)`. The plan is to
land this first and then in a subsequent patch teach InstCombine to do
the canonicalization to avoid regressions in the meantime.
This uses `isTriviallyVectorizable` to determine whether or not an
intrinsic is safe to scalarize. There's also `isTriviallyScalarizable`,
but this seems more geared towards the Scalarizer pass and includes
intrinsics with multiple return values.
It also only handles intrinsics with two operands with the same type as
the return type. In the future we would generalize this to handle
arbitrary numbers of operands, including unary operators too, e.g. fneg
or fma, as well as different operand types, e.g. powi or scmp
Commit: dec214d5c638302b92fa1cfe0582531cd58a7f6d
https://github.com/llvm/llvm-project/commit/dec214d5c638302b92fa1cfe0582531cd58a7f6d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/insert-subvector-broadcast.ll
M llvm/test/CodeGen/X86/widen_fadd.ll
M llvm/test/CodeGen/X86/widen_fdiv.ll
M llvm/test/CodeGen/X86/widen_fmul.ll
M llvm/test/CodeGen/X86/widen_fsub.ll
Log Message:
-----------
[X86] combineINSERT_SUBVECTOR - generalise insert_subvector(x,extract(broadcast)) -> blend (#140516)
Don't match against specific broadcast nodes and let isShuffleEquivalent handle it
Commit: 64dcf7893554b44b2a79d23ea0b21d6f3fc2e38f
https://github.com/llvm/llvm-project/commit/64dcf7893554b44b2a79d23ea0b21d6f3fc2e38f
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.cpp
M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.h
M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value.cpp
Log Message:
-----------
[clang-tidy][NFC] Refactor `modernize-pass-by-value` check code and tests (#140753)
- Deleted unused includes
- Deleted useless braces
- Modernized tests to use `CHECK-MESSAGES-NOT` and `CHECK-FIXES-NOT` for
better readability and maintainability
Commit: 5b5c57d3223ecfdb5af9346cfc48ca9d482a5698
https://github.com/llvm/llvm-project/commit/5b5c57d3223ecfdb5af9346cfc48ca9d482a5698
Author: Peter Smith <peter.smith at arm.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/docs/SecurityTransparencyReports.rst
Log Message:
-----------
Add llvm-project archive issues for Chromium bug tracker (#132030)
The Chromium bug tracker is in an archived state. The Security Response
Group has preemptively created llvm-project GitHub issues with PDF
copies of the Chromium issues should the repository become inaccessible.
* Add URLs for redirects from
https://bugs.chromium.org/p/llvm/issues/detail?id=X to
https://issuetracker.google.com/issues/y
* Add URLs to llvm-project archive issues.
* Add an explanation of archive use.
Commit: 67489c7f0f7badc249cd18805ea1ce4caa7b5ee5
https://github.com/llvm/llvm-project/commit/67489c7f0f7badc249cd18805ea1ce4caa7b5ee5
Author: Adrian Kuegel <akuegel at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M mlir/lib/Rewrite/ByteCode.cpp
Log Message:
-----------
[mlir] Silence an unused variable warnings in builds without asserts.
Commit: e70568e28e1118f5da003959d91ff61967d8ba37
https://github.com/llvm/llvm-project/commit/e70568e28e1118f5da003959d91ff61967d8ba37
Author: Wenju He <wenju.he at intel.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M libclc/clc/lib/generic/misc/clc_shuffle.cl
M libclc/clc/lib/generic/misc/clc_shuffle2.cl
M libclc/opencl/include/clc/opencl/misc/shuffle2.h
Log Message:
-----------
[libclc] Re-use shuffle_decl.inc in OpenCL shuffle2 declaration (#140679)
Also internalize __clc_get_el_* symbols in clc_shuffle2. llvm-diff shows
no change to amdgcn--amdhsa.bc.
Commit: 6553dc30b8e760ae8e11f6c1d635c34d0232e2c3
https://github.com/llvm/llvm-project/commit/6553dc30b8e760ae8e11f6c1d635c34d0232e2c3
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/Basic/Targets/NVPTX.h
M clang/test/Misc/nvptx.languageOptsOpenCL.cl
Log Message:
-----------
[NVPTX] Support the OpenCL generic addrspace feature by default (#137940)
As best as I can see, all NVPTX architectures support the generic
address space.
I note there's a FIXME in the target's address space map about 'generic'
still having to be added to the target but we haven't observed any
issues with it downstream. The generic address space is mapped to the
same target address space as default/private (0), but this isn't
necessarily a problem for users.
Commit: 1b69f7775b3ffc3c2a0de9ac0d0ba99d0cd263ea
https://github.com/llvm/llvm-project/commit/1b69f7775b3ffc3c2a0de9ac0d0ba99d0cd263ea
Author: Hongren Zheng <i at zenithal.me>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M mlir/docs/DefiningDialects/Assembly.md
Log Message:
-----------
[MLIR][Doc] Add documentation for OpAsmAttr/TypeInterface (#140244)
After the introduction of OpAsmAttr/TypeInterface in #121187 #124721,
the documentation for them could be updated along side the doc for
OpAsmDialectInterface.
#127993 changed the trailing digit behavior for alias name generation.
Commit: 22a493089ad009c7fd444fb2022c9174e681e222
https://github.com/llvm/llvm-project/commit/22a493089ad009c7fd444fb2022c9174e681e222
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/test/Dialect/Tosa/ops.mlir
Log Message:
-----------
[mlir][tosa] Allow creation of reshape with unranked output (#140617)
This commit allows reshape to be created with an unranked output,
allowing it to be inferred by the shape inference pass.
Commit: 1a08aa2680da76258a2f8252ab63d05e5638b9da
https://github.com/llvm/llvm-project/commit/1a08aa2680da76258a2f8252ab63d05e5638b9da
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/docs/AArch64SME.rst
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
Log Message:
-----------
[AArch64] Split AArch64ISD::COND_SMSTART/STOP off AArch64::SMSTART/STOP (NFC) (#140711)
The conditional variants of SMSTART/STOP currently take the current
PStateSM as a variadic value. This is not supported by the verification
added in #140472 (which requires variadic values to be of type Register
or RegisterMask), so this patch splits the the conditional variants into
new `COND_` nodes, where these extra parameters are fixed arguments.
Suggested in
https://github.com/llvm/llvm-project/pull/140472#discussion_r2094635066
Part of #140472.
Commit: 80913b44a41ae0bbfbfee0c7b15cfa5a20e445d8
https://github.com/llvm/llvm-project/commit/80913b44a41ae0bbfbfee0c7b15cfa5a20e445d8
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M libclc/opencl/include/clc/opencl/math/frexp.h
R libclc/opencl/include/clc/opencl/math/frexp.inc
Log Message:
-----------
[libclc][NFC] Reuse inc file for OpenCL frexp decl
Commit: f054aa240f4205873a1d2bb6da3e453007be8ba6
https://github.com/llvm/llvm-project/commit/f054aa240f4205873a1d2bb6da3e453007be8ba6
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
A flang/test/Semantics/OpenMP/cancel-bad-cancel-type.f90
Log Message:
-----------
[flang][OpenMP] fix diagnostic for bad cancel type (#140798)
Fixes #133685
Commit: 7a8090c037255b54895d61df2eb141fee48d6d83
https://github.com/llvm/llvm-project/commit/7a8090c037255b54895d61df2eb141fee48d6d83
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
Log Message:
-----------
[AArch64] Remove unused ISD nodes (NFC) (#140706)
Part of #140472.
Commit: 0bc7f41db8f3761f144679e014463aeff29fdbc5
https://github.com/llvm/llvm-project/commit/0bc7f41db8f3761f144679e014463aeff29fdbc5
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M libclc/clc/include/clc/math/clc_remquo.h
M libclc/clc/include/clc/math/remquo_decl.inc
M libclc/clc/lib/generic/math/clc_remquo.cl
A libclc/clc/lib/generic/math/clc_remquo.inc
M libclc/opencl/include/clc/opencl/math/remquo.h
M libclc/opencl/lib/generic/math/remquo.cl
M libclc/opencl/lib/generic/math/remquo.inc
Log Message:
-----------
[libclc] Move all remquo address spaces to CLC library (#140871)
Previously the OpenCL address space overloads of remquo would call into
the one and only 'private' CLC remquo. This was an outlier compared with
the other pointer-argumented maths builtins.
This commit moves the definitions of all address space overloads to the
CLC library to give more control over each address space to CLC
implementers.
There are some minor changes to the generated bytecode but it's simply
moving IR instructions around.
Commit: 7fe387ac35b0b37d2862beaf9c17062b62a221ed
https://github.com/llvm/llvm-project/commit/7fe387ac35b0b37d2862beaf9c17062b62a221ed
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/Sema/SemaExpr.cpp
M clang/test/Sema/implicit-void-ptr-cast.c
Log Message:
-----------
[C] Don't diagnose null pointer macros in -Wimplicit-void-ptr-cast (#140724)
This silences the diagnostic when the right-hand side is a null pointer
constant that comes from a macro expansion, such as NULL. However, we do
not limit to just NULL because other custom macros may expand to an
implicit void * cast in C while expanding to something else in C++.
Commit: fd86e732fa93c4d4a658c717b6593c179448a2aa
https://github.com/llvm/llvm-project/commit/fd86e732fa93c4d4a658c717b6593c179448a2aa
Author: Javed Absar <javed.absar at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
Log Message:
-----------
[mlir][memref][nfc] push early-exit to earlier (#140730)
Move early exit check to as early as possible,
quic_mabsar at quicinc.com
Commit: bdc1296de4cdccfba001416f96ce42b63082220a
https://github.com/llvm/llvm-project/commit/bdc1296de4cdccfba001416f96ce42b63082220a
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/test/CodeGen/ubsan-src-ignorelist-category.test
Log Message:
-----------
[NFC] Ubsan a few corner cases for `=sanitize` (#140855)
Commit: bb2791609db5da24e51d0bc50fedff654da9a1a8
https://github.com/llvm/llvm-project/commit/bb2791609db5da24e51d0bc50fedff654da9a1a8
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/test/Analysis/LoopAccessAnalysis/different-access-types-rt-checks.ll
M llvm/test/Analysis/LoopAccessAnalysis/early-exit-runtime-checks.ll
M llvm/test/Analysis/LoopAccessAnalysis/evaluate-at-symbolic-max-backedge-taken-count-may-wrap.ll
M llvm/test/Analysis/LoopAccessAnalysis/forked-pointers.ll
M llvm/test/Analysis/LoopAccessAnalysis/loop-invariant-dep-with-backedge-taken-count.ll
M llvm/test/Analysis/LoopAccessAnalysis/loops-with-indirect-reads-and-writes.ll
M llvm/test/Analysis/LoopAccessAnalysis/memcheck-for-loop-invariant.ll
M llvm/test/Analysis/LoopAccessAnalysis/multiple-strides-rt-memory-checks.ll
M llvm/test/Analysis/LoopAccessAnalysis/non-constant-distance-backward.ll
M llvm/test/Analysis/LoopAccessAnalysis/nssw-predicate-implied.ll
M llvm/test/Analysis/LoopAccessAnalysis/number-of-memchecks.ll
M llvm/test/Analysis/LoopAccessAnalysis/nusw-predicates.ll
M llvm/test/Analysis/LoopAccessAnalysis/offset-range-known-via-assume.ll
M llvm/test/Analysis/LoopAccessAnalysis/pointer-phis.ll
M llvm/test/Analysis/LoopAccessAnalysis/positive-dependence-distance-different-access-sizes.ll
M llvm/test/Analysis/LoopAccessAnalysis/retry-runtime-checks-after-dependence-analysis-forked-pointers.ll
M llvm/test/Analysis/LoopAccessAnalysis/retry-runtime-checks-after-dependence-analysis.ll
M llvm/test/Analysis/LoopAccessAnalysis/runtime-checks-may-wrap.ll
M llvm/test/Analysis/LoopAccessAnalysis/symbolic-stride.ll
M llvm/test/Analysis/LoopAccessAnalysis/unknown-dependence-retry-with-runtime-checks.ll
M llvm/test/Analysis/LoopAccessAnalysis/unsafe-and-rt-checks-convergent.ll
M llvm/test/tools/UpdateTestChecks/update_analyze_test_checks/Inputs/dotvariable-laa.ll.expected
A llvm/test/tools/UpdateTestChecks/update_analyze_test_checks/Inputs/loop-access-analysis-common-output.ll
A llvm/test/tools/UpdateTestChecks/update_analyze_test_checks/Inputs/loop-access-analysis-common-output.ll.expected
M llvm/test/tools/UpdateTestChecks/update_analyze_test_checks/Inputs/loop-access-analysis.ll.expected
M llvm/test/tools/UpdateTestChecks/update_analyze_test_checks/Inputs/loop-distribute.ll.expected
A llvm/test/tools/UpdateTestChecks/update_analyze_test_checks/loop-access-analysis-common-output.test
M llvm/utils/UpdateTestChecks/common.py
Log Message:
-----------
[LAA] Tweak debug output for UTC stability (#140764)
UpdateTestChecks has a make_analyzer_generalizer to replace pointer
addressess from the debug output of LAA with a pattern, which is an
acceptable solution when there is one RUN line. However, when there are
multiple RUN lines with a common pattern, UTC fails to recognize common
output due to mismatched pointer addresses. Instead of hacking UTC scrub
the output before comparing the outputs from the different RUN lines,
fix the issue once and for all by making LAA not output unstable pointer
addresses in the first place.
The removal of the now-dead make_analyzer_generalizer is left as a
non-trivial exercise for a follow-up.
Commit: 881872896279338788690ba3f17b6c756ae4b91c
https://github.com/llvm/llvm-project/commit/881872896279338788690ba3f17b6c756ae4b91c
Author: Balázs Benics <108414871+balazs-benics-sonarsource at users.noreply.github.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/include/clang/Analysis/ProgramPoint.h
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
M clang/test/Analysis/exploration_order/noexprcrash.c
Log Message:
-----------
[analyzer] Add previous CFG block to BlockEntrance ProgramPoints (#140861)
This helps to gain contextual information about how we entered a CFG block.
The `noexprcrash.c` test probably changed due to the fact that now
BlockEntrance ProgramPoint Profile also hashes the pointer of the
previous CFG block. I didn't investigate.
CPP-6483
Commit: 4091b5d9ec985e1b2b5fc1810c6bfeff7800089b
https://github.com/llvm/llvm-project/commit/4091b5d9ec985e1b2b5fc1810c6bfeff7800089b
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-interleave.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-2.ll
Log Message:
-----------
[X86] lowerV8F32Shuffle - use lowerShufflePairAsUNPCKAndPermute on AVX1 targets (#140881)
If we're not going to split the v8f32 shuffle anyway, attempt to match with lowerShufflePairAsUNPCKAndPermute
Commit: ff46a474968e6613ae9846088aa99e4459d598e9
https://github.com/llvm/llvm-project/commit/ff46a474968e6613ae9846088aa99e4459d598e9
Author: Aadesh Premkumar <aadesh.premkumar at multicorewareinc.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.h
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_subgroup_matrix_multiply_accumulate/subgroup_matrix_multiply_accumulate_generic.ll
Log Message:
-----------
[SPIRV] Addition of matrix multiply accumulate operands (#138665)
--Added Matrix multiply accumulate operands for the extension
SPV_INTEL_subgroup_matrix_multiply_accumulate
Commit: 9f8d798942e7679ca265efb23a7f655936d19a49
https://github.com/llvm/llvm-project/commit/9f8d798942e7679ca265efb23a7f655936d19a49
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
Log Message:
-----------
InferAddressSpaces: Stop trying to insert pointer bitcasts (#140873)
Commit: 32f81320e2dd08380eef9cda15e29d6b0e834b24
https://github.com/llvm/llvm-project/commit/32f81320e2dd08380eef9cda15e29d6b0e834b24
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineINSERT_SUBVECTOR - simplify aligned index assertion to avoid signed/unsigned warning. NFC.
Commit: 70f9a8163fb984b0f62741a2bcab9686220ee07d
https://github.com/llvm/llvm-project/commit/70f9a8163fb984b0f62741a2bcab9686220ee07d
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/include/llvm/TableGen/DirectiveEmitter.h
M llvm/utils/TableGen/Basic/DirectiveEmitter.cpp
Log Message:
-----------
[utils][TableGen] Clean up code in DirectiveEmitter (#140772)
Remove most redundant function calls. Unify enum identifier name
generation (via getIdentifierName), and namespace qualification (via
getQualifier).
Commit: 651db24a9c0aa135c78b3456dd966b54e032d356
https://github.com/llvm/llvm-project/commit/651db24a9c0aa135c78b3456dd966b54e032d356
Author: Scott Manley <rscottmanley at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M flang/lib/Lower/OpenACC.cpp
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
Log Message:
-----------
[OpenACC] rename private/firstprivate recipe attributes (#140719)
Make private and firstprivate recipe attribute names consistent with
reductionRecipes attribute
Commit: a7ede51b556f40163db9e3cc67c98c27ba2364d8
https://github.com/llvm/llvm-project/commit/a7ede51b556f40163db9e3cc67c98c27ba2364d8
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/Transforms/Passes.td
M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
M mlir/lib/Dialect/XeGPU/Transforms/CMakeLists.txt
A mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
A mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-rr.mlir
A mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
Log Message:
-----------
[mlir][XeGPU] Add XeGPU Workgroup to Subgroup Distribution Pass (#140805)
This PR adds the XeGPU workgroup (wg) to subgroup (sg) pass. The wg to
sg pass transforms the xegpu wg level operations to subgroup operations
based on the sg_layout and sg_data attribute. The PR adds transformation
patterns for following Ops
1. CreateNdDesc
2. LoadNd
3. StoreNd
4. PrefetchNd
5. UpdateNdOffset
6. Dpas
Commit: b5e3d8ec084d94265b0edc58b82f57597abe645b
https://github.com/llvm/llvm-project/commit/b5e3d8ec084d94265b0edc58b82f57597abe645b
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/utils/TableGen/AsmMatcherEmitter.cpp
M llvm/utils/TableGen/CodeEmitterGen.cpp
M llvm/utils/TableGen/Common/AsmWriterInst.cpp
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
M llvm/utils/TableGen/Common/CodeGenInstruction.cpp
M llvm/utils/TableGen/Common/CodeGenInstruction.h
M llvm/utils/TableGen/Common/DAGISelMatcher.h
M llvm/utils/TableGen/DAGISelMatcherGen.cpp
M llvm/utils/TableGen/DecoderEmitter.cpp
M llvm/utils/TableGen/GlobalISelEmitter.cpp
Log Message:
-----------
[LLVM][TableGen] Use StringRef for various members `CGIOperandList::OperandInfo` (#140625)
- Change `Name`, `SubopNames`, `PrinterMethodName`, and
`EncoderMethodNames` to be stored as StringRef.
- Also changed `CheckComplexPatMatcher::Name` to StringRef as a fallout
from the above.
Verified that all the tablegen generated files within LLVM are
unchanged.
Commit: fb627e39e28ab5f72a90d00e60d2e80ff8482c6f
https://github.com/llvm/llvm-project/commit/fb627e39e28ab5f72a90d00e60d2e80ff8482c6f
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/Value.h
Log Message:
-----------
[LLVM][IR] Replace `unsigned >= ConstantDataFirstVal` with static_assert (#140827)
`ConstantDataFirstVal` is 0, so `getValueID() >= ConstantDataFirstVal`
leads to a compiler warning that the expression is always true. Replace
such comparisons with a static_assert() to verify that
`ConstantDataFirstVal` is 0, similar to the existing code in Value.h
Commit: 2cf6099cd5fa9876aa4ac160a8cf88a46c79ee55
https://github.com/llvm/llvm-project/commit/2cf6099cd5fa9876aa4ac160a8cf88a46c79ee55
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Support/regcomp.c
Log Message:
-----------
[NFC][Support] Apply clang-format to regcomp.c (#140769)
Apply clang-format to regcomp.c since it's not conformant and leads to
clang-format failures when doing individual changes to this file (for
example in https://github.com/llvm/llvm-project/pull/140758). File
generated by running `clang-format -i regcomp.c`
Commit: d36028120a6ef6346bfaafe82d4d1a2887cf5e33
https://github.com/llvm/llvm-project/commit/d36028120a6ef6346bfaafe82d4d1a2887cf5e33
Author: Sebastian Pop <spop at nvidia.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/CommonArgs.h
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/docs/ReleaseNotes.md
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
A flang/test/Driver/loop-interchange.f90
Log Message:
-----------
[flang] add -floop-interchange and enable it with opt levels (#140182)
Enable the use of -floop-interchange from the flang driver.
Enable in flang LLVM's loop interchange at levels -O2, -O3, -Ofast, and -Os.
Commit: dc29901efb18880679b965538ae8bc3f6dd5ecd8
https://github.com/llvm/llvm-project/commit/dc29901efb18880679b965538ae8bc3f6dd5ecd8
Author: Robert Imschweiler <robert.imschweiler at amd.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
A llvm/test/CodeGen/AMDGPU/promote-alloca-shufflevector.ll
Log Message:
-----------
[AMDGPU] PromoteAlloca: handle out-of-bounds GEP for shufflevector (#139700)
This LLVM defect was identified via the AMD Fuzzing project.
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 2d956d2d4ecd6191cd0eab76ec705f5ea2916d59
https://github.com/llvm/llvm-project/commit/2d956d2d4ecd6191cd0eab76ec705f5ea2916d59
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M flang/lib/Lower/ConvertCall.cpp
M flang/test/Lower/HLFIR/ignore-type-f77-character.f90
Log Message:
-----------
[flang] fix ICE with ignore_tkr(tk) character in explicit interface (#140885)
Some MPI libraries use character dummies + ignore(TKR) to allow passing
any kind of buffer.
This was meant to already be handled by #108168
However, when the library interface also had an argument requiring an
explicit interface, `builder.convertWithSemantics` was not allowed to properly deal
with the actual/dummy type mismatch and generated bad IR causing errors like:
`'fir.convert' op invalid type conversion'!fir.ref' / '!fir.boxchar\<1\>'`.
This restriction was artificial, lowering should just handle any cases
allowed by semantics. Just remove it.
Commit: f37c24194e2b0992e8a44584c0c4970d5cfb14f8
https://github.com/llvm/llvm-project/commit/f37c24194e2b0992e8a44584c0c4970d5cfb14f8
Author: A. Jiang <de34 at live.cn>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/Sema/SemaTemplate.cpp
Log Message:
-----------
[Clang] Set the final date for workaround for libstdc++'s `format_kind` (#140831)
We can use 20250520 as the final date, see the following commits.
- GCC releases/gcc-15 branch:
- https://gcc.gnu.org/g:fedf81ef7b98e5c9ac899b8641bb670746c51205
- https://gcc.gnu.org/g:53680c1aa92d9f78e8255fbf696c0ed36f160650
- GCC master branch:
- https://gcc.gnu.org/g:9361966d80f625c5accc25cbb439f0278dd8b278
- https://gcc.gnu.org/g:c65725eccbabf3b9b5965f27fff2d3b9f6c75930
Follows-up #139560.
Commit: cb575785b96ead29d699201b2d1e1d1203fdb494
https://github.com/llvm/llvm-project/commit/cb575785b96ead29d699201b2d1e1d1203fdb494
Author: Javier Lopez-Gomez <javier.lopez.gomez at proton.me>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-debuginfo-analyzer.rst
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVElement.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVReader.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVScope.h
M llvm/lib/DebugInfo/LogicalView/Core/LVScope.cpp
M llvm/lib/DebugInfo/LogicalView/Readers/LVDWARFReader.cpp
M llvm/tools/llvm-debuginfo-analyzer/Options.cpp
M llvm/unittests/DebugInfo/LogicalView/DWARFReaderTest.cpp
A llvm/unittests/DebugInfo/LogicalView/Inputs/test-dwarf-clang-module.o
Log Message:
-----------
[llvm-debuginfo-analyzer] Support DW_TAG_module (#137228)
- Adds support for `DW_TAG_module` DIEs and recurse over their children.
Prior to this patch, entities hanging below `DW_TAG_module` were just
not visible. This DIE kind is commonly generated by Objective-C modules.
This patch will represent such entities, which will print as
```
[001] {CompileUnit} '/llvm/tools/clang/test/modules/<stdin>'
[002] {Producer} 'LLVM version 3.7.0'
{Directory} '/llvm/tools/clang/test/modules'
{File} '<stdin>'
[002] {Module} 'DebugModule'
```
The minimal test case included is just the result of
```
$ llc llvm/test/DebugInfo/X86/DIModule.ll
-accel-tables=Dwarf
-o llvm/unittests/DebugInfo/LogicalView/Inputs/test-dwarf-clang-module.o
-filetype=obj
```
Commit: 95bd9eef42679f3d13e3279204c75372e2c062f0
https://github.com/llvm/llvm-project/commit/95bd9eef42679f3d13e3279204c75372e2c062f0
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/Parse/ParsePragma.cpp
A clang/test/Sema/Inputs/builtin-system-header.h
A clang/test/Sema/builtin-pragma-intrinsic.c
Log Message:
-----------
[clang][Sema] Declare builtins used in #pragma intrinsic (#138205)
When trying to remove the usage of `__has_builtin` on MSVC CUDA ARM for
some builtins, the recommended direction was to universally declare the
MSVC builtins on all platforms and require the header providing
declarations to be included. This was done
[here](https://github.com/llvm/llvm-project/pull/128222).
However, some MSVC headers already use the MSVC builtins without
including the header, so we introduce a warning for anyone compiling
with MSVC for this target, so the above change had to be reverted.
The MSVC headers use `#pragma intrinsic` before the intrinsic uses and
that seems to be enough for MSVC, so declare builtins when used in
`#pragma intrinsic` in Clang to prevent the warning.
---------
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: 32946ddd2e5ab83505e832b7ef43bc10bd6dce68
https://github.com/llvm/llvm-project/commit/32946ddd2e5ab83505e832b7ef43bc10bd6dce68
Author: Daan De Meyer <daan.j.demeyer at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
M clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp
M clang/include/clang/Basic/Attr.td
M clang/lib/Sema/SemaDeclAttr.cpp
Log Message:
-----------
[clang-include-cleaner] Make cleanup attr report expr location (#140233)
Instead of reporting the location of the attribute, let's report the
location of the function reference that's passed to the cleanup
attribute as the first argument. This is required as the attribute might
be coming from a macro which means clang-include-cleaner skips the use
as it gets attributed to the header file declaringt the macro and not to
the main file.
To make this work, we have to add a fake argument to the CleanupAttr
constructor so we can pass in the original Expr alongside the function
declaration.
Fixes #140212
Commit: c46a394df998afa86e43c772f52f95cf697656b0
https://github.com/llvm/llvm-project/commit/c46a394df998afa86e43c772f52f95cf697656b0
Author: Daan De Meyer <daan.j.demeyer at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.cpp
M clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/include-cleaner.rst
A clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner-wrong-config.cpp
M clang-tools-extra/unittests/clang-tidy/IncludeCleanerTest.cpp
Log Message:
-----------
[clang-tidy] Add UnusedIncludes/MissingIncludes options to misc-include-cleaner (#140600)
These mimick the same options from clangd and allow using the check to
only check for unused includes or missing includes.
Commit: dabc84c890e5817d9c85df04bcaa279ecfd44a3c
https://github.com/llvm/llvm-project/commit/dabc84c890e5817d9c85df04bcaa279ecfd44a3c
Author: Daan De Meyer <daan.j.demeyer at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang-tools-extra/clang-include-fixer/find-all-symbols/STLPostfixHeaderMap.cpp
M clang-tools-extra/clangd/index/CanonicalIncludes.cpp
Log Message:
-----------
[clang-tools-extra] Add include mappings for getopt.h (#140726)
Commit: b263c08e1a0b54a871915930aa9a1a6ba205b099
https://github.com/llvm/llvm-project/commit/b263c08e1a0b54a871915930aa9a1a6ba205b099
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/CMakeLists.txt
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
A llvm/lib/Transforms/Vectorize/VPlanPredicator.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
Log Message:
-----------
[VPlan] Move predication to VPlanTransform (NFC). (#128420)
This patch moves the logic to predicate and linearize a VPlan to a
dedicated VPlan transform. It mostly ports the existing logic directly.
There are a number of follow-ups planned in the near future to
further improve on the implementation:
* Edge and block masks are cached in VPPredicator, but the block masks
are still made available to VPRecipeBuilder, so they can be accessed
during recipe construction. As a follow-up, this should be replaced by
adding mask operands to all VPInstructions that need them and use that
during recipe construction.
* The mask caching in a map also means that this map needs updating each
time a new recipe replaces a VPInstruction; this would also be handled
by adding mask operands.
PR: https://github.com/llvm/llvm-project/pull/128420
Commit: 2e2bbcacf813de52f6e7f48dea67e26de1f1f99e
https://github.com/llvm/llvm-project/commit/2e2bbcacf813de52f6e7f48dea67e26de1f1f99e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/test/CodeGen/AMDGPU/maximumnum.ll
M llvm/test/CodeGen/AMDGPU/minimumnum.ll
Log Message:
-----------
AMDGPU/GlobalISel: Start legalizing minimumnum and maximumnum (#140900)
This is the bare minimum to get the intrinsic to compile for AMDGPU,
and it's not optimal. We need to follow along closer with the existing
G_FMINNUM/G_FMAXNUM with custom lowering to handle the IEEE=0 case
better.
Just re-use the existing lowering for the old semantics for
G_FMINNUM/G_FMAXNUM. This does not change G_FMINNUM/G_FMAXNUM's
treatment,
nor try to handle the general expansion without an underlying min/max
variant (or with G_FMINIMUM/G_FMAXIMUM).
Commit: a28d753e9645f62bff4d65c5ddce17e11e8fd078
https://github.com/llvm/llvm-project/commit/a28d753e9645f62bff4d65c5ddce17e11e8fd078
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[Vectorize] Fix a warning
This patch fixes:
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp:8564:20: error:
unused variable 'LoopRegionOf' [-Werror,-Wunused-variable]
Commit: 735209c0688b10a66c24750422b35d8c2ad01bb5
https://github.com/llvm/llvm-project/commit/735209c0688b10a66c24750422b35d8c2ad01bb5
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
M clang/test/CodeGen/builtins-nvptx-ptx60.cu
M clang/test/CodeGen/builtins-nvptx.c
M clang/test/Headers/gpuintrin.c
M llvm/docs/NVPTXUsage.rst
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/test/Analysis/GlobalsModRef/functions_without_nosync.ll
M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
M llvm/test/CodeGen/NVPTX/barrier.ll
R llvm/test/CodeGen/NVPTX/named-barriers.ll
M llvm/test/CodeGen/NVPTX/noduplicate-syncthreads.ll
M llvm/test/Feature/intrinsic-noduplicate.ll
M llvm/test/Transforms/FunctionAttrs/convergent.ll
M llvm/test/Transforms/JumpThreading/thread-two-bbs-cuda.ll
M llvm/test/Transforms/OpenMP/barrier_removal.ll
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/test/Target/LLVMIR/Import/nvvmir.ll
M mlir/test/Target/LLVMIR/nvvmir.mlir
Log Message:
-----------
[NVPTX] Unify and extend barrier{.cta} intrinsic support (#140615)
Our current intrinsic support for barrier intrinsics is confusing and
incomplete, with multiple intrinsics mapping to the same instruction and
intrinsic names not clearly conveying intrinsic semantics. Further, we
lack support for some variants. This change unifies the IR
representation to a single consistently named set of intrinsics.
- llvm.nvvm.barrier.cta.sync.aligned.all(i32)
- llvm.nvvm.barrier.cta.sync.aligned(i32, i32)
- llvm.nvvm.barrier.cta.arrive.aligned(i32, i32)
- llvm.nvvm.barrier.cta.sync.all(i32)
- llvm.nvvm.barrier.cta.sync(i32, i32)
- llvm.nvvm.barrier.cta.arrive(i32, i32)
The following Auto-Upgrade rules are used to maintain compatibility with
IR using the legacy intrinsics:
* llvm.nvvm.barrier0 --> llvm.nvvm.barrier.cta.sync.aligned.all(0)
* llvm.nvvm.barrier.n --> llvm.nvvm.barrier.cta.sync.aligned.all(x)
* llvm.nvvm.bar.sync --> llvm.nvvm.barrier.cta.sync.aligned.all(x)
* llvm.nvvm.barrier --> llvm.nvvm.barrier.cta.sync.aligned(x, y)
* llvm.nvvm.barrier.sync --> llvm.nvvm.barrier.cta.sync.all(x)
* llvm.nvvm.barrier.sync.cnt --> llvm.nvvm.barrier.cta.sync(x, y)
Commit: ec9c8e90cc824c45efde9768bbdff0b529d45a34
https://github.com/llvm/llvm-project/commit/ec9c8e90cc824c45efde9768bbdff0b529d45a34
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
Log Message:
-----------
[gn build] Port b263c08e1a0b
Commit: a0b6cfd9752742ff599364545ca9996cee67ef9b
https://github.com/llvm/llvm-project/commit/a0b6cfd9752742ff599364545ca9996cee67ef9b
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
A clang/test/Preprocessor/riscv-target-features-sifive.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/TargetParser/RISCVTargetParser.h
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.h
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
A llvm/lib/Target/RISCV/RISCVInstrInfoXSfmm.td
M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
M llvm/lib/Target/RISCV/RISCVSubtarget.h
M llvm/lib/TargetParser/RISCVTargetParser.cpp
A llvm/test/CodeGen/RISCV/attributes-sifive.ll
M llvm/test/CodeGen/RISCV/features-info.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-zve64f.mir
A llvm/test/MC/RISCV/attribute-arch-sifive.s
A llvm/test/MC/RISCV/rvv/xsfmm-invalid.s
A llvm/test/MC/RISCV/rvv/xsfmm.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Add MC layer support for XSfmm*. (#133031)
This adds assembler/disassembler support for XSfmmbase 0.6 and related
SiFive matrix multiplication extensions based on the spec here
https://www.sifive.com/document-file/xsfmm-matrix-extensions-specification
Functionality-wise, this is the same as the Zvma extension proposal that
SiFive shared with the Attached Matrix Extension Task Group. The
extension names and instruction mnemonics have been changed to use
vendor prefixes.
Note this is a non-conforming extension as the opcodes used here are in
the standard opcode space in OP-V or OP-VE.
---------
Co-authored-by: Brandon Wu <brandon.wu at sifive.com>
Commit: d13947bd6caf442151a4b3f51e3e8b226c490535
https://github.com/llvm/llvm-project/commit/d13947bd6caf442151a4b3f51e3e8b226c490535
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/fabs.ll
M llvm/test/Transforms/InstCombine/fneg.ll
Log Message:
-----------
[InstCombine] Enable more fabs fold when the user ignores sign bit of zero/NaN (#139861)
When the only user of select is a fcmp or a fp operation with nnan/nsz,
the sign bit of zero/NaN can be ignored.
Alive2: https://alive2.llvm.org/ce/z/ZcxeIv
Compile-time impact:
https://llvm-compile-time-tracker.com/compare.php?from=7add1bcd02b1f72d580bb2e64a1fe4a8bdc085d9&to=cb419c7cbddce778673f3d4b414ed9b8064b8d6e&stat=instructions:u
Closes https://github.com/llvm/llvm-project/issues/133367.
Commit: 5a3776af521b8ddc14a19d1954af64e2960d2397
https://github.com/llvm/llvm-project/commit/5a3776af521b8ddc14a19d1954af64e2960d2397
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/include/llvm/Transforms/Utils/SCCPSolver.h
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
Log Message:
-----------
[SCCPSolver] Make getMRVFunctionsTracked return a reference (NFC) (#140851)
This patch makes getMRVFunctionsTracked return a reference.
runIPSCCP, the sole user of getMRVFunctionsTracked, just needs a
read-access to the map.
The missing "&" is most likely an oversight as two "sibling" functions
getTrackedRetVals and getTrackedGlobals return maps by const
reference.
Commit: 09c266b75db43665b090592782ec13757358a083
https://github.com/llvm/llvm-project/commit/09c266b75db43665b090592782ec13757358a083
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/21.rst
M libcxx/include/CMakeLists.txt
M libcxx/include/__algorithm/for_each_n.h
A libcxx/include/__algorithm/for_each_n_segment.h
M libcxx/include/__iterator/segmented_iterator.h
M libcxx/include/module.modulemap.in
A libcxx/test/benchmarks/algorithms/nonmodifying/for_each_n.bench.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/for_each_n.pass.cpp
Log Message:
-----------
[libc++] Optimize std::for_each_n for segmented iterators (#135468)
This patch enhances the performance of `std::for_each_n` when used with
segmented iterators, leading to significant performance improvements,
summarized in the tables below. This addresses a subtask of
https://github.com/llvm/llvm-project/issues/102817.
Commit: fc9898c4c09fa4e5b83f99d36e847769bf60da60
https://github.com/llvm/llvm-project/commit/fc9898c4c09fa4e5b83f99d36e847769bf60da60
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.h
M clang/test/CIR/CodeGen/struct.c
Log Message:
-----------
[CIR] Add support for recursive record layouts (#140811)
While processing members of a record, we try to create new record types
as we encounter them, but if this would result in recursion (either
because the type points to itself or because it points to a type that
points back to the original type) we need to add it to a list for
deferred processing. Previously, we issued an error saying this wasn't
handled. This change adds the necessary handling.
Commit: 81b81354f8c117fab07823fef24b97b3a1f47834
https://github.com/llvm/llvm-project/commit/81b81354f8c117fab07823fef24b97b3a1f47834
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/21.rst
M libcxx/include/bitset
A libcxx/test/benchmarks/bitset.bench.cpp
Log Message:
-----------
[libc++] Optimize bitset::to_string (#128832)
This patch optimizes `bitset::to_string` by replacing the existing bit-by-bit processing with a more efficient
bit traversal strategy. Instead of checking each bit sequentially, we leverage `std::__countr_zero` to efficiently
locate the next set bit, skipping over consecutive zero bits. This greatly accelerates the conversion process,
especially for sparse `bitset`s where zero bits dominate. To ensure similar improvements for dense `bitset`s, we
exploit symmetry by inverting the bit pattern, allowing us to apply the same optimized traversal technique. Even
for uniformly distributed `bitset`s, the proposed approach offers measurable performance gains over the existing
implementation.
Benchmarks demonstrate substantial improvements, achieving up to 13.5x speedup for sparse `bitset`s with
`Pr(true bit) = 0.1`, 16.1x for dense `bitset`s with `Pr(true bit) = 0.9`, and 8.3x for uniformly distributed
`bitset`s with `Pr(true bit) = 0.5)`.
Commit: 0edc8b59ab82c868cb76b5b7339916c21d0a35ee
https://github.com/llvm/llvm-project/commit/0edc8b59ab82c868cb76b5b7339916c21d0a35ee
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M lld/ELF/Writer.cpp
M lld/docs/ReleaseNotes.rst
M lld/test/ELF/linkerscript/out-of-order.s
M lld/test/ELF/linkerscript/section-align2.test
M lld/test/ELF/sectionstart.s
M lld/test/ELF/ttext-tdata-tbss.s
Log Message:
-----------
[ELF] Error if a section address is smaller than image base
When using `-no-pie` without a `SECTIONS` command, the linker uses the
target's default image base. If `-Ttext=` or `--section-start` specifies
an output section address below this base, the result is likely
unintended.
- With `--no-rosegment`, the PT_LOAD segment covering the ELF header cannot include `.text` if `.text`'s address is too low, causing an `error: output file too large`.
- With default `--rosegment`:
- If a read-only section (e.g., `.rodata`) exists, a similar `error: output file too large` occurs.
- Without read-only sections, the PT_LOAD segment covering the ELF header and program headers includes no sections, which is unusual and likely undesired. This also causes non-ascending PT_LOAD `p_vaddr` values related to the PT_LOAD that overlaps with PT_PHDR (#138584).
To prevent these issues, report an error if a section address is below
the image base and suggest `--image-base`. This check also applies when
`--image-base` is explicitly set but is skipped when a `SECTIONS`
command is used.
Pull Request: https://github.com/llvm/llvm-project/pull/140187
Commit: 91b2e5bc5d3bcad511f3dfd90e1cedf796218675
https://github.com/llvm/llvm-project/commit/91b2e5bc5d3bcad511f3dfd90e1cedf796218675
Author: Jake Daly <48452250+jakemdaly at users.noreply.github.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
Log Message:
-----------
Add live in for PrivateSegmentSize in GISel path (#139968)
Commit: 385752c9b5f20416ed56080be46fe4b84bb59104
https://github.com/llvm/llvm-project/commit/385752c9b5f20416ed56080be46fe4b84bb59104
Author: Vincent <llvm at viceroygroup.ca>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
A clang/test/AST/ast-dump-riscv-attributes.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
Log Message:
-----------
[clang][TableGen] Fix Duplicate Entries in TableGen (#140828)
Fixed TableGen duplicate issues that causes the wrong interrupt
attribute from being selected.
resolves #140701
Commit: 878c976c7e0a7f00b4175def9f1f90c88dfe9f96
https://github.com/llvm/llvm-project/commit/878c976c7e0a7f00b4175def9f1f90c88dfe9f96
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn build] Port 09c266b75db4
Commit: 9459c8309c6768cf6aa7956885b2540e16582a93
https://github.com/llvm/llvm-project/commit/9459c8309c6768cf6aa7956885b2540e16582a93
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
Log Message:
-----------
[KeyInstr][Clang] Add ApplyAtomGroup (#134632)
This is a scoped helper similar to ApplyDebugLocation that creates a new source
location atom group which instructions can be added to.
A source atom is a source construct that is "interesting" for debug stepping
purposes. We use an atom group number to track the instruction(s) that implement
the functionality for the atom, plus backup instructions/source locations.
This patch is part of a stack that teaches Clang to generate Key Instructions
metadata for C and C++.
RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668
The feature is only functional in LLVM if LLVM is built with CMake flag
LLVM_EXPERIMENTAL_KEY_INSTRUCTIONs. Eventually that flag will be removed.
Commit: 9db6c325249946afc51209f4f66241fb0c688ff9
https://github.com/llvm/llvm-project/commit/9db6c325249946afc51209f4f66241fb0c688ff9
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenCXXExpr.cpp
Log Message:
-----------
[CIR][NFC] Fix an unused variable warning (#140783)
This fixes a warning where a variable assigned in 'if' statement wasn't
referenced again, and where else is used when 'if' has returns statement
in the if-else statement
Commit: 584616c878f8d99c6862aa51d2ff7bf191e98727
https://github.com/llvm/llvm-project/commit/584616c878f8d99c6862aa51d2ff7bf191e98727
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/cast.cpp
Log Message:
-----------
[CIR][LLVMLowering] Upstream Bitcast lowering (#140774)
This change adds support for lowering BitCastOp
Commit: d997b4f5318f5ce8bcebe818c636f107e5ec0fb6
https://github.com/llvm/llvm-project/commit/d997b4f5318f5ce8bcebe818c636f107e5ec0fb6
Author: peremyach <akhabutdinov at meta.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h
M llvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h
M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
M llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp
M llvm/lib/DebugInfo/GSYM/DwarfTransformer.cpp
Log Message:
-----------
Reduce llvm-gsymutil memory usage (#140740)
Same as https://github.com/llvm/llvm-project/pull/139907/ except there
is now a special dovoidwork helper function.
Previous approach with assert(f();return success;) failed tests for
release builds, so I created a separate helper. Open to suggestions how
to solve this more elegantly.
Co-authored-by: Arslan Khabutdinov <akhabutdinov at fb.com>
Commit: 94142d9bb08c523802cbfb3c316fc2ae9bb33b60
https://github.com/llvm/llvm-project/commit/94142d9bb08c523802cbfb3c316fc2ae9bb33b60
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M libclc/CMakeLists.txt
M libclc/clc/include/clc/clcfunc.h
M libclc/clc/include/clc/math/remquo_decl.inc
M libclc/clc/include/clc/math/unary_decl_with_int_ptr.inc
M libclc/clc/include/clc/math/unary_decl_with_ptr.inc
M libclc/clc/include/clc/math/unary_def_with_int_ptr.inc
M libclc/clc/include/clc/math/unary_def_with_ptr.inc
M libclc/clc/lib/generic/math/clc_fract.inc
M libclc/clc/lib/generic/math/clc_frexp.cl
M libclc/clc/lib/generic/math/clc_modf.inc
M libclc/clc/lib/generic/math/clc_remquo.cl
M libclc/clc/lib/generic/math/clc_sincos.inc
M libclc/opencl/include/clc/opencl/math/remquo.h
M libclc/opencl/include/clc/opencl/shared/vload.h
M libclc/opencl/include/clc/opencl/shared/vstore.h
M libclc/opencl/lib/clspv/shared/vstore_half.inc
M libclc/opencl/lib/generic/math/remquo.inc
M libclc/opencl/lib/generic/shared/vload.cl
M libclc/opencl/lib/generic/shared/vload_half.inc
M libclc/opencl/lib/generic/shared/vstore.cl
M libclc/opencl/lib/generic/shared/vstore_half.inc
Log Message:
-----------
[libclc] Support the generic address space (#137183)
This commit provides definitions of builtins with the generic address
space.
One concept to consider is the difference between supporting the generic
address space from the user's perspective and the requirement for libclc
as a compiler implementation detail to define separate generic address
space builtins. In practice a target (like NVPTX) might notionally
support the generic address space, but it's mapped to the same LLVM
target address space as another address space (often the private one).
In such cases libclc must be careful not to define both private and
generic overloads of the same builtin. We track these two concepts
separately, and make the assumption that if the generic address space
does clash with another, it's with the private one. We track the
concepts separately because there are some builtins such as atomics that
are defined for the generic address space but not the private address
space.
Commit: 57763b7c6481daed40f412d4b302cc7479a9839e
https://github.com/llvm/llvm-project/commit/57763b7c6481daed40f412d4b302cc7479a9839e
Author: Thurston Dang <thurston at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
Log Message:
-----------
Fix-forward excess ';' from 9459c8309c6768cf6aa7956885b2540e16582a93 (#134632)
clang/lib/CodeGen/CGDebugInfo.cpp:153:2: error: extra ';' outside of a function is incompatible with C++98 [-Werror,-Wc++98-compat-extra-semi]
153 | };
| ^
1 error generated.
Commit: d219a71849f9209b01ee9e71af83747ad44b2a18
https://github.com/llvm/llvm-project/commit/d219a71849f9209b01ee9e71af83747ad44b2a18
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/test/API/tools/lldb-dap/evaluate/TestDAP_evaluate.py
Log Message:
-----------
[lldb][lldb-dap][tests] Make sure evaluate test exists with no errors. (#140788)
Commit: e12cbd8339b89563059c2bb2a312579b652560d0
https://github.com/llvm/llvm-project/commit/e12cbd8339b89563059c2bb2a312579b652560d0
Author: Vigneshwar Jayakumar <vigneshwar.jayakumar at amd.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.16x16x128.f8f6f4.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.32x32x64.f8f6f4.ll
M llvm/test/MC/AMDGPU/mai-gfx950.s
M llvm/test/MC/Disassembler/AMDGPU/gfx950_mai.txt
Log Message:
-----------
[AMDGPU] Fix scale opsel flags for scaled MFMA operations (#140183)
Fix for src scale opsel flags encoding and ASM parsing for gfx950 scaled MFMA.
Commit: f65b35d89f21b19935da6e1e2e062780b88e64df
https://github.com/llvm/llvm-project/commit/f65b35d89f21b19935da6e1e2e062780b88e64df
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/Sema/SemaOpenACC.cpp
A clang/test/SemaOpenACC/gh140920.cpp
Log Message:
-----------
[OpenACC] Stop trying to analyze invalid Var-Decls.
The code to analyze VarDecls for the purpose of ensuring a magic-static
isn't present in a 'routine' was getting confused/crashed because we
create something that looks like a magic-static during error-recovery,
but it is still an invalid decl.
This patch causes us to just 'give up' in the case where the vardecl is
already invalid.
Fixes: #140920
Commit: 68995b18da29eb92b2c46e2fe9bbdf692d254b81
https://github.com/llvm/llvm-project/commit/68995b18da29eb92b2c46e2fe9bbdf692d254b81
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
A llvm/test/CodeGen/RISCV/rvv/zvqdotq-sdnode.ll
Log Message:
-----------
[RISCV] Support scalable vectors for the zvqdotq lowering paths (#140922)
This was an oversight in the original patch series. Without this change,
the newly added tests fail assertions.
Commit: 0954c9d487e7cb30673df9f0ac125f71320d2936
https://github.com/llvm/llvm-project/commit/0954c9d487e7cb30673df9f0ac125f71320d2936
Author: Devon Loehr <DKLoehr at users.noreply.github.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/AST/DeclFriend.h
M clang/include/clang/AST/DeclOpenMP.h
M clang/include/clang/Driver/Action.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ByteCode/InterpFrame.h
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/Driver/ToolChains/Hexagon.h
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/include/llvm/Analysis/InstSimplifyFolder.h
M llvm/include/llvm/Analysis/TargetFolder.h
M llvm/include/llvm/IR/ConstantFolder.h
M llvm/include/llvm/IR/NoFolder.h
M llvm/include/llvm/Support/Compiler.h
M llvm/include/llvm/Transforms/Scalar/GVNExpression.h
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
Log Message:
-----------
Add macro to suppress -Wunnecessary-virtual-specifier (#139614)
Followup to #138741.
This adds the requested macro to silence
`-Wunnecessary-virtual-specifier` when declaring virtual anchor
functions in `final` classes, per [LLVM
policy](https://llvm.org/docs/CodingStandards.html#provide-a-virtual-method-anchor-for-classes-in-headers).
It also cleans up any remaining instances of the warning, allowing us to
stop disabling it when we build LLVM.
Commit: 4042a002cea6dc6f12e32953c820f6eae1ac1817
https://github.com/llvm/llvm-project/commit/4042a002cea6dc6f12e32953c820f6eae1ac1817
Author: Zhen Wang <37195552+wangzpgi at users.noreply.github.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Lower/CUDA/cuda-shared.cuf
A flang/test/Semantics/cuf21.cuf
Log Message:
-----------
[flang] [cuda] implicitly set DEVICE attribute to scalars in device routines (#140834)
Scalars inside device routines also need to implicitly set the DEVICE
attribute, except for function results.
Commit: 04d10f1d13f6e4cd72e13770d6e9e386218241d8
https://github.com/llvm/llvm-project/commit/04d10f1d13f6e4cd72e13770d6e9e386218241d8
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/zvqdotq-sdnode.ll
Log Message:
-----------
[RISCV] Expand zvqdotq partial.reduce test variants
Make sure to cover all the scalable types which are legal, plus
splitting. Make sure to cover all instructions. Not duplicating
vx testing at this time.
Commit: 793bb6b257fa4d9f4af169a4366cab3da01f2e1f
https://github.com/llvm/llvm-project/commit/793bb6b257fa4d9f4af169a4366cab3da01f2e1f
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/CMakeLists.txt
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
R llvm/lib/Transforms/Vectorize/VPlanPredicator.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
Log Message:
-----------
Revert "[VPlan] Move predication to VPlanTransform (NFC). (#128420)"
This reverts commit b263c08e1a0b54a871915930aa9a1a6ba205b099.
Looks like this triggers a crash in one of the Fortran tests. Reverting
while I investigate
https://lab.llvm.org/buildbot/#/builders/41/builds/6825
Commit: cbe9af1a9c82f6975c25ac2a414f3f60e1025954
https://github.com/llvm/llvm-project/commit/cbe9af1a9c82f6975c25ac2a414f3f60e1025954
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zvqdotq.ll
M llvm/test/CodeGen/RISCV/rvv/zvqdotq-sdnode.ll
Log Message:
-----------
[RISCV] Remove nsw/nuw from zvqdotq tests [nfc]
As noted in review comment https://github.com/llvm/llvm-project/pull/140922#discussion_r2100838209, this aren't required
Commit: e4e7a7e64e75e0f39e94e9bac77d6def34ed142b
https://github.com/llvm/llvm-project/commit/e4e7a7e64e75e0f39e94e9bac77d6def34ed142b
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/AST/DeclFriend.h
M clang/include/clang/AST/DeclOpenMP.h
M clang/include/clang/Driver/Action.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ByteCode/InterpFrame.h
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/Driver/ToolChains/Hexagon.h
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/include/llvm/Analysis/InstSimplifyFolder.h
M llvm/include/llvm/Analysis/TargetFolder.h
M llvm/include/llvm/IR/ConstantFolder.h
M llvm/include/llvm/IR/NoFolder.h
M llvm/include/llvm/Support/Compiler.h
M llvm/include/llvm/Transforms/Scalar/GVNExpression.h
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
Log Message:
-----------
Revert "Add macro to suppress -Wunnecessary-virtual-specifier (#139614)"
This reverts commit 0954c9d487e7cb30673df9f0ac125f71320d2936.
It breaks the build when built with gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04).
Commit: 3ce74c3b4026473a0e3855598bf6dc98aac081a9
https://github.com/llvm/llvm-project/commit/3ce74c3b4026473a0e3855598bf6dc98aac081a9
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
A clang/test/CIR/CodeGen/string-literals.c
Log Message:
-----------
[CIR] Upstream support for string literals (#140796)
This adds the minimal support needed to handle string literals.
Commit: 76c9bfefa416f66a3fe79164874e13a612e00415
https://github.com/llvm/llvm-project/commit/76c9bfefa416f66a3fe79164874e13a612e00415
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.cpp
M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp
M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.td
M llvm/test/CodeGen/MIR/NVPTX/expected-floating-point-literal.mir
M llvm/test/CodeGen/MIR/NVPTX/floating-point-immediate-operands.mir
M llvm/test/CodeGen/MIR/NVPTX/floating-point-invalid-type-error.mir
M llvm/test/CodeGen/NVPTX/LoadStoreVectorizer.ll
M llvm/test/CodeGen/NVPTX/access-non-generic.ll
M llvm/test/CodeGen/NVPTX/aggregate-return.ll
M llvm/test/CodeGen/NVPTX/and-or-setcc.ll
M llvm/test/CodeGen/NVPTX/arithmetic-fp-sm20.ll
M llvm/test/CodeGen/NVPTX/atomics-with-scope.ll
M llvm/test/CodeGen/NVPTX/atomics.ll
M llvm/test/CodeGen/NVPTX/bf16-instructions.ll
M llvm/test/CodeGen/NVPTX/bf16x2-instructions-approx.ll
M llvm/test/CodeGen/NVPTX/bf16x2-instructions.ll
M llvm/test/CodeGen/NVPTX/bug22322.ll
M llvm/test/CodeGen/NVPTX/call-with-alloca-buffer.ll
M llvm/test/CodeGen/NVPTX/convert-fp-i8.ll
M llvm/test/CodeGen/NVPTX/convert-fp.ll
M llvm/test/CodeGen/NVPTX/convert-sm100.ll
M llvm/test/CodeGen/NVPTX/convert-sm100a.ll
M llvm/test/CodeGen/NVPTX/convert-sm80.ll
M llvm/test/CodeGen/NVPTX/convert-sm90.ll
M llvm/test/CodeGen/NVPTX/copysign.ll
M llvm/test/CodeGen/NVPTX/distributed-shared-cluster.ll
M llvm/test/CodeGen/NVPTX/div.ll
M llvm/test/CodeGen/NVPTX/dynamic_stackalloc.ll
M llvm/test/CodeGen/NVPTX/f16-abs.ll
M llvm/test/CodeGen/NVPTX/f16-instructions.ll
M llvm/test/CodeGen/NVPTX/f16x2-instructions.ll
M llvm/test/CodeGen/NVPTX/f32-ex2.ll
M llvm/test/CodeGen/NVPTX/f32-lg2.ll
M llvm/test/CodeGen/NVPTX/fabs-intrinsics.ll
M llvm/test/CodeGen/NVPTX/fexp2.ll
M llvm/test/CodeGen/NVPTX/flog2.ll
M llvm/test/CodeGen/NVPTX/fma-assoc.ll
M llvm/test/CodeGen/NVPTX/fma-relu-contract.ll
M llvm/test/CodeGen/NVPTX/fma-relu-fma-intrinsic.ll
M llvm/test/CodeGen/NVPTX/fma-relu-instruction-flag.ll
M llvm/test/CodeGen/NVPTX/fma.ll
M llvm/test/CodeGen/NVPTX/fp-contract.ll
M llvm/test/CodeGen/NVPTX/fp-literals.ll
M llvm/test/CodeGen/NVPTX/frem.ll
M llvm/test/CodeGen/NVPTX/i1-int-to-fp.ll
M llvm/test/CodeGen/NVPTX/i8x4-instructions.ll
M llvm/test/CodeGen/NVPTX/inline-asm.ll
M llvm/test/CodeGen/NVPTX/intrinsics.ll
M llvm/test/CodeGen/NVPTX/ld-generic.ll
M llvm/test/CodeGen/NVPTX/ld-st-addrrspace.py
M llvm/test/CodeGen/NVPTX/ldg-invariant-256.ll
M llvm/test/CodeGen/NVPTX/ldg-invariant.ll
M llvm/test/CodeGen/NVPTX/ldparam-v4.ll
M llvm/test/CodeGen/NVPTX/ldu-ldg.ll
M llvm/test/CodeGen/NVPTX/load-store-256-addressing-invariant.ll
M llvm/test/CodeGen/NVPTX/load-store-256-addressing.ll
M llvm/test/CodeGen/NVPTX/load-store-scalars.ll
M llvm/test/CodeGen/NVPTX/load-store-sm-70.ll
M llvm/test/CodeGen/NVPTX/load-store-sm-90.ll
M llvm/test/CodeGen/NVPTX/load-store-vectors-256.ll
M llvm/test/CodeGen/NVPTX/load-store-vectors.ll
M llvm/test/CodeGen/NVPTX/math-intrins.ll
M llvm/test/CodeGen/NVPTX/misched_func_call.ll
M llvm/test/CodeGen/NVPTX/param-add.ll
M llvm/test/CodeGen/NVPTX/param-load-store.ll
M llvm/test/CodeGen/NVPTX/param-overalign.ll
M llvm/test/CodeGen/NVPTX/proxy-reg-erasure-ptx.ll
M llvm/test/CodeGen/NVPTX/rcp-opt.ll
M llvm/test/CodeGen/NVPTX/reduction-intrinsics.ll
M llvm/test/CodeGen/NVPTX/redux-sync-f32.ll
M llvm/test/CodeGen/NVPTX/reg-types.ll
M llvm/test/CodeGen/NVPTX/shfl-p.ll
M llvm/test/CodeGen/NVPTX/shfl-sync-p.ll
M llvm/test/CodeGen/NVPTX/shfl.ll
M llvm/test/CodeGen/NVPTX/st-addrspace.ll
M llvm/test/CodeGen/NVPTX/st-generic.ll
M llvm/test/CodeGen/NVPTX/st-param-imm.ll
M llvm/test/CodeGen/NVPTX/surf-read-cuda.ll
M llvm/test/CodeGen/NVPTX/surf-read.ll
M llvm/test/CodeGen/NVPTX/surf-tex.py
M llvm/test/CodeGen/NVPTX/tag-invariant-loads.ll
M llvm/test/CodeGen/NVPTX/tex-read-cuda.ll
M llvm/test/CodeGen/NVPTX/tex-read.ll
M llvm/test/CodeGen/NVPTX/unaligned-param-load-store.ll
M llvm/test/CodeGen/NVPTX/vaargs.ll
M llvm/test/CodeGen/NVPTX/variadics-backend.ll
M llvm/test/CodeGen/NVPTX/vec-param-load.ll
M llvm/test/CodeGen/NVPTX/vector-args.ll
M llvm/test/CodeGen/NVPTX/vector-loads.ll
M llvm/test/CodeGen/NVPTX/wmma.py
M llvm/test/DebugInfo/NVPTX/debug-addr-class.ll
M llvm/test/DebugInfo/NVPTX/debug-info.ll
M llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/split-gep-and-gvn.ll
M llvm/test/Transforms/StraightLineStrengthReduce/NVPTX/reassociate-geps-and-slsr.ll
Log Message:
-----------
[NVPTX] Remove Float register classes (#140487)
These classes are redundant, as the untyped "Int" classes can be used
for all float operations. This change is intended to be as minimal as
possible and leaves the many potential simplifications and refactors
this exposes as future work.
Commit: 77c8d214131e951e3d3a07b45a7436f54988d6f3
https://github.com/llvm/llvm-project/commit/77c8d214131e951e3d3a07b45a7436f54988d6f3
Author: David Green <david.green at arm.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-assertzext.mir
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-trunk.mir
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-zext.mir
Log Message:
-----------
[GlobalISel] Fix ZExt known bits for scalable vectors. (#140213)
It was using the full size of the vector as the SrcBitWidth. This patch
changes the code to split G_ASSERT_ZEXT away from the others (G_INTTOPTR
/ G_PTRTOINT / G_ZEXT / G_TRUNC) which are simpler, and make the code
match the SDAG equivalent.
Commit: e424787a95f2b88ff6f724fd92d87dd0f1cecddc
https://github.com/llvm/llvm-project/commit/e424787a95f2b88ff6f724fd92d87dd0f1cecddc
Author: Dave Lee <davelee.com at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M lldb/include/lldb/Symbol/CompilerType.h
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangUtil.cpp
M lldb/source/Plugins/ExpressionParser/Clang/NameSearchContext.cpp
M lldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp
M lldb/source/Plugins/Language/CPlusPlus/Coroutines.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/unittests/ValueObject/DynamicValueObjectLocalBuffer.cpp
Log Message:
-----------
[lldb] Add templated CompilerType::GetTypeSystem (NFC) (#140424)
Add an overloaded `GetTypeSystem` to specify the expected type system subclass. Changes code from `GetTypeSystem().dyn_cast_or_null<TypeSystemClang>()` to `GetTypeSystem<TypeSystemClang>()`.
Commit: f1d03dedfbe87119cfcafb07e0e0f90ec291cb97
https://github.com/llvm/llvm-project/commit/f1d03dedfbe87119cfcafb07e0e0f90ec291cb97
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineINSERT_SUBVECTOR - use concatSubVectors instead of direct fold to X86ISD::SUBV_BROADCAST_LOAD (#140919)
Use common helper and try to reduce the number of places we're
generating load node directly.
Commit: ee4002da2b8bea2405f03400fc39fa9c9d812be9
https://github.com/llvm/llvm-project/commit/ee4002da2b8bea2405f03400fc39fa9c9d812be9
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Log Message:
-----------
[TargetLowering] Use getExtractSubvector/getExtractVectorElt. NFC
Commit: e972d8cbbf3a05d9dc96ad441f18478dbda617b8
https://github.com/llvm/llvm-project/commit/e972d8cbbf3a05d9dc96ad441f18478dbda617b8
Author: Ely Ronnen <elyronnen at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
A lldb/test/API/tools/lldb-dap/breakpoint-assembly/Makefile
A lldb/test/API/tools/lldb-dap/breakpoint-assembly/TestDAP_breakpointAssembly.py
A lldb/test/API/tools/lldb-dap/breakpoint-assembly/main.c
M lldb/test/API/tools/lldb-dap/breakpoint-events/TestDAP_breakpointEvents.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py
M lldb/test/API/tools/lldb-dap/instruction-breakpoint/TestDAP_instruction_breakpoint.py
M lldb/tools/lldb-dap/Breakpoint.cpp
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/Handler/BreakpointLocationsHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.h
M lldb/tools/lldb-dap/Handler/SetBreakpointsRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/SourceRequestHandler.cpp
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/JSONUtils.h
M lldb/tools/lldb-dap/LLDBUtils.cpp
M lldb/tools/lldb-dap/LLDBUtils.h
M lldb/tools/lldb-dap/SourceBreakpoint.cpp
M lldb/tools/lldb-dap/SourceBreakpoint.h
M lldb/tools/lldb-dap/package-lock.json
M lldb/tools/lldb-dap/package.json
Log Message:
-----------
[lldb-dap] assembly breakpoints (#139969)
* Support assembly source breakpoints
* Change `sourceReference` to be the symbol load address for simplicity
and consistency across threads/frames
[Screencast From 2025-05-17
23-57-30.webm](https://github.com/user-attachments/assets/2e7c181d-42c1-4121-8f13-b180c19d0e33)
Commit: e98b095b979be865ff0783cd3fb5240bf3924cac
https://github.com/llvm/llvm-project/commit/e98b095b979be865ff0783cd3fb5240bf3924cac
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
Log Message:
-----------
[gn build] Port 793bb6b257fa
Commit: cd8094ebc1bbdffc893d44e75d7421fb974cee82
https://github.com/llvm/llvm-project/commit/cd8094ebc1bbdffc893d44e75d7421fb974cee82
Author: Jacques Pienaar <jpienaar at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
M mlir/test/Dialect/LLVMIR/add-debuginfo-func-scope.mlir
Log Message:
-----------
[mlir] Translate nested debug information (#140915)
This backports changes from Triton with the exception that for fused
locations, use the first one with file info rather than just first.
---------
Co-authored-by: Sergei Lebedev <slebedev at google.com>
Co-authored-by: Keren Zhou <kerenzhou at openai.com>
Commit: 5ba57a81f213f17547be11e199888d8d156ececc
https://github.com/llvm/llvm-project/commit/5ba57a81f213f17547be11e199888d8d156ececc
Author: Sarah Spall <sarahspall at microsoft.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/SemaHLSL/BuiltIns/AddUint64-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/asdouble-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/clamp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/cross-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/degrees-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/frac-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors2.hlsl
M clang/test/SemaHLSL/BuiltIns/isinf-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/logical-operator-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/mad-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/normalize-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/radians-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/rcp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/reversebits-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/rsqrt-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/step-errors.hlsl
Log Message:
-----------
[HLSL] Update Sema Checking Diagnostics for builtins (#138429)
Update how Sema Checking is done for HLSL builtins to allow for better
error messages, mainly using 'err_builtin_invalid_arg_type'.
Try to follow the formula outlined in issue #134721
Closes #134721
Commit: 89d9a83b704a8f6b5bd64dac93095a9228c601d5
https://github.com/llvm/llvm-project/commit/89d9a83b704a8f6b5bd64dac93095a9228c601d5
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/test/Lower/CUDA/cuda-device-proc.cuf
Log Message:
-----------
[flang][cuda] Use NVVM op for barrier0 intrinsic (#140947)
The simple form of `Barrier0Op` is available in the NVVM dialect. It is
needed to use it instead of the string version since
https://github.com/llvm/llvm-project/pull/140615
Commit: a76bf4da53182baace54fd69f9d38fc10e6b8e85
https://github.com/llvm/llvm-project/commit/a76bf4da53182baace54fd69f9d38fc10e6b8e85
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/include/llvm/ADT/IntervalMap.h
M llvm/include/llvm/ADT/STLExtras.h
M llvm/include/llvm/ADT/SmallBitVector.h
M llvm/include/llvm/ADT/Twine.h
M llvm/include/llvm/Support/Error.h
M llvm/include/llvm/Support/GenericLoopInfoImpl.h
M llvm/include/llvm/Support/GraphWriter.h
M llvm/include/llvm/Support/YAMLParser.h
M llvm/lib/Support/APFixedPoint.cpp
M llvm/lib/Support/APFloat.cpp
M llvm/lib/Support/APInt.cpp
M llvm/lib/Support/CommandLine.cpp
M llvm/lib/Support/Mustache.cpp
M llvm/lib/Support/PrettyStackTrace.cpp
M llvm/lib/Support/ScaledNumber.cpp
M llvm/lib/Support/Unix/Path.inc
M llvm/lib/Support/Windows/Path.inc
M llvm/lib/Support/YAMLParser.cpp
M llvm/lib/Support/regcomp.c
Log Message:
-----------
[NFC][ADT/Support] Add {} for else when if body has {} (#140758)
Commit: 08279d3924a86371e96527f68ff7496e51581f9c
https://github.com/llvm/llvm-project/commit/08279d3924a86371e96527f68ff7496e51581f9c
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
Log Message:
-----------
[CIR] Improve NYI message for emitCompoundStmtWithoutScope (#140945)
This improves the error emitting for unhandled compound statements
without scope by reporting the statement class that wasn't handled.
Commit: 6212c199b1b271555ebf365206c8b4d96b2b7a26
https://github.com/llvm/llvm-project/commit/6212c199b1b271555ebf365206c8b4d96b2b7a26
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-load-fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-load-int.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-store-fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-store-int.ll
Log Message:
-----------
[RISCV] Add tests for widening fixed vector masked loads/stores. NFC (#140949)
Commit: 6c813e8a3c0f08b00a52f37b5468762f17de2258
https://github.com/llvm/llvm-project/commit/6c813e8a3c0f08b00a52f37b5468762f17de2258
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/test/Conversion/AMDGPUToROCDL/8-bit-floats-ocp.mlir
M mlir/test/Conversion/AMDGPUToROCDL/8-bit-floats.mlir
M mlir/test/Dialect/LLVMIR/rocdl.mlir
M mlir/test/Target/LLVMIR/rocdl.mlir
Log Message:
-----------
[mlir][ROCDL] Add fp4 and fp6 conversion intrinsics, fix fp8 immargs (#140801)
This PR adds support for the scaled conversion intrinsics for fp4 and
fp6 types so that they can be targetted by a future amdgpu dialect op or
used directly.
Additionally, this patch refactors the copy-paste-heavy fp8 versions of
these scaled conversion intrinsics with tablegen `foreach` loops, and
fixes the fact that certain immargs weren't being stored as attributes.
Note that some of the MLIR-level tests for those scaled fp8 intrinsics
had incorrect return types, which have been fixed.
(Note that while the operations have a known return type, the IR format
still prints that type for clarity).
Commit: fd8bc37b45867cb345982d05a46345e514813ccb
https://github.com/llvm/llvm-project/commit/fd8bc37b45867cb345982d05a46345e514813ccb
Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
Log Message:
-----------
[mlir][Vector][NFC] Run `extractInsertFoldConstantOp` earlier in the folder (#140814)
This PR moves `extractInsertFoldConstantOp` earlier in the folder lists
of `vector.extract` and `vector.insert`. Many folders require having
non-dynamic indices so `extractInsertFoldConstantOp` is a requirement
for them to trigger.
Commit: 99779b42d30fe441452215454f9ce7b70567444b
https://github.com/llvm/llvm-project/commit/99779b42d30fe441452215454f9ce7b70567444b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/include/llvm/Transforms/Utils/SCCPSolver.h
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
Log Message:
-----------
[SCCPSolver] Mark several functions const (NFC) (#140926)
Commit: bf15aadcbc6534177b538e06f8e7962e9a9592d2
https://github.com/llvm/llvm-project/commit/bf15aadcbc6534177b538e06f8e7962e9a9592d2
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/if-pred-stores.ll
Log Message:
-----------
[VPlan] Don't try to narrow predicated VPReplicateRecipe.
We cannot convert predicated recipes to uniform ones at the moment.
This fixes a crash reported for https://github.com/llvm/llvm-project/pull/139150.
Commit: 4f869e0f5c8ea29708f2f3cb8408e3827f09c904
https://github.com/llvm/llvm-project/commit/4f869e0f5c8ea29708f2f3cb8408e3827f09c904
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
A llvm/test/Transforms/LoopUnroll/peel-last-iteration-expansion-cost.ll
Log Message:
-----------
[LoopPeel] Add test for peeling last iteration with non-trivial BTC.
Additional test to https://github.com/llvm/llvm-project/pull/140792 with
different SCEV expansion costs.
Commit: b499f7f2b246c284f8deb428f68d0b488b80c630
https://github.com/llvm/llvm-project/commit/b499f7f2b246c284f8deb428f68d0b488b80c630
Author: Finn Plummer <finn.c.plum at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/include/clang/Parse/ParseHLSLRootSignature.h
M clang/lib/Parse/ParseHLSLRootSignature.cpp
M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
M llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h
Log Message:
-----------
[HLSL][RootSignature] Add parsing for empty RootDescriptors (#140147)
- define the RootDescriptor in-memory struct containing its type
- add test harness for testing
First part of https://github.com/llvm/llvm-project/issues/126577
Commit: d00d74bb2564103ae3cb5ac6b6ffecf7e1cc2238
https://github.com/llvm/llvm-project/commit/d00d74bb2564103ae3cb5ac6b6ffecf7e1cc2238
Author: Tim Gymnich <tim at gymni.ch>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
A llvm/include/llvm/ADT/GenericFloatingPointPredicateUtils.h
A llvm/include/llvm/Analysis/FloatingPointPredicateUtils.h
M llvm/include/llvm/Analysis/ValueTracking.h
A llvm/include/llvm/CodeGen/MachineFloatingPointPredicateUtils.h
M llvm/lib/Analysis/CMakeLists.txt
A llvm/lib/Analysis/FloatingPointPredicateUtils.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/CodeGen/CMakeLists.txt
M llvm/lib/CodeGen/CodeGenPrepare.cpp
A llvm/lib/CodeGen/MachineFloatingPointPredicateUtils.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/unittests/Analysis/ValueTrackingTest.cpp
Log Message:
-----------
[llvm] add GenericFloatingPointPredicateUtils (#140254)
add `GenericFloatingPointPredicateUtils` in order to generalize
effects of floating point comparisons on `KnownFPClass` for both IR and
MIR.
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 7f62800fb89a7389fea386369496484876df0d44
https://github.com/llvm/llvm-project/commit/7f62800fb89a7389fea386369496484876df0d44
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
A llvm/test/CodeGen/AMDGPU/inlineasm-16-fake16.ll
A llvm/test/CodeGen/AMDGPU/inlineasm-16-true16.ll
Log Message:
-----------
[AMDGPU][True16][CodeGen] select vgpr16 for asm inline 16bit vreg (#140946)
select vgpr16 for asm inline 16bit vreg in true16 mode
Commit: 77549b41f18dc9f91b6d2d3bab6f150e4f021042
https://github.com/llvm/llvm-project/commit/77549b41f18dc9f91b6d2d3bab6f150e4f021042
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
Log Message:
-----------
[gn build] Port d00d74bb2564
Commit: c21416d1f9363a53dc09596bfec033cc5b3a02a8
https://github.com/llvm/llvm-project/commit/c21416d1f9363a53dc09596bfec033cc5b3a02a8
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
A llvm/test/Transforms/LoopVectorize/RISCV/partial-reduce-dot-product.ll
Log Message:
-----------
[RISCV][TTI] Add test coverage for getPartialReductionCost [nfc]
Adding testing in advance of a change to cost the zvqdotq instructions
such that we emit them from LV.
Commit: b4d2e502e06fb96a124ef4c99668531a4c6abd3d
https://github.com/llvm/llvm-project/commit/b4d2e502e06fb96a124ef4c99668531a4c6abd3d
Author: bd1976bris <bd1976llvm at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M lld/test/COFF/lto-cache-errors.ll
M lld/test/ELF/lto/ltopasses-custom.ll
M llvm/lib/LTO/LTOBackend.cpp
M llvm/test/tools/llvm-lto2/X86/pipeline.ll
Log Message:
-----------
[LLVM] Use `reportFatalUsageError` for LTO usage errors (#140955)
Usage errors in `LTOBackend.cpp` were previously, misleadingly, reported
as internal crashes.
This PR updates `LTOBackend.cpp` to use `reportFatalUsageError` for
reporting usage-related issues.
LLVM Issue: https://github.com/llvm/llvm-project/issues/140953
Internal Tracker: TOOLCHAIN-17744
Commit: 60ad6e3fa45c03dc1fc7521ead7583a9a7d9fb61
https://github.com/llvm/llvm-project/commit/60ad6e3fa45c03dc1fc7521ead7583a9a7d9fb61
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-load-fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-load-int.ll
A llvm/test/CodeGen/RISCV/rvv/masked-load-int-e64.ll
M llvm/test/CodeGen/RISCV/rvv/masked-load-int.ll
Log Message:
-----------
[SelectionDAG][RISCV] Use VP_LOAD to widen MLOAD in type legalization when possible. (#140595)
Padding the mask using 0 elements doesn't work for scalable vectors. Use
VP_LOAD and change the VL instead.
This fixes crash for Zve32x. Test file was split since i64 isn't a valid
element type for Zve32x.
Fixes #140198.
Commit: c47a5fbb229bbdee30aeb4e5761e8c083f2fe680
https://github.com/llvm/llvm-project/commit/c47a5fbb229bbdee30aeb4e5761e8c083f2fe680
Author: Kewen12 <Kewen.Meng at amd.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
R llvm/include/llvm/ADT/GenericFloatingPointPredicateUtils.h
R llvm/include/llvm/Analysis/FloatingPointPredicateUtils.h
M llvm/include/llvm/Analysis/ValueTracking.h
R llvm/include/llvm/CodeGen/MachineFloatingPointPredicateUtils.h
M llvm/lib/Analysis/CMakeLists.txt
R llvm/lib/Analysis/FloatingPointPredicateUtils.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/CodeGen/CMakeLists.txt
M llvm/lib/CodeGen/CodeGenPrepare.cpp
R llvm/lib/CodeGen/MachineFloatingPointPredicateUtils.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/unittests/Analysis/ValueTrackingTest.cpp
Log Message:
-----------
Revert "[llvm] add GenericFloatingPointPredicateUtils (#140254)" (#140968)
This reverts commit d00d74bb2564103ae3cb5ac6b6ffecf7e1cc2238.
The PR breaks our buildbots and blocks downstream merge.
Commit: 12c62ebcb2008086ad597fffa0f4daf6fe79fe5e
https://github.com/llvm/llvm-project/commit/12c62ebcb2008086ad597fffa0f4daf6fe79fe5e
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
Log Message:
-----------
[gn build] Port c47a5fbb229b
Commit: d6f394e141bd8e218356fefc4cb1beabf5c7bc6d
https://github.com/llvm/llvm-project/commit/d6f394e141bd8e218356fefc4cb1beabf5c7bc6d
Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Conversion/GPUCommon/lower-vector.mlir
Log Message:
-----------
[mlir][Vector] Move `vector.mask` canonicalization to folder (#140324)
This MR moves the canonicalization that elides empty `vector.mask` ops
to folders.
Commit: fbb11b4c4e97c05623cfa624fe4c423587685cf3
https://github.com/llvm/llvm-project/commit/fbb11b4c4e97c05623cfa624fe4c423587685cf3
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M flang/lib/Lower/OpenMP/Utils.cpp
Log Message:
-----------
[OpenMP][Flang] Fix OOB access for derived type mapping (#140948)
Commit: cea82573bb39230f6ddf47f8ee5a83f85c255025
https://github.com/llvm/llvm-project/commit/cea82573bb39230f6ddf47f8ee5a83f85c255025
Author: Jason Molenda <jmolenda at apple.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M lldb/test/API/functionalities/watchpoint/consecutive-watchpoints/TestConsecutiveWatchpoints.py
Log Message:
-----------
[lldb] Skip TestConsecutiveWatchpoints.py if out of tree debugserver
The GreenDragon CI bots are currently passing because the installed
Xcode is a bit old, and doesn't have the watchpoint handling
bug that was fixed April with this test being added.
But on other CI running newer Xcode debugservers, this test will
fail. Skip this test if we're using an out of tree debugserver.
Commit: 066221f98e26aaf4d1096636695a5c9a9800c798
https://github.com/llvm/llvm-project/commit/066221f98e26aaf4d1096636695a5c9a9800c798
Author: Snehasish Kumar <snehasishk at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/include/llvm/Analysis/MemoryProfileInfo.h
M llvm/include/llvm/IR/ModuleSummaryIndex.h
R llvm/include/llvm/ProfileData/MemProfCommon.h
M llvm/lib/Transforms/Instrumentation/MemProfiler.cpp
Log Message:
-----------
Revert #140650 and #140505 (#140973)
This reverts commit 90daed32a82ad2695d27db285ac36f579f2b270e and 4cfbe55781cb8fb95568c9a8538912f68d2ff681.
These changes exposed cyclic dependencies when LLVM is configured with
modules `-DLLVM_ENABLE_MODULES=ON`.
Commit: 6ff7a3ce815c5c2f242b240891c331a522a40123
https://github.com/llvm/llvm-project/commit/6ff7a3ce815c5c2f242b240891c331a522a40123
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
Log Message:
-----------
[RISCV] Correct operand names for vmv.s.x and vfmv.s.f pseudos. NFC (#140970)
Commit: 1b347223023ddbe6c52dc1d48ec90a52407c4ca0
https://github.com/llvm/llvm-project/commit/1b347223023ddbe6c52dc1d48ec90a52407c4ca0
Author: Lucas Ramirez <11032120+lucas-rami at users.noreply.github.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
M llvm/test/CodeGen/AMDGPU/attr-amdgpu-waves-per-eu.ll
Log Message:
-----------
[AMDGPU] Fix computation of waves/EU maximum (#140921)
This fixes an issue in the waves/EU range calculation wherein, if the
`amdgpu-waves-per-eu` attribute exists and is valid, the entire
attribute may be spuriously and completely ignored if workgroup sizes
and LDS usage restrict the maximum achievable occupancy below the
subtarget maximum. In such cases, we should still honor the requested
minimum number of waves/EU, even if the requested maximum is higher than
the actually achievable maximum (but still within subtarget
specification).
As such, the added unit test `empty_at_least_2_lds_limited`'s waves/EU
range should be [2,4] after this patch, when it is currently [1,4] (i.e,
as if `amdgpu-waves-per-eu` was not specified at all).
Before e377dc4 the default maximum waves/EU was always set to the
subtarget maximum, trivially avoiding the issue.
Commit: 0a42db682aa01a66eb99d08063fbc6e6124792f7
https://github.com/llvm/llvm-project/commit/0a42db682aa01a66eb99d08063fbc6e6124792f7
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
Log Message:
-----------
[SelectionDAG] Simplify creation of getStoreVP in WidenVecOp_STORE. NFC
We can use the offset from the original store instead of creating
a new undef offset.
We didn't check if the offset was undef already so we really shouldn't
drop it if it isn't.
Commit: 569b6f6dade6a1a1b758d982bcd9d91abafb787f
https://github.com/llvm/llvm-project/commit/569b6f6dade6a1a1b758d982bcd9d91abafb787f
Author: Jim Lin <jim at andestech.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
A clang/test/Driver/print-enabled-extensions/riscv-andes-a25.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-ax25.c
M clang/test/Driver/riscv-cpus.c
M clang/test/Misc/target-invalid-cpu-note/riscv.c
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/RISCVProcessors.td
Log Message:
-----------
[RISCV] Add Andes A25/AX25 processor definition (#140681)
Andes A25/AX25 are 32/64bit, 5-stage pipeline, linux-capable CPUs that
implement the RV[32|64]IMAFDC_Zba_Zbb_Zbc_Zbs ISA extensions. They are
developed by Andes Technology https://www.andestech.com, a RISC-V IP
provider.
The overviews for A25/AX25:
https://www.andestech.com/en/products-solutions/andescore-processors/riscv-a25/
https://www.andestech.com/en/products-solutions/andescore-processors/riscv-ax25/
Scheduling model will be implemented in a later PR.
Commit: f0ddadf12cc44bb5baa161bef047e1d8e283c839
https://github.com/llvm/llvm-project/commit/f0ddadf12cc44bb5baa161bef047e1d8e283c839
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/test/CodeGenCXX/cxx1z-inline-variables.cpp
M clang/test/SemaTemplate/cxx17-inline-variables.cpp
Log Message:
-----------
Revert "[Clang] Fix missed initializer instantiation bug for variable templates" (#140930)
Reverts llvm/llvm-project#138122
The patch causes a regression and prevents compiling valid C++ code.
The code was accepted by earlier versions of clang and GCC.
See https://github.com/llvm/llvm-project/issues/140773 for details.
Commit: 4fd48ac9ae272db07a48a08f99f2101dce2f1eb0
https://github.com/llvm/llvm-project/commit/4fd48ac9ae272db07a48a08f99f2101dce2f1eb0
Author: Pat Doyle <patdoyle at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M lldb/test/Shell/SymbolFile/dissassemble-entry-point.s
Log Message:
-----------
[test] Fix dissassemble-entry-point.s for #140187 (#140978)
similar to #140570
getting this error:
exit status 1
ld.lld: error: section '.text' address (0x8074) is smaller than image
base (0x10000); specify --image-base
Commit: 94fdeb76864c5c46ee5503ebf34d5778f4c948b8
https://github.com/llvm/llvm-project/commit/94fdeb76864c5c46ee5503ebf34d5778f4c948b8
Author: Matt <msta at google.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/LangOptions.def
Log Message:
-----------
[clang] Mark some language options as benign. (#131569)
I'm fairly certain that the options in this CL are benign, as I don't
believe they affect the AST.
* RTTI - shouldn't affect the AST, should only affect codegen
* Trivial var init - also should only affect codegen
* Stack protector - also codegen
* Exceptions - Since exceptions do allow new things in the AST, but I'm
pretty sure that they can differ in parent and child safely, I marked it
as compatible instead.
I welcome any input from someone more familiar with this than me, as I
might be wrong.
Commit: d5d8d8ac76ba7de47a6a2f2d2581723575bd179c
https://github.com/llvm/llvm-project/commit/d5d8d8ac76ba7de47a6a2f2d2581723575bd179c
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/Format/FormatToken.h
M clang/lib/Format/TokenAnnotator.cpp
Log Message:
-----------
[clang-format][NFC] Minor efficiency cleanup (#140835)
Commit: f72a8ee489368dd20c1392b122b0736aa7c8ada1
https://github.com/llvm/llvm-project/commit/f72a8ee489368dd20c1392b122b0736aa7c8ada1
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
M llvm/test/CodeGen/RISCV/xqcibi.ll
Log Message:
-----------
[RISCV] Add Xqcibi Select_GPR_Using_CC_<Imm> Pseudos to isSelectPseudo (#140698)
Not adding them was leading to a crash when trying to expand these
pseudo instructions.
I've also fixed the register class types for the Xqcibi instructions in
these pseudo instructions which was incorrect and was exposed by the
machine verifier while running the test case added in this patch.
Fixes #140697
Commit: 287294d54d7a806e70b0061cf5ccc1fc2bd03eea
https://github.com/llvm/llvm-project/commit/287294d54d7a806e70b0061cf5ccc1fc2bd03eea
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
M llvm/test/Transforms/ConstraintElimination/constraint-overflow.ll
Log Message:
-----------
[ConstraintElim] Do not allow overflows in `Decomposition` (#140541)
Consider the following case:
```
define i1 @pr140481(i32 %x) {
%cond = icmp slt i32 %x, 0
call void @llvm.assume(i1 %cond)
%add = add nsw i32 %x, 5001000
%mul1 = mul nsw i32 %add, -5001000
%mul2 = mul nsw i32 %mul1, 5001000
%cmp2 = icmp sgt i32 %mul2, 0
ret i1 %cmp2
}
```
Before this patch, `decompose(%mul2)` returns `-25010001000000 * %x +
4052193514966861312`.
Therefore, `%cmp2` will be simplified into true because `%x s< 0 &&
-25010001000000 * %x + 4052193514966861312 s<= 0` is unsat.
It is incorrect since the offset `-25010001000000 * 5001000 ->
4052193514966861312` signed wraps.
This patch treats a decomposition as invalid if overflows occur when
computing coefficients.
Closes https://github.com/llvm/llvm-project/issues/140481.
Commit: 6d2a7b45466a25865898761ef0793fb847c48a0f
https://github.com/llvm/llvm-project/commit/6d2a7b45466a25865898761ef0793fb847c48a0f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/Analysis/ThreadSafety.cpp
M clang/lib/Format/MacroCallReconstructor.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/lib/Sema/SemaType.cpp
Log Message:
-----------
[clang] Use llvm::find_if (NFC) (#140983)
Commit: 7c8b39740be6cddb3f485e59c3e1694833b0887b
https://github.com/llvm/llvm-project/commit/7c8b39740be6cddb3f485e59c3e1694833b0887b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M bolt/lib/Core/BinaryFunction.cpp
Log Message:
-----------
[BOLT] Use llvm::is_contained (NFC) (#140984)
Commit: 7e4e33e90ee51c9dfee12ec83518b8e046f3d87d
https://github.com/llvm/llvm-project/commit/7e4e33e90ee51c9dfee12ec83518b8e046f3d87d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/IR/UnstructuredControlFlow.h
M mlir/lib/Dialect/Transform/Interfaces/TransformInterfaces.cpp
M mlir/test/lib/Analysis/TestTopologicalSort.cpp
Log Message:
-----------
[mlir] Use llvm::is_contained (NFC) (#140986)
Commit: 0641ca1cd21d86f081157a33cd5e1aa2b1bd2d04
https://github.com/llvm/llvm-project/commit/0641ca1cd21d86f081157a33cd5e1aa2b1bd2d04
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M bolt/lib/Core/BinaryContext.cpp
Log Message:
-----------
[BOLT] Avoid creating a temporary instance of std::string (NFC) (#140987)
lookupTarget takes StringRef and internally creates an instance of
std::string with the StringRef as part of constructing Triple, so we
don't need to create a temporary instance of std::string on our own.
Commit: 09c3d1432b15203762b6ccd8f2faec17b5c61c8c
https://github.com/llvm/llvm-project/commit/09c3d1432b15203762b6ccd8f2faec17b5c61c8c
Author: Luke Lau <luke at igalia.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/InterleavedAccessPass.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-deinterleave-load.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleave-store.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-load.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave-store.ll
M llvm/test/CodeGen/RISCV/rvv/vp-vector-interleaved-access.ll
M llvm/test/Transforms/InterleavedAccess/RISCV/interleaved-accesses.ll
Log Message:
-----------
[IA] Add support for [de]interleave{3,5,7} (#139373)
This adds support for lowering deinterleave and interleave intrinsics
for factors 3 5 and 7 into target specific memory intrinsics.
Notably this doesn't add support for handling higher factors constructed
from interleaving interleave intrinsics, e.g. factor 6 from interleave3
+ interleave2.
I initially tried this but it became very complex very quickly. For
example, because there's now multiple factors involved
interleaveLeafValues is no longer symmetric between interleaving and
deinterleaving. There's then also two ways of representing a factor 6
deinterleave: It can both be done as either 1 deinterleave3 and 3
deinterleave2s OR 1 deinterleave2 and 3 deinterleave3s.
I'm not sure the complexity of supporting arbitrary factors is warranted
given how we only need to support a small number of factors currently:
SVE only needs factors 2,3,4 whilst RVV only needs 2,3,4,5,6,7,8.
My preference would be to just add a interleave6 and deinterleave6
intrinsic to avoid all this ambiguity, but I'll defer this discussion to
a later patch.
Commit: bf241e8349f4103af198c2d37eb7d09062fdaae1
https://github.com/llvm/llvm-project/commit/bf241e8349f4103af198c2d37eb7d09062fdaae1
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Testing/CommandLineArgs.cpp
Log Message:
-----------
[clang] Avoid creating temporary instances of std::string (NFC) (#140988)
lookupTarget takes StringRef and internally creates an instance of
std::string with the StringRef as part of constructing Triple, so we
don't need to create temporary instances of std::string on our own.
Commit: 7ffa49111a2d26762ecc1d673610e4daf47cdc90
https://github.com/llvm/llvm-project/commit/7ffa49111a2d26762ecc1d673610e4daf47cdc90
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
M lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp
M lldb/source/Target/DynamicRegisterInfo.cpp
M lldb/source/Target/Statistics.cpp
M lldb/unittests/Utility/DataEncoderTest.cpp
Log Message:
-----------
[lldb] Remove unused local variables (NFC) (#140989)
Commit: 6074d83664df089f630d99f33b54beaff3f8ddb5
https://github.com/llvm/llvm-project/commit/6074d83664df089f630d99f33b54beaff3f8ddb5
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M mlir/lib/IR/AffineMap.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
Log Message:
-----------
[mlir] Remove unused local variables (NFC) (#140990)
Commit: 851da603045654f0adcf29927a2795a2a8f38c14
https://github.com/llvm/llvm-project/commit/851da603045654f0adcf29927a2795a2a8f38c14
Author: Kewen12 <Kewen.Meng at amd.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M lld/test/COFF/lto-cache-errors.ll
M lld/test/ELF/lto/ltopasses-custom.ll
M llvm/lib/LTO/LTOBackend.cpp
M llvm/test/tools/llvm-lto2/X86/pipeline.ll
Log Message:
-----------
Revert "[LLVM] Use `reportFatalUsageError` for LTO usage errors" (#141000)
The PR causes check-lld fail:
>TEST 'lld :: COFF/lto-cache-errors.ll'
Tested on local revert and pass the check.
Reverts llvm/llvm-project#140955
Commit: bcdce987c08bc90f30a44903a4f7d801099020f1
https://github.com/llvm/llvm-project/commit/bcdce987c08bc90f30a44903a4f7d801099020f1
Author: Mohammad Bashir <157402336+youngbash88 at users.noreply.github.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/test/AST/ast-dump-using-template.cpp
M clang/test/CodeGen/PowerPC/ppc-tmmintrin.c
M clang/test/CodeGen/X86/avx-builtins.c
M clang/test/CodeGen/paren-list-agg-init.cpp
M clang/test/CodeGenCXX/microsoft-abi-throw.cpp
M clang/test/CodeGenOpenCL/builtins-amdgcn-vi.cl
M clang/test/Driver/baremetal-sysroot.cpp
M clang/test/Driver/baremetal.cpp
M clang/test/ExtractAPI/objc_property.m
M clang/test/SemaOpenACC/set-construct-ast.cpp
M lld/test/ELF/aarch64-thunk-bti.s
M llvm/test/Analysis/CostModel/SystemZ/i128-cmp-ext-conv.ll
M llvm/test/CodeGen/AArch64/fpimm.ll
M llvm/test/CodeGen/ARM/shifter_operand.ll
M llvm/test/CodeGen/ARM/sxt_rot.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/branch-targets.ll
M llvm/test/Transforms/CallSiteSplitting/callsite-split.ll
M llvm/test/Transforms/Coroutines/coro-debug-coro-frame.ll
M llvm/test/Transforms/LoopVectorize/AArch64/nontemporal-load-store.ll
M llvm/test/tools/llvm-cov/Inputs/binary-formats.canonical.json
M polly/test/CodeGen/scalar-references-used-in-scop-compute.ll
Log Message:
-----------
Fix regression tests with bad FileCheck checks (#140373)
Fixes https://github.com/llvm/llvm-project/issues/140149
Commit: 8b2c0135644d0cb6c5835058ab0e4c5952abd2bf
https://github.com/llvm/llvm-project/commit/8b2c0135644d0cb6c5835058ab0e4c5952abd2bf
Author: Jim Lin <jim at andestech.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
A clang/test/Driver/print-enabled-extensions/riscv-andes-a45.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-ax45.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-n45.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-nx45.c
M clang/test/Driver/riscv-cpus.c
Log Message:
-----------
[RISCV] Use print-enabled-extensions to check the extensions of Andes n45/nx45/a45/ax45 cpus. NFC. (#140979)
Similarly to what #137725 did for the SiFive P870.
Commit: 53edb1a1601a13fc12666c2d7efdf0f3a684f2b4
https://github.com/llvm/llvm-project/commit/53edb1a1601a13fc12666c2d7efdf0f3a684f2b4
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/option-relax-relocation.ll
M llvm/test/MC/RISCV/fixups-binary-expression.s
M llvm/test/MC/RISCV/long-conditional-jump.s
M llvm/test/MC/RISCV/rv32-relaxation.s
M llvm/test/MC/RISCV/rv64-relaxation.s
Log Message:
-----------
[test] Improve linker-relaxable fixups tests
The behavior will change once the assembler improves (#140692)
Commit: ba4bd3f46e97b5637b16a0fa74b064fb3e6db8ff
https://github.com/llvm/llvm-project/commit/ba4bd3f46e97b5637b16a0fa74b064fb3e6db8ff
Author: jeremyd2019 <github at jdrake.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M bolt/CMakeLists.txt
M clang/CMakeLists.txt
M flang/CMakeLists.txt
M lld/CMakeLists.txt
M lldb/cmake/modules/LLDBStandalone.cmake
M mlir/CMakeLists.txt
M polly/CMakeLists.txt
Log Message:
-----------
[CMake] respect LLVMConfig.cmake's LLVM_DEFINITIONS in standalone builds (#138587)
In #138329, _GNU_SOURCE was added for Cygwin, but when building Clang
standalone against an installed LLVM this definition was not picked up,
resulting in undefined strnlen. Follow the documentation in
https://llvm.org/docs/CMake.html#embedding-llvm-in-your-project and add
the LLVM_DEFINITIONS in standalone projects' cmakes.
Commit: 7857543a6350f49f12d17af0bcf2c0f42db0311e
https://github.com/llvm/llvm-project/commit/7857543a6350f49f12d17af0bcf2c0f42db0311e
Author: jeremyd2019 <github at jdrake.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Support/raw_socket_stream.cpp
Log Message:
-----------
[LLVM][Cygwin] add workaround for blocking connect/accept in AF_UNIX sockets (#140353)
On Cygwin, UNIX sockets involve a handshake between connect and accept
to enable SO_PEERCRED/getpeereid handling. This necessitates accept
being called before connect can return, but at least the tests in
llvm/unittests/Support/raw_socket_stream_test do both on the same thread
(first connect and then accept), resulting in a deadlock. Add a call to
both places sockets are created that turns off the handshake (and
SO_PEERCRED/getpeereid support).
References:
* https://github.com/cygwin/cygwin/blob/cec8a6680ea1fe38f38001b06c34ae355a785209/winsup/cygwin/fhandler/socket_local.cc#L1462-L1471
* https://inbox.sourceware.org/cygwin/Z_UERXFI1g-1v3p2@calimero.vinschen.de/T/#u
Commit: 6f6dc1f239433393c0b09430193beb85d03464c8
https://github.com/llvm/llvm-project/commit/6f6dc1f239433393c0b09430193beb85d03464c8
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/lib/MC/MCAsmBackend.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmBackend.cpp
Log Message:
-----------
[MC] Restore MCAsmBackend::shouldForceRelocation to false
Revert the Target.getSpecifier implementation
(38c3ad36be1facbe6db2dede7e93c0f12fb4e1dc) and update SystemZAsmBackend
instead.
Many targets with %lo/%hi style specifiers (SPARC, MIPS, PowerPC,
RISC-V) do not force relocations for these specifiers.
Additionally, with the introduction of the addReloc hook,
shouldForceRelocation is not that necessary and should probably be
phased out.
Commit: e8ecd2cf94a1bf792d452c6ee0bdb11feac068a4
https://github.com/llvm/llvm-project/commit/e8ecd2cf94a1bf792d452c6ee0bdb11feac068a4
Author: Adrian Kuegel <akuegel at google.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
Revert "[llvm][Bazel] Adjust according to changes in 4cfbe55"
This reverts commit 67f4d841f06640f3bcbe91cc9b9ad0ea047e4518.
Commit: bf6d24a34db4c3d04beb188542e08e7852d9680f
https://github.com/llvm/llvm-project/commit/bf6d24a34db4c3d04beb188542e08e7852d9680f
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/CodeGenCXX/cxx1z-inline-variables.cpp
M clang/test/SemaTemplate/cxx17-inline-variables.cpp
Log Message:
-----------
[Clang] Do not defer variable template instantiation for undeduced types (#141009)
The previous approach broke the instantiation convention for templated
substitutions, as we were attempting to instantiate the initializer
even when it was still dependent.
We deferred variable template instantiation until the end of the TU.
However, type deduction requires the initializer immediately,
similar to how constant evaluation does.
Fixes https://github.com/llvm/llvm-project/issues/140773
Fixes #135032
Fixes #134526
Reapplies https://github.com/llvm/llvm-project/pull/138122
Commit: 53a5bea0ad7ebf72d076d00d3e4a8aff18692ec6
https://github.com/llvm/llvm-project/commit/53a5bea0ad7ebf72d076d00d3e4a8aff18692ec6
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
M lldb/source/Target/Process.cpp
M lldb/test/API/lang/cpp/dynamic-value/TestDynamicValue.py
Log Message:
-----------
[lldb] Call Target::ClearAllLoadedSections even earlier (#140228)
This reapplies https://github.com/llvm/llvm-project/pull/138892, which
was reverted in
https://github.com/llvm/llvm-project/commit/5fb9dca14aeaf12219ff149bf3a4f94c8dc58d8b
due to failures on windows.
Windows loads modules from the Process class, and it does that quite
early, and it kinda makes sense which is why I'm moving the clearing
code even earlier.
The original commit message was:
Minidump files contain explicit information about load addresses of
modules, so it can load them itself. This works on other platforms, but
fails on darwin because DynamicLoaderDarwin nukes the loaded module list
on initialization (which happens after the core file plugin has done its
work).
This used to work until
https://github.com/llvm/llvm-project/pull/109477, which enabled the
dynamic loader
plugins for minidump files in order to get them to provide access to
TLS.
Clearing the load list makes sense, but I think we could do it earlier
in the process, so that both Process and DynamicLoader plugins get a
chance to load modules. This patch does that by calling the function
early in the launch/attach/load core flows.
This fixes TestDynamicValue.py:test_from_core_file on darwin.
Commit: 04211ba7274ba85dd762a2c919f633f792fa9a3c
https://github.com/llvm/llvm-project/commit/04211ba7274ba85dd762a2c919f633f792fa9a3c
Author: Jim Lin <jim at andestech.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/test/Driver/print-enabled-extensions/riscv-andes-a45.c
M clang/test/Driver/print-enabled-extensions/riscv-andes-ax45.c
M clang/test/Driver/print-enabled-extensions/riscv-andes-n45.c
M clang/test/Driver/print-enabled-extensions/riscv-andes-nx45.c
M llvm/lib/Target/RISCV/RISCVProcessors.td
Log Message:
-----------
[RISCV] Add FeatureVendorXAndesPerf to Andes N45/NX45/A45/AX45 (#141007)
Andes N45/NX45/A45/AX45 also support XAndesPerf.
Commit: 4fdcde56a521e7031981190165ff8ba0fb368e8c
https://github.com/llvm/llvm-project/commit/4fdcde56a521e7031981190165ff8ba0fb368e8c
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-21 (Wed, 21 May 2025)
Changed paths:
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
Log Message:
-----------
[X86] Define shouldForceRelocation
Somehow needed by LTO/X86/cfi_jt_aliases.ll
Fixes: 6f6dc1f239433393c0b09430193beb85d03464c8
Commit: 67fc1660d987d145a68a3c3dfbccfbe4b91fba59
https://github.com/llvm/llvm-project/commit/67fc1660d987d145a68a3c3dfbccfbe4b91fba59
Author: Michele Scuttari <michele.scuttari at outlook.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.td
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationOps.td
M mlir/include/mlir/Dialect/Bufferization/Transforms/BufferUtils.h
M mlir/include/mlir/Dialect/Bufferization/Transforms/Bufferize.h
M mlir/include/mlir/Dialect/Bufferization/Transforms/OneShotAnalysis.h
M mlir/include/mlir/Dialect/Bufferization/Transforms/OneShotModuleBufferize.h
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/lib/Dialect/Arith/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
M mlir/lib/Dialect/Bufferization/TransformOps/BufferizationTransformOps.cpp
M mlir/lib/Dialect/Bufferization/Transforms/BufferUtils.cpp
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Bufferization/Transforms/OneShotAnalysis.cpp
M mlir/lib/Dialect/Bufferization/Transforms/OneShotModuleBufferize.cpp
M mlir/lib/Dialect/ControlFlow/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Linalg/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Linalg/Transforms/ConvertToDestinationStyle.cpp
M mlir/lib/Dialect/MLProgram/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Shape/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparsificationAndBufferizationPass.cpp
M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Vector/Transforms/BufferizableOpInterfaceImpl.cpp
Log Message:
-----------
[MLIR] Add bufferization state class to OneShotBufferization pass (#138143)
This PR is a follow-up on #138125, and adds a bufferization state class providing information about the IR. The information currently consists of a cached list of symbol tables, which aims to solve the quadratic scaling of the bufferization task with respect to the number of symbols. The PR breaks API compatibility: the `bufferize` method of the `BufferizableOpInterface` has been enriched with a reference to a `BufferizationState` object.
The bufferization state must be kept in a valid state by the interface implementations. For example, if an operation with the `Symbol` trait is inserted or replaced, its parent `SymbolTable` must be updated accordingly (see, for example, the bufferization of `arith::ConstantOp`, where the symbol table of the module gets the new global symbol inserted). Similarly, the invalidation of a symbol table must be performed if an operation with the `SymbolTable` trait is removed (this can be performed using the `invalidateSymbolTable` method, introduced in #138014).
Commit: 95ba5508e5dca4c9a3dd50c80b89e3f56016a4f3
https://github.com/llvm/llvm-project/commit/95ba5508e5dca4c9a3dd50c80b89e3f56016a4f3
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/CMakeLists.txt
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
A llvm/lib/Transforms/Vectorize/VPlanPredicator.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/test/Transforms/LoopVectorize/uniform-blend.ll
M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
Log Message:
-----------
Reapply "[VPlan] Move predication to VPlanTransform (NFC). (#128420)"
This reverts commit 793bb6b257fa4d9f4af169a4366cab3da01f2e1f.
The recommitted version contains a fix to make sure only the original
phis are processed in convertPhisToBlends nu collecting them in a vector
first. This fixes a crash when no mask is needed, because there is only
a single incoming value.
Original message:
This patch moves the logic to predicate and linearize a VPlan to a
dedicated VPlan transform. It mostly ports the existing logic directly.
There are a number of follow-ups planned in the near future to
further improve on the implementation:
* Edge and block masks are cached in VPPredicator, but the block masks
are still made available to VPRecipeBuilder, so they can be accessed
during recipe construction. As a follow-up, this should be replaced by
adding mask operands to all VPInstructions that need them and use that
during recipe construction.
* The mask caching in a map also means that this map needs updating each
time a new recipe replaces a VPInstruction; this would also be handled
by adding mask operands.
PR: https://github.com/llvm/llvm-project/pull/128420
Commit: de095230d4c16ac36ec75caaebfe84ac7efd34e5
https://github.com/llvm/llvm-project/commit/de095230d4c16ac36ec75caaebfe84ac7efd34e5
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/test/LTO/X86/cfi_jt_aliases.ll
M llvm/test/MC/X86/gotpcrelx.s
Log Message:
-----------
[X86] Improve @gotpcrel on local symbol tests
Test shouldForceRelocation change in 4fdcde56a521e7031981190165ff8ba0fb368e8c
Commit: 11953c647b9332d60f9a98cd72388786329e486b
https://github.com/llvm/llvm-project/commit/11953c647b9332d60f9a98cd72388786329e486b
Author: David Green <david.green at arm.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/ARM/MVETPAndVPTOptimisationsPass.cpp
M llvm/test/CodeGen/Thumb2/mve-vpt-optimisations.mir
Log Message:
-----------
[ARM] Remove kill flags in ReplaceConstByVPNOTs. (#140082)
This is similar to #86300. The vpr register on this branch might be
killed before we reuse it.
Commit: 72a8893689de5a6d0d0fcbf95e038637f7f18521
https://github.com/llvm/llvm-project/commit/72a8893689de5a6d0d0fcbf95e038637f7f18521
Author: Michele Scuttari <michele.scuttari at outlook.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.td
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationOps.td
M mlir/include/mlir/Dialect/Bufferization/Transforms/BufferUtils.h
M mlir/include/mlir/Dialect/Bufferization/Transforms/Bufferize.h
M mlir/include/mlir/Dialect/Bufferization/Transforms/OneShotAnalysis.h
M mlir/include/mlir/Dialect/Bufferization/Transforms/OneShotModuleBufferize.h
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/lib/Dialect/Arith/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
M mlir/lib/Dialect/Bufferization/TransformOps/BufferizationTransformOps.cpp
M mlir/lib/Dialect/Bufferization/Transforms/BufferUtils.cpp
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Bufferization/Transforms/OneShotAnalysis.cpp
M mlir/lib/Dialect/Bufferization/Transforms/OneShotModuleBufferize.cpp
M mlir/lib/Dialect/ControlFlow/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Linalg/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Linalg/Transforms/ConvertToDestinationStyle.cpp
M mlir/lib/Dialect/MLProgram/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Shape/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparsificationAndBufferizationPass.cpp
M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Vector/Transforms/BufferizableOpInterfaceImpl.cpp
Log Message:
-----------
Revert "[MLIR] Add bufferization state class to OneShotBufferization pass" (#141012)
Reverts llvm/llvm-project#138143
The PR for the BufferizationState is temporarily reverted due to API incompatibilities that have been initially missed during the update and were not catched by PR checks.
Commit: 1f5b6ae89fbc88d22c323fa56d8bdad9f7b695c3
https://github.com/llvm/llvm-project/commit/1f5b6ae89fbc88d22c323fa56d8bdad9f7b695c3
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Transforms/StackArrays.cpp
A flang/test/Transforms/stack-arrays-lifetime.fir
Log Message:
-----------
[flang] optionally add lifetime markers to alloca created in stack-arrays (#140901)
Flang at Ofast usually produces executables that consume more stack that
other Fortran compilers.
This is in part because the alloca created from temporary heap
allocation by the StackArray pass are created at the function scope
level without lifetimes, and LLVM does not/is not able to merge alloca
that do not have overlapping lifetimes.
This patch adds an option to generate LLVM lifetime in the StackArray
pass at the previous heap allocation/free using the LLVM dialect
operation for it.
Commit: 213d0d2233c347e8ae2443e6a3c945dcaf170dce
https://github.com/llvm/llvm-project/commit/213d0d2233c347e8ae2443e6a3c945dcaf170dce
Author: Hans Wennborg <hans at hanshq.net>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/DebugInfo/PDB/Native/GSIStreamBuilder.cpp
Log Message:
-----------
[pdb] Provide a better error message when overflowing the public/global symbol record stream (#140884)
Before:
lld-link: error: Stream Error: The stream is too short to perform the requested operation.
lld-link: error: failed to write PDB file ./unit_tests.exe.pdb
After:
lld-link: error: the public (2127832912 bytes) and global (2200532960 bytes) symbols
are too large to fit in a PDB file; the maximum total is 4294967295 bytes.
lld-link: error: failed to write PDB file ./unit_tests.exe.pdb
Commit: a2aa88192f4ecffa41d09fa5a0c506cc786d1035
https://github.com/llvm/llvm-project/commit/a2aa88192f4ecffa41d09fa5a0c506cc786d1035
Author: David Green <david.green at arm.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/GlobalISel/knownbits-const.mir
M llvm/test/tools/UpdateTestChecks/lit.local.cfg
A llvm/test/tools/UpdateTestChecks/update_givaluetracking_test_checks/Inputs/const.mir
A llvm/test/tools/UpdateTestChecks/update_givaluetracking_test_checks/Inputs/const.mir.expected
A llvm/test/tools/UpdateTestChecks/update_givaluetracking_test_checks/knownbits-const.test
A llvm/test/tools/UpdateTestChecks/update_givaluetracking_test_checks/lit.local.cfg
M llvm/utils/UpdateTestChecks/common.py
A llvm/utils/update_givaluetracking_test_checks.py
M llvm/utils/update_mir_test_checks.py
Log Message:
-----------
[GlobalISel] Add a update_givaluetracking_test_checks.py script (#140296)
As with the other update scripts this takes the output of
-passes=print<gisel-value-tracking> and inserts the results into an
existing mir file. This means that the input is a lot like
update_analysis_test_checks.py, and the output needs to insert into a
mir file similarly to update_mir_test_checks.py. The code used to do the
inserting has been moved to common, to allow it to be reused. Otherwise
it tries to reuse the existing infrastructure, and
update_givaluetracking_test_checks is kept relatively short.
Commit: 466720960bd34532ecc342207ef4b81c98cae3c5
https://github.com/llvm/llvm-project/commit/466720960bd34532ecc342207ef4b81c98cae3c5
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M .ci/generate_test_report_lib.py
M .ci/generate_test_report_lib_test.py
Log Message:
-----------
[CI] Add link to issue tracker upon job failures (#140817)
The premerge system will fail somewhat often due to issues unrelated to
the patch being tested. This patch adds a link within the long form
outputs to the issue tracker prompting users to open an issue if they
see flakes/soemthing broken at HEAD/anything else wrong.
Commit: 7cfeedf64addf6d20bdf47a669936ba6e46593d8
https://github.com/llvm/llvm-project/commit/7cfeedf64addf6d20bdf47a669936ba6e46593d8
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/cxx11.cpp
M clang/test/AST/ByteCode/cxx17.cpp
Log Message:
-----------
[clang][bytecode] Change diagnostics for self-initialization (#141006)
Change the diagnostics when reading from the variable we're currently
initializing do be the same as the one the current interpreter emits.
Commit: 52698a13c65d8decfac35b2a7cd3666dd86972f4
https://github.com/llvm/llvm-project/commit/52698a13c65d8decfac35b2a7cd3666dd86972f4
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/include/llvm/IR/IntrinsicsRISCVXCV.td
Log Message:
-----------
[IR] Remove redundant intrinsic properties. NFC. (#140923)
Remove explicit intrinsic properties that are already implied by the use
of DefaultAttrsIntrinsic.
Commit: 9fa81a486e317c7201318d710559093b3a5233bb
https://github.com/llvm/llvm-project/commit/9fa81a486e317c7201318d710559093b3a5233bb
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M libclc/clc/include/clc/clcmacro.h
A libclc/clc/include/clc/common/clc_step.h
M libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/generic/common/clc_step.cl
A libclc/clc/lib/generic/common/clc_step.inc
M libclc/opencl/include/clc/opencl/common/step.inc
M libclc/opencl/lib/generic/common/step.cl
A libclc/opencl/lib/generic/common/step.inc
Log Message:
-----------
[libclc] Move step to the CLC library; add missing half variants (#140936)
The half variants were missing but are trivial to implement. There were
some incorrect mixed type overloads (step(float, double)) which aren't
in the OpenCL specification and so have been removed.
Like certain other builtins the CLC step function only deals with
identical types. The OpenCL layer is responsible for casting the scalar
argument to a vector.
This commit also trivially vectorizes the CLC function, generating
better bytecode.
Commit: 50c4506bae4d5b30aa0ed045f879f9080fbe3994
https://github.com/llvm/llvm-project/commit/50c4506bae4d5b30aa0ed045f879f9080fbe3994
Author: JP Lehr <JanPatrick.Lehr at amd.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/test/LTO/X86/cfi_jt_aliases.ll
M llvm/test/MC/X86/gotpcrelx.s
Log Message:
-----------
Revert "[X86] Improve @gotpcrel on local symbol tests"
This reverts commit de095230d4c16ac36ec75caaebfe84ac7efd34e5.
Did not fix the failing tests after 4fdcde5
Commit: cfd1b142ad4362e78aa2673ab6f0f498aa913b80
https://github.com/llvm/llvm-project/commit/cfd1b142ad4362e78aa2673ab6f0f498aa913b80
Author: JP Lehr <JanPatrick.Lehr at amd.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
Log Message:
-----------
Revert "[X86] Define shouldForceRelocation"
This reverts commit 4fdcde56a521e7031981190165ff8ba0fb368e8c.
Test failures on several bots
Commit: 84841e2ffe911270713407ffba9e0fed7718be12
https://github.com/llvm/llvm-project/commit/84841e2ffe911270713407ffba9e0fed7718be12
Author: JP Lehr <JanPatrick.Lehr at amd.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/lib/MC/MCAsmBackend.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmBackend.cpp
Log Message:
-----------
Revert "[MC] Restore MCAsmBackend::shouldForceRelocation to false"
This reverts commit 6f6dc1f239433393c0b09430193beb85d03464c8.
Resulted in several bot failures.
Commit: 4a158f675be7fd1b3763bf39980d801db89744f8
https://github.com/llvm/llvm-project/commit/4a158f675be7fd1b3763bf39980d801db89744f8
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
Log Message:
-----------
[gn build] Port 95ba5508e5dc
Commit: b5e2a236b9b31243c93d489ccee7b78aacda565a
https://github.com/llvm/llvm-project/commit/b5e2a236b9b31243c93d489ccee7b78aacda565a
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
Log Message:
-----------
[CodeGen] Add SSID & Atomic Ordering to IntrinsicInfo (#140896)
getTgtMemIntrinsic should be able to propagate such information to the
MMO
Commit: f0ab64bd34232a71ee69a518c76adf327ac70bad
https://github.com/llvm/llvm-project/commit/f0ab64bd34232a71ee69a518c76adf327ac70bad
Author: spmok <94923443+siupakmok at users.noreply.github.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/include/mlir/Interfaces/FunctionInterfaces.td
Log Message:
-----------
[MLIR] Use ::llvm:LogicalResult instead of LogicalResult in FunctionInterfaces.td (#140965)
Fixed a minor typo, which can cause compile error:
error C3646: 'eraseResult': unknown override specifier
Commit: c82b30c13463073b359695a83d1dc1b7fc1c8088
https://github.com/llvm/llvm-project/commit/c82b30c13463073b359695a83d1dc1b7fc1c8088
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M lldb/test/API/tools/lldb-dap/breakpoint-assembly/TestDAP_breakpointAssembly.py
Log Message:
-----------
[lldb][lldb-dap] Disable assembly breakpoint test on Windows
New test added by https://github.com/llvm/llvm-project/pull/139969.
On Windows we need debug information to be able to break on the
function (we don't need it for main, but I assume that's a special case).
So disable the test on Windows.
I tried a few tricks like making a global label in assembly, but
that doesn't show up without debug info either.
Commit: d0fbfa6d9771b13e32ed4c64f34150c2364543c2
https://github.com/llvm/llvm-project/commit/d0fbfa6d9771b13e32ed4c64f34150c2364543c2
Author: Joshua James Venter <venter.joshua at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/docs/Tutorials/Toy/Ch-4.md
Log Message:
-----------
[mlir] Explain required attrs for CallOpInterface in Toy (NFC) (#141018)
Following #123176.
Signed-off-by: Joshua James Venter <venter.joshua at gmail.com>
Commit: e1db811341d361dde9767d41fe959efbca1adcbe
https://github.com/llvm/llvm-project/commit/e1db811341d361dde9767d41fe959efbca1adcbe
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
Log Message:
-----------
[AMDGPU] Simplify definition of AddrSpaces. NFC. (#141030)
Commit: c42c91cde41bc403aaf733ebe3ef849861e08dde
https://github.com/llvm/llvm-project/commit/c42c91cde41bc403aaf733ebe3ef849861e08dde
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/test/CodeGen/X86/icmp-abs-C-vec.ll
Log Message:
-----------
[X86] icmp-abs-C-vec.ll - regenerate test checks for TERNLOG comments
Commit: 7a3b5d789d5fee6fe9883b6a3cb9d2ede4262276
https://github.com/llvm/llvm-project/commit/7a3b5d789d5fee6fe9883b6a3cb9d2ede4262276
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaInit.cpp
A clang/test/Sema/c2y-invalid-constexpr.c
A clang/test/Sema/warn-default-const-init-crash.c
Log Message:
-----------
[C] Fix crash-on-invalid due to infinite recursion (#140925)
There are two related issues being fixed in this patch. Both issues
relate to use of an invalid structure which contains a member that we
error recover such that the field has the same type as the structure. In
both cases, we would hit an infinite loop while analyzing the fields
because the type of the field matches the type of the record.
Fixes #140887
Commit: bd8578c3574d77bc1231f047bced4a0053a1b000
https://github.com/llvm/llvm-project/commit/bd8578c3574d77bc1231f047bced4a0053a1b000
Author: hev <wangrui at loongson.cn>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/Disassembler/LoongArchDisassembler.cpp
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLVZInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchRegisterInfo.td
A llvm/test/CodeGen/LoongArch/csrxchg-intrinsic.ll
Log Message:
-----------
[LoongArch] Prevent R0/R1 allocation for rj operand of [G]CSRXCHG (#140862)
The `[G]CSRXCHG` instruction must not use R0 or R1 as the `rj` operand,
as encoding `rj` as 0 or 1 will be interpreted as `[G]CSRRD` OR
`[G]CSRWR`, respectively, rather than `[G]CSRXCHG`.
This patch introduces a new register class `GPRNoR0R1` and updates the
`[G]CSRXCHG` instruction definition to use it for the `rj` operand,
ensuring the register allocator avoids assigning R0 or R1.
Fixes #140842
Commit: 4e186f20e2f2be2fbf95d9713341a0b6507e707d
https://github.com/llvm/llvm-project/commit/4e186f20e2f2be2fbf95d9713341a0b6507e707d
Author: hev <wangrui at loongson.cn>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
M llvm/lib/Target/LoongArch/LoongArchExpandPseudoInsts.cpp
M llvm/lib/Target/LoongArch/LoongArchMachineFunctionInfo.h
Log Message:
-----------
[LoongArch] Fix assertion failure for annotate tablejump (#140907)
Fix a use-after-free issue related to annotateTableJump in the LoongArch
target.
Previously, `LoongArchPreRAExpandPseudo::annotateTableJump()` recorded a
reference to a MachineOperand representing a jump table index. However,
later optimizations such as the `BranchFolder` pass may delete the
instruction containing this operand, leaving a dangling reference.
This led to an assertion failure in
`LoongArchAsmPrinter::emitJumpTableInfo()` when trying to access a freed
MachineOperand via `getIndex()`.
The fix avoids holding a reference to the MachineOperand. Instead, we
extract and store the jump table index at the time of annotation. During
`emitJumpTableInfo()`, we verify whether the recorded index still exists
in the MachineFunction's jump table. If not, we skip emission for that
entry.
Fixes #140904
Commit: 491619a25003c499be16708562206f9a81bff5f7
https://github.com/llvm/llvm-project/commit/491619a25003c499be16708562206f9a81bff5f7
Author: Ilia Kuklin <ikuklin at accesssoftek.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M lldb/docs/dil-expr-lang.ebnf
M lldb/include/lldb/ValueObject/DILAST.h
M lldb/include/lldb/ValueObject/DILEval.h
M lldb/include/lldb/ValueObject/DILLexer.h
M lldb/include/lldb/ValueObject/DILParser.h
M lldb/source/ValueObject/DILAST.cpp
M lldb/source/ValueObject/DILEval.cpp
M lldb/source/ValueObject/DILLexer.cpp
M lldb/source/ValueObject/DILParser.cpp
A lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/Makefile
A lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/TestFrameVarDILArraySubscript.py
A lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/main.cpp
M lldb/unittests/ValueObject/DILLexerTests.cpp
Log Message:
-----------
[LLDB] Add array subscription and integer parsing to DIL (#138551)
Commit: 76a55d3860f76c15ca51d188e10e4352fecf61e9
https://github.com/llvm/llvm-project/commit/76a55d3860f76c15ca51d188e10e4352fecf61e9
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGExpr.cpp
A clang/test/DebugInfo/KeyInstructions/init-scalar.c
Log Message:
-----------
[KeyInstr][Clang] Scalar init atom (#134633)
This patch is part of a stack that teaches Clang to generate Key Instructions
metadata for C and C++.
RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668
The feature is only functional in LLVM if LLVM is built with CMake flag
LLVM_EXPERIMENTAL_KEY_INSTRUCTIONs. Eventually that flag will be removed.
Commit: b9a709832cd96ff3405dd0da9c436d560d8a4f1c
https://github.com/llvm/llvm-project/commit/b9a709832cd96ff3405dd0da9c436d560d8a4f1c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll
Log Message:
-----------
[X86] lowerShuffleAsSplitOrBlend - use isElementEquivalent to help identify hidden splat/broadcasts (#141035)
Noticed while yak shaving #139741
Commit: b63c1c47b78a3c7af3014c4c77d1aad87ec78729
https://github.com/llvm/llvm-project/commit/b63c1c47b78a3c7af3014c4c77d1aad87ec78729
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M lldb/include/lldb/Symbol/CallFrameInfo.h
M lldb/include/lldb/Symbol/FuncUnwinders.h
M lldb/source/Plugins/ObjectFile/PECOFF/PECallFrameInfo.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/PECallFrameInfo.h
M lldb/source/Symbol/FuncUnwinders.cpp
M lldb/source/Target/RegisterContextUnwind.cpp
M lldb/unittests/ObjectFile/PECOFF/TestPECallFrameInfo.cpp
Log Message:
-----------
[lldb] Disable some unwind plans for discontinuous functions (#140927)
Basically, disable everything except the eh_frame unwind plan, as that's
the only one which supports this right now. The other plans are working
with now trying the interpret everything in between the function parts
as a part of the function, which is more likely to produce wrong results
than correct ones.
I changed the interface for object file plans, to give the
implementations a chance to implement this correctly, but I haven't
actually converted PECallFrameInfo (its only implementation) to handle
that. (from the looks of things, it should be relatively easy to do, if
it becomes necessary)
I'm also deleting UnwindPlan::GetFirstNonPrologueInsn, as it's not used,
and it doesn't work for discontinuous functions.
Commit: 34a55c937673c67e634e018af40c0c569c5a2b79
https://github.com/llvm/llvm-project/commit/34a55c937673c67e634e018af40c0c569c5a2b79
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/CodeGen/BranchFolding.cpp
A llvm/test/CodeGen/ARM/branch-folder-single-bb-crash.mir
Log Message:
-----------
[BranchFolding] Fix assertion failure in HoistCommonCodeInSuccs (#141028)
Assertion failure introduced in #140063, which didn't account for TBB
and FBB being the same block.
Commit: d45f1d08272ead39700d54dc800ce78d97170bde
https://github.com/llvm/llvm-project/commit/d45f1d08272ead39700d54dc800ce78d97170bde
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/cxx23.cpp
Log Message:
-----------
[clang][bytecode] Fix self-init diagnostics in C++23 (#141044)
Commit: 5df819ffb32530dff9342a970ffd1527ea1c31bb
https://github.com/llvm/llvm-project/commit/5df819ffb32530dff9342a970ffd1527ea1c31bb
Author: Ilia Kuklin <ikuklin at accesssoftek.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M lldb/docs/dil-expr-lang.ebnf
M lldb/include/lldb/ValueObject/DILAST.h
M lldb/include/lldb/ValueObject/DILEval.h
M lldb/include/lldb/ValueObject/DILLexer.h
M lldb/include/lldb/ValueObject/DILParser.h
M lldb/source/ValueObject/DILAST.cpp
M lldb/source/ValueObject/DILEval.cpp
M lldb/source/ValueObject/DILLexer.cpp
M lldb/source/ValueObject/DILParser.cpp
R lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/Makefile
R lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/TestFrameVarDILArraySubscript.py
R lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/main.cpp
M lldb/unittests/ValueObject/DILLexerTests.cpp
Log Message:
-----------
Revert "[LLDB] Add array subscription and integer parsing to DIL" (#141059)
Reverts llvm/llvm-project#138551
Commit: 229aa6627a63012ac5e0b3587c87e94c2b5ad36f
https://github.com/llvm/llvm-project/commit/229aa6627a63012ac5e0b3587c87e94c2b5ad36f
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/lib/CodeGen/CGDecl.cpp
A clang/test/DebugInfo/KeyInstructions/init-agg.cpp
Log Message:
-----------
[KeyInstr][Clang] Agg init atom (#134635)
Covers aggregate initialisation and -ftrivial-auto-var-init=pattern.
This patch is part of a stack that teaches Clang to generate Key Instructions
metadata for C and C++.
RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668
The feature is only functional in LLVM if LLVM is built with CMake flag
LLVM_EXPERIMENTAL_KEY_INSTRUCTIONs. Eventually that flag will be removed.
Commit: 83de1efae389707f7fd03bf3ed2e42934122b4fb
https://github.com/llvm/llvm-project/commit/83de1efae389707f7fd03bf3ed2e42934122b4fb
Author: Luigi Sartor Piucco <luigipiucco at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/docs/LangRef.rst
A llvm/test/CodeGen/AVR/volatile-null.ll
Log Message:
-----------
[LangRef] Comment on validity of volatile ops on null (#139803)
Some hardware (for example, certain AVR chips) have peripheral registers
mapped to the data space address 0. Although a volatile load/store on
`ptr null` already generates expected code, the wording in the LangRef
makes operations on null seem like undefined behavior in all cases. This
commit adds a comment that, for volatile operations, it may be defined
behavior to access the address null, if the architecture permits it. The
intended use case is MMIO registers with hard-coded addresses that
include bit-value 0. A simple CodeGen test is included for AVR, as an
architecture known to have this quirk, that does `load volatile` and
`store volatile` to `ptr null`, expecting to generate `lds <reg>, 0` and
`sts 0, <reg>`.
See [this
thread](https://rust-lang.zulipchat.com/#narrow/channel/213817-t-lang/topic/Adding.20the.20possibility.20of.20volatile.20access.20to.20address.200)
and [the
RFC](https://discourse.llvm.org/t/rfc-volatile-access-to-non-dereferenceable-memory-may-be-well-defined/86303)
for discussion and context.
Commit: 9cac4bf485e64f7992f2c01bb9517f6379e58164
https://github.com/llvm/llvm-project/commit/9cac4bf485e64f7992f2c01bb9517f6379e58164
Author: Javier Lopez-Gomez <javier.lopez.gomez at proton.me>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-debuginfo-analyzer.rst
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVElement.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVOptions.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVScope.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVType.h
M llvm/lib/DebugInfo/LogicalView/Core/LVOptions.cpp
M llvm/lib/DebugInfo/LogicalView/Core/LVScope.cpp
M llvm/lib/DebugInfo/LogicalView/Core/LVType.cpp
M llvm/lib/DebugInfo/LogicalView/Readers/LVCodeViewVisitor.cpp
M llvm/lib/DebugInfo/LogicalView/Readers/LVDWARFReader.cpp
M llvm/test/tools/llvm-debuginfo-analyzer/COFF/04-coff-missing-nested-enumerators.test
M llvm/test/tools/llvm-debuginfo-analyzer/COFF/06-coff-full-logical-view.test
M llvm/test/tools/llvm-debuginfo-analyzer/DWARF/04-dwarf-missing-nested-enumerators.test
M llvm/test/tools/llvm-debuginfo-analyzer/DWARF/06-dwarf-full-logical-view.test
M llvm/test/tools/llvm-debuginfo-analyzer/DWARF/dw-at-specification.test
M llvm/test/tools/llvm-debuginfo-analyzer/cmdline.test
M llvm/tools/llvm-debuginfo-analyzer/Options.cpp
M llvm/unittests/DebugInfo/LogicalView/CodeViewReaderTest.cpp
M llvm/unittests/DebugInfo/LogicalView/CommandLineOptionsTest.cpp
M llvm/unittests/DebugInfo/LogicalView/DWARFReaderTest.cpp
Log Message:
-----------
[llvm-debuginfo-analyzer] Add support for DWARF `DW_AT_byte_size` (#139110)
This PR was split from https://github.com/llvm/llvm-project/pull/137228
(which introduced support for `DW_TAG_module` and `DW_AT_byte_size`).
This PR improves `LVDWARFReader` by introducing handling of
`DW_AT_byte_size`. Most DWARF emitters include this attribute for types
to specify the size of an entity of the given type.
Commit: 898df4b8ed86f6590e8496c2108c1611dca710ab
https://github.com/llvm/llvm-project/commit/898df4b8ed86f6590e8496c2108c1611dca710ab
Author: Asher Mancinelli <ashermancinelli at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
A flang/test/HLFIR/opt-bufferization-skip-volatile.fir
Log Message:
-----------
[flang] Skip opt-bufferization when memory effect does not have an associated value (#140781)
Memory effects on the volatile memory resource may not be attached to a
particular source, in which case the value of an effect will be null.
This caused this test case to crash in the optimized bufferization
pass's safety analysis because it assumes it can get the SSA value
modified by the memory effect. This is because memory effects on the
volatile resource indicate that the operation must not be reordered with
respect to other volatile operations, but there is not a material ssa
value that can be pointed to.
This patch changes the safety checks such that memory effects which do
not have associated values are not safe for optimized bufferization.
Commit: 6eb4adf7460f6b677f372b19758540ec890ef06a
https://github.com/llvm/llvm-project/commit/6eb4adf7460f6b677f372b19758540ec890ef06a
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
Log Message:
-----------
[AMDGPU] Introduce FeatureISAVersion11_5_Common. NFC. (#141061)
This just removes some duplication in the features lists for gfx115x.
Commit: 50127ac054a08321b64f4ac24bda5cad20e20ac1
https://github.com/llvm/llvm-project/commit/50127ac054a08321b64f4ac24bda5cad20e20ac1
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/AttributeCommonInfo.h
M clang/include/clang/Basic/Attributes.h
M clang/include/clang/Basic/CMakeLists.txt
M clang/include/clang/Basic/DiagnosticCommonKinds.td
A clang/include/clang/Basic/SimpleTypoCorrection.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/CommentSema.cpp
M clang/lib/Basic/Attributes.cpp
M clang/lib/Basic/CMakeLists.txt
A clang/lib/Basic/SimpleTypoCorrection.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaType.cpp
M clang/test/Parser/cxx0x-attributes.cpp
M clang/test/Sema/attr-c2x.c
M clang/test/Sema/unknown-attributes.c
M clang/test/SemaCXX/cxx11-gnu-attrs.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
M clang/utils/TableGen/TableGen.cpp
M clang/utils/TableGen/TableGenBackends.h
Log Message:
-----------
[Clang] add typo correction for unknown attribute names (#140629)
This patch enhances Clang's diagnosis for unknown attributes by
providing typo correction suggestions for known attributes.
```cpp
[[gmu::deprected]] // expected-warning {{unknown attribute 'gmu::deprected' ignored; did you mean 'gnu::deprecated'?}}
int f1(void) {
return 0;
}
[[deprected]] // expected-warning {{unknown attribute 'deprected' ignored; did you mean 'deprecated'?}}
int f2(void) {
return 0;
}
```
Commit: 8d0a484983ef3e35e46d7979d749c96203b0296b
https://github.com/llvm/llvm-project/commit/8d0a484983ef3e35e46d7979d749c96203b0296b
Author: Sebastian Kreutzer <SebastianKreutzer at gmx.net>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/include/clang/Driver/ToolChain.h
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/test/Driver/XRay/xray-instrument.c
Log Message:
-----------
[XRay] Fix argument parsing with offloading (#140748) (#141043)
This PR addressed issue #140748 to support XRay instrumentation on the
host side when using offloading.
It makes the following changes:
- Initializes `XRayArgs` using the processed toolchain arguments instead
of the raw input.
- Removes the current caching mechanism of `XRayArgs` in the `ToolChain`
class, as this is error-prone and potential benefits are questionable.
For reference, `SanitizierArgs`, which is constructed in a similar
manner but is much more complex, does not use any caching.
- Adds driver tests to verify that XRay flags are set correctly with
offloading and `-Xarch_host`.
Commit: 6375a8508e836a49ffcee306b57166a39a950afe
https://github.com/llvm/llvm-project/commit/6375a8508e836a49ffcee306b57166a39a950afe
Author: Shay Kleiman <42376404+shay-kl at users.noreply.github.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
M mlir/test/Conversion/TosaToTensor/tosa-to-tensor.mlir
Log Message:
-----------
[mlir][tosa] Fix indexing in TosaToTensor (#140906)
Changed the indexing used in the extractOp from one that is intended for
0d tensors to one that is intended for 1d tensors.
---------
Co-authored-by: Shay Kleiman <shay.kleiman at mobileye.com>
Commit: c2892b0bdfb34bd4a79f357ee2f234a29f9e49f4
https://github.com/llvm/llvm-project/commit/c2892b0bdfb34bd4a79f357ee2f234a29f9e49f4
Author: Kajetan Puchalski <kajetan.puchalski at arm.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/descriptor.h
M flang-rt/include/flang-rt/runtime/tools.h
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/tools.cpp
A flang-rt/unittests/Runtime/Assign.cpp
M flang-rt/unittests/Runtime/CMakeLists.txt
Log Message:
-----------
[flang-rt] Optimise ShallowCopy and use it in CopyInAssign (#140569)
Using Descriptor.Element<>() when iterating through a rank-1 array is
currently inefficient, because the generic implementation suitable for
arrays of any rank makes the compiler unable to perform optimisations
that would make the rank-1 case considerably faster.
This is currently done inside ShallowCopy, as well as by CopyInAssign,
where the implementation of elemental copies (inside Assign) is
equivalent to ShallowCopyDiscontiguousToDiscontiguous.
To address that, add a DescriptorIterator abstraction specialised for
arrays of various ranks, and use that throughout ShallowCopy to iterate
over the arrays.
Furthermore, depending on the pointer type passed to memcpy, the
optimiser can remove the memcpy calls from ShallowCopy altogether which
can result in substantial performance improvements on its own.
Specialise ShallowCopy for various element pointer types to make these
optimisations possible.
Finally, replace the call to Assign inside CopyInAssign with a call to
newly optimised ShallowCopy.
For the thornado-mini application, this reduces the runtime by 27.7%.
---------
Signed-off-by: Kajetan Puchalski <kajetan.puchalski at arm.com>
Commit: 03cc50fd7db734b62783b26e6c6fcfb4f7e33be0
https://github.com/llvm/llvm-project/commit/03cc50fd7db734b62783b26e6c6fcfb4f7e33be0
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/matrix-multiply.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-3.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-4.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-6.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-8.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg.ll
Log Message:
-----------
[X86] lowerShuffleAsSplitOrBlend - prefer splitting AVX1-only shuffles if the operands can be freely split (#141055)
On an AVX1-only target, if both operands of a 256-bit shuffle can be freely split (concatenations or splats), then prefer to lower as 128-bit shuffles using splitAndLowerShuffle
Commit: a24ed7d4775d119029bc8539c54fba03dba4366f
https://github.com/llvm/llvm-project/commit/a24ed7d4775d119029bc8539c54fba03dba4366f
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
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/ops.mlir
Log Message:
-----------
[mlir][OpenMP] add attribute for privatization barrier (#140089)
A barrier is needed at the end of initialization/copying of private
variables if any of those variables is lastprivate. This ensures that
all firstprivate variables receive the original value of the variable
before the lastprivate clause overwrites it.
Previously this barrier was added by the flang fontend, but there is not
a reliable way to put the barrier in the correct place for delayed
privatization, and the OpenMP dialect could some day have other users.
It is important that there are safe ways to use the constructs available
in the dialect.
lastprivate is currently not modelled in the OpenMP dialect, and so
there is no way to reliably determine whether there were lastprivate
variables. Therefore the frontend will have to provide this information
through this new attribute.
Part of a series of patches to fix
https://github.com/llvm/llvm-project/issues/136357
Commit: 8d06d4c1326ebd537f2219e0f0749945986cc8eb
https://github.com/llvm/llvm-project/commit/8d06d4c1326ebd537f2219e0f0749945986cc8eb
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/openmp-wsloop-private.mlir
Log Message:
-----------
[mlir][OpenMP] Add translation of private_barrier attr to LLVMIR (#140090)
Part of a series to fix
https://github.com/llvm/llvm-project/issues/136357
Commit: b048f3f8d7a6ff178dafa82e47f2dddd75c95258
https://github.com/llvm/llvm-project/commit/b048f3f8d7a6ff178dafa82e47f2dddd75c95258
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Interpreter/Interpreter.cpp
M clang/unittests/ASTMatchers/ASTMatchersTest.h
M clang/unittests/Tooling/ToolingTest.cpp
Log Message:
-----------
[clang] Use llvm::is_contained (NFC) (#140985)
Commit: e9cba3c8edca3dc805e82afbb482b3938cb96ae2
https://github.com/llvm/llvm-project/commit/e9cba3c8edca3dc805e82afbb482b3938cb96ae2
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/DataSharingProcessor.h
M flang/test/Lower/OpenMP/lastprivate-allocatable.f90
M flang/test/Lower/OpenMP/parallel-lastprivate-clause-scalar.f90
M flang/test/Lower/OpenMP/same_var_first_lastprivate.f90
Log Message:
-----------
[flang][OpenMP] use attribute for delayed privatization barrier (#140092)
Fixes #136357
The barrier needs to go between the copying into firstprivate variables
and the initialization call for the OpenMP construct (e.g. wsloop).
There is no way of expressing this in MLIR because for delayed
privatization that is all implicit (added in MLIR->LLVMIR conversion).
The previous approach put the barrier immediately before the wsloop (or
similar). For delayed privatization, the firstprivate copy code would
then be inserted after that, opening the possibility for the race
observed in the bug report.
This patch solves the issue by instead setting an attribute on the mlir
operation, which will instruct openmp dialect to llvm ir conversion to
insert a barrier in the correct place.
Commit: 60e5ecd0431c0c62574f063f509dd3dd31cb0647
https://github.com/llvm/llvm-project/commit/60e5ecd0431c0c62574f063f509dd3dd31cb0647
Author: Eric Li <li.zhe.hua at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
Log Message:
-----------
[ASTMatchers] Fix matching `CXXOperatorCallExpr` of `->` (#139994)
The `->` operator does not have a corresponding `UnaryOperatorKind`, and
so was unsupported by the `hasOperatorName` and `hasUnaryOperand`
matchers.
Instead of trying to determine the equivalent unary or binary operator
and then deriving the opcode string, we consult `OperatorKinds.def`
directly (through `getOperatorSpelling`).
For `hasUnaryOperand` support, we special case the arrow operator
specifically.
Commit: 8452a11b4f202050e47a97710a25286f48753d1b
https://github.com/llvm/llvm-project/commit/8452a11b4f202050e47a97710a25286f48753d1b
Author: Eric Li <li.zhe.hua at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/lib/Tooling/Transformer/RangeSelector.cpp
M clang/unittests/Tooling/RangeSelectorTest.cpp
Log Message:
-----------
[libTooling] Fix `constructExprArgs` for direct-init and implicit construction (#139990)
Use `getParenOrBraceRange()` to get the location of the opening paren or
braces instead of searching backwards from the first argument.
For implicit construction, get the range surrounding the first and last
arguments.
Commit: 1f0c1784118da963dce825de7a07da672fe5de57
https://github.com/llvm/llvm-project/commit/1f0c1784118da963dce825de7a07da672fe5de57
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/include/clang/AST/PrettyPrinter.h
M llvm/test/CodeGen/PowerPC/MCSE-caller-preserved-reg.ll
M llvm/test/CodeGen/PowerPC/expand-contiguous-isel.ll
M llvm/test/Transforms/JumpThreading/thread-loads.ll
Log Message:
-----------
Fix typo "redudant"
Commit: 0c96c65169d65a4f7220be5b07c42237c6880911
https://github.com/llvm/llvm-project/commit/0c96c65169d65a4f7220be5b07c42237c6880911
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
A clang/test/CodeGenOpenCL/check-atomic-alignment.cl
Log Message:
-----------
[clang][CodeGen] Fix crash on non-natural type in CheckAtomicAlignment (#141053)
In some specific scenarios, `Ptr.getElementType()` won't be a primitive
type or a vector of primitive types, and thus `getScalarSizeInBits()`
returns zero.
Use the datalayout to get the proper size of the type instead of making
an implicit assumption that the type is a simple primitive type.
Solves SWDEV-534184
Commit: 0d464009fe7a860bf53370db66455cfe3c9aac96
https://github.com/llvm/llvm-project/commit/0d464009fe7a860bf53370db66455cfe3c9aac96
Author: Kajetan Puchalski <kajetan.puchalski at arm.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M flang-rt/lib/runtime/assign.cpp
Log Message:
-----------
[flang-rt] Fix usage of kNoAsyncId in assign.cpp (#141077)
Fix a leftover old variable name causing build bot errors.
Signed-off-by: Kajetan Puchalski <kajetan.puchalski at arm.com>
Commit: 2bb5cc54bee745ed3b7e74a99e8a3196434da2ec
https://github.com/llvm/llvm-project/commit/2bb5cc54bee745ed3b7e74a99e8a3196434da2ec
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[bazel] Port 50127ac054a08321b64f4ac24bda5cad20e20ac1
Commit: fb21efa258d84a159a5951c3cc8184edfe5ba796
https://github.com/llvm/llvm-project/commit/fb21efa258d84a159a5951c3cc8184edfe5ba796
Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZInstPrinterCommon.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZInstPrinterCommon.h
R llvm/test/MC/Disassembler/SystemZ/insns-pcrel.txt
M llvm/test/MC/Disassembler/SystemZ/insns-z13-bad.txt
M llvm/test/MC/Disassembler/SystemZ/insns-z13.txt
M llvm/test/MC/Disassembler/SystemZ/insns-z14.txt
M llvm/test/MC/Disassembler/SystemZ/insns-z15.txt
M llvm/test/MC/Disassembler/SystemZ/insns-z16.txt
M llvm/test/MC/Disassembler/SystemZ/insns-z17.txt
M llvm/test/MC/Disassembler/SystemZ/insns.txt
M llvm/test/MC/Disassembler/SystemZ/marked-up.txt
Log Message:
-----------
[SystemZ] Support PrintBranchImmAsAddress in disassembler (#141064)
As noticed in https://github.com/llvm/llvm-project/pull/140471, the
SystemZ target currently implements disassembly of PC-relative target
addresses differently from other back-ends. This patch brings SystemZ in
line with other targets.
Specifically, this patch changes the relevant MCInst instructions to
carry a PC-relative displacement instead of an absolute target address
in their immediate fields. When printing the instruction, this
displacement will either be shown as is (e.g. for llvm-mc), or else
translated into an absolute address at print time (e.g. for
llvm-objdump).
The existing llvm-mc based tests using PC-relative operands no longer
work and have to be rewritten, but printing displacements makes those
tests easier to maintain anyway.
Commit: eee958285bde228df2893f70f879c1af8ec8386c
https://github.com/llvm/llvm-project/commit/eee958285bde228df2893f70f879c1af8ec8386c
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/test/Transforms/SimplifyCFG/speculate-store.ll
Log Message:
-----------
[SimplifyCFG] Only consider provenance capture in store speculation (#138548)
The capture check here is to protect against concurrent accesses from
other threads. This requires the provenance to escape.
Commit: 1fdf02ad5a4ca155017eea22688365a20aab077c
https://github.com/llvm/llvm-project/commit/1fdf02ad5a4ca155017eea22688365a20aab077c
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/BranchFoldingPass.h
M llvm/include/llvm/CodeGen/ExecutionDomainFix.h
M llvm/include/llvm/CodeGen/GlobalISel/InstructionSelect.h
M llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h
M llvm/include/llvm/CodeGen/GlobalISel/LoadStoreOpt.h
M llvm/include/llvm/CodeGen/GlobalISel/Localizer.h
M llvm/include/llvm/CodeGen/GlobalISel/RegBankSelect.h
M llvm/include/llvm/CodeGen/IndirectThunks.h
M llvm/include/llvm/CodeGen/LiveDebugVariables.h
M llvm/include/llvm/CodeGen/MachineCSE.h
M llvm/include/llvm/CodeGen/MachineCopyPropagation.h
M llvm/include/llvm/CodeGen/MachineFunction.h
M llvm/include/llvm/CodeGen/MachineLateInstrsCleanup.h
M llvm/include/llvm/CodeGen/MachineRegisterInfo.h
M llvm/include/llvm/CodeGen/PatchableFunction.h
M llvm/include/llvm/CodeGen/PostRASchedulerList.h
M llvm/include/llvm/CodeGen/ReachingDefAnalysis.h
M llvm/include/llvm/CodeGen/RegAllocFast.h
M llvm/include/llvm/CodeGen/RegAllocGreedyPass.h
M llvm/include/llvm/CodeGen/RegisterCoalescerPass.h
M llvm/include/llvm/CodeGen/RemoveLoadsIntoFakeUses.h
M llvm/include/llvm/CodeGen/ShrinkWrap.h
M llvm/include/llvm/CodeGen/TailDuplication.h
M llvm/include/llvm/CodeGen/TwoAddressInstructionPass.h
M llvm/lib/CodeGen/BranchFolding.cpp
M llvm/lib/CodeGen/BreakFalseDeps.cpp
M llvm/lib/CodeGen/FuncletLayout.cpp
M llvm/lib/CodeGen/GlobalISel/Combiner.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp
M llvm/lib/CodeGen/GlobalISel/Legalizer.cpp
M llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp
M llvm/lib/CodeGen/GlobalISel/Localizer.cpp
M llvm/lib/CodeGen/GlobalISel/RegBankSelect.cpp
M llvm/lib/CodeGen/GlobalISel/Utils.cpp
M llvm/lib/CodeGen/IfConversion.cpp
M llvm/lib/CodeGen/ImplicitNullChecks.cpp
M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/MachineBasicBlock.cpp
M llvm/lib/CodeGen/MachineCSE.cpp
M llvm/lib/CodeGen/MachineCopyPropagation.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/CodeGen/MachineLateInstrsCleanup.cpp
M llvm/lib/CodeGen/MachineOutliner.cpp
M llvm/lib/CodeGen/MachineSink.cpp
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/PHIElimination.cpp
M llvm/lib/CodeGen/PatchableFunction.cpp
M llvm/lib/CodeGen/PeepholeOptimizer.cpp
M llvm/lib/CodeGen/PostRASchedulerList.cpp
M llvm/lib/CodeGen/ProcessImplicitDefs.cpp
M llvm/lib/CodeGen/PrologEpilogInserter.cpp
M llvm/lib/CodeGen/RegAllocBase.cpp
M llvm/lib/CodeGen/RegAllocBasic.cpp
M llvm/lib/CodeGen/RegAllocFast.cpp
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/lib/CodeGen/RegAllocPBQP.cpp
M llvm/lib/CodeGen/RegisterCoalescer.cpp
M llvm/lib/CodeGen/RegisterScavenging.cpp
M llvm/lib/CodeGen/RemoveLoadsIntoFakeUses.cpp
M llvm/lib/CodeGen/ResetMachineFunctionPass.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/CodeGen/ShrinkWrap.cpp
M llvm/lib/CodeGen/StackMapLivenessAnalysis.cpp
M llvm/lib/CodeGen/TailDuplication.cpp
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
M llvm/lib/CodeGen/VirtRegMap.cpp
Log Message:
-----------
[LLVM][CodeGen] Add convenience accessors for MachineFunctionProperties (#140002)
Add per-property has<Prop>/set<Prop>/reset<Prop> functions to
MachineFunctionProperties.
Commit: 571a24c314acf71db7a76449bc2bfd9a66ceb881
https://github.com/llvm/llvm-project/commit/571a24c314acf71db7a76449bc2bfd9a66ceb881
Author: Tim Gymnich <tim at gymni.ch>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
A llvm/include/llvm/ADT/GenericFloatingPointPredicateUtils.h
A llvm/include/llvm/Analysis/FloatingPointPredicateUtils.h
M llvm/include/llvm/Analysis/ValueTracking.h
A llvm/include/llvm/CodeGen/MachineFloatingPointPredicateUtils.h
M llvm/lib/Analysis/CMakeLists.txt
A llvm/lib/Analysis/FloatingPointPredicateUtils.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/CodeGen/CMakeLists.txt
M llvm/lib/CodeGen/CodeGenPrepare.cpp
A llvm/lib/CodeGen/MachineFloatingPointPredicateUtils.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/unittests/Analysis/ValueTrackingTest.cpp
M llvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
Log Message:
-----------
Reland [llvm] add GenericFloatingPointPredicateUtils #140254 (#141065)
#140254 was previously missing 2 files in the bazel build config.
Commit: 882a01eedc3c3b18fea49b683732d54c2d89c45b
https://github.com/llvm/llvm-project/commit/882a01eedc3c3b18fea49b683732d54c2d89c45b
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
Log Message:
-----------
[flang][rt] Fix the use of kNoAsyncId -> kNoAsyncObject (#141079)
Commit: f578f56feaf9e578cedf9854efe7041353e7e55c
https://github.com/llvm/llvm-project/commit/f578f56feaf9e578cedf9854efe7041353e7e55c
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/test/binary-analysis/AArch64/gs-pacret-autiasp.s
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
Log Message:
-----------
[BOLT] Gadget scanner: refactor issue reporting (#135662)
Remove `getAffectedRegisters` and `setOverwritingInstrs` methods from
the base `Report` class. Instead, rename the `Report` class to
`Diagnostic` and make it always represent the brief version of the
report, which is kept unchanged since initially found. Throughout its
life-cycle, an instance of `Diagnostic` is first wrapped into
`PartialReport<ReqT>` together with an optional request for extra
details. Then, on the second run of the analysis, it is re-wrapped into
`FinalReport` together with the requested detailed information.
Commit: c432936b05d9e47c23dbbbe00ba02e11384fe6ff
https://github.com/llvm/llvm-project/commit/c432936b05d9e47c23dbbbe00ba02e11384fe6ff
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-store-fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-store-int.ll
M llvm/test/CodeGen/RISCV/rvv/masked-store-int.ll
Log Message:
-----------
[SelectionDAG][RISCV] Use VP_STORE to widen MSTORE in type legalization when possible. (#140991)
Widening the mask and padding with zeros doesn't work for scalable
vectors. Using VL produces less code for fixed vectors.
Similar was recently done for MLOAD.
Commit: 9b4de7d8850d0e66cd49224cef8de17a41e1746a
https://github.com/llvm/llvm-project/commit/9b4de7d8850d0e66cd49224cef8de17a41e1746a
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/test/CodeGen/RISCV/rvv/zvqdotq-sdnode.ll
Log Message:
-----------
[RISCV] Lower PARTIAL_REDUCE_[S/U]MLA via zvqdotq (#140950)
The semantics of the PARTIAL_REDUCE_SMLA with i32 result element, and i8
sources corresponds to vqdot. Analogously PARTIAL_REDUCE_UMLA
corresponds to vqdotu. There is currently no vqdotsu equivalent.
This patch is a starting place. We can extend this quite a bit more, and
I plan to take a look at the fixed vector lowering, the TTI hook to
drive loop vectorizer, and to try to integrate the reduction based
lowering I'd added for zvqdotq into this flow.
Commit: edd4317e9f48d4209545b2ffd7ccc43e92fe6611
https://github.com/llvm/llvm-project/commit/edd4317e9f48d4209545b2ffd7ccc43e92fe6611
Author: Francesco Petrogalli <francesco.petrogalli at apple.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td
Log Message:
-----------
[RISCV] Fix schedule info for FMVP_D_X. (#140766)
This binary instruction reads from two input registers.
Commit: aac843c1a1ebc7bae449858fa7e585f10084ae17
https://github.com/llvm/llvm-project/commit/aac843c1a1ebc7bae449858fa7e585f10084ae17
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSystemOperands.td
Log Message:
-----------
[RISCV] Sort RISCVSystemOperands to match the RISC-V Privilege Specification. (#140967)
Use the order here
https://github.com/riscv/riscv-isa-manual/blob/main/src/priv-csrs.adoc
My hope is that by having the lists in sync, we can more easily compare
them for missing or incorrect entries.
Unfortunately, not all CSRs have been integrated there yet. I've filed
issues in riscv-isa-manual to get them added.
Commit: 9a77af37d8719bcfa97e31a730c1a401b91a8e14
https://github.com/llvm/llvm-project/commit/9a77af37d8719bcfa97e31a730c1a401b91a8e14
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/fp-round-with-concat-vector-undef-elem.ll
M llvm/test/CodeGen/X86/subvector-broadcast.ll
Log Message:
-----------
[X86] lowerV4F64Shuffle - prefer BLEND before UNPCK shuffle matching (#141073)
Use the same matching order as other 128/256-bit shuffles
Fixes regression identified in #139741
Commit: 8416bace86eb4c3778ae415733549ad3d42f032f
https://github.com/llvm/llvm-project/commit/8416bace86eb4c3778ae415733549ad3d42f032f
Author: John Harrison <harjohn at google.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M lldb/tools/lldb-dap/Protocol/ProtocolBase.h
M lldb/unittests/DAP/CMakeLists.txt
M lldb/unittests/DAP/Handler/DisconnectTest.cpp
A lldb/unittests/DAP/Inputs/linux-x86_64.core.yaml
A lldb/unittests/DAP/Inputs/linux-x86_64.out.yaml
M lldb/unittests/DAP/TestBase.cpp
M lldb/unittests/DAP/TestBase.h
M lldb/unittests/TestingSupport/TestUtilities.cpp
M lldb/unittests/TestingSupport/TestUtilities.h
Log Message:
-----------
[lldb-dap] In DAP unit tests, add helpers for loading a CoreFile. (#140738)
This allows us to have a SBTarget and SBProcess for creating unit tests.
Commit: 498121e00454fc306f345b7854cf96cb7282374b
https://github.com/llvm/llvm-project/commit/498121e00454fc306f345b7854cf96cb7282374b
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
M mlir/test/Dialect/Tosa/ops.mlir
Log Message:
-----------
[mlir][tosa] Allow unranked indices argument for gather/scatter (#140618)
This commit allows the indices argument for gather and scatter to be
unranked. This can be computed during shape inference.
Commit: ed75e2114fd486efc09e35d16e709054a9511eba
https://github.com/llvm/llvm-project/commit/ed75e2114fd486efc09e35d16e709054a9511eba
Author: Tim Gymnich <tim at gymni.ch>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
A llvm/include/llvm/CodeGen/GlobalISel/MachineFloatingPointPredicateUtils.h
R llvm/include/llvm/CodeGen/MachineFloatingPointPredicateUtils.h
M llvm/lib/CodeGen/CMakeLists.txt
M llvm/lib/CodeGen/GlobalISel/CMakeLists.txt
A llvm/lib/CodeGen/GlobalISel/MachineFloatingPointPredicateUtils.cpp
R llvm/lib/CodeGen/MachineFloatingPointPredicateUtils.cpp
Log Message:
-----------
Fix build for GenericFloatingPointPredicateUtils #140254 (#141095)
Fixes linker issue with #140254 / #140254
Commit: 758fea0e995e6128022e5cd2605a92222e130837
https://github.com/llvm/llvm-project/commit/758fea0e995e6128022e5cd2605a92222e130837
Author: QiYue <yangzhh at mail.ustc.edu.cn>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
A llvm/test/Transforms/InferAddressSpaces/AMDGPU/lifetime.ll
A llvm/test/Transforms/InferAddressSpaces/NVPTX/lifetime.ll
Log Message:
-----------
[InferAddressSpaces] Handle llvm.lifetime (#141045)
Co-authored-by: Zhenhao Yang <zhenhao.yang at nio.com>
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 4e9c3ce39189fc68f83be03f85a6a504de537049
https://github.com/llvm/llvm-project/commit/4e9c3ce39189fc68f83be03f85a6a504de537049
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaProfileCompliance.h
M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
M mlir/test/Dialect/Tosa/invalid.mlir
Log Message:
-----------
[mlir][tosa] Improve invalid operator data types error message (#140756)
The error message on invalid operator data types in the validation pass
was not very clear. This commit improves the error message as follows:
Current:
```
'tosa.add' op illegal: operand/result data types not supported
```
Improved:
```
'tosa.add' op illegal: operation operand/result data types did not align with any profile or extension, got (i1,i1,i1), did you mean (i32,i32,i32)? Otherwise, please refer to the 'supported data types' for 'tosa.add' in the specification.
```
Commit: fbf7878a469df18cf95fb6c27ddeda9a0b00e805
https://github.com/llvm/llvm-project/commit/fbf7878a469df18cf95fb6c27ddeda9a0b00e805
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
M mlir/test/Dialect/Tosa/level_check.mlir
Log Message:
-----------
[mlir][tosa] Fix level check on unranked input tensor (#140795)
This commit fixes a segfault that occurred on operators with unranked
input tensors. Operator specific level checks performed before the rank
check incorrectly assumed all inputs were shaped.
Commit: 398a1ac821e01835257206cd3ccf2a71d3a333d6
https://github.com/llvm/llvm-project/commit/398a1ac821e01835257206cd3ccf2a71d3a333d6
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/lib/CodeGen/CGDecl.cpp
A clang/test/DebugInfo/KeyInstructions/init-static.cpp
Log Message:
-----------
[KeyInstr][Clang] Static variable init atom (#134636)
This patch is part of a stack that teaches Clang to generate Key Instructions
metadata for C and C++.
RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668
The feature is only functional in LLVM if LLVM is built with CMake flag
LLVM_EXPERIMENTAL_KEY_INSTRUCTIONs. Eventually that flag will be removed.
Commit: 3ef1b07a6ce759d5036ccaa78f0e4512528964c6
https://github.com/llvm/llvm-project/commit/3ef1b07a6ce759d5036ccaa78f0e4512528964c6
Author: Jerry Zhang Jian <jerry.zhangjian at sifive.com>
Date: 2025-05-23 (Fri, 23 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/MC/RISCV/attribute-arch.s
Log Message:
-----------
[RISCV] add Double Trap extension requires Zicsr (#141016)
- The double trap extension requires `mtval2' register, so add Zicsr as
required extension
Signed-off-by: Jerry Zhang Jian <jerry.zhangjian at sifive.com>
Commit: a3d39316764726ed9fd939550c7781199b1eb77e
https://github.com/llvm/llvm-project/commit/a3d39316764726ed9fd939550c7781199b1eb77e
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/test/MC/X86/elf-reloc-got.s
M llvm/test/MC/X86/gotpcrelx.s
M llvm/test/MC/X86/pltoff.s
Log Message:
-----------
[X86] Improve GOT/PLTOFF on local symbol tests
These fixups lead to relocations (not resolved).
Commit: bec038db5c93251140612700f1c5a2991d133654
https://github.com/llvm/llvm-project/commit/bec038db5c93251140612700f1c5a2991d133654
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Analysis/IVDescriptors.cpp
Log Message:
-----------
[IVDesc] Prefer empty m_Cmp on unused result (NFC) (#141071)
Commit: 5c084a162900f318def6ee70f2215999d1102c2c
https://github.com/llvm/llvm-project/commit/5c084a162900f318def6ee70f2215999d1102c2c
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/test/Transforms/InstCombine/vec_shuffle.ll
Log Message:
-----------
[InstCombine] Increase coverage of shuffle-gep (#139725)
There is an uncovered codepath in InstCombineVectorOps, where a new GEP
instruction is created via buildNew. Fix this coverage hole.
Commit: 28046438ed2f8c81d1dd5c49be0ea6c2bf169b64
https://github.com/llvm/llvm-project/commit/28046438ed2f8c81d1dd5c49be0ea6c2bf169b64
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/include/llvm/IR/Operator.h
Log Message:
-----------
[IR] Strip dead code post ConstExpr removals (NFC) (#139524)
Strip dead code in Operator.h related to the removal of several constant
expressions. Note that PossiblyExactOperator can no longer be a
ConstantExpr.
Commit: 0ee40ca5ccbf036179ee11530cc91de7d31131aa
https://github.com/llvm/llvm-project/commit/0ee40ca5ccbf036179ee11530cc91de7d31131aa
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.h
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CodeGenFunction.h
A clang/test/DebugInfo/KeyInstructions/agg.c
Log Message:
-----------
[KeyInstr][Clang] Aggregate init + copy (#134639)
This patch is part of a stack that teaches Clang to generate Key Instructions
metadata for C and C++.
RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668
The feature is only functional in LLVM if LLVM is built with CMake flag
LLVM_EXPERIMENTAL_KEY_INSTRUCTIONs. Eventually that flag will be removed.
Commit: b9361126488ff6749e23a997640f839dd20ac331
https://github.com/llvm/llvm-project/commit/b9361126488ff6749e23a997640f839dd20ac331
Author: Sumit Agarwal <sumitagarwal at microsoft.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILLegalizePass.cpp
M llvm/lib/Target/DirectX/DXILPrepare.cpp
R llvm/test/CodeGen/DirectX/fneg-conversion.ll
A llvm/test/CodeGen/DirectX/legalize-fneg.ll
Log Message:
-----------
[HLSL] Move FNeg legalization to the DXILLegalization pass (#140942)
Fixes #137685
Commit: 111ac6987642e9ff1b8ae18ab6e573e0cd3b7129
https://github.com/llvm/llvm-project/commit/111ac6987642e9ff1b8ae18ab6e573e0cd3b7129
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
M llvm/test/Transforms/AggressiveInstCombine/lower-table-based-cttz-basics.ll
M llvm/test/Transforms/AggressiveInstCombine/patterned-load.ll
Log Message:
-----------
[AggressiveInstCombine] Check GEP nusw, not inbounds (#139708)
Commit: 1aa746d300d72042aaa48e7982f76a823aed8cb3
https://github.com/llvm/llvm-project/commit/1aa746d300d72042aaa48e7982f76a823aed8cb3
Author: Jakob Widauer <jakob.widauer at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
M compiler-rt/lib/tsan/rtl/tsan_rtl.h
M compiler-rt/test/tsan/signal_recursive.cpp
Log Message:
-----------
[tsan] Fix nested signal handling (#138599)
This PR fixes the bug reported in #134358.
In the current implementation of the tsan posix interceptors, the signal
set does not get restored to the correct original set, if a signal
handler gets called, while already inside of a signal handler. This
leads to the wrong signal set being set for the thread in which the
signal handler was called.
To fix this I introduced a stack of `__sanitizer_sigset_t` to keep all
the correct old signal sets and restore them in the correct order.
There was also already an existing test that tested nested / recursive
signal handlers, but it was disabled.
I therefore reenabled it, made it more robust by waiting for the second
thread to have been properly started and added checks for the signal
sets.
This test then failed before the introduction of the interceptor fix and
didn't fail with the fix.
@dvyukov What are your thoughts?
Commit: 586e1dffd8d2fab0b4f386c51eff23f3640f45d9
https://github.com/llvm/llvm-project/commit/586e1dffd8d2fab0b4f386c51eff23f3640f45d9
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
Log Message:
-----------
[CIR] Implement `AnyScalarType` constraint (#141033)
This mirrors incubator changes from https://github.com/llvm/clangir/pull/1625
Commit: 68472a39a0fbf38f5da7bb4ebe43e2ca87ff8308
https://github.com/llvm/llvm-project/commit/68472a39a0fbf38f5da7bb4ebe43e2ca87ff8308
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/lib/MC/MCAsmBackend.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmBackend.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
Log Message:
-----------
[MC] Restore MCAsmBackend::shouldForceRelocation to false
For IsPCRel fixups, we had the `A->getKind() != MCSymbolRefExpr::VK_None`
condition to force relocations. The condition has then been changed to
`Target.getSpecifier()` (086af836889436baffc71c743c7c8259bad8ed60).
38c3ad36be1facbe6db2dede7e93c0f12fb4e1dc updated
shouldForceRelocation to test `Target.getSpecifier`.
It is not a good fit as many targets with %lo/%hi style specifiers
(SPARC, MIPS, PowerPC, RISC-V) do not force relocations for these
specifiers.
Revert the Target.getSpecifier implementation
(38c3ad36be1facbe6db2dede7e93c0f12fb4e1dc) and update
targets that need it (SystemZAsmBackend/X86AsmBackend) instead.
Targets need customization might define addReloc instead.
Note: The X86AsmBackend implementation is too conservative.
GNU Assembler doesn't emit a relocation for `call local at plt; local`
a3d39316764726ed9fd939550c7781199b1eb77e added missing coverage
for GOT/PLT related relocations.
Commit: 58ab005d8db2bb9fc54275f3398172e0691ecc91
https://github.com/llvm/llvm-project/commit/58ab005d8db2bb9fc54275f3398172e0691ecc91
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/docs/MLGO.rst
A llvm/include/llvm/Analysis/IR2Vec.h
M llvm/lib/Analysis/CMakeLists.txt
A llvm/lib/Analysis/IR2Vec.cpp
A llvm/lib/Analysis/models/seedEmbeddingVocab75D.json
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
A llvm/test/Analysis/IR2Vec/Inputs/dummy_3D_vocab.json
A llvm/test/Analysis/IR2Vec/Inputs/dummy_5D_vocab.json
A llvm/test/Analysis/IR2Vec/basic.ll
A llvm/test/Analysis/IR2Vec/if-else.ll
Log Message:
-----------
Adding IR2Vec as an analysis pass (#134004)
This PR introduces IR2Vec as an analysis pass. The changes include:
- Logic for generating Symbolic encodings.
- 75D learned vocabulary.
- lit tests.
Here is the link to the RFC -
https://discourse.llvm.org/t/rfc-enhancing-mlgo-inlining-with-ir2vec-embeddings
Acknowledgements: contributors -
https://github.com/IITH-Compilers/IR2Vec/graphs/contributors
---------
Co-authored-by: svkeerthy <venkatakeerthy at google.com>
Co-authored-by: Mircea Trofin <mtrofin at google.com>
Commit: dc68166912baf5120389304ba317f818f406b4bd
https://github.com/llvm/llvm-project/commit/dc68166912baf5120389304ba317f818f406b4bd
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
Log Message:
-----------
[CIR] Simplify error emission to return failures directly (#141032)
Mirrors incubator changes from https://github.com/llvm/clangir/pull/1634
Commit: 6fd3c20d25a88ccc3f2b5275e67de8b88ad5f873
https://github.com/llvm/llvm-project/commit/6fd3c20d25a88ccc3f2b5275e67de8b88ad5f873
Author: Alan Li <me at alanli.org>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/Transforms/Passes.td
M mlir/include/mlir/Dialect/MemRef/Transforms/Transforms.h
M mlir/lib/Dialect/MemRef/Transforms/CMakeLists.txt
A mlir/lib/Dialect/MemRef/Transforms/FlattenMemRefs.cpp
A mlir/test/Dialect/MemRef/flatten_memref.mlir
Log Message:
-----------
[MLIR] Add a utility pass to linearize `memref` (#136797)
To add a transformation that simplifies memory access patterns, this PR
adds a memref linearizer which is based on the GPU/DecomposeMemRefs
pass, with the following changes:
* support vector dialect ops
* instead of decompose memrefs to rank-0 memrefs, flatten higher-ranked
memrefs to rank-1.
Notes:
* After the linearization, a MemRef's offset is kept, so a
`memref<4x8xf32, strided<[8, 1], offset: 100>>` becomes `memref<32xf32,
strided<[1], offset: 100>>`.
* It also works with dynamic shapes and strides and offsets (see test
cases for details).
* The shape of the casted memref is computed as 1d, flattened.
Commit: 30a9d9d25be2a7688e835ee66d6a7061c9079976
https://github.com/llvm/llvm-project/commit/30a9d9d25be2a7688e835ee66d6a7061c9079976
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Analysis/IR2Vec.cpp
Log Message:
-----------
[Analysis] Fix warnings
This patch fixes:
llvm/lib/Analysis/IR2Vec.cpp:76:3: error: default label in switch
which covers all enumeration values
[-Werror,-Wcovered-switch-default]
llvm/lib/Analysis/IR2Vec.cpp:218:12: error: unused variable 'Dim'
[-Werror,-Wunused-variable]
Commit: 35434f2cd9b0920df93bda743eff99fbcf9de3b7
https://github.com/llvm/llvm-project/commit/35434f2cd9b0920df93bda743eff99fbcf9de3b7
Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/test/CIR/CodeGen/switch.cpp
A clang/test/CIR/Lowering/switch.cir
Log Message:
-----------
[CIR] Upstream support for lowering cir.switch to LLVM (#140425)
This PR adds support for lowering the `cir.switch` operation to LLVM. It
includes tests for lowering from `.cir` as well as end-to-end source
code tests.
Commit: 3eb9e7715ea520d56ab0d8009111fd08ab4d4b03
https://github.com/llvm/llvm-project/commit/3eb9e7715ea520d56ab0d8009111fd08ab4d4b03
Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/Dialect/Transforms/CIRSimplify.cpp
A clang/test/CIR/Transforms/switch-fold.cir
Log Message:
-----------
[CIR] Implement switch case simplify (#140649)
This PR introduces a new **CIR simplify for `switch` cases**, which
folds multiple **cascading `Equal` cases** (that contain only a
`YieldOp`) into a single `CaseOp` of kind `AnyOf`.
This logic is based on the suggestion from this discussion:
https://github.com/llvm/llvm-project/pull/138003#discussion_r2070564458
Commit: e72d8b25531cb5a4fd1e802bac8c9aa6efee0aa1
https://github.com/llvm/llvm-project/commit/e72d8b25531cb5a4fd1e802bac8c9aa6efee0aa1
Author: Alex Maclean <amaclean at nvidia.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
M clang/test/CodeGen/builtins-nvptx-ptx60.cu
M clang/test/CodeGen/builtins-nvptx.c
M clang/test/Headers/gpuintrin.c
M llvm/docs/NVPTXUsage.rst
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/test/Analysis/GlobalsModRef/functions_without_nosync.ll
M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
M llvm/test/CodeGen/NVPTX/barrier.ll
A llvm/test/CodeGen/NVPTX/named-barriers.ll
M llvm/test/CodeGen/NVPTX/noduplicate-syncthreads.ll
M llvm/test/Feature/intrinsic-noduplicate.ll
M llvm/test/Transforms/FunctionAttrs/convergent.ll
M llvm/test/Transforms/JumpThreading/thread-two-bbs-cuda.ll
M llvm/test/Transforms/OpenMP/barrier_removal.ll
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/test/Target/LLVMIR/Import/nvvmir.ll
M mlir/test/Target/LLVMIR/nvvmir.mlir
Log Message:
-----------
Revert "[NVPTX] Unify and extend barrier{.cta} intrinsic support (#140615)"
This reverts commit 735209c0688b10a66c24750422b35d8c2ad01bb5.
Commit: 8e3f44d68bf2f5318406dac73e86333d7c34976d
https://github.com/llvm/llvm-project/commit/8e3f44d68bf2f5318406dac73e86333d7c34976d
Author: jimingham <jingham at apple.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M lldb/source/Commands/CommandObjectThreadUtil.cpp
M lldb/test/API/functionalities/thread/num_threads/TestNumThreads.py
Log Message:
-----------
Fix a bug where using "thread backtrace unique" would switch you to (#140993)
always using the "frame-format-unique" even when you weren't doing the
unique backtrace mode.
Commit: a40762cd78d5d254d2298d74ead839732f4c8b7f
https://github.com/llvm/llvm-project/commit/a40762cd78d5d254d2298d74ead839732f4c8b7f
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
Log Message:
-----------
[PowerPC][NFC] clean up if-else block in PPCRegisterInfo.cpp (#140084)
Move all if-else conditions into a switch stmt for handling spills.
Commit: 827027b3a39d5c43f6fa74cf8761f974bf125611
https://github.com/llvm/llvm-project/commit/827027b3a39d5c43f6fa74cf8761f974bf125611
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/lib/Sema/SemaChecking.cpp
Log Message:
-----------
[clang] Move Diags.isIgnored() check below faster checks (#141084)
Because this check is relatively slow and the others aren't as much.
http://llvm-compile-time-tracker.com/compare.php?from=4a158f675be7fd1b3763bf39980d801db89744f8&to=886a8fab041ff7574d54cccddbc1a9b968c1bb58&stat=instructions:u
Commit: f07fc38a4ce306bce59371f36957f516b6d4e614
https://github.com/llvm/llvm-project/commit/f07fc38a4ce306bce59371f36957f516b6d4e614
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
Log Message:
-----------
[IndVars] Improve code; use SCEVPatternMatch (NFC) (#139533)
Commit: 00f40e3c1ac3163dd92ed7f5a0779775ed190596
https://github.com/llvm/llvm-project/commit/00f40e3c1ac3163dd92ed7f5a0779775ed190596
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/lib/Basic/Attributes.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
Log Message:
-----------
[Clang] Add missing macro undefs in AttributeSpellingList emitter (#141090)
Fixes
https://github.com/llvm/llvm-project/pull/140629#issuecomment-2901568992
---
This patch adds `#undef ATTR_NAME` and `#undef ATTR_SCOPE_NAME` to the
end of the generated `AttributeSpellingList.inc` file to prevent macro
redefinition warnings
Commit: eaf911bb98509e47b35376ffbc800dca6c803793
https://github.com/llvm/llvm-project/commit/eaf911bb98509e47b35376ffbc800dca6c803793
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
Log Message:
-----------
[InstCombine] Fix comment typo that incorrectly described fold (NFC) (#141105)
icmp ne X, (sext (icmp ne X, 0)) --> X != 0 && X != -1, not X != 0 && X
== -1, which would go to X == -1 anyway.
Commit: ced6076dfc39aa54f6d703982e6752e4be8370f5
https://github.com/llvm/llvm-project/commit/ced6076dfc39aa54f6d703982e6752e4be8370f5
Author: Viktoria Maximova <viktoria.maksimova at intel.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/docs/SPIRVUsage.rst
M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_int4/cooperative_matrix.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_int4/negative.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_int4/trivial.ll
Log Message:
-----------
[SPIR-V] Support `SPV_INTEL_int4` extension (#141031)
Adds support for native 4-bit type.
Spec:
https://github.com/KhronosGroup/SPIRV-Registry/blob/main/extensions/INTEL/SPV_INTEL_int4.asciidoc
Commit: 57e9097ad28916f43a7d9ee07c66a7cffd02b0d5
https://github.com/llvm/llvm-project/commit/57e9097ad28916f43a7d9ee07c66a7cffd02b0d5
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/clamp-modifier.ll
M llvm/test/CodeGen/AMDGPU/clamp.ll
A llvm/test/CodeGen/AMDGPU/fmed3.bf16.ll
M llvm/test/CodeGen/AMDGPU/fmed3.ll
M llvm/test/CodeGen/AMDGPU/minmax.ll
M llvm/test/CodeGen/AMDGPU/omod.ll
Log Message:
-----------
AMDGPU: Add baseline v_med3_f32 tests from minimumnum/maximumnum (#141047)
Commit: db0bac0ef2de92cf478977fbb5f48a0eabd8e9c2
https://github.com/llvm/llvm-project/commit/db0bac0ef2de92cf478977fbb5f48a0eabd8e9c2
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/clamp.ll
Log Message:
-----------
AMDGPU: Form v_med_f32 from minimumnum/maximumnum immediate pattern (#141048)
This makes little difference in the final output, as we manage to form this
after these are lowered to the _ieee operations. This does result in fewer steps
in the DAG, and helps prepare for changing the handling of minnum/maxnum.
Commit: 4a6b1fb9dac5bb3a065b1e6e5192c4c7964af7e0
https://github.com/llvm/llvm-project/commit/4a6b1fb9dac5bb3a065b1e6e5192c4c7964af7e0
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
Log Message:
-----------
[LAA] Remove dead SE arg from canCheckPtrAtRT (NFC).
Commit: 6a8dde04a07287f837bbabeb93e23e47af366d3d
https://github.com/llvm/llvm-project/commit/6a8dde04a07287f837bbabeb93e23e47af366d3d
Author: William Moses <gh at wsmoses.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/include/mlir/Analysis/SliceAnalysis.h
M mlir/include/mlir/Query/Matcher/SliceMatchers.h
M mlir/lib/Analysis/SliceAnalysis.cpp
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
M mlir/lib/Dialect/Linalg/Transforms/HoistPadding.cpp
M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/lib/Transforms/Utils/RegionUtils.cpp
M mlir/test/lib/Dialect/Affine/TestVectorizationUtils.cpp
M mlir/test/lib/IR/TestSlicing.cpp
Log Message:
-----------
[MLIR] Change getBackwardSlice to return a logicalresult rather than crash (#140961)
The current implementation of getBackwardSlice will crash if an
operation in the dependency chain is defined by an operation with
multiple regions or blocks. Crashing is bad (and forbids many analyses
from using getBackwardSlice, as well as causing existing users of
getBackwardSlice to fail for IR with this property).
This PR instead causes the analysis to return a failure, rather than
crash in the cases it cannot compute the full slice
---------
Co-authored-by: Oleksandr "Alex" Zinenko <git at ozinenko.com>
Commit: 2b8bff6f66fd90ac658d0ae0d7f9a83ffadfd77f
https://github.com/llvm/llvm-project/commit/2b8bff6f66fd90ac658d0ae0d7f9a83ffadfd77f
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/docs/MLGO.rst
M llvm/docs/Reference.rst
Log Message:
-----------
[doc][mlgo] Document the logger (serialization) and expose the doc (#141094)
Commit: 9e306ad4600c4d3392c194a8be88919ee758425c
https://github.com/llvm/llvm-project/commit/9e306ad4600c4d3392c194a8be88919ee758425c
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang-tools-extra/clang-apply-replacements/tool/ClangApplyReplacementsMain.cpp
M clang-tools-extra/clang-change-namespace/tool/ClangChangeNamespace.cpp
M clang-tools-extra/clang-include-fixer/tool/ClangIncludeFixer.cpp
M clang-tools-extra/clang-move/tool/ClangMove.cpp
M clang-tools-extra/clang-query/Query.cpp
M clang-tools-extra/clang-reorder-fields/tool/ClangReorderFields.cpp
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.h
M clang-tools-extra/clangd/Compiler.cpp
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang-tools-extra/clangd/ParsedAST.cpp
M clang-tools-extra/clangd/Preamble.cpp
M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/TweakTests.cpp
M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
M clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp
M clang-tools-extra/modularize/ModularizeUtilities.cpp
M clang-tools-extra/modularize/ModularizeUtilities.h
M clang-tools-extra/unittests/clang-apply-replacements/ApplyReplacementsTest.cpp
M clang-tools-extra/unittests/clang-tidy/ClangTidyOptionsTest.cpp
M clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h
M clang/include/clang/Basic/Diagnostic.h
M clang/include/clang/Basic/DiagnosticOptions.h
M clang/include/clang/Basic/SourceManager.h
M clang/include/clang/Frontend/ASTUnit.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/CompilerInvocation.h
M clang/include/clang/Frontend/DiagnosticRenderer.h
M clang/include/clang/Frontend/LogDiagnosticPrinter.h
M clang/include/clang/Frontend/SARIFDiagnostic.h
M clang/include/clang/Frontend/SARIFDiagnosticPrinter.h
M clang/include/clang/Frontend/SerializedDiagnosticPrinter.h
M clang/include/clang/Frontend/TextDiagnostic.h
M clang/include/clang/Frontend/TextDiagnosticPrinter.h
M clang/include/clang/Serialization/ASTReader.h
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/SourceManager.cpp
M clang/lib/CrossTU/CrossTranslationUnit.cpp
M clang/lib/Frontend/ASTMerge.cpp
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
M clang/lib/Frontend/DiagnosticRenderer.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/LogDiagnosticPrinter.cpp
M clang/lib/Frontend/SARIFDiagnostic.cpp
M clang/lib/Frontend/SARIFDiagnosticPrinter.cpp
M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
M clang/lib/Frontend/TextDiagnostic.cpp
M clang/lib/Frontend/TextDiagnosticPrinter.cpp
M clang/lib/Interpreter/CodeCompletion.cpp
M clang/lib/Interpreter/Interpreter.cpp
M clang/lib/Rewrite/HTMLRewrite.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Testing/TestAST.cpp
M clang/lib/Tooling/CompilationDatabase.cpp
M clang/lib/Tooling/Core/Replacement.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/Refactoring.cpp
M clang/lib/Tooling/Tooling.cpp
M clang/tools/c-index-test/core_main.cpp
M clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
M clang/tools/clang-format/ClangFormat.cpp
M clang/tools/clang-import-test/clang-import-test.cpp
M clang/tools/clang-installapi/ClangInstallAPI.cpp
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
M clang/tools/diagtool/ShowEnabledWarnings.cpp
M clang/tools/diagtool/TreeView.cpp
M clang/tools/driver/cc1_main.cpp
M clang/tools/driver/cc1as_main.cpp
M clang/tools/driver/cc1gen_reproducer_main.cpp
M clang/tools/driver/driver.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CIndexCodeCompletion.cpp
M clang/tools/libclang/CIndexDiagnostic.cpp
M clang/tools/libclang/Indexing.cpp
M clang/unittests/AST/ASTVectorTest.cpp
M clang/unittests/AST/CommentLexer.cpp
M clang/unittests/AST/CommentParser.cpp
M clang/unittests/AST/CommentTextTest.cpp
M clang/unittests/AST/ExternalASTSourceTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M clang/unittests/Analysis/MacroExpansionContextTest.cpp
M clang/unittests/Analysis/UnsafeBufferUsageTest.cpp
M clang/unittests/Basic/DiagnosticTest.cpp
M clang/unittests/Basic/SarifTest.cpp
M clang/unittests/Basic/SourceManagerTest.cpp
M clang/unittests/Driver/DXCModeTest.cpp
M clang/unittests/Driver/SanitizerArgsTest.cpp
M clang/unittests/Driver/SimpleDiagnosticConsumer.h
M clang/unittests/Driver/ToolChainTest.cpp
M clang/unittests/Frontend/ASTUnitTest.cpp
M clang/unittests/Frontend/CompilerInstanceTest.cpp
M clang/unittests/Frontend/CompilerInvocationTest.cpp
M clang/unittests/Frontend/OutputStreamTest.cpp
M clang/unittests/Frontend/PCHPreambleTest.cpp
M clang/unittests/Frontend/ReparseWorkingDirTest.cpp
M clang/unittests/Frontend/SearchPathTest.cpp
M clang/unittests/Frontend/TextDiagnosticTest.cpp
M clang/unittests/Frontend/UtilsTest.cpp
M clang/unittests/Interpreter/InterpreterTest.cpp
M clang/unittests/Lex/HeaderSearchTest.cpp
M clang/unittests/Lex/LexerTest.cpp
M clang/unittests/Lex/ModuleDeclStateTest.cpp
M clang/unittests/Lex/PPCallbacksTest.cpp
M clang/unittests/Lex/PPConditionalDirectiveRecordTest.cpp
M clang/unittests/Lex/PPDependencyDirectivesTest.cpp
M clang/unittests/Lex/PPMemoryAllocationsTest.cpp
M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
M clang/unittests/Sema/SemaNoloadLookupTest.cpp
M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
M clang/unittests/Serialization/LoadSpecLazilyTest.cpp
M clang/unittests/Serialization/ModuleCacheTest.cpp
M clang/unittests/Serialization/NoCommentsTest.cpp
M clang/unittests/Serialization/PreambleInNamedModulesTest.cpp
M clang/unittests/Serialization/VarDeclConstantInitTest.cpp
M clang/unittests/Support/TimeProfilerTest.cpp
M clang/unittests/Tooling/RewriterTestContext.h
M clang/unittests/Tooling/Syntax/TokensTest.cpp
M clang/unittests/Tooling/Syntax/TreeTestBase.cpp
M clang/unittests/Tooling/Syntax/TreeTestBase.h
M clang/unittests/Tooling/ToolingTest.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
M lldb/source/Plugins/Language/ClangCommon/ClangHighlighter.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
Log Message:
-----------
[clang] Remove intrusive reference count from `DiagnosticOptions` (#139584)
The `DiagnosticOptions` class is currently intrusively
reference-counted, which makes reasoning about its lifetime very
difficult in some cases. For example, `CompilerInvocation` owns the
`DiagnosticOptions` instance (wrapped in `llvm::IntrusiveRefCntPtr`) and
only exposes an accessor returning `DiagnosticOptions &`. One would
think this gives `CompilerInvocation` exclusive ownership of the object,
but that's not the case:
```c++
void shareOwnership(CompilerInvocation &CI) {
llvm::IntrusiveRefCntPtr<DiagnosticOptions> CoOwner = &CI.getDiagnosticOptions();
// ...
}
```
This is a perfectly valid pattern that is being actually used in the
codebase.
I would like to ensure the ownership of `DiagnosticOptions` by
`CompilerInvocation` is guaranteed to be exclusive. This can be
leveraged for a copy-on-write optimization later on. This PR changes
usages of `DiagnosticOptions` across `clang`, `clang-tools-extra` and
`lldb` to not be intrusively reference-counted.
Commit: 4bcea4e9ed4770ed181294c8850c9ce573e58fbd
https://github.com/llvm/llvm-project/commit/4bcea4e9ed4770ed181294c8850c9ce573e58fbd
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/include/mlir/Query/Matcher/SliceMatchers.h
M mlir/lib/Analysis/SliceAnalysis.cpp
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
M mlir/lib/Dialect/Linalg/Transforms/HoistPadding.cpp
M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/lib/Transforms/Utils/RegionUtils.cpp
M mlir/test/lib/Dialect/Affine/TestVectorizationUtils.cpp
M mlir/test/lib/IR/TestSlicing.cpp
Log Message:
-----------
[mlir] Fix unused-variable warnings
This patch fixes warnings of the form:
mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp:320:19: error:
unused variable 'result' [-Werror,-Wunused-variable]
Commit: d25f95fdbc5314f30618912e18f00ad4dd720fa0
https://github.com/llvm/llvm-project/commit/d25f95fdbc5314f30618912e18f00ad4dd720fa0
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/tools/clang-fuzzer/handle-cxx/handle_cxx.cpp
Log Message:
-----------
[clang] Fix handle_cxx.cpp after 9e306ad4
Commit: b544853fc335bdba6edbcde33e0c284306cd08eb
https://github.com/llvm/llvm-project/commit/b544853fc335bdba6edbcde33e0c284306cd08eb
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang-tools-extra/unittests/include/common/VirtualFileHelper.h
Log Message:
-----------
[clang] Fix VirtualFileHelper.h after 9e306ad4
Commit: e23a6921b47d2cfb4d27289149079e9d77aa0560
https://github.com/llvm/llvm-project/commit/e23a6921b47d2cfb4d27289149079e9d77aa0560
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
Log Message:
-----------
[LoopIdiom] Improve code; use SCEVPatternMatch (NFC) (#139540)
Commit: e2a885537f11f8d9ced1c80c2c90069ab5adeb1d
https://github.com/llvm/llvm-project/commit/e2a885537f11f8d9ced1c80c2c90069ab5adeb1d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang-tools-extra/clang-apply-replacements/tool/ClangApplyReplacementsMain.cpp
M clang-tools-extra/clang-change-namespace/tool/ClangChangeNamespace.cpp
M clang-tools-extra/clang-include-fixer/tool/ClangIncludeFixer.cpp
M clang-tools-extra/clang-move/tool/ClangMove.cpp
M clang-tools-extra/clang-query/Query.cpp
M clang-tools-extra/clang-reorder-fields/tool/ClangReorderFields.cpp
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.h
M clang-tools-extra/clangd/Compiler.cpp
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang-tools-extra/clangd/ParsedAST.cpp
M clang-tools-extra/clangd/Preamble.cpp
M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/TweakTests.cpp
M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
M clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp
M clang-tools-extra/modularize/ModularizeUtilities.cpp
M clang-tools-extra/modularize/ModularizeUtilities.h
M clang-tools-extra/unittests/clang-apply-replacements/ApplyReplacementsTest.cpp
M clang-tools-extra/unittests/clang-tidy/ClangTidyOptionsTest.cpp
M clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h
M clang/include/clang/Basic/Diagnostic.h
M clang/include/clang/Basic/DiagnosticOptions.h
M clang/include/clang/Basic/SourceManager.h
M clang/include/clang/Frontend/ASTUnit.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/CompilerInvocation.h
M clang/include/clang/Frontend/DiagnosticRenderer.h
M clang/include/clang/Frontend/LogDiagnosticPrinter.h
M clang/include/clang/Frontend/SARIFDiagnostic.h
M clang/include/clang/Frontend/SARIFDiagnosticPrinter.h
M clang/include/clang/Frontend/SerializedDiagnosticPrinter.h
M clang/include/clang/Frontend/TextDiagnostic.h
M clang/include/clang/Frontend/TextDiagnosticPrinter.h
M clang/include/clang/Serialization/ASTReader.h
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/SourceManager.cpp
M clang/lib/CrossTU/CrossTranslationUnit.cpp
M clang/lib/Frontend/ASTMerge.cpp
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
M clang/lib/Frontend/DiagnosticRenderer.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/LogDiagnosticPrinter.cpp
M clang/lib/Frontend/SARIFDiagnostic.cpp
M clang/lib/Frontend/SARIFDiagnosticPrinter.cpp
M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
M clang/lib/Frontend/TextDiagnostic.cpp
M clang/lib/Frontend/TextDiagnosticPrinter.cpp
M clang/lib/Interpreter/CodeCompletion.cpp
M clang/lib/Interpreter/Interpreter.cpp
M clang/lib/Rewrite/HTMLRewrite.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Testing/TestAST.cpp
M clang/lib/Tooling/CompilationDatabase.cpp
M clang/lib/Tooling/Core/Replacement.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/Refactoring.cpp
M clang/lib/Tooling/Tooling.cpp
M clang/tools/c-index-test/core_main.cpp
M clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
M clang/tools/clang-format/ClangFormat.cpp
M clang/tools/clang-import-test/clang-import-test.cpp
M clang/tools/clang-installapi/ClangInstallAPI.cpp
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
M clang/tools/diagtool/ShowEnabledWarnings.cpp
M clang/tools/diagtool/TreeView.cpp
M clang/tools/driver/cc1_main.cpp
M clang/tools/driver/cc1as_main.cpp
M clang/tools/driver/cc1gen_reproducer_main.cpp
M clang/tools/driver/driver.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CIndexCodeCompletion.cpp
M clang/tools/libclang/CIndexDiagnostic.cpp
M clang/tools/libclang/Indexing.cpp
M clang/unittests/AST/ASTVectorTest.cpp
M clang/unittests/AST/CommentLexer.cpp
M clang/unittests/AST/CommentParser.cpp
M clang/unittests/AST/CommentTextTest.cpp
M clang/unittests/AST/ExternalASTSourceTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M clang/unittests/Analysis/MacroExpansionContextTest.cpp
M clang/unittests/Analysis/UnsafeBufferUsageTest.cpp
M clang/unittests/Basic/DiagnosticTest.cpp
M clang/unittests/Basic/SarifTest.cpp
M clang/unittests/Basic/SourceManagerTest.cpp
M clang/unittests/Driver/DXCModeTest.cpp
M clang/unittests/Driver/SanitizerArgsTest.cpp
M clang/unittests/Driver/SimpleDiagnosticConsumer.h
M clang/unittests/Driver/ToolChainTest.cpp
M clang/unittests/Frontend/ASTUnitTest.cpp
M clang/unittests/Frontend/CompilerInstanceTest.cpp
M clang/unittests/Frontend/CompilerInvocationTest.cpp
M clang/unittests/Frontend/OutputStreamTest.cpp
M clang/unittests/Frontend/PCHPreambleTest.cpp
M clang/unittests/Frontend/ReparseWorkingDirTest.cpp
M clang/unittests/Frontend/SearchPathTest.cpp
M clang/unittests/Frontend/TextDiagnosticTest.cpp
M clang/unittests/Frontend/UtilsTest.cpp
M clang/unittests/Interpreter/InterpreterTest.cpp
M clang/unittests/Lex/HeaderSearchTest.cpp
M clang/unittests/Lex/LexerTest.cpp
M clang/unittests/Lex/ModuleDeclStateTest.cpp
M clang/unittests/Lex/PPCallbacksTest.cpp
M clang/unittests/Lex/PPConditionalDirectiveRecordTest.cpp
M clang/unittests/Lex/PPDependencyDirectivesTest.cpp
M clang/unittests/Lex/PPMemoryAllocationsTest.cpp
M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
M clang/unittests/Sema/SemaNoloadLookupTest.cpp
M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
M clang/unittests/Serialization/LoadSpecLazilyTest.cpp
M clang/unittests/Serialization/ModuleCacheTest.cpp
M clang/unittests/Serialization/NoCommentsTest.cpp
M clang/unittests/Serialization/PreambleInNamedModulesTest.cpp
M clang/unittests/Serialization/VarDeclConstantInitTest.cpp
M clang/unittests/Support/TimeProfilerTest.cpp
M clang/unittests/Tooling/RewriterTestContext.h
M clang/unittests/Tooling/Syntax/TokensTest.cpp
M clang/unittests/Tooling/Syntax/TreeTestBase.cpp
M clang/unittests/Tooling/Syntax/TreeTestBase.h
M clang/unittests/Tooling/ToolingTest.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
M lldb/source/Plugins/Language/ClangCommon/ClangHighlighter.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
Log Message:
-----------
Revert "[clang] Remove intrusive reference count from `DiagnosticOptions` (#139584)"
This reverts commit 9e306ad4600c4d3392c194a8be88919ee758425c.
Multiple builtbot failures have been reported:
https://github.com/llvm/llvm-project/pull/139584
Commit: 45f6036533bd30966f5e815568b792a7e293a0e8
https://github.com/llvm/llvm-project/commit/45f6036533bd30966f5e815568b792a7e293a0e8
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/include/llvm/ProfileData/DataAccessProf.h
M llvm/include/llvm/ProfileData/IndexedMemProfData.h
M llvm/include/llvm/ProfileData/InstrProfReader.h
M llvm/include/llvm/ProfileData/InstrProfWriter.h
M llvm/include/llvm/ProfileData/MemProfReader.h
M llvm/include/llvm/ProfileData/MemProfYAML.h
M llvm/lib/ProfileData/DataAccessProf.cpp
M llvm/lib/ProfileData/IndexedMemProfData.cpp
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/lib/ProfileData/InstrProfWriter.cpp
M llvm/lib/ProfileData/MemProfReader.cpp
M llvm/test/tools/llvm-profdata/memprof-yaml.test
M llvm/tools/llvm-profdata/llvm-profdata.cpp
M llvm/unittests/ProfileData/DataAccessProfTest.cpp
Log Message:
-----------
[StaticDataLayout][PGO]Implement reader and writer change for data access profiles (#139997)
https://github.com/llvm/llvm-project/pull/138170 introduces classes to
operate on data access profiles. This change supports the read and write
of `DataAccessProfData` in indexed format of MemProf (v4) as well as its
the text (yaml) format.
For indexed format:
* InstrProfWriter owns (by `std::unique_ptr<DataAccessProfData>`) the
data access profiles, and gives a non-owned copy when it calls
`writeMemProf`.
* MemProf v4 header has a new `uint64_t` to record the byte offset of
data access profiles. This `uint64_t` field is zero if data access
profile is not set (nullptr).
* MemProfReader reads the offset from v4 header and de-serializes
in-memory bytes into class `DataAccessProfData`.
For textual format:
* MemProfYAML.h adds the mapping for DAP class, and make DAP optional
for both read and write.
099a0fa (by @snehasish) introduces v4 which contains CalleeGuids in
CallSiteInfo, and this change changes the v4 format in place with data
access profiles. The current plan is to bump the version and enable v4
profiles with both features, assuming waiting for this change won't
delay the callsite change too long.
---------
Co-authored-by: Kazu Hirata <kazu at google.com>
Commit: 13e1a2cb2246dc5e9a4afcdacabed4d43154ec3f
https://github.com/llvm/llvm-project/commit/13e1a2cb2246dc5e9a4afcdacabed4d43154ec3f
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang-tools-extra/clang-apply-replacements/tool/ClangApplyReplacementsMain.cpp
M clang-tools-extra/clang-change-namespace/tool/ClangChangeNamespace.cpp
M clang-tools-extra/clang-include-fixer/tool/ClangIncludeFixer.cpp
M clang-tools-extra/clang-move/tool/ClangMove.cpp
M clang-tools-extra/clang-query/Query.cpp
M clang-tools-extra/clang-reorder-fields/tool/ClangReorderFields.cpp
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.h
M clang-tools-extra/clangd/Compiler.cpp
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang-tools-extra/clangd/ParsedAST.cpp
M clang-tools-extra/clangd/Preamble.cpp
M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/TweakTests.cpp
M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
M clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp
M clang-tools-extra/modularize/ModularizeUtilities.cpp
M clang-tools-extra/modularize/ModularizeUtilities.h
M clang-tools-extra/unittests/clang-apply-replacements/ApplyReplacementsTest.cpp
M clang-tools-extra/unittests/clang-tidy/ClangTidyOptionsTest.cpp
M clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h
M clang/include/clang/Basic/Diagnostic.h
M clang/include/clang/Basic/DiagnosticOptions.h
M clang/include/clang/Basic/SourceManager.h
M clang/include/clang/Frontend/ASTUnit.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/CompilerInvocation.h
M clang/include/clang/Frontend/DiagnosticRenderer.h
M clang/include/clang/Frontend/LogDiagnosticPrinter.h
M clang/include/clang/Frontend/SARIFDiagnostic.h
M clang/include/clang/Frontend/SARIFDiagnosticPrinter.h
M clang/include/clang/Frontend/SerializedDiagnosticPrinter.h
M clang/include/clang/Frontend/TextDiagnostic.h
M clang/include/clang/Frontend/TextDiagnosticPrinter.h
M clang/include/clang/Serialization/ASTReader.h
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/SourceManager.cpp
M clang/lib/CrossTU/CrossTranslationUnit.cpp
M clang/lib/Frontend/ASTMerge.cpp
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
M clang/lib/Frontend/DiagnosticRenderer.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/LogDiagnosticPrinter.cpp
M clang/lib/Frontend/SARIFDiagnostic.cpp
M clang/lib/Frontend/SARIFDiagnosticPrinter.cpp
M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
M clang/lib/Frontend/TextDiagnostic.cpp
M clang/lib/Frontend/TextDiagnosticPrinter.cpp
M clang/lib/Interpreter/CodeCompletion.cpp
M clang/lib/Interpreter/Interpreter.cpp
M clang/lib/Rewrite/HTMLRewrite.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Testing/TestAST.cpp
M clang/lib/Tooling/CompilationDatabase.cpp
M clang/lib/Tooling/Core/Replacement.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/Refactoring.cpp
M clang/lib/Tooling/Tooling.cpp
M clang/tools/c-index-test/core_main.cpp
M clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
M clang/tools/clang-format/ClangFormat.cpp
M clang/tools/clang-import-test/clang-import-test.cpp
M clang/tools/clang-installapi/ClangInstallAPI.cpp
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
M clang/tools/diagtool/ShowEnabledWarnings.cpp
M clang/tools/diagtool/TreeView.cpp
M clang/tools/driver/cc1_main.cpp
M clang/tools/driver/cc1as_main.cpp
M clang/tools/driver/cc1gen_reproducer_main.cpp
M clang/tools/driver/driver.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CIndexCodeCompletion.cpp
M clang/tools/libclang/CIndexDiagnostic.cpp
M clang/tools/libclang/Indexing.cpp
M clang/unittests/AST/ASTVectorTest.cpp
M clang/unittests/AST/CommentLexer.cpp
M clang/unittests/AST/CommentParser.cpp
M clang/unittests/AST/CommentTextTest.cpp
M clang/unittests/AST/ExternalASTSourceTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M clang/unittests/Analysis/MacroExpansionContextTest.cpp
M clang/unittests/Analysis/UnsafeBufferUsageTest.cpp
M clang/unittests/Basic/DiagnosticTest.cpp
M clang/unittests/Basic/SarifTest.cpp
M clang/unittests/Basic/SourceManagerTest.cpp
M clang/unittests/Driver/DXCModeTest.cpp
M clang/unittests/Driver/SanitizerArgsTest.cpp
M clang/unittests/Driver/SimpleDiagnosticConsumer.h
M clang/unittests/Driver/ToolChainTest.cpp
M clang/unittests/Frontend/ASTUnitTest.cpp
M clang/unittests/Frontend/CompilerInstanceTest.cpp
M clang/unittests/Frontend/CompilerInvocationTest.cpp
M clang/unittests/Frontend/OutputStreamTest.cpp
M clang/unittests/Frontend/PCHPreambleTest.cpp
M clang/unittests/Frontend/ReparseWorkingDirTest.cpp
M clang/unittests/Frontend/SearchPathTest.cpp
M clang/unittests/Frontend/TextDiagnosticTest.cpp
M clang/unittests/Frontend/UtilsTest.cpp
M clang/unittests/Interpreter/InterpreterTest.cpp
M clang/unittests/Lex/HeaderSearchTest.cpp
M clang/unittests/Lex/LexerTest.cpp
M clang/unittests/Lex/ModuleDeclStateTest.cpp
M clang/unittests/Lex/PPCallbacksTest.cpp
M clang/unittests/Lex/PPConditionalDirectiveRecordTest.cpp
M clang/unittests/Lex/PPDependencyDirectivesTest.cpp
M clang/unittests/Lex/PPMemoryAllocationsTest.cpp
M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
M clang/unittests/Sema/SemaNoloadLookupTest.cpp
M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
M clang/unittests/Serialization/LoadSpecLazilyTest.cpp
M clang/unittests/Serialization/ModuleCacheTest.cpp
M clang/unittests/Serialization/NoCommentsTest.cpp
M clang/unittests/Serialization/PreambleInNamedModulesTest.cpp
M clang/unittests/Serialization/VarDeclConstantInitTest.cpp
M clang/unittests/Support/TimeProfilerTest.cpp
M clang/unittests/Tooling/RewriterTestContext.h
M clang/unittests/Tooling/Syntax/TokensTest.cpp
M clang/unittests/Tooling/Syntax/TreeTestBase.cpp
M clang/unittests/Tooling/Syntax/TreeTestBase.h
M clang/unittests/Tooling/ToolingTest.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
M lldb/source/Plugins/Language/ClangCommon/ClangHighlighter.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
Log Message:
-----------
Reapply "[clang] Remove intrusive reference count from `DiagnosticOptions` (#139584)"
This reverts commit e2a885537f11f8d9ced1c80c2c90069ab5adeb1d. Build failures were fixed right away and reverting the original commit without the fixes breaks the build again.
Commit: 73fda8327539106d2644fd3c566e528564f74562
https://github.com/llvm/llvm-project/commit/73fda8327539106d2644fd3c566e528564f74562
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/lib/AST/ASTConcept.cpp
M clang/lib/Sema/SemaConcept.cpp
Log Message:
-----------
[Clang] Do not put the definition of concept nodes in the Sema library (#141104)
It is a layering violation
Commit: 48ace3f872e4d844471cd1e821502dece3fe2bc0
https://github.com/llvm/llvm-project/commit/48ace3f872e4d844471cd1e821502dece3fe2bc0
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
A lldb/Maintainers.md
R lldb/Maintainers.rst
Log Message:
-----------
[lldb] Convert Maintainers file from reStructuredText -> Markdown (#140958)
Convert the Maintainers file from reStructuredText to Markdown and
include links to GitHub and Discouse. The new layout improves
readability, makes it easier to navigate from GitHub and matches LLVM's
Maintainer's file [1].
[1] https://github.com/llvm/llvm-project/blob/main/llvm/Maintainers.md
Commit: f3eea1251148d09fe58bf6935dc4911ad4154122
https://github.com/llvm/llvm-project/commit/f3eea1251148d09fe58bf6935dc4911ad4154122
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/docs/NVPTXUsage.rst
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/test/CodeGen/NVPTX/bswap.ll
A llvm/test/CodeGen/NVPTX/prmt.ll
Log Message:
-----------
[NVPTX] Add intrinsic support for specialized prmt variants (#140951)
Commit: d6d52a4abc71c583bd5391c5c0b36483c65081fe
https://github.com/llvm/llvm-project/commit/d6d52a4abc71c583bd5391c5c0b36483c65081fe
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M flang/lib/Lower/ConvertVariable.cpp
M flang/test/Lower/CUDA/cuda-allocatable.cuf
M flang/test/Lower/CUDA/cuda-shared.cuf
Log Message:
-----------
[flang][cuda] Do not generate cuf.alloc/cuf.free in device context (#141117)
`cuf.alloc` and `cuf.free` are converted to `fir.alloca` or deleted when
in device context during the CUFOpConversion pass. Do not generate them
in lowering to avoid confusion.
Commit: ffa5ce04d0a5440f939881e0e329a173d486dd68
https://github.com/llvm/llvm-project/commit/ffa5ce04d0a5440f939881e0e329a173d486dd68
Author: Umang Yadav <29876643+umangyadav at users.noreply.github.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/Arith/Transforms/Passes.h
M mlir/include/mlir/Dialect/Arith/Transforms/Passes.td
M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
M mlir/test/Dialect/Arith/expand-ops.mlir
Log Message:
-----------
Add arith expansion of f8E8M0 type for extf/trunc ops (#140332)
F8E8M0 floating type is supposed to represent biased exponent bits of
F32 type in OCP Micro scaling floating point formats.
https://www.opencompute.org/documents/ocp-microscaling-formats-mx-v1-0-spec-final-pdf
This PR expands `arith.truncf` and `arith.extf` to support this
behavior.
For the `arith.truncf` thing to note here is that F8E8M0FNU type has one
NaN representation which is encoded as `0xFF`. Therefore alll kinds of
NaNs and +/-Inf in Float32Type would map to NaN in F8E8M0FNU. F8E8M0FNU
doesn't have a sign bit therefore it is a lossy and irreversible
downcast.
cc: @krzysz00 @MaheshRavishankar @Muzammiluddin-Syed-ECE
Commit: 656d9ba9346ad32aeffd5215c2bed43dfa710e16
https://github.com/llvm/llvm-project/commit/656d9ba9346ad32aeffd5215c2bed43dfa710e16
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang-tools-extra/clang-tidy/plugin/ClangTidyPlugin.cpp
M clang/include/clang/Frontend/LogDiagnosticPrinter.h
M clang/lib/Frontend/LogDiagnosticPrinter.cpp
Log Message:
-----------
[clang] Fix LogDiagnosticPrinter.h and ClangTidyPlugin.cpp after 9e306ad4 (#141131)
Commit: 45d8759cbed0f216786729718608a8be72a505c6
https://github.com/llvm/llvm-project/commit/45d8759cbed0f216786729718608a8be72a505c6
Author: Peiyong Lin <linpyong at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
M mlir/test/Conversion/MemRefToLLVM/convert-dynamic-memref-ops.mlir
M mlir/test/Conversion/MemRefToLLVM/convert-static-memref-ops.mlir
Log Message:
-----------
Emit nuw and nsw for mul and add when lowering to llvm.getelementptr (#140966)
Now that the GEP no wrap flags are known when lowering to
llvm.getelementptr, we can also emit nuw and nsw for the generated
llvm.mul and llvm.add when no unsigned wrap and no signed wrap are used
respectively.
fixes: iree-org/iree#20483
Signed-off-by: Lin, Peiyong <linpyong at gmail.com>
Commit: 3ea2cec7324e1e4569cd15b9e6cb1a4a6e8aa521
https://github.com/llvm/llvm-project/commit/3ea2cec7324e1e4569cd15b9e6cb1a4a6e8aa521
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M flang/include/flang/Frontend/CompilerInstance.h
M flang/include/flang/Frontend/CompilerInvocation.h
M flang/include/flang/Frontend/TextDiagnosticPrinter.h
M flang/lib/Frontend/CompilerInstance.cpp
M flang/lib/Frontend/TextDiagnosticPrinter.cpp
M flang/tools/flang-driver/driver.cpp
M flang/tools/flang-driver/fc1_main.cpp
M flang/unittests/Frontend/CodeGenActionTest.cpp
M flang/unittests/Frontend/CompilerInstanceTest.cpp
Log Message:
-----------
[flang] Fix build after 9e306ad4 (#141134)
Commit: 23f0fbf8fff563c77f770f83096b522c3c99a82d
https://github.com/llvm/llvm-project/commit/23f0fbf8fff563c77f770f83096b522c3c99a82d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Support/APInt.cpp
M llvm/unittests/ADT/APIntTest.cpp
Log Message:
-----------
[APInt] APInt::clearBitsSlowCase - fix cut+paste typo when merging lo/himasks (#141108)
Fixes #141098
Commit: 19a4e5202db40117265cfd704e7d1b7370045f17
https://github.com/llvm/llvm-project/commit/19a4e5202db40117265cfd704e7d1b7370045f17
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-dwarfdump.rst
M llvm/docs/CommandGuide/llvm-objcopy.rst
M llvm/docs/DirectX/DXContainer.rst
M llvm/docs/PDB/CodeViewTypes.rst
M llvm/docs/RISCV/RISCVVectorExtension.rst
M llvm/docs/SPIRVUsage.rst
M llvm/docs/ScudoHardenedAllocator.rst
M llvm/docs/SecurityTransparencyReports.rst
M llvm/docs/StackMaps.rst
M llvm/docs/TableGen/BackEnds.rst
Log Message:
-----------
[llvm] Fix typos in documentation (#141078)
Commit: 778801cc84399cf1cfe3d5534a911320ae9a7976
https://github.com/llvm/llvm-project/commit/778801cc84399cf1cfe3d5534a911320ae9a7976
Author: Maksim Panchenko <maks at fb.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
A bolt/test/X86/fix-branches-broken-cfg.s
Log Message:
-----------
[BOLT] Never call fixBranches() on non-simple functions (#141112)
We should never call fixBranches() on a function with invalid CFG. E.g.,
ValidateInternalCalls modifies CFG for its internal analysis purposes.
At the same time, it marks the function as non-simple with an assumption
that fixBranches() will never run on that function.
However, calculateEmittedSize() by default calls fixBranches() which can
lead to all sorts of issues, including assertions firing in
fixBranches().
The fix is to use the original size for non-simple functions in
calculateEmittedSize() since we are supposed to emit the function
unmodified. Additionally, add an assertion at the start of
fixBranches().
Commit: 9d3ce552618da9630c29c5ff5f034f56cc6fd747
https://github.com/llvm/llvm-project/commit/9d3ce552618da9630c29c5ff5f034f56cc6fd747
Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
Log Message:
-----------
[MC] Fix HIP buildbot errors after 68472a3 (#141138)
This fixes the errors on our HIP-Kokkos buildbot after
68472a39a0fbf38f5da7bb4ebe43e2ca87ff8308.
Commit: 0c42aeff9e2ec4aa41952ef24fd6b56789d3e404
https://github.com/llvm/llvm-project/commit/0c42aeff9e2ec4aa41952ef24fd6b56789d3e404
Author: Finn Plummer <finn.c.plum at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang/include/clang/Parse/ParseHLSLRootSignature.h
M clang/lib/Parse/ParseHLSLRootSignature.cpp
M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
M llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h
Log Message:
-----------
[HLSL][RootSignature] Add parsing of Register in params for RootDescriptors (#140148)
- defines the `parseRootDescriptorParams` infrastructure for parsing the
params of a `RootDescriptor`
- defines the register type to illustrate use
- add tests to demonstrate functionality
Part 2 of https://github.com/llvm/llvm-project/issues/126577
Commit: 97dee78eb364efab6ddb57bc6580c55971994f41
https://github.com/llvm/llvm-project/commit/97dee78eb364efab6ddb57bc6580c55971994f41
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M clang-tools-extra/clang-doc/HTMLMustacheGenerator.cpp
A clang-tools-extra/clang-doc/assets/comment-template.mustache
R clang-tools-extra/clang-doc/assets/comments-template.mustache
M clang-tools-extra/clang-doc/support/CMakeLists.txt
A clang-tools-extra/clang-doc/support/Utils.cpp
A clang-tools-extra/clang-doc/support/Utils.h
M clang-tools-extra/clang-doc/tool/CMakeLists.txt
M clang-tools-extra/unittests/clang-doc/CMakeLists.txt
M clang-tools-extra/unittests/clang-doc/HTMLMustacheGeneratorTest.cpp
A clang-tools-extra/unittests/clang-doc/config.h.cmake
Log Message:
-----------
[clang-doc] Add helpers for Template config (#138062)
This patch adds or fills in some helper functions related to template
setup when initializing the mustache backend. It was split from #133161.
Co-authored-by: Peter Chou <peter.chou at mail.utoronto.ca>
Commit: 5a1311d51631d5faf931df0c24fdbca65dd962f5
https://github.com/llvm/llvm-project/commit/5a1311d51631d5faf931df0c24fdbca65dd962f5
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
Log Message:
-----------
[LAA] Strip isNoWrapGEP: dead code (NFC) (#140308)
isNoWrap is the only caller of isNoWrapGEP, and it has subsuming check
on the GEP immediately after.
Commit: b81170ecffb5f53d52eab5d3424ba6f1c8ef97d3
https://github.com/llvm/llvm-project/commit/b81170ecffb5f53d52eab5d3424ba6f1c8ef97d3
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/include/llvm/Analysis/IVDescriptors.h
M llvm/lib/Analysis/IVDescriptors.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[IVDesc] Unify RecurKinds [I|F]FindLastIV (NFC) (#141082)
Commit: f398f2aadcc48849d491839a4e31bc3d4ad08758
https://github.com/llvm/llvm-project/commit/f398f2aadcc48849d491839a4e31bc3d4ad08758
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
M llvm/test/Transforms/InstCombine/gep-vector-indices.ll
M llvm/test/Transforms/InstCombine/vec_shuffle.ll
Log Message:
-----------
[InstCombine] Preserve GEP no-wrap flags (#141113)
Commit: a2ce5647200ad40ae356affd44db7d054de444d2
https://github.com/llvm/llvm-project/commit/a2ce5647200ad40ae356affd44db7d054de444d2
Author: Usama Hameed <u_hameed at apple.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M compiler-rt/cmake/Modules/BuiltinTests.cmake
M compiler-rt/cmake/builtin-config-ix.cmake
Log Message:
-----------
[compiler-rt][cmake] Test COMPILER_RT_HAS_AARCH64_SME with arm64 (#141115)
architecture only.
Apple configures CMake only once for compiler-rt, even when building for
multiple architectures. As a result, we need to explicitly test for
arm64 specific attributes by building for that architecture
Commit: 05494f3bad0322f2f0d2128857ba30479d97deb2
https://github.com/llvm/llvm-project/commit/05494f3bad0322f2f0d2128857ba30479d97deb2
Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
Date: 2025-05-22 (Thu, 22 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/lib/Conversion/NVGPUToNVVM/NVGPUToNVVM.cpp
M mlir/lib/Dialect/LLVMIR/IR/BasicPtxBuilderInterface.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/X86Vector/Transforms/AVXTranspose.cpp
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/test/Dialect/LLVMIR/invalid.mlir
M mlir/test/Target/LLVMIR/Import/instructions.ll
M mlir/test/Target/LLVMIR/llvmir.mlir
Log Message:
-----------
[MLIR][LLVM] Tail call support for inline asm op (#140826)
Commit: 610572e94f125971e70fc9c0da00b316fe3b82de
https://github.com/llvm/llvm-project/commit/610572e94f125971e70fc9c0da00b316fe3b82de
Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
Date: 2025-05-23 (Fri, 23 May 2025)
Changed paths:
M .ci/generate_test_report_lib.py
M .ci/generate_test_report_lib_test.py
M .ci/metrics/metrics.py
M .github/new-prs-labeler.yml
M .github/workflows/containers/github-action-ci-windows/Dockerfile
M .github/workflows/containers/github-action-ci/Dockerfile
M .github/workflows/libc-fullbuild-tests.yml
M .github/workflows/libcxx-build-and-test.yaml
M .github/workflows/premerge.yaml
M CONTRIBUTING.md
M bolt/CMakeLists.txt
M bolt/Maintainers.txt
M bolt/docs/BinaryAnalysis.md
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/DIEBuilder.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Passes/FrameAnalysis.h
M bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/include/bolt/Profile/DataReader.h
M bolt/include/bolt/Profile/Heatmap.h
M bolt/include/bolt/Profile/ProfileYAMLMapping.h
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Core/BinaryFunctionProfile.cpp
M bolt/lib/Core/BinarySection.cpp
M bolt/lib/Core/DIEBuilder.cpp
M bolt/lib/Core/DebugData.cpp
M bolt/lib/Core/DebugNames.cpp
M bolt/lib/Core/ParallelUtilities.cpp
M bolt/lib/Passes/AsmDump.cpp
M bolt/lib/Passes/BinaryPasses.cpp
M bolt/lib/Passes/FrameAnalysis.cpp
M bolt/lib/Passes/HFSort.cpp
M bolt/lib/Passes/LongJmp.cpp
M bolt/lib/Passes/MCF.cpp
M bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/lib/Passes/PatchEntries.cpp
M bolt/lib/Passes/PettisAndHansen.cpp
M bolt/lib/Passes/RetpolineInsertion.cpp
M bolt/lib/Passes/ShrinkWrapping.cpp
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Profile/DataReader.cpp
M bolt/lib/Profile/Heatmap.cpp
M bolt/lib/Profile/YAMLProfileReader.cpp
M bolt/lib/Profile/YAMLProfileWriter.cpp
M bolt/lib/Rewrite/BinaryPassManager.cpp
M bolt/lib/Rewrite/BuildIDRewriter.cpp
M bolt/lib/Rewrite/DWARFRewriter.cpp
M bolt/lib/Rewrite/MachORewriteInstance.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/RuntimeLibs/RuntimeLibrary.cpp
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
M bolt/lib/Target/AArch64/AArch64MCSymbolizer.h
M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
M bolt/lib/Target/X86/X86MCSymbolizer.h
M bolt/lib/Utils/CommandLineOpts.cpp
M bolt/test/AArch64/check-init-not-moved.s
M bolt/test/AArch64/lite-mode.s
M bolt/test/AArch64/pad-before-funcs.s
A bolt/test/AArch64/skip-non-vfuncptr-reloc-in-relative-vtable.s
M bolt/test/RISCV/reloc-jt.s
M bolt/test/X86/bolt-address-translation-yaml.test
M bolt/test/X86/branch-data.test
M bolt/test/X86/callcont-fallthru.s
M bolt/test/X86/double-rel-scan.s
M bolt/test/X86/double-rel.s
A bolt/test/X86/fix-branches-broken-cfg.s
A bolt/test/X86/heatmap-preagg.test
M bolt/test/X86/pre-aggregated-perf.test
M bolt/test/X86/reader-stale-yaml-std.test
M bolt/test/X86/reader-stale-yaml.test
M bolt/test/binary-analysis/AArch64/gs-pacret-autiasp.s
A bolt/test/binary-analysis/AArch64/gs-pauth-address-checks.s
M bolt/test/binary-analysis/AArch64/gs-pauth-address-materialization.s
M bolt/test/binary-analysis/AArch64/gs-pauth-calls.s
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
A bolt/test/binary-analysis/AArch64/gs-pauth-signing-oracles.s
M bolt/test/non-empty-debug-line.test
M bolt/test/perf2bolt/perf_test.test
M bolt/test/runtime/X86/fdata-escape-chars.ll
M bolt/tools/bat-dump/bat-dump.cpp
M bolt/tools/heatmap/heatmap.cpp
M bolt/tools/merge-fdata/merge-fdata.cpp
M bolt/unittests/Core/BinaryContext.cpp
M bolt/unittests/Core/MCPlusBuilder.cpp
M bolt/unittests/Core/MemoryMaps.cpp
M clang-tools-extra/Maintainers.txt
M clang-tools-extra/clang-apply-replacements/tool/ClangApplyReplacementsMain.cpp
M clang-tools-extra/clang-change-namespace/ChangeNamespace.cpp
M clang-tools-extra/clang-change-namespace/tool/ClangChangeNamespace.cpp
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/BitcodeWriter.cpp
M clang-tools-extra/clang-doc/CMakeLists.txt
M clang-tools-extra/clang-doc/Generators.cpp
M clang-tools-extra/clang-doc/Generators.h
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
A clang-tools-extra/clang-doc/HTMLMustacheGenerator.cpp
M clang-tools-extra/clang-doc/MDGenerator.cpp
M clang-tools-extra/clang-doc/Mapper.cpp
M clang-tools-extra/clang-doc/Mapper.h
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/clang-doc/Serialize.h
M clang-tools-extra/clang-doc/YAMLGenerator.cpp
A clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
A clang-tools-extra/clang-doc/assets/class-template.mustache
A clang-tools-extra/clang-doc/assets/comment-template.mustache
A clang-tools-extra/clang-doc/assets/enum-template.mustache
A clang-tools-extra/clang-doc/assets/function-template.mustache
A clang-tools-extra/clang-doc/assets/mustache-index.js
A clang-tools-extra/clang-doc/assets/namespace-template.mustache
A clang-tools-extra/clang-doc/assets/template.mustache
M clang-tools-extra/clang-doc/support/CMakeLists.txt
A clang-tools-extra/clang-doc/support/Utils.cpp
A clang-tools-extra/clang-doc/support/Utils.h
M clang-tools-extra/clang-doc/tool/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/IncludeFixer.cpp
M clang-tools-extra/clang-include-fixer/find-all-symbols/STLPostfixHeaderMap.cpp
M clang-tools-extra/clang-include-fixer/find-all-symbols/SymbolInfo.cpp
M clang-tools-extra/clang-include-fixer/tool/ClangIncludeFixer.cpp
M clang-tools-extra/clang-move/tool/ClangMove.cpp
M clang-tools-extra/clang-query/Query.cpp
M clang-tools-extra/clang-reorder-fields/tool/ClangReorderFields.cpp
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.h
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
A clang-tools-extra/clang-tidy/bugprone/MisleadingSetterOfReferenceCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/MisleadingSetterOfReferenceCheck.h
M clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.cpp
M clang-tools-extra/clang-tidy/concurrency/MtUnsafeCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
M clang-tools-extra/clang-tidy/llvm/HeaderGuardCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConfusableTable/BuildConfusableTable.cpp
M clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.cpp
M clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.h
M clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.cpp
M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.h
M clang-tools-extra/clang-tidy/plugin/ClangTidyPlugin.cpp
M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
M clang-tools-extra/clang-tidy/readability/MagicNumbersCheck.cpp
M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/CodeComplete.h
M clang-tools-extra/clangd/CompileCommands.cpp
M clang-tools-extra/clangd/Compiler.cpp
M clang-tools-extra/clangd/Config.h
M clang-tools-extra/clangd/ConfigCompile.cpp
M clang-tools-extra/clangd/ConfigFragment.h
M clang-tools-extra/clangd/ConfigYAML.cpp
M clang-tools-extra/clangd/Diagnostics.cpp
M clang-tools-extra/clangd/DumpAST.cpp
M clang-tools-extra/clangd/FindTarget.cpp
M clang-tools-extra/clangd/Hover.cpp
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang-tools-extra/clangd/ParsedAST.cpp
M clang-tools-extra/clangd/Preamble.cpp
M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
M clang-tools-extra/clangd/index/CanonicalIncludes.cpp
M clang-tools-extra/clangd/index/FileIndex.cpp
M clang-tools-extra/clangd/index/FileIndex.h
M clang-tools-extra/clangd/index/StdLib.cpp
M clang-tools-extra/clangd/index/YAMLSerialization.cpp
M clang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
M clang-tools-extra/clangd/index/remote/Index.proto
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
M clang-tools-extra/clangd/refactor/Rename.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
M clang-tools-extra/clangd/unittests/ConfigYAMLTests.cpp
M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
M clang-tools-extra/clangd/unittests/ProjectAwareIndexTests.cpp
M clang-tools-extra/clangd/unittests/SerializationTests.cpp
M clang-tools-extra/clangd/unittests/StdLibTests.cpp
M clang-tools-extra/clangd/unittests/TestTU.cpp
M clang-tools-extra/clangd/unittests/remote/MarshallingTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/TweakTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/boost/use-ranges.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/casting-through-void.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/crtp-constructor-accessibility.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/misleading-setter-of-reference.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/include-cleaner.rst
M clang-tools-extra/include-cleaner/lib/HTMLReport.cpp
M clang-tools-extra/include-cleaner/lib/Record.cpp
M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
M clang-tools-extra/include-cleaner/test/tool.cpp
M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
M clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp
M clang-tools-extra/modularize/Modularize.cpp
M clang-tools-extra/modularize/ModularizeUtilities.cpp
M clang-tools-extra/modularize/ModularizeUtilities.h
M clang-tools-extra/modularize/ModuleAssistant.cpp
M clang-tools-extra/modularize/PreprocessorTracker.cpp
M clang-tools-extra/pp-trace/PPCallbacksTracker.cpp
A clang-tools-extra/test/clang-doc/comments-in-macros.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/misleading-setter-of-reference.cpp
M clang-tools-extra/test/clang-tidy/checkers/concurrency/mt-unsafe-glibc.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner-wrong-config.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value.cpp
M clang-tools-extra/unittests/clang-apply-replacements/ApplyReplacementsTest.cpp
M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
M clang-tools-extra/unittests/clang-doc/CMakeLists.txt
M clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
A clang-tools-extra/unittests/clang-doc/HTMLMustacheGeneratorTest.cpp
M clang-tools-extra/unittests/clang-doc/MDGeneratorTest.cpp
M clang-tools-extra/unittests/clang-doc/MergeTest.cpp
M clang-tools-extra/unittests/clang-doc/SerializeTest.cpp
M clang-tools-extra/unittests/clang-doc/YAMLGeneratorTest.cpp
A clang-tools-extra/unittests/clang-doc/config.h.cmake
M clang-tools-extra/unittests/clang-tidy/ClangTidyOptionsTest.cpp
M clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h
M clang-tools-extra/unittests/clang-tidy/IncludeCleanerTest.cpp
M clang-tools-extra/unittests/include/common/VirtualFileHelper.h
M clang/CMakeLists.txt
M clang/Maintainers.rst
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_cursor.py
A clang/bindings/python/tests/cindex/test_lib.py
M clang/bindings/python/tests/cindex/test_location.py
M clang/bindings/python/tests/cindex/test_source_range.py
A clang/cmake/caches/Fuchsia-stage2-instrumented.cmake
M clang/cmake/caches/Fuchsia.cmake
M clang/docs/BoundsSafety.rst
M clang/docs/BoundsSafetyAdoptionGuide.rst
M clang/docs/CMakeLists.txt
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/CommandGuide/clang.rst
M clang/docs/DebuggingCoroutines.rst
M clang/docs/HIPSupport.rst
M clang/docs/InternalsManual.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/Modules.rst
M clang/docs/OpenMPSupport.rst
M clang/docs/PointerAuthentication.rst
M clang/docs/RealtimeSanitizer.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/SanitizerCoverage.rst
M clang/docs/StandardCPlusPlusModules.rst
M clang/docs/UsersManual.rst
M clang/docs/analyzer/checkers.rst
M clang/docs/analyzer/user-docs.rst
M clang/docs/analyzer/user-docs/CommandLineUsage.rst
M clang/docs/analyzer/user-docs/Installation.rst
A clang/docs/analyzer/user-docs/Options.rst.in
A clang/docs/tools/generate_analyzer_options_docs.py
M clang/include/clang-c/Index.h
M clang/include/clang/APINotes/Types.h
M clang/include/clang/AST/ASTConcept.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTDiagnostic.h
M clang/include/clang/AST/ASTStructuralEquivalence.h
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/AST/DeclFriend.h
M clang/include/clang/AST/DeclGroup.h
M clang/include/clang/AST/DeclObjC.h
M clang/include/clang/AST/DeclOpenACC.h
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/ExprCXX.h
M clang/include/clang/AST/ExprOpenMP.h
M clang/include/clang/AST/Mangle.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/PrettyPrinter.h
M clang/include/clang/AST/PropertiesBase.td
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/StmtOpenACC.h
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/AST/Type.h
M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
M clang/include/clang/Analysis/Analyses/ThreadSafety.h
M clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h
M clang/include/clang/Analysis/CFG.h
M clang/include/clang/Analysis/ProgramPoint.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/AttributeCommonInfo.h
M clang/include/clang/Basic/Attributes.h
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/include/clang/Basic/BuiltinsNVPTX.td
M clang/include/clang/Basic/BuiltinsRISCV.td
M clang/include/clang/Basic/BuiltinsRISCVXCV.td
M clang/include/clang/Basic/BuiltinsWebAssembly.def
M clang/include/clang/Basic/CMakeLists.txt
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Basic/DebugOptions.def
M clang/include/clang/Basic/DeclNodes.td
M clang/include/clang/Basic/Diagnostic.h
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/include/clang/Basic/DiagnosticCategories.h
M clang/include/clang/Basic/DiagnosticCommonKinds.td
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Basic/DiagnosticOptions.h
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/DiagnosticSerializationKinds.td
M clang/include/clang/Basic/FPOptions.def
M clang/include/clang/Basic/HeaderInclude.h
M clang/include/clang/Basic/IdentifierTable.h
M clang/include/clang/Basic/JsonSupport.h
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/LangOptions.h
M clang/include/clang/Basic/LangStandards.def
M clang/include/clang/Basic/Module.h
M clang/include/clang/Basic/OffloadArch.h
A clang/include/clang/Basic/SimpleTypoCorrection.h
M clang/include/clang/Basic/SourceManager.h
M clang/include/clang/Basic/Stack.h
M clang/include/clang/Basic/TargetBuiltins.h
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/TargetOSMacros.def
M clang/include/clang/Basic/TokenKinds.def
M clang/include/clang/Basic/arm_neon.td
M clang/include/clang/Basic/arm_sve.td
A clang/include/clang/Basic/riscv_andes_vector.td
M clang/include/clang/CIR/CIRToCIRPasses.h
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
A clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/include/clang/CIR/Dialect/IR/CMakeLists.txt
A clang/include/clang/CIR/Dialect/OpenACC/CIROpenACCTypeInterfaces.h
A clang/include/clang/CIR/Dialect/OpenACC/RegisterOpenACCExtensions.h
M clang/include/clang/CIR/Dialect/Passes.h
M clang/include/clang/CIR/Dialect/Passes.td
M clang/include/clang/CIR/Interfaces/CIROpInterfaces.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/Driver/Compilation.h
M clang/include/clang/Driver/Distro.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Driver/SanitizerArgs.h
M clang/include/clang/Driver/ToolChain.h
M clang/include/clang/Format/Format.h
M clang/include/clang/Frontend/ASTUnit.h
M clang/include/clang/Frontend/CommandLineSourceLoc.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/CompilerInvocation.h
M clang/include/clang/Frontend/DiagnosticRenderer.h
M clang/include/clang/Frontend/FrontendActions.h
M clang/include/clang/Frontend/LogDiagnosticPrinter.h
M clang/include/clang/Frontend/SARIFDiagnostic.h
M clang/include/clang/Frontend/SARIFDiagnosticPrinter.h
M clang/include/clang/Frontend/SerializedDiagnosticPrinter.h
M clang/include/clang/Frontend/TextDiagnostic.h
M clang/include/clang/Frontend/TextDiagnosticPrinter.h
M clang/include/clang/InstallAPI/DylibVerifier.h
M clang/include/clang/Interpreter/Interpreter.h
M clang/include/clang/Lex/HLSLRootSignatureTokenKinds.def
M clang/include/clang/Lex/HeaderSearch.h
M clang/include/clang/Lex/HeaderSearchOptions.h
M clang/include/clang/Lex/ModuleMap.h
M clang/include/clang/Lex/ModuleMapFile.h
M clang/include/clang/Parse/ParseHLSLRootSignature.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Parse/RAIIObjectsForParser.h
M clang/include/clang/Sema/EnterExpressionEvaluationContext.h
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Sema/ParsedTemplate.h
M clang/include/clang/Sema/RISCVIntrinsicManager.h
M clang/include/clang/Sema/ScopeInfo.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Sema/SemaRISCV.h
M clang/include/clang/Sema/SemaWasm.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/include/clang/Serialization/ContinuousRangeMap.h
M clang/include/clang/Serialization/ModuleCache.h
M clang/include/clang/StaticAnalyzer/Checkers/SValExplainer.h
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/FunctionSummary.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/LoopWidening.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
M clang/include/clang/Support/Compiler.h
M clang/include/clang/Support/RISCVVIntrinsicUtils.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
M clang/include/clang/Tooling/DependencyScanning/InProcessModuleCache.h
M clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
M clang/lib/APINotes/APINotesFormat.h
M clang/lib/APINotes/APINotesReader.cpp
M clang/lib/APINotes/APINotesWriter.cpp
M clang/lib/APINotes/APINotesYAMLCompiler.cpp
M clang/lib/AST/ASTConcept.cpp
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTDiagnostic.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ByteCode/BitcastBuffer.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/Disasm.cpp
M clang/lib/AST/ByteCode/DynamicAllocator.h
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/EvaluationResult.h
R clang/lib/AST/ByteCode/Frame.cpp
M clang/lib/AST/ByteCode/Frame.h
M clang/lib/AST/ByteCode/Function.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Pointer.h
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/ByteCode/Record.cpp
M clang/lib/AST/ByteCode/Record.h
M clang/lib/AST/CMakeLists.txt
M clang/lib/AST/CommentSema.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclBase.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/DeclGroup.cpp
M clang/lib/AST/DeclObjC.cpp
M clang/lib/AST/DeclPrinter.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ExternalASTSource.cpp
M clang/lib/AST/JSONNodeDumper.cpp
M clang/lib/AST/Mangle.cpp
M clang/lib/AST/ODRDiagsEmitter.cpp
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/StmtOpenACC.cpp
M clang/lib/AST/StmtOpenMP.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/VTableBuilder.cpp
M clang/lib/Analysis/CFG.cpp
M clang/lib/Analysis/ThreadSafety.cpp
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/Basic/Attributes.cpp
M clang/lib/Basic/CMakeLists.txt
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/DiagnosticIDs.cpp
M clang/lib/Basic/IdentifierTable.cpp
M clang/lib/Basic/LangOptions.cpp
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/Basic/ProfileList.cpp
M clang/lib/Basic/SanitizerSpecialCaseList.cpp
A clang/lib/Basic/SimpleTypoCorrection.cpp
M clang/lib/Basic/SourceManager.cpp
M clang/lib/Basic/Stack.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/lib/Basic/Targets/AMDGPU.h
M clang/lib/Basic/Targets/NVPTX.cpp
M clang/lib/Basic/Targets/NVPTX.h
M clang/lib/Basic/Targets/PPC.cpp
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/Basic/Targets/SystemZ.cpp
M clang/lib/Basic/Targets/X86.h
M clang/lib/CIR/CodeGen/ABIInfo.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
A clang/lib/CIR/CodeGen/CIRGenCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
A clang/lib/CIR/CodeGen/CIRGenCXXExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.h
M clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
A clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
R clang/lib/CIR/CodeGen/CIRGenOpenACCClause.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACCLoop.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.h
M clang/lib/CIR/CodeGen/CIRGenValue.h
M clang/lib/CIR/CodeGen/CIRGenerator.cpp
M clang/lib/CIR/CodeGen/CMakeLists.txt
M clang/lib/CIR/CodeGen/TargetInfo.cpp
M clang/lib/CIR/Dialect/CMakeLists.txt
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/IR/CMakeLists.txt
A clang/lib/CIR/Dialect/OpenACC/CIROpenACCTypeInterfaces.cpp
A clang/lib/CIR/Dialect/OpenACC/CMakeLists.txt
A clang/lib/CIR/Dialect/OpenACC/RegisterOpenACCExtensions.cpp
M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
A clang/lib/CIR/Dialect/Transforms/CIRSimplify.cpp
M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
M clang/lib/CIR/Lowering/CIRPasses.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGAtomic.cpp
M clang/lib/CodeGen/CGBlocks.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CGObjC.cpp
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGPointerAuth.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CMakeLists.txt
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/CodeGen/TargetBuiltins/WebAssembly.cpp
M clang/lib/CodeGen/TargetInfo.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/lib/CodeGen/Targets/AMDGPU.cpp
M clang/lib/CrossTU/CrossTranslationUnit.cpp
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Distro.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/Job.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/AIX.h
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/Arch/ARM.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
A clang/lib/Driver/ToolChains/Cygwin.cpp
A clang/lib/Driver/ToolChains/Cygwin.h
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/lib/Driver/ToolChains/HLSL.cpp
M clang/lib/Driver/ToolChains/Haiku.cpp
M clang/lib/Driver/ToolChains/MSVC.cpp
M clang/lib/Driver/ToolChains/OHOS.cpp
M clang/lib/Driver/ToolChains/Solaris.cpp
M clang/lib/Driver/ToolChains/UEFI.cpp
M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/DefinitionBlockSeparator.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/FormatTokenLexer.h
M clang/lib/Format/MacroCallReconstructor.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/lib/Format/UsingDeclarationsSorter.cpp
M clang/lib/Frontend/ASTMerge.cpp
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
M clang/lib/Frontend/DiagnosticRenderer.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/HeaderIncludeGen.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Frontend/LogDiagnosticPrinter.cpp
M clang/lib/Frontend/PrecompiledPreamble.cpp
M clang/lib/Frontend/PrintPreprocessedOutput.cpp
M clang/lib/Frontend/Rewrite/FrontendActions.cpp
M clang/lib/Frontend/SARIFDiagnostic.cpp
M clang/lib/Frontend/SARIFDiagnosticPrinter.cpp
M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
M clang/lib/Frontend/TextDiagnostic.cpp
M clang/lib/Frontend/TextDiagnosticPrinter.cpp
M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
M clang/lib/Headers/CMakeLists.txt
M clang/lib/Headers/__clang_hip_cmath.h
A clang/lib/Headers/andes_vector.h
M clang/lib/Headers/cuda_wrappers/cmath
M clang/lib/Headers/float.h
M clang/lib/Headers/gpuintrin.h
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Headers/hlsl/hlsl_compat_overloads.h
M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Headers/opencl-c-base.h
M clang/lib/Headers/riscv_corev_alu.h
M clang/lib/Index/IndexingContext.h
M clang/lib/InstallAPI/DiagnosticBuilderWrappers.cpp
M clang/lib/InstallAPI/DiagnosticBuilderWrappers.h
M clang/lib/InstallAPI/DylibVerifier.cpp
M clang/lib/Interpreter/CodeCompletion.cpp
M clang/lib/Interpreter/DeviceOffload.cpp
M clang/lib/Interpreter/DeviceOffload.h
M clang/lib/Interpreter/Interpreter.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Lex/InitHeaderSearch.cpp
M clang/lib/Lex/LexHLSLRootSignature.cpp
M clang/lib/Lex/LiteralSupport.cpp
M clang/lib/Lex/MacroArgs.cpp
M clang/lib/Lex/ModuleMap.cpp
M clang/lib/Lex/ModuleMapFile.cpp
M clang/lib/Lex/PPDirectives.cpp
M clang/lib/Lex/PPExpressions.cpp
M clang/lib/Lex/PPLexerChange.cpp
M clang/lib/Lex/Pragma.cpp
M clang/lib/Lex/Preprocessor.cpp
M clang/lib/Parse/ParseAST.cpp
M clang/lib/Parse/ParseCXXInlineMethods.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/ParseHLSL.cpp
M clang/lib/Parse/ParseHLSLRootSignature.cpp
M clang/lib/Parse/ParseInit.cpp
M clang/lib/Parse/ParseObjc.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Parse/ParsePragma.cpp
M clang/lib/Parse/ParseStmt.cpp
M clang/lib/Parse/ParseStmtAsm.cpp
M clang/lib/Parse/ParseTemplate.cpp
M clang/lib/Parse/ParseTentative.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/Rewrite/HTMLRewrite.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/JumpDiagnostics.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaAMDGPU.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaAccess.cpp
M clang/lib/Sema/SemaAvailability.cpp
M clang/lib/Sema/SemaCUDA.cpp
M clang/lib/Sema/SemaCXXScopeSpec.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaCoroutine.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaDeclObjC.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaExprObjC.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaModule.cpp
M clang/lib/Sema/SemaObjC.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOpenACCClause.cpp
M clang/lib/Sema/SemaOpenACCClauseAppertainment.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaPPC.cpp
M clang/lib/Sema/SemaPseudoObject.cpp
M clang/lib/Sema/SemaRISCV.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaTemplateVariadic.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/SemaWasm.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTCommon.cpp
M clang/lib/Serialization/ASTCommon.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ModuleCache.cpp
M clang/lib/Serialization/ModuleManager.cpp
M clang/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/CheckPlacementNew.cpp
M clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.h
M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/Iterator.cpp
M clang/lib/StaticAnalyzer/Checkers/Iterator.h
M clang/lib/StaticAnalyzer/Checkers/IteratorModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/STLAlgorithmModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObject.h
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLambdaCapturesChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
M clang/lib/StaticAnalyzer/Core/CheckerContext.cpp
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp
M clang/lib/StaticAnalyzer/Core/LoopWidening.cpp
M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
M clang/lib/StaticAnalyzer/Core/SVals.cpp
M clang/lib/StaticAnalyzer/Core/SimpleConstraintManager.cpp
M clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
M clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
M clang/lib/StaticAnalyzer/Frontend/ModelInjector.cpp
M clang/lib/Support/RISCVVIntrinsicUtils.cpp
M clang/lib/Testing/CommandLineArgs.cpp
M clang/lib/Testing/TestAST.cpp
M clang/lib/Tooling/CompilationDatabase.cpp
M clang/lib/Tooling/Core/Replacement.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
M clang/lib/Tooling/Inclusions/Stdlib/CSpecialSymbolMap.inc
M clang/lib/Tooling/Inclusions/Stdlib/StdSpecialSymbolMap.inc
M clang/lib/Tooling/Refactoring.cpp
M clang/lib/Tooling/Tooling.cpp
M clang/lib/Tooling/Transformer/RangeSelector.cpp
M clang/test/APINotes/Inputs/Headers/SwiftImportAs.apinotes
M clang/test/APINotes/Inputs/Headers/SwiftImportAs.h
M clang/test/APINotes/swift-import-as.cpp
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/AST/ByteCode/constexpr-frame-describe.cpp
R clang/test/AST/ByteCode/constexpr-subobj-initialization.cpp
M clang/test/AST/ByteCode/cxx11.cpp
M clang/test/AST/ByteCode/cxx17.cpp
M clang/test/AST/ByteCode/cxx20.cpp
M clang/test/AST/ByteCode/cxx23.cpp
A clang/test/AST/ByteCode/dynalloc-limits.cpp
M clang/test/AST/ByteCode/lifetimes.cpp
A clang/test/AST/ByteCode/lifetimes26.cpp
M clang/test/AST/ByteCode/records.cpp
M clang/test/AST/ByteCode/unions.cpp
M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
A clang/test/AST/HLSL/RootSignatures-AST.hlsl
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
M clang/test/AST/HLSL/ast-dump-comment-cbuffer.hlsl
M clang/test/AST/HLSL/packoffset.hlsl
M clang/test/AST/HLSL/pch_hlsl_buffer.hlsl
M clang/test/AST/HLSL/resource_binding_attr.hlsl
A clang/test/AST/ast-crash-dump-mangled-name-json.m
M clang/test/AST/ast-dump-openmp-begin-declare-variant_6.c
M clang/test/AST/ast-dump-openmp-begin-declare-variant_7.c
A clang/test/AST/ast-dump-riscv-attributes.cpp
M clang/test/AST/ast-dump-template-json-win32-mangler-crash.cpp
M clang/test/AST/ast-dump-using-template.cpp
M clang/test/ASTMerge/struct/test.c
M clang/test/Analysis/Checkers/WebKit/call-args-checked-ptr.cpp
M clang/test/Analysis/Checkers/WebKit/call-args.cpp
M clang/test/Analysis/Checkers/WebKit/unchecked-members.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-members.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
M clang/test/Analysis/Checkers/WebKit/unretained-members-arc.mm
M clang/test/Analysis/Checkers/WebKit/unretained-members.mm
A clang/test/Analysis/PR57270.cpp
M clang/test/Analysis/analyzer-config.c
M clang/test/Analysis/builtin_bitcast.cpp
M clang/test/Analysis/container-modeling.cpp
M clang/test/Analysis/dump_egraph.cpp
M clang/test/Analysis/exercise-ps.c
M clang/test/Analysis/explain-svals.cpp
M clang/test/Analysis/explain-svals.m
M clang/test/Analysis/exploration_order/noexprcrash.c
A clang/test/Analysis/ftime-trace-no-init.cpp
A clang/test/Analysis/generate_analyzer_options_docs.test
A clang/test/Analysis/issue-137252.cpp
A clang/test/Analysis/loop-based-inlining-prevention.c
M clang/test/Analysis/loop-unrolling.cpp
A clang/test/Analysis/thread-safety-handle-parenthesis.cpp
M clang/test/C/C23/n3030.c
A clang/test/C/C23/n3037.c
A clang/test/C/C23/n3037_1.c
M clang/test/C/C2y/n3353.c
M clang/test/C/C2y/n3369.c
M clang/test/C/drs/dr0xx.c
M clang/test/C/drs/dr1xx.c
M clang/test/CIR/CodeGen/basic.c
M clang/test/CIR/CodeGen/basic.cpp
M clang/test/CIR/CodeGen/call.cpp
M clang/test/CIR/CodeGen/cast.cpp
A clang/test/CIR/CodeGen/compound_assign.cpp
A clang/test/CIR/CodeGen/forrange.cpp
M clang/test/CIR/CodeGen/loop.cpp
A clang/test/CIR/CodeGen/member-functions.cpp
A clang/test/CIR/CodeGen/nonzeroinit-struct.cpp
A clang/test/CIR/CodeGen/pointers.cpp
A clang/test/CIR/CodeGen/string-literals.c
M clang/test/CIR/CodeGen/struct.c
M clang/test/CIR/CodeGen/struct.cpp
A clang/test/CIR/CodeGen/switch.cpp
A clang/test/CIR/CodeGen/switch_flat_op.cpp
M clang/test/CIR/CodeGen/union.c
A clang/test/CIR/CodeGen/union.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
A clang/test/CIR/CodeGenOpenACC/combined-copy.c
A clang/test/CIR/CodeGenOpenACC/combined.cpp
A clang/test/CIR/CodeGenOpenACC/compute-copy.c
M clang/test/CIR/CodeGenOpenACC/data.c
M clang/test/CIR/CodeGenOpenACC/kernels.c
A clang/test/CIR/CodeGenOpenACC/loop.cpp
M clang/test/CIR/CodeGenOpenACC/openacc-not-implemented.cpp
M clang/test/CIR/CodeGenOpenACC/parallel.c
M clang/test/CIR/CodeGenOpenACC/serial.c
M clang/test/CIR/CodeGenOpenACC/wait.c
M clang/test/CIR/IR/call.cir
M clang/test/CIR/IR/invalid-call.cir
A clang/test/CIR/IR/invalid-long-double.cir
A clang/test/CIR/IR/invalid-vector-create-wrong-size.cir
A clang/test/CIR/IR/invalid-vector-create-wrong-type.cir
A clang/test/CIR/IR/switch-flat.cir
A clang/test/CIR/IR/switch.cir
A clang/test/CIR/IR/ternary.cir
M clang/test/CIR/IR/vector.cir
A clang/test/CIR/Lowering/switch.cir
A clang/test/CIR/Lowering/ternary.cir
A clang/test/CIR/Transforms/select.cir
A clang/test/CIR/Transforms/switch-fold.cir
A clang/test/CIR/Transforms/switch.cir
A clang/test/CIR/Transforms/ternary-fold.cir
A clang/test/CIR/Transforms/ternary.cir
A clang/test/CIR/Transforms/vector-extract-fold.cir
M clang/test/CMakeLists.txt
M clang/test/CXX/basic/basic.lookup/basic.lookup.classref/p1.cpp
M clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.deprecated/p1.cpp
M clang/test/CXX/drs/cwg1xx.cpp
M clang/test/CXX/drs/cwg2xx.cpp
A clang/test/CXX/drs/cwg30xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/test/CXX/drs/cwg5xx.cpp
M clang/test/CXX/expr/expr.const/p2-0x.cpp
M clang/test/CXX/module/module.interface/p3.cpp
M clang/test/CXX/stmt.stmt/stmt.select/stmt.if/p2.cpp
M clang/test/CXX/temp/temp.res/temp.dep/temp.dep.type/p1.cpp
A clang/test/ClangScanDeps/export.c
M clang/test/ClangScanDeps/modules-canononical-module-map-case.c
A clang/test/ClangScanDeps/modules-pch-common-stale.c
M clang/test/ClangScanDeps/optimize-vfs-pch.m
A clang/test/CodeCompletion/source-loc-zero.cpp
M clang/test/CodeGen/AArch64/cpu-supports-target.c
M clang/test/CodeGen/AArch64/fp8-init-list.c
A clang/test/CodeGen/AArch64/fp8-intrinsics/acle_neon_fp8_untyped.c
M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_sve2_fp8_fdot.c
M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_sve2_fp8_fmla.c
A clang/test/CodeGen/AArch64/struct-coerce-using-ptr.cpp
M clang/test/CodeGen/AArch64/sve-vector-bits-codegen.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bdep.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bext.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bgrp.c
M clang/test/CodeGen/AArch64/targetattr.c
M clang/test/CodeGen/PowerPC/ppc-tmmintrin.c
M clang/test/CodeGen/RISCV/attr-riscv-rvv-vector-bits-less-8-call.c
M clang/test/CodeGen/RISCV/attr-riscv-rvv-vector-bits-less-8-cast.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-bitcast-less-8.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-cast.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-codegen.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-globals.c
M clang/test/CodeGen/RISCV/riscv-v-debuginfo.c
M clang/test/CodeGen/RISCV/riscv-xcvalu-c-api.c
M clang/test/CodeGen/RISCV/riscv-xcvalu.c
A clang/test/CodeGen/RISCV/riscv-zihintpause.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/nds_vfpmadb.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/nds_vfpmadt.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/nds_vfpmadb.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/nds_vfpmadt.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/nds_vfpmadb.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/nds_vfpmadt.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/nds_vfpmadb.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/nds_vfpmadt.c
M clang/test/CodeGen/X86/avx-builtins.c
M clang/test/CodeGen/X86/avx512-error.c
M clang/test/CodeGen/arm-mfp8.c
A clang/test/CodeGen/attr-counted-by-for-pointers.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/bounds-checking-debuginfo.c
M clang/test/CodeGen/builtins-arm64.c
M clang/test/CodeGen/builtins-nvptx.c
M clang/test/CodeGen/builtins-wasm.c
M clang/test/CodeGen/catch-nullptr-and-nonzero-offset.c
A clang/test/CodeGen/cfi-check-fail-debuginfo.c
A clang/test/CodeGen/cfi-icall-generalize-debuginfo.c
A clang/test/CodeGen/cfi-icall-normalize2-debuginfo.c
M clang/test/CodeGen/dllexport.c
M clang/test/CodeGen/dllimport.c
M clang/test/CodeGen/dso-local-executable.c
A clang/test/CodeGen/epilog-unwind.c
A clang/test/CodeGen/glibc_ptr_align.c
A clang/test/CodeGen/loader-replaceable-function.cpp
A clang/test/CodeGen/logb_scalbn.c
M clang/test/CodeGen/ms_abi.c
M clang/test/CodeGen/paren-list-agg-init.cpp
M clang/test/CodeGen/profile-filter.c
A clang/test/CodeGen/ptrauth-restricted-intptr-qualifier.c
M clang/test/CodeGen/sysv_abi.c
M clang/test/CodeGen/target-avx-abi-diag.c
M clang/test/CodeGen/target-data.c
A clang/test/CodeGen/ubsan-src-ignorelist-category.test
A clang/test/CodeGen/unused_nested_enump.cpp
M clang/test/CodeGenCUDA/bf16.cu
M clang/test/CodeGenCUDA/fp-contract.cu
M clang/test/CodeGenCUDA/memcpy-libcall.cu
M clang/test/CodeGenCXX/amdgcn-automatic-variable.cpp
M clang/test/CodeGenCXX/arm64-generated-fn-attr.cpp
M clang/test/CodeGenCXX/attr-x86-no_caller_saved_registers.cpp
M clang/test/CodeGenCXX/cxx1y-variable-template.cpp
M clang/test/CodeGenCXX/cxx1z-inline-variables.cpp
A clang/test/CodeGenCXX/cxx2c-trivially-relocatable.cpp
M clang/test/CodeGenCXX/debug-info-codeview-unnamed.cpp
M clang/test/CodeGenCXX/default_calling_conv.cpp
M clang/test/CodeGenCXX/dllexport-members.cpp
M clang/test/CodeGenCXX/dllexport-missing-key.cpp
M clang/test/CodeGenCXX/dllexport.cpp
M clang/test/CodeGenCXX/dllimport-members.cpp
M clang/test/CodeGenCXX/dllimport-missing-key.cpp
M clang/test/CodeGenCXX/dllimport-rtti.cpp
M clang/test/CodeGenCXX/dllimport.cpp
M clang/test/CodeGenCXX/dso-local-executable.cpp
M clang/test/CodeGenCXX/ext-int.cpp
M clang/test/CodeGenCXX/mangle-ms.cpp
M clang/test/CodeGenCXX/matrix-vector-bit-int.cpp
M clang/test/CodeGenCXX/microsoft-abi-throw.cpp
M clang/test/CodeGenCXX/mingw-template-dllexport.cpp
M clang/test/CodeGenCXX/rtti-mingw64.cpp
M clang/test/CodeGenCXX/virt-dtor-key.cpp
M clang/test/CodeGenCXX/vtable-key-function-ios.cpp
A clang/test/CodeGenHIP/amdgpu-load-to-lds.hip
M clang/test/CodeGenHLSL/BasicFeatures/InitLists.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorFunction.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorLib.hlsl
A clang/test/CodeGenHLSL/RootSignature.hlsl
M clang/test/CodeGenHLSL/builtins/ByteAddressBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor-opt.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor.hlsl
M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-ps.hlsl
M clang/test/CodeGenHLSL/builtins/clamp-overloads.hlsl
M clang/test/CodeGenHLSL/builtins/dot4add_i8packed.hlsl
M clang/test/CodeGenHLSL/builtins/dot4add_u8packed.hlsl
A clang/test/CodeGenHLSL/builtins/ldexp.hlsl
M clang/test/CodeGenHLSL/builtins/lerp-overloads.hlsl
M clang/test/CodeGenHLSL/builtins/max-overloads.hlsl
M clang/test/CodeGenHLSL/builtins/min-overloads.hlsl
M clang/test/CodeGenHLSL/builtins/pow-overloads.hlsl
M clang/test/CodeGenHLSL/cbuffer.hlsl
M clang/test/CodeGenHLSL/cbuffer_with_packoffset.hlsl
A clang/test/CodeGenHLSL/convergence/global_array.hlsl
M clang/test/CodeGenHLSL/resource-bindings.hlsl
M clang/test/CodeGenHLSL/static-local-ctor.hlsl
M clang/test/CodeGenObjCXX/arc-rv-attr.mm
M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
M clang/test/CodeGenOpenCL/amdgcn-automatic-variable.cl
M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
M clang/test/CodeGenOpenCL/amdgpu-env-amdgcn.cl
M clang/test/CodeGenOpenCL/amdgpu-features.cl
M clang/test/CodeGenOpenCL/amdgpu-nullptr.cl
M clang/test/CodeGenOpenCL/blocks.cl
M clang/test/CodeGenOpenCL/builtins-alloca.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx950.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-load-to-lds.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-vi.cl
A clang/test/CodeGenOpenCL/check-atomic-alignment.cl
M clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl
M clang/test/CodeGenOpenCL/cl20-device-side-enqueue.cl
M clang/test/CodeGenOpenCL/convergent.cl
M clang/test/CodeGenOpenCL/enqueue-kernel-non-entry-block.cl
M clang/test/CodeGenOpenCL/implicit-addrspacecast-function-parameter.cl
M clang/test/CodeGenOpenCL/kernel-attributes.cl
M clang/test/CodeGenOpenCL/opencl-kernel-call.cl
M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
M clang/test/CoverageMapping/terminate-statements.cpp
A clang/test/DebugInfo/KeyInstructions/agg.c
A clang/test/DebugInfo/KeyInstructions/flag.cpp
A clang/test/DebugInfo/KeyInstructions/init-agg.cpp
A clang/test/DebugInfo/KeyInstructions/init-scalar.c
A clang/test/DebugInfo/KeyInstructions/init-static.cpp
A clang/test/DebugInfo/KeyInstructions/lit.local.cfg
A clang/test/Driver/Inputs/DriverKit19.0.sdk/System/DriverKit/System/Library/SubFrameworks/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/Library/Frameworks/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/System/Library/Frameworks/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/System/Library/SubFrameworks/.keep
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/i686-pc-msys/bin/as
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/i686-pc-msys/bin/ld
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/i686-pc-msys/lib/.keep
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/lib/gcc/i686-pc-msys/10/crtbegin.o
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/lib/gcc/x86_64-pc-cygwin/10/crtbegin.o
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/x86_64-pc-cygwin/bin/as
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/x86_64-pc-cygwin/bin/ld
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/x86_64-pc-cygwin/lib/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/include/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/lib/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/include/c++/10/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/include/i686-pc-cygwin/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/include/i686-pc-cygwin/c++/10/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/include/x86_64-pc-msys/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/include/x86_64-pc-msys/c++/10/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/lib/gcc/i686-pc-cygwin/10/crtbegin.o
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/lib/gcc/i686-pc-cygwin/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/lib/gcc/x86_64-pc-msys/10/crtbegin.o
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/lib/gcc/x86_64-pc-msys/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/lib/i686-pc-cygwin/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/lib/x86_64-pc-msys/.keep
M clang/test/Driver/XRay/xray-instrument.c
A clang/test/Driver/aarch64-cortex-a320.c
M clang/test/Driver/arm-features.c
M clang/test/Driver/arm-mfpu.c
A clang/test/Driver/attr-availability-erroneous-diags.c
M clang/test/Driver/baremetal-sysroot.cpp
M clang/test/Driver/baremetal.cpp
M clang/test/Driver/cl-options.c
M clang/test/Driver/clang-offload-bundler-standardize.c
M clang/test/Driver/clang-sycl-linker-test.cpp
A clang/test/Driver/cygwin.cpp
A clang/test/Driver/darwin-framework-search-paths.c
R clang/test/Driver/darwin-subframeworks.c
M clang/test/Driver/driverkit-path.c
A clang/test/Driver/dxc_I.test
A clang/test/Driver/dxc_fspv_extension.hlsl
M clang/test/Driver/emulated-tls.cpp
M clang/test/Driver/fprofile-generate-cold-function-coverage.c
M clang/test/Driver/fsanitize-coverage.c
M clang/test/Driver/fsanitize.c
M clang/test/Driver/fveclib.c
M clang/test/Driver/haiku.c
M clang/test/Driver/mcmodel.c
A clang/test/Driver/no-integrated-cpp.c
M clang/test/Driver/openmp-offload-gpu.c
M clang/test/Driver/ppc-mrop-protection-support-check.c
A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a320.c
M clang/test/Driver/print-enabled-extensions/aarch64-fujitsu-monaka.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-a25.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-a45.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-ax25.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-ax45.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-n45.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-nx45.c
A clang/test/Driver/print-enabled-extensions/riscv-sifive-p870.c
M clang/test/Driver/print-supported-extensions-riscv.c
A clang/test/Driver/rewrite-objc-preproc.m
M clang/test/Driver/riscv-arch.c
M clang/test/Driver/riscv-cpus.c
M clang/test/Driver/solaris-ld.c
M clang/test/Driver/uefi-constructed-args.c
M clang/test/Driver/unknown-std.c
M clang/test/Driver/x86-mabi.c
M clang/test/Driver/xros-driver.c
M clang/test/ExtractAPI/objc_property.m
M clang/test/FixIt/fixit.cpp
A clang/test/Headers/__clang_hip_cmath-return_types.hip
M clang/test/Headers/opencl-c-header.cl
M clang/test/Index/pipe-size.cl
M clang/test/Lexer/char8_t.cpp
M clang/test/Misc/amdgcn.languageOptsOpenCL.cl
M clang/test/Misc/nvptx.languageOptsOpenCL.cl
M clang/test/Misc/pragma-attribute-supported-attributes-list.test
M clang/test/Misc/r600.languageOptsOpenCL.cl
M clang/test/Misc/target-invalid-cpu-note/aarch64.c
M clang/test/Misc/target-invalid-cpu-note/riscv.c
M clang/test/Misc/time-passes.c
M clang/test/Misc/warning-flags-enabled.c
A clang/test/Modules/Inputs/shadow/A1/A1.h
M clang/test/Modules/Inputs/shadow/A1/module.modulemap
A clang/test/Modules/Inputs/shadow/A2/A2.h
M clang/test/Modules/Inputs/shadow/A2/module.modulemap
M clang/test/Modules/Inputs/submodules/module.modulemap
A clang/test/Modules/befriend.cppm
A clang/test/Modules/emit-module-interface-pcm-input.cpp
M clang/test/Modules/fmodules-validate-once-per-build-session.c
A clang/test/Modules/invalid-module-dep.c
A clang/test/Modules/lazy-by-name-lookup.c
M clang/test/Modules/missing-header.m
M clang/test/Modules/no-external-type-id.cppm
A clang/test/Modules/pr130712.cppm
A clang/test/Modules/pr140130.cpp
A clang/test/Modules/pr61065-2.cppm
A clang/test/Modules/pr61065-3.cppm
M clang/test/Modules/pr61065.cppm
A clang/test/Modules/sdk-settings-json-dep.m
M clang/test/Modules/shadow.m
M clang/test/OpenMP/assumes_messages.c
A clang/test/OpenMP/begin_declare_variant_elided_range_implementation.c
A clang/test/OpenMP/begin_declare_variant_executable_scope.c
M clang/test/OpenMP/begin_declare_variant_messages.c
M clang/test/OpenMP/cancel_messages.cpp
M clang/test/OpenMP/for_collapse_messages.cpp
M clang/test/OpenMP/for_ordered_clause.cpp
M clang/test/OpenMP/for_simd_collapse_messages.cpp
M clang/test/OpenMP/for_simd_loop_messages.cpp
M clang/test/OpenMP/irbuilder_nested_parallel_for.c
M clang/test/OpenMP/masked_taskloop_collapse_messages.cpp
M clang/test/OpenMP/masked_taskloop_simd_collapse_messages.cpp
M clang/test/OpenMP/metadirective_ast_print.c
A clang/test/OpenMP/metadirective_default.cpp
M clang/test/OpenMP/metadirective_messages.cpp
M clang/test/OpenMP/metadirective_otherwise.cpp
M clang/test/OpenMP/nested_loop_codegen.cpp
M clang/test/OpenMP/openmp_attribute_parsing.cpp
A clang/test/OpenMP/openmp_non_c_directives.c
M clang/test/OpenMP/parallel_codegen.cpp
M clang/test/OpenMP/simd_collapse_messages.cpp
M clang/test/OpenMP/stripe_messages.cpp
M clang/test/OpenMP/teams_distribute_dist_schedule_messages.cpp
M clang/test/OpenMP/tile_messages.cpp
M clang/test/OpenMP/unroll_messages.cpp
M clang/test/Parser/c2x-alignas.c
M clang/test/Parser/c2x-attributes.c
M clang/test/Parser/cxx-invalid-function-decl.cpp
M clang/test/Parser/cxx0x-attributes.cpp
M clang/test/Parser/cxx1z-fold-expressions.cpp
A clang/test/Parser/cxx2c-trivially-relocatable.cpp
A clang/test/Parser/gh137861.cpp
M clang/test/ParserHLSL/hlsl_resource_handle_attrs.hlsl
M clang/test/ParserOpenACC/parse-clauses.c
A clang/test/Preprocessor/_Pragma-in-include.c
M clang/test/Preprocessor/arm-target-features.c
R clang/test/Preprocessor/cuda-macos-includes.cu
M clang/test/Preprocessor/init.c
A clang/test/Preprocessor/macro_reserved.i
M clang/test/Preprocessor/predefined-macros.c
M clang/test/Preprocessor/print-header-json.c
A clang/test/Preprocessor/riscv-cf-protection-branch.c
A clang/test/Preprocessor/riscv-target-features-sifive.c
M clang/test/Preprocessor/riscv-target-features.c
A clang/test/Refactor/source-loc-zero.cpp
A clang/test/Sema/Inputs/builtin-system-header.h
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
M clang/test/Sema/atomic-expr.c
M clang/test/Sema/attr-c2x.c
A clang/test/Sema/attr-nonstring.c
M clang/test/Sema/attr-ownership.c
M clang/test/Sema/bitfield-layout.c
M clang/test/Sema/bitfield-layout_1.c
A clang/test/Sema/builtin-pragma-intrinsic.c
M clang/test/Sema/builtins-wasm.c
A clang/test/Sema/c++-keyword-in-c.c
A clang/test/Sema/c++-keyword-in-objc.m
A clang/test/Sema/c23-decl-in-prototype.c
A clang/test/Sema/c2y-invalid-constexpr.c
M clang/test/Sema/callingconv-ms_abi.c
A clang/test/Sema/decl-hidden-in-c++.c
M clang/test/Sema/decl-in-prototype.c
M clang/test/Sema/enum.c
M clang/test/Sema/implicit-cast.c
A clang/test/Sema/implicit-int-enum-conversion.c
M clang/test/Sema/implicit-void-ptr-cast.c
M clang/test/Sema/init-randomized-struct.c
M clang/test/Sema/integer-overflow.c
M clang/test/Sema/mms-bitfields.c
M clang/test/Sema/no-warn-missing-prototype.c
M clang/test/Sema/patchable-function-entry-attr.cpp
A clang/test/Sema/ptrauth-intptr-qualifier.c
M clang/test/Sema/ptrauth-qualifier.c
A clang/test/Sema/ptrauth-struct-function-ptr-field.c
M clang/test/Sema/riscv-bad-intrinsic-pragma.c
M clang/test/Sema/sizeless-1.c
M clang/test/Sema/typedef-retain.c
A clang/test/Sema/unknown-attributes.c
M clang/test/Sema/varargs-win64.c
A clang/test/Sema/warn-default-const-init-crash.c
M clang/test/Sema/warn-default-const-init.c
A clang/test/Sema/warn-duplicate-decl-specifier.c
A clang/test/Sema/warn-jump-bypasses-init.c
A clang/test/Sema/warn-nontrivial-struct-memaccess-ptrauth.c
M clang/test/Sema/warn-overlap.c
A clang/test/Sema/warn-tentative-defn-compat.c
A clang/test/SemaCUDA/cuda-attr-order.cu
A clang/test/SemaCUDA/overloaded-builtin.cu
M clang/test/SemaCXX/MicrosoftCompatibility.cpp
M clang/test/SemaCXX/MicrosoftExtensions.cpp
M clang/test/SemaCXX/MicrosoftSuper.cpp
M clang/test/SemaCXX/attr-trivial-abi.cpp
M clang/test/SemaCXX/bitfield.cpp
M clang/test/SemaCXX/builtin-object-size-cxx14.cpp
M clang/test/SemaCXX/concept-crash-on-diagnostic.cpp
M clang/test/SemaCXX/constant-expression-cxx11.cpp
M clang/test/SemaCXX/constant-expression-p2280r4.cpp
A clang/test/SemaCXX/consteval-assert.cpp
M clang/test/SemaCXX/cxx11-gnu-attrs.cpp
M clang/test/SemaCXX/cxx1y-variable-templates_in_class.cpp
M clang/test/SemaCXX/cxx1y-variable-templates_top_level.cpp
M clang/test/SemaCXX/cxx2a-consteval.cpp
M clang/test/SemaCXX/cxx2a-ms-no-unique-address.cpp
M clang/test/SemaCXX/cxx2a-three-way-comparison.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
A clang/test/SemaCXX/cxx2c-trivially-relocatable.cpp
M clang/test/SemaCXX/deprecated.cpp
M clang/test/SemaCXX/dllexport.cpp
M clang/test/SemaCXX/dllimport.cpp
M clang/test/SemaCXX/ext-int.cpp
A clang/test/SemaCXX/gh138775.cpp
M clang/test/SemaCXX/gnu-asm-constexpr.cpp
M clang/test/SemaCXX/lambda-unevaluated.cpp
A clang/test/SemaCXX/libstdcxx_format_kind_hack.cpp
R clang/test/SemaCXX/libstdcxx_gets_hack.cpp
R clang/test/SemaCXX/libstdcxx_pointer_return_false_hack.cpp
M clang/test/SemaCXX/matrix-type.cpp
A clang/test/SemaCXX/ms_struct-bitfield-padding.cpp
M clang/test/SemaCXX/overload-resolution-deferred-templates.cpp
M clang/test/SemaCXX/paren-list-agg-init.cpp
M clang/test/SemaCXX/ptrauth-template-parameters.cpp
M clang/test/SemaCXX/ptrauth-triviality.cpp
M clang/test/SemaCXX/rounding-math-crash.cpp
M clang/test/SemaCXX/static-assert-cxx26.cpp
A clang/test/SemaCXX/thread-specifier.cpp
A clang/test/SemaCXX/type-aware-new-delete-transparent-contexts.cpp
M clang/test/SemaCXX/type-trait-common-type.cpp
M clang/test/SemaCXX/type-traits-nonobject.cpp
M clang/test/SemaCXX/type-traits.cpp
M clang/test/SemaCXX/unknown-type-name.cpp
M clang/test/SemaCXX/vla.cpp
A clang/test/SemaCXX/warn-implicit-unicode-conversions.cpp
A clang/test/SemaCXX/warn-nrvo.cpp
M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
M clang/test/SemaCXX/warn-thread-safety-parsing.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-array.cpp
M clang/test/SemaHLSL/BuiltIns/AddUint64-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/asdouble-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/clamp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/cross-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/degrees-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/frac-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors2.hlsl
M clang/test/SemaHLSL/BuiltIns/isinf-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/ldexp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/logical-operator-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/mad-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/normalize-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/radians-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/rcp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/reversebits-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/rsqrt-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/step-errors.hlsl
A clang/test/SemaHLSL/RootSignature-err.hlsl
M clang/test/SemaHLSL/resource_binding_attr_error.hlsl
M clang/test/SemaHLSL/resource_binding_implicit.hlsl
M clang/test/SemaObjCXX/cxxoperator-selector.mm
M clang/test/SemaOpenACC/atomic-construct.cpp
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/combined-construct-default-clause.c
M clang/test/SemaOpenACC/combined-construct-default-clause.cpp
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
M clang/test/SemaOpenACC/combined-construct-gang-clause.cpp
M clang/test/SemaOpenACC/combined-construct-num_gangs-clause.c
M clang/test/SemaOpenACC/combined-construct-num_workers-clause.c
M clang/test/SemaOpenACC/combined-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/combined-construct-self-clause.c
M clang/test/SemaOpenACC/combined-construct-self-clause.cpp
M clang/test/SemaOpenACC/combined-construct-vector-clause.cpp
M clang/test/SemaOpenACC/combined-construct-vector_length-clause.c
M clang/test/SemaOpenACC/combined-construct-worker-clause.cpp
M clang/test/SemaOpenACC/compute-construct-async-clause.c
M clang/test/SemaOpenACC/compute-construct-copy-clause.c
M clang/test/SemaOpenACC/compute-construct-default-clause.c
M clang/test/SemaOpenACC/compute-construct-default-clause.cpp
M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
M clang/test/SemaOpenACC/compute-construct-num_gangs-clause.c
M clang/test/SemaOpenACC/compute-construct-num_workers-clause.c
M clang/test/SemaOpenACC/compute-construct-reduction-clause.c
M clang/test/SemaOpenACC/compute-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/compute-construct-self-clause.c
M clang/test/SemaOpenACC/compute-construct-self-clause.cpp
M clang/test/SemaOpenACC/compute-construct-vector_length-clause.c
M clang/test/SemaOpenACC/data-construct-async-clause.c
M clang/test/SemaOpenACC/data-construct-default-clause.c
M clang/test/SemaOpenACC/data-construct-device_type-clause.c
M clang/test/SemaOpenACC/data-construct-if-clause.c
M clang/test/SemaOpenACC/data-construct.cpp
A clang/test/SemaOpenACC/gh139894.cpp
A clang/test/SemaOpenACC/gh140339.cpp
A clang/test/SemaOpenACC/gh140712.cpp
A clang/test/SemaOpenACC/gh140920.cpp
M clang/test/SemaOpenACC/init-construct.cpp
M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/loop-construct-collapse-clause.cpp
M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
M clang/test/SemaOpenACC/loop-construct-gang-clause.cpp
M clang/test/SemaOpenACC/loop-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/loop-construct-tile-clause.cpp
M clang/test/SemaOpenACC/loop-construct-vector-clause.cpp
M clang/test/SemaOpenACC/loop-construct-worker-clause.cpp
M clang/test/SemaOpenACC/loop-construct.cpp
M clang/test/SemaOpenACC/routine-construct-clauses.cpp
M clang/test/SemaOpenACC/set-construct-ast.cpp
M clang/test/SemaOpenACC/set-construct.cpp
M clang/test/SemaOpenACC/shutdown-construct.cpp
M clang/test/SemaOpenACC/update-construct.cpp
A clang/test/SemaOpenCL/builtins-amdgcn-load-to-lds-err.cl
M clang/test/SemaOpenCL/invalid-block.cl
M clang/test/SemaTemplate/GH55509.cpp
M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
M clang/test/SemaTemplate/cxx17-inline-variables.cpp
M clang/test/SemaTemplate/cxx1z-fold-expressions.cpp
M clang/test/SemaTemplate/deduction-guide.cpp
M clang/test/SemaTemplate/fun-template-def.cpp
M clang/test/SemaTemplate/instantiate-var-template.cpp
M clang/test/SemaTemplate/typename-specifier-3.cpp
M clang/test/lit.cfg.py
M clang/test/lit.site.cfg.py.in
M clang/tools/CMakeLists.txt
M clang/tools/c-index-test/c-index-test.c
M clang/tools/c-index-test/core_main.cpp
M clang/tools/cir-opt/cir-opt.cpp
M clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
M clang/tools/clang-format/ClangFormat.cpp
M clang/tools/clang-fuzzer/handle-cxx/handle_cxx.cpp
M clang/tools/clang-import-test/clang-import-test.cpp
M clang/tools/clang-installapi/ClangInstallAPI.cpp
M clang/tools/clang-installapi/Options.cpp
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
M clang/tools/clang-refactor/ClangRefactor.cpp
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
M clang/tools/clang-shlib/CMakeLists.txt
M clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp
M clang/tools/clang-sycl-linker/SYCLLinkOpts.td
M clang/tools/diagtool/ShowEnabledWarnings.cpp
M clang/tools/diagtool/TreeView.cpp
M clang/tools/driver/CMakeLists.txt
M clang/tools/driver/cc1_main.cpp
M clang/tools/driver/cc1as_main.cpp
M clang/tools/driver/cc1gen_reproducer_main.cpp
M clang/tools/driver/driver.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CIndexCodeCompletion.cpp
M clang/tools/libclang/CIndexDiagnostic.cpp
M clang/tools/libclang/CIndexer.cpp
M clang/tools/libclang/CMakeLists.txt
M clang/tools/libclang/CXCursor.cpp
M clang/tools/libclang/CXIndexDataConsumer.cpp
M clang/tools/libclang/Indexing.cpp
M clang/unittests/AST/ASTImporterTest.cpp
M clang/unittests/AST/ASTVectorTest.cpp
M clang/unittests/AST/CommentLexer.cpp
M clang/unittests/AST/CommentParser.cpp
M clang/unittests/AST/CommentTextTest.cpp
M clang/unittests/AST/ExternalASTSourceTest.cpp
M clang/unittests/AST/StructuralEquivalenceTest.cpp
M clang/unittests/ASTMatchers/ASTMatchersTest.h
M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M clang/unittests/Analysis/MacroExpansionContextTest.cpp
M clang/unittests/Analysis/UnsafeBufferUsageTest.cpp
M clang/unittests/Basic/CMakeLists.txt
M clang/unittests/Basic/DiagnosticTest.cpp
M clang/unittests/Basic/FileEntryTest.cpp
A clang/unittests/Basic/OffloadArchTest.cpp
M clang/unittests/Basic/SarifTest.cpp
M clang/unittests/Basic/SourceManagerTest.cpp
A clang/unittests/CIR/CMakeLists.txt
A clang/unittests/CIR/PointerLikeTest.cpp
M clang/unittests/CMakeLists.txt
M clang/unittests/Driver/DXCModeTest.cpp
M clang/unittests/Driver/ModuleCacheTest.cpp
M clang/unittests/Driver/SanitizerArgsTest.cpp
M clang/unittests/Driver/SimpleDiagnosticConsumer.h
M clang/unittests/Driver/ToolChainTest.cpp
M clang/unittests/Format/CMakeLists.txt
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/DefinitionBlockSeparatorTest.cpp
M clang/unittests/Format/FormatReplacementTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/FormatTestRawStrings.cpp
M clang/unittests/Format/SortImportsTestJava.cpp
M clang/unittests/Format/SortIncludesTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/Frontend/ASTUnitTest.cpp
M clang/unittests/Frontend/CMakeLists.txt
M clang/unittests/Frontend/CodeGenActionTest.cpp
M clang/unittests/Frontend/CompilerInstanceTest.cpp
M clang/unittests/Frontend/CompilerInvocationTest.cpp
M clang/unittests/Frontend/FrontendActionTest.cpp
M clang/unittests/Frontend/OutputStreamTest.cpp
M clang/unittests/Frontend/PCHPreambleTest.cpp
M clang/unittests/Frontend/ReparseWorkingDirTest.cpp
A clang/unittests/Frontend/SearchPathTest.cpp
M clang/unittests/Frontend/TextDiagnosticTest.cpp
M clang/unittests/Frontend/UtilsTest.cpp
M clang/unittests/Interpreter/CMakeLists.txt
M clang/unittests/Interpreter/ExceptionTests/CMakeLists.txt
M clang/unittests/Interpreter/InterpreterTest.cpp
M clang/unittests/Lex/HeaderSearchTest.cpp
M clang/unittests/Lex/LexHLSLRootSignatureTest.cpp
M clang/unittests/Lex/LexerTest.cpp
M clang/unittests/Lex/ModuleDeclStateTest.cpp
M clang/unittests/Lex/PPCallbacksTest.cpp
M clang/unittests/Lex/PPConditionalDirectiveRecordTest.cpp
M clang/unittests/Lex/PPDependencyDirectivesTest.cpp
M clang/unittests/Lex/PPMemoryAllocationsTest.cpp
M clang/unittests/Parse/CMakeLists.txt
M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
M clang/unittests/Sema/SemaNoloadLookupTest.cpp
M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
M clang/unittests/Serialization/LoadSpecLazilyTest.cpp
M clang/unittests/Serialization/ModuleCacheTest.cpp
M clang/unittests/Serialization/NoCommentsTest.cpp
M clang/unittests/Serialization/PreambleInNamedModulesTest.cpp
M clang/unittests/Serialization/VarDeclConstantInitTest.cpp
M clang/unittests/StaticAnalyzer/CallDescriptionTest.cpp
M clang/unittests/Support/TimeProfilerTest.cpp
M clang/unittests/Tooling/CompilationDatabaseTest.cpp
M clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp
M clang/unittests/Tooling/DependencyScanning/DependencyScanningFilesystemTest.cpp
M clang/unittests/Tooling/QualTypeNamesTest.cpp
M clang/unittests/Tooling/RangeSelectorTest.cpp
M clang/unittests/Tooling/RewriterTestContext.h
M clang/unittests/Tooling/Syntax/TokensTest.cpp
M clang/unittests/Tooling/Syntax/TreeTestBase.cpp
M clang/unittests/Tooling/Syntax/TreeTestBase.h
M clang/unittests/Tooling/ToolingTest.cpp
M clang/unittests/libclang/CrashTests/CMakeLists.txt
M clang/utils/TableGen/ClangAttrEmitter.cpp
M clang/utils/TableGen/ClangBuiltinTemplatesEmitter.cpp
M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
M clang/utils/TableGen/ClangOptionDocEmitter.cpp
M clang/utils/TableGen/MveEmitter.cpp
M clang/utils/TableGen/NeonEmitter.cpp
M clang/utils/TableGen/RISCVVEmitter.cpp
M clang/utils/TableGen/SveEmitter.cpp
M clang/utils/TableGen/TableGen.cpp
M clang/utils/TableGen/TableGenBackends.h
M clang/www/c_status.html
M clang/www/cxx_dr_status.html
M clang/www/cxx_status.html
M clang/www/menu.html.incl
M compiler-rt/cmake/Modules/AddCompilerRT.cmake
M compiler-rt/cmake/Modules/BuiltinTests.cmake
M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
M compiler-rt/cmake/builtin-config-ix.cmake
M compiler-rt/lib/asan/asan_fuchsia.cpp
M compiler-rt/lib/builtins/CMakeLists.txt
M compiler-rt/lib/builtins/aarch64/chkstk.S
M compiler-rt/lib/builtins/aarch64/lse.S
M compiler-rt/lib/builtins/aarch64/sme-abi.S
M compiler-rt/lib/builtins/aarch64/sme-libc-mem-routines.S
M compiler-rt/lib/builtins/assembly.h
M compiler-rt/lib/builtins/clear_cache.c
M compiler-rt/lib/builtins/cpu_model/aarch64.c
M compiler-rt/lib/builtins/cpu_model/aarch64.h
M compiler-rt/lib/builtins/extendhfsf2.c
M compiler-rt/lib/builtins/fp_compare_impl.inc
M compiler-rt/lib/builtins/fp_lib.h
M compiler-rt/lib/builtins/truncsfhf2.c
M compiler-rt/lib/builtins/udivmodti4.c
M compiler-rt/lib/hwasan/hwasan_fuchsia.cpp
M compiler-rt/lib/lsan/lsan_fuchsia.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang.h
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.h
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh
M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
M compiler-rt/lib/tsan/rtl/tsan_rtl.h
M compiler-rt/lib/ubsan/ubsan_init_standalone.cpp
M compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
M compiler-rt/test/asan/TestCases/zero_page_pc.cpp
M compiler-rt/test/builtins/Unit/enable_execute_stack_test.c
M compiler-rt/test/builtins/Unit/fixunstfdi_test.c
M compiler-rt/test/builtins/Unit/multc3_test.c
A compiler-rt/test/profile/Linux/coverage-do-while.c
A compiler-rt/test/profile/Linux/coverage-exception.cpp
M compiler-rt/test/sanitizer_common/TestCases/Posix/sanitizer_set_report_path_test.cpp
M compiler-rt/test/tsan/signal_recursive.cpp
M compiler-rt/test/ubsan_minimal/TestCases/override-callback.c
M flang-rt/CODE_OWNERS.TXT
M flang-rt/README.md
M flang-rt/include/flang-rt/runtime/allocator-registry.h
M flang-rt/include/flang-rt/runtime/descriptor.h
M flang-rt/include/flang-rt/runtime/emit-encoded.h
M flang-rt/include/flang-rt/runtime/reduction-templates.h
M flang-rt/include/flang-rt/runtime/tools.h
M flang-rt/lib/cuda/CMakeLists.txt
M flang-rt/lib/cuda/allocatable.cpp
M flang-rt/lib/cuda/allocator.cpp
M flang-rt/lib/cuda/descriptor.cpp
M flang-rt/lib/cuda/pointer.cpp
M flang-rt/lib/runtime/allocatable.cpp
M flang-rt/lib/runtime/array-constructor.cpp
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/character.cpp
M flang-rt/lib/runtime/copy.cpp
M flang-rt/lib/runtime/derived.cpp
M flang-rt/lib/runtime/descriptor.cpp
M flang-rt/lib/runtime/edit-input.cpp
M flang-rt/lib/runtime/extrema.cpp
M flang-rt/lib/runtime/findloc.cpp
M flang-rt/lib/runtime/matmul-transpose.cpp
M flang-rt/lib/runtime/matmul.cpp
M flang-rt/lib/runtime/misc-intrinsic.cpp
M flang-rt/lib/runtime/pointer.cpp
M flang-rt/lib/runtime/temporary-stack.cpp
M flang-rt/lib/runtime/tools.cpp
M flang-rt/lib/runtime/transformational.cpp
M flang-rt/unittests/Evaluate/reshape.cpp
M flang-rt/unittests/Runtime/Allocatable.cpp
A flang-rt/unittests/Runtime/Assign.cpp
M flang-rt/unittests/Runtime/CMakeLists.txt
M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp
M flang-rt/unittests/Runtime/CUDA/AllocatorCUF.cpp
M flang-rt/unittests/Runtime/CUDA/Memory.cpp
M flang-rt/unittests/Runtime/CharacterTest.cpp
M flang-rt/unittests/Runtime/CommandTest.cpp
M flang-rt/unittests/Runtime/TemporaryStack.cpp
M flang-rt/unittests/Runtime/tools.h
M flang/CMakeLists.txt
R flang/cmake/modules/AddFlangOffloadRuntime.cmake
M flang/docs/Aliasing.md
M flang/docs/Extensions.md
M flang/docs/FortranStandardsSupport.md
M flang/docs/ModFiles.md
M flang/docs/OpenMPSupport.md
M flang/docs/ReleaseNotes.md
M flang/examples/CMakeLists.txt
R flang/examples/ExternalHelloWorld/CMakeLists.txt
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
M flang/include/flang/Evaluate/characteristics.h
M flang/include/flang/Evaluate/constant.h
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Evaluate/traverse.h
M flang/include/flang/Evaluate/variable.h
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/include/flang/Frontend/CompilerInstance.h
M flang/include/flang/Frontend/CompilerInvocation.h
M flang/include/flang/Frontend/TextDiagnosticPrinter.h
M flang/include/flang/Lower/ConvertVariable.h
M flang/include/flang/Lower/OpenACC.h
M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
M flang/include/flang/Optimizer/Analysis/TBAAForest.h
M flang/include/flang/Optimizer/Builder/BoxValue.h
M flang/include/flang/Optimizer/Builder/DirectivesCommon.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Builder/HLFIRTools.h
M flang/include/flang/Optimizer/Builder/LowLevelIntrinsics.h
M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
M flang/include/flang/Optimizer/CodeGen/FIROpPatterns.h
A flang/include/flang/Optimizer/CodeGen/LLVMInsertChainFolder.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Optimizer/Dialect/FIRAttr.td
M flang/include/flang/Optimizer/Dialect/FIROps.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
M flang/include/flang/Optimizer/Dialect/FIRType.h
M flang/include/flang/Optimizer/Dialect/FIRTypes.td
M flang/include/flang/Optimizer/Dialect/FortranVariableInterface.td
M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
M flang/include/flang/Optimizer/HLFIR/Passes.td
M flang/include/flang/Optimizer/OpenMP/Passes.td
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Parser/preprocessor.h
M flang/include/flang/Parser/token-sequence.h
M flang/include/flang/Parser/unparse.h
M flang/include/flang/Runtime/CUDA/allocatable.h
M flang/include/flang/Runtime/CUDA/allocator.h
M flang/include/flang/Runtime/CUDA/pointer.h
M flang/include/flang/Runtime/allocatable.h
M flang/include/flang/Semantics/expression.h
M flang/include/flang/Semantics/symbol.h
M flang/include/flang/Semantics/unparse-with-symbols.h
M flang/include/flang/Support/Fortran-features.h
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Evaluate/CMakeLists.txt
M flang/lib/Evaluate/characteristics.cpp
M flang/lib/Evaluate/check-expression.cpp
M flang/lib/Evaluate/fold.cpp
M flang/lib/Evaluate/formatting.cpp
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Evaluate/shape.cpp
M flang/lib/Evaluate/tools.cpp
M flang/lib/Evaluate/variable.cpp
M flang/lib/Frontend/CMakeLists.txt
M flang/lib/Frontend/CompilerInstance.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendAction.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Frontend/ParserActions.cpp
M flang/lib/Frontend/TextDiagnosticPrinter.cpp
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/CMakeLists.txt
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/HostAssociations.cpp
M flang/lib/Lower/IO.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/DataSharingProcessor.h
M flang/lib/Lower/OpenMP/Decomposer.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.h
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/Support/Utils.cpp
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/lib/Optimizer/Analysis/TBAAForest.cpp
M flang/lib/Optimizer/Builder/Character.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/HLFIRTools.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/LowLevelIntrinsics.cpp
M flang/lib/Optimizer/Builder/Runtime/Allocatable.cpp
M flang/lib/Optimizer/CodeGen/CMakeLists.txt
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
A flang/lib/Optimizer/CodeGen/LLVMInsertChainFolder.cpp
M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Dialect/FIRType.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/CMakeLists.txt
M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIROrderedAssignments.cpp
M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
A flang/lib/Optimizer/HLFIR/Transforms/PropagateFortranVariableAttributes.cpp
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/lib/Optimizer/OpenMP/CMakeLists.txt
M flang/lib/Optimizer/OpenMP/DoConcurrentConversion.cpp
A flang/lib/Optimizer/OpenMP/LowerNontemporal.cpp
M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
M flang/lib/Optimizer/OpenMP/MapsForPrivatizedSymbols.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AbstractResult.cpp
M flang/lib/Optimizer/Transforms/AddAliasTags.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/AffinePromotion.cpp
M flang/lib/Optimizer/Transforms/CUFAddConstructor.cpp
M flang/lib/Optimizer/Transforms/CUFComputeSharedMemoryOffsetsAndSize.cpp
M flang/lib/Optimizer/Transforms/CUFDeviceGlobal.cpp
M flang/lib/Optimizer/Transforms/CUFGPUToLLVMConversion.cpp
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/lib/Optimizer/Transforms/ControlFlowConverter.cpp
M flang/lib/Optimizer/Transforms/FunctionAttr.cpp
M flang/lib/Optimizer/Transforms/LoopVersioning.cpp
M flang/lib/Optimizer/Transforms/PolymorphicOpConversion.cpp
M flang/lib/Optimizer/Transforms/SimplifyFIROperations.cpp
M flang/lib/Optimizer/Transforms/StackArrays.cpp
M flang/lib/Parser/CMakeLists.txt
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/parse-tree.cpp
M flang/lib/Parser/parsing.cpp
M flang/lib/Parser/preprocessor.cpp
M flang/lib/Parser/prescan.cpp
M flang/lib/Parser/prescan.h
M flang/lib/Parser/token-sequence.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/CMakeLists.txt
M flang/lib/Semantics/assignment.cpp
M flang/lib/Semantics/check-allocate.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-coarray.cpp
M flang/lib/Semantics/check-coarray.h
M flang/lib/Semantics/check-deallocate.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/definable.cpp
M flang/lib/Semantics/definable.h
M flang/lib/Semantics/dump-expr.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/mod-file.cpp
M flang/lib/Semantics/pointer-assignment.cpp
M flang/lib/Semantics/pointer-assignment.h
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/semantics.cpp
M flang/lib/Semantics/symbol.cpp
M flang/lib/Semantics/tools.cpp
M flang/lib/Semantics/unparse-with-symbols.cpp
M flang/lib/Support/Fortran-features.cpp
M flang/module/cudadevice.f90
R flang/runtime/CMakeLists.txt
R flang/runtime/CUDA/CMakeLists.txt
R flang/runtime/Float128Math/CMakeLists.txt
M flang/test/CMakeLists.txt
M flang/test/Driver/flang-ld-powerpc.f90
A flang/test/Driver/func-attr-instrument-functions.f90
M flang/test/Driver/fveclib-codegen.f90
M flang/test/Driver/fveclib.f90
A flang/test/Driver/loop-interchange.f90
M flang/test/Driver/mcmodel.f90
M flang/test/Driver/mlir-pass-pipeline.f90
A flang/test/Driver/multiple-fc1-input.f90
M flang/test/Driver/predefined-macros-powerpc2.f90
M flang/test/Fir/CUDA/cuda-allocate.fir
M flang/test/Fir/CUDA/cuda-code-gen.mlir
M flang/test/Fir/CUDA/cuda-implicit-device-global.f90
M flang/test/Fir/affine-promotion.fir
M flang/test/Fir/basic-program.fir
A flang/test/Fir/convert-and-fold-insert-on-range.fir
A flang/test/Fir/convert-nontemporal-to-llvm.fir
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/copy-codegen.fir
M flang/test/Fir/cse.fir
M flang/test/Fir/cuf-invalid.fir
M flang/test/Fir/cuf.mlir
M flang/test/Fir/do_concurrent.fir
M flang/test/Fir/embox-char.fir
M flang/test/Fir/embox-substring.fir
M flang/test/Fir/invalid.fir
A flang/test/Fir/simd-nontemporal.fir
M flang/test/Fir/vector-always.fir
A flang/test/Fir/volatile.fir
A flang/test/Fir/volatile2.fir
M flang/test/HLFIR/designate-codegen.fir
M flang/test/HLFIR/elemental-codegen.fir
A flang/test/HLFIR/opt-bufferization-eval_in_mem-with-associate.fir
A flang/test/HLFIR/opt-bufferization-skip-volatile.fir
A flang/test/HLFIR/order_assignments/where-after-cse.fir
A flang/test/HLFIR/propagate-contiguous-attribute.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-maxloc.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-maxval.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-minloc.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-minval.fir
A flang/test/HLFIR/volatile.fir
M flang/test/HLFIR/volatile1.fir
M flang/test/HLFIR/volatile2.fir
M flang/test/HLFIR/volatile3.fir
M flang/test/HLFIR/volatile4.fir
M flang/test/Integration/unroll.f90
M flang/test/Integration/unroll_and_jam.f90
M flang/test/Integration/vector-always.f90
M flang/test/Lower/CUDA/cuda-allocatable.cuf
M flang/test/Lower/CUDA/cuda-device-proc.cuf
A flang/test/Lower/CUDA/cuda-managed.cuf
A flang/test/Lower/HLFIR/call-postponed-associate.f90
M flang/test/Lower/HLFIR/designators-component-ref.f90
M flang/test/Lower/HLFIR/entry_return.f90
M flang/test/Lower/HLFIR/ignore-type-f77-character.f90
M flang/test/Lower/HLFIR/proc-pointer-comp-nopass.f90
M flang/test/Lower/OpenACC/acc-atomic-capture.f90
M flang/test/Lower/OpenACC/acc-atomic-update.f90
M flang/test/Lower/OpenACC/acc-data-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-data.f90
M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-declare.f90
M flang/test/Lower/OpenACC/acc-enter-data-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-enter-data.f90
M flang/test/Lower/OpenACC/acc-exit-data-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-exit-data.f90
M flang/test/Lower/OpenACC/acc-kernels-loop.f90
M flang/test/Lower/OpenACC/acc-kernels.f90
A flang/test/Lower/OpenACC/acc-module-definition.f90
M flang/test/Lower/OpenACC/acc-parallel-loop.f90
M flang/test/Lower/OpenACC/acc-parallel.f90
M flang/test/Lower/OpenACC/acc-private.f90
M flang/test/Lower/OpenACC/acc-reduction.f90
M flang/test/Lower/OpenACC/acc-routine-named.f90
A flang/test/Lower/OpenACC/acc-routine-use-module.f90
M flang/test/Lower/OpenACC/acc-routine.f90
M flang/test/Lower/OpenACC/acc-serial-loop.f90
M flang/test/Lower/OpenACC/acc-serial.f90
M flang/test/Lower/OpenACC/acc-update.f90
M flang/test/Lower/OpenACC/acc-wait.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-allocatable.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-multiple-variables.f90
A flang/test/Lower/OpenMP/Todo/declare-variant.f90
A flang/test/Lower/OpenMP/Todo/defaultmap-clause-firstprivate.f90
A flang/test/Lower/OpenMP/Todo/defaultmap-clause-none.f90
R flang/test/Lower/OpenMP/Todo/defaultmap-clause.f90
M flang/test/Lower/OpenMP/Todo/firstprivate-target.f90
R flang/test/Lower/OpenMP/Todo/task-inreduction.f90
R flang/test/Lower/OpenMP/Todo/taskgroup-task-reduction.f90
R flang/test/Lower/OpenMP/Todo/taskloop-cancel.f90
A flang/test/Lower/OpenMP/Todo/taskloop-inreduction.f90
A flang/test/Lower/OpenMP/Todo/taskloop-reduction.f90
R flang/test/Lower/OpenMP/Todo/taskloop.f90
M flang/test/Lower/OpenMP/atomic-capture.f90
A flang/test/Lower/OpenMP/atomic-implicit-cast.f90
M flang/test/Lower/OpenMP/atomic-update.f90
M flang/test/Lower/OpenMP/cray-pointers01.f90
A flang/test/Lower/OpenMP/defaultmap.f90
A flang/test/Lower/OpenMP/flush-common.f90
M flang/test/Lower/OpenMP/lastprivate-allocatable.f90
A flang/test/Lower/OpenMP/map-character.f90
A flang/test/Lower/OpenMP/masked_taskloop.f90
R flang/test/Lower/OpenMP/master_taskloop.f90
M flang/test/Lower/OpenMP/omp-declare-target-program-var.f90
A flang/test/Lower/OpenMP/optional-argument-map-2.f90
M flang/test/Lower/OpenMP/parallel-lastprivate-clause-scalar.f90
A flang/test/Lower/OpenMP/parallel-masked-taskloop.f90
R flang/test/Lower/OpenMP/parallel-master-taskloop.f90
M flang/test/Lower/OpenMP/same_var_first_lastprivate.f90
A flang/test/Lower/OpenMP/sections-predetermined-private.f90
M flang/test/Lower/OpenMP/target.f90
A flang/test/Lower/OpenMP/task-inreduction.f90
A flang/test/Lower/OpenMP/taskgroup-task-array-reduction.f90
A flang/test/Lower/OpenMP/taskgroup-task_reduction01.f90
A flang/test/Lower/OpenMP/taskgroup-task_reduction02.f90
A flang/test/Lower/OpenMP/taskloop-cancel.f90
A flang/test/Lower/OpenMP/taskloop-grainsize.f90
A flang/test/Lower/OpenMP/taskloop-numtasks.f90
A flang/test/Lower/OpenMP/taskloop.f90
M flang/test/Lower/OpenMP/threadprivate-host-association-2.f90
M flang/test/Lower/OpenMP/threadprivate-host-association-3.f90
A flang/test/Lower/OpenMP/threadprivate-lenparams.f90
M flang/test/Lower/OpenMP/threadprivate-non-global.f90
A flang/test/Lower/OpenMP/wsloop-linear.f90
M flang/test/Lower/allocatable-polymorphic.f90
M flang/test/Lower/allocatable-runtime.f90
M flang/test/Lower/allocate-mold.f90
M flang/test/Lower/allocate-source-allocatables-2.f90
M flang/test/Lower/allocate-source-allocatables.f90
M flang/test/Lower/allocate-source-pointers.f90
M flang/test/Lower/do_concurrent.f90
M flang/test/Lower/do_concurrent_local_default_init.f90
M flang/test/Lower/loops.f90
M flang/test/Lower/loops3.f90
M flang/test/Lower/nsw.f90
M flang/test/Lower/polymorphic.f90
A flang/test/Lower/volatile-allocatable.f90
A flang/test/Lower/volatile-allocatable1.f90
A flang/test/Lower/volatile-derived-type-pointer.f90
A flang/test/Lower/volatile-derived-type.f90
A flang/test/Lower/volatile-openmp.f90
A flang/test/Lower/volatile-string.f90
A flang/test/Lower/volatile1.f90
A flang/test/Lower/volatile2.f90
A flang/test/Lower/volatile3.f90
A flang/test/Lower/volatile4.f90
M flang/test/Parser/OpenMP/bug518.f
M flang/test/Parser/OpenMP/compiler-directive-continuation.f90
A flang/test/Parser/OpenMP/declare-variant.f90
M flang/test/Parser/OpenMP/defaultmap-clause.f90
M flang/test/Parser/OpenMP/sentinels.f
M flang/test/Parser/continuation-in-conditional-compilation.f
A flang/test/Preprocessing/bug136845.F
A flang/test/Preprocessing/func-on-command-line.F90
A flang/test/Preprocessing/pp048.F
M flang/test/Semantics/OpenACC/acc-kernels-loop.f90
M flang/test/Semantics/OpenACC/acc-parallel-loop-validity.f90
M flang/test/Semantics/OpenACC/acc-serial-loop.f90
A flang/test/Semantics/OpenMP/cancel-bad-cancel-type.f90
A flang/test/Semantics/OpenMP/cancellation-construct-type.f90
A flang/test/Semantics/OpenMP/declare-variant.f90
A flang/test/Semantics/OpenMP/detach01.f90
A flang/test/Semantics/OpenMP/detach02.f90
A flang/test/Semantics/OpenMP/reduction-undefined.f90
M flang/test/Semantics/PowerPC/ppc-vector-types04.f90
M flang/test/Semantics/allocate01.f90
M flang/test/Semantics/assign02.f90
M flang/test/Semantics/assign11.f90
M flang/test/Semantics/atomic02.f90
M flang/test/Semantics/atomic03.f90
M flang/test/Semantics/atomic04.f90
M flang/test/Semantics/atomic05.f90
M flang/test/Semantics/atomic06.f90
M flang/test/Semantics/atomic07.f90
M flang/test/Semantics/atomic08.f90
M flang/test/Semantics/atomic09.f90
M flang/test/Semantics/atomic10.f90
M flang/test/Semantics/atomic11.f90
A flang/test/Semantics/boz-rhs.f90
A flang/test/Semantics/bug138915.f90
A flang/test/Semantics/bug139129.f90
A flang/test/Semantics/c7108.f90
M flang/test/Semantics/c_loc01.f90
M flang/test/Semantics/call03.f90
M flang/test/Semantics/call07.f90
M flang/test/Semantics/call28.f90
A flang/test/Semantics/call43.f90
A flang/test/Semantics/call44.f90
M flang/test/Semantics/coarrays02.f90
A flang/test/Semantics/command.f90
M flang/test/Semantics/coshape.f90
M flang/test/Semantics/cuf09.cuf
A flang/test/Semantics/cuf20.cuf
A flang/test/Semantics/cuf21.cuf
M flang/test/Semantics/deallocate07.f90
M flang/test/Semantics/declarations05.f90
M flang/test/Semantics/declarations08.f90
M flang/test/Semantics/error_stop1b.f90
M flang/test/Semantics/event01b.f90
M flang/test/Semantics/generic09.f90
M flang/test/Semantics/io11.f90
M flang/test/Semantics/misc-intrinsics.f90
A flang/test/Semantics/modfile75.F90
A flang/test/Semantics/pad-hollerith-arg.f
M flang/test/Semantics/resolve11.f90
A flang/test/Semantics/resolve125.f90
M flang/test/Semantics/resolve17.f90
M flang/test/Semantics/resolve18.f90
M flang/test/Semantics/resolve34.f90
M flang/test/Semantics/resolve94.f90
M flang/test/Transforms/DoConcurrent/basic_device.mlir
M flang/test/Transforms/DoConcurrent/basic_host.mlir
R flang/test/Transforms/DoConcurrent/loop_nest_test.f90
M flang/test/Transforms/DoConcurrent/not_perfectly_nested.f90
M flang/test/Transforms/debug-107988.fir
M flang/test/Transforms/debug-96314.fir
M flang/test/Transforms/debug-allocatable-1.fir
M flang/test/Transforms/debug-assumed-rank-array.fir
M flang/test/Transforms/debug-assumed-shape-array-2.fir
M flang/test/Transforms/debug-assumed-size-array.fir
M flang/test/Transforms/debug-char-type-1.fir
M flang/test/Transforms/debug-class-type.fir
M flang/test/Transforms/debug-common-block.fir
M flang/test/Transforms/debug-complex-1.fir
M flang/test/Transforms/debug-derived-type-2.fir
M flang/test/Transforms/debug-extra-global.fir
M flang/test/Transforms/debug-fixed-array-type.fir
M flang/test/Transforms/debug-fn-info.fir
M flang/test/Transforms/debug-imported-entity.fir
M flang/test/Transforms/debug-index-type.fir
M flang/test/Transforms/debug-line-table-existing.fir
M flang/test/Transforms/debug-line-table-inc-file.fir
M flang/test/Transforms/debug-line-table-inc-same-file.fir
M flang/test/Transforms/debug-line-table.fir
M flang/test/Transforms/debug-local-var.fir
M flang/test/Transforms/debug-module-1.fir
M flang/test/Transforms/debug-ptr-type.fir
M flang/test/Transforms/debug-ref-type.fir
M flang/test/Transforms/debug-tuple-type.fir
M flang/test/Transforms/debug-variable-array-dim.fir
M flang/test/Transforms/debug-variable-char-len.fir
M flang/test/Transforms/debug-vector-type.fir
A flang/test/Transforms/dlti-dependency.fir
M flang/test/Transforms/do_concurrent-to-do_loop-unodered.fir
M flang/test/Transforms/lower-repack-arrays.fir
A flang/test/Transforms/stack-arrays-lifetime.fir
M flang/test/Transforms/tbaa-with-dummy-scope.fir
M flang/test/Transforms/tbaa-with-dummy-scope2.fir
M flang/test/Transforms/tbaa.fir
M flang/test/Transforms/tbaa2.fir
A flang/test/Transforms/tbaa3.fir
A flang/test/Transforms/tbaa4.fir
M flang/test/lit.cfg.py
M flang/test/lit.site.cfg.py.in
M flang/tools/f18-parse-demo/f18-parse-demo.cpp
M flang/tools/f18/CMakeLists.txt
M flang/tools/flang-driver/driver.cpp
M flang/tools/flang-driver/fc1_main.cpp
M flang/unittests/CMakeLists.txt
M flang/unittests/Evaluate/CMakeLists.txt
M flang/unittests/Frontend/CodeGenActionTest.cpp
M flang/unittests/Frontend/CompilerInstanceTest.cpp
R flang/unittests/Runtime/CMakeLists.txt
R flang/unittests/Runtime/CUDA/CMakeLists.txt
M libc/CMakeLists.txt
M libc/cmake/modules/LLVMLibCLibraryRules.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/config/app.h
M libc/config/config.json
M libc/config/darwin/arm/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/riscv/headers.txt
M libc/config/linux/x86_64/entrypoints.txt
A libc/config/uefi/app.h
M libc/config/windows/entrypoints.txt
M libc/docs/configure.rst
M libc/docs/dev/code_style.rst
M libc/docs/dev/source_tree_layout.rst
M libc/docs/gpu/rpc.rst
M libc/docs/headers/math/index.rst
M libc/fuzzing/__support/CMakeLists.txt
M libc/fuzzing/__support/hashtable_fuzz.cpp
M libc/hdr/CMakeLists.txt
A libc/hdr/offsetof_macros.h
A libc/hdr/types/ACTION.h
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/ENTRY.h
M libc/include/CMakeLists.txt
R libc/include/Uefi.h.def
M libc/include/Uefi.yaml
M libc/include/llvm-libc-types/CMakeLists.txt
M libc/include/llvm-libc-types/EFI_STATUS.h
M libc/include/llvm-libc-types/ENTRY.h
M libc/include/llvm-libc-types/jmp_buf.h
M libc/include/math.yaml
M libc/include/setjmp.yaml
M libc/include/stdlib.yaml
M libc/include/sys/syscall.h.def
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/FPUtil/FPBits.h
M libc/src/__support/FPUtil/dyadic_float.h
M libc/src/__support/FPUtil/nearest_integer.h
M libc/src/__support/FPUtil/sqrt.h
M libc/src/__support/GPU/utils.h
M libc/src/__support/HashTable/CMakeLists.txt
M libc/src/__support/HashTable/table.h
M libc/src/__support/OSUtil/uefi/CMakeLists.txt
A libc/src/__support/OSUtil/uefi/error.h
M libc/src/__support/OSUtil/uefi/exit.cpp
M libc/src/__support/OSUtil/uefi/io.cpp
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/acos.cpp
M libc/src/math/generic/asin.cpp
M libc/src/math/generic/asin_utils.h
M libc/src/poll/linux/poll.cpp
M libc/src/search/CMakeLists.txt
M libc/src/search/hsearch.h
M libc/src/search/hsearch_r.h
M libc/src/setjmp/CMakeLists.txt
M libc/src/setjmp/aarch64/CMakeLists.txt
A libc/src/setjmp/aarch64/sigsetjmp.cpp
A libc/src/setjmp/linux/CMakeLists.txt
A libc/src/setjmp/linux/sigsetjmp_epilogue.cpp
M libc/src/setjmp/riscv/CMakeLists.txt
A libc/src/setjmp/riscv/sigsetjmp.cpp
M libc/src/setjmp/setjmp_impl.h
A libc/src/setjmp/siglongjmp.cpp
A libc/src/setjmp/siglongjmp.h
A libc/src/setjmp/sigsetjmp.h
A libc/src/setjmp/sigsetjmp_epilogue.h
M libc/src/setjmp/x86_64/CMakeLists.txt
M libc/src/setjmp/x86_64/setjmp.cpp
A libc/src/setjmp/x86_64/sigsetjmp.cpp
M libc/src/stdio/printf_core/core_structs.h
M libc/src/stdlib/qsort_r.h
M libc/src/string/memory_utils/aarch64/inline_bcmp.h
M libc/src/string/memory_utils/aarch64/inline_memcmp.h
M libc/src/string/memory_utils/aarch64/inline_memmove.h
M libc/src/string/memory_utils/aarch64/inline_memset.h
M libc/src/string/memory_utils/inline_bcmp.h
M libc/src/string/memory_utils/inline_memcmp.h
M libc/src/string/memory_utils/inline_memset.h
M libc/src/string/memory_utils/op_aarch64.h
M libc/src/sys/stat/linux/chmod.cpp
M libc/src/sys/time/linux/getitimer.cpp
M libc/src/sys/time/linux/setitimer.cpp
M libc/src/sys/time/linux/utimes.cpp
A libc/startup/uefi/CMakeLists.txt
A libc/startup/uefi/crt1.cpp
M libc/test/integration/src/__support/GPU/match.cpp
A libc/test/integration/startup/uefi/CMakeLists.txt
A libc/test/integration/startup/uefi/main_without_args.cpp
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/acos_test.cpp
M libc/test/src/math/exp10m1f_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/acos_test.cpp
M libc/test/src/search/lfind_test.cpp
M libc/test/src/search/lsearch_test.cpp
M libc/test/src/setjmp/CMakeLists.txt
A libc/test/src/setjmp/sigsetjmp_test.cpp
M libclc/CMakeLists.txt
R libclc/amdgcn-amdhsa/lib/SOURCES
R libclc/amdgcn-amdhsa/lib/workitem/get_global_size.cl
R libclc/amdgcn-amdhsa/lib/workitem/get_local_size.cl
R libclc/amdgcn-amdhsa/lib/workitem/get_num_groups.cl
R libclc/amdgcn/lib/SOURCES
R libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.ll
R libclc/amdgcn/lib/math/fmax.cl
R libclc/amdgcn/lib/math/fmin.cl
R libclc/amdgcn/lib/mem_fence/fence.cl
R libclc/amdgcn/lib/synchronization/barrier.cl
R libclc/amdgcn/lib/workitem/get_global_offset.cl
R libclc/amdgcn/lib/workitem/get_global_size.cl
R libclc/amdgcn/lib/workitem/get_group_id.cl
R libclc/amdgcn/lib/workitem/get_local_id.cl
R libclc/amdgcn/lib/workitem/get_local_size.cl
R libclc/amdgcn/lib/workitem/get_num_groups.cl
R libclc/amdgcn/lib/workitem/get_work_dim.cl
R libclc/amdgpu/lib/SOURCES
R libclc/amdgpu/lib/math/half_exp.cl
R libclc/amdgpu/lib/math/half_exp10.cl
R libclc/amdgpu/lib/math/half_exp2.cl
R libclc/amdgpu/lib/math/half_log.cl
R libclc/amdgpu/lib/math/half_log10.cl
R libclc/amdgpu/lib/math/half_log2.cl
R libclc/amdgpu/lib/math/half_native_unary.inc
R libclc/amdgpu/lib/math/half_recip.cl
R libclc/amdgpu/lib/math/half_rsqrt.cl
R libclc/amdgpu/lib/math/half_sqrt.cl
M libclc/clc/include/clc/clcfunc.h
M libclc/clc/include/clc/clcmacro.h
M libclc/clc/include/clc/common/clc_degrees.h
M libclc/clc/include/clc/common/clc_radians.h
M libclc/clc/include/clc/common/clc_sign.h
M libclc/clc/include/clc/common/clc_smoothstep.h
A libclc/clc/include/clc/common/clc_step.h
A libclc/clc/include/clc/geometric/binary_decl.inc
A libclc/clc/include/clc/geometric/binary_def.inc
A libclc/clc/include/clc/geometric/clc_cross.h
A libclc/clc/include/clc/geometric/clc_distance.h
M libclc/clc/include/clc/geometric/clc_dot.h
R libclc/clc/include/clc/geometric/clc_dot.inc
A libclc/clc/include/clc/geometric/clc_fast_distance.h
A libclc/clc/include/clc/geometric/clc_fast_length.h
A libclc/clc/include/clc/geometric/clc_length.h
R libclc/clc/include/clc/geometric/floatn.inc
A libclc/clc/include/clc/geometric/unary_decl.inc
A libclc/clc/include/clc/geometric/unary_def.inc
M libclc/clc/include/clc/integer/clc_add_sat.h
M libclc/clc/include/clc/integer/clc_clz.h
M libclc/clc/include/clc/integer/clc_ctz.h
M libclc/clc/include/clc/integer/clc_hadd.h
M libclc/clc/include/clc/integer/clc_mad24.h
M libclc/clc/include/clc/integer/clc_mad_sat.h
M libclc/clc/include/clc/integer/clc_mul24.h
M libclc/clc/include/clc/integer/clc_mul_hi.h
M libclc/clc/include/clc/integer/clc_rhadd.h
M libclc/clc/include/clc/integer/clc_rotate.h
M libclc/clc/include/clc/integer/clc_sub_sat.h
M libclc/clc/include/clc/internal/math/clc_sw_fma.h
M libclc/clc/include/clc/math/clc_acos.h
M libclc/clc/include/clc/math/clc_acosh.h
M libclc/clc/include/clc/math/clc_acospi.h
M libclc/clc/include/clc/math/clc_asin.h
M libclc/clc/include/clc/math/clc_asinh.h
M libclc/clc/include/clc/math/clc_asinpi.h
M libclc/clc/include/clc/math/clc_atan.h
M libclc/clc/include/clc/math/clc_atan2.h
M libclc/clc/include/clc/math/clc_atan2pi.h
M libclc/clc/include/clc/math/clc_atanh.h
M libclc/clc/include/clc/math/clc_atanpi.h
M libclc/clc/include/clc/math/clc_cbrt.inc
M libclc/clc/include/clc/math/clc_ceil.h
M libclc/clc/include/clc/math/clc_copysign.h
A libclc/clc/include/clc/math/clc_cos.h
M libclc/clc/include/clc/math/clc_cosh.h
M libclc/clc/include/clc/math/clc_cospi.h
A libclc/clc/include/clc/math/clc_erf.h
A libclc/clc/include/clc/math/clc_erfc.h
M libclc/clc/include/clc/math/clc_exp.h
M libclc/clc/include/clc/math/clc_exp10.h
M libclc/clc/include/clc/math/clc_exp2.h
M libclc/clc/include/clc/math/clc_exp_helper.h
M libclc/clc/include/clc/math/clc_expm1.h
M libclc/clc/include/clc/math/clc_fabs.h
A libclc/clc/include/clc/math/clc_fdim.h
M libclc/clc/include/clc/math/clc_floor.h
M libclc/clc/include/clc/math/clc_fma.h
A libclc/clc/include/clc/math/clc_fmax.h
A libclc/clc/include/clc/math/clc_fmin.h
M libclc/clc/include/clc/math/clc_fmod.h
A libclc/clc/include/clc/math/clc_fract.h
M libclc/clc/include/clc/math/clc_frexp.h
A libclc/clc/include/clc/math/clc_half_cos.h
A libclc/clc/include/clc/math/clc_half_divide.h
A libclc/clc/include/clc/math/clc_half_exp.h
A libclc/clc/include/clc/math/clc_half_exp10.h
A libclc/clc/include/clc/math/clc_half_exp2.h
A libclc/clc/include/clc/math/clc_half_log.h
A libclc/clc/include/clc/math/clc_half_log10.h
A libclc/clc/include/clc/math/clc_half_log2.h
A libclc/clc/include/clc/math/clc_half_powr.h
A libclc/clc/include/clc/math/clc_half_recip.h
A libclc/clc/include/clc/math/clc_half_rsqrt.h
A libclc/clc/include/clc/math/clc_half_sin.h
A libclc/clc/include/clc/math/clc_half_sqrt.h
A libclc/clc/include/clc/math/clc_half_tan.h
M libclc/clc/include/clc/math/clc_hypot.h
A libclc/clc/include/clc/math/clc_ilogb.h
M libclc/clc/include/clc/math/clc_lgamma.h
M libclc/clc/include/clc/math/clc_lgamma_r.h
M libclc/clc/include/clc/math/clc_log.h
M libclc/clc/include/clc/math/clc_log10.h
M libclc/clc/include/clc/math/clc_log1p.h
M libclc/clc/include/clc/math/clc_log2.h
A libclc/clc/include/clc/math/clc_logb.h
M libclc/clc/include/clc/math/clc_mad.h
A libclc/clc/include/clc/math/clc_maxmag.h
A libclc/clc/include/clc/math/clc_minmag.h
M libclc/clc/include/clc/math/clc_modf.h
M libclc/clc/include/clc/math/clc_nan.h
M libclc/clc/include/clc/math/clc_native_cos.h
M libclc/clc/include/clc/math/clc_native_divide.h
M libclc/clc/include/clc/math/clc_native_exp.h
M libclc/clc/include/clc/math/clc_native_exp10.h
M libclc/clc/include/clc/math/clc_native_exp2.h
M libclc/clc/include/clc/math/clc_native_log.h
M libclc/clc/include/clc/math/clc_native_log10.h
M libclc/clc/include/clc/math/clc_native_log2.h
M libclc/clc/include/clc/math/clc_native_powr.h
M libclc/clc/include/clc/math/clc_native_recip.h
M libclc/clc/include/clc/math/clc_native_rsqrt.h
M libclc/clc/include/clc/math/clc_native_sin.h
M libclc/clc/include/clc/math/clc_native_sqrt.h
M libclc/clc/include/clc/math/clc_native_tan.h
M libclc/clc/include/clc/math/clc_nextafter.h
M libclc/clc/include/clc/math/clc_pow.h
M libclc/clc/include/clc/math/clc_pown.h
M libclc/clc/include/clc/math/clc_powr.h
M libclc/clc/include/clc/math/clc_remainder.h
M libclc/clc/include/clc/math/clc_remquo.h
M libclc/clc/include/clc/math/clc_rint.h
M libclc/clc/include/clc/math/clc_rootn.h
M libclc/clc/include/clc/math/clc_round.h
M libclc/clc/include/clc/math/clc_rsqrt.h
A libclc/clc/include/clc/math/clc_sin.h
A libclc/clc/include/clc/math/clc_sincos.h
M libclc/clc/include/clc/math/clc_sincos_helpers.h
A libclc/clc/include/clc/math/clc_sincos_helpers_fp64.inc
M libclc/clc/include/clc/math/clc_sinh.h
M libclc/clc/include/clc/math/clc_sinpi.h
M libclc/clc/include/clc/math/clc_sqrt.h
A libclc/clc/include/clc/math/clc_tan.h
M libclc/clc/include/clc/math/clc_tanh.h
M libclc/clc/include/clc/math/clc_tanpi.h
M libclc/clc/include/clc/math/clc_tgamma.h
M libclc/clc/include/clc/math/clc_trunc.h
M libclc/clc/include/clc/math/gentype.inc
M libclc/clc/include/clc/math/math.h
M libclc/clc/include/clc/math/remquo_decl.inc
M libclc/clc/include/clc/math/tables.h
R libclc/clc/include/clc/math/unary_builtin.inc
M libclc/clc/include/clc/math/unary_decl_with_int_ptr.inc
A libclc/clc/include/clc/math/unary_decl_with_int_return.inc
M libclc/clc/include/clc/math/unary_decl_with_ptr.inc
M libclc/clc/include/clc/math/unary_def_with_int_ptr.inc
A libclc/clc/include/clc/math/unary_def_with_int_return.inc
M libclc/clc/include/clc/math/unary_def_with_ptr.inc
M libclc/clc/include/clc/relational/clc_bitselect.h
M libclc/clc/include/clc/relational/clc_isfinite.h
M libclc/clc/include/clc/relational/clc_isgreater.h
M libclc/clc/include/clc/relational/clc_isgreaterequal.h
M libclc/clc/include/clc/relational/clc_isless.h
M libclc/clc/include/clc/relational/clc_islessequal.h
M libclc/clc/include/clc/relational/clc_islessgreater.h
M libclc/clc/include/clc/relational/clc_isnormal.h
M libclc/clc/include/clc/relational/clc_isnotequal.h
M libclc/clc/include/clc/relational/clc_isordered.h
M libclc/clc/include/clc/relational/clc_isunordered.h
M libclc/clc/include/clc/relational/clc_signbit.h
A libclc/clc/include/clc/shared/binary_decl_with_scalar_second_arg.inc
A libclc/clc/include/clc/shared/binary_def_with_scalar_second_arg.inc
M libclc/clc/lib/amdgcn/SOURCES
A libclc/clc/lib/amdgcn/math/clc_fmax.cl
A libclc/clc/lib/amdgcn/math/clc_fmin.cl
M libclc/clc/lib/amdgpu/SOURCES
A libclc/clc/lib/amdgpu/math/clc_half_exp.cl
A libclc/clc/lib/amdgpu/math/clc_half_exp10.cl
A libclc/clc/lib/amdgpu/math/clc_half_exp2.cl
A libclc/clc/lib/amdgpu/math/clc_half_log.cl
A libclc/clc/lib/amdgpu/math/clc_half_log10.cl
A libclc/clc/lib/amdgpu/math/clc_half_log2.cl
A libclc/clc/lib/amdgpu/math/clc_half_native_unary.inc
A libclc/clc/lib/amdgpu/math/clc_half_recip.cl
A libclc/clc/lib/amdgpu/math/clc_half_rsqrt.cl
A libclc/clc/lib/amdgpu/math/clc_half_sqrt.cl
M libclc/clc/lib/generic/SOURCES
M libclc/clc/lib/generic/common/clc_sign.inc
A libclc/clc/lib/generic/common/clc_step.cl
A libclc/clc/lib/generic/common/clc_step.inc
A libclc/clc/lib/generic/geometric/clc_cross.cl
A libclc/clc/lib/generic/geometric/clc_cross.inc
A libclc/clc/lib/generic/geometric/clc_distance.cl
A libclc/clc/lib/generic/geometric/clc_distance.inc
A libclc/clc/lib/generic/geometric/clc_fast_distance.cl
A libclc/clc/lib/generic/geometric/clc_fast_distance.inc
A libclc/clc/lib/generic/geometric/clc_fast_length.cl
A libclc/clc/lib/generic/geometric/clc_length.cl
A libclc/clc/lib/generic/geometric/clc_length.inc
M libclc/clc/lib/generic/math/clc_asinpi.inc
M libclc/clc/lib/generic/math/clc_atanpi.inc
M libclc/clc/lib/generic/math/clc_ceil.cl
A libclc/clc/lib/generic/math/clc_cos.cl
A libclc/clc/lib/generic/math/clc_cos.inc
A libclc/clc/lib/generic/math/clc_erf.cl
A libclc/clc/lib/generic/math/clc_erfc.cl
M libclc/clc/lib/generic/math/clc_fabs.cl
A libclc/clc/lib/generic/math/clc_fdim.cl
A libclc/clc/lib/generic/math/clc_fdim.inc
M libclc/clc/lib/generic/math/clc_floor.cl
A libclc/clc/lib/generic/math/clc_fmax.cl
A libclc/clc/lib/generic/math/clc_fmin.cl
A libclc/clc/lib/generic/math/clc_fract.cl
A libclc/clc/lib/generic/math/clc_fract.inc
M libclc/clc/lib/generic/math/clc_frexp.cl
A libclc/clc/lib/generic/math/clc_half_cos.cl
A libclc/clc/lib/generic/math/clc_half_divide.cl
A libclc/clc/lib/generic/math/clc_half_divide.inc
A libclc/clc/lib/generic/math/clc_half_exp.cl
A libclc/clc/lib/generic/math/clc_half_exp10.cl
A libclc/clc/lib/generic/math/clc_half_exp2.cl
A libclc/clc/lib/generic/math/clc_half_log.cl
A libclc/clc/lib/generic/math/clc_half_log10.cl
A libclc/clc/lib/generic/math/clc_half_log2.cl
A libclc/clc/lib/generic/math/clc_half_powr.cl
A libclc/clc/lib/generic/math/clc_half_recip.cl
A libclc/clc/lib/generic/math/clc_half_recip.inc
A libclc/clc/lib/generic/math/clc_half_rsqrt.cl
A libclc/clc/lib/generic/math/clc_half_sin.cl
A libclc/clc/lib/generic/math/clc_half_sqrt.cl
A libclc/clc/lib/generic/math/clc_half_tan.cl
M libclc/clc/lib/generic/math/clc_hypot.cl
A libclc/clc/lib/generic/math/clc_ilogb.cl
A libclc/clc/lib/generic/math/clc_ilogb.inc
M libclc/clc/lib/generic/math/clc_lgamma_r.cl
A libclc/clc/lib/generic/math/clc_logb.cl
A libclc/clc/lib/generic/math/clc_logb.inc
A libclc/clc/lib/generic/math/clc_maxmag.cl
A libclc/clc/lib/generic/math/clc_maxmag.inc
A libclc/clc/lib/generic/math/clc_minmag.cl
A libclc/clc/lib/generic/math/clc_minmag.inc
M libclc/clc/lib/generic/math/clc_modf.inc
M libclc/clc/lib/generic/math/clc_remquo.cl
A libclc/clc/lib/generic/math/clc_remquo.inc
M libclc/clc/lib/generic/math/clc_rint.cl
M libclc/clc/lib/generic/math/clc_rootn.inc
M libclc/clc/lib/generic/math/clc_round.cl
A libclc/clc/lib/generic/math/clc_sin.cl
A libclc/clc/lib/generic/math/clc_sin.inc
A libclc/clc/lib/generic/math/clc_sincos.cl
A libclc/clc/lib/generic/math/clc_sincos.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers.cl
M libclc/clc/lib/generic/math/clc_sincos_helpers.inc
A libclc/clc/lib/generic/math/clc_sincos_helpers_fp64.inc
M libclc/clc/lib/generic/math/clc_tables.cl
A libclc/clc/lib/generic/math/clc_tan.cl
A libclc/clc/lib/generic/math/clc_tan.inc
M libclc/clc/lib/generic/math/clc_trunc.cl
M libclc/clc/lib/generic/misc/clc_shuffle.cl
M libclc/clc/lib/generic/misc/clc_shuffle2.cl
M libclc/clc/lib/generic/relational/clc_bitselect.cl
M libclc/clc/lib/r600/SOURCES
A libclc/clc/lib/r600/math/clc_fmax.cl
A libclc/clc/lib/r600/math/clc_fmin.cl
R libclc/clspv/lib/SOURCES
R libclc/clspv/lib/math/fma.cl
R libclc/clspv/lib/shared/vstore_half.cl
R libclc/clspv/lib/shared/vstore_half.inc
R libclc/clspv/lib/subnormal_config.cl
M libclc/cmake/modules/AddLibclc.cmake
R libclc/generic/include/clc/as_type.h
R libclc/generic/include/clc/async/async_work_group_copy.h
R libclc/generic/include/clc/async/async_work_group_copy.inc
R libclc/generic/include/clc/async/async_work_group_strided_copy.h
R libclc/generic/include/clc/async/async_work_group_strided_copy.inc
R libclc/generic/include/clc/async/gentype.inc
R libclc/generic/include/clc/async/prefetch.h
R libclc/generic/include/clc/async/prefetch.inc
R libclc/generic/include/clc/async/wait_group_events.h
R libclc/generic/include/clc/atomic/atom_add.h
R libclc/generic/include/clc/atomic/atom_and.h
R libclc/generic/include/clc/atomic/atom_cmpxchg.h
R libclc/generic/include/clc/atomic/atom_dec.h
R libclc/generic/include/clc/atomic/atom_decl_int32.inc
R libclc/generic/include/clc/atomic/atom_decl_int64.inc
R libclc/generic/include/clc/atomic/atom_inc.h
R libclc/generic/include/clc/atomic/atom_max.h
R libclc/generic/include/clc/atomic/atom_min.h
R libclc/generic/include/clc/atomic/atom_or.h
R libclc/generic/include/clc/atomic/atom_sub.h
R libclc/generic/include/clc/atomic/atom_xchg.h
R libclc/generic/include/clc/atomic/atom_xor.h
R libclc/generic/include/clc/atomic/atomic_add.h
R libclc/generic/include/clc/atomic/atomic_and.h
R libclc/generic/include/clc/atomic/atomic_cmpxchg.h
R libclc/generic/include/clc/atomic/atomic_dec.h
R libclc/generic/include/clc/atomic/atomic_decl.inc
R libclc/generic/include/clc/atomic/atomic_inc.h
R libclc/generic/include/clc/atomic/atomic_max.h
R libclc/generic/include/clc/atomic/atomic_min.h
R libclc/generic/include/clc/atomic/atomic_or.h
R libclc/generic/include/clc/atomic/atomic_sub.h
R libclc/generic/include/clc/atomic/atomic_xchg.h
R libclc/generic/include/clc/atomic/atomic_xor.h
R libclc/generic/include/clc/clc.h
R libclc/generic/include/clc/common/degrees.h
R libclc/generic/include/clc/common/degrees.inc
R libclc/generic/include/clc/common/mix.h
R libclc/generic/include/clc/common/mix.inc
R libclc/generic/include/clc/common/radians.h
R libclc/generic/include/clc/common/radians.inc
R libclc/generic/include/clc/common/sign.h
R libclc/generic/include/clc/common/smoothstep.h
R libclc/generic/include/clc/common/smoothstep.inc
R libclc/generic/include/clc/common/step.h
R libclc/generic/include/clc/common/step.inc
R libclc/generic/include/clc/convert.h
R libclc/generic/include/clc/explicit_fence/explicit_memory_fence.h
R libclc/generic/include/clc/geometric/cross.h
R libclc/generic/include/clc/geometric/distance.h
R libclc/generic/include/clc/geometric/distance.inc
R libclc/generic/include/clc/geometric/dot.h
R libclc/generic/include/clc/geometric/dot.inc
R libclc/generic/include/clc/geometric/fast_distance.h
R libclc/generic/include/clc/geometric/fast_distance.inc
R libclc/generic/include/clc/geometric/fast_length.h
R libclc/generic/include/clc/geometric/fast_length.inc
R libclc/generic/include/clc/geometric/fast_normalize.h
R libclc/generic/include/clc/geometric/fast_normalize.inc
R libclc/generic/include/clc/geometric/length.h
R libclc/generic/include/clc/geometric/length.inc
R libclc/generic/include/clc/geometric/normalize.h
R libclc/generic/include/clc/geometric/normalize.inc
R libclc/generic/include/clc/image/image.h
R libclc/generic/include/clc/image/image_defines.h
R libclc/generic/include/clc/integer/abs.h
R libclc/generic/include/clc/integer/abs.inc
R libclc/generic/include/clc/integer/abs_diff.h
R libclc/generic/include/clc/integer/abs_diff.inc
R libclc/generic/include/clc/integer/add_sat.h
R libclc/generic/include/clc/integer/add_sat.inc
R libclc/generic/include/clc/integer/clz.h
R libclc/generic/include/clc/integer/ctz.h
R libclc/generic/include/clc/integer/hadd.h
R libclc/generic/include/clc/integer/integer-gentype.inc
R libclc/generic/include/clc/integer/mad24.h
R libclc/generic/include/clc/integer/mad_hi.h
R libclc/generic/include/clc/integer/mad_sat.h
R libclc/generic/include/clc/integer/mad_sat.inc
R libclc/generic/include/clc/integer/mul24.h
R libclc/generic/include/clc/integer/mul_hi.h
R libclc/generic/include/clc/integer/popcount.h
R libclc/generic/include/clc/integer/rhadd.h
R libclc/generic/include/clc/integer/rotate.h
R libclc/generic/include/clc/integer/rotate.inc
R libclc/generic/include/clc/integer/sub_sat.h
R libclc/generic/include/clc/integer/sub_sat.inc
R libclc/generic/include/clc/integer/unary.inc
R libclc/generic/include/clc/integer/upsample.h
R libclc/generic/include/clc/math/acos.h
R libclc/generic/include/clc/math/acosh.h
R libclc/generic/include/clc/math/acospi.h
R libclc/generic/include/clc/math/asin.h
R libclc/generic/include/clc/math/asinh.h
R libclc/generic/include/clc/math/asinpi.h
R libclc/generic/include/clc/math/atan.h
R libclc/generic/include/clc/math/atan2.h
R libclc/generic/include/clc/math/atan2pi.h
R libclc/generic/include/clc/math/atanh.h
R libclc/generic/include/clc/math/atanpi.h
R libclc/generic/include/clc/math/binary_decl_tt.inc
R libclc/generic/include/clc/math/cbrt.h
R libclc/generic/include/clc/math/ceil.h
R libclc/generic/include/clc/math/copysign.h
R libclc/generic/include/clc/math/cos.h
R libclc/generic/include/clc/math/cosh.h
R libclc/generic/include/clc/math/cospi.h
R libclc/generic/include/clc/math/erf.h
R libclc/generic/include/clc/math/erfc.h
R libclc/generic/include/clc/math/exp.h
R libclc/generic/include/clc/math/exp10.h
R libclc/generic/include/clc/math/exp2.h
R libclc/generic/include/clc/math/expm1.h
R libclc/generic/include/clc/math/fabs.h
R libclc/generic/include/clc/math/fdim.h
R libclc/generic/include/clc/math/floor.h
R libclc/generic/include/clc/math/fma.h
R libclc/generic/include/clc/math/fmax.h
R libclc/generic/include/clc/math/fmin.h
R libclc/generic/include/clc/math/fmod.h
R libclc/generic/include/clc/math/fract.h
R libclc/generic/include/clc/math/fract.inc
R libclc/generic/include/clc/math/frexp.h
R libclc/generic/include/clc/math/frexp.inc
R libclc/generic/include/clc/math/half_cos.h
R libclc/generic/include/clc/math/half_divide.h
R libclc/generic/include/clc/math/half_exp.h
R libclc/generic/include/clc/math/half_exp10.h
R libclc/generic/include/clc/math/half_exp2.h
R libclc/generic/include/clc/math/half_log.h
R libclc/generic/include/clc/math/half_log10.h
R libclc/generic/include/clc/math/half_log2.h
R libclc/generic/include/clc/math/half_powr.h
R libclc/generic/include/clc/math/half_recip.h
R libclc/generic/include/clc/math/half_rsqrt.h
R libclc/generic/include/clc/math/half_sin.h
R libclc/generic/include/clc/math/half_sqrt.h
R libclc/generic/include/clc/math/half_tan.h
R libclc/generic/include/clc/math/hypot.h
R libclc/generic/include/clc/math/ilogb.h
R libclc/generic/include/clc/math/ilogb.inc
R libclc/generic/include/clc/math/ldexp.h
R libclc/generic/include/clc/math/ldexp.inc
R libclc/generic/include/clc/math/lgamma.h
R libclc/generic/include/clc/math/lgamma_r.h
R libclc/generic/include/clc/math/log.h
R libclc/generic/include/clc/math/log10.h
R libclc/generic/include/clc/math/log1p.h
R libclc/generic/include/clc/math/log2.h
R libclc/generic/include/clc/math/logb.h
R libclc/generic/include/clc/math/mad.h
R libclc/generic/include/clc/math/maxmag.h
R libclc/generic/include/clc/math/minmag.h
R libclc/generic/include/clc/math/modf.h
R libclc/generic/include/clc/math/nan.h
R libclc/generic/include/clc/math/nan.inc
R libclc/generic/include/clc/math/native_cos.h
R libclc/generic/include/clc/math/native_divide.h
R libclc/generic/include/clc/math/native_exp.h
R libclc/generic/include/clc/math/native_exp10.h
R libclc/generic/include/clc/math/native_exp2.h
R libclc/generic/include/clc/math/native_log.h
R libclc/generic/include/clc/math/native_log10.h
R libclc/generic/include/clc/math/native_log2.h
R libclc/generic/include/clc/math/native_powr.h
R libclc/generic/include/clc/math/native_recip.h
R libclc/generic/include/clc/math/native_rsqrt.h
R libclc/generic/include/clc/math/native_sin.h
R libclc/generic/include/clc/math/native_sqrt.h
R libclc/generic/include/clc/math/native_tan.h
R libclc/generic/include/clc/math/nextafter.h
R libclc/generic/include/clc/math/pow.h
R libclc/generic/include/clc/math/pown.h
R libclc/generic/include/clc/math/powr.h
R libclc/generic/include/clc/math/remainder.h
R libclc/generic/include/clc/math/remquo.h
R libclc/generic/include/clc/math/rint.h
R libclc/generic/include/clc/math/rootn.h
R libclc/generic/include/clc/math/round.h
R libclc/generic/include/clc/math/rsqrt.h
R libclc/generic/include/clc/math/sin.h
R libclc/generic/include/clc/math/sincos.h
R libclc/generic/include/clc/math/sincos.inc
R libclc/generic/include/clc/math/sinh.h
R libclc/generic/include/clc/math/sinpi.h
R libclc/generic/include/clc/math/sqrt.h
R libclc/generic/include/clc/math/tan.h
R libclc/generic/include/clc/math/tanh.h
R libclc/generic/include/clc/math/tanpi.h
R libclc/generic/include/clc/math/tgamma.h
R libclc/generic/include/clc/math/trunc.h
R libclc/generic/include/clc/misc/shuffle.h
R libclc/generic/include/clc/misc/shuffle2.h
R libclc/generic/include/clc/relational/all.h
R libclc/generic/include/clc/relational/any.h
R libclc/generic/include/clc/relational/bitselect.h
R libclc/generic/include/clc/relational/bitselect.inc
R libclc/generic/include/clc/relational/isequal.h
R libclc/generic/include/clc/relational/isfinite.h
R libclc/generic/include/clc/relational/isgreater.h
R libclc/generic/include/clc/relational/isgreaterequal.h
R libclc/generic/include/clc/relational/isinf.h
R libclc/generic/include/clc/relational/isless.h
R libclc/generic/include/clc/relational/islessequal.h
R libclc/generic/include/clc/relational/islessgreater.h
R libclc/generic/include/clc/relational/isnan.h
R libclc/generic/include/clc/relational/isnormal.h
R libclc/generic/include/clc/relational/isnotequal.h
R libclc/generic/include/clc/relational/isordered.h
R libclc/generic/include/clc/relational/isunordered.h
R libclc/generic/include/clc/relational/select.h
R libclc/generic/include/clc/relational/signbit.h
R libclc/generic/include/clc/shared/clamp.h
R libclc/generic/include/clc/shared/clamp.inc
R libclc/generic/include/clc/shared/max.h
R libclc/generic/include/clc/shared/max.inc
R libclc/generic/include/clc/shared/min.h
R libclc/generic/include/clc/shared/min.inc
R libclc/generic/include/clc/shared/vload.h
R libclc/generic/include/clc/shared/vstore.h
R libclc/generic/include/clc/synchronization/barrier.h
R libclc/generic/include/clc/synchronization/cl_mem_fence_flags.h
R libclc/generic/include/clc/workitem/get_global_id.h
R libclc/generic/include/clc/workitem/get_global_offset.h
R libclc/generic/include/clc/workitem/get_global_size.h
R libclc/generic/include/clc/workitem/get_group_id.h
R libclc/generic/include/clc/workitem/get_local_id.h
R libclc/generic/include/clc/workitem/get_local_size.h
R libclc/generic/include/clc/workitem/get_num_groups.h
R libclc/generic/include/clc/workitem/get_work_dim.h
R libclc/generic/include/math/clc_tan.h
R libclc/generic/lib/SOURCES
R libclc/generic/lib/async/async_work_group_copy.cl
R libclc/generic/lib/async/async_work_group_copy.inc
R libclc/generic/lib/async/async_work_group_strided_copy.cl
R libclc/generic/lib/async/async_work_group_strided_copy.inc
R libclc/generic/lib/async/prefetch.cl
R libclc/generic/lib/async/prefetch.inc
R libclc/generic/lib/async/wait_group_events.cl
R libclc/generic/lib/atomic/atom_add.cl
R libclc/generic/lib/atomic/atom_and.cl
R libclc/generic/lib/atomic/atom_cmpxchg.cl
R libclc/generic/lib/atomic/atom_dec.cl
R libclc/generic/lib/atomic/atom_inc.cl
R libclc/generic/lib/atomic/atom_int32_binary.inc
R libclc/generic/lib/atomic/atom_max.cl
R libclc/generic/lib/atomic/atom_min.cl
R libclc/generic/lib/atomic/atom_or.cl
R libclc/generic/lib/atomic/atom_sub.cl
R libclc/generic/lib/atomic/atom_xchg.cl
R libclc/generic/lib/atomic/atom_xor.cl
R libclc/generic/lib/atomic/atomic_add.cl
R libclc/generic/lib/atomic/atomic_and.cl
R libclc/generic/lib/atomic/atomic_cmpxchg.cl
R libclc/generic/lib/atomic/atomic_dec.cl
R libclc/generic/lib/atomic/atomic_inc.cl
R libclc/generic/lib/atomic/atomic_max.cl
R libclc/generic/lib/atomic/atomic_min.cl
R libclc/generic/lib/atomic/atomic_or.cl
R libclc/generic/lib/atomic/atomic_sub.cl
R libclc/generic/lib/atomic/atomic_xchg.cl
R libclc/generic/lib/atomic/atomic_xor.cl
R libclc/generic/lib/common/degrees.cl
R libclc/generic/lib/common/mix.cl
R libclc/generic/lib/common/mix.inc
R libclc/generic/lib/common/radians.cl
R libclc/generic/lib/common/sign.cl
R libclc/generic/lib/common/smoothstep.cl
R libclc/generic/lib/common/step.cl
R libclc/generic/lib/geometric/cross.cl
R libclc/generic/lib/geometric/distance.cl
R libclc/generic/lib/geometric/distance.inc
R libclc/generic/lib/geometric/dot.cl
R libclc/generic/lib/geometric/fast_distance.cl
R libclc/generic/lib/geometric/fast_distance.inc
R libclc/generic/lib/geometric/fast_length.cl
R libclc/generic/lib/geometric/fast_normalize.cl
R libclc/generic/lib/geometric/fast_normalize.inc
R libclc/generic/lib/geometric/length.cl
R libclc/generic/lib/geometric/normalize.cl
R libclc/generic/lib/integer/abs.cl
R libclc/generic/lib/integer/abs.inc
R libclc/generic/lib/integer/abs_diff.cl
R libclc/generic/lib/integer/abs_diff.inc
R libclc/generic/lib/integer/add_sat.cl
R libclc/generic/lib/integer/clz.cl
R libclc/generic/lib/integer/ctz.cl
R libclc/generic/lib/integer/hadd.cl
R libclc/generic/lib/integer/mad24.cl
R libclc/generic/lib/integer/mad_hi.cl
R libclc/generic/lib/integer/mad_sat.cl
R libclc/generic/lib/integer/mul24.cl
R libclc/generic/lib/integer/mul_hi.cl
R libclc/generic/lib/integer/popcount.cl
R libclc/generic/lib/integer/rhadd.cl
R libclc/generic/lib/integer/rotate.cl
R libclc/generic/lib/integer/sub_sat.cl
R libclc/generic/lib/integer/upsample.cl
R libclc/generic/lib/math/acos.cl
R libclc/generic/lib/math/acosh.cl
R libclc/generic/lib/math/acospi.cl
R libclc/generic/lib/math/asin.cl
R libclc/generic/lib/math/asinh.cl
R libclc/generic/lib/math/asinpi.cl
R libclc/generic/lib/math/atan.cl
R libclc/generic/lib/math/atan2.cl
R libclc/generic/lib/math/atan2pi.cl
R libclc/generic/lib/math/atanh.cl
R libclc/generic/lib/math/atanpi.cl
R libclc/generic/lib/math/cbrt.cl
R libclc/generic/lib/math/ceil.cl
R libclc/generic/lib/math/clc_sw_unary.inc
R libclc/generic/lib/math/clc_tan.cl
R libclc/generic/lib/math/copysign.cl
R libclc/generic/lib/math/cos.cl
R libclc/generic/lib/math/cos.inc
R libclc/generic/lib/math/cosh.cl
R libclc/generic/lib/math/cospi.cl
R libclc/generic/lib/math/erf.cl
R libclc/generic/lib/math/erfc.cl
R libclc/generic/lib/math/exp.cl
R libclc/generic/lib/math/exp10.cl
R libclc/generic/lib/math/exp2.cl
R libclc/generic/lib/math/expm1.cl
R libclc/generic/lib/math/fabs.cl
R libclc/generic/lib/math/fdim.cl
R libclc/generic/lib/math/fdim.inc
R libclc/generic/lib/math/floor.cl
R libclc/generic/lib/math/fma.cl
R libclc/generic/lib/math/fmax.cl
R libclc/generic/lib/math/fmax.inc
R libclc/generic/lib/math/fmin.cl
R libclc/generic/lib/math/fmin.inc
R libclc/generic/lib/math/fmod.cl
R libclc/generic/lib/math/fract.cl
R libclc/generic/lib/math/fract.inc
R libclc/generic/lib/math/frexp.cl
R libclc/generic/lib/math/half_binary.inc
R libclc/generic/lib/math/half_cos.cl
R libclc/generic/lib/math/half_divide.cl
R libclc/generic/lib/math/half_exp.cl
R libclc/generic/lib/math/half_exp10.cl
R libclc/generic/lib/math/half_exp2.cl
R libclc/generic/lib/math/half_log.cl
R libclc/generic/lib/math/half_log10.cl
R libclc/generic/lib/math/half_log2.cl
R libclc/generic/lib/math/half_powr.cl
R libclc/generic/lib/math/half_recip.cl
R libclc/generic/lib/math/half_rsqrt.cl
R libclc/generic/lib/math/half_sin.cl
R libclc/generic/lib/math/half_sqrt.cl
R libclc/generic/lib/math/half_tan.cl
R libclc/generic/lib/math/half_unary.inc
R libclc/generic/lib/math/hypot.cl
R libclc/generic/lib/math/ilogb.cl
R libclc/generic/lib/math/ldexp.cl
R libclc/generic/lib/math/ldexp.inc
R libclc/generic/lib/math/lgamma.cl
R libclc/generic/lib/math/lgamma_r.cl
R libclc/generic/lib/math/log.cl
R libclc/generic/lib/math/log10.cl
R libclc/generic/lib/math/log1p.cl
R libclc/generic/lib/math/log2.cl
R libclc/generic/lib/math/logb.cl
R libclc/generic/lib/math/mad.cl
R libclc/generic/lib/math/maxmag.cl
R libclc/generic/lib/math/maxmag.inc
R libclc/generic/lib/math/minmag.cl
R libclc/generic/lib/math/minmag.inc
R libclc/generic/lib/math/modf.cl
R libclc/generic/lib/math/nan.cl
R libclc/generic/lib/math/nan.inc
R libclc/generic/lib/math/native_cos.cl
R libclc/generic/lib/math/native_divide.cl
R libclc/generic/lib/math/native_exp.cl
R libclc/generic/lib/math/native_exp10.cl
R libclc/generic/lib/math/native_exp2.cl
R libclc/generic/lib/math/native_log.cl
R libclc/generic/lib/math/native_log10.cl
R libclc/generic/lib/math/native_log2.cl
R libclc/generic/lib/math/native_powr.cl
R libclc/generic/lib/math/native_recip.cl
R libclc/generic/lib/math/native_rsqrt.cl
R libclc/generic/lib/math/native_sin.cl
R libclc/generic/lib/math/native_sqrt.cl
R libclc/generic/lib/math/native_tan.cl
R libclc/generic/lib/math/nextafter.cl
R libclc/generic/lib/math/pow.cl
R libclc/generic/lib/math/pown.cl
R libclc/generic/lib/math/powr.cl
R libclc/generic/lib/math/remainder.cl
R libclc/generic/lib/math/remquo.cl
R libclc/generic/lib/math/remquo.inc
R libclc/generic/lib/math/rint.cl
R libclc/generic/lib/math/rootn.cl
R libclc/generic/lib/math/round.cl
R libclc/generic/lib/math/rsqrt.cl
R libclc/generic/lib/math/sin.cl
R libclc/generic/lib/math/sin.inc
R libclc/generic/lib/math/sincos.cl
R libclc/generic/lib/math/sincos.inc
R libclc/generic/lib/math/sincos_helpers.cl
R libclc/generic/lib/math/sincos_helpers.h
R libclc/generic/lib/math/sinh.cl
R libclc/generic/lib/math/sinpi.cl
R libclc/generic/lib/math/sqrt.cl
R libclc/generic/lib/math/tables.cl
R libclc/generic/lib/math/tan.cl
R libclc/generic/lib/math/tanh.cl
R libclc/generic/lib/math/tanpi.cl
R libclc/generic/lib/math/tgamma.cl
R libclc/generic/lib/math/trunc.cl
R libclc/generic/lib/misc/shuffle.cl
R libclc/generic/lib/misc/shuffle2.cl
R libclc/generic/lib/relational/all.cl
R libclc/generic/lib/relational/any.cl
R libclc/generic/lib/relational/binary_def.inc
R libclc/generic/lib/relational/bitselect.cl
R libclc/generic/lib/relational/bitselect.inc
R libclc/generic/lib/relational/isequal.cl
R libclc/generic/lib/relational/isfinite.cl
R libclc/generic/lib/relational/isgreater.cl
R libclc/generic/lib/relational/isgreaterequal.cl
R libclc/generic/lib/relational/isinf.cl
R libclc/generic/lib/relational/isless.cl
R libclc/generic/lib/relational/islessequal.cl
R libclc/generic/lib/relational/islessgreater.cl
R libclc/generic/lib/relational/isnan.cl
R libclc/generic/lib/relational/isnormal.cl
R libclc/generic/lib/relational/isnotequal.cl
R libclc/generic/lib/relational/isordered.cl
R libclc/generic/lib/relational/isunordered.cl
R libclc/generic/lib/relational/select.cl
R libclc/generic/lib/relational/signbit.cl
R libclc/generic/lib/relational/unary_def.inc
R libclc/generic/lib/shared/clamp.cl
R libclc/generic/lib/shared/clamp.inc
R libclc/generic/lib/shared/max.cl
R libclc/generic/lib/shared/max.inc
R libclc/generic/lib/shared/min.cl
R libclc/generic/lib/shared/min.inc
R libclc/generic/lib/shared/vload.cl
R libclc/generic/lib/shared/vload_half.inc
R libclc/generic/lib/shared/vstore.cl
R libclc/generic/lib/shared/vstore_half.inc
R libclc/generic/lib/subnormal_config.cl
R libclc/generic/lib/subnormal_disable.ll
R libclc/generic/lib/subnormal_helper_func.ll
R libclc/generic/lib/subnormal_use_default.ll
R libclc/generic/lib/workitem/get_global_id.cl
R libclc/generic/lib/workitem/get_global_size.cl
A libclc/opencl/include/clc/opencl/as_type.h
A libclc/opencl/include/clc/opencl/async/async_work_group_copy.h
A libclc/opencl/include/clc/opencl/async/async_work_group_copy.inc
A libclc/opencl/include/clc/opencl/async/async_work_group_strided_copy.h
A libclc/opencl/include/clc/opencl/async/async_work_group_strided_copy.inc
A libclc/opencl/include/clc/opencl/async/prefetch.h
A libclc/opencl/include/clc/opencl/async/prefetch.inc
A libclc/opencl/include/clc/opencl/async/wait_group_events.h
A libclc/opencl/include/clc/opencl/atomic/atom_add.h
A libclc/opencl/include/clc/opencl/atomic/atom_and.h
A libclc/opencl/include/clc/opencl/atomic/atom_cmpxchg.h
A libclc/opencl/include/clc/opencl/atomic/atom_dec.h
A libclc/opencl/include/clc/opencl/atomic/atom_decl_int32.inc
A libclc/opencl/include/clc/opencl/atomic/atom_decl_int64.inc
A libclc/opencl/include/clc/opencl/atomic/atom_inc.h
A libclc/opencl/include/clc/opencl/atomic/atom_max.h
A libclc/opencl/include/clc/opencl/atomic/atom_min.h
A libclc/opencl/include/clc/opencl/atomic/atom_or.h
A libclc/opencl/include/clc/opencl/atomic/atom_sub.h
A libclc/opencl/include/clc/opencl/atomic/atom_xchg.h
A libclc/opencl/include/clc/opencl/atomic/atom_xor.h
A libclc/opencl/include/clc/opencl/atomic/atomic_add.h
A libclc/opencl/include/clc/opencl/atomic/atomic_and.h
A libclc/opencl/include/clc/opencl/atomic/atomic_cmpxchg.h
A libclc/opencl/include/clc/opencl/atomic/atomic_dec.h
A libclc/opencl/include/clc/opencl/atomic/atomic_decl.inc
A libclc/opencl/include/clc/opencl/atomic/atomic_inc.h
A libclc/opencl/include/clc/opencl/atomic/atomic_max.h
A libclc/opencl/include/clc/opencl/atomic/atomic_min.h
A libclc/opencl/include/clc/opencl/atomic/atomic_or.h
A libclc/opencl/include/clc/opencl/atomic/atomic_sub.h
A libclc/opencl/include/clc/opencl/atomic/atomic_xchg.h
A libclc/opencl/include/clc/opencl/atomic/atomic_xor.h
A libclc/opencl/include/clc/opencl/clc.h
A libclc/opencl/include/clc/opencl/common/degrees.h
A libclc/opencl/include/clc/opencl/common/mix.h
A libclc/opencl/include/clc/opencl/common/mix.inc
A libclc/opencl/include/clc/opencl/common/radians.h
A libclc/opencl/include/clc/opencl/common/sign.h
A libclc/opencl/include/clc/opencl/common/smoothstep.h
A libclc/opencl/include/clc/opencl/common/smoothstep.inc
A libclc/opencl/include/clc/opencl/common/step.h
A libclc/opencl/include/clc/opencl/common/step.inc
A libclc/opencl/include/clc/opencl/convert.h
A libclc/opencl/include/clc/opencl/explicit_fence/explicit_memory_fence.h
A libclc/opencl/include/clc/opencl/geometric/cross.h
A libclc/opencl/include/clc/opencl/geometric/distance.h
A libclc/opencl/include/clc/opencl/geometric/dot.h
A libclc/opencl/include/clc/opencl/geometric/fast_distance.h
A libclc/opencl/include/clc/opencl/geometric/fast_length.h
A libclc/opencl/include/clc/opencl/geometric/fast_normalize.h
A libclc/opencl/include/clc/opencl/geometric/length.h
A libclc/opencl/include/clc/opencl/geometric/normalize.h
A libclc/opencl/include/clc/opencl/image/image.h
A libclc/opencl/include/clc/opencl/image/image_defines.h
A libclc/opencl/include/clc/opencl/integer/abs.h
A libclc/opencl/include/clc/opencl/integer/abs.inc
A libclc/opencl/include/clc/opencl/integer/abs_diff.h
A libclc/opencl/include/clc/opencl/integer/abs_diff.inc
A libclc/opencl/include/clc/opencl/integer/add_sat.h
A libclc/opencl/include/clc/opencl/integer/clz.h
A libclc/opencl/include/clc/opencl/integer/ctz.h
A libclc/opencl/include/clc/opencl/integer/hadd.h
A libclc/opencl/include/clc/opencl/integer/mad24.h
A libclc/opencl/include/clc/opencl/integer/mad_hi.h
A libclc/opencl/include/clc/opencl/integer/mad_sat.h
A libclc/opencl/include/clc/opencl/integer/mul24.h
A libclc/opencl/include/clc/opencl/integer/mul_hi.h
A libclc/opencl/include/clc/opencl/integer/popcount.h
A libclc/opencl/include/clc/opencl/integer/rhadd.h
A libclc/opencl/include/clc/opencl/integer/rotate.h
A libclc/opencl/include/clc/opencl/integer/sub_sat.h
A libclc/opencl/include/clc/opencl/integer/upsample.h
A libclc/opencl/include/clc/opencl/math/acos.h
A libclc/opencl/include/clc/opencl/math/acosh.h
A libclc/opencl/include/clc/opencl/math/acospi.h
A libclc/opencl/include/clc/opencl/math/asin.h
A libclc/opencl/include/clc/opencl/math/asinh.h
A libclc/opencl/include/clc/opencl/math/asinpi.h
A libclc/opencl/include/clc/opencl/math/atan.h
A libclc/opencl/include/clc/opencl/math/atan2.h
A libclc/opencl/include/clc/opencl/math/atan2pi.h
A libclc/opencl/include/clc/opencl/math/atanh.h
A libclc/opencl/include/clc/opencl/math/atanpi.h
A libclc/opencl/include/clc/opencl/math/cbrt.h
A libclc/opencl/include/clc/opencl/math/ceil.h
A libclc/opencl/include/clc/opencl/math/copysign.h
A libclc/opencl/include/clc/opencl/math/cos.h
A libclc/opencl/include/clc/opencl/math/cosh.h
A libclc/opencl/include/clc/opencl/math/cospi.h
A libclc/opencl/include/clc/opencl/math/erf.h
A libclc/opencl/include/clc/opencl/math/erfc.h
A libclc/opencl/include/clc/opencl/math/exp.h
A libclc/opencl/include/clc/opencl/math/exp10.h
A libclc/opencl/include/clc/opencl/math/exp2.h
A libclc/opencl/include/clc/opencl/math/expm1.h
A libclc/opencl/include/clc/opencl/math/fabs.h
A libclc/opencl/include/clc/opencl/math/fdim.h
A libclc/opencl/include/clc/opencl/math/floor.h
A libclc/opencl/include/clc/opencl/math/fma.h
A libclc/opencl/include/clc/opencl/math/fmax.h
A libclc/opencl/include/clc/opencl/math/fmin.h
A libclc/opencl/include/clc/opencl/math/fmod.h
A libclc/opencl/include/clc/opencl/math/fract.h
A libclc/opencl/include/clc/opencl/math/frexp.h
A libclc/opencl/include/clc/opencl/math/half_cos.h
A libclc/opencl/include/clc/opencl/math/half_divide.h
A libclc/opencl/include/clc/opencl/math/half_exp.h
A libclc/opencl/include/clc/opencl/math/half_exp10.h
A libclc/opencl/include/clc/opencl/math/half_exp2.h
A libclc/opencl/include/clc/opencl/math/half_log.h
A libclc/opencl/include/clc/opencl/math/half_log10.h
A libclc/opencl/include/clc/opencl/math/half_log2.h
A libclc/opencl/include/clc/opencl/math/half_powr.h
A libclc/opencl/include/clc/opencl/math/half_recip.h
A libclc/opencl/include/clc/opencl/math/half_rsqrt.h
A libclc/opencl/include/clc/opencl/math/half_sin.h
A libclc/opencl/include/clc/opencl/math/half_sqrt.h
A libclc/opencl/include/clc/opencl/math/half_tan.h
A libclc/opencl/include/clc/opencl/math/hypot.h
A libclc/opencl/include/clc/opencl/math/ilogb.h
A libclc/opencl/include/clc/opencl/math/ldexp.h
A libclc/opencl/include/clc/opencl/math/ldexp.inc
A libclc/opencl/include/clc/opencl/math/lgamma.h
A libclc/opencl/include/clc/opencl/math/lgamma_r.h
A libclc/opencl/include/clc/opencl/math/log.h
A libclc/opencl/include/clc/opencl/math/log10.h
A libclc/opencl/include/clc/opencl/math/log1p.h
A libclc/opencl/include/clc/opencl/math/log2.h
A libclc/opencl/include/clc/opencl/math/logb.h
A libclc/opencl/include/clc/opencl/math/mad.h
A libclc/opencl/include/clc/opencl/math/maxmag.h
A libclc/opencl/include/clc/opencl/math/minmag.h
A libclc/opencl/include/clc/opencl/math/modf.h
A libclc/opencl/include/clc/opencl/math/nan.h
A libclc/opencl/include/clc/opencl/math/nan.inc
A libclc/opencl/include/clc/opencl/math/native_cos.h
A libclc/opencl/include/clc/opencl/math/native_divide.h
A libclc/opencl/include/clc/opencl/math/native_exp.h
A libclc/opencl/include/clc/opencl/math/native_exp10.h
A libclc/opencl/include/clc/opencl/math/native_exp2.h
A libclc/opencl/include/clc/opencl/math/native_log.h
A libclc/opencl/include/clc/opencl/math/native_log10.h
A libclc/opencl/include/clc/opencl/math/native_log2.h
A libclc/opencl/include/clc/opencl/math/native_powr.h
A libclc/opencl/include/clc/opencl/math/native_recip.h
A libclc/opencl/include/clc/opencl/math/native_rsqrt.h
A libclc/opencl/include/clc/opencl/math/native_sin.h
A libclc/opencl/include/clc/opencl/math/native_sqrt.h
A libclc/opencl/include/clc/opencl/math/native_tan.h
A libclc/opencl/include/clc/opencl/math/nextafter.h
A libclc/opencl/include/clc/opencl/math/pow.h
A libclc/opencl/include/clc/opencl/math/pown.h
A libclc/opencl/include/clc/opencl/math/powr.h
A libclc/opencl/include/clc/opencl/math/remainder.h
A libclc/opencl/include/clc/opencl/math/remquo.h
A libclc/opencl/include/clc/opencl/math/rint.h
A libclc/opencl/include/clc/opencl/math/rootn.h
A libclc/opencl/include/clc/opencl/math/round.h
A libclc/opencl/include/clc/opencl/math/rsqrt.h
A libclc/opencl/include/clc/opencl/math/sin.h
A libclc/opencl/include/clc/opencl/math/sincos.h
A libclc/opencl/include/clc/opencl/math/sinh.h
A libclc/opencl/include/clc/opencl/math/sinpi.h
A libclc/opencl/include/clc/opencl/math/sqrt.h
A libclc/opencl/include/clc/opencl/math/tan.h
A libclc/opencl/include/clc/opencl/math/tanh.h
A libclc/opencl/include/clc/opencl/math/tanpi.h
A libclc/opencl/include/clc/opencl/math/tgamma.h
A libclc/opencl/include/clc/opencl/math/trunc.h
A libclc/opencl/include/clc/opencl/misc/shuffle.h
A libclc/opencl/include/clc/opencl/misc/shuffle2.h
A libclc/opencl/include/clc/opencl/relational/all.h
A libclc/opencl/include/clc/opencl/relational/any.h
A libclc/opencl/include/clc/opencl/relational/bitselect.h
A libclc/opencl/include/clc/opencl/relational/bitselect.inc
A libclc/opencl/include/clc/opencl/relational/isequal.h
A libclc/opencl/include/clc/opencl/relational/isfinite.h
A libclc/opencl/include/clc/opencl/relational/isgreater.h
A libclc/opencl/include/clc/opencl/relational/isgreaterequal.h
A libclc/opencl/include/clc/opencl/relational/isinf.h
A libclc/opencl/include/clc/opencl/relational/isless.h
A libclc/opencl/include/clc/opencl/relational/islessequal.h
A libclc/opencl/include/clc/opencl/relational/islessgreater.h
A libclc/opencl/include/clc/opencl/relational/isnan.h
A libclc/opencl/include/clc/opencl/relational/isnormal.h
A libclc/opencl/include/clc/opencl/relational/isnotequal.h
A libclc/opencl/include/clc/opencl/relational/isordered.h
A libclc/opencl/include/clc/opencl/relational/isunordered.h
A libclc/opencl/include/clc/opencl/relational/select.h
A libclc/opencl/include/clc/opencl/relational/signbit.h
A libclc/opencl/include/clc/opencl/shared/clamp.h
A libclc/opencl/include/clc/opencl/shared/clamp.inc
A libclc/opencl/include/clc/opencl/shared/max.h
A libclc/opencl/include/clc/opencl/shared/max.inc
A libclc/opencl/include/clc/opencl/shared/min.h
A libclc/opencl/include/clc/opencl/shared/min.inc
A libclc/opencl/include/clc/opencl/shared/vload.h
A libclc/opencl/include/clc/opencl/shared/vstore.h
A libclc/opencl/include/clc/opencl/synchronization/barrier.h
A libclc/opencl/include/clc/opencl/synchronization/cl_mem_fence_flags.h
A libclc/opencl/include/clc/opencl/workitem/get_global_id.h
A libclc/opencl/include/clc/opencl/workitem/get_global_offset.h
A libclc/opencl/include/clc/opencl/workitem/get_global_size.h
A libclc/opencl/include/clc/opencl/workitem/get_group_id.h
A libclc/opencl/include/clc/opencl/workitem/get_local_id.h
A libclc/opencl/include/clc/opencl/workitem/get_local_size.h
A libclc/opencl/include/clc/opencl/workitem/get_num_groups.h
A libclc/opencl/include/clc/opencl/workitem/get_work_dim.h
A libclc/opencl/lib/amdgcn-amdhsa/SOURCES
A libclc/opencl/lib/amdgcn-amdhsa/workitem/get_global_size.cl
A libclc/opencl/lib/amdgcn-amdhsa/workitem/get_local_size.cl
A libclc/opencl/lib/amdgcn-amdhsa/workitem/get_num_groups.cl
A libclc/opencl/lib/amdgcn/SOURCES
A libclc/opencl/lib/amdgcn/cl_khr_int64_extended_atomics/minmax_helpers.ll
A libclc/opencl/lib/amdgcn/mem_fence/fence.cl
A libclc/opencl/lib/amdgcn/synchronization/barrier.cl
A libclc/opencl/lib/amdgcn/workitem/get_global_offset.cl
A libclc/opencl/lib/amdgcn/workitem/get_global_size.cl
A libclc/opencl/lib/amdgcn/workitem/get_group_id.cl
A libclc/opencl/lib/amdgcn/workitem/get_local_id.cl
A libclc/opencl/lib/amdgcn/workitem/get_local_size.cl
A libclc/opencl/lib/amdgcn/workitem/get_num_groups.cl
A libclc/opencl/lib/amdgcn/workitem/get_work_dim.cl
A libclc/opencl/lib/clspv/SOURCES
A libclc/opencl/lib/clspv/math/fma.cl
A libclc/opencl/lib/clspv/shared/vstore_half.cl
A libclc/opencl/lib/clspv/shared/vstore_half.inc
A libclc/opencl/lib/clspv/subnormal_config.cl
A libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/generic/async/async_work_group_copy.cl
A libclc/opencl/lib/generic/async/async_work_group_copy.inc
A libclc/opencl/lib/generic/async/async_work_group_strided_copy.cl
A libclc/opencl/lib/generic/async/async_work_group_strided_copy.inc
A libclc/opencl/lib/generic/async/prefetch.cl
A libclc/opencl/lib/generic/async/prefetch.inc
A libclc/opencl/lib/generic/async/wait_group_events.cl
A libclc/opencl/lib/generic/atomic/atom_add.cl
A libclc/opencl/lib/generic/atomic/atom_and.cl
A libclc/opencl/lib/generic/atomic/atom_cmpxchg.cl
A libclc/opencl/lib/generic/atomic/atom_dec.cl
A libclc/opencl/lib/generic/atomic/atom_inc.cl
A libclc/opencl/lib/generic/atomic/atom_int32_binary.inc
A libclc/opencl/lib/generic/atomic/atom_max.cl
A libclc/opencl/lib/generic/atomic/atom_min.cl
A libclc/opencl/lib/generic/atomic/atom_or.cl
A libclc/opencl/lib/generic/atomic/atom_sub.cl
A libclc/opencl/lib/generic/atomic/atom_xchg.cl
A libclc/opencl/lib/generic/atomic/atom_xor.cl
A libclc/opencl/lib/generic/atomic/atomic_add.cl
A libclc/opencl/lib/generic/atomic/atomic_and.cl
A libclc/opencl/lib/generic/atomic/atomic_cmpxchg.cl
A libclc/opencl/lib/generic/atomic/atomic_dec.cl
A libclc/opencl/lib/generic/atomic/atomic_inc.cl
A libclc/opencl/lib/generic/atomic/atomic_max.cl
A libclc/opencl/lib/generic/atomic/atomic_min.cl
A libclc/opencl/lib/generic/atomic/atomic_or.cl
A libclc/opencl/lib/generic/atomic/atomic_sub.cl
A libclc/opencl/lib/generic/atomic/atomic_xchg.cl
A libclc/opencl/lib/generic/atomic/atomic_xor.cl
A libclc/opencl/lib/generic/common/degrees.cl
A libclc/opencl/lib/generic/common/mix.cl
A libclc/opencl/lib/generic/common/mix.inc
A libclc/opencl/lib/generic/common/radians.cl
A libclc/opencl/lib/generic/common/sign.cl
A libclc/opencl/lib/generic/common/smoothstep.cl
A libclc/opencl/lib/generic/common/step.cl
A libclc/opencl/lib/generic/common/step.inc
A libclc/opencl/lib/generic/geometric/cross.cl
A libclc/opencl/lib/generic/geometric/distance.cl
A libclc/opencl/lib/generic/geometric/dot.cl
A libclc/opencl/lib/generic/geometric/fast_distance.cl
A libclc/opencl/lib/generic/geometric/fast_length.cl
A libclc/opencl/lib/generic/geometric/fast_normalize.cl
A libclc/opencl/lib/generic/geometric/fast_normalize.inc
A libclc/opencl/lib/generic/geometric/length.cl
A libclc/opencl/lib/generic/geometric/normalize.cl
A libclc/opencl/lib/generic/integer/abs.cl
A libclc/opencl/lib/generic/integer/abs.inc
A libclc/opencl/lib/generic/integer/abs_diff.cl
A libclc/opencl/lib/generic/integer/abs_diff.inc
A libclc/opencl/lib/generic/integer/add_sat.cl
A libclc/opencl/lib/generic/integer/clz.cl
A libclc/opencl/lib/generic/integer/ctz.cl
A libclc/opencl/lib/generic/integer/hadd.cl
A libclc/opencl/lib/generic/integer/mad24.cl
A libclc/opencl/lib/generic/integer/mad_hi.cl
A libclc/opencl/lib/generic/integer/mad_sat.cl
A libclc/opencl/lib/generic/integer/mul24.cl
A libclc/opencl/lib/generic/integer/mul_hi.cl
A libclc/opencl/lib/generic/integer/popcount.cl
A libclc/opencl/lib/generic/integer/rhadd.cl
A libclc/opencl/lib/generic/integer/rotate.cl
A libclc/opencl/lib/generic/integer/sub_sat.cl
A libclc/opencl/lib/generic/integer/upsample.cl
A libclc/opencl/lib/generic/math/acos.cl
A libclc/opencl/lib/generic/math/acosh.cl
A libclc/opencl/lib/generic/math/acospi.cl
A libclc/opencl/lib/generic/math/asin.cl
A libclc/opencl/lib/generic/math/asinh.cl
A libclc/opencl/lib/generic/math/asinpi.cl
A libclc/opencl/lib/generic/math/atan.cl
A libclc/opencl/lib/generic/math/atan2.cl
A libclc/opencl/lib/generic/math/atan2pi.cl
A libclc/opencl/lib/generic/math/atanh.cl
A libclc/opencl/lib/generic/math/atanpi.cl
A libclc/opencl/lib/generic/math/cbrt.cl
A libclc/opencl/lib/generic/math/ceil.cl
A libclc/opencl/lib/generic/math/copysign.cl
A libclc/opencl/lib/generic/math/cos.cl
A libclc/opencl/lib/generic/math/cosh.cl
A libclc/opencl/lib/generic/math/cospi.cl
A libclc/opencl/lib/generic/math/erf.cl
A libclc/opencl/lib/generic/math/erfc.cl
A libclc/opencl/lib/generic/math/exp.cl
A libclc/opencl/lib/generic/math/exp10.cl
A libclc/opencl/lib/generic/math/exp2.cl
A libclc/opencl/lib/generic/math/expm1.cl
A libclc/opencl/lib/generic/math/fabs.cl
A libclc/opencl/lib/generic/math/fdim.cl
A libclc/opencl/lib/generic/math/floor.cl
A libclc/opencl/lib/generic/math/fma.cl
A libclc/opencl/lib/generic/math/fmax.cl
A libclc/opencl/lib/generic/math/fmax.inc
A libclc/opencl/lib/generic/math/fmin.cl
A libclc/opencl/lib/generic/math/fmin.inc
A libclc/opencl/lib/generic/math/fmod.cl
A libclc/opencl/lib/generic/math/fract.cl
A libclc/opencl/lib/generic/math/frexp.cl
A libclc/opencl/lib/generic/math/half_cos.cl
A libclc/opencl/lib/generic/math/half_divide.cl
A libclc/opencl/lib/generic/math/half_exp.cl
A libclc/opencl/lib/generic/math/half_exp10.cl
A libclc/opencl/lib/generic/math/half_exp2.cl
A libclc/opencl/lib/generic/math/half_log.cl
A libclc/opencl/lib/generic/math/half_log10.cl
A libclc/opencl/lib/generic/math/half_log2.cl
A libclc/opencl/lib/generic/math/half_powr.cl
A libclc/opencl/lib/generic/math/half_recip.cl
A libclc/opencl/lib/generic/math/half_rsqrt.cl
A libclc/opencl/lib/generic/math/half_sin.cl
A libclc/opencl/lib/generic/math/half_sqrt.cl
A libclc/opencl/lib/generic/math/half_tan.cl
A libclc/opencl/lib/generic/math/hypot.cl
A libclc/opencl/lib/generic/math/ilogb.cl
A libclc/opencl/lib/generic/math/ldexp.cl
A libclc/opencl/lib/generic/math/ldexp.inc
A libclc/opencl/lib/generic/math/lgamma.cl
A libclc/opencl/lib/generic/math/lgamma_r.cl
A libclc/opencl/lib/generic/math/log.cl
A libclc/opencl/lib/generic/math/log10.cl
A libclc/opencl/lib/generic/math/log1p.cl
A libclc/opencl/lib/generic/math/log2.cl
A libclc/opencl/lib/generic/math/logb.cl
A libclc/opencl/lib/generic/math/mad.cl
A libclc/opencl/lib/generic/math/maxmag.cl
A libclc/opencl/lib/generic/math/minmag.cl
A libclc/opencl/lib/generic/math/modf.cl
A libclc/opencl/lib/generic/math/nan.cl
A libclc/opencl/lib/generic/math/nan.inc
A libclc/opencl/lib/generic/math/native_cos.cl
A libclc/opencl/lib/generic/math/native_divide.cl
A libclc/opencl/lib/generic/math/native_exp.cl
A libclc/opencl/lib/generic/math/native_exp10.cl
A libclc/opencl/lib/generic/math/native_exp2.cl
A libclc/opencl/lib/generic/math/native_log.cl
A libclc/opencl/lib/generic/math/native_log10.cl
A libclc/opencl/lib/generic/math/native_log2.cl
A libclc/opencl/lib/generic/math/native_powr.cl
A libclc/opencl/lib/generic/math/native_recip.cl
A libclc/opencl/lib/generic/math/native_rsqrt.cl
A libclc/opencl/lib/generic/math/native_sin.cl
A libclc/opencl/lib/generic/math/native_sqrt.cl
A libclc/opencl/lib/generic/math/native_tan.cl
A libclc/opencl/lib/generic/math/nextafter.cl
A libclc/opencl/lib/generic/math/pow.cl
A libclc/opencl/lib/generic/math/pown.cl
A libclc/opencl/lib/generic/math/powr.cl
A libclc/opencl/lib/generic/math/remainder.cl
A libclc/opencl/lib/generic/math/remquo.cl
A libclc/opencl/lib/generic/math/remquo.inc
A libclc/opencl/lib/generic/math/rint.cl
A libclc/opencl/lib/generic/math/rootn.cl
A libclc/opencl/lib/generic/math/round.cl
A libclc/opencl/lib/generic/math/rsqrt.cl
A libclc/opencl/lib/generic/math/sin.cl
A libclc/opencl/lib/generic/math/sincos.cl
A libclc/opencl/lib/generic/math/sinh.cl
A libclc/opencl/lib/generic/math/sinpi.cl
A libclc/opencl/lib/generic/math/sqrt.cl
A libclc/opencl/lib/generic/math/tan.cl
A libclc/opencl/lib/generic/math/tanh.cl
A libclc/opencl/lib/generic/math/tanpi.cl
A libclc/opencl/lib/generic/math/tgamma.cl
A libclc/opencl/lib/generic/math/trunc.cl
A libclc/opencl/lib/generic/misc/shuffle.cl
A libclc/opencl/lib/generic/misc/shuffle2.cl
A libclc/opencl/lib/generic/relational/all.cl
A libclc/opencl/lib/generic/relational/any.cl
A libclc/opencl/lib/generic/relational/binary_def.inc
A libclc/opencl/lib/generic/relational/bitselect.cl
A libclc/opencl/lib/generic/relational/bitselect.inc
A libclc/opencl/lib/generic/relational/isequal.cl
A libclc/opencl/lib/generic/relational/isfinite.cl
A libclc/opencl/lib/generic/relational/isgreater.cl
A libclc/opencl/lib/generic/relational/isgreaterequal.cl
A libclc/opencl/lib/generic/relational/isinf.cl
A libclc/opencl/lib/generic/relational/isless.cl
A libclc/opencl/lib/generic/relational/islessequal.cl
A libclc/opencl/lib/generic/relational/islessgreater.cl
A libclc/opencl/lib/generic/relational/isnan.cl
A libclc/opencl/lib/generic/relational/isnormal.cl
A libclc/opencl/lib/generic/relational/isnotequal.cl
A libclc/opencl/lib/generic/relational/isordered.cl
A libclc/opencl/lib/generic/relational/isunordered.cl
A libclc/opencl/lib/generic/relational/select.cl
A libclc/opencl/lib/generic/relational/signbit.cl
A libclc/opencl/lib/generic/relational/unary_def.inc
A libclc/opencl/lib/generic/shared/clamp.cl
A libclc/opencl/lib/generic/shared/clamp.inc
A libclc/opencl/lib/generic/shared/max.cl
A libclc/opencl/lib/generic/shared/max.inc
A libclc/opencl/lib/generic/shared/min.cl
A libclc/opencl/lib/generic/shared/min.inc
A libclc/opencl/lib/generic/shared/vload.cl
A libclc/opencl/lib/generic/shared/vload_half.inc
A libclc/opencl/lib/generic/shared/vstore.cl
A libclc/opencl/lib/generic/shared/vstore_half.inc
A libclc/opencl/lib/generic/subnormal_config.cl
A libclc/opencl/lib/generic/subnormal_disable.ll
A libclc/opencl/lib/generic/subnormal_helper_func.ll
A libclc/opencl/lib/generic/subnormal_use_default.ll
A libclc/opencl/lib/generic/workitem/get_global_id.cl
A libclc/opencl/lib/generic/workitem/get_global_size.cl
A libclc/opencl/lib/ptx-nvidiacl/SOURCES
A libclc/opencl/lib/ptx-nvidiacl/mem_fence/fence.cl
A libclc/opencl/lib/ptx-nvidiacl/synchronization/barrier.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_global_id.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_group_id.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_id.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_size.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_num_groups.cl
A libclc/opencl/lib/r600/SOURCES
R libclc/ptx-nvidiacl/lib/SOURCES
Log Message:
-----------
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.5
[skip ci]
Commit: 095fcf0f72c9d083fa638a167c6f123ae661014a
https://github.com/llvm/llvm-project/commit/095fcf0f72c9d083fa638a167c6f123ae661014a
Author: Koakuma <koachan at protonmail.com>
Date: 2025-05-23 (Fri, 23 May 2025)
Changed paths:
M .ci/generate_test_report_lib.py
M .ci/generate_test_report_lib_test.py
M .ci/metrics/metrics.py
M .github/new-prs-labeler.yml
M .github/workflows/containers/github-action-ci-windows/Dockerfile
M .github/workflows/containers/github-action-ci/Dockerfile
M .github/workflows/libc-fullbuild-tests.yml
M .github/workflows/libcxx-build-and-test.yaml
M .github/workflows/premerge.yaml
M CONTRIBUTING.md
M bolt/CMakeLists.txt
M bolt/Maintainers.txt
M bolt/docs/BinaryAnalysis.md
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/DIEBuilder.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Passes/FrameAnalysis.h
M bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/include/bolt/Profile/DataReader.h
M bolt/include/bolt/Profile/Heatmap.h
M bolt/include/bolt/Profile/ProfileYAMLMapping.h
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Core/BinaryFunctionProfile.cpp
M bolt/lib/Core/BinarySection.cpp
M bolt/lib/Core/DIEBuilder.cpp
M bolt/lib/Core/DebugData.cpp
M bolt/lib/Core/DebugNames.cpp
M bolt/lib/Core/ParallelUtilities.cpp
M bolt/lib/Passes/AsmDump.cpp
M bolt/lib/Passes/BinaryPasses.cpp
M bolt/lib/Passes/FrameAnalysis.cpp
M bolt/lib/Passes/HFSort.cpp
M bolt/lib/Passes/LongJmp.cpp
M bolt/lib/Passes/MCF.cpp
M bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/lib/Passes/PatchEntries.cpp
M bolt/lib/Passes/PettisAndHansen.cpp
M bolt/lib/Passes/RetpolineInsertion.cpp
M bolt/lib/Passes/ShrinkWrapping.cpp
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Profile/DataReader.cpp
M bolt/lib/Profile/Heatmap.cpp
M bolt/lib/Profile/YAMLProfileReader.cpp
M bolt/lib/Profile/YAMLProfileWriter.cpp
M bolt/lib/Rewrite/BinaryPassManager.cpp
M bolt/lib/Rewrite/BuildIDRewriter.cpp
M bolt/lib/Rewrite/DWARFRewriter.cpp
M bolt/lib/Rewrite/MachORewriteInstance.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/RuntimeLibs/RuntimeLibrary.cpp
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
M bolt/lib/Target/AArch64/AArch64MCSymbolizer.h
M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
M bolt/lib/Target/X86/X86MCSymbolizer.h
M bolt/lib/Utils/CommandLineOpts.cpp
M bolt/test/AArch64/check-init-not-moved.s
M bolt/test/AArch64/lite-mode.s
M bolt/test/AArch64/pad-before-funcs.s
A bolt/test/AArch64/skip-non-vfuncptr-reloc-in-relative-vtable.s
M bolt/test/RISCV/reloc-jt.s
M bolt/test/X86/bolt-address-translation-yaml.test
M bolt/test/X86/branch-data.test
M bolt/test/X86/callcont-fallthru.s
M bolt/test/X86/double-rel-scan.s
M bolt/test/X86/double-rel.s
A bolt/test/X86/fix-branches-broken-cfg.s
A bolt/test/X86/heatmap-preagg.test
M bolt/test/X86/pre-aggregated-perf.test
M bolt/test/X86/reader-stale-yaml-std.test
M bolt/test/X86/reader-stale-yaml.test
M bolt/test/binary-analysis/AArch64/gs-pacret-autiasp.s
A bolt/test/binary-analysis/AArch64/gs-pauth-address-checks.s
M bolt/test/binary-analysis/AArch64/gs-pauth-address-materialization.s
M bolt/test/binary-analysis/AArch64/gs-pauth-calls.s
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
A bolt/test/binary-analysis/AArch64/gs-pauth-signing-oracles.s
M bolt/test/non-empty-debug-line.test
M bolt/test/perf2bolt/perf_test.test
M bolt/test/runtime/X86/fdata-escape-chars.ll
M bolt/tools/bat-dump/bat-dump.cpp
M bolt/tools/heatmap/heatmap.cpp
M bolt/tools/merge-fdata/merge-fdata.cpp
M bolt/unittests/Core/BinaryContext.cpp
M bolt/unittests/Core/MCPlusBuilder.cpp
M bolt/unittests/Core/MemoryMaps.cpp
M clang-tools-extra/Maintainers.txt
M clang-tools-extra/clang-apply-replacements/tool/ClangApplyReplacementsMain.cpp
M clang-tools-extra/clang-change-namespace/ChangeNamespace.cpp
M clang-tools-extra/clang-change-namespace/tool/ClangChangeNamespace.cpp
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/BitcodeWriter.cpp
M clang-tools-extra/clang-doc/CMakeLists.txt
M clang-tools-extra/clang-doc/Generators.cpp
M clang-tools-extra/clang-doc/Generators.h
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
A clang-tools-extra/clang-doc/HTMLMustacheGenerator.cpp
M clang-tools-extra/clang-doc/MDGenerator.cpp
M clang-tools-extra/clang-doc/Mapper.cpp
M clang-tools-extra/clang-doc/Mapper.h
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/clang-doc/Serialize.h
M clang-tools-extra/clang-doc/YAMLGenerator.cpp
A clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
A clang-tools-extra/clang-doc/assets/class-template.mustache
A clang-tools-extra/clang-doc/assets/comment-template.mustache
A clang-tools-extra/clang-doc/assets/enum-template.mustache
A clang-tools-extra/clang-doc/assets/function-template.mustache
A clang-tools-extra/clang-doc/assets/mustache-index.js
A clang-tools-extra/clang-doc/assets/namespace-template.mustache
A clang-tools-extra/clang-doc/assets/template.mustache
M clang-tools-extra/clang-doc/support/CMakeLists.txt
A clang-tools-extra/clang-doc/support/Utils.cpp
A clang-tools-extra/clang-doc/support/Utils.h
M clang-tools-extra/clang-doc/tool/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/IncludeFixer.cpp
M clang-tools-extra/clang-include-fixer/find-all-symbols/STLPostfixHeaderMap.cpp
M clang-tools-extra/clang-include-fixer/find-all-symbols/SymbolInfo.cpp
M clang-tools-extra/clang-include-fixer/tool/ClangIncludeFixer.cpp
M clang-tools-extra/clang-move/tool/ClangMove.cpp
M clang-tools-extra/clang-query/Query.cpp
M clang-tools-extra/clang-reorder-fields/tool/ClangReorderFields.cpp
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.h
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
A clang-tools-extra/clang-tidy/bugprone/MisleadingSetterOfReferenceCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/MisleadingSetterOfReferenceCheck.h
M clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.cpp
M clang-tools-extra/clang-tidy/concurrency/MtUnsafeCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
M clang-tools-extra/clang-tidy/llvm/HeaderGuardCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConfusableTable/BuildConfusableTable.cpp
M clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.cpp
M clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.h
M clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.cpp
M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.h
M clang-tools-extra/clang-tidy/plugin/ClangTidyPlugin.cpp
M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
M clang-tools-extra/clang-tidy/readability/MagicNumbersCheck.cpp
M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/CodeComplete.h
M clang-tools-extra/clangd/CompileCommands.cpp
M clang-tools-extra/clangd/Compiler.cpp
M clang-tools-extra/clangd/Config.h
M clang-tools-extra/clangd/ConfigCompile.cpp
M clang-tools-extra/clangd/ConfigFragment.h
M clang-tools-extra/clangd/ConfigYAML.cpp
M clang-tools-extra/clangd/Diagnostics.cpp
M clang-tools-extra/clangd/DumpAST.cpp
M clang-tools-extra/clangd/FindTarget.cpp
M clang-tools-extra/clangd/Hover.cpp
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang-tools-extra/clangd/ParsedAST.cpp
M clang-tools-extra/clangd/Preamble.cpp
M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
M clang-tools-extra/clangd/index/CanonicalIncludes.cpp
M clang-tools-extra/clangd/index/FileIndex.cpp
M clang-tools-extra/clangd/index/FileIndex.h
M clang-tools-extra/clangd/index/StdLib.cpp
M clang-tools-extra/clangd/index/YAMLSerialization.cpp
M clang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
M clang-tools-extra/clangd/index/remote/Index.proto
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
M clang-tools-extra/clangd/refactor/Rename.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
M clang-tools-extra/clangd/unittests/ConfigYAMLTests.cpp
M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
M clang-tools-extra/clangd/unittests/ProjectAwareIndexTests.cpp
M clang-tools-extra/clangd/unittests/SerializationTests.cpp
M clang-tools-extra/clangd/unittests/StdLibTests.cpp
M clang-tools-extra/clangd/unittests/TestTU.cpp
M clang-tools-extra/clangd/unittests/remote/MarshallingTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/TweakTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/boost/use-ranges.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/casting-through-void.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/crtp-constructor-accessibility.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/misleading-setter-of-reference.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/include-cleaner.rst
M clang-tools-extra/include-cleaner/lib/HTMLReport.cpp
M clang-tools-extra/include-cleaner/lib/Record.cpp
M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
M clang-tools-extra/include-cleaner/test/tool.cpp
M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
M clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp
M clang-tools-extra/modularize/Modularize.cpp
M clang-tools-extra/modularize/ModularizeUtilities.cpp
M clang-tools-extra/modularize/ModularizeUtilities.h
M clang-tools-extra/modularize/ModuleAssistant.cpp
M clang-tools-extra/modularize/PreprocessorTracker.cpp
M clang-tools-extra/pp-trace/PPCallbacksTracker.cpp
A clang-tools-extra/test/clang-doc/comments-in-macros.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/misleading-setter-of-reference.cpp
M clang-tools-extra/test/clang-tidy/checkers/concurrency/mt-unsafe-glibc.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner-wrong-config.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value.cpp
M clang-tools-extra/unittests/clang-apply-replacements/ApplyReplacementsTest.cpp
M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
M clang-tools-extra/unittests/clang-doc/CMakeLists.txt
M clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
A clang-tools-extra/unittests/clang-doc/HTMLMustacheGeneratorTest.cpp
M clang-tools-extra/unittests/clang-doc/MDGeneratorTest.cpp
M clang-tools-extra/unittests/clang-doc/MergeTest.cpp
M clang-tools-extra/unittests/clang-doc/SerializeTest.cpp
M clang-tools-extra/unittests/clang-doc/YAMLGeneratorTest.cpp
A clang-tools-extra/unittests/clang-doc/config.h.cmake
M clang-tools-extra/unittests/clang-tidy/ClangTidyOptionsTest.cpp
M clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h
M clang-tools-extra/unittests/clang-tidy/IncludeCleanerTest.cpp
M clang-tools-extra/unittests/include/common/VirtualFileHelper.h
M clang/CMakeLists.txt
M clang/Maintainers.rst
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_cursor.py
A clang/bindings/python/tests/cindex/test_lib.py
M clang/bindings/python/tests/cindex/test_location.py
M clang/bindings/python/tests/cindex/test_source_range.py
A clang/cmake/caches/Fuchsia-stage2-instrumented.cmake
M clang/cmake/caches/Fuchsia.cmake
M clang/docs/BoundsSafety.rst
M clang/docs/BoundsSafetyAdoptionGuide.rst
M clang/docs/CMakeLists.txt
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/CommandGuide/clang.rst
M clang/docs/DebuggingCoroutines.rst
M clang/docs/HIPSupport.rst
M clang/docs/InternalsManual.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/Modules.rst
M clang/docs/OpenMPSupport.rst
M clang/docs/PointerAuthentication.rst
M clang/docs/RealtimeSanitizer.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/SanitizerCoverage.rst
M clang/docs/StandardCPlusPlusModules.rst
M clang/docs/UsersManual.rst
M clang/docs/analyzer/checkers.rst
M clang/docs/analyzer/user-docs.rst
M clang/docs/analyzer/user-docs/CommandLineUsage.rst
M clang/docs/analyzer/user-docs/Installation.rst
A clang/docs/analyzer/user-docs/Options.rst.in
A clang/docs/tools/generate_analyzer_options_docs.py
M clang/include/clang-c/Index.h
M clang/include/clang/APINotes/Types.h
M clang/include/clang/AST/ASTConcept.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTDiagnostic.h
M clang/include/clang/AST/ASTStructuralEquivalence.h
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/AST/DeclFriend.h
M clang/include/clang/AST/DeclGroup.h
M clang/include/clang/AST/DeclObjC.h
M clang/include/clang/AST/DeclOpenACC.h
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/ExprCXX.h
M clang/include/clang/AST/ExprOpenMP.h
M clang/include/clang/AST/Mangle.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/PrettyPrinter.h
M clang/include/clang/AST/PropertiesBase.td
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/StmtOpenACC.h
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/AST/Type.h
M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
M clang/include/clang/Analysis/Analyses/ThreadSafety.h
M clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h
M clang/include/clang/Analysis/CFG.h
M clang/include/clang/Analysis/ProgramPoint.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/AttributeCommonInfo.h
M clang/include/clang/Basic/Attributes.h
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/include/clang/Basic/BuiltinsNVPTX.td
M clang/include/clang/Basic/BuiltinsRISCV.td
M clang/include/clang/Basic/BuiltinsRISCVXCV.td
M clang/include/clang/Basic/BuiltinsWebAssembly.def
M clang/include/clang/Basic/CMakeLists.txt
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Basic/DebugOptions.def
M clang/include/clang/Basic/DeclNodes.td
M clang/include/clang/Basic/Diagnostic.h
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/include/clang/Basic/DiagnosticCategories.h
M clang/include/clang/Basic/DiagnosticCommonKinds.td
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Basic/DiagnosticOptions.h
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/DiagnosticSerializationKinds.td
M clang/include/clang/Basic/FPOptions.def
M clang/include/clang/Basic/HeaderInclude.h
M clang/include/clang/Basic/IdentifierTable.h
M clang/include/clang/Basic/JsonSupport.h
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/LangOptions.h
M clang/include/clang/Basic/LangStandards.def
M clang/include/clang/Basic/Module.h
M clang/include/clang/Basic/OffloadArch.h
A clang/include/clang/Basic/SimpleTypoCorrection.h
M clang/include/clang/Basic/SourceManager.h
M clang/include/clang/Basic/Stack.h
M clang/include/clang/Basic/TargetBuiltins.h
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/TargetOSMacros.def
M clang/include/clang/Basic/TokenKinds.def
M clang/include/clang/Basic/arm_neon.td
M clang/include/clang/Basic/arm_sve.td
A clang/include/clang/Basic/riscv_andes_vector.td
M clang/include/clang/CIR/CIRToCIRPasses.h
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
A clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/include/clang/CIR/Dialect/IR/CMakeLists.txt
A clang/include/clang/CIR/Dialect/OpenACC/CIROpenACCTypeInterfaces.h
A clang/include/clang/CIR/Dialect/OpenACC/RegisterOpenACCExtensions.h
M clang/include/clang/CIR/Dialect/Passes.h
M clang/include/clang/CIR/Dialect/Passes.td
M clang/include/clang/CIR/Interfaces/CIROpInterfaces.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/Driver/Compilation.h
M clang/include/clang/Driver/Distro.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Driver/SanitizerArgs.h
M clang/include/clang/Driver/ToolChain.h
M clang/include/clang/Format/Format.h
M clang/include/clang/Frontend/ASTUnit.h
M clang/include/clang/Frontend/CommandLineSourceLoc.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/CompilerInvocation.h
M clang/include/clang/Frontend/DiagnosticRenderer.h
M clang/include/clang/Frontend/FrontendActions.h
M clang/include/clang/Frontend/LogDiagnosticPrinter.h
M clang/include/clang/Frontend/SARIFDiagnostic.h
M clang/include/clang/Frontend/SARIFDiagnosticPrinter.h
M clang/include/clang/Frontend/SerializedDiagnosticPrinter.h
M clang/include/clang/Frontend/TextDiagnostic.h
M clang/include/clang/Frontend/TextDiagnosticPrinter.h
M clang/include/clang/InstallAPI/DylibVerifier.h
M clang/include/clang/Interpreter/Interpreter.h
M clang/include/clang/Lex/HLSLRootSignatureTokenKinds.def
M clang/include/clang/Lex/HeaderSearch.h
M clang/include/clang/Lex/HeaderSearchOptions.h
M clang/include/clang/Lex/ModuleMap.h
M clang/include/clang/Lex/ModuleMapFile.h
M clang/include/clang/Parse/ParseHLSLRootSignature.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Parse/RAIIObjectsForParser.h
M clang/include/clang/Sema/EnterExpressionEvaluationContext.h
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Sema/ParsedTemplate.h
M clang/include/clang/Sema/RISCVIntrinsicManager.h
M clang/include/clang/Sema/ScopeInfo.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Sema/SemaRISCV.h
M clang/include/clang/Sema/SemaWasm.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/include/clang/Serialization/ContinuousRangeMap.h
M clang/include/clang/Serialization/ModuleCache.h
M clang/include/clang/StaticAnalyzer/Checkers/SValExplainer.h
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/FunctionSummary.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/LoopWidening.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
M clang/include/clang/Support/Compiler.h
M clang/include/clang/Support/RISCVVIntrinsicUtils.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
M clang/include/clang/Tooling/DependencyScanning/InProcessModuleCache.h
M clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
M clang/lib/APINotes/APINotesFormat.h
M clang/lib/APINotes/APINotesReader.cpp
M clang/lib/APINotes/APINotesWriter.cpp
M clang/lib/APINotes/APINotesYAMLCompiler.cpp
M clang/lib/AST/ASTConcept.cpp
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTDiagnostic.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ByteCode/BitcastBuffer.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/Disasm.cpp
M clang/lib/AST/ByteCode/DynamicAllocator.h
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/EvaluationResult.h
R clang/lib/AST/ByteCode/Frame.cpp
M clang/lib/AST/ByteCode/Frame.h
M clang/lib/AST/ByteCode/Function.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Pointer.h
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/ByteCode/Record.cpp
M clang/lib/AST/ByteCode/Record.h
M clang/lib/AST/CMakeLists.txt
M clang/lib/AST/CommentSema.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclBase.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/DeclGroup.cpp
M clang/lib/AST/DeclObjC.cpp
M clang/lib/AST/DeclPrinter.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ExternalASTSource.cpp
M clang/lib/AST/JSONNodeDumper.cpp
M clang/lib/AST/Mangle.cpp
M clang/lib/AST/ODRDiagsEmitter.cpp
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/StmtOpenACC.cpp
M clang/lib/AST/StmtOpenMP.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/VTableBuilder.cpp
M clang/lib/Analysis/CFG.cpp
M clang/lib/Analysis/ThreadSafety.cpp
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/Basic/Attributes.cpp
M clang/lib/Basic/CMakeLists.txt
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/DiagnosticIDs.cpp
M clang/lib/Basic/IdentifierTable.cpp
M clang/lib/Basic/LangOptions.cpp
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/Basic/ProfileList.cpp
M clang/lib/Basic/SanitizerSpecialCaseList.cpp
A clang/lib/Basic/SimpleTypoCorrection.cpp
M clang/lib/Basic/SourceManager.cpp
M clang/lib/Basic/Stack.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/lib/Basic/Targets/AMDGPU.h
M clang/lib/Basic/Targets/NVPTX.cpp
M clang/lib/Basic/Targets/NVPTX.h
M clang/lib/Basic/Targets/PPC.cpp
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/Basic/Targets/SystemZ.cpp
M clang/lib/Basic/Targets/X86.h
M clang/lib/CIR/CodeGen/ABIInfo.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
A clang/lib/CIR/CodeGen/CIRGenCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
A clang/lib/CIR/CodeGen/CIRGenCXXExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.h
M clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
A clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
R clang/lib/CIR/CodeGen/CIRGenOpenACCClause.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACCLoop.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.h
M clang/lib/CIR/CodeGen/CIRGenValue.h
M clang/lib/CIR/CodeGen/CIRGenerator.cpp
M clang/lib/CIR/CodeGen/CMakeLists.txt
M clang/lib/CIR/CodeGen/TargetInfo.cpp
M clang/lib/CIR/Dialect/CMakeLists.txt
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/IR/CMakeLists.txt
A clang/lib/CIR/Dialect/OpenACC/CIROpenACCTypeInterfaces.cpp
A clang/lib/CIR/Dialect/OpenACC/CMakeLists.txt
A clang/lib/CIR/Dialect/OpenACC/RegisterOpenACCExtensions.cpp
M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
A clang/lib/CIR/Dialect/Transforms/CIRSimplify.cpp
M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
M clang/lib/CIR/Lowering/CIRPasses.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGAtomic.cpp
M clang/lib/CodeGen/CGBlocks.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CGObjC.cpp
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGPointerAuth.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CMakeLists.txt
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/CodeGen/TargetBuiltins/WebAssembly.cpp
M clang/lib/CodeGen/TargetInfo.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/lib/CodeGen/Targets/AMDGPU.cpp
M clang/lib/CrossTU/CrossTranslationUnit.cpp
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Distro.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/Job.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/AIX.h
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/Arch/ARM.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
A clang/lib/Driver/ToolChains/Cygwin.cpp
A clang/lib/Driver/ToolChains/Cygwin.h
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/lib/Driver/ToolChains/HLSL.cpp
M clang/lib/Driver/ToolChains/Haiku.cpp
M clang/lib/Driver/ToolChains/MSVC.cpp
M clang/lib/Driver/ToolChains/OHOS.cpp
M clang/lib/Driver/ToolChains/Solaris.cpp
M clang/lib/Driver/ToolChains/UEFI.cpp
M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/DefinitionBlockSeparator.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/FormatTokenLexer.h
M clang/lib/Format/MacroCallReconstructor.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/lib/Format/UsingDeclarationsSorter.cpp
M clang/lib/Frontend/ASTMerge.cpp
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
M clang/lib/Frontend/DiagnosticRenderer.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/HeaderIncludeGen.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Frontend/LogDiagnosticPrinter.cpp
M clang/lib/Frontend/PrecompiledPreamble.cpp
M clang/lib/Frontend/PrintPreprocessedOutput.cpp
M clang/lib/Frontend/Rewrite/FrontendActions.cpp
M clang/lib/Frontend/SARIFDiagnostic.cpp
M clang/lib/Frontend/SARIFDiagnosticPrinter.cpp
M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
M clang/lib/Frontend/TextDiagnostic.cpp
M clang/lib/Frontend/TextDiagnosticPrinter.cpp
M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
M clang/lib/Headers/CMakeLists.txt
M clang/lib/Headers/__clang_hip_cmath.h
A clang/lib/Headers/andes_vector.h
M clang/lib/Headers/cuda_wrappers/cmath
M clang/lib/Headers/float.h
M clang/lib/Headers/gpuintrin.h
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Headers/hlsl/hlsl_compat_overloads.h
M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Headers/opencl-c-base.h
M clang/lib/Headers/riscv_corev_alu.h
M clang/lib/Index/IndexingContext.h
M clang/lib/InstallAPI/DiagnosticBuilderWrappers.cpp
M clang/lib/InstallAPI/DiagnosticBuilderWrappers.h
M clang/lib/InstallAPI/DylibVerifier.cpp
M clang/lib/Interpreter/CodeCompletion.cpp
M clang/lib/Interpreter/DeviceOffload.cpp
M clang/lib/Interpreter/DeviceOffload.h
M clang/lib/Interpreter/Interpreter.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Lex/InitHeaderSearch.cpp
M clang/lib/Lex/LexHLSLRootSignature.cpp
M clang/lib/Lex/LiteralSupport.cpp
M clang/lib/Lex/MacroArgs.cpp
M clang/lib/Lex/ModuleMap.cpp
M clang/lib/Lex/ModuleMapFile.cpp
M clang/lib/Lex/PPDirectives.cpp
M clang/lib/Lex/PPExpressions.cpp
M clang/lib/Lex/PPLexerChange.cpp
M clang/lib/Lex/Pragma.cpp
M clang/lib/Lex/Preprocessor.cpp
M clang/lib/Parse/ParseAST.cpp
M clang/lib/Parse/ParseCXXInlineMethods.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/ParseHLSL.cpp
M clang/lib/Parse/ParseHLSLRootSignature.cpp
M clang/lib/Parse/ParseInit.cpp
M clang/lib/Parse/ParseObjc.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Parse/ParsePragma.cpp
M clang/lib/Parse/ParseStmt.cpp
M clang/lib/Parse/ParseStmtAsm.cpp
M clang/lib/Parse/ParseTemplate.cpp
M clang/lib/Parse/ParseTentative.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/Rewrite/HTMLRewrite.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/JumpDiagnostics.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaAMDGPU.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaAccess.cpp
M clang/lib/Sema/SemaAvailability.cpp
M clang/lib/Sema/SemaCUDA.cpp
M clang/lib/Sema/SemaCXXScopeSpec.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaCoroutine.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaDeclObjC.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaExprObjC.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaModule.cpp
M clang/lib/Sema/SemaObjC.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOpenACCClause.cpp
M clang/lib/Sema/SemaOpenACCClauseAppertainment.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaPPC.cpp
M clang/lib/Sema/SemaPseudoObject.cpp
M clang/lib/Sema/SemaRISCV.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaTemplateVariadic.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/SemaWasm.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTCommon.cpp
M clang/lib/Serialization/ASTCommon.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ModuleCache.cpp
M clang/lib/Serialization/ModuleManager.cpp
M clang/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/CheckPlacementNew.cpp
M clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.h
M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/Iterator.cpp
M clang/lib/StaticAnalyzer/Checkers/Iterator.h
M clang/lib/StaticAnalyzer/Checkers/IteratorModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/STLAlgorithmModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObject.h
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLambdaCapturesChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
M clang/lib/StaticAnalyzer/Core/CheckerContext.cpp
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp
M clang/lib/StaticAnalyzer/Core/LoopWidening.cpp
M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
M clang/lib/StaticAnalyzer/Core/SVals.cpp
M clang/lib/StaticAnalyzer/Core/SimpleConstraintManager.cpp
M clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
M clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
M clang/lib/StaticAnalyzer/Frontend/ModelInjector.cpp
M clang/lib/Support/RISCVVIntrinsicUtils.cpp
M clang/lib/Testing/CommandLineArgs.cpp
M clang/lib/Testing/TestAST.cpp
M clang/lib/Tooling/CompilationDatabase.cpp
M clang/lib/Tooling/Core/Replacement.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
M clang/lib/Tooling/Inclusions/Stdlib/CSpecialSymbolMap.inc
M clang/lib/Tooling/Inclusions/Stdlib/StdSpecialSymbolMap.inc
M clang/lib/Tooling/Refactoring.cpp
M clang/lib/Tooling/Tooling.cpp
M clang/lib/Tooling/Transformer/RangeSelector.cpp
M clang/test/APINotes/Inputs/Headers/SwiftImportAs.apinotes
M clang/test/APINotes/Inputs/Headers/SwiftImportAs.h
M clang/test/APINotes/swift-import-as.cpp
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/AST/ByteCode/constexpr-frame-describe.cpp
R clang/test/AST/ByteCode/constexpr-subobj-initialization.cpp
M clang/test/AST/ByteCode/cxx11.cpp
M clang/test/AST/ByteCode/cxx17.cpp
M clang/test/AST/ByteCode/cxx20.cpp
M clang/test/AST/ByteCode/cxx23.cpp
A clang/test/AST/ByteCode/dynalloc-limits.cpp
M clang/test/AST/ByteCode/lifetimes.cpp
A clang/test/AST/ByteCode/lifetimes26.cpp
M clang/test/AST/ByteCode/records.cpp
M clang/test/AST/ByteCode/unions.cpp
M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
A clang/test/AST/HLSL/RootSignatures-AST.hlsl
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
M clang/test/AST/HLSL/ast-dump-comment-cbuffer.hlsl
M clang/test/AST/HLSL/packoffset.hlsl
M clang/test/AST/HLSL/pch_hlsl_buffer.hlsl
M clang/test/AST/HLSL/resource_binding_attr.hlsl
A clang/test/AST/ast-crash-dump-mangled-name-json.m
M clang/test/AST/ast-dump-openmp-begin-declare-variant_6.c
M clang/test/AST/ast-dump-openmp-begin-declare-variant_7.c
A clang/test/AST/ast-dump-riscv-attributes.cpp
M clang/test/AST/ast-dump-template-json-win32-mangler-crash.cpp
M clang/test/AST/ast-dump-using-template.cpp
M clang/test/ASTMerge/struct/test.c
M clang/test/Analysis/Checkers/WebKit/call-args-checked-ptr.cpp
M clang/test/Analysis/Checkers/WebKit/call-args.cpp
M clang/test/Analysis/Checkers/WebKit/unchecked-members.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-members.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
M clang/test/Analysis/Checkers/WebKit/unretained-members-arc.mm
M clang/test/Analysis/Checkers/WebKit/unretained-members.mm
A clang/test/Analysis/PR57270.cpp
M clang/test/Analysis/analyzer-config.c
M clang/test/Analysis/builtin_bitcast.cpp
M clang/test/Analysis/container-modeling.cpp
M clang/test/Analysis/dump_egraph.cpp
M clang/test/Analysis/exercise-ps.c
M clang/test/Analysis/explain-svals.cpp
M clang/test/Analysis/explain-svals.m
M clang/test/Analysis/exploration_order/noexprcrash.c
A clang/test/Analysis/ftime-trace-no-init.cpp
A clang/test/Analysis/generate_analyzer_options_docs.test
A clang/test/Analysis/issue-137252.cpp
A clang/test/Analysis/loop-based-inlining-prevention.c
M clang/test/Analysis/loop-unrolling.cpp
A clang/test/Analysis/thread-safety-handle-parenthesis.cpp
M clang/test/C/C23/n3030.c
A clang/test/C/C23/n3037.c
A clang/test/C/C23/n3037_1.c
M clang/test/C/C2y/n3353.c
M clang/test/C/C2y/n3369.c
M clang/test/C/drs/dr0xx.c
M clang/test/C/drs/dr1xx.c
M clang/test/CIR/CodeGen/basic.c
M clang/test/CIR/CodeGen/basic.cpp
M clang/test/CIR/CodeGen/call.cpp
M clang/test/CIR/CodeGen/cast.cpp
A clang/test/CIR/CodeGen/compound_assign.cpp
A clang/test/CIR/CodeGen/forrange.cpp
M clang/test/CIR/CodeGen/loop.cpp
A clang/test/CIR/CodeGen/member-functions.cpp
A clang/test/CIR/CodeGen/nonzeroinit-struct.cpp
A clang/test/CIR/CodeGen/pointers.cpp
A clang/test/CIR/CodeGen/string-literals.c
M clang/test/CIR/CodeGen/struct.c
M clang/test/CIR/CodeGen/struct.cpp
A clang/test/CIR/CodeGen/switch.cpp
A clang/test/CIR/CodeGen/switch_flat_op.cpp
M clang/test/CIR/CodeGen/union.c
A clang/test/CIR/CodeGen/union.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
A clang/test/CIR/CodeGenOpenACC/combined-copy.c
A clang/test/CIR/CodeGenOpenACC/combined.cpp
A clang/test/CIR/CodeGenOpenACC/compute-copy.c
M clang/test/CIR/CodeGenOpenACC/data.c
M clang/test/CIR/CodeGenOpenACC/kernels.c
A clang/test/CIR/CodeGenOpenACC/loop.cpp
M clang/test/CIR/CodeGenOpenACC/openacc-not-implemented.cpp
M clang/test/CIR/CodeGenOpenACC/parallel.c
M clang/test/CIR/CodeGenOpenACC/serial.c
M clang/test/CIR/CodeGenOpenACC/wait.c
M clang/test/CIR/IR/call.cir
M clang/test/CIR/IR/invalid-call.cir
A clang/test/CIR/IR/invalid-long-double.cir
A clang/test/CIR/IR/invalid-vector-create-wrong-size.cir
A clang/test/CIR/IR/invalid-vector-create-wrong-type.cir
A clang/test/CIR/IR/switch-flat.cir
A clang/test/CIR/IR/switch.cir
A clang/test/CIR/IR/ternary.cir
M clang/test/CIR/IR/vector.cir
A clang/test/CIR/Lowering/switch.cir
A clang/test/CIR/Lowering/ternary.cir
A clang/test/CIR/Transforms/select.cir
A clang/test/CIR/Transforms/switch-fold.cir
A clang/test/CIR/Transforms/switch.cir
A clang/test/CIR/Transforms/ternary-fold.cir
A clang/test/CIR/Transforms/ternary.cir
A clang/test/CIR/Transforms/vector-extract-fold.cir
M clang/test/CMakeLists.txt
M clang/test/CXX/basic/basic.lookup/basic.lookup.classref/p1.cpp
M clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.deprecated/p1.cpp
M clang/test/CXX/drs/cwg1xx.cpp
M clang/test/CXX/drs/cwg2xx.cpp
A clang/test/CXX/drs/cwg30xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/test/CXX/drs/cwg5xx.cpp
M clang/test/CXX/expr/expr.const/p2-0x.cpp
M clang/test/CXX/module/module.interface/p3.cpp
M clang/test/CXX/stmt.stmt/stmt.select/stmt.if/p2.cpp
M clang/test/CXX/temp/temp.res/temp.dep/temp.dep.type/p1.cpp
A clang/test/ClangScanDeps/export.c
M clang/test/ClangScanDeps/modules-canononical-module-map-case.c
A clang/test/ClangScanDeps/modules-pch-common-stale.c
M clang/test/ClangScanDeps/optimize-vfs-pch.m
A clang/test/CodeCompletion/source-loc-zero.cpp
M clang/test/CodeGen/AArch64/cpu-supports-target.c
M clang/test/CodeGen/AArch64/fp8-init-list.c
A clang/test/CodeGen/AArch64/fp8-intrinsics/acle_neon_fp8_untyped.c
M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_sve2_fp8_fdot.c
M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_sve2_fp8_fmla.c
A clang/test/CodeGen/AArch64/struct-coerce-using-ptr.cpp
M clang/test/CodeGen/AArch64/sve-vector-bits-codegen.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bdep.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bext.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bgrp.c
M clang/test/CodeGen/AArch64/targetattr.c
M clang/test/CodeGen/PowerPC/ppc-tmmintrin.c
M clang/test/CodeGen/RISCV/attr-riscv-rvv-vector-bits-less-8-call.c
M clang/test/CodeGen/RISCV/attr-riscv-rvv-vector-bits-less-8-cast.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-bitcast-less-8.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-cast.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-codegen.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-globals.c
M clang/test/CodeGen/RISCV/riscv-v-debuginfo.c
M clang/test/CodeGen/RISCV/riscv-xcvalu-c-api.c
M clang/test/CodeGen/RISCV/riscv-xcvalu.c
A clang/test/CodeGen/RISCV/riscv-zihintpause.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/nds_vfpmadb.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/nds_vfpmadt.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/nds_vfpmadb.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/nds_vfpmadt.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/nds_vfpmadb.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/nds_vfpmadt.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/nds_vfpmadb.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/nds_vfpmadt.c
M clang/test/CodeGen/X86/avx-builtins.c
M clang/test/CodeGen/X86/avx512-error.c
M clang/test/CodeGen/arm-mfp8.c
A clang/test/CodeGen/attr-counted-by-for-pointers.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/bounds-checking-debuginfo.c
M clang/test/CodeGen/builtins-arm64.c
M clang/test/CodeGen/builtins-nvptx.c
M clang/test/CodeGen/builtins-wasm.c
M clang/test/CodeGen/catch-nullptr-and-nonzero-offset.c
A clang/test/CodeGen/cfi-check-fail-debuginfo.c
A clang/test/CodeGen/cfi-icall-generalize-debuginfo.c
A clang/test/CodeGen/cfi-icall-normalize2-debuginfo.c
M clang/test/CodeGen/dllexport.c
M clang/test/CodeGen/dllimport.c
M clang/test/CodeGen/dso-local-executable.c
A clang/test/CodeGen/epilog-unwind.c
A clang/test/CodeGen/glibc_ptr_align.c
A clang/test/CodeGen/loader-replaceable-function.cpp
A clang/test/CodeGen/logb_scalbn.c
M clang/test/CodeGen/ms_abi.c
M clang/test/CodeGen/paren-list-agg-init.cpp
M clang/test/CodeGen/profile-filter.c
A clang/test/CodeGen/ptrauth-restricted-intptr-qualifier.c
M clang/test/CodeGen/sysv_abi.c
M clang/test/CodeGen/target-avx-abi-diag.c
M clang/test/CodeGen/target-data.c
A clang/test/CodeGen/ubsan-src-ignorelist-category.test
A clang/test/CodeGen/unused_nested_enump.cpp
M clang/test/CodeGenCUDA/bf16.cu
M clang/test/CodeGenCUDA/fp-contract.cu
M clang/test/CodeGenCUDA/memcpy-libcall.cu
M clang/test/CodeGenCXX/amdgcn-automatic-variable.cpp
M clang/test/CodeGenCXX/arm64-generated-fn-attr.cpp
M clang/test/CodeGenCXX/attr-x86-no_caller_saved_registers.cpp
M clang/test/CodeGenCXX/cxx1y-variable-template.cpp
M clang/test/CodeGenCXX/cxx1z-inline-variables.cpp
A clang/test/CodeGenCXX/cxx2c-trivially-relocatable.cpp
M clang/test/CodeGenCXX/debug-info-codeview-unnamed.cpp
M clang/test/CodeGenCXX/default_calling_conv.cpp
M clang/test/CodeGenCXX/dllexport-members.cpp
M clang/test/CodeGenCXX/dllexport-missing-key.cpp
M clang/test/CodeGenCXX/dllexport.cpp
M clang/test/CodeGenCXX/dllimport-members.cpp
M clang/test/CodeGenCXX/dllimport-missing-key.cpp
M clang/test/CodeGenCXX/dllimport-rtti.cpp
M clang/test/CodeGenCXX/dllimport.cpp
M clang/test/CodeGenCXX/dso-local-executable.cpp
M clang/test/CodeGenCXX/ext-int.cpp
M clang/test/CodeGenCXX/mangle-ms.cpp
M clang/test/CodeGenCXX/matrix-vector-bit-int.cpp
M clang/test/CodeGenCXX/microsoft-abi-throw.cpp
M clang/test/CodeGenCXX/mingw-template-dllexport.cpp
M clang/test/CodeGenCXX/rtti-mingw64.cpp
M clang/test/CodeGenCXX/virt-dtor-key.cpp
M clang/test/CodeGenCXX/vtable-key-function-ios.cpp
A clang/test/CodeGenHIP/amdgpu-load-to-lds.hip
M clang/test/CodeGenHLSL/BasicFeatures/InitLists.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorFunction.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorLib.hlsl
A clang/test/CodeGenHLSL/RootSignature.hlsl
M clang/test/CodeGenHLSL/builtins/ByteAddressBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor-opt.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor.hlsl
M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-ps.hlsl
M clang/test/CodeGenHLSL/builtins/clamp-overloads.hlsl
M clang/test/CodeGenHLSL/builtins/dot4add_i8packed.hlsl
M clang/test/CodeGenHLSL/builtins/dot4add_u8packed.hlsl
A clang/test/CodeGenHLSL/builtins/ldexp.hlsl
M clang/test/CodeGenHLSL/builtins/lerp-overloads.hlsl
M clang/test/CodeGenHLSL/builtins/max-overloads.hlsl
M clang/test/CodeGenHLSL/builtins/min-overloads.hlsl
M clang/test/CodeGenHLSL/builtins/pow-overloads.hlsl
M clang/test/CodeGenHLSL/cbuffer.hlsl
M clang/test/CodeGenHLSL/cbuffer_with_packoffset.hlsl
A clang/test/CodeGenHLSL/convergence/global_array.hlsl
M clang/test/CodeGenHLSL/resource-bindings.hlsl
M clang/test/CodeGenHLSL/static-local-ctor.hlsl
M clang/test/CodeGenObjCXX/arc-rv-attr.mm
M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
M clang/test/CodeGenOpenCL/amdgcn-automatic-variable.cl
M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
M clang/test/CodeGenOpenCL/amdgpu-env-amdgcn.cl
M clang/test/CodeGenOpenCL/amdgpu-features.cl
M clang/test/CodeGenOpenCL/amdgpu-nullptr.cl
M clang/test/CodeGenOpenCL/blocks.cl
M clang/test/CodeGenOpenCL/builtins-alloca.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx950.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-load-to-lds.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-vi.cl
A clang/test/CodeGenOpenCL/check-atomic-alignment.cl
M clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl
M clang/test/CodeGenOpenCL/cl20-device-side-enqueue.cl
M clang/test/CodeGenOpenCL/convergent.cl
M clang/test/CodeGenOpenCL/enqueue-kernel-non-entry-block.cl
M clang/test/CodeGenOpenCL/implicit-addrspacecast-function-parameter.cl
M clang/test/CodeGenOpenCL/kernel-attributes.cl
M clang/test/CodeGenOpenCL/opencl-kernel-call.cl
M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
M clang/test/CoverageMapping/terminate-statements.cpp
A clang/test/DebugInfo/KeyInstructions/agg.c
A clang/test/DebugInfo/KeyInstructions/flag.cpp
A clang/test/DebugInfo/KeyInstructions/init-agg.cpp
A clang/test/DebugInfo/KeyInstructions/init-scalar.c
A clang/test/DebugInfo/KeyInstructions/init-static.cpp
A clang/test/DebugInfo/KeyInstructions/lit.local.cfg
A clang/test/Driver/Inputs/DriverKit19.0.sdk/System/DriverKit/System/Library/SubFrameworks/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/Library/Frameworks/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/System/Library/Frameworks/.keep
A clang/test/Driver/Inputs/MacOSX15.1.sdk/System/Library/SubFrameworks/.keep
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/i686-pc-msys/bin/as
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/i686-pc-msys/bin/ld
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/i686-pc-msys/lib/.keep
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/lib/gcc/i686-pc-msys/10/crtbegin.o
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/lib/gcc/x86_64-pc-cygwin/10/crtbegin.o
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/x86_64-pc-cygwin/bin/as
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/x86_64-pc-cygwin/bin/ld
A clang/test/Driver/Inputs/basic_cross_cygwin_tree/usr/x86_64-pc-cygwin/lib/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/include/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/lib/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/include/c++/10/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/include/i686-pc-cygwin/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/include/i686-pc-cygwin/c++/10/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/include/x86_64-pc-msys/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/include/x86_64-pc-msys/c++/10/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/lib/gcc/i686-pc-cygwin/10/crtbegin.o
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/lib/gcc/i686-pc-cygwin/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/lib/gcc/x86_64-pc-msys/10/crtbegin.o
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/lib/gcc/x86_64-pc-msys/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/lib/i686-pc-cygwin/.keep
A clang/test/Driver/Inputs/basic_cygwin_tree/usr/lib/x86_64-pc-msys/.keep
M clang/test/Driver/XRay/xray-instrument.c
A clang/test/Driver/aarch64-cortex-a320.c
M clang/test/Driver/arm-features.c
M clang/test/Driver/arm-mfpu.c
A clang/test/Driver/attr-availability-erroneous-diags.c
M clang/test/Driver/baremetal-sysroot.cpp
M clang/test/Driver/baremetal.cpp
M clang/test/Driver/cl-options.c
M clang/test/Driver/clang-offload-bundler-standardize.c
M clang/test/Driver/clang-sycl-linker-test.cpp
A clang/test/Driver/cygwin.cpp
A clang/test/Driver/darwin-framework-search-paths.c
R clang/test/Driver/darwin-subframeworks.c
M clang/test/Driver/driverkit-path.c
A clang/test/Driver/dxc_I.test
A clang/test/Driver/dxc_fspv_extension.hlsl
M clang/test/Driver/emulated-tls.cpp
M clang/test/Driver/fprofile-generate-cold-function-coverage.c
M clang/test/Driver/fsanitize-coverage.c
M clang/test/Driver/fsanitize.c
M clang/test/Driver/fveclib.c
M clang/test/Driver/haiku.c
M clang/test/Driver/mcmodel.c
A clang/test/Driver/no-integrated-cpp.c
M clang/test/Driver/openmp-offload-gpu.c
M clang/test/Driver/ppc-mrop-protection-support-check.c
A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a320.c
M clang/test/Driver/print-enabled-extensions/aarch64-fujitsu-monaka.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-a25.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-a45.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-ax25.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-ax45.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-n45.c
A clang/test/Driver/print-enabled-extensions/riscv-andes-nx45.c
A clang/test/Driver/print-enabled-extensions/riscv-sifive-p870.c
M clang/test/Driver/print-supported-extensions-riscv.c
A clang/test/Driver/rewrite-objc-preproc.m
M clang/test/Driver/riscv-arch.c
M clang/test/Driver/riscv-cpus.c
M clang/test/Driver/solaris-ld.c
M clang/test/Driver/uefi-constructed-args.c
M clang/test/Driver/unknown-std.c
M clang/test/Driver/x86-mabi.c
M clang/test/Driver/xros-driver.c
M clang/test/ExtractAPI/objc_property.m
M clang/test/FixIt/fixit.cpp
A clang/test/Headers/__clang_hip_cmath-return_types.hip
M clang/test/Headers/opencl-c-header.cl
M clang/test/Index/pipe-size.cl
M clang/test/Lexer/char8_t.cpp
M clang/test/Misc/amdgcn.languageOptsOpenCL.cl
M clang/test/Misc/nvptx.languageOptsOpenCL.cl
M clang/test/Misc/pragma-attribute-supported-attributes-list.test
M clang/test/Misc/r600.languageOptsOpenCL.cl
M clang/test/Misc/target-invalid-cpu-note/aarch64.c
M clang/test/Misc/target-invalid-cpu-note/riscv.c
M clang/test/Misc/time-passes.c
M clang/test/Misc/warning-flags-enabled.c
A clang/test/Modules/Inputs/shadow/A1/A1.h
M clang/test/Modules/Inputs/shadow/A1/module.modulemap
A clang/test/Modules/Inputs/shadow/A2/A2.h
M clang/test/Modules/Inputs/shadow/A2/module.modulemap
M clang/test/Modules/Inputs/submodules/module.modulemap
A clang/test/Modules/befriend.cppm
A clang/test/Modules/emit-module-interface-pcm-input.cpp
M clang/test/Modules/fmodules-validate-once-per-build-session.c
A clang/test/Modules/invalid-module-dep.c
A clang/test/Modules/lazy-by-name-lookup.c
M clang/test/Modules/missing-header.m
M clang/test/Modules/no-external-type-id.cppm
A clang/test/Modules/pr130712.cppm
A clang/test/Modules/pr140130.cpp
A clang/test/Modules/pr61065-2.cppm
A clang/test/Modules/pr61065-3.cppm
M clang/test/Modules/pr61065.cppm
A clang/test/Modules/sdk-settings-json-dep.m
M clang/test/Modules/shadow.m
M clang/test/OpenMP/assumes_messages.c
A clang/test/OpenMP/begin_declare_variant_elided_range_implementation.c
A clang/test/OpenMP/begin_declare_variant_executable_scope.c
M clang/test/OpenMP/begin_declare_variant_messages.c
M clang/test/OpenMP/cancel_messages.cpp
M clang/test/OpenMP/for_collapse_messages.cpp
M clang/test/OpenMP/for_ordered_clause.cpp
M clang/test/OpenMP/for_simd_collapse_messages.cpp
M clang/test/OpenMP/for_simd_loop_messages.cpp
M clang/test/OpenMP/irbuilder_nested_parallel_for.c
M clang/test/OpenMP/masked_taskloop_collapse_messages.cpp
M clang/test/OpenMP/masked_taskloop_simd_collapse_messages.cpp
M clang/test/OpenMP/metadirective_ast_print.c
A clang/test/OpenMP/metadirective_default.cpp
M clang/test/OpenMP/metadirective_messages.cpp
M clang/test/OpenMP/metadirective_otherwise.cpp
M clang/test/OpenMP/nested_loop_codegen.cpp
M clang/test/OpenMP/openmp_attribute_parsing.cpp
A clang/test/OpenMP/openmp_non_c_directives.c
M clang/test/OpenMP/parallel_codegen.cpp
M clang/test/OpenMP/simd_collapse_messages.cpp
M clang/test/OpenMP/stripe_messages.cpp
M clang/test/OpenMP/teams_distribute_dist_schedule_messages.cpp
M clang/test/OpenMP/tile_messages.cpp
M clang/test/OpenMP/unroll_messages.cpp
M clang/test/Parser/c2x-alignas.c
M clang/test/Parser/c2x-attributes.c
M clang/test/Parser/cxx-invalid-function-decl.cpp
M clang/test/Parser/cxx0x-attributes.cpp
M clang/test/Parser/cxx1z-fold-expressions.cpp
A clang/test/Parser/cxx2c-trivially-relocatable.cpp
A clang/test/Parser/gh137861.cpp
M clang/test/ParserHLSL/hlsl_resource_handle_attrs.hlsl
M clang/test/ParserOpenACC/parse-clauses.c
A clang/test/Preprocessor/_Pragma-in-include.c
M clang/test/Preprocessor/arm-target-features.c
R clang/test/Preprocessor/cuda-macos-includes.cu
M clang/test/Preprocessor/init.c
A clang/test/Preprocessor/macro_reserved.i
M clang/test/Preprocessor/predefined-macros.c
M clang/test/Preprocessor/print-header-json.c
A clang/test/Preprocessor/riscv-cf-protection-branch.c
A clang/test/Preprocessor/riscv-target-features-sifive.c
M clang/test/Preprocessor/riscv-target-features.c
A clang/test/Refactor/source-loc-zero.cpp
A clang/test/Sema/Inputs/builtin-system-header.h
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
M clang/test/Sema/atomic-expr.c
M clang/test/Sema/attr-c2x.c
A clang/test/Sema/attr-nonstring.c
M clang/test/Sema/attr-ownership.c
M clang/test/Sema/bitfield-layout.c
M clang/test/Sema/bitfield-layout_1.c
A clang/test/Sema/builtin-pragma-intrinsic.c
M clang/test/Sema/builtins-wasm.c
A clang/test/Sema/c++-keyword-in-c.c
A clang/test/Sema/c++-keyword-in-objc.m
A clang/test/Sema/c23-decl-in-prototype.c
A clang/test/Sema/c2y-invalid-constexpr.c
M clang/test/Sema/callingconv-ms_abi.c
A clang/test/Sema/decl-hidden-in-c++.c
M clang/test/Sema/decl-in-prototype.c
M clang/test/Sema/enum.c
M clang/test/Sema/implicit-cast.c
A clang/test/Sema/implicit-int-enum-conversion.c
M clang/test/Sema/implicit-void-ptr-cast.c
M clang/test/Sema/init-randomized-struct.c
M clang/test/Sema/integer-overflow.c
M clang/test/Sema/mms-bitfields.c
M clang/test/Sema/no-warn-missing-prototype.c
M clang/test/Sema/patchable-function-entry-attr.cpp
A clang/test/Sema/ptrauth-intptr-qualifier.c
M clang/test/Sema/ptrauth-qualifier.c
A clang/test/Sema/ptrauth-struct-function-ptr-field.c
M clang/test/Sema/riscv-bad-intrinsic-pragma.c
M clang/test/Sema/sizeless-1.c
M clang/test/Sema/typedef-retain.c
A clang/test/Sema/unknown-attributes.c
M clang/test/Sema/varargs-win64.c
A clang/test/Sema/warn-default-const-init-crash.c
M clang/test/Sema/warn-default-const-init.c
A clang/test/Sema/warn-duplicate-decl-specifier.c
A clang/test/Sema/warn-jump-bypasses-init.c
A clang/test/Sema/warn-nontrivial-struct-memaccess-ptrauth.c
M clang/test/Sema/warn-overlap.c
A clang/test/Sema/warn-tentative-defn-compat.c
A clang/test/SemaCUDA/cuda-attr-order.cu
A clang/test/SemaCUDA/overloaded-builtin.cu
M clang/test/SemaCXX/MicrosoftCompatibility.cpp
M clang/test/SemaCXX/MicrosoftExtensions.cpp
M clang/test/SemaCXX/MicrosoftSuper.cpp
M clang/test/SemaCXX/attr-trivial-abi.cpp
M clang/test/SemaCXX/bitfield.cpp
M clang/test/SemaCXX/builtin-object-size-cxx14.cpp
M clang/test/SemaCXX/concept-crash-on-diagnostic.cpp
M clang/test/SemaCXX/constant-expression-cxx11.cpp
M clang/test/SemaCXX/constant-expression-p2280r4.cpp
A clang/test/SemaCXX/consteval-assert.cpp
M clang/test/SemaCXX/cxx11-gnu-attrs.cpp
M clang/test/SemaCXX/cxx1y-variable-templates_in_class.cpp
M clang/test/SemaCXX/cxx1y-variable-templates_top_level.cpp
M clang/test/SemaCXX/cxx2a-consteval.cpp
M clang/test/SemaCXX/cxx2a-ms-no-unique-address.cpp
M clang/test/SemaCXX/cxx2a-three-way-comparison.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
A clang/test/SemaCXX/cxx2c-trivially-relocatable.cpp
M clang/test/SemaCXX/deprecated.cpp
M clang/test/SemaCXX/dllexport.cpp
M clang/test/SemaCXX/dllimport.cpp
M clang/test/SemaCXX/ext-int.cpp
A clang/test/SemaCXX/gh138775.cpp
M clang/test/SemaCXX/gnu-asm-constexpr.cpp
M clang/test/SemaCXX/lambda-unevaluated.cpp
A clang/test/SemaCXX/libstdcxx_format_kind_hack.cpp
R clang/test/SemaCXX/libstdcxx_gets_hack.cpp
R clang/test/SemaCXX/libstdcxx_pointer_return_false_hack.cpp
M clang/test/SemaCXX/matrix-type.cpp
A clang/test/SemaCXX/ms_struct-bitfield-padding.cpp
M clang/test/SemaCXX/overload-resolution-deferred-templates.cpp
M clang/test/SemaCXX/paren-list-agg-init.cpp
M clang/test/SemaCXX/ptrauth-template-parameters.cpp
M clang/test/SemaCXX/ptrauth-triviality.cpp
M clang/test/SemaCXX/rounding-math-crash.cpp
M clang/test/SemaCXX/static-assert-cxx26.cpp
A clang/test/SemaCXX/thread-specifier.cpp
A clang/test/SemaCXX/type-aware-new-delete-transparent-contexts.cpp
M clang/test/SemaCXX/type-trait-common-type.cpp
M clang/test/SemaCXX/type-traits-nonobject.cpp
M clang/test/SemaCXX/type-traits.cpp
M clang/test/SemaCXX/unknown-type-name.cpp
M clang/test/SemaCXX/vla.cpp
A clang/test/SemaCXX/warn-implicit-unicode-conversions.cpp
A clang/test/SemaCXX/warn-nrvo.cpp
M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
M clang/test/SemaCXX/warn-thread-safety-parsing.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-array.cpp
M clang/test/SemaHLSL/BuiltIns/AddUint64-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/asdouble-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/clamp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/cross-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/degrees-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/frac-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors2.hlsl
M clang/test/SemaHLSL/BuiltIns/isinf-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/ldexp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/logical-operator-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/mad-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/normalize-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/radians-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/rcp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/reversebits-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/rsqrt-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/step-errors.hlsl
A clang/test/SemaHLSL/RootSignature-err.hlsl
M clang/test/SemaHLSL/resource_binding_attr_error.hlsl
M clang/test/SemaHLSL/resource_binding_implicit.hlsl
M clang/test/SemaObjCXX/cxxoperator-selector.mm
M clang/test/SemaOpenACC/atomic-construct.cpp
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/combined-construct-default-clause.c
M clang/test/SemaOpenACC/combined-construct-default-clause.cpp
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
M clang/test/SemaOpenACC/combined-construct-gang-clause.cpp
M clang/test/SemaOpenACC/combined-construct-num_gangs-clause.c
M clang/test/SemaOpenACC/combined-construct-num_workers-clause.c
M clang/test/SemaOpenACC/combined-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/combined-construct-self-clause.c
M clang/test/SemaOpenACC/combined-construct-self-clause.cpp
M clang/test/SemaOpenACC/combined-construct-vector-clause.cpp
M clang/test/SemaOpenACC/combined-construct-vector_length-clause.c
M clang/test/SemaOpenACC/combined-construct-worker-clause.cpp
M clang/test/SemaOpenACC/compute-construct-async-clause.c
M clang/test/SemaOpenACC/compute-construct-copy-clause.c
M clang/test/SemaOpenACC/compute-construct-default-clause.c
M clang/test/SemaOpenACC/compute-construct-default-clause.cpp
M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
M clang/test/SemaOpenACC/compute-construct-num_gangs-clause.c
M clang/test/SemaOpenACC/compute-construct-num_workers-clause.c
M clang/test/SemaOpenACC/compute-construct-reduction-clause.c
M clang/test/SemaOpenACC/compute-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/compute-construct-self-clause.c
M clang/test/SemaOpenACC/compute-construct-self-clause.cpp
M clang/test/SemaOpenACC/compute-construct-vector_length-clause.c
M clang/test/SemaOpenACC/data-construct-async-clause.c
M clang/test/SemaOpenACC/data-construct-default-clause.c
M clang/test/SemaOpenACC/data-construct-device_type-clause.c
M clang/test/SemaOpenACC/data-construct-if-clause.c
M clang/test/SemaOpenACC/data-construct.cpp
A clang/test/SemaOpenACC/gh139894.cpp
A clang/test/SemaOpenACC/gh140339.cpp
A clang/test/SemaOpenACC/gh140712.cpp
A clang/test/SemaOpenACC/gh140920.cpp
M clang/test/SemaOpenACC/init-construct.cpp
M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/loop-construct-collapse-clause.cpp
M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
M clang/test/SemaOpenACC/loop-construct-gang-clause.cpp
M clang/test/SemaOpenACC/loop-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/loop-construct-tile-clause.cpp
M clang/test/SemaOpenACC/loop-construct-vector-clause.cpp
M clang/test/SemaOpenACC/loop-construct-worker-clause.cpp
M clang/test/SemaOpenACC/loop-construct.cpp
M clang/test/SemaOpenACC/routine-construct-clauses.cpp
M clang/test/SemaOpenACC/set-construct-ast.cpp
M clang/test/SemaOpenACC/set-construct.cpp
M clang/test/SemaOpenACC/shutdown-construct.cpp
M clang/test/SemaOpenACC/update-construct.cpp
A clang/test/SemaOpenCL/builtins-amdgcn-load-to-lds-err.cl
M clang/test/SemaOpenCL/invalid-block.cl
M clang/test/SemaTemplate/GH55509.cpp
M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
M clang/test/SemaTemplate/cxx17-inline-variables.cpp
M clang/test/SemaTemplate/cxx1z-fold-expressions.cpp
M clang/test/SemaTemplate/deduction-guide.cpp
M clang/test/SemaTemplate/fun-template-def.cpp
M clang/test/SemaTemplate/instantiate-var-template.cpp
M clang/test/SemaTemplate/typename-specifier-3.cpp
M clang/test/lit.cfg.py
M clang/test/lit.site.cfg.py.in
M clang/tools/CMakeLists.txt
M clang/tools/c-index-test/c-index-test.c
M clang/tools/c-index-test/core_main.cpp
M clang/tools/cir-opt/cir-opt.cpp
M clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
M clang/tools/clang-format/ClangFormat.cpp
M clang/tools/clang-fuzzer/handle-cxx/handle_cxx.cpp
M clang/tools/clang-import-test/clang-import-test.cpp
M clang/tools/clang-installapi/ClangInstallAPI.cpp
M clang/tools/clang-installapi/Options.cpp
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
M clang/tools/clang-refactor/ClangRefactor.cpp
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
M clang/tools/clang-shlib/CMakeLists.txt
M clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp
M clang/tools/clang-sycl-linker/SYCLLinkOpts.td
M clang/tools/diagtool/ShowEnabledWarnings.cpp
M clang/tools/diagtool/TreeView.cpp
M clang/tools/driver/CMakeLists.txt
M clang/tools/driver/cc1_main.cpp
M clang/tools/driver/cc1as_main.cpp
M clang/tools/driver/cc1gen_reproducer_main.cpp
M clang/tools/driver/driver.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CIndexCodeCompletion.cpp
M clang/tools/libclang/CIndexDiagnostic.cpp
M clang/tools/libclang/CIndexer.cpp
M clang/tools/libclang/CMakeLists.txt
M clang/tools/libclang/CXCursor.cpp
M clang/tools/libclang/CXIndexDataConsumer.cpp
M clang/tools/libclang/Indexing.cpp
M clang/unittests/AST/ASTImporterTest.cpp
M clang/unittests/AST/ASTVectorTest.cpp
M clang/unittests/AST/CommentLexer.cpp
M clang/unittests/AST/CommentParser.cpp
M clang/unittests/AST/CommentTextTest.cpp
M clang/unittests/AST/ExternalASTSourceTest.cpp
M clang/unittests/AST/StructuralEquivalenceTest.cpp
M clang/unittests/ASTMatchers/ASTMatchersTest.h
M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M clang/unittests/Analysis/MacroExpansionContextTest.cpp
M clang/unittests/Analysis/UnsafeBufferUsageTest.cpp
M clang/unittests/Basic/CMakeLists.txt
M clang/unittests/Basic/DiagnosticTest.cpp
M clang/unittests/Basic/FileEntryTest.cpp
A clang/unittests/Basic/OffloadArchTest.cpp
M clang/unittests/Basic/SarifTest.cpp
M clang/unittests/Basic/SourceManagerTest.cpp
A clang/unittests/CIR/CMakeLists.txt
A clang/unittests/CIR/PointerLikeTest.cpp
M clang/unittests/CMakeLists.txt
M clang/unittests/Driver/DXCModeTest.cpp
M clang/unittests/Driver/ModuleCacheTest.cpp
M clang/unittests/Driver/SanitizerArgsTest.cpp
M clang/unittests/Driver/SimpleDiagnosticConsumer.h
M clang/unittests/Driver/ToolChainTest.cpp
M clang/unittests/Format/CMakeLists.txt
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/DefinitionBlockSeparatorTest.cpp
M clang/unittests/Format/FormatReplacementTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/FormatTestRawStrings.cpp
M clang/unittests/Format/SortImportsTestJava.cpp
M clang/unittests/Format/SortIncludesTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/Frontend/ASTUnitTest.cpp
M clang/unittests/Frontend/CMakeLists.txt
M clang/unittests/Frontend/CodeGenActionTest.cpp
M clang/unittests/Frontend/CompilerInstanceTest.cpp
M clang/unittests/Frontend/CompilerInvocationTest.cpp
M clang/unittests/Frontend/FrontendActionTest.cpp
M clang/unittests/Frontend/OutputStreamTest.cpp
M clang/unittests/Frontend/PCHPreambleTest.cpp
M clang/unittests/Frontend/ReparseWorkingDirTest.cpp
A clang/unittests/Frontend/SearchPathTest.cpp
M clang/unittests/Frontend/TextDiagnosticTest.cpp
M clang/unittests/Frontend/UtilsTest.cpp
M clang/unittests/Interpreter/CMakeLists.txt
M clang/unittests/Interpreter/ExceptionTests/CMakeLists.txt
M clang/unittests/Interpreter/InterpreterTest.cpp
M clang/unittests/Lex/HeaderSearchTest.cpp
M clang/unittests/Lex/LexHLSLRootSignatureTest.cpp
M clang/unittests/Lex/LexerTest.cpp
M clang/unittests/Lex/ModuleDeclStateTest.cpp
M clang/unittests/Lex/PPCallbacksTest.cpp
M clang/unittests/Lex/PPConditionalDirectiveRecordTest.cpp
M clang/unittests/Lex/PPDependencyDirectivesTest.cpp
M clang/unittests/Lex/PPMemoryAllocationsTest.cpp
M clang/unittests/Parse/CMakeLists.txt
M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
M clang/unittests/Sema/SemaNoloadLookupTest.cpp
M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
M clang/unittests/Serialization/LoadSpecLazilyTest.cpp
M clang/unittests/Serialization/ModuleCacheTest.cpp
M clang/unittests/Serialization/NoCommentsTest.cpp
M clang/unittests/Serialization/PreambleInNamedModulesTest.cpp
M clang/unittests/Serialization/VarDeclConstantInitTest.cpp
M clang/unittests/StaticAnalyzer/CallDescriptionTest.cpp
M clang/unittests/Support/TimeProfilerTest.cpp
M clang/unittests/Tooling/CompilationDatabaseTest.cpp
M clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp
M clang/unittests/Tooling/DependencyScanning/DependencyScanningFilesystemTest.cpp
M clang/unittests/Tooling/QualTypeNamesTest.cpp
M clang/unittests/Tooling/RangeSelectorTest.cpp
M clang/unittests/Tooling/RewriterTestContext.h
M clang/unittests/Tooling/Syntax/TokensTest.cpp
M clang/unittests/Tooling/Syntax/TreeTestBase.cpp
M clang/unittests/Tooling/Syntax/TreeTestBase.h
M clang/unittests/Tooling/ToolingTest.cpp
M clang/unittests/libclang/CrashTests/CMakeLists.txt
M clang/utils/TableGen/ClangAttrEmitter.cpp
M clang/utils/TableGen/ClangBuiltinTemplatesEmitter.cpp
M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
M clang/utils/TableGen/ClangOptionDocEmitter.cpp
M clang/utils/TableGen/MveEmitter.cpp
M clang/utils/TableGen/NeonEmitter.cpp
M clang/utils/TableGen/RISCVVEmitter.cpp
M clang/utils/TableGen/SveEmitter.cpp
M clang/utils/TableGen/TableGen.cpp
M clang/utils/TableGen/TableGenBackends.h
M clang/www/c_status.html
M clang/www/cxx_dr_status.html
M clang/www/cxx_status.html
M clang/www/menu.html.incl
M compiler-rt/cmake/Modules/AddCompilerRT.cmake
M compiler-rt/cmake/Modules/BuiltinTests.cmake
M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
M compiler-rt/cmake/builtin-config-ix.cmake
M compiler-rt/lib/asan/asan_fuchsia.cpp
M compiler-rt/lib/builtins/CMakeLists.txt
M compiler-rt/lib/builtins/aarch64/chkstk.S
M compiler-rt/lib/builtins/aarch64/lse.S
M compiler-rt/lib/builtins/aarch64/sme-abi.S
M compiler-rt/lib/builtins/aarch64/sme-libc-mem-routines.S
M compiler-rt/lib/builtins/assembly.h
M compiler-rt/lib/builtins/clear_cache.c
M compiler-rt/lib/builtins/cpu_model/aarch64.c
M compiler-rt/lib/builtins/cpu_model/aarch64.h
M compiler-rt/lib/builtins/extendhfsf2.c
M compiler-rt/lib/builtins/fp_compare_impl.inc
M compiler-rt/lib/builtins/fp_lib.h
M compiler-rt/lib/builtins/truncsfhf2.c
M compiler-rt/lib/builtins/udivmodti4.c
M compiler-rt/lib/hwasan/hwasan_fuchsia.cpp
M compiler-rt/lib/lsan/lsan_fuchsia.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang.h
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.h
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh
M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
M compiler-rt/lib/tsan/rtl/tsan_rtl.h
M compiler-rt/lib/ubsan/ubsan_init_standalone.cpp
M compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
M compiler-rt/test/asan/TestCases/zero_page_pc.cpp
M compiler-rt/test/builtins/Unit/enable_execute_stack_test.c
M compiler-rt/test/builtins/Unit/fixunstfdi_test.c
M compiler-rt/test/builtins/Unit/multc3_test.c
A compiler-rt/test/profile/Linux/coverage-do-while.c
A compiler-rt/test/profile/Linux/coverage-exception.cpp
M compiler-rt/test/sanitizer_common/TestCases/Posix/sanitizer_set_report_path_test.cpp
M compiler-rt/test/tsan/signal_recursive.cpp
M compiler-rt/test/ubsan_minimal/TestCases/override-callback.c
M flang-rt/CODE_OWNERS.TXT
M flang-rt/README.md
M flang-rt/include/flang-rt/runtime/allocator-registry.h
M flang-rt/include/flang-rt/runtime/descriptor.h
M flang-rt/include/flang-rt/runtime/emit-encoded.h
M flang-rt/include/flang-rt/runtime/reduction-templates.h
M flang-rt/include/flang-rt/runtime/tools.h
M flang-rt/lib/cuda/CMakeLists.txt
M flang-rt/lib/cuda/allocatable.cpp
M flang-rt/lib/cuda/allocator.cpp
M flang-rt/lib/cuda/descriptor.cpp
M flang-rt/lib/cuda/pointer.cpp
M flang-rt/lib/runtime/allocatable.cpp
M flang-rt/lib/runtime/array-constructor.cpp
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/character.cpp
M flang-rt/lib/runtime/copy.cpp
M flang-rt/lib/runtime/derived.cpp
M flang-rt/lib/runtime/descriptor.cpp
M flang-rt/lib/runtime/edit-input.cpp
M flang-rt/lib/runtime/extrema.cpp
M flang-rt/lib/runtime/findloc.cpp
M flang-rt/lib/runtime/matmul-transpose.cpp
M flang-rt/lib/runtime/matmul.cpp
M flang-rt/lib/runtime/misc-intrinsic.cpp
M flang-rt/lib/runtime/pointer.cpp
M flang-rt/lib/runtime/temporary-stack.cpp
M flang-rt/lib/runtime/tools.cpp
M flang-rt/lib/runtime/transformational.cpp
M flang-rt/unittests/Evaluate/reshape.cpp
M flang-rt/unittests/Runtime/Allocatable.cpp
A flang-rt/unittests/Runtime/Assign.cpp
M flang-rt/unittests/Runtime/CMakeLists.txt
M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp
M flang-rt/unittests/Runtime/CUDA/AllocatorCUF.cpp
M flang-rt/unittests/Runtime/CUDA/Memory.cpp
M flang-rt/unittests/Runtime/CharacterTest.cpp
M flang-rt/unittests/Runtime/CommandTest.cpp
M flang-rt/unittests/Runtime/TemporaryStack.cpp
M flang-rt/unittests/Runtime/tools.h
M flang/CMakeLists.txt
R flang/cmake/modules/AddFlangOffloadRuntime.cmake
M flang/docs/Aliasing.md
M flang/docs/Extensions.md
M flang/docs/FortranStandardsSupport.md
M flang/docs/ModFiles.md
M flang/docs/OpenMPSupport.md
M flang/docs/ReleaseNotes.md
M flang/examples/CMakeLists.txt
R flang/examples/ExternalHelloWorld/CMakeLists.txt
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
M flang/include/flang/Evaluate/characteristics.h
M flang/include/flang/Evaluate/constant.h
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Evaluate/traverse.h
M flang/include/flang/Evaluate/variable.h
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/include/flang/Frontend/CompilerInstance.h
M flang/include/flang/Frontend/CompilerInvocation.h
M flang/include/flang/Frontend/TextDiagnosticPrinter.h
M flang/include/flang/Lower/ConvertVariable.h
M flang/include/flang/Lower/OpenACC.h
M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
M flang/include/flang/Optimizer/Analysis/TBAAForest.h
M flang/include/flang/Optimizer/Builder/BoxValue.h
M flang/include/flang/Optimizer/Builder/DirectivesCommon.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Builder/HLFIRTools.h
M flang/include/flang/Optimizer/Builder/LowLevelIntrinsics.h
M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
M flang/include/flang/Optimizer/CodeGen/FIROpPatterns.h
A flang/include/flang/Optimizer/CodeGen/LLVMInsertChainFolder.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Optimizer/Dialect/FIRAttr.td
M flang/include/flang/Optimizer/Dialect/FIROps.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
M flang/include/flang/Optimizer/Dialect/FIRType.h
M flang/include/flang/Optimizer/Dialect/FIRTypes.td
M flang/include/flang/Optimizer/Dialect/FortranVariableInterface.td
M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
M flang/include/flang/Optimizer/HLFIR/Passes.td
M flang/include/flang/Optimizer/OpenMP/Passes.td
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Parser/preprocessor.h
M flang/include/flang/Parser/token-sequence.h
M flang/include/flang/Parser/unparse.h
M flang/include/flang/Runtime/CUDA/allocatable.h
M flang/include/flang/Runtime/CUDA/allocator.h
M flang/include/flang/Runtime/CUDA/pointer.h
M flang/include/flang/Runtime/allocatable.h
M flang/include/flang/Semantics/expression.h
M flang/include/flang/Semantics/symbol.h
M flang/include/flang/Semantics/unparse-with-symbols.h
M flang/include/flang/Support/Fortran-features.h
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Evaluate/CMakeLists.txt
M flang/lib/Evaluate/characteristics.cpp
M flang/lib/Evaluate/check-expression.cpp
M flang/lib/Evaluate/fold.cpp
M flang/lib/Evaluate/formatting.cpp
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Evaluate/shape.cpp
M flang/lib/Evaluate/tools.cpp
M flang/lib/Evaluate/variable.cpp
M flang/lib/Frontend/CMakeLists.txt
M flang/lib/Frontend/CompilerInstance.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendAction.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Frontend/ParserActions.cpp
M flang/lib/Frontend/TextDiagnosticPrinter.cpp
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/CMakeLists.txt
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/HostAssociations.cpp
M flang/lib/Lower/IO.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/DataSharingProcessor.h
M flang/lib/Lower/OpenMP/Decomposer.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.h
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/Support/Utils.cpp
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/lib/Optimizer/Analysis/TBAAForest.cpp
M flang/lib/Optimizer/Builder/Character.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/HLFIRTools.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/LowLevelIntrinsics.cpp
M flang/lib/Optimizer/Builder/Runtime/Allocatable.cpp
M flang/lib/Optimizer/CodeGen/CMakeLists.txt
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
A flang/lib/Optimizer/CodeGen/LLVMInsertChainFolder.cpp
M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Dialect/FIRType.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/CMakeLists.txt
M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIROrderedAssignments.cpp
M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
A flang/lib/Optimizer/HLFIR/Transforms/PropagateFortranVariableAttributes.cpp
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/lib/Optimizer/OpenMP/CMakeLists.txt
M flang/lib/Optimizer/OpenMP/DoConcurrentConversion.cpp
A flang/lib/Optimizer/OpenMP/LowerNontemporal.cpp
M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
M flang/lib/Optimizer/OpenMP/MapsForPrivatizedSymbols.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AbstractResult.cpp
M flang/lib/Optimizer/Transforms/AddAliasTags.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/AffinePromotion.cpp
M flang/lib/Optimizer/Transforms/CUFAddConstructor.cpp
M flang/lib/Optimizer/Transforms/CUFComputeSharedMemoryOffsetsAndSize.cpp
M flang/lib/Optimizer/Transforms/CUFDeviceGlobal.cpp
M flang/lib/Optimizer/Transforms/CUFGPUToLLVMConversion.cpp
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/lib/Optimizer/Transforms/ControlFlowConverter.cpp
M flang/lib/Optimizer/Transforms/FunctionAttr.cpp
M flang/lib/Optimizer/Transforms/LoopVersioning.cpp
M flang/lib/Optimizer/Transforms/PolymorphicOpConversion.cpp
M flang/lib/Optimizer/Transforms/SimplifyFIROperations.cpp
M flang/lib/Optimizer/Transforms/StackArrays.cpp
M flang/lib/Parser/CMakeLists.txt
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/parse-tree.cpp
M flang/lib/Parser/parsing.cpp
M flang/lib/Parser/preprocessor.cpp
M flang/lib/Parser/prescan.cpp
M flang/lib/Parser/prescan.h
M flang/lib/Parser/token-sequence.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/CMakeLists.txt
M flang/lib/Semantics/assignment.cpp
M flang/lib/Semantics/check-allocate.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-coarray.cpp
M flang/lib/Semantics/check-coarray.h
M flang/lib/Semantics/check-deallocate.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/definable.cpp
M flang/lib/Semantics/definable.h
M flang/lib/Semantics/dump-expr.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/mod-file.cpp
M flang/lib/Semantics/pointer-assignment.cpp
M flang/lib/Semantics/pointer-assignment.h
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/semantics.cpp
M flang/lib/Semantics/symbol.cpp
M flang/lib/Semantics/tools.cpp
M flang/lib/Semantics/unparse-with-symbols.cpp
M flang/lib/Support/Fortran-features.cpp
M flang/module/cudadevice.f90
R flang/runtime/CMakeLists.txt
R flang/runtime/CUDA/CMakeLists.txt
R flang/runtime/Float128Math/CMakeLists.txt
M flang/test/CMakeLists.txt
M flang/test/Driver/flang-ld-powerpc.f90
A flang/test/Driver/func-attr-instrument-functions.f90
M flang/test/Driver/fveclib-codegen.f90
M flang/test/Driver/fveclib.f90
A flang/test/Driver/loop-interchange.f90
M flang/test/Driver/mcmodel.f90
M flang/test/Driver/mlir-pass-pipeline.f90
A flang/test/Driver/multiple-fc1-input.f90
M flang/test/Driver/predefined-macros-powerpc2.f90
M flang/test/Fir/CUDA/cuda-allocate.fir
M flang/test/Fir/CUDA/cuda-code-gen.mlir
M flang/test/Fir/CUDA/cuda-implicit-device-global.f90
M flang/test/Fir/affine-promotion.fir
M flang/test/Fir/basic-program.fir
A flang/test/Fir/convert-and-fold-insert-on-range.fir
A flang/test/Fir/convert-nontemporal-to-llvm.fir
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/copy-codegen.fir
M flang/test/Fir/cse.fir
M flang/test/Fir/cuf-invalid.fir
M flang/test/Fir/cuf.mlir
M flang/test/Fir/do_concurrent.fir
M flang/test/Fir/embox-char.fir
M flang/test/Fir/embox-substring.fir
M flang/test/Fir/invalid.fir
A flang/test/Fir/simd-nontemporal.fir
M flang/test/Fir/vector-always.fir
A flang/test/Fir/volatile.fir
A flang/test/Fir/volatile2.fir
M flang/test/HLFIR/designate-codegen.fir
M flang/test/HLFIR/elemental-codegen.fir
A flang/test/HLFIR/opt-bufferization-eval_in_mem-with-associate.fir
A flang/test/HLFIR/opt-bufferization-skip-volatile.fir
A flang/test/HLFIR/order_assignments/where-after-cse.fir
A flang/test/HLFIR/propagate-contiguous-attribute.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-maxloc.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-maxval.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-minloc.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-minval.fir
A flang/test/HLFIR/volatile.fir
M flang/test/HLFIR/volatile1.fir
M flang/test/HLFIR/volatile2.fir
M flang/test/HLFIR/volatile3.fir
M flang/test/HLFIR/volatile4.fir
M flang/test/Integration/unroll.f90
M flang/test/Integration/unroll_and_jam.f90
M flang/test/Integration/vector-always.f90
M flang/test/Lower/CUDA/cuda-allocatable.cuf
M flang/test/Lower/CUDA/cuda-device-proc.cuf
A flang/test/Lower/CUDA/cuda-managed.cuf
A flang/test/Lower/HLFIR/call-postponed-associate.f90
M flang/test/Lower/HLFIR/designators-component-ref.f90
M flang/test/Lower/HLFIR/entry_return.f90
M flang/test/Lower/HLFIR/ignore-type-f77-character.f90
M flang/test/Lower/HLFIR/proc-pointer-comp-nopass.f90
M flang/test/Lower/OpenACC/acc-atomic-capture.f90
M flang/test/Lower/OpenACC/acc-atomic-update.f90
M flang/test/Lower/OpenACC/acc-data-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-data.f90
M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-declare.f90
M flang/test/Lower/OpenACC/acc-enter-data-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-enter-data.f90
M flang/test/Lower/OpenACC/acc-exit-data-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-exit-data.f90
M flang/test/Lower/OpenACC/acc-kernels-loop.f90
M flang/test/Lower/OpenACC/acc-kernels.f90
A flang/test/Lower/OpenACC/acc-module-definition.f90
M flang/test/Lower/OpenACC/acc-parallel-loop.f90
M flang/test/Lower/OpenACC/acc-parallel.f90
M flang/test/Lower/OpenACC/acc-private.f90
M flang/test/Lower/OpenACC/acc-reduction.f90
M flang/test/Lower/OpenACC/acc-routine-named.f90
A flang/test/Lower/OpenACC/acc-routine-use-module.f90
M flang/test/Lower/OpenACC/acc-routine.f90
M flang/test/Lower/OpenACC/acc-serial-loop.f90
M flang/test/Lower/OpenACC/acc-serial.f90
M flang/test/Lower/OpenACC/acc-update.f90
M flang/test/Lower/OpenACC/acc-wait.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-allocatable.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-multiple-variables.f90
A flang/test/Lower/OpenMP/Todo/declare-variant.f90
A flang/test/Lower/OpenMP/Todo/defaultmap-clause-firstprivate.f90
A flang/test/Lower/OpenMP/Todo/defaultmap-clause-none.f90
R flang/test/Lower/OpenMP/Todo/defaultmap-clause.f90
M flang/test/Lower/OpenMP/Todo/firstprivate-target.f90
R flang/test/Lower/OpenMP/Todo/task-inreduction.f90
R flang/test/Lower/OpenMP/Todo/taskgroup-task-reduction.f90
R flang/test/Lower/OpenMP/Todo/taskloop-cancel.f90
A flang/test/Lower/OpenMP/Todo/taskloop-inreduction.f90
A flang/test/Lower/OpenMP/Todo/taskloop-reduction.f90
R flang/test/Lower/OpenMP/Todo/taskloop.f90
M flang/test/Lower/OpenMP/atomic-capture.f90
A flang/test/Lower/OpenMP/atomic-implicit-cast.f90
M flang/test/Lower/OpenMP/atomic-update.f90
M flang/test/Lower/OpenMP/cray-pointers01.f90
A flang/test/Lower/OpenMP/defaultmap.f90
A flang/test/Lower/OpenMP/flush-common.f90
M flang/test/Lower/OpenMP/lastprivate-allocatable.f90
A flang/test/Lower/OpenMP/map-character.f90
A flang/test/Lower/OpenMP/masked_taskloop.f90
R flang/test/Lower/OpenMP/master_taskloop.f90
M flang/test/Lower/OpenMP/omp-declare-target-program-var.f90
A flang/test/Lower/OpenMP/optional-argument-map-2.f90
M flang/test/Lower/OpenMP/parallel-lastprivate-clause-scalar.f90
A flang/test/Lower/OpenMP/parallel-masked-taskloop.f90
R flang/test/Lower/OpenMP/parallel-master-taskloop.f90
M flang/test/Lower/OpenMP/same_var_first_lastprivate.f90
A flang/test/Lower/OpenMP/sections-predetermined-private.f90
M flang/test/Lower/OpenMP/target.f90
A flang/test/Lower/OpenMP/task-inreduction.f90
A flang/test/Lower/OpenMP/taskgroup-task-array-reduction.f90
A flang/test/Lower/OpenMP/taskgroup-task_reduction01.f90
A flang/test/Lower/OpenMP/taskgroup-task_reduction02.f90
A flang/test/Lower/OpenMP/taskloop-cancel.f90
A flang/test/Lower/OpenMP/taskloop-grainsize.f90
A flang/test/Lower/OpenMP/taskloop-numtasks.f90
A flang/test/Lower/OpenMP/taskloop.f90
M flang/test/Lower/OpenMP/threadprivate-host-association-2.f90
M flang/test/Lower/OpenMP/threadprivate-host-association-3.f90
A flang/test/Lower/OpenMP/threadprivate-lenparams.f90
M flang/test/Lower/OpenMP/threadprivate-non-global.f90
A flang/test/Lower/OpenMP/wsloop-linear.f90
M flang/test/Lower/allocatable-polymorphic.f90
M flang/test/Lower/allocatable-runtime.f90
M flang/test/Lower/allocate-mold.f90
M flang/test/Lower/allocate-source-allocatables-2.f90
M flang/test/Lower/allocate-source-allocatables.f90
M flang/test/Lower/allocate-source-pointers.f90
M flang/test/Lower/do_concurrent.f90
M flang/test/Lower/do_concurrent_local_default_init.f90
M flang/test/Lower/loops.f90
M flang/test/Lower/loops3.f90
M flang/test/Lower/nsw.f90
M flang/test/Lower/polymorphic.f90
A flang/test/Lower/volatile-allocatable.f90
A flang/test/Lower/volatile-allocatable1.f90
A flang/test/Lower/volatile-derived-type-pointer.f90
A flang/test/Lower/volatile-derived-type.f90
A flang/test/Lower/volatile-openmp.f90
A flang/test/Lower/volatile-string.f90
A flang/test/Lower/volatile1.f90
A flang/test/Lower/volatile2.f90
A flang/test/Lower/volatile3.f90
A flang/test/Lower/volatile4.f90
M flang/test/Parser/OpenMP/bug518.f
M flang/test/Parser/OpenMP/compiler-directive-continuation.f90
A flang/test/Parser/OpenMP/declare-variant.f90
M flang/test/Parser/OpenMP/defaultmap-clause.f90
M flang/test/Parser/OpenMP/sentinels.f
M flang/test/Parser/continuation-in-conditional-compilation.f
A flang/test/Preprocessing/bug136845.F
A flang/test/Preprocessing/func-on-command-line.F90
A flang/test/Preprocessing/pp048.F
M flang/test/Semantics/OpenACC/acc-kernels-loop.f90
M flang/test/Semantics/OpenACC/acc-parallel-loop-validity.f90
M flang/test/Semantics/OpenACC/acc-serial-loop.f90
A flang/test/Semantics/OpenMP/cancel-bad-cancel-type.f90
A flang/test/Semantics/OpenMP/cancellation-construct-type.f90
A flang/test/Semantics/OpenMP/declare-variant.f90
A flang/test/Semantics/OpenMP/detach01.f90
A flang/test/Semantics/OpenMP/detach02.f90
A flang/test/Semantics/OpenMP/reduction-undefined.f90
M flang/test/Semantics/PowerPC/ppc-vector-types04.f90
M flang/test/Semantics/allocate01.f90
M flang/test/Semantics/assign02.f90
M flang/test/Semantics/assign11.f90
M flang/test/Semantics/atomic02.f90
M flang/test/Semantics/atomic03.f90
M flang/test/Semantics/atomic04.f90
M flang/test/Semantics/atomic05.f90
M flang/test/Semantics/atomic06.f90
M flang/test/Semantics/atomic07.f90
M flang/test/Semantics/atomic08.f90
M flang/test/Semantics/atomic09.f90
M flang/test/Semantics/atomic10.f90
M flang/test/Semantics/atomic11.f90
A flang/test/Semantics/boz-rhs.f90
A flang/test/Semantics/bug138915.f90
A flang/test/Semantics/bug139129.f90
A flang/test/Semantics/c7108.f90
M flang/test/Semantics/c_loc01.f90
M flang/test/Semantics/call03.f90
M flang/test/Semantics/call07.f90
M flang/test/Semantics/call28.f90
A flang/test/Semantics/call43.f90
A flang/test/Semantics/call44.f90
M flang/test/Semantics/coarrays02.f90
A flang/test/Semantics/command.f90
M flang/test/Semantics/coshape.f90
M flang/test/Semantics/cuf09.cuf
A flang/test/Semantics/cuf20.cuf
A flang/test/Semantics/cuf21.cuf
M flang/test/Semantics/deallocate07.f90
M flang/test/Semantics/declarations05.f90
M flang/test/Semantics/declarations08.f90
M flang/test/Semantics/error_stop1b.f90
M flang/test/Semantics/event01b.f90
M flang/test/Semantics/generic09.f90
M flang/test/Semantics/io11.f90
M flang/test/Semantics/misc-intrinsics.f90
A flang/test/Semantics/modfile75.F90
A flang/test/Semantics/pad-hollerith-arg.f
M flang/test/Semantics/resolve11.f90
A flang/test/Semantics/resolve125.f90
M flang/test/Semantics/resolve17.f90
M flang/test/Semantics/resolve18.f90
M flang/test/Semantics/resolve34.f90
M flang/test/Semantics/resolve94.f90
M flang/test/Transforms/DoConcurrent/basic_device.mlir
M flang/test/Transforms/DoConcurrent/basic_host.mlir
R flang/test/Transforms/DoConcurrent/loop_nest_test.f90
M flang/test/Transforms/DoConcurrent/not_perfectly_nested.f90
M flang/test/Transforms/debug-107988.fir
M flang/test/Transforms/debug-96314.fir
M flang/test/Transforms/debug-allocatable-1.fir
M flang/test/Transforms/debug-assumed-rank-array.fir
M flang/test/Transforms/debug-assumed-shape-array-2.fir
M flang/test/Transforms/debug-assumed-size-array.fir
M flang/test/Transforms/debug-char-type-1.fir
M flang/test/Transforms/debug-class-type.fir
M flang/test/Transforms/debug-common-block.fir
M flang/test/Transforms/debug-complex-1.fir
M flang/test/Transforms/debug-derived-type-2.fir
M flang/test/Transforms/debug-extra-global.fir
M flang/test/Transforms/debug-fixed-array-type.fir
M flang/test/Transforms/debug-fn-info.fir
M flang/test/Transforms/debug-imported-entity.fir
M flang/test/Transforms/debug-index-type.fir
M flang/test/Transforms/debug-line-table-existing.fir
M flang/test/Transforms/debug-line-table-inc-file.fir
M flang/test/Transforms/debug-line-table-inc-same-file.fir
M flang/test/Transforms/debug-line-table.fir
M flang/test/Transforms/debug-local-var.fir
M flang/test/Transforms/debug-module-1.fir
M flang/test/Transforms/debug-ptr-type.fir
M flang/test/Transforms/debug-ref-type.fir
M flang/test/Transforms/debug-tuple-type.fir
M flang/test/Transforms/debug-variable-array-dim.fir
M flang/test/Transforms/debug-variable-char-len.fir
M flang/test/Transforms/debug-vector-type.fir
A flang/test/Transforms/dlti-dependency.fir
M flang/test/Transforms/do_concurrent-to-do_loop-unodered.fir
M flang/test/Transforms/lower-repack-arrays.fir
A flang/test/Transforms/stack-arrays-lifetime.fir
M flang/test/Transforms/tbaa-with-dummy-scope.fir
M flang/test/Transforms/tbaa-with-dummy-scope2.fir
M flang/test/Transforms/tbaa.fir
M flang/test/Transforms/tbaa2.fir
A flang/test/Transforms/tbaa3.fir
A flang/test/Transforms/tbaa4.fir
M flang/test/lit.cfg.py
M flang/test/lit.site.cfg.py.in
M flang/tools/f18-parse-demo/f18-parse-demo.cpp
M flang/tools/f18/CMakeLists.txt
M flang/tools/flang-driver/driver.cpp
M flang/tools/flang-driver/fc1_main.cpp
M flang/unittests/CMakeLists.txt
M flang/unittests/Evaluate/CMakeLists.txt
M flang/unittests/Frontend/CodeGenActionTest.cpp
M flang/unittests/Frontend/CompilerInstanceTest.cpp
R flang/unittests/Runtime/CMakeLists.txt
R flang/unittests/Runtime/CUDA/CMakeLists.txt
M libc/CMakeLists.txt
M libc/cmake/modules/LLVMLibCLibraryRules.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/config/app.h
M libc/config/config.json
M libc/config/darwin/arm/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/riscv/headers.txt
M libc/config/linux/x86_64/entrypoints.txt
A libc/config/uefi/app.h
M libc/config/windows/entrypoints.txt
M libc/docs/configure.rst
M libc/docs/dev/code_style.rst
M libc/docs/dev/source_tree_layout.rst
M libc/docs/gpu/rpc.rst
M libc/docs/headers/math/index.rst
M libc/fuzzing/__support/CMakeLists.txt
M libc/fuzzing/__support/hashtable_fuzz.cpp
M libc/hdr/CMakeLists.txt
A libc/hdr/offsetof_macros.h
A libc/hdr/types/ACTION.h
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/ENTRY.h
M libc/include/CMakeLists.txt
R libc/include/Uefi.h.def
M libc/include/Uefi.yaml
M libc/include/llvm-libc-types/CMakeLists.txt
M libc/include/llvm-libc-types/EFI_STATUS.h
M libc/include/llvm-libc-types/ENTRY.h
M libc/include/llvm-libc-types/jmp_buf.h
M libc/include/math.yaml
M libc/include/setjmp.yaml
M libc/include/stdlib.yaml
M libc/include/sys/syscall.h.def
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/FPUtil/FPBits.h
M libc/src/__support/FPUtil/dyadic_float.h
M libc/src/__support/FPUtil/nearest_integer.h
M libc/src/__support/FPUtil/sqrt.h
M libc/src/__support/GPU/utils.h
M libc/src/__support/HashTable/CMakeLists.txt
M libc/src/__support/HashTable/table.h
M libc/src/__support/OSUtil/uefi/CMakeLists.txt
A libc/src/__support/OSUtil/uefi/error.h
M libc/src/__support/OSUtil/uefi/exit.cpp
M libc/src/__support/OSUtil/uefi/io.cpp
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/acos.cpp
M libc/src/math/generic/asin.cpp
M libc/src/math/generic/asin_utils.h
M libc/src/poll/linux/poll.cpp
M libc/src/search/CMakeLists.txt
M libc/src/search/hsearch.h
M libc/src/search/hsearch_r.h
M libc/src/setjmp/CMakeLists.txt
M libc/src/setjmp/aarch64/CMakeLists.txt
A libc/src/setjmp/aarch64/sigsetjmp.cpp
A libc/src/setjmp/linux/CMakeLists.txt
A libc/src/setjmp/linux/sigsetjmp_epilogue.cpp
M libc/src/setjmp/riscv/CMakeLists.txt
A libc/src/setjmp/riscv/sigsetjmp.cpp
M libc/src/setjmp/setjmp_impl.h
A libc/src/setjmp/siglongjmp.cpp
A libc/src/setjmp/siglongjmp.h
A libc/src/setjmp/sigsetjmp.h
A libc/src/setjmp/sigsetjmp_epilogue.h
M libc/src/setjmp/x86_64/CMakeLists.txt
M libc/src/setjmp/x86_64/setjmp.cpp
A libc/src/setjmp/x86_64/sigsetjmp.cpp
M libc/src/stdio/printf_core/core_structs.h
M libc/src/stdlib/qsort_r.h
M libc/src/string/memory_utils/aarch64/inline_bcmp.h
M libc/src/string/memory_utils/aarch64/inline_memcmp.h
M libc/src/string/memory_utils/aarch64/inline_memmove.h
M libc/src/string/memory_utils/aarch64/inline_memset.h
M libc/src/string/memory_utils/inline_bcmp.h
M libc/src/string/memory_utils/inline_memcmp.h
M libc/src/string/memory_utils/inline_memset.h
M libc/src/string/memory_utils/op_aarch64.h
M libc/src/sys/stat/linux/chmod.cpp
M libc/src/sys/time/linux/getitimer.cpp
M libc/src/sys/time/linux/setitimer.cpp
M libc/src/sys/time/linux/utimes.cpp
A libc/startup/uefi/CMakeLists.txt
A libc/startup/uefi/crt1.cpp
M libc/test/integration/src/__support/GPU/match.cpp
A libc/test/integration/startup/uefi/CMakeLists.txt
A libc/test/integration/startup/uefi/main_without_args.cpp
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/acos_test.cpp
M libc/test/src/math/exp10m1f_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/acos_test.cpp
M libc/test/src/search/lfind_test.cpp
M libc/test/src/search/lsearch_test.cpp
M libc/test/src/setjmp/CMakeLists.txt
A libc/test/src/setjmp/sigsetjmp_test.cpp
M libclc/CMakeLists.txt
R libclc/amdgcn-amdhsa/lib/SOURCES
R libclc/amdgcn-amdhsa/lib/workitem/get_global_size.cl
R libclc/amdgcn-amdhsa/lib/workitem/get_local_size.cl
R libclc/amdgcn-amdhsa/lib/workitem/get_num_groups.cl
R libclc/amdgcn/lib/SOURCES
R libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.ll
R libclc/amdgcn/lib/math/fmax.cl
R libclc/amdgcn/lib/math/fmin.cl
R libclc/amdgcn/lib/mem_fence/fence.cl
R libclc/amdgcn/lib/synchronization/barrier.cl
R libclc/amdgcn/lib/workitem/get_global_offset.cl
R libclc/amdgcn/lib/workitem/get_global_size.cl
R libclc/amdgcn/lib/workitem/get_group_id.cl
R libclc/amdgcn/lib/workitem/get_local_id.cl
R libclc/amdgcn/lib/workitem/get_local_size.cl
R libclc/amdgcn/lib/workitem/get_num_groups.cl
R libclc/amdgcn/lib/workitem/get_work_dim.cl
R libclc/amdgpu/lib/SOURCES
R libclc/amdgpu/lib/math/half_exp.cl
R libclc/amdgpu/lib/math/half_exp10.cl
R libclc/amdgpu/lib/math/half_exp2.cl
R libclc/amdgpu/lib/math/half_log.cl
R libclc/amdgpu/lib/math/half_log10.cl
R libclc/amdgpu/lib/math/half_log2.cl
R libclc/amdgpu/lib/math/half_native_unary.inc
R libclc/amdgpu/lib/math/half_recip.cl
R libclc/amdgpu/lib/math/half_rsqrt.cl
R libclc/amdgpu/lib/math/half_sqrt.cl
M libclc/clc/include/clc/clcfunc.h
M libclc/clc/include/clc/clcmacro.h
M libclc/clc/include/clc/common/clc_degrees.h
M libclc/clc/include/clc/common/clc_radians.h
M libclc/clc/include/clc/common/clc_sign.h
M libclc/clc/include/clc/common/clc_smoothstep.h
A libclc/clc/include/clc/common/clc_step.h
A libclc/clc/include/clc/geometric/binary_decl.inc
A libclc/clc/include/clc/geometric/binary_def.inc
A libclc/clc/include/clc/geometric/clc_cross.h
A libclc/clc/include/clc/geometric/clc_distance.h
M libclc/clc/include/clc/geometric/clc_dot.h
R libclc/clc/include/clc/geometric/clc_dot.inc
A libclc/clc/include/clc/geometric/clc_fast_distance.h
A libclc/clc/include/clc/geometric/clc_fast_length.h
A libclc/clc/include/clc/geometric/clc_length.h
R libclc/clc/include/clc/geometric/floatn.inc
A libclc/clc/include/clc/geometric/unary_decl.inc
A libclc/clc/include/clc/geometric/unary_def.inc
M libclc/clc/include/clc/integer/clc_add_sat.h
M libclc/clc/include/clc/integer/clc_clz.h
M libclc/clc/include/clc/integer/clc_ctz.h
M libclc/clc/include/clc/integer/clc_hadd.h
M libclc/clc/include/clc/integer/clc_mad24.h
M libclc/clc/include/clc/integer/clc_mad_sat.h
M libclc/clc/include/clc/integer/clc_mul24.h
M libclc/clc/include/clc/integer/clc_mul_hi.h
M libclc/clc/include/clc/integer/clc_rhadd.h
M libclc/clc/include/clc/integer/clc_rotate.h
M libclc/clc/include/clc/integer/clc_sub_sat.h
M libclc/clc/include/clc/internal/math/clc_sw_fma.h
M libclc/clc/include/clc/math/clc_acos.h
M libclc/clc/include/clc/math/clc_acosh.h
M libclc/clc/include/clc/math/clc_acospi.h
M libclc/clc/include/clc/math/clc_asin.h
M libclc/clc/include/clc/math/clc_asinh.h
M libclc/clc/include/clc/math/clc_asinpi.h
M libclc/clc/include/clc/math/clc_atan.h
M libclc/clc/include/clc/math/clc_atan2.h
M libclc/clc/include/clc/math/clc_atan2pi.h
M libclc/clc/include/clc/math/clc_atanh.h
M libclc/clc/include/clc/math/clc_atanpi.h
M libclc/clc/include/clc/math/clc_cbrt.inc
M libclc/clc/include/clc/math/clc_ceil.h
M libclc/clc/include/clc/math/clc_copysign.h
A libclc/clc/include/clc/math/clc_cos.h
M libclc/clc/include/clc/math/clc_cosh.h
M libclc/clc/include/clc/math/clc_cospi.h
A libclc/clc/include/clc/math/clc_erf.h
A libclc/clc/include/clc/math/clc_erfc.h
M libclc/clc/include/clc/math/clc_exp.h
M libclc/clc/include/clc/math/clc_exp10.h
M libclc/clc/include/clc/math/clc_exp2.h
M libclc/clc/include/clc/math/clc_exp_helper.h
M libclc/clc/include/clc/math/clc_expm1.h
M libclc/clc/include/clc/math/clc_fabs.h
A libclc/clc/include/clc/math/clc_fdim.h
M libclc/clc/include/clc/math/clc_floor.h
M libclc/clc/include/clc/math/clc_fma.h
A libclc/clc/include/clc/math/clc_fmax.h
A libclc/clc/include/clc/math/clc_fmin.h
M libclc/clc/include/clc/math/clc_fmod.h
A libclc/clc/include/clc/math/clc_fract.h
M libclc/clc/include/clc/math/clc_frexp.h
A libclc/clc/include/clc/math/clc_half_cos.h
A libclc/clc/include/clc/math/clc_half_divide.h
A libclc/clc/include/clc/math/clc_half_exp.h
A libclc/clc/include/clc/math/clc_half_exp10.h
A libclc/clc/include/clc/math/clc_half_exp2.h
A libclc/clc/include/clc/math/clc_half_log.h
A libclc/clc/include/clc/math/clc_half_log10.h
A libclc/clc/include/clc/math/clc_half_log2.h
A libclc/clc/include/clc/math/clc_half_powr.h
A libclc/clc/include/clc/math/clc_half_recip.h
A libclc/clc/include/clc/math/clc_half_rsqrt.h
A libclc/clc/include/clc/math/clc_half_sin.h
A libclc/clc/include/clc/math/clc_half_sqrt.h
A libclc/clc/include/clc/math/clc_half_tan.h
M libclc/clc/include/clc/math/clc_hypot.h
A libclc/clc/include/clc/math/clc_ilogb.h
M libclc/clc/include/clc/math/clc_lgamma.h
M libclc/clc/include/clc/math/clc_lgamma_r.h
M libclc/clc/include/clc/math/clc_log.h
M libclc/clc/include/clc/math/clc_log10.h
M libclc/clc/include/clc/math/clc_log1p.h
M libclc/clc/include/clc/math/clc_log2.h
A libclc/clc/include/clc/math/clc_logb.h
M libclc/clc/include/clc/math/clc_mad.h
A libclc/clc/include/clc/math/clc_maxmag.h
A libclc/clc/include/clc/math/clc_minmag.h
M libclc/clc/include/clc/math/clc_modf.h
M libclc/clc/include/clc/math/clc_nan.h
M libclc/clc/include/clc/math/clc_native_cos.h
M libclc/clc/include/clc/math/clc_native_divide.h
M libclc/clc/include/clc/math/clc_native_exp.h
M libclc/clc/include/clc/math/clc_native_exp10.h
M libclc/clc/include/clc/math/clc_native_exp2.h
M libclc/clc/include/clc/math/clc_native_log.h
M libclc/clc/include/clc/math/clc_native_log10.h
M libclc/clc/include/clc/math/clc_native_log2.h
M libclc/clc/include/clc/math/clc_native_powr.h
M libclc/clc/include/clc/math/clc_native_recip.h
M libclc/clc/include/clc/math/clc_native_rsqrt.h
M libclc/clc/include/clc/math/clc_native_sin.h
M libclc/clc/include/clc/math/clc_native_sqrt.h
M libclc/clc/include/clc/math/clc_native_tan.h
M libclc/clc/include/clc/math/clc_nextafter.h
M libclc/clc/include/clc/math/clc_pow.h
M libclc/clc/include/clc/math/clc_pown.h
M libclc/clc/include/clc/math/clc_powr.h
M libclc/clc/include/clc/math/clc_remainder.h
M libclc/clc/include/clc/math/clc_remquo.h
M libclc/clc/include/clc/math/clc_rint.h
M libclc/clc/include/clc/math/clc_rootn.h
M libclc/clc/include/clc/math/clc_round.h
M libclc/clc/include/clc/math/clc_rsqrt.h
A libclc/clc/include/clc/math/clc_sin.h
A libclc/clc/include/clc/math/clc_sincos.h
M libclc/clc/include/clc/math/clc_sincos_helpers.h
A libclc/clc/include/clc/math/clc_sincos_helpers_fp64.inc
M libclc/clc/include/clc/math/clc_sinh.h
M libclc/clc/include/clc/math/clc_sinpi.h
M libclc/clc/include/clc/math/clc_sqrt.h
A libclc/clc/include/clc/math/clc_tan.h
M libclc/clc/include/clc/math/clc_tanh.h
M libclc/clc/include/clc/math/clc_tanpi.h
M libclc/clc/include/clc/math/clc_tgamma.h
M libclc/clc/include/clc/math/clc_trunc.h
M libclc/clc/include/clc/math/gentype.inc
M libclc/clc/include/clc/math/math.h
M libclc/clc/include/clc/math/remquo_decl.inc
M libclc/clc/include/clc/math/tables.h
R libclc/clc/include/clc/math/unary_builtin.inc
M libclc/clc/include/clc/math/unary_decl_with_int_ptr.inc
A libclc/clc/include/clc/math/unary_decl_with_int_return.inc
M libclc/clc/include/clc/math/unary_decl_with_ptr.inc
M libclc/clc/include/clc/math/unary_def_with_int_ptr.inc
A libclc/clc/include/clc/math/unary_def_with_int_return.inc
M libclc/clc/include/clc/math/unary_def_with_ptr.inc
M libclc/clc/include/clc/relational/clc_bitselect.h
M libclc/clc/include/clc/relational/clc_isfinite.h
M libclc/clc/include/clc/relational/clc_isgreater.h
M libclc/clc/include/clc/relational/clc_isgreaterequal.h
M libclc/clc/include/clc/relational/clc_isless.h
M libclc/clc/include/clc/relational/clc_islessequal.h
M libclc/clc/include/clc/relational/clc_islessgreater.h
M libclc/clc/include/clc/relational/clc_isnormal.h
M libclc/clc/include/clc/relational/clc_isnotequal.h
M libclc/clc/include/clc/relational/clc_isordered.h
M libclc/clc/include/clc/relational/clc_isunordered.h
M libclc/clc/include/clc/relational/clc_signbit.h
A libclc/clc/include/clc/shared/binary_decl_with_scalar_second_arg.inc
A libclc/clc/include/clc/shared/binary_def_with_scalar_second_arg.inc
M libclc/clc/lib/amdgcn/SOURCES
A libclc/clc/lib/amdgcn/math/clc_fmax.cl
A libclc/clc/lib/amdgcn/math/clc_fmin.cl
M libclc/clc/lib/amdgpu/SOURCES
A libclc/clc/lib/amdgpu/math/clc_half_exp.cl
A libclc/clc/lib/amdgpu/math/clc_half_exp10.cl
A libclc/clc/lib/amdgpu/math/clc_half_exp2.cl
A libclc/clc/lib/amdgpu/math/clc_half_log.cl
A libclc/clc/lib/amdgpu/math/clc_half_log10.cl
A libclc/clc/lib/amdgpu/math/clc_half_log2.cl
A libclc/clc/lib/amdgpu/math/clc_half_native_unary.inc
A libclc/clc/lib/amdgpu/math/clc_half_recip.cl
A libclc/clc/lib/amdgpu/math/clc_half_rsqrt.cl
A libclc/clc/lib/amdgpu/math/clc_half_sqrt.cl
M libclc/clc/lib/generic/SOURCES
M libclc/clc/lib/generic/common/clc_sign.inc
A libclc/clc/lib/generic/common/clc_step.cl
A libclc/clc/lib/generic/common/clc_step.inc
A libclc/clc/lib/generic/geometric/clc_cross.cl
A libclc/clc/lib/generic/geometric/clc_cross.inc
A libclc/clc/lib/generic/geometric/clc_distance.cl
A libclc/clc/lib/generic/geometric/clc_distance.inc
A libclc/clc/lib/generic/geometric/clc_fast_distance.cl
A libclc/clc/lib/generic/geometric/clc_fast_distance.inc
A libclc/clc/lib/generic/geometric/clc_fast_length.cl
A libclc/clc/lib/generic/geometric/clc_length.cl
A libclc/clc/lib/generic/geometric/clc_length.inc
M libclc/clc/lib/generic/math/clc_asinpi.inc
M libclc/clc/lib/generic/math/clc_atanpi.inc
M libclc/clc/lib/generic/math/clc_ceil.cl
A libclc/clc/lib/generic/math/clc_cos.cl
A libclc/clc/lib/generic/math/clc_cos.inc
A libclc/clc/lib/generic/math/clc_erf.cl
A libclc/clc/lib/generic/math/clc_erfc.cl
M libclc/clc/lib/generic/math/clc_fabs.cl
A libclc/clc/lib/generic/math/clc_fdim.cl
A libclc/clc/lib/generic/math/clc_fdim.inc
M libclc/clc/lib/generic/math/clc_floor.cl
A libclc/clc/lib/generic/math/clc_fmax.cl
A libclc/clc/lib/generic/math/clc_fmin.cl
A libclc/clc/lib/generic/math/clc_fract.cl
A libclc/clc/lib/generic/math/clc_fract.inc
M libclc/clc/lib/generic/math/clc_frexp.cl
A libclc/clc/lib/generic/math/clc_half_cos.cl
A libclc/clc/lib/generic/math/clc_half_divide.cl
A libclc/clc/lib/generic/math/clc_half_divide.inc
A libclc/clc/lib/generic/math/clc_half_exp.cl
A libclc/clc/lib/generic/math/clc_half_exp10.cl
A libclc/clc/lib/generic/math/clc_half_exp2.cl
A libclc/clc/lib/generic/math/clc_half_log.cl
A libclc/clc/lib/generic/math/clc_half_log10.cl
A libclc/clc/lib/generic/math/clc_half_log2.cl
A libclc/clc/lib/generic/math/clc_half_powr.cl
A libclc/clc/lib/generic/math/clc_half_recip.cl
A libclc/clc/lib/generic/math/clc_half_recip.inc
A libclc/clc/lib/generic/math/clc_half_rsqrt.cl
A libclc/clc/lib/generic/math/clc_half_sin.cl
A libclc/clc/lib/generic/math/clc_half_sqrt.cl
A libclc/clc/lib/generic/math/clc_half_tan.cl
M libclc/clc/lib/generic/math/clc_hypot.cl
A libclc/clc/lib/generic/math/clc_ilogb.cl
A libclc/clc/lib/generic/math/clc_ilogb.inc
M libclc/clc/lib/generic/math/clc_lgamma_r.cl
A libclc/clc/lib/generic/math/clc_logb.cl
A libclc/clc/lib/generic/math/clc_logb.inc
A libclc/clc/lib/generic/math/clc_maxmag.cl
A libclc/clc/lib/generic/math/clc_maxmag.inc
A libclc/clc/lib/generic/math/clc_minmag.cl
A libclc/clc/lib/generic/math/clc_minmag.inc
M libclc/clc/lib/generic/math/clc_modf.inc
M libclc/clc/lib/generic/math/clc_remquo.cl
A libclc/clc/lib/generic/math/clc_remquo.inc
M libclc/clc/lib/generic/math/clc_rint.cl
M libclc/clc/lib/generic/math/clc_rootn.inc
M libclc/clc/lib/generic/math/clc_round.cl
A libclc/clc/lib/generic/math/clc_sin.cl
A libclc/clc/lib/generic/math/clc_sin.inc
A libclc/clc/lib/generic/math/clc_sincos.cl
A libclc/clc/lib/generic/math/clc_sincos.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers.cl
M libclc/clc/lib/generic/math/clc_sincos_helpers.inc
A libclc/clc/lib/generic/math/clc_sincos_helpers_fp64.inc
M libclc/clc/lib/generic/math/clc_tables.cl
A libclc/clc/lib/generic/math/clc_tan.cl
A libclc/clc/lib/generic/math/clc_tan.inc
M libclc/clc/lib/generic/math/clc_trunc.cl
M libclc/clc/lib/generic/misc/clc_shuffle.cl
M libclc/clc/lib/generic/misc/clc_shuffle2.cl
M libclc/clc/lib/generic/relational/clc_bitselect.cl
M libclc/clc/lib/r600/SOURCES
A libclc/clc/lib/r600/math/clc_fmax.cl
A libclc/clc/lib/r600/math/clc_fmin.cl
R libclc/clspv/lib/SOURCES
R libclc/clspv/lib/math/fma.cl
R libclc/clspv/lib/shared/vstore_half.cl
R libclc/clspv/lib/shared/vstore_half.inc
R libclc/clspv/lib/subnormal_config.cl
M libclc/cmake/modules/AddLibclc.cmake
R libclc/generic/include/clc/as_type.h
R libclc/generic/include/clc/async/async_work_group_copy.h
R libclc/generic/include/clc/async/async_work_group_copy.inc
R libclc/generic/include/clc/async/async_work_group_strided_copy.h
R libclc/generic/include/clc/async/async_work_group_strided_copy.inc
R libclc/generic/include/clc/async/gentype.inc
R libclc/generic/include/clc/async/prefetch.h
R libclc/generic/include/clc/async/prefetch.inc
R libclc/generic/include/clc/async/wait_group_events.h
R libclc/generic/include/clc/atomic/atom_add.h
R libclc/generic/include/clc/atomic/atom_and.h
R libclc/generic/include/clc/atomic/atom_cmpxchg.h
R libclc/generic/include/clc/atomic/atom_dec.h
R libclc/generic/include/clc/atomic/atom_decl_int32.inc
R libclc/generic/include/clc/atomic/atom_decl_int64.inc
R libclc/generic/include/clc/atomic/atom_inc.h
R libclc/generic/include/clc/atomic/atom_max.h
R libclc/generic/include/clc/atomic/atom_min.h
R libclc/generic/include/clc/atomic/atom_or.h
R libclc/generic/include/clc/atomic/atom_sub.h
R libclc/generic/include/clc/atomic/atom_xchg.h
R libclc/generic/include/clc/atomic/atom_xor.h
R libclc/generic/include/clc/atomic/atomic_add.h
R libclc/generic/include/clc/atomic/atomic_and.h
R libclc/generic/include/clc/atomic/atomic_cmpxchg.h
R libclc/generic/include/clc/atomic/atomic_dec.h
R libclc/generic/include/clc/atomic/atomic_decl.inc
R libclc/generic/include/clc/atomic/atomic_inc.h
R libclc/generic/include/clc/atomic/atomic_max.h
R libclc/generic/include/clc/atomic/atomic_min.h
R libclc/generic/include/clc/atomic/atomic_or.h
R libclc/generic/include/clc/atomic/atomic_sub.h
R libclc/generic/include/clc/atomic/atomic_xchg.h
R libclc/generic/include/clc/atomic/atomic_xor.h
R libclc/generic/include/clc/clc.h
R libclc/generic/include/clc/common/degrees.h
R libclc/generic/include/clc/common/degrees.inc
R libclc/generic/include/clc/common/mix.h
R libclc/generic/include/clc/common/mix.inc
R libclc/generic/include/clc/common/radians.h
R libclc/generic/include/clc/common/radians.inc
R libclc/generic/include/clc/common/sign.h
R libclc/generic/include/clc/common/smoothstep.h
R libclc/generic/include/clc/common/smoothstep.inc
R libclc/generic/include/clc/common/step.h
R libclc/generic/include/clc/common/step.inc
R libclc/generic/include/clc/convert.h
R libclc/generic/include/clc/explicit_fence/explicit_memory_fence.h
R libclc/generic/include/clc/geometric/cross.h
R libclc/generic/include/clc/geometric/distance.h
R libclc/generic/include/clc/geometric/distance.inc
R libclc/generic/include/clc/geometric/dot.h
R libclc/generic/include/clc/geometric/dot.inc
R libclc/generic/include/clc/geometric/fast_distance.h
R libclc/generic/include/clc/geometric/fast_distance.inc
R libclc/generic/include/clc/geometric/fast_length.h
R libclc/generic/include/clc/geometric/fast_length.inc
R libclc/generic/include/clc/geometric/fast_normalize.h
R libclc/generic/include/clc/geometric/fast_normalize.inc
R libclc/generic/include/clc/geometric/length.h
R libclc/generic/include/clc/geometric/length.inc
R libclc/generic/include/clc/geometric/normalize.h
R libclc/generic/include/clc/geometric/normalize.inc
R libclc/generic/include/clc/image/image.h
R libclc/generic/include/clc/image/image_defines.h
R libclc/generic/include/clc/integer/abs.h
R libclc/generic/include/clc/integer/abs.inc
R libclc/generic/include/clc/integer/abs_diff.h
R libclc/generic/include/clc/integer/abs_diff.inc
R libclc/generic/include/clc/integer/add_sat.h
R libclc/generic/include/clc/integer/add_sat.inc
R libclc/generic/include/clc/integer/clz.h
R libclc/generic/include/clc/integer/ctz.h
R libclc/generic/include/clc/integer/hadd.h
R libclc/generic/include/clc/integer/integer-gentype.inc
R libclc/generic/include/clc/integer/mad24.h
R libclc/generic/include/clc/integer/mad_hi.h
R libclc/generic/include/clc/integer/mad_sat.h
R libclc/generic/include/clc/integer/mad_sat.inc
R libclc/generic/include/clc/integer/mul24.h
R libclc/generic/include/clc/integer/mul_hi.h
R libclc/generic/include/clc/integer/popcount.h
R libclc/generic/include/clc/integer/rhadd.h
R libclc/generic/include/clc/integer/rotate.h
R libclc/generic/include/clc/integer/rotate.inc
R libclc/generic/include/clc/integer/sub_sat.h
R libclc/generic/include/clc/integer/sub_sat.inc
R libclc/generic/include/clc/integer/unary.inc
R libclc/generic/include/clc/integer/upsample.h
R libclc/generic/include/clc/math/acos.h
R libclc/generic/include/clc/math/acosh.h
R libclc/generic/include/clc/math/acospi.h
R libclc/generic/include/clc/math/asin.h
R libclc/generic/include/clc/math/asinh.h
R libclc/generic/include/clc/math/asinpi.h
R libclc/generic/include/clc/math/atan.h
R libclc/generic/include/clc/math/atan2.h
R libclc/generic/include/clc/math/atan2pi.h
R libclc/generic/include/clc/math/atanh.h
R libclc/generic/include/clc/math/atanpi.h
R libclc/generic/include/clc/math/binary_decl_tt.inc
R libclc/generic/include/clc/math/cbrt.h
R libclc/generic/include/clc/math/ceil.h
R libclc/generic/include/clc/math/copysign.h
R libclc/generic/include/clc/math/cos.h
R libclc/generic/include/clc/math/cosh.h
R libclc/generic/include/clc/math/cospi.h
R libclc/generic/include/clc/math/erf.h
R libclc/generic/include/clc/math/erfc.h
R libclc/generic/include/clc/math/exp.h
R libclc/generic/include/clc/math/exp10.h
R libclc/generic/include/clc/math/exp2.h
R libclc/generic/include/clc/math/expm1.h
R libclc/generic/include/clc/math/fabs.h
R libclc/generic/include/clc/math/fdim.h
R libclc/generic/include/clc/math/floor.h
R libclc/generic/include/clc/math/fma.h
R libclc/generic/include/clc/math/fmax.h
R libclc/generic/include/clc/math/fmin.h
R libclc/generic/include/clc/math/fmod.h
R libclc/generic/include/clc/math/fract.h
R libclc/generic/include/clc/math/fract.inc
R libclc/generic/include/clc/math/frexp.h
R libclc/generic/include/clc/math/frexp.inc
R libclc/generic/include/clc/math/half_cos.h
R libclc/generic/include/clc/math/half_divide.h
R libclc/generic/include/clc/math/half_exp.h
R libclc/generic/include/clc/math/half_exp10.h
R libclc/generic/include/clc/math/half_exp2.h
R libclc/generic/include/clc/math/half_log.h
R libclc/generic/include/clc/math/half_log10.h
R libclc/generic/include/clc/math/half_log2.h
R libclc/generic/include/clc/math/half_powr.h
R libclc/generic/include/clc/math/half_recip.h
R libclc/generic/include/clc/math/half_rsqrt.h
R libclc/generic/include/clc/math/half_sin.h
R libclc/generic/include/clc/math/half_sqrt.h
R libclc/generic/include/clc/math/half_tan.h
R libclc/generic/include/clc/math/hypot.h
R libclc/generic/include/clc/math/ilogb.h
R libclc/generic/include/clc/math/ilogb.inc
R libclc/generic/include/clc/math/ldexp.h
R libclc/generic/include/clc/math/ldexp.inc
R libclc/generic/include/clc/math/lgamma.h
R libclc/generic/include/clc/math/lgamma_r.h
R libclc/generic/include/clc/math/log.h
R libclc/generic/include/clc/math/log10.h
R libclc/generic/include/clc/math/log1p.h
R libclc/generic/include/clc/math/log2.h
R libclc/generic/include/clc/math/logb.h
R libclc/generic/include/clc/math/mad.h
R libclc/generic/include/clc/math/maxmag.h
R libclc/generic/include/clc/math/minmag.h
R libclc/generic/include/clc/math/modf.h
R libclc/generic/include/clc/math/nan.h
R libclc/generic/include/clc/math/nan.inc
R libclc/generic/include/clc/math/native_cos.h
R libclc/generic/include/clc/math/native_divide.h
R libclc/generic/include/clc/math/native_exp.h
R libclc/generic/include/clc/math/native_exp10.h
R libclc/generic/include/clc/math/native_exp2.h
R libclc/generic/include/clc/math/native_log.h
R libclc/generic/include/clc/math/native_log10.h
R libclc/generic/include/clc/math/native_log2.h
R libclc/generic/include/clc/math/native_powr.h
R libclc/generic/include/clc/math/native_recip.h
R libclc/generic/include/clc/math/native_rsqrt.h
R libclc/generic/include/clc/math/native_sin.h
R libclc/generic/include/clc/math/native_sqrt.h
R libclc/generic/include/clc/math/native_tan.h
R libclc/generic/include/clc/math/nextafter.h
R libclc/generic/include/clc/math/pow.h
R libclc/generic/include/clc/math/pown.h
R libclc/generic/include/clc/math/powr.h
R libclc/generic/include/clc/math/remainder.h
R libclc/generic/include/clc/math/remquo.h
R libclc/generic/include/clc/math/rint.h
R libclc/generic/include/clc/math/rootn.h
R libclc/generic/include/clc/math/round.h
R libclc/generic/include/clc/math/rsqrt.h
R libclc/generic/include/clc/math/sin.h
R libclc/generic/include/clc/math/sincos.h
R libclc/generic/include/clc/math/sincos.inc
R libclc/generic/include/clc/math/sinh.h
R libclc/generic/include/clc/math/sinpi.h
R libclc/generic/include/clc/math/sqrt.h
R libclc/generic/include/clc/math/tan.h
R libclc/generic/include/clc/math/tanh.h
R libclc/generic/include/clc/math/tanpi.h
R libclc/generic/include/clc/math/tgamma.h
R libclc/generic/include/clc/math/trunc.h
R libclc/generic/include/clc/misc/shuffle.h
R libclc/generic/include/clc/misc/shuffle2.h
R libclc/generic/include/clc/relational/all.h
R libclc/generic/include/clc/relational/any.h
R libclc/generic/include/clc/relational/bitselect.h
R libclc/generic/include/clc/relational/bitselect.inc
R libclc/generic/include/clc/relational/isequal.h
R libclc/generic/include/clc/relational/isfinite.h
R libclc/generic/include/clc/relational/isgreater.h
R libclc/generic/include/clc/relational/isgreaterequal.h
R libclc/generic/include/clc/relational/isinf.h
R libclc/generic/include/clc/relational/isless.h
R libclc/generic/include/clc/relational/islessequal.h
R libclc/generic/include/clc/relational/islessgreater.h
R libclc/generic/include/clc/relational/isnan.h
R libclc/generic/include/clc/relational/isnormal.h
R libclc/generic/include/clc/relational/isnotequal.h
R libclc/generic/include/clc/relational/isordered.h
R libclc/generic/include/clc/relational/isunordered.h
R libclc/generic/include/clc/relational/select.h
R libclc/generic/include/clc/relational/signbit.h
R libclc/generic/include/clc/shared/clamp.h
R libclc/generic/include/clc/shared/clamp.inc
R libclc/generic/include/clc/shared/max.h
R libclc/generic/include/clc/shared/max.inc
R libclc/generic/include/clc/shared/min.h
R libclc/generic/include/clc/shared/min.inc
R libclc/generic/include/clc/shared/vload.h
R libclc/generic/include/clc/shared/vstore.h
R libclc/generic/include/clc/synchronization/barrier.h
R libclc/generic/include/clc/synchronization/cl_mem_fence_flags.h
R libclc/generic/include/clc/workitem/get_global_id.h
R libclc/generic/include/clc/workitem/get_global_offset.h
R libclc/generic/include/clc/workitem/get_global_size.h
R libclc/generic/include/clc/workitem/get_group_id.h
R libclc/generic/include/clc/workitem/get_local_id.h
R libclc/generic/include/clc/workitem/get_local_size.h
R libclc/generic/include/clc/workitem/get_num_groups.h
R libclc/generic/include/clc/workitem/get_work_dim.h
R libclc/generic/include/math/clc_tan.h
R libclc/generic/lib/SOURCES
R libclc/generic/lib/async/async_work_group_copy.cl
R libclc/generic/lib/async/async_work_group_copy.inc
R libclc/generic/lib/async/async_work_group_strided_copy.cl
R libclc/generic/lib/async/async_work_group_strided_copy.inc
R libclc/generic/lib/async/prefetch.cl
R libclc/generic/lib/async/prefetch.inc
R libclc/generic/lib/async/wait_group_events.cl
R libclc/generic/lib/atomic/atom_add.cl
R libclc/generic/lib/atomic/atom_and.cl
R libclc/generic/lib/atomic/atom_cmpxchg.cl
R libclc/generic/lib/atomic/atom_dec.cl
R libclc/generic/lib/atomic/atom_inc.cl
R libclc/generic/lib/atomic/atom_int32_binary.inc
R libclc/generic/lib/atomic/atom_max.cl
R libclc/generic/lib/atomic/atom_min.cl
R libclc/generic/lib/atomic/atom_or.cl
R libclc/generic/lib/atomic/atom_sub.cl
R libclc/generic/lib/atomic/atom_xchg.cl
R libclc/generic/lib/atomic/atom_xor.cl
R libclc/generic/lib/atomic/atomic_add.cl
R libclc/generic/lib/atomic/atomic_and.cl
R libclc/generic/lib/atomic/atomic_cmpxchg.cl
R libclc/generic/lib/atomic/atomic_dec.cl
R libclc/generic/lib/atomic/atomic_inc.cl
R libclc/generic/lib/atomic/atomic_max.cl
R libclc/generic/lib/atomic/atomic_min.cl
R libclc/generic/lib/atomic/atomic_or.cl
R libclc/generic/lib/atomic/atomic_sub.cl
R libclc/generic/lib/atomic/atomic_xchg.cl
R libclc/generic/lib/atomic/atomic_xor.cl
R libclc/generic/lib/common/degrees.cl
R libclc/generic/lib/common/mix.cl
R libclc/generic/lib/common/mix.inc
R libclc/generic/lib/common/radians.cl
R libclc/generic/lib/common/sign.cl
R libclc/generic/lib/common/smoothstep.cl
R libclc/generic/lib/common/step.cl
R libclc/generic/lib/geometric/cross.cl
R libclc/generic/lib/geometric/distance.cl
R libclc/generic/lib/geometric/distance.inc
R libclc/generic/lib/geometric/dot.cl
R libclc/generic/lib/geometric/fast_distance.cl
R libclc/generic/lib/geometric/fast_distance.inc
R libclc/generic/lib/geometric/fast_length.cl
R libclc/generic/lib/geometric/fast_normalize.cl
R libclc/generic/lib/geometric/fast_normalize.inc
R libclc/generic/lib/geometric/length.cl
R libclc/generic/lib/geometric/normalize.cl
R libclc/generic/lib/integer/abs.cl
R libclc/generic/lib/integer/abs.inc
R libclc/generic/lib/integer/abs_diff.cl
R libclc/generic/lib/integer/abs_diff.inc
R libclc/generic/lib/integer/add_sat.cl
R libclc/generic/lib/integer/clz.cl
R libclc/generic/lib/integer/ctz.cl
R libclc/generic/lib/integer/hadd.cl
R libclc/generic/lib/integer/mad24.cl
R libclc/generic/lib/integer/mad_hi.cl
R libclc/generic/lib/integer/mad_sat.cl
R libclc/generic/lib/integer/mul24.cl
R libclc/generic/lib/integer/mul_hi.cl
R libclc/generic/lib/integer/popcount.cl
R libclc/generic/lib/integer/rhadd.cl
R libclc/generic/lib/integer/rotate.cl
R libclc/generic/lib/integer/sub_sat.cl
R libclc/generic/lib/integer/upsample.cl
R libclc/generic/lib/math/acos.cl
R libclc/generic/lib/math/acosh.cl
R libclc/generic/lib/math/acospi.cl
R libclc/generic/lib/math/asin.cl
R libclc/generic/lib/math/asinh.cl
R libclc/generic/lib/math/asinpi.cl
R libclc/generic/lib/math/atan.cl
R libclc/generic/lib/math/atan2.cl
R libclc/generic/lib/math/atan2pi.cl
R libclc/generic/lib/math/atanh.cl
R libclc/generic/lib/math/atanpi.cl
R libclc/generic/lib/math/cbrt.cl
R libclc/generic/lib/math/ceil.cl
R libclc/generic/lib/math/clc_sw_unary.inc
R libclc/generic/lib/math/clc_tan.cl
R libclc/generic/lib/math/copysign.cl
R libclc/generic/lib/math/cos.cl
R libclc/generic/lib/math/cos.inc
R libclc/generic/lib/math/cosh.cl
R libclc/generic/lib/math/cospi.cl
R libclc/generic/lib/math/erf.cl
R libclc/generic/lib/math/erfc.cl
R libclc/generic/lib/math/exp.cl
R libclc/generic/lib/math/exp10.cl
R libclc/generic/lib/math/exp2.cl
R libclc/generic/lib/math/expm1.cl
R libclc/generic/lib/math/fabs.cl
R libclc/generic/lib/math/fdim.cl
R libclc/generic/lib/math/fdim.inc
R libclc/generic/lib/math/floor.cl
R libclc/generic/lib/math/fma.cl
R libclc/generic/lib/math/fmax.cl
R libclc/generic/lib/math/fmax.inc
R libclc/generic/lib/math/fmin.cl
R libclc/generic/lib/math/fmin.inc
R libclc/generic/lib/math/fmod.cl
R libclc/generic/lib/math/fract.cl
R libclc/generic/lib/math/fract.inc
R libclc/generic/lib/math/frexp.cl
R libclc/generic/lib/math/half_binary.inc
R libclc/generic/lib/math/half_cos.cl
R libclc/generic/lib/math/half_divide.cl
R libclc/generic/lib/math/half_exp.cl
R libclc/generic/lib/math/half_exp10.cl
R libclc/generic/lib/math/half_exp2.cl
R libclc/generic/lib/math/half_log.cl
R libclc/generic/lib/math/half_log10.cl
R libclc/generic/lib/math/half_log2.cl
R libclc/generic/lib/math/half_powr.cl
R libclc/generic/lib/math/half_recip.cl
R libclc/generic/lib/math/half_rsqrt.cl
R libclc/generic/lib/math/half_sin.cl
R libclc/generic/lib/math/half_sqrt.cl
R libclc/generic/lib/math/half_tan.cl
R libclc/generic/lib/math/half_unary.inc
R libclc/generic/lib/math/hypot.cl
R libclc/generic/lib/math/ilogb.cl
R libclc/generic/lib/math/ldexp.cl
R libclc/generic/lib/math/ldexp.inc
R libclc/generic/lib/math/lgamma.cl
R libclc/generic/lib/math/lgamma_r.cl
R libclc/generic/lib/math/log.cl
R libclc/generic/lib/math/log10.cl
R libclc/generic/lib/math/log1p.cl
R libclc/generic/lib/math/log2.cl
R libclc/generic/lib/math/logb.cl
R libclc/generic/lib/math/mad.cl
R libclc/generic/lib/math/maxmag.cl
R libclc/generic/lib/math/maxmag.inc
R libclc/generic/lib/math/minmag.cl
R libclc/generic/lib/math/minmag.inc
R libclc/generic/lib/math/modf.cl
R libclc/generic/lib/math/nan.cl
R libclc/generic/lib/math/nan.inc
R libclc/generic/lib/math/native_cos.cl
R libclc/generic/lib/math/native_divide.cl
R libclc/generic/lib/math/native_exp.cl
R libclc/generic/lib/math/native_exp10.cl
R libclc/generic/lib/math/native_exp2.cl
R libclc/generic/lib/math/native_log.cl
R libclc/generic/lib/math/native_log10.cl
R libclc/generic/lib/math/native_log2.cl
R libclc/generic/lib/math/native_powr.cl
R libclc/generic/lib/math/native_recip.cl
R libclc/generic/lib/math/native_rsqrt.cl
R libclc/generic/lib/math/native_sin.cl
R libclc/generic/lib/math/native_sqrt.cl
R libclc/generic/lib/math/native_tan.cl
R libclc/generic/lib/math/nextafter.cl
R libclc/generic/lib/math/pow.cl
R libclc/generic/lib/math/pown.cl
R libclc/generic/lib/math/powr.cl
R libclc/generic/lib/math/remainder.cl
R libclc/generic/lib/math/remquo.cl
R libclc/generic/lib/math/remquo.inc
R libclc/generic/lib/math/rint.cl
R libclc/generic/lib/math/rootn.cl
R libclc/generic/lib/math/round.cl
R libclc/generic/lib/math/rsqrt.cl
R libclc/generic/lib/math/sin.cl
R libclc/generic/lib/math/sin.inc
R libclc/generic/lib/math/sincos.cl
R libclc/generic/lib/math/sincos.inc
R libclc/generic/lib/math/sincos_helpers.cl
R libclc/generic/lib/math/sincos_helpers.h
R libclc/generic/lib/math/sinh.cl
R libclc/generic/lib/math/sinpi.cl
R libclc/generic/lib/math/sqrt.cl
R libclc/generic/lib/math/tables.cl
R libclc/generic/lib/math/tan.cl
R libclc/generic/lib/math/tanh.cl
R libclc/generic/lib/math/tanpi.cl
R libclc/generic/lib/math/tgamma.cl
R libclc/generic/lib/math/trunc.cl
R libclc/generic/lib/misc/shuffle.cl
R libclc/generic/lib/misc/shuffle2.cl
R libclc/generic/lib/relational/all.cl
R libclc/generic/lib/relational/any.cl
R libclc/generic/lib/relational/binary_def.inc
R libclc/generic/lib/relational/bitselect.cl
R libclc/generic/lib/relational/bitselect.inc
R libclc/generic/lib/relational/isequal.cl
R libclc/generic/lib/relational/isfinite.cl
R libclc/generic/lib/relational/isgreater.cl
R libclc/generic/lib/relational/isgreaterequal.cl
R libclc/generic/lib/relational/isinf.cl
R libclc/generic/lib/relational/isless.cl
R libclc/generic/lib/relational/islessequal.cl
R libclc/generic/lib/relational/islessgreater.cl
R libclc/generic/lib/relational/isnan.cl
R libclc/generic/lib/relational/isnormal.cl
R libclc/generic/lib/relational/isnotequal.cl
R libclc/generic/lib/relational/isordered.cl
R libclc/generic/lib/relational/isunordered.cl
R libclc/generic/lib/relational/select.cl
R libclc/generic/lib/relational/signbit.cl
R libclc/generic/lib/relational/unary_def.inc
R libclc/generic/lib/shared/clamp.cl
R libclc/generic/lib/shared/clamp.inc
R libclc/generic/lib/shared/max.cl
R libclc/generic/lib/shared/max.inc
R libclc/generic/lib/shared/min.cl
R libclc/generic/lib/shared/min.inc
R libclc/generic/lib/shared/vload.cl
R libclc/generic/lib/shared/vload_half.inc
R libclc/generic/lib/shared/vstore.cl
R libclc/generic/lib/shared/vstore_half.inc
R libclc/generic/lib/subnormal_config.cl
R libclc/generic/lib/subnormal_disable.ll
R libclc/generic/lib/subnormal_helper_func.ll
R libclc/generic/lib/subnormal_use_default.ll
R libclc/generic/lib/workitem/get_global_id.cl
R libclc/generic/lib/workitem/get_global_size.cl
A libclc/opencl/include/clc/opencl/as_type.h
A libclc/opencl/include/clc/opencl/async/async_work_group_copy.h
A libclc/opencl/include/clc/opencl/async/async_work_group_copy.inc
A libclc/opencl/include/clc/opencl/async/async_work_group_strided_copy.h
A libclc/opencl/include/clc/opencl/async/async_work_group_strided_copy.inc
A libclc/opencl/include/clc/opencl/async/prefetch.h
A libclc/opencl/include/clc/opencl/async/prefetch.inc
A libclc/opencl/include/clc/opencl/async/wait_group_events.h
A libclc/opencl/include/clc/opencl/atomic/atom_add.h
A libclc/opencl/include/clc/opencl/atomic/atom_and.h
A libclc/opencl/include/clc/opencl/atomic/atom_cmpxchg.h
A libclc/opencl/include/clc/opencl/atomic/atom_dec.h
A libclc/opencl/include/clc/opencl/atomic/atom_decl_int32.inc
A libclc/opencl/include/clc/opencl/atomic/atom_decl_int64.inc
A libclc/opencl/include/clc/opencl/atomic/atom_inc.h
A libclc/opencl/include/clc/opencl/atomic/atom_max.h
A libclc/opencl/include/clc/opencl/atomic/atom_min.h
A libclc/opencl/include/clc/opencl/atomic/atom_or.h
A libclc/opencl/include/clc/opencl/atomic/atom_sub.h
A libclc/opencl/include/clc/opencl/atomic/atom_xchg.h
A libclc/opencl/include/clc/opencl/atomic/atom_xor.h
A libclc/opencl/include/clc/opencl/atomic/atomic_add.h
A libclc/opencl/include/clc/opencl/atomic/atomic_and.h
A libclc/opencl/include/clc/opencl/atomic/atomic_cmpxchg.h
A libclc/opencl/include/clc/opencl/atomic/atomic_dec.h
A libclc/opencl/include/clc/opencl/atomic/atomic_decl.inc
A libclc/opencl/include/clc/opencl/atomic/atomic_inc.h
A libclc/opencl/include/clc/opencl/atomic/atomic_max.h
A libclc/opencl/include/clc/opencl/atomic/atomic_min.h
A libclc/opencl/include/clc/opencl/atomic/atomic_or.h
A libclc/opencl/include/clc/opencl/atomic/atomic_sub.h
A libclc/opencl/include/clc/opencl/atomic/atomic_xchg.h
A libclc/opencl/include/clc/opencl/atomic/atomic_xor.h
A libclc/opencl/include/clc/opencl/clc.h
A libclc/opencl/include/clc/opencl/common/degrees.h
A libclc/opencl/include/clc/opencl/common/mix.h
A libclc/opencl/include/clc/opencl/common/mix.inc
A libclc/opencl/include/clc/opencl/common/radians.h
A libclc/opencl/include/clc/opencl/common/sign.h
A libclc/opencl/include/clc/opencl/common/smoothstep.h
A libclc/opencl/include/clc/opencl/common/smoothstep.inc
A libclc/opencl/include/clc/opencl/common/step.h
A libclc/opencl/include/clc/opencl/common/step.inc
A libclc/opencl/include/clc/opencl/convert.h
A libclc/opencl/include/clc/opencl/explicit_fence/explicit_memory_fence.h
A libclc/opencl/include/clc/opencl/geometric/cross.h
A libclc/opencl/include/clc/opencl/geometric/distance.h
A libclc/opencl/include/clc/opencl/geometric/dot.h
A libclc/opencl/include/clc/opencl/geometric/fast_distance.h
A libclc/opencl/include/clc/opencl/geometric/fast_length.h
A libclc/opencl/include/clc/opencl/geometric/fast_normalize.h
A libclc/opencl/include/clc/opencl/geometric/length.h
A libclc/opencl/include/clc/opencl/geometric/normalize.h
A libclc/opencl/include/clc/opencl/image/image.h
A libclc/opencl/include/clc/opencl/image/image_defines.h
A libclc/opencl/include/clc/opencl/integer/abs.h
A libclc/opencl/include/clc/opencl/integer/abs.inc
A libclc/opencl/include/clc/opencl/integer/abs_diff.h
A libclc/opencl/include/clc/opencl/integer/abs_diff.inc
A libclc/opencl/include/clc/opencl/integer/add_sat.h
A libclc/opencl/include/clc/opencl/integer/clz.h
A libclc/opencl/include/clc/opencl/integer/ctz.h
A libclc/opencl/include/clc/opencl/integer/hadd.h
A libclc/opencl/include/clc/opencl/integer/mad24.h
A libclc/opencl/include/clc/opencl/integer/mad_hi.h
A libclc/opencl/include/clc/opencl/integer/mad_sat.h
A libclc/opencl/include/clc/opencl/integer/mul24.h
A libclc/opencl/include/clc/opencl/integer/mul_hi.h
A libclc/opencl/include/clc/opencl/integer/popcount.h
A libclc/opencl/include/clc/opencl/integer/rhadd.h
A libclc/opencl/include/clc/opencl/integer/rotate.h
A libclc/opencl/include/clc/opencl/integer/sub_sat.h
A libclc/opencl/include/clc/opencl/integer/upsample.h
A libclc/opencl/include/clc/opencl/math/acos.h
A libclc/opencl/include/clc/opencl/math/acosh.h
A libclc/opencl/include/clc/opencl/math/acospi.h
A libclc/opencl/include/clc/opencl/math/asin.h
A libclc/opencl/include/clc/opencl/math/asinh.h
A libclc/opencl/include/clc/opencl/math/asinpi.h
A libclc/opencl/include/clc/opencl/math/atan.h
A libclc/opencl/include/clc/opencl/math/atan2.h
A libclc/opencl/include/clc/opencl/math/atan2pi.h
A libclc/opencl/include/clc/opencl/math/atanh.h
A libclc/opencl/include/clc/opencl/math/atanpi.h
A libclc/opencl/include/clc/opencl/math/cbrt.h
A libclc/opencl/include/clc/opencl/math/ceil.h
A libclc/opencl/include/clc/opencl/math/copysign.h
A libclc/opencl/include/clc/opencl/math/cos.h
A libclc/opencl/include/clc/opencl/math/cosh.h
A libclc/opencl/include/clc/opencl/math/cospi.h
A libclc/opencl/include/clc/opencl/math/erf.h
A libclc/opencl/include/clc/opencl/math/erfc.h
A libclc/opencl/include/clc/opencl/math/exp.h
A libclc/opencl/include/clc/opencl/math/exp10.h
A libclc/opencl/include/clc/opencl/math/exp2.h
A libclc/opencl/include/clc/opencl/math/expm1.h
A libclc/opencl/include/clc/opencl/math/fabs.h
A libclc/opencl/include/clc/opencl/math/fdim.h
A libclc/opencl/include/clc/opencl/math/floor.h
A libclc/opencl/include/clc/opencl/math/fma.h
A libclc/opencl/include/clc/opencl/math/fmax.h
A libclc/opencl/include/clc/opencl/math/fmin.h
A libclc/opencl/include/clc/opencl/math/fmod.h
A libclc/opencl/include/clc/opencl/math/fract.h
A libclc/opencl/include/clc/opencl/math/frexp.h
A libclc/opencl/include/clc/opencl/math/half_cos.h
A libclc/opencl/include/clc/opencl/math/half_divide.h
A libclc/opencl/include/clc/opencl/math/half_exp.h
A libclc/opencl/include/clc/opencl/math/half_exp10.h
A libclc/opencl/include/clc/opencl/math/half_exp2.h
A libclc/opencl/include/clc/opencl/math/half_log.h
A libclc/opencl/include/clc/opencl/math/half_log10.h
A libclc/opencl/include/clc/opencl/math/half_log2.h
A libclc/opencl/include/clc/opencl/math/half_powr.h
A libclc/opencl/include/clc/opencl/math/half_recip.h
A libclc/opencl/include/clc/opencl/math/half_rsqrt.h
A libclc/opencl/include/clc/opencl/math/half_sin.h
A libclc/opencl/include/clc/opencl/math/half_sqrt.h
A libclc/opencl/include/clc/opencl/math/half_tan.h
A libclc/opencl/include/clc/opencl/math/hypot.h
A libclc/opencl/include/clc/opencl/math/ilogb.h
A libclc/opencl/include/clc/opencl/math/ldexp.h
A libclc/opencl/include/clc/opencl/math/ldexp.inc
A libclc/opencl/include/clc/opencl/math/lgamma.h
A libclc/opencl/include/clc/opencl/math/lgamma_r.h
A libclc/opencl/include/clc/opencl/math/log.h
A libclc/opencl/include/clc/opencl/math/log10.h
A libclc/opencl/include/clc/opencl/math/log1p.h
A libclc/opencl/include/clc/opencl/math/log2.h
A libclc/opencl/include/clc/opencl/math/logb.h
A libclc/opencl/include/clc/opencl/math/mad.h
A libclc/opencl/include/clc/opencl/math/maxmag.h
A libclc/opencl/include/clc/opencl/math/minmag.h
A libclc/opencl/include/clc/opencl/math/modf.h
A libclc/opencl/include/clc/opencl/math/nan.h
A libclc/opencl/include/clc/opencl/math/nan.inc
A libclc/opencl/include/clc/opencl/math/native_cos.h
A libclc/opencl/include/clc/opencl/math/native_divide.h
A libclc/opencl/include/clc/opencl/math/native_exp.h
A libclc/opencl/include/clc/opencl/math/native_exp10.h
A libclc/opencl/include/clc/opencl/math/native_exp2.h
A libclc/opencl/include/clc/opencl/math/native_log.h
A libclc/opencl/include/clc/opencl/math/native_log10.h
A libclc/opencl/include/clc/opencl/math/native_log2.h
A libclc/opencl/include/clc/opencl/math/native_powr.h
A libclc/opencl/include/clc/opencl/math/native_recip.h
A libclc/opencl/include/clc/opencl/math/native_rsqrt.h
A libclc/opencl/include/clc/opencl/math/native_sin.h
A libclc/opencl/include/clc/opencl/math/native_sqrt.h
A libclc/opencl/include/clc/opencl/math/native_tan.h
A libclc/opencl/include/clc/opencl/math/nextafter.h
A libclc/opencl/include/clc/opencl/math/pow.h
A libclc/opencl/include/clc/opencl/math/pown.h
A libclc/opencl/include/clc/opencl/math/powr.h
A libclc/opencl/include/clc/opencl/math/remainder.h
A libclc/opencl/include/clc/opencl/math/remquo.h
A libclc/opencl/include/clc/opencl/math/rint.h
A libclc/opencl/include/clc/opencl/math/rootn.h
A libclc/opencl/include/clc/opencl/math/round.h
A libclc/opencl/include/clc/opencl/math/rsqrt.h
A libclc/opencl/include/clc/opencl/math/sin.h
A libclc/opencl/include/clc/opencl/math/sincos.h
A libclc/opencl/include/clc/opencl/math/sinh.h
A libclc/opencl/include/clc/opencl/math/sinpi.h
A libclc/opencl/include/clc/opencl/math/sqrt.h
A libclc/opencl/include/clc/opencl/math/tan.h
A libclc/opencl/include/clc/opencl/math/tanh.h
A libclc/opencl/include/clc/opencl/math/tanpi.h
A libclc/opencl/include/clc/opencl/math/tgamma.h
A libclc/opencl/include/clc/opencl/math/trunc.h
A libclc/opencl/include/clc/opencl/misc/shuffle.h
A libclc/opencl/include/clc/opencl/misc/shuffle2.h
A libclc/opencl/include/clc/opencl/relational/all.h
A libclc/opencl/include/clc/opencl/relational/any.h
A libclc/opencl/include/clc/opencl/relational/bitselect.h
A libclc/opencl/include/clc/opencl/relational/bitselect.inc
A libclc/opencl/include/clc/opencl/relational/isequal.h
A libclc/opencl/include/clc/opencl/relational/isfinite.h
A libclc/opencl/include/clc/opencl/relational/isgreater.h
A libclc/opencl/include/clc/opencl/relational/isgreaterequal.h
A libclc/opencl/include/clc/opencl/relational/isinf.h
A libclc/opencl/include/clc/opencl/relational/isless.h
A libclc/opencl/include/clc/opencl/relational/islessequal.h
A libclc/opencl/include/clc/opencl/relational/islessgreater.h
A libclc/opencl/include/clc/opencl/relational/isnan.h
A libclc/opencl/include/clc/opencl/relational/isnormal.h
A libclc/opencl/include/clc/opencl/relational/isnotequal.h
A libclc/opencl/include/clc/opencl/relational/isordered.h
A libclc/opencl/include/clc/opencl/relational/isunordered.h
A libclc/opencl/include/clc/opencl/relational/select.h
A libclc/opencl/include/clc/opencl/relational/signbit.h
A libclc/opencl/include/clc/opencl/shared/clamp.h
A libclc/opencl/include/clc/opencl/shared/clamp.inc
A libclc/opencl/include/clc/opencl/shared/max.h
A libclc/opencl/include/clc/opencl/shared/max.inc
A libclc/opencl/include/clc/opencl/shared/min.h
A libclc/opencl/include/clc/opencl/shared/min.inc
A libclc/opencl/include/clc/opencl/shared/vload.h
A libclc/opencl/include/clc/opencl/shared/vstore.h
A libclc/opencl/include/clc/opencl/synchronization/barrier.h
A libclc/opencl/include/clc/opencl/synchronization/cl_mem_fence_flags.h
A libclc/opencl/include/clc/opencl/workitem/get_global_id.h
A libclc/opencl/include/clc/opencl/workitem/get_global_offset.h
A libclc/opencl/include/clc/opencl/workitem/get_global_size.h
A libclc/opencl/include/clc/opencl/workitem/get_group_id.h
A libclc/opencl/include/clc/opencl/workitem/get_local_id.h
A libclc/opencl/include/clc/opencl/workitem/get_local_size.h
A libclc/opencl/include/clc/opencl/workitem/get_num_groups.h
A libclc/opencl/include/clc/opencl/workitem/get_work_dim.h
A libclc/opencl/lib/amdgcn-amdhsa/SOURCES
A libclc/opencl/lib/amdgcn-amdhsa/workitem/get_global_size.cl
A libclc/opencl/lib/amdgcn-amdhsa/workitem/get_local_size.cl
A libclc/opencl/lib/amdgcn-amdhsa/workitem/get_num_groups.cl
A libclc/opencl/lib/amdgcn/SOURCES
A libclc/opencl/lib/amdgcn/cl_khr_int64_extended_atomics/minmax_helpers.ll
A libclc/opencl/lib/amdgcn/mem_fence/fence.cl
A libclc/opencl/lib/amdgcn/synchronization/barrier.cl
A libclc/opencl/lib/amdgcn/workitem/get_global_offset.cl
A libclc/opencl/lib/amdgcn/workitem/get_global_size.cl
A libclc/opencl/lib/amdgcn/workitem/get_group_id.cl
A libclc/opencl/lib/amdgcn/workitem/get_local_id.cl
A libclc/opencl/lib/amdgcn/workitem/get_local_size.cl
A libclc/opencl/lib/amdgcn/workitem/get_num_groups.cl
A libclc/opencl/lib/amdgcn/workitem/get_work_dim.cl
A libclc/opencl/lib/clspv/SOURCES
A libclc/opencl/lib/clspv/math/fma.cl
A libclc/opencl/lib/clspv/shared/vstore_half.cl
A libclc/opencl/lib/clspv/shared/vstore_half.inc
A libclc/opencl/lib/clspv/subnormal_config.cl
A libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/generic/async/async_work_group_copy.cl
A libclc/opencl/lib/generic/async/async_work_group_copy.inc
A libclc/opencl/lib/generic/async/async_work_group_strided_copy.cl
A libclc/opencl/lib/generic/async/async_work_group_strided_copy.inc
A libclc/opencl/lib/generic/async/prefetch.cl
A libclc/opencl/lib/generic/async/prefetch.inc
A libclc/opencl/lib/generic/async/wait_group_events.cl
A libclc/opencl/lib/generic/atomic/atom_add.cl
A libclc/opencl/lib/generic/atomic/atom_and.cl
A libclc/opencl/lib/generic/atomic/atom_cmpxchg.cl
A libclc/opencl/lib/generic/atomic/atom_dec.cl
A libclc/opencl/lib/generic/atomic/atom_inc.cl
A libclc/opencl/lib/generic/atomic/atom_int32_binary.inc
A libclc/opencl/lib/generic/atomic/atom_max.cl
A libclc/opencl/lib/generic/atomic/atom_min.cl
A libclc/opencl/lib/generic/atomic/atom_or.cl
A libclc/opencl/lib/generic/atomic/atom_sub.cl
A libclc/opencl/lib/generic/atomic/atom_xchg.cl
A libclc/opencl/lib/generic/atomic/atom_xor.cl
A libclc/opencl/lib/generic/atomic/atomic_add.cl
A libclc/opencl/lib/generic/atomic/atomic_and.cl
A libclc/opencl/lib/generic/atomic/atomic_cmpxchg.cl
A libclc/opencl/lib/generic/atomic/atomic_dec.cl
A libclc/opencl/lib/generic/atomic/atomic_inc.cl
A libclc/opencl/lib/generic/atomic/atomic_max.cl
A libclc/opencl/lib/generic/atomic/atomic_min.cl
A libclc/opencl/lib/generic/atomic/atomic_or.cl
A libclc/opencl/lib/generic/atomic/atomic_sub.cl
A libclc/opencl/lib/generic/atomic/atomic_xchg.cl
A libclc/opencl/lib/generic/atomic/atomic_xor.cl
A libclc/opencl/lib/generic/common/degrees.cl
A libclc/opencl/lib/generic/common/mix.cl
A libclc/opencl/lib/generic/common/mix.inc
A libclc/opencl/lib/generic/common/radians.cl
A libclc/opencl/lib/generic/common/sign.cl
A libclc/opencl/lib/generic/common/smoothstep.cl
A libclc/opencl/lib/generic/common/step.cl
A libclc/opencl/lib/generic/common/step.inc
A libclc/opencl/lib/generic/geometric/cross.cl
A libclc/opencl/lib/generic/geometric/distance.cl
A libclc/opencl/lib/generic/geometric/dot.cl
A libclc/opencl/lib/generic/geometric/fast_distance.cl
A libclc/opencl/lib/generic/geometric/fast_length.cl
A libclc/opencl/lib/generic/geometric/fast_normalize.cl
A libclc/opencl/lib/generic/geometric/fast_normalize.inc
A libclc/opencl/lib/generic/geometric/length.cl
A libclc/opencl/lib/generic/geometric/normalize.cl
A libclc/opencl/lib/generic/integer/abs.cl
A libclc/opencl/lib/generic/integer/abs.inc
A libclc/opencl/lib/generic/integer/abs_diff.cl
A libclc/opencl/lib/generic/integer/abs_diff.inc
A libclc/opencl/lib/generic/integer/add_sat.cl
A libclc/opencl/lib/generic/integer/clz.cl
A libclc/opencl/lib/generic/integer/ctz.cl
A libclc/opencl/lib/generic/integer/hadd.cl
A libclc/opencl/lib/generic/integer/mad24.cl
A libclc/opencl/lib/generic/integer/mad_hi.cl
A libclc/opencl/lib/generic/integer/mad_sat.cl
A libclc/opencl/lib/generic/integer/mul24.cl
A libclc/opencl/lib/generic/integer/mul_hi.cl
A libclc/opencl/lib/generic/integer/popcount.cl
A libclc/opencl/lib/generic/integer/rhadd.cl
A libclc/opencl/lib/generic/integer/rotate.cl
A libclc/opencl/lib/generic/integer/sub_sat.cl
A libclc/opencl/lib/generic/integer/upsample.cl
A libclc/opencl/lib/generic/math/acos.cl
A libclc/opencl/lib/generic/math/acosh.cl
A libclc/opencl/lib/generic/math/acospi.cl
A libclc/opencl/lib/generic/math/asin.cl
A libclc/opencl/lib/generic/math/asinh.cl
A libclc/opencl/lib/generic/math/asinpi.cl
A libclc/opencl/lib/generic/math/atan.cl
A libclc/opencl/lib/generic/math/atan2.cl
A libclc/opencl/lib/generic/math/atan2pi.cl
A libclc/opencl/lib/generic/math/atanh.cl
A libclc/opencl/lib/generic/math/atanpi.cl
A libclc/opencl/lib/generic/math/cbrt.cl
A libclc/opencl/lib/generic/math/ceil.cl
A libclc/opencl/lib/generic/math/copysign.cl
A libclc/opencl/lib/generic/math/cos.cl
A libclc/opencl/lib/generic/math/cosh.cl
A libclc/opencl/lib/generic/math/cospi.cl
A libclc/opencl/lib/generic/math/erf.cl
A libclc/opencl/lib/generic/math/erfc.cl
A libclc/opencl/lib/generic/math/exp.cl
A libclc/opencl/lib/generic/math/exp10.cl
A libclc/opencl/lib/generic/math/exp2.cl
A libclc/opencl/lib/generic/math/expm1.cl
A libclc/opencl/lib/generic/math/fabs.cl
A libclc/opencl/lib/generic/math/fdim.cl
A libclc/opencl/lib/generic/math/floor.cl
A libclc/opencl/lib/generic/math/fma.cl
A libclc/opencl/lib/generic/math/fmax.cl
A libclc/opencl/lib/generic/math/fmax.inc
A libclc/opencl/lib/generic/math/fmin.cl
A libclc/opencl/lib/generic/math/fmin.inc
A libclc/opencl/lib/generic/math/fmod.cl
A libclc/opencl/lib/generic/math/fract.cl
A libclc/opencl/lib/generic/math/frexp.cl
A libclc/opencl/lib/generic/math/half_cos.cl
A libclc/opencl/lib/generic/math/half_divide.cl
A libclc/opencl/lib/generic/math/half_exp.cl
A libclc/opencl/lib/generic/math/half_exp10.cl
A libclc/opencl/lib/generic/math/half_exp2.cl
A libclc/opencl/lib/generic/math/half_log.cl
A libclc/opencl/lib/generic/math/half_log10.cl
A libclc/opencl/lib/generic/math/half_log2.cl
A libclc/opencl/lib/generic/math/half_powr.cl
A libclc/opencl/lib/generic/math/half_recip.cl
A libclc/opencl/lib/generic/math/half_rsqrt.cl
A libclc/opencl/lib/generic/math/half_sin.cl
A libclc/opencl/lib/generic/math/half_sqrt.cl
A libclc/opencl/lib/generic/math/half_tan.cl
A libclc/opencl/lib/generic/math/hypot.cl
A libclc/opencl/lib/generic/math/ilogb.cl
A libclc/opencl/lib/generic/math/ldexp.cl
A libclc/opencl/lib/generic/math/ldexp.inc
A libclc/opencl/lib/generic/math/lgamma.cl
A libclc/opencl/lib/generic/math/lgamma_r.cl
A libclc/opencl/lib/generic/math/log.cl
A libclc/opencl/lib/generic/math/log10.cl
A libclc/opencl/lib/generic/math/log1p.cl
A libclc/opencl/lib/generic/math/log2.cl
A libclc/opencl/lib/generic/math/logb.cl
A libclc/opencl/lib/generic/math/mad.cl
A libclc/opencl/lib/generic/math/maxmag.cl
A libclc/opencl/lib/generic/math/minmag.cl
A libclc/opencl/lib/generic/math/modf.cl
A libclc/opencl/lib/generic/math/nan.cl
A libclc/opencl/lib/generic/math/nan.inc
A libclc/opencl/lib/generic/math/native_cos.cl
A libclc/opencl/lib/generic/math/native_divide.cl
A libclc/opencl/lib/generic/math/native_exp.cl
A libclc/opencl/lib/generic/math/native_exp10.cl
A libclc/opencl/lib/generic/math/native_exp2.cl
A libclc/opencl/lib/generic/math/native_log.cl
A libclc/opencl/lib/generic/math/native_log10.cl
A libclc/opencl/lib/generic/math/native_log2.cl
A libclc/opencl/lib/generic/math/native_powr.cl
A libclc/opencl/lib/generic/math/native_recip.cl
A libclc/opencl/lib/generic/math/native_rsqrt.cl
A libclc/opencl/lib/generic/math/native_sin.cl
A libclc/opencl/lib/generic/math/native_sqrt.cl
A libclc/opencl/lib/generic/math/native_tan.cl
A libclc/opencl/lib/generic/math/nextafter.cl
A libclc/opencl/lib/generic/math/pow.cl
A libclc/opencl/lib/generic/math/pown.cl
A libclc/opencl/lib/generic/math/powr.cl
A libclc/opencl/lib/generic/math/remainder.cl
A libclc/opencl/lib/generic/math/remquo.cl
A libclc/opencl/lib/generic/math/remquo.inc
A libclc/opencl/lib/generic/math/rint.cl
A libclc/opencl/lib/generic/math/rootn.cl
A libclc/opencl/lib/generic/math/round.cl
A libclc/opencl/lib/generic/math/rsqrt.cl
A libclc/opencl/lib/generic/math/sin.cl
A libclc/opencl/lib/generic/math/sincos.cl
A libclc/opencl/lib/generic/math/sinh.cl
A libclc/opencl/lib/generic/math/sinpi.cl
A libclc/opencl/lib/generic/math/sqrt.cl
A libclc/opencl/lib/generic/math/tan.cl
A libclc/opencl/lib/generic/math/tanh.cl
A libclc/opencl/lib/generic/math/tanpi.cl
A libclc/opencl/lib/generic/math/tgamma.cl
A libclc/opencl/lib/generic/math/trunc.cl
A libclc/opencl/lib/generic/misc/shuffle.cl
A libclc/opencl/lib/generic/misc/shuffle2.cl
A libclc/opencl/lib/generic/relational/all.cl
A libclc/opencl/lib/generic/relational/any.cl
A libclc/opencl/lib/generic/relational/binary_def.inc
A libclc/opencl/lib/generic/relational/bitselect.cl
A libclc/opencl/lib/generic/relational/bitselect.inc
A libclc/opencl/lib/generic/relational/isequal.cl
A libclc/opencl/lib/generic/relational/isfinite.cl
A libclc/opencl/lib/generic/relational/isgreater.cl
A libclc/opencl/lib/generic/relational/isgreaterequal.cl
A libclc/opencl/lib/generic/relational/isinf.cl
A libclc/opencl/lib/generic/relational/isless.cl
A libclc/opencl/lib/generic/relational/islessequal.cl
A libclc/opencl/lib/generic/relational/islessgreater.cl
A libclc/opencl/lib/generic/relational/isnan.cl
A libclc/opencl/lib/generic/relational/isnormal.cl
A libclc/opencl/lib/generic/relational/isnotequal.cl
A libclc/opencl/lib/generic/relational/isordered.cl
A libclc/opencl/lib/generic/relational/isunordered.cl
A libclc/opencl/lib/generic/relational/select.cl
A libclc/opencl/lib/generic/relational/signbit.cl
A libclc/opencl/lib/generic/relational/unary_def.inc
A libclc/opencl/lib/generic/shared/clamp.cl
A libclc/opencl/lib/generic/shared/clamp.inc
A libclc/opencl/lib/generic/shared/max.cl
A libclc/opencl/lib/generic/shared/max.inc
A libclc/opencl/lib/generic/shared/min.cl
A libclc/opencl/lib/generic/shared/min.inc
A libclc/opencl/lib/generic/shared/vload.cl
A libclc/opencl/lib/generic/shared/vload_half.inc
A libclc/opencl/lib/generic/shared/vstore.cl
A libclc/opencl/lib/generic/shared/vstore_half.inc
A libclc/opencl/lib/generic/subnormal_config.cl
A libclc/opencl/lib/generic/subnormal_disable.ll
A libclc/opencl/lib/generic/subnormal_helper_func.ll
A libclc/opencl/lib/generic/subnormal_use_default.ll
A libclc/opencl/lib/generic/workitem/get_global_id.cl
A libclc/opencl/lib/generic/workitem/get_global_size.cl
A libclc/opencl/lib/ptx-nvidiacl/SOURCES
A libclc/opencl/lib/ptx-nvidiacl/mem_fence/fence.cl
A libclc/opencl/lib/ptx-nvidiacl/synchronization/barrier.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_global_id.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_group_id.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_id.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_size.cl
A libclc/opencl/lib/ptx-nvidiacl/workitem/get_num_groups.cl
A libclc/opencl/lib/r600/SOURCES
R libclc/ptx-nvidiacl/lib/SOURCES
Log Message:
-----------
Rebase update
Created using spr 1.3.5
Compare: https://github.com/llvm/llvm-project/compare/d01cb06504b6...095fcf0f72c9
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