Reference Guide  2.5.0
__init__.py
1 # -----------------------------------------------------------------------------
2 # BSD 3-Clause License
3 #
4 # Copyright (c) 2019-2024, Science and Technology Facilities Council.
5 # All rights reserved.
6 #
7 # Redistribution and use in source and binary forms, with or without
8 # modification, are permitted provided that the following conditions are met:
9 #
10 # * Redistributions of source code must retain the above copyright notice, this
11 # list of conditions and the following disclaimer.
12 #
13 # * Redistributions in binary form must reproduce the above copyright notice,
14 # this list of conditions and the following disclaimer in the documentation
15 # and/or other materials provided with the distribution.
16 #
17 # * Neither the name of the copyright holder nor the names of its
18 # contributors may be used to endorse or promote products derived from
19 # this software without specific prior written permission.
20 #
21 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
24 # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
25 # COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
26 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
27 # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
28 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
29 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
31 # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32 # POSSIBILITY OF SUCH DAMAGE.
33 # -----------------------------------------------------------------------------
34 # Author J. Henrichs, Bureau of Meteorology
35 # Modified by: R. W. Ford, STFC Daresbury Lab
36 # A. R. Porter, STFC Daresbury Lab
37 # S. Siso, STFC Daresbury Lab
38 # N. Nobre, STFC Daresbury Lab
39 
40 '''Transformation module, containing all generic (API independent)
41 transformations and base classes.
42 '''
43 
44 # Order of TransformationError is not alphabetical because otherwise it
45 # produces an ImportError due to cyclic dependencies
47  import TransformationError
48 from psyclone.psyir.transformations.acc_update_trans import ACCUpdateTrans
50  AllArrayAccess2LoopTrans
52  ArrayAccess2LoopTrans
54  ArrayRange2LoopTrans
55 from psyclone.psyir.transformations.chunk_loop_trans import ChunkLoopTrans
56 from psyclone.psyir.transformations.extract_trans import ExtractTrans
58  import FoldConditionalReturnExpressionsTrans
60  HoistLocalArraysTrans
62  HoistLoopBoundExprTrans
63 from psyclone.psyir.transformations.hoist_trans import HoistTrans
64 from psyclone.psyir.transformations.inline_trans import InlineTrans
66  Abs2CodeTrans
68  DotProduct2CodeTrans
70  Matmul2CodeTrans
72  Max2CodeTrans
74  Maxval2LoopTrans
76  Min2CodeTrans
78  Minval2LoopTrans
80  Sign2CodeTrans
82  Sum2LoopTrans
83 from psyclone.psyir.transformations.loop_fuse_trans import LoopFuseTrans
84 from psyclone.psyir.transformations.loop_swap_trans import LoopSwapTrans
86  import LoopTiling2DTrans
88 from psyclone.psyir.transformations.nan_test_trans import NanTestTrans
89 from psyclone.psyir.transformations.omp_loop_trans import OMPLoopTrans
90 from psyclone.psyir.transformations.omp_target_trans import OMPTargetTrans
91 from psyclone.psyir.transformations.omp_taskwait_trans import OMPTaskwaitTrans
92 from psyclone.psyir.transformations.omp_task_trans import OMPTaskTrans
94  ParallelLoopTrans
96  Product2LoopTrans
97 from psyclone.psyir.transformations.profile_trans import ProfileTrans
98 from psyclone.psyir.transformations.psy_data_trans import PSyDataTrans
100  import ReadOnlyVerifyTrans
101 from psyclone.psyir.transformations.region_trans import RegionTrans
103  ReplaceInductionVariablesTrans
105  Reference2ArrayRangeTrans
106 
107 
108 # For AutoAPI documentation generation
109 __all__ = ['ACCUpdateTrans',
110  'AllArrayAccess2LoopTrans',
111  'ArrayAccess2LoopTrans',
112  'ArrayRange2LoopTrans',
113  'ChunkLoopTrans',
114  'ExtractTrans',
115  'FoldConditionalReturnExpressionsTrans',
116  'HoistLocalArraysTrans',
117  'HoistLoopBoundExprTrans',
118  'HoistTrans',
119  'InlineTrans',
120  'Abs2CodeTrans',
121  'DotProduct2CodeTrans',
122  'Matmul2CodeTrans',
123  'Max2CodeTrans',
124  'Min2CodeTrans',
125  'Sign2CodeTrans',
126  'Sum2LoopTrans',
127  'LoopFuseTrans',
128  'LoopSwapTrans',
129  'LoopTiling2DTrans',
130  'LoopTrans',
131  'Maxval2LoopTrans',
132  'Minval2LoopTrans',
133  'NanTestTrans',
134  'OMPLoopTrans',
135  'OMPTargetTrans',
136  'OMPTaskTrans',
137  'OMPTaskwaitTrans',
138  'ParallelLoopTrans',
139  'Product2LoopTrans',
140  'ProfileTrans',
141  'PSyDataTrans',
142  'ReadOnlyVerifyTrans',
143  'Reference2ArrayRangeTrans',
144  'RegionTrans',
145  'ReplaceInductionVariablesTrans',
146  'TransformationError']