Index: wasm/InputChunks.cpp =================================================================== --- wasm/InputChunks.cpp +++ wasm/InputChunks.cpp @@ -195,6 +195,7 @@ return encodeSLEB128(static_cast(Value), Buf); case R_WEBASSEMBLY_TABLE_INDEX_I32: case R_WEBASSEMBLY_MEMORY_ADDR_I32: + write32le(Buf, Value); return 4; default: llvm_unreachable("unknown relocation type"); @@ -279,7 +280,7 @@ const uint8_t *FuncStart = SecStart + getInputSectionOffset(); const uint8_t *End = FuncStart + Function->Size; uint32_t Count; - decodeULEB128(Buf, &Count); + decodeULEB128(FuncStart, &Count); FuncStart += Count; DEBUG(dbgs() << "write func: " << getName() << "\n");