Skip to content

Cranelift: leak in remove_constant_phis #5451

Open
@elliottt

Description

@elliottt

The remove_constants_phis replaces the arugments of an instruction without freeing the original list.

func.dfg[edge.inst].put_value_list(new_actuals);

One option for fixing this would be to build up the list to replace it as a vector, and then clearing and re-initializing the old arguments list. However, the remove_constant_phis pass might not be necessary at all after @jameysharp's refactoring of the SSA builder, so it would be good to investigate whether it's applying at all to start with.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugIncorrect behavior in the current implementation that needs fixingcraneliftIssues related to the Cranelift code generator

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions