History log of /llvm-project-15.0.7/clang/lib/AST/StmtOpenMP.cpp (Results 1 – 25 of 91)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init
# 38bcd483 01-Jul-2022 Fazlay Rabbi <[email protected]>

[OpenMP] Initial parsing and semantic support for 'parallel masked taskloop simd' construct

This patch gives basic parsing and semantic support for
"parallel masked taskloop simd" construct introduc

[OpenMP] Initial parsing and semantic support for 'parallel masked taskloop simd' construct

This patch gives basic parsing and semantic support for
"parallel masked taskloop simd" construct introduced in
OpenMP 5.1 (section 2.16.10)

Differential Revision: https://reviews.llvm.org/D128946

show more ...


# d64ba896 30-Jun-2022 Fazlay Rabbi <[email protected]>

[OpenMP] Initial parsing and sema support for 'parallel masked taskloop' construct

This patch gives basic parsing and semantic support for
"parallel masked taskloop" construct introduced in
OpenMP 5

[OpenMP] Initial parsing and sema support for 'parallel masked taskloop' construct

This patch gives basic parsing and semantic support for
"parallel masked taskloop" construct introduced in
OpenMP 5.1 (section 2.16.9)

Differential Revision: https://reviews.llvm.org/D128834

show more ...


# 73e5d7bd 28-Jun-2022 Fazlay Rabbi <[email protected]>

[OpenMP] Initial parsing and sema support for 'masked taskloop simd' construct

This patch gives basic parsing and semantic support for
"masked taskloop simd" construct introduced in OpenMP 5.1 (sect

[OpenMP] Initial parsing and sema support for 'masked taskloop simd' construct

This patch gives basic parsing and semantic support for
"masked taskloop simd" construct introduced in OpenMP 5.1 (section 2.16.8)

Differential Revision: https://reviews.llvm.org/D128693

show more ...


# 42bb88e2 24-Jun-2022 Fazlay Rabbi <[email protected]>

[OpenMP] Initial parsing and sema support for 'masked taskloop' construct

This patch gives basic parsing and semantic support for "masked taskloop"
construct introduced in OpenMP 5.1 (section 2.16.7

[OpenMP] Initial parsing and sema support for 'masked taskloop' construct

This patch gives basic parsing and semantic support for "masked taskloop"
construct introduced in OpenMP 5.1 (section 2.16.7)

Differential Revision: https://reviews.llvm.org/D128478

show more ...


Revision tags: llvmorg-14.0.6
# bb83f8e7 16-Jun-2022 Jennifer Yu <[email protected]>

[OpenMP] Initial parsing and sema for 'parallel masked' construct

Differential Revision: https://reviews.llvm.org/D127454


Revision tags: llvmorg-14.0.5
# c4a90db7 03-Jun-2022 Shilei Tian <[email protected]>

[Clang][OpenMP] Add the codegen support for `atomic compare capture`

This patch adds the codegen support for `atomic compare capture` in clang.

Reviewed By: ABataev

Differential Revision: https://

[Clang][OpenMP] Add the codegen support for `atomic compare capture`

This patch adds the codegen support for `atomic compare capture` in clang.

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D120290

show more ...


Revision tags: llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2
# e8760b51 16-Apr-2022 Shilei Tian <[email protected]>

[Clang][OpenMP] Use bitfields for flags in `OMPAtomicDirective`

As suggested in D120290.

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D123862


# 52e6a276 15-Apr-2022 Shilei Tian <[email protected]>

Clean up `OMPAtomicDirective::Create`


Revision tags: llvmorg-14.0.1
# f82ec553 23-Mar-2022 Mike Rice <[email protected]>

[OpenMP] Initial parsing/sema for the 'omp target parallel loop' construct

Adds basic parsing/sema/serialization support for the
#pragma omp target parallel loop directive.

Differential Revision:

[OpenMP] Initial parsing/sema for the 'omp target parallel loop' construct

Adds basic parsing/sema/serialization support for the
#pragma omp target parallel loop directive.

Differential Revision: https://reviews.llvm.org/D122359

show more ...


# 2cedaee6 22-Mar-2022 Mike Rice <[email protected]>

[OpenMP] Initial parsing/sema for the 'omp parallel loop' construct

Adds basic parsing/sema/serialization support for the
#pragma omp parallel loop directive.

Differential Revision: https://re

[OpenMP] Initial parsing/sema for the 'omp parallel loop' construct

Adds basic parsing/sema/serialization support for the
#pragma omp parallel loop directive.

Differential Revision: https://reviews.llvm.org/D122247

show more ...


# 6bd8dc91 18-Mar-2022 Mike Rice <[email protected]>

[OpenMP] Initial parsing/sema for the 'omp target teams loop' construct

Adds basic parsing/sema/serialization support for the
#pragma omp target teams loop directive.

Differential Revision: https

[OpenMP] Initial parsing/sema for the 'omp target teams loop' construct

Adds basic parsing/sema/serialization support for the
#pragma omp target teams loop directive.

Differential Revision: https://reviews.llvm.org/D122028

show more ...


# 79f661ed 15-Mar-2022 Mike Rice <[email protected]>

[OpenMP] Initial parsing/sema for the 'omp teams loop' construct

Adds basic parsing/sema/serialization support for the #pragma omp teams loop
directive.

Differential Revision: https://reviews.llvm.

[OpenMP] Initial parsing/sema for the 'omp teams loop' construct

Adds basic parsing/sema/serialization support for the #pragma omp teams loop
directive.

Differential Revision: https://reviews.llvm.org/D121713

show more ...


Revision tags: llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2
# 104d9a67 22-Feb-2022 Shilei Tian <[email protected]>

[Clang][OpenMP] Add the codegen support for `atomic compare`

This patch adds the codegen support for `atomic compare` in clang.

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org

[Clang][OpenMP] Add the codegen support for `atomic compare`

This patch adds the codegen support for `atomic compare` in clang.

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D118632

show more ...


Revision tags: llvmorg-14.0.0-rc1, llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2
# 17d4bd3d 09-Jan-2022 Kazu Hirata <[email protected]>

[clang] Fix bugprone argument comments (NFC)

Identified with bugprone-argument-comment.


Revision tags: llvmorg-13.0.1-rc1
# 80256605 19-Nov-2021 Alexey Bataev <[email protected]>

[OpenMP] support depend clause for taskwait directive, by Deepak
Eachempati.

This patch adds clang (parsing, sema, serialization, codegen) support for the 'depend' clause on the 'taskwait' directive

[OpenMP] support depend clause for taskwait directive, by Deepak
Eachempati.

This patch adds clang (parsing, sema, serialization, codegen) support for the 'depend' clause on the 'taskwait' directive.

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D113540

show more ...


# 6f9c2516 28-Oct-2021 Mike Rice <[email protected]>

[OpenMP] Initial parsing/sema for the 'omp loop' construct

Adds basic parsing/sema/serialization support for the #pragma omp loop
directive.

Differential Revision: https://reviews.llvm.org/D112499


# 2130117f 06-Oct-2021 Michael Kruse <[email protected]>

[Clang][OpenMP] Allow loop-transformations with template parameters.

Clang would reject

#pragma omp for
#pragma omp tile sizes(P)
for (int i = 0; i < 128; ++i) {}

where P is a template

[Clang][OpenMP] Allow loop-transformations with template parameters.

Clang would reject

#pragma omp for
#pragma omp tile sizes(P)
for (int i = 0; i < 128; ++i) {}

where P is a template parameter, but the loop itself is not
template-dependent. Because P context-dependent, the TransformedStmt
cannot be generated and therefore is nullptr (until the template is
instantiated by TreeTransform). The OMPForDirective would still expect
the a loop is the dependent context and trigger an error.

Fix by introducing a NumGeneratedLoops field to OMPLoopTransformation.
This is used to distinguish the case where no TransformedStmt will be
generated at all (e.g. #pragma omp unroll full) and template
instantiation is needed. In the latter case, delay resolving the
iteration space like when the for-loop itself is template-dependent
until the template instatiation.

A more radical solution would always delay the iteration space analysis
until template instantiation, but would also break many test cases.

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D111124

show more ...


# f37e8b0b 06-Oct-2021 Michael Kruse <[email protected]>

[Clang][OpenMP] Infix OMPLoopTransformationDirective abstract class. NFC.

Insert OMPLoopTransformationDirective between OMPLoopBasedDirective and the loop transformations OMPTileDirective and OMPUnr

[Clang][OpenMP] Infix OMPLoopTransformationDirective abstract class. NFC.

Insert OMPLoopTransformationDirective between OMPLoopBasedDirective and the loop transformations OMPTileDirective and OMPUnrollDirective. This simplifies handling of loop transformations not requiring distinguishing between OMPTileDirective and OMPUnrollDirective anymore.

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D111119

show more ...


Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4
# 000875c1 17-Sep-2021 alokmishra.besu <>

OpenMP 5.0 metadirective

This patch supports OpenMP 5.0 metadirective features.
It is implemented keeping the OpenMP 5.1 features like dynamic user condition in mind.

A new function, getBestWhenMat

OpenMP 5.0 metadirective

This patch supports OpenMP 5.0 metadirective features.
It is implemented keeping the OpenMP 5.1 features like dynamic user condition in mind.

A new function, getBestWhenMatchForContext, is defined in llvm/Frontend/OpenMP/OMPContext.h

Currently this function return the index of the when clause with the highest score from the ones applicable in the Context.
But this function is declared with an array which can be used in OpenMP 5.1 implementation to select all the valid when clauses which can be resolved in runtime. Currently this array is set to null by default and its implementation is left for future.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D91944

show more ...


# 31cca215 18-Sep-2021 Nico Weber <[email protected]>

Revert "OpenMP 5.0 metadirective"

This reverts commit c7d7b98e5263472f05b2f3cb767b5d16e1349e9a.
Breaks tests on macOS, see comment on https://reviews.llvm.org/D91944


# 347f3c18 17-Sep-2021 alokmishra.besu <>

OpenMP 5.0 metadirective

This patch supports OpenMP 5.0 metadirective features.
It is implemented keeping the OpenMP 5.1 features like dynamic user condition in mind.

A new function, getBestWhenMat

OpenMP 5.0 metadirective

This patch supports OpenMP 5.0 metadirective features.
It is implemented keeping the OpenMP 5.1 features like dynamic user condition in mind.

A new function, getBestWhenMatchForContext, is defined in llvm/Frontend/OpenMP/OMPContext.h

Currently this function return the index of the when clause with the highest score from the ones applicable in the Context.
But this function is declared with an array which can be used in OpenMP 5.1 implementation to select all the valid when clauses which can be resolved in runtime. Currently this array is set to null by default and its implementation is left for future.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D91944

show more ...


# 7efb8253 17-Sep-2021 cchen <[email protected]>

Revert "OpenMP 5.0 metadirective"

This reverts commit c7d7b98e5263472f05b2f3cb767b5d16e1349e9a.


# c7d7b98e 17-Sep-2021 cchen <[email protected]>

OpenMP 5.0 metadirective

This patch supports OpenMP 5.0 metadirective features.
It is implemented keeping the OpenMP 5.1 features like dynamic user condition in mind.

A new function, getBestWhenMat

OpenMP 5.0 metadirective

This patch supports OpenMP 5.0 metadirective features.
It is implemented keeping the OpenMP 5.1 features like dynamic user condition in mind.

A new function, getBestWhenMatchForContext, is defined in llvm/Frontend/OpenMP/OMPContext.h

Currently this function return the index of the when clause with the highest score from the ones applicable in the Context.
But this function is declared with an array which can be used in OpenMP 5.1 implementation to select all the valid when clauses which can be resolved in runtime. Currently this array is set to null by default and its implementation is left for future.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D91944

show more ...


Revision tags: llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2
# a2223612 10-Jun-2021 Michael Kruse <[email protected]>

[OpenMP] Implement '#pragma omp unroll'.

Implementation of the unroll directive introduced in OpenMP 5.1. Follows the approach from D76342 for the tile directive (i.e. AST-based, not using the OpenM

[OpenMP] Implement '#pragma omp unroll'.

Implementation of the unroll directive introduced in OpenMP 5.1. Follows the approach from D76342 for the tile directive (i.e. AST-based, not using the OpenMPIRBuilder). Tries to use `llvm.loop.unroll.*` metadata where possible, but has to fall back to an AST representation of the outer loop if the partially unrolled generated loop is associated with another directive (because it needs to compute the number of iterations).

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D99459

show more ...


# 07a6beb4 02-Jun-2021 Michael Kruse <[email protected]>

[Clang][OpenMP] Emit dependent PreInits before directive.

The PreInits of a loop transformation (atm moment only tile) include the computation of the trip count. The trip count is needed by any loop

[Clang][OpenMP] Emit dependent PreInits before directive.

The PreInits of a loop transformation (atm moment only tile) include the computation of the trip count. The trip count is needed by any loop-associated directives that consumes the transformation-generated loop. Hence, we must ensure that the PreInits of consumed loop transformations are emitted with the consuming directive.

This is done by addinging the inner loop transformation's PreInits to the outer loop-directive's PreInits. The outer loop-directive will consume the de-sugared AST such that the inner PreInits are not emitted twice. The PreInits of a loop transformation are still emitted directly if its generated loop(s) are not associated with another loop-associated directive.

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D102180

show more ...


1234