diff options
Diffstat (limited to 'src/wasm-stack.h')
-rw-r--r-- | src/wasm-stack.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/wasm-stack.h b/src/wasm-stack.h index 4b0ffde40..26105ccdc 100644 --- a/src/wasm-stack.h +++ b/src/wasm-stack.h @@ -109,6 +109,7 @@ public: void visitSIMDShuffle(SIMDShuffle* curr); void visitSIMDTernary(SIMDTernary* curr); void visitSIMDShift(SIMDShift* curr); + void visitSIMDLoad(SIMDLoad* curr); void visitMemoryInit(MemoryInit* curr); void visitDataDrop(DataDrop* curr); void visitMemoryCopy(MemoryCopy* curr); @@ -185,6 +186,7 @@ public: void visitSIMDShuffle(SIMDShuffle* curr); void visitSIMDTernary(SIMDTernary* curr); void visitSIMDShift(SIMDShift* curr); + void visitSIMDLoad(SIMDLoad* curr); void visitMemoryInit(MemoryInit* curr); void visitDataDrop(DataDrop* curr); void visitMemoryCopy(MemoryCopy* curr); @@ -588,6 +590,16 @@ void BinaryenIRWriter<SubType>::visitSIMDShift(SIMDShift* curr) { } template<typename SubType> +void BinaryenIRWriter<SubType>::visitSIMDLoad(SIMDLoad* curr) { + visit(curr->ptr); + if (curr->type == unreachable) { + emitUnreachable(); + return; + } + emit(curr); +} + +template<typename SubType> void BinaryenIRWriter<SubType>::visitMemoryInit(MemoryInit* curr) { visit(curr->dest); visit(curr->offset); |