PSyclone icon indicating copy to clipboard operation
PSyclone copied to clipboard

[PSyIR] Single source of truth for validating node descendants?

Open arporter opened this issue 3 years ago • 0 comments

At the moment Transformations have excluded_node_types and Nodes have validate_global_constraints(). When generating code, we also need to check whether we should be putting calls relating to distributed memory (halo exchanges and set-dirty/clean) after a particular region (#450 implemented this for OpenACC and OpenMP).

The question is, could we give RegionDirective nodes a list of excluded_node_types and then specify which RegionDirective a given Transformation inserts? The check on whether to add halo exchanges after a region could then be implemented by checking whether the Region forbids halo exchanges within it.

arporter avatar Jun 13 '22 15:06 arporter