[clang] [OpenACC] Implement 'var' parsing correctly, support array sections (PR #77617)

2024-01-10 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > @alexey-bataev : In particular I'd like to make you aware of what I've done > here, since this is similar to the work you've done before/will affect it. It > is currently my thought to make the OMPArraySectionExpr type a generic > 'ArraySectionExpr' type in the not-so-di

[clang] [OpenACC] Implement 'var' parsing correctly, support array sections (PR #77617)

2024-01-10 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev approved this pull request. https://github.com/llvm/llvm-project/pull/77617 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [OpenMP][CodeGen] Improved codegen for combined loop directives (PR #72417)

2024-01-10 Thread Alexey Bataev via cfe-commits
@@ -6106,6 +6106,8 @@ class OMPTeamsGenericLoopDirective final : public OMPLoopDirective { class OMPTargetTeamsGenericLoopDirective final : public OMPLoopDirective { friend class ASTStmtReader; friend class OMPExecutableDirective; + /// true if loop directive's associated

[clang] b455f7f - [OPENMP]Fix PR49787: Codegen for calling __tgt_target_teams_nowait_mapper has too few arguments.

2021-07-22 Thread Alexey Bataev via cfe-commits
Author: Alexey Bataev Date: 2021-07-22T07:53:37-07:00 New Revision: b455f7f22564a096c043b02fa159ab16669c121c URL: https://github.com/llvm/llvm-project/commit/b455f7f22564a096c043b02fa159ab16669c121c DIFF: https://github.com/llvm/llvm-project/commit/b455f7f22564a096c043b02fa159ab16669c121c.diff

[clang] f828f0a - Revert "[OPENMP]Fix PR49787: Codegen for calling __tgt_target_teams_nowait_mapper has too few arguments."

2021-07-22 Thread Alexey Bataev via cfe-commits
Author: Alexey Bataev Date: 2021-07-22T08:06:29-07:00 New Revision: f828f0a90fb14d10dbb5ac2d55c62d9dafdf8721 URL: https://github.com/llvm/llvm-project/commit/f828f0a90fb14d10dbb5ac2d55c62d9dafdf8721 DIFF: https://github.com/llvm/llvm-project/commit/f828f0a90fb14d10dbb5ac2d55c62d9dafdf8721.diff

[clang] b88a68c - [OPENMP]Fix PR49787: Codegen for calling __tgt_target_teams_nowait_mapper has too few arguments.

2021-07-22 Thread Alexey Bataev via cfe-commits
Author: Alexey Bataev Date: 2021-07-22T08:44:37-07:00 New Revision: b88a68c45e1bd065d75d5173167e7a978ea0f0f2 URL: https://github.com/llvm/llvm-project/commit/b88a68c45e1bd065d75d5173167e7a978ea0f0f2 DIFF: https://github.com/llvm/llvm-project/commit/b88a68c45e1bd065d75d5173167e7a978ea0f0f2.diff

[clang] 1462e63 - [OPENMP]PR53344: Emit code for final update of the inscan reduction vars in worksharing loops.

2022-04-28 Thread Alexey Bataev via cfe-commits
Author: Alexey Bataev Date: 2022-04-28T10:41:28-07:00 New Revision: 1462e63f67a965defec035c3bc17a5ddeb366964 URL: https://github.com/llvm/llvm-project/commit/1462e63f67a965defec035c3bc17a5ddeb366964 DIFF: https://github.com/llvm/llvm-project/commit/1462e63f67a965defec035c3bc17a5ddeb366964.diff

[clang] [clang][OpenMP] Fix directive in ActOnOpenMPTargetParallelForSimdDire… (PR #85217)

2024-03-14 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev approved this pull request. LG. In the current implementation there is just no difference, they have same number of capture levels https://github.com/llvm/llvm-project/pull/85217 ___ cfe-commits mailing list cfe-commit

[clang] [OpenMP] Remove complex reduction variable support (PR #82497)

2024-03-18 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: You can try to run preprocessor and then manually reduce the expanded code after preprocessor https://github.com/llvm/llvm-project/pull/82497 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/m

[clang] [llvm] [mlir] [OpenMP] Migrate GPU Reductions CodeGen from Clang to OMPIRBuilder (PR #80343)

2024-03-19 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev commented: The test looks good https://github.com/llvm/llvm-project/pull/80343 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][OpenMP] Add const-qualified `getIteratorModifier` to OMPMapClause (PR #86666)

2024-03-26 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: Do we have a user for this function? https://github.com/llvm/llvm-project/pull/8 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][OpenMP] Add const-qualified `getIteratorModifier` to OMPMapClause (PR #86666)

2024-03-26 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > I don't think so, because nothing is failing without it. This is just for > completeness. > > Edit: My code will use it, but at the moment there aren't any users that I > know of. Are you going to submit your code? https://github.com/llvm/llvm-project/pull/8 __

[clang] [clang][OpenMP] Add const-qualified `getIteratorModifier` to OMPMapClause (PR #86666)

2024-03-26 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > > Are you going to submit your code? > > Yes, but it's still incomplete. I can wait with this PR if you prefer. Yes, I think better to introduce it with the actual user. https://github.com/llvm/llvm-project/pull/8 ___ cfe-c

[clang] [llvm] [mlir] [OpenMP] Migrate GPU Reductions CodeGen from Clang to OMPIRBuilder (PR #80343)

2024-03-27 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > I haven't removed any code logic or made alterations that would affect these > AFAIK. I'm not sure however if these were supported in the first place. If > @alexey-bataev has any tests for them then I could try them out before and > after the patch and post an update her

[clang] [libclc] [llvm] [openmp] [Clang] `__attribute__((assume))` refactor (PR #84934)

2024-03-28 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > Thank you for working on this, it's definitely a complicated situation! > > > However, libclc appears to be using **attribute**((assume)) internally, > > specifically, in one header that defines a macro that is then used > > throughout the codebase. I’m not familiar with

[clang] [lld] [libcxx] [clang-tools-extra] [lldb] [mlir] [openmp] [libc] [llvm] [flang] [SLP]Add support for strided loads. (PR #80310)

2024-02-06 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev updated https://github.com/llvm/llvm-project/pull/80310 >From 92950afd39034c0184a3c807f8062e0053eead5c Mon Sep 17 00:00:00 2001 From: Alexey Bataev Date: Thu, 1 Feb 2024 17:22:34 + Subject: [PATCH 1/2] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=

[clang] [OpenACC] Implement AST for OpenACC Compute Constructs (PR #81188)

2024-02-08 Thread Alexey Bataev via cfe-commits
@@ -0,0 +1,140 @@ +//===- StmtOpenACC.h - Classes for OpenACC directives --*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [OpenACC] Implement AST for OpenACC Compute Constructs (PR #81188)

2024-02-08 Thread Alexey Bataev via cfe-commits
@@ -0,0 +1,140 @@ +//===- StmtOpenACC.h - Classes for OpenACC directives --*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [OpenACC] Implement AST for OpenACC Compute Constructs (PR #81188)

2024-02-09 Thread Alexey Bataev via cfe-commits
@@ -2145,7 +2145,11 @@ enum CXCursorKind { */ CXCursor_OMPScopeDirective = 306, - CXCursor_LastStmt = CXCursor_OMPScopeDirective, + /** OpenACC Compute Construct. + */ + CXCursor_OpenACCComputeConstruct = 307, alexey-bataev wrote: I would suggest to

[clang] [OpenACC] Implement AST for OpenACC Compute Constructs (PR #81188)

2024-02-09 Thread Alexey Bataev via cfe-commits
@@ -0,0 +1,142 @@ +//===- StmtOpenACC.h - Classes for OpenACC directives --*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [OpenACC] Implement AST for OpenACC Compute Constructs (PR #81188)

2024-02-09 Thread Alexey Bataev via cfe-commits
@@ -0,0 +1,142 @@ +//===- StmtOpenACC.h - Classes for OpenACC directives --*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [OpenACC] Implement AST for OpenACC Compute Constructs (PR #81188)

2024-02-09 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev approved this pull request. LG https://github.com/llvm/llvm-project/pull/81188 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Frontend] Add leaf constructs and association to OpenMP/ACC directives (PR #83625)

2024-03-06 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev approved this pull request. LG https://github.com/llvm/llvm-project/pull/83625 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Fix OMPT ident flag in combined distribute parallel for pragma (PR #80987)

2024-03-06 Thread Alexey Bataev via cfe-commits
@@ -3812,6 +3812,8 @@ class CodeGenFunction : public CodeGenTypeCache { Expr *NextLB = nullptr; /// Update of UB after a whole chunk has been executed Expr *NextUB = nullptr; +/// Distinguish between the for distribute and sections +OpenMPDirectiveKind DKind

[clang] [clang] Fix OMPT ident flag in combined distribute parallel for pragma (PR #80987)

2024-03-06 Thread Alexey Bataev via cfe-commits
@@ -2647,6 +2647,8 @@ void CGOpenMPRuntime::emitDistributeStaticInit( void CGOpenMPRuntime::emitForStaticFinish(CodeGenFunction &CGF, SourceLocation Loc, OpenMPDirectiveKind DKind) { + assert(D

[clang] [clang] Fix OMPT ident flag in combined distribute parallel for pragma (PR #80987)

2024-03-06 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev approved this pull request. LG https://github.com/llvm/llvm-project/pull/80987 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][C++23] Implement P1774R8: Portable assumptions (PR #81014)

2024-03-08 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > `[[clang::assume]]` or `__attribute__((assume))` are the OpenMP one OpenMP requires only [[omp::assume]], neither [[clang::assume]] nor __attribute__((assume)) are OpenMP requirement. https://github.com/llvm/llvm-project/pull/81014 ___

[clang] [Clang][C++23] Implement P1774R8: Portable assumptions (PR #81014)

2024-03-08 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > > > `[[clang::assume]]` or `__attribute__((assume))` are the OpenMP one > > > > > > OpenMP requires only [[omp::assume]], neither [[clang::assume]] nor > > **attribute**((assume)) are OpenMP requirement. > > Yeah, the weird thing is I’m not sure we support `[[omp::assum

[clang] [Clang][C++23] Implement P1774R8: Portable assumptions (PR #81014)

2024-03-08 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > > > > > `[[clang::assume]]` or `__attribute__((assume))` are the OpenMP one > > > > > > > > > > > > OpenMP requires only [[omp::assume]], neither [[clang::assume]] nor > > > > **attribute**((assume)) are OpenMP requirement. > > > > > > > > > Yeah, the weird thing is I’

[clang] [Clang] [Parser] Support [[omp::assume]] (PR #84582)

2024-03-08 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > @alexey-bataev I have a few more questions about `[[omp::assume]]`: > > - Is this supported in C? Because the `[[]]` spelling is only officially > available in C23 and later (we *do* support it in earlier language modes, but > users will get a warning if `-pedantic` is p

[clang] [Clang] [Parser] Support [[omp::assume]] (PR #84582)

2024-03-08 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > @alexey-bataev I have a few more questions about `[[omp::assume]]`: > > - Is this supported in C? Because the `[[]]` spelling is only officially > available in C23 and later (we *do* support it in earlier language modes, but > users will get a warning if `-pedantic` is p

[clang] [Clang] [Parser] Support [[omp::assume]] (PR #84582)

2024-03-08 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > One more thing: this is just a different spelling for what was previously > already exposed as `__attribute__((assume))`; I’m not sure if/how familiar > you are with that one, but I hope its semantics align with what > `[[omp::assume]]` is supposed to do. I’m asking beca

[clang] [Clang] [Parser] Support [[omp::assume]] (PR #84582)

2024-03-11 Thread Alexey Bataev via cfe-commits
@@ -12,3 +14,18 @@ void f9(void) __attribute__((assume("omp_no_openmp", "omp_no_openmp"))); // expe int g1 __attribute__((assume(0))); // expected-error {{expected string literal as argument of 'assume' attribute}} int g2 __attribute__((assume("omp_no_openmp"))); // expected

[clang] [OpenMP][CodeGen] Improved codegen for combined loop directives (PR #72417)

2024-03-11 Thread Alexey Bataev via cfe-commits
@@ -11311,6 +11311,10 @@ class Sema final { OpenMPDirectiveKind &Kind, OpenMPDirectiveKind &PrevMappedDirective); + /// [target] teams loop is equivalent to parallel for if associated loop + /// nest meets certain critera. + b

[clang] [OpenMP][CodeGen] Improved codegen for combined loop directives (PR #72417)

2024-03-11 Thread Alexey Bataev via cfe-commits
@@ -1537,6 +1537,12 @@ class CodeGenModule : public CodeGenTypeCache { void printPostfixForExternalizedDecl(llvm::raw_ostream &OS, const Decl *D) const; + /// Under debug mode, print status of target teams loop transformation, + /// w

[clang] [llvm] Draft/wip/preview of using leaf constructs in clang (PR #84817)

2024-03-11 Thread Alexey Bataev via cfe-commits
@@ -2966,7 +2972,17 @@ StmtResult Parser::ParseOpenMPDeclarativeOrExecutableDirective( getLangOpts().OpenMPIRBuilder) AssociatedStmt = Actions.ActOnOpenMPLoopnest(AssociatedStmt.get()); } - AssociatedStmt = Actions.ActOnOpenMPRegionEnd(Associat

[clang] [llvm] Draft/wip/preview of using leaf constructs in clang (PR #84817)

2024-03-11 Thread Alexey Bataev via cfe-commits
@@ -2975,9 +2991,11 @@ StmtResult Parser::ParseOpenMPDeclarativeOrExecutableDirective( /*isStmtExpr=*/false)); AssociatedStmt = Actions.ActOnOpenMPRegionEnd(AssociatedStmt, Clauses); } -Directive = Actions.ActOnOp

[clang] [clang] Fix OMPT ident flag in combined distribute parallel for pragma (PR #80987)

2024-03-12 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: Yes, as it was before :) no need to wait for another lgtm. https://github.com/llvm/llvm-project/pull/80987 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Fix OMPT ident flag in combined distribute parallel for pragma (PR #80987)

2024-03-12 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev closed https://github.com/llvm/llvm-project/pull/80987 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [OpenACC] Implement 'return' branch-out of Compute Construct (PR #82814)

2024-02-23 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev approved this pull request. Looks good. Looks like something similar should be done for goto https://github.com/llvm/llvm-project/pull/82814 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org

[clang] [OpenMP] Clang Codegen Interop : Accept multiple init (PR #82604)

2024-02-24 Thread Alexey Bataev via cfe-commits
@@ -7023,19 +7023,25 @@ void CodeGenFunction::EmitOMPInteropDirective(const OMPInteropDirective &S) { S.getSingleClause())) && "OMPNowaitClause clause is used separately in OMPInteropDirective."); - if (const auto *C = S.getSingl

[clang] [OpenMP] Clang Codegen Interop : Accept multiple init (PR #82604)

2024-02-24 Thread Alexey Bataev via cfe-commits
@@ -7023,19 +7023,25 @@ void CodeGenFunction::EmitOMPInteropDirective(const OMPInteropDirective &S) { S.getSingleClause())) && "OMPNowaitClause clause is used separately in OMPInteropDirective."); - if (const auto *C = S.getSingl

[clang] [OpenMP] Clang Codegen Interop : Accept multiple init (PR #82604)

2024-02-24 Thread Alexey Bataev via cfe-commits
@@ -7023,19 +7023,25 @@ void CodeGenFunction::EmitOMPInteropDirective(const OMPInteropDirective &S) { S.getSingleClause())) && "OMPNowaitClause clause is used separately in OMPInteropDirective."); - if (const auto *C = S.getSingl

[clang] [Clang][C++23] Implement P1774R8: Portable assumptions (PR #81014)

2024-02-27 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > We'd need to see what @alexey-bataev has to say about renaming the OMP assume > attribute. I imagine that'll end up causing a headache for his users. Thanks for the heads up. I don't think renaming to openmp_assume works for OpenMP. We need to support `#pragma omp assume

[clang] [Clang][C++23] Implement P1774R8: Portable assumptions (PR #81014)

2024-02-27 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > > Thanks for the heads up. I don't think renaming to openmp_assume works for > > OpenMP. We need to support `#pragma omp assume`, `[[omp::assume]]` and > > `[[using omp : assume]]` as defined by the standard. > > Hmm, `[[omp::assume]]` shouldn’t be an issue, because that

[clang] [OpenMP] Clang Codegen Interop : Accept multiple init (PR #82604)

2024-02-28 Thread Alexey Bataev via cfe-commits
@@ -7023,19 +7023,25 @@ void CodeGenFunction::EmitOMPInteropDirective(const OMPInteropDirective &S) { S.getSingleClause())) && "OMPNowaitClause clause is used separately in OMPInteropDirective."); - if (const auto *C = S.getSingl

[clang] [OpenMP] Parse and Sema support for declare target in local scope (PR #83223)

2024-02-28 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev commented: One big question - why do we need it in function scope for clang? https://github.com/llvm/llvm-project/pull/83223 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman

[clang] [OpenMP] Parse and Sema support for declare target in local scope (PR #83223)

2024-02-28 Thread Alexey Bataev via cfe-commits
@@ -23352,6 +23352,15 @@ void Sema::ActOnOpenMPDeclareTargetName(NamedDecl *ND, SourceLocation Loc, isa(ND)) && "Expected variable, function or function template."); + if (auto *VD = dyn_cast(ND)) { alexey-bataev wrote: checkDeclIsAllowed

[clang] [OpenMP] Parse and Sema support for declare target in local scope (PR #83223)

2024-02-28 Thread Alexey Bataev via cfe-commits
@@ -11326,6 +11326,9 @@ def err_omp_device_type_mismatch : Error< def err_omp_wrong_device_function_call : Error< "function with 'device_type(%0)' is not available on %select{device|host}1">; def note_omp_marked_device_type_here : Note<"marked as 'device_type(%0)' here">; +d

[clang] [OpenMP] Parse and Sema support for declare target in local scope (PR #83223)

2024-02-28 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev edited https://github.com/llvm/llvm-project/pull/83223 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [OpenMP] Clang Codegen Interop : Accept multiple init (PR #82604)

2024-02-28 Thread Alexey Bataev via cfe-commits
@@ -7023,31 +7023,47 @@ void CodeGenFunction::EmitOMPInteropDirective(const OMPInteropDirective &S) { S.getSingleClause())) && "OMPNowaitClause clause is used separately in OMPInteropDirective."); - if (const auto *C = S.getSingl

[clang] [OpenMP] Clang Codegen Interop : Accept multiple init (PR #82604)

2024-02-28 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev approved this pull request. LG https://github.com/llvm/llvm-project/pull/82604 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [OpenACC] Implement Compute Construct 'goto' in/out logic (PR #83326)

2024-02-28 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev approved this pull request. LG https://github.com/llvm/llvm-project/pull/83326 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [OpenMP] Clang Codegen Interop : Accept multiple use & destroy clauses (PR #83398)

2024-02-29 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev approved this pull request. LG https://github.com/llvm/llvm-project/pull/83398 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [OpenACC] Implement Duffs-Device restriction for Compute Constructs (PR #83460)

2024-02-29 Thread Alexey Bataev via cfe-commits
@@ -534,6 +534,25 @@ class Scope { return false; } + /// Determine if this scope (or its parents) are a compute construct inside of + /// the nearest 'switch' scope. This is needed to check whether we are inside + /// of a 'duffs' device, which is an illegal branch

[clang] [OpenACC] Implement Duffs-Device restriction for Compute Constructs (PR #83460)

2024-02-29 Thread Alexey Bataev via cfe-commits
@@ -534,6 +534,25 @@ class Scope { return false; } + /// Determine if this scope (or its parents) are a compute construct inside of + /// the nearest 'switch' scope. This is needed to check whether we are inside + /// of a 'duffs' device, which is an illegal branch

[clang] [OpenACC] Implement Duffs-Device restriction for Compute Constructs (PR #83460)

2024-02-29 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev approved this pull request. LG https://github.com/llvm/llvm-project/pull/83460 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Frontend] Add leaf constructs and association to OpenMP/ACC directives (PR #83625)

2024-03-01 Thread Alexey Bataev via cfe-commits
@@ -665,60 +619,44 @@ bool clang::isOpenMPTargetDataManagementDirective(OpenMPDirectiveKind DKind) { } bool clang::isOpenMPNestingTeamsDirective(OpenMPDirectiveKind DKind) { - return DKind == OMPD_teams || DKind == OMPD_teams_distribute || - DKind == OMPD_teams_distr

[clang] [llvm] [Frontend] Add leaf constructs and association to OpenMP/ACC directives (PR #83625)

2024-03-01 Thread Alexey Bataev via cfe-commits
@@ -665,60 +619,44 @@ bool clang::isOpenMPTargetDataManagementDirective(OpenMPDirectiveKind DKind) { } bool clang::isOpenMPNestingTeamsDirective(OpenMPDirectiveKind DKind) { - return DKind == OMPD_teams || DKind == OMPD_teams_distribute || - DKind == OMPD_teams_distr

[clang] [llvm] [Frontend] Add leaf constructs and association to OpenMP/ACC directives (PR #83625)

2024-03-01 Thread Alexey Bataev via cfe-commits
@@ -665,60 +619,44 @@ bool clang::isOpenMPTargetDataManagementDirective(OpenMPDirectiveKind DKind) { } bool clang::isOpenMPNestingTeamsDirective(OpenMPDirectiveKind DKind) { - return DKind == OMPD_teams || DKind == OMPD_teams_distribute || - DKind == OMPD_teams_distr

[clang] [llvm] [Frontend] Add leaf constructs and association to OpenMP/ACC directives (PR #83625)

2024-03-01 Thread Alexey Bataev via cfe-commits
@@ -665,60 +619,44 @@ bool clang::isOpenMPTargetDataManagementDirective(OpenMPDirectiveKind DKind) { } bool clang::isOpenMPNestingTeamsDirective(OpenMPDirectiveKind DKind) { - return DKind == OMPD_teams || DKind == OMPD_teams_distribute || - DKind == OMPD_teams_distr

[clang] [llvm] [Frontend] Add leaf constructs and association to OpenMP/ACC directives (PR #83625)

2024-03-03 Thread Alexey Bataev via cfe-commits
@@ -341,5 +356,19 @@ def TDL_DirA : Directive<"dira"> { // IMPL-NEXT:} // IMPL-NEXT:llvm_unreachable("Invalid Tdl Directive kind"); // IMPL-NEXT: } +// IMPL-NEXT: const llvm::SmallVector &llvm::tdl::getLeafConstructs(llvm::tdl::Directive Dir) { alexe

[clang] [llvm] [Frontend] Add leaf constructs and association to OpenMP/ACC directives (PR #83625)

2024-03-03 Thread Alexey Bataev via cfe-commits
@@ -665,60 +617,45 @@ bool clang::isOpenMPTargetDataManagementDirective(OpenMPDirectiveKind DKind) { } bool clang::isOpenMPNestingTeamsDirective(OpenMPDirectiveKind DKind) { - return DKind == OMPD_teams || DKind == OMPD_teams_distribute || - DKind == OMPD_teams_distr

[clang] [llvm] [Frontend] Add leaf constructs and association to OpenMP/ACC directives (PR #83625)

2024-03-03 Thread Alexey Bataev via cfe-commits
@@ -231,6 +244,8 @@ static void EmitDirectivesDecl(RecordKeeper &Records, raw_ostream &OS) { OS << "bool isAllowedClauseForDirective(Directive D, " << "Clause C, unsigned Version);\n"; OS << "\n"; + OS << "const llvm::SmallVector &getLeafConstructs(Directive D);\n";

[clang] [llvm] [Frontend] Add leaf constructs and association to OpenMP/ACC directives (PR #83625)

2024-03-03 Thread Alexey Bataev via cfe-commits
@@ -231,6 +244,8 @@ static void EmitDirectivesDecl(RecordKeeper &Records, raw_ostream &OS) { OS << "bool isAllowedClauseForDirective(Directive D, " << "Clause C, unsigned Version);\n"; OS << "\n"; + OS << "const llvm::SmallVector &getLeafConstructs(Directive D);\n";

[clang] [llvm] [Frontend] Add leaf constructs and association to OpenMP/ACC directives (PR #83625)

2024-03-03 Thread Alexey Bataev via cfe-commits
@@ -231,6 +244,8 @@ static void EmitDirectivesDecl(RecordKeeper &Records, raw_ostream &OS) { OS << "bool isAllowedClauseForDirective(Directive D, " << "Clause C, unsigned Version);\n"; OS << "\n"; + OS << "const llvm::SmallVector &getLeafConstructs(Directive D);\n";

[clang] [llvm] [Frontend] Add leaf constructs and association to OpenMP/ACC directives (PR #83625)

2024-03-03 Thread Alexey Bataev via cfe-commits
@@ -231,6 +244,8 @@ static void EmitDirectivesDecl(RecordKeeper &Records, raw_ostream &OS) { OS << "bool isAllowedClauseForDirective(Directive D, " << "Clause C, unsigned Version);\n"; OS << "\n"; + OS << "const llvm::SmallVector &getLeafConstructs(Directive D);\n";

[clang] [llvm] [Frontend] Add leaf constructs and association to OpenMP/ACC directives (PR #83625)

2024-03-03 Thread Alexey Bataev via cfe-commits
@@ -435,6 +450,213 @@ static void GenerateIsAllowedClause(const DirectiveLanguage &DirLang, OS << "}\n"; // End of function isAllowedClauseForDirective } +// Generate the getLeafConstructs function implementation. +static void GenerateGetLeafConstructs(const DirectiveLangua

[clang] [llvm] [Frontend] Add leaf constructs and association to OpenMP/ACC directives (PR #83625)

2024-03-03 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev requested changes to this pull request. https://github.com/llvm/llvm-project/pull/83625 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [OpenMP] Parse and Sema support for declare target in local scope (PR #83223)

2024-03-04 Thread Alexey Bataev via cfe-commits
@@ -11326,6 +11326,8 @@ def err_omp_device_type_mismatch : Error< def err_omp_wrong_device_function_call : Error< "function with 'device_type(%0)' is not available on %select{device|host}1">; def note_omp_marked_device_type_here : Note<"marked as 'device_type(%0)' here">; +d

[clang] [OpenMP] Remove complex reduction variable support (PR #82497)

2024-03-04 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > @alexey-bataev do you have any concerns about removing this case? I think better to add a test for complex reductions rather than removing its support. This simple test fails without complex supports. ``` #include int foo() { int i; int j; complex float sum; #pr

[clang-tools-extra] [clang] [llvm] [SLP]Improve findReusedOrderedScalars and graph rotation. (PR #77529)

2024-01-30 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: > Please can you add better comments explaining the process Improves the rendering info, taken from gathered/buildvector nodes. Currently, this info is taken only from vector nodes. E.g. if we have 2 nodes: vectorized and gather/buildvector , the reoder info is build only

[lldb] [clang] [llvm] [libc] [compiler-rt] [lld] [libcxx] [clang-tools-extra] [libcxxabi] [flang] [SLP]Improve findReusedOrderedScalars and graph rotation. (PR #77529)

2024-01-30 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev updated https://github.com/llvm/llvm-project/pull/77529 >From 7440ee8ba235fd871af0999f66d5d6130456400b Mon Sep 17 00:00:00 2001 From: Alexey Bataev Date: Tue, 9 Jan 2024 21:43:31 + Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20initia?=

[libcxx] [flang] [clang] [compiler-rt] [clang-tools-extra] [libc] [llvm] [SLP]Improve minbitwidth analysis. (PR #78976)

2024-01-30 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev updated https://github.com/llvm/llvm-project/pull/78976 >From 391145a2d04873ef84c4f1083fe9b9fcdbb3b940 Mon Sep 17 00:00:00 2001 From: Alexey Bataev Date: Mon, 22 Jan 2024 14:13:51 + Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20initia?=

[llvm] [clang-tools-extra] [flang] [libc] [mlir] [lldb] [libcxx] [compiler-rt] [clang] [OpenMP] atomic compare weak : Parser & AST support (PR #79475)

2024-01-31 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev closed https://github.com/llvm/llvm-project/pull/79475 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[lld] [llvm] [libc] [lldb] [compiler-rt] [clang-tools-extra] [flang] [libcxx] [clang] [TTI][RISCV]Improve costs for fixed vector whole reg extract/insert. (PR #80164)

2024-01-31 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev updated https://github.com/llvm/llvm-project/pull/80164 >From cfd0dcfa1f5fabd12cf4d7bf8d5a10bd324ace0a Mon Sep 17 00:00:00 2001 From: Alexey Bataev Date: Wed, 31 Jan 2024 16:47:49 + Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20initia?=

[clang] [OpenMP][Clang] Handle unsupported inscan modifier for generic types (PR #79431)

2024-01-31 Thread Alexey Bataev via cfe-commits
@@ -19520,6 +19520,13 @@ static bool actOnOMPReductionKindClause( bool FirstIter = true; for (Expr *RefExpr : VarList) { assert(RefExpr && "nullptr expr in OpenMP reduction clause."); +if (ClauseKind == OMPC_reduction && +RD.RedModifier == OMPC_REDUCTION_ins

[clang] [OpenMP] Move unsupported structured bindings diagnostic (PR #80216)

2024-02-01 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev approved this pull request. LG https://github.com/llvm/llvm-project/pull/80216 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[lldb] [clang-tools-extra] [libcxx] [lld] [libcxxabi] [clang] [libc] [llvm] [compiler-rt] [flang] [SLP]Improve findReusedOrderedScalars and graph rotation. (PR #77529)

2024-02-01 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev updated https://github.com/llvm/llvm-project/pull/77529 >From 7440ee8ba235fd871af0999f66d5d6130456400b Mon Sep 17 00:00:00 2001 From: Alexey Bataev Date: Tue, 9 Jan 2024 21:43:31 + Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20initia?=

[clang-tools-extra] [libcxx] [lldb] [lld] [llvm] [compiler-rt] [libc] [libcxxabi] [flang] [clang] [TTI][RISCV]Improve costs for fixed vector whole reg extract/insert. (PR #80164)

2024-02-01 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev updated https://github.com/llvm/llvm-project/pull/80164 >From cfd0dcfa1f5fabd12cf4d7bf8d5a10bd324ace0a Mon Sep 17 00:00:00 2001 From: Alexey Bataev Date: Wed, 31 Jan 2024 16:47:49 + Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20initia?=

[llvm] [libcxx] [libc] [clang-tools-extra] [mlir] [lld] [lldb] [openmp] [clang] [flang] [SLP][TTI]Add support for strided loads. (PR #80310)

2024-02-01 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev updated https://github.com/llvm/llvm-project/pull/80310 >From 92950afd39034c0184a3c807f8062e0053eead5c Mon Sep 17 00:00:00 2001 From: Alexey Bataev Date: Thu, 1 Feb 2024 17:22:34 + Subject: [PATCH 1/2] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=

[llvm] [libcxx] [libc] [clang-tools-extra] [mlir] [lld] [lldb] [openmp] [clang] [flang] [SLP]Add support for strided loads. (PR #80310)

2024-02-01 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev edited https://github.com/llvm/llvm-project/pull/80310 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [flang] [openmp] [libcxx] [clang-tools-extra] [mlir] [lldb] [llvm] [lld] [libc] [SLP]Add support for strided loads. (PR #80310)

2024-02-01 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev edited https://github.com/llvm/llvm-project/pull/80310 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[libc] [compiler-rt] [llvm] [clang] [flang] [libcxx] [clang-tools-extra] [SLP]Improve minbitwidth analysis. (PR #78976)

2024-02-01 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev updated https://github.com/llvm/llvm-project/pull/78976 >From 391145a2d04873ef84c4f1083fe9b9fcdbb3b940 Mon Sep 17 00:00:00 2001 From: Alexey Bataev Date: Mon, 22 Jan 2024 14:13:51 + Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20initia?=

[libcxx] [lldb] [clang] [lld] [libc] [llvm] [mlir] [flang] [openmp] [clang-tools-extra] [SLP]Add support for strided loads. (PR #80310)

2024-02-01 Thread Alexey Bataev via cfe-commits
@@ -17,7 +17,7 @@ define i16 @test() { ; CHECK-NEXT:[[TMP4:%.*]] = call <2 x i16> @llvm.masked.gather.v2i16.v2p0(<2 x ptr> [[TMP3]], i32 2, <2 x i1> , <2 x i16> poison) ; CHECK-NEXT:[[TMP5:%.*]] = extractelement <2 x i16> [[TMP4]], i32 0 ; CHECK-NEXT:[[TMP6:%.*]] =

[libcxx] [lldb] [clang] [lld] [libc] [llvm] [mlir] [flang] [openmp] [clang-tools-extra] [SLP]Add support for strided loads. (PR #80310)

2024-02-01 Thread Alexey Bataev via cfe-commits
@@ -30,7 +30,7 @@ define void @test() { ; CHECK-SLP-THRESHOLD: bb: ; CHECK-SLP-THRESHOLD-NEXT:[[TMP0:%.*]] = insertelement <4 x ptr> poison, ptr [[COND_IN_V]], i32 0 ; CHECK-SLP-THRESHOLD-NEXT:[[TMP1:%.*]] = shufflevector <4 x ptr> [[TMP0]], <4 x ptr> poison, <4

[libcxx] [lldb] [clang] [lld] [libc] [llvm] [mlir] [flang] [openmp] [clang-tools-extra] [SLP]Add support for strided loads. (PR #80310)

2024-02-01 Thread Alexey Bataev via cfe-commits
@@ -7,7 +7,7 @@ define i32 @test(ptr noalias %p, ptr noalias %addr) { ; CHECK-NEXT: entry: ; CHECK-NEXT:[[TMP0:%.*]] = insertelement <8 x ptr> poison, ptr [[ADDR:%.*]], i32 0 ; CHECK-NEXT:[[TMP1:%.*]] = shufflevector <8 x ptr> [[TMP0]], <8 x ptr> poison, <8 x i32> ze

[libcxx] [lldb] [clang] [lld] [libc] [llvm] [mlir] [flang] [openmp] [clang-tools-extra] [SLP]Add support for strided loads. (PR #80310)

2024-02-01 Thread Alexey Bataev via cfe-commits
@@ -397,27 +241,12 @@ define void @test3([48 x float]* %p, float* noalias %s) { ; CHECK-NEXT: entry: ; CHECK-NEXT:[[ARRAYIDX:%.*]] = getelementptr inbounds [48 x float], ptr [[P:%.*]], i64 0, i64 0 ; CHECK-NEXT:[[ARRAYIDX2:%.*]] = getelementptr inbounds float, ptr [[

[libcxx] [lldb] [clang] [lld] [libc] [llvm] [mlir] [flang] [openmp] [clang-tools-extra] [SLP]Add support for strided loads. (PR #80310)

2024-02-01 Thread Alexey Bataev via cfe-commits
@@ -3878,6 +3883,130 @@ static Align computeCommonAlignment(ArrayRef VL) { return CommonAlignment; } +/// Check if \p Order represents reverse order. +static bool isReverseOrder(ArrayRef Order) { + unsigned Sz = Order.size(); + return !Order.empty() && all_of(enumerate(Or

[libcxx] [lldb] [clang] [lld] [libc] [llvm] [mlir] [flang] [openmp] [clang-tools-extra] [SLP]Add support for strided loads. (PR #80310)

2024-02-01 Thread Alexey Bataev via cfe-commits
@@ -3930,30 +4065,68 @@ static LoadsState canVectorizeLoads(ArrayRef VL, const Value *VL0, std::optional Diff = getPointersDiff(ScalarTy, Ptr0, ScalarTy, PtrN, DL, SE); // Check that the sorted loads are consecutive. - if (static_cast(*Diff) == VL.si

[libcxx] [lldb] [clang] [lld] [libc] [llvm] [mlir] [flang] [openmp] [clang-tools-extra] [SLP]Add support for strided loads. (PR #80310)

2024-02-01 Thread Alexey Bataev via cfe-commits
@@ -3930,30 +4065,68 @@ static LoadsState canVectorizeLoads(ArrayRef VL, const Value *VL0, std::optional Diff = getPointersDiff(ScalarTy, Ptr0, ScalarTy, PtrN, DL, SE); // Check that the sorted loads are consecutive. - if (static_cast(*Diff) == VL.si

[libcxx] [lldb] [clang] [lld] [libc] [llvm] [mlir] [flang] [openmp] [clang-tools-extra] [SLP]Add support for strided loads. (PR #80310)

2024-02-01 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev updated https://github.com/llvm/llvm-project/pull/80310 >From 92950afd39034c0184a3c807f8062e0053eead5c Mon Sep 17 00:00:00 2001 From: Alexey Bataev Date: Thu, 1 Feb 2024 17:22:34 + Subject: [PATCH 1/2] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=

[llvm] [libc] [clang] [compiler-rt] [libcxx] [clang-tools-extra] [flang] [TTI]Fallback to SingleSrcPermute shuffle kind, if no direct estimation for (PR #79837)

2024-02-02 Thread Alexey Bataev via cfe-commits
alexey-bataev wrote: Ping! https://github.com/llvm/llvm-project/pull/79837 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[compiler-rt] [libc] [libcxx] [libcxxabi] [llvm] [clang-tools-extra] [lld] [lldb] [clang] [flang] [TTI][RISCV]Improve costs for fixed vector whole reg extract/insert. (PR #80164)

2024-02-02 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev updated https://github.com/llvm/llvm-project/pull/80164 >From cfd0dcfa1f5fabd12cf4d7bf8d5a10bd324ace0a Mon Sep 17 00:00:00 2001 From: Alexey Bataev Date: Wed, 31 Jan 2024 16:47:49 + Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20initia?=

[lldb] [libcxx] [clang] [libc] [llvm] [libcxxabi] [flang] [lld] [compiler-rt] [clang-tools-extra] [TTI][RISCV]Improve costs for fixed vector whole reg extract/insert. (PR #80164)

2024-02-05 Thread Alexey Bataev via cfe-commits
@@ -326,6 +326,48 @@ InstructionCost RISCVTTIImpl::getShuffleCost(TTI::ShuffleKind Kind, switch (Kind) { default: break; +case TTI::SK_ExtractSubvector: + if (isa(SubTp) && + LT.second.getVectorElementType() != MVT::i1) { +unsigned TpReg

[lldb] [clang] [clang-tools-extra] [libcxxabi] [libc] [flang] [llvm] [lld] [libcxx] [compiler-rt] [TTI][RISCV]Improve costs for fixed vector whole reg extract/insert. (PR #80164)

2024-02-05 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev updated https://github.com/llvm/llvm-project/pull/80164 >From cfd0dcfa1f5fabd12cf4d7bf8d5a10bd324ace0a Mon Sep 17 00:00:00 2001 From: Alexey Bataev Date: Wed, 31 Jan 2024 16:47:49 + Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20initia?=

[lldb] [clang] [clang-tools-extra] [libcxxabi] [libc] [flang] [llvm] [lld] [libcxx] [compiler-rt] [TTI][RISCV]Improve costs for fixed vector whole reg extract/insert. (PR #80164)

2024-02-05 Thread Alexey Bataev via cfe-commits
@@ -326,6 +326,48 @@ InstructionCost RISCVTTIImpl::getShuffleCost(TTI::ShuffleKind Kind, switch (Kind) { default: break; +case TTI::SK_ExtractSubvector: + if (isa(SubTp) && + LT.second.getVectorElementType() != MVT::i1) { +unsigned TpReg

[libcxxabi] [lldb] [clang] [flang] [compiler-rt] [lld] [libc] [clang-tools-extra] [libcxx] [llvm] [SLP]Improve findReusedOrderedScalars and graph rotation. (PR #77529)

2024-02-05 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev updated https://github.com/llvm/llvm-project/pull/77529 >From 7440ee8ba235fd871af0999f66d5d6130456400b Mon Sep 17 00:00:00 2001 From: Alexey Bataev Date: Tue, 9 Jan 2024 21:43:31 + Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20initia?=

[llvm] [libc] [flang] [clang-tools-extra] [libcxx] [clang] [compiler-rt] [SLP]Improve minbitwidth analysis. (PR #78976)

2024-02-05 Thread Alexey Bataev via cfe-commits
https://github.com/alexey-bataev updated https://github.com/llvm/llvm-project/pull/78976 >From 391145a2d04873ef84c4f1083fe9b9fcdbb3b940 Mon Sep 17 00:00:00 2001 From: Alexey Bataev Date: Mon, 22 Jan 2024 14:13:51 + Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20initia?=

[clang] [OpenMP][Clang] Handle unsupported inscan modifier for generic types (PR #79431)

2024-01-25 Thread Alexey Bataev via cfe-commits
@@ -19520,6 +19520,13 @@ static bool actOnOMPReductionKindClause( bool FirstIter = true; for (Expr *RefExpr : VarList) { assert(RefExpr && "nullptr expr in OpenMP reduction clause."); +if (ClauseKind == OMPC_reduction && +RD.RedModifier == OMPC_REDUCTION_ins

<    2   3   4   5   6   7   8   9   10   11   >