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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions