loki.ir.tests.test_control_flow
Functions
|
Verify that conditional bodies and else-bodies are tuples of |
|
|
|
|
|
|
|
|
|
Test the use of inline conditionals. |
|
Test labeled loops with continue statement. |
|
Test basic loops and reductions with fixed sizes. |
|
Test basic loops and reductions with passed sizes. |
|
Test a while loop with a logical expression as condition. |
|
Test unbounded loops. |
|
|
|
|
|
|
|
|
|
- test_loop_nest_fixed(tmp_path, frontend)
Test basic loops and reductions with fixed sizes.
- Basic loop nest loop:
out1(i, j) = in1(i, j) + in2(i, j)
- Basic reduction:
out2(j) = out2(j) + in1(i, j) * in1(i, j)
- test_loop_nest_variable(tmp_path, frontend)
Test basic loops and reductions with passed sizes.
- Basic loop nest loop:
out1(i, j) = in1(i, j) + in2(i, j)
- Basic reduction:
out2(j) = out2(j) + in1(i, j) * in1(i, j)
- test_loop_scalar_logical_expr(tmp_path, frontend)
Test a while loop with a logical expression as condition.
- test_loop_unbounded(tmp_path, frontend)
Test unbounded loops.
- test_loop_labeled_continue(tmp_path, frontend)
Test labeled loops with continue statement.
Note that this does not get represented 1:1 as we always insert ENDDO statements in fgen. But this does not harm the outcome as the resulting loop behaviour will still be the same.
- test_inline_conditionals(tmp_path, frontend)
Test the use of inline conditionals.
- test_multi_body_conditionals(tmp_path, frontend)
- test_goto_stmt(tmp_path, frontend)
- test_select_case(tmp_path, frontend)
- test_select_case_nested(tmp_path, frontend)
- test_cycle_stmt(tmp_path, frontend)
- test_conditional_bodies(frontend)
Verify that conditional bodies and else-bodies are tuples of
Node
- test_conditional_else_body_return(frontend)
- test_single_line_forall_stmt(tmp_path, frontend)
- test_single_line_forall_masked_stmt(tmp_path, frontend)
- test_multi_line_forall_construct(tmp_path, frontend)
- test_cray_pointers(frontend)