Skip to content

7 pre-existing LICM/DCE integration tests fail (loop body not hoisted) — exposed once the Test matrix completes #150

@avrabe

Description

@avrabe

Summary

Seven integration tests in loom-core/tests/optimization_tests.rs fail — not a regression: they fail identically on v1.1.1 (pre-dating the #145/#147 work). They were masked because loom's CI Test matrix never completed: pre-v1.1.2 it was cancelled by the (upstream) Rocq Formal Proofs failure, and on v1.1.2 the #147 inline livelock hung it. The #147 fix (v1.1.3) makes the matrix complete for the first time, surfacing these.

Failing tests

  • test_licm_simple_hoist, test_licm_hoist_constants, test_licm_global_get_invariant, test_licm_non_consecutive_global_get, test_licm_expression_tree_hoisting
  • test_dce_dead_block, test_remove_dead_code_after_return

Symptom

The LICM pass does not hoist loop-invariant code: e.g. test_licm_simple_hoist panics with

Expected loop body to shrink after LICM. Before: 10, After: 10

No verifier revert is logged — the LICM/DCE transform itself is not producing the expected result. (My #145/#147 changes touch inline_functions + the verifier, not LICM/DCE; confirmed unrelated by the v1.1.1 baseline.)

Baseline evidence

# on tag v1.1.1, --features verification:
test test_dce_dead_block ... FAILED
test test_licm_simple_hoist ... FAILED   (Before: 10, After: 10)
test result: FAILED. 0 passed; 2 failed; ...

Why it matters

Now that the matrix completes (v1.1.3), these are real red signals on every PR. Either the LICM/DCE passes regressed long ago, or the test expectations drifted from the passes' actual (conservative) behavior. Needs triage: fix the passes or update the assertions to match intended behavior.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions