Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6)

Side by Side Diff: src/wasm/ast-decoder.h

Issue 2137993003: [wasm] Adding feature to JIT a wasm function at runtime and hook up the compiled code into the indi… (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Fixing unit test- Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_WASM_AST_DECODER_H_ 5 #ifndef V8_WASM_AST_DECODER_H_
6 #define V8_WASM_AST_DECODER_H_ 6 #define V8_WASM_AST_DECODER_H_
7 7
8 #include "src/signature.h" 8 #include "src/signature.h"
9 #include "src/wasm/decoder.h" 9 #include "src/wasm/decoder.h"
10 #include "src/wasm/wasm-opcodes.h" 10 #include "src/wasm/wasm-opcodes.h"
(...skipping 132 matching lines...) Expand 10 before | Expand all | Expand 10 after
143 inline CallImportOperand(Decoder* decoder, const byte* pc) { 143 inline CallImportOperand(Decoder* decoder, const byte* pc) {
144 unsigned len1 = 0; 144 unsigned len1 = 0;
145 unsigned len2 = 0; 145 unsigned len2 = 0;
146 arity = decoder->checked_read_u32v(pc, 1, &len1, "argument count"); 146 arity = decoder->checked_read_u32v(pc, 1, &len1, "argument count");
147 index = decoder->checked_read_u32v(pc, 1 + len1, &len2, "import index"); 147 index = decoder->checked_read_u32v(pc, 1 + len1, &len2, "import index");
148 length = len1 + len2; 148 length = len1 + len2;
149 sig = nullptr; 149 sig = nullptr;
150 } 150 }
151 }; 151 };
152 152
153 struct JITSingleFunctionOperand {
154 uint32_t sig_index;
155 FunctionSig* sig;
156 unsigned length;
157 inline JITSingleFunctionOperand(Decoder* decoder, const byte* pc) {
158 sig_index = decoder->checked_read_u32v(pc, 1, &length, "signature index");
159 sig = nullptr;
160 }
161 };
162
153 struct BranchTableOperand { 163 struct BranchTableOperand {
154 uint32_t arity; 164 uint32_t arity;
155 uint32_t table_count; 165 uint32_t table_count;
156 const byte* table; 166 const byte* table;
157 unsigned length; 167 unsigned length;
158 inline BranchTableOperand(Decoder* decoder, const byte* pc) { 168 inline BranchTableOperand(Decoder* decoder, const byte* pc) {
159 unsigned len1 = 0; 169 unsigned len1 = 0;
160 unsigned len2 = 0; 170 unsigned len2 = 0;
161 arity = decoder->checked_read_u32v(pc, 1, &len1, "argument count"); 171 arity = decoder->checked_read_u32v(pc, 1, &len1, "argument count");
162 table_count = 172 table_count =
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after
332 } 342 }
333 343
334 bool has_next() { return pc_ < end_; } 344 bool has_next() { return pc_ < end_; }
335 }; 345 };
336 346
337 } // namespace wasm 347 } // namespace wasm
338 } // namespace internal 348 } // namespace internal
339 } // namespace v8 349 } // namespace v8
340 350
341 #endif // V8_WASM_AST_DECODER_H_ 351 #endif // V8_WASM_AST_DECODER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698