History log of /llvm-project/clang/test/AST/ast-print-openacc-combined-construct.cpp (Results 1 – 20 of 20)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6
# 7d89ebfd 06-Dec-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Implement 'reduction' for combined constructs.

Once again, this is a clause on a combined construct that does almost
exactly what the loop/compute construct version does, only with some sl

[OpenACC] Implement 'reduction' for combined constructs.

Once again, this is a clause on a combined construct that does almost
exactly what the loop/compute construct version does, only with some sl
ightly different evaluation rules/sema rules as it doesn't have to
consider the parent, just the 'combined' construct. The two sets of
rules for reduction on loop and compute are fine together, so this
ensures they are all enforced for this too.

The 'gangs' 'num_gangs' 'reduction' diagnostic (Dim>1) had to be applied
to num_gangs as well, as it previously wasn't permissible to get in this
situation, but we now can.

show more ...


# 009b5e8e 06-Dec-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] 'vector' clause implementation for combined constructs

Similar to 'worker', the 'vector' clause has some rules that needed to
be applied on its argument legality that for combined construc

[OpenACC] 'vector' clause implementation for combined constructs

Similar to 'worker', the 'vector' clause has some rules that needed to
be applied on its argument legality that for combined constructs need to
look at the current construct, not the 'effective' parent construct.
Additionally, it has some interaction with `vector_length` that needed
to be encoded as well. This patch implements it.

show more ...


# cb6a02ab 05-Dec-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Implement 'worker' clause for combined constructs

This is very similar to 'gang', except with fewer restrictions, and only an
interaction with 'num_workers', plus disallowing 'gang' and 'w

[OpenACC] Implement 'worker' clause for combined constructs

This is very similar to 'gang', except with fewer restrictions, and only an
interaction with 'num_workers', plus disallowing 'gang' and 'worker' in
its associated statement. This patch implements this, the same as how
'gang' implemented it.

show more ...


# 3a4b9f38 04-Dec-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Implement 'gang' clause for Combined Constructs

This one is a bit complicated, as it has some interesting interactions,
as 'gang' Sema is required to look at its containing compute constru

[OpenACC] Implement 'gang' clause for Combined Constructs

This one is a bit complicated, as it has some interesting interactions,
as 'gang' Sema is required to look at its containing compute construct.
Except in the case of a combined construct, they are the same. This
resulted in a large refactor of the checking code for CheckGangExpr,
plus some additional work on the diagnostics for its interaction with
'num_gangs' and 'vector'/'worker'.

show more ...


# eb257fe3 03-Dec-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Enable 3 more clauses for combined constructs.

'num_gangs', 'num_workers', and 'vector_length' are similar to
eachother, and are all the same implementation as for compute
constructs, so t

[OpenACC] Enable 3 more clauses for combined constructs.

'num_gangs', 'num_workers', and 'vector_length' are similar to
eachother, and are all the same implementation as for compute
constructs, so this patch just enables them and adds the necessary
testing to ensure they work correctly. These will get more complicated
when they get combined with 'gang', 'worker', 'vector' and 'reduction',
but those restrictions will be implemented when those clauses are
enabled.

show more ...


Revision tags: llvmorg-19.1.5
# 0aa78927 02-Dec-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Implement 'tile' for combined constructs

Like collapse, this clause has only mild changes that need to be made.
Most of the associated work for the RAII container was already done
previous

[OpenACC] Implement 'tile' for combined constructs

Like collapse, this clause has only mild changes that need to be made.
Most of the associated work for the RAII container was already done
previously, so this is mostly just updating the diagnostics to properly
emit the right construct.

show more ...


# 0aef005c 02-Dec-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Implement 'collapse' for combined constructs.

Most of the restrictions on 'collapse' involve the contents of the loop,
so this extends enforcement of all of that to all combined construct

[OpenACC] Implement 'collapse' for combined constructs.

Most of the restrictions on 'collapse' involve the contents of the loop,
so this extends enforcement of all of that to all combined construct
loops, and alters the diagnostics to better reflect the construct it is
associated with.

show more ...


# 1f2aeef9 02-Dec-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Enable copy/create clauses for combined constructs

This is the last set of 'no op' changes, and are all incredibly similar,
so they are being done together. They work the exact same for c

[OpenACC] Enable copy/create clauses for combined constructs

This is the last set of 'no op' changes, and are all incredibly similar,
so they are being done together. They work the exact same for combined
constructs as they do for compute constructs, so this adds tests and
enables them.

show more ...


# 8c1bd979 27-Nov-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Expose 'no_create' clause in combined constructs

Once again, not much work besides ensuring they are supposed to work the
same.


# bbbaeb55 27-Nov-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Enable 'attach' clause for combined constructs

Once again, this clause has the same implementation for compute
constructs as combined, so this adds the tests and enables it.


# 969b7658 27-Nov-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Enable 'wait' for combined constructs

Once again a situation where the combined and compute do the exact same
thing as far as Sema/AST/etc is concerned, so this patch adds tests and
enable

[OpenACC] Enable 'wait' for combined constructs

Once again a situation where the combined and compute do the exact same
thing as far as Sema/AST/etc is concerned, so this patch adds tests and
enables it.

show more ...


# 8d6c73cb 27-Nov-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] enable 'deviceptr' for combined constructs.

This is another clause whose implementation is identical for combined
constructs as with compute constructs, so this adds tests and enables
it.


# 78c70246 26-Nov-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Implement 'present' for combined constructs.

This is another clause where the parsing does all the required
enforcement besides the construct it appertains to, so this patch
removes the re

[OpenACC] Implement 'present' for combined constructs.

This is another clause where the parsing does all the required
enforcement besides the construct it appertains to, so this patch
removes the restriction and adds sufficient test coverage for combined
constructs.

show more ...


Revision tags: llvmorg-19.1.4
# 1b44c3a1 14-Nov-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] enable 'async' clause for combined constructs

No additional work required over what we did for other constructs, so
this is just adding the tests and enabling the clauses.


# 1cd981a5 14-Nov-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Implement private/firstprivate for combined constructs

This is another pair of clauses where the work is already done from
previous constructs, so this just has to allow them and include t

[OpenACC] Implement private/firstprivate for combined constructs

This is another pair of clauses where the work is already done from
previous constructs, so this just has to allow them and include tests
for them. This patch adds testing, does a few little cleanup bits on the
clause checking, and enables these.

show more ...


# b7f7e645 13-Nov-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Implement 'default' clause for Combined Constructs

This clause takes one of two fixed values, and can apply to all three of
the combined constructs. Tests/etc are all exactly like the comp

[OpenACC] Implement 'default' clause for Combined Constructs

This clause takes one of two fixed values, and can apply to all three of
the combined constructs. Tests/etc are all exactly like the compute
constructs, so committing them all here.

show more ...


# 95fa5f39 13-Nov-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Fix ast-print test that failed due to copy/paste error


# fa20b5d3 13-Nov-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] 'if' and 'self' clause implementation for Combined Constructs

These two are identical to how they work for compute constructs, so this
patch enables them and ensures there is sufficient te

[OpenACC] 'if' and 'self' clause implementation for Combined Constructs

These two are identical to how they work for compute constructs, so this
patch enables them and ensures there is sufficient testing.

show more ...


# 6b2de10c 13-Nov-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] implement 'device_type' for combined constructs

This clause is pretty small/doesn't do much semantic-analysis-wise, , other than
have two spellings and disallow certain clauses after it. H

[OpenACC] implement 'device_type' for combined constructs

This clause is pretty small/doesn't do much semantic-analysis-wise, , other than
have two spellings and disallow certain clauses after it. However, as
most of those aren't implemented yet, the diagnostic is left as a TODO.

show more ...


# 3169a38d 13-Nov-2024 erichkeane <ekeane@nvidia.com>

[OpenACC] Add ast-print test for combined constructs