Estimated hours taken: 5
Fix a bug where cse_detection failed to hoist a common deconstruction for
a one-armed switch out where switch_detection expected it to, due to a
call getting in the way. This resulted in switch_detection not finding
a switch necessary to prove determinism correctness.
compiler/switch_detection.m:
compiler/cse_detection.m:
Make both modules use the same code to find deconstructions of
non-local variables of disjunctions.
tests/valid/switch_detection_bug2.m:
Test case, taken from samples/diff.