Index: src/wasm/wasm-module-builder.h |
diff --git a/src/wasm/wasm-module-builder.h b/src/wasm/wasm-module-builder.h |
index 915de43383bc0d05c51be49a769a37bfef0cee46..dcaf6c8e86c5bdfc8ff3a9ca11179b5c4796ac15 100644 |
--- a/src/wasm/wasm-module-builder.h |
+++ b/src/wasm/wasm-module-builder.h |
@@ -126,6 +126,7 @@ class V8_EXPORT_PRIVATE WasmFunctionBuilder : public ZoneObject { |
void EmitWithU8(WasmOpcode opcode, const byte immediate); |
void EmitWithU8U8(WasmOpcode opcode, const byte imm1, const byte imm2); |
void EmitWithVarInt(WasmOpcode opcode, uint32_t immediate); |
+ void EmitDirectCallIndex(uint32_t index); |
void SetExported(); |
void SetName(const char* name, int name_length); |
@@ -141,6 +142,12 @@ class V8_EXPORT_PRIVATE WasmFunctionBuilder : public ZoneObject { |
explicit WasmFunctionBuilder(WasmModuleBuilder* builder); |
friend class WasmModuleBuilder; |
friend class WasmTemporary; |
+ |
+ struct DirectCallIndex { |
+ size_t offset; |
+ uint32_t direct_index; |
+ }; |
+ |
WasmModuleBuilder* builder_; |
LocalDeclEncoder locals_; |
uint32_t signature_index_; |
@@ -152,6 +159,7 @@ class V8_EXPORT_PRIVATE WasmFunctionBuilder : public ZoneObject { |
ZoneVector<uint32_t> i64_temps_; |
ZoneVector<uint32_t> f32_temps_; |
ZoneVector<uint32_t> f64_temps_; |
+ ZoneVector<DirectCallIndex> direct_calls_; |
}; |
class WasmTemporary { |