| 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);
|
|
|