Skip to content

LLVMMemoryCopyFillLowering: table.copy/table.fill guards never called (uppercase Visit) #8292

@sumleo

Description

@sumleo

The visitTableCopy and visitTableFill guards in LLVMMemoryCopyFillLowering are defined with an uppercase V:

void VisitTableCopy(TableCopy* curr) {
    Fatal() << "table.copy instruction found...";
}
void VisitTableFill(TableCopy* curr) {   // also wrong param type
    Fatal() << "table.fill instruction found...";
}

The PostWalker dispatches to lowercase visit* methods, so these are never called. The pass silently ignores table.copy and table.fill instructions instead of producing the intended error.

There is also a wrong parameter type: VisitTableFill takes TableCopy* instead of TableFill*.

The working visitor methods in the same file (visitMemoryCopy, visitMemoryFill) use lowercase v.

Fix: #8291

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