Estimated hours taken: 2
Branches: main
Improve the testing of loop invariant hoisting.
tests/hard_coded/Mercury.options:
Ensure that we compile the tests of loop invariant hoisting
with the loop invariant hoisting optimization enabled, and with
`--trace-optimized' so that it stays enabled even in debugging grades.
tests/hard_coded/loop_inv_test.m:
tests/hard_coded/loop_inv_test.inp:
tests/hard_coded/loop_inv_test.exp:
Add a new test of loop invariant hoisting -- one that our
current implementation actually passes.
tests/hard_coded/Mmakefile:
Enable the new test.
tests/hard_coded/Mmakefile:
tests/hard_coded/loop_inv_test0.m:
tests/hard_coded/loop_inv_test1.m:
tests/hard_coded/loop_inv_test2.m:
Add some comments, explaining why we don't pass these test cases.
tests/hard_coded/loop_inv_test1.m:
Modify the second test in this test case, so that it is not
testing the same thing as loop_inv_test0.m.