Index: src/assembler.h |
diff --git a/src/assembler.h b/src/assembler.h |
index 353abdbbc163000fb8175d523c6d5950a7d59d76..88a5e2962b2c3d631dfc8d21216c90e9d63723b4 100644 |
--- a/src/assembler.h |
+++ b/src/assembler.h |
@@ -421,7 +421,7 @@ class RelocInfo { |
// This is not an actual reloc mode, but used to encode a long pc jump that |
// cannot be encoded as part of another record. |
PC_JUMP, |
- |
+ WASM_DIRECT_CALL, |
// Pseudo-types |
NUMBER_OF_MODES, |
NONE32, // never recorded 32-bit value |
@@ -529,6 +529,9 @@ class RelocInfo { |
static inline bool IsWasmMemorySizeReference(Mode mode) { |
return mode == WASM_MEMORY_SIZE_REFERENCE; |
} |
+ static inline bool IsWasmDirectCall(Mode mode) { |
+ return mode == WASM_DIRECT_CALL; |
+ } |
static inline int ModeMask(Mode mode) { return 1 << mode; } |
// Accessors |
@@ -557,6 +560,8 @@ class RelocInfo { |
Address wasm_memory_reference(); |
uint32_t wasm_memory_size_reference(); |
+ uint32_t wasm_function_index(); |
+ |
void update_wasm_memory_reference( |
Address old_base, Address new_base, uint32_t old_size, uint32_t new_size, |
ICacheFlushMode icache_flush_mode = SKIP_ICACHE_FLUSH); |
@@ -665,6 +670,7 @@ class RelocInfo { |
#endif |
static const int kCodeTargetMask = (1 << (LAST_CODE_ENUM + 1)) - 1; |
+ static const int kWasmDirectCallMask = 1 << WASM_DIRECT_CALL; |
static const int kPositionMask = 1 << POSITION | 1 << STATEMENT_POSITION; |
static const int kDataMask = |
(1 << CODE_TARGET_WITH_ID) | kPositionMask | (1 << COMMENT); |