OLD | NEW |
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_COMPILER_WASM_COMPILER_H_ | 5 #ifndef V8_COMPILER_WASM_COMPILER_H_ |
6 #define V8_COMPILER_WASM_COMPILER_H_ | 6 #define V8_COMPILER_WASM_COMPILER_H_ |
7 | 7 |
8 // Clients of this interface shouldn't depend on lots of compiler internals. | 8 // Clients of this interface shouldn't depend on lots of compiler internals. |
9 // Do not include anything from src/compiler here! | 9 // Do not include anything from src/compiler here! |
10 #include "src/compiler.h" | 10 #include "src/compiler.h" |
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
227 | 227 |
228 // Internal helper methods. | 228 // Internal helper methods. |
229 JSGraph* jsgraph() { return jsgraph_; } | 229 JSGraph* jsgraph() { return jsgraph_; } |
230 Graph* graph(); | 230 Graph* graph(); |
231 | 231 |
232 Node* String(const char* string); | 232 Node* String(const char* string); |
233 Node* MemBuffer(uint32_t offset); | 233 Node* MemBuffer(uint32_t offset); |
234 void BoundsCheckMem(MachineType memtype, Node* index, uint32_t offset, | 234 void BoundsCheckMem(MachineType memtype, Node* index, uint32_t offset, |
235 wasm::WasmCodePosition position); | 235 wasm::WasmCodePosition position); |
236 | 236 |
237 MachineType GetTypeForUnalignedAccess(uint32_t alignment, | |
238 bool signExtend = false); | |
239 | |
240 Node* GetUnalignedLoadOffsetNode(Node* baseOffset, int numberOfBytes, | |
241 int stride, int current); | |
242 | |
243 Node* BuildUnalignedLoad(wasm::LocalType type, MachineType memtype, | |
244 Node* index, uint32_t offset, uint32_t alignment); | |
245 Node* GetUnalignedStoreOffsetNode(Node* baseOffset, int numberOfBytes, | |
246 int stride, int current); | |
247 Node* BuildUnalignedStore(MachineType memtype, Node* index, uint32_t offset, | |
248 uint32_t alignment, Node* val); | |
249 | |
250 Node* BuildChangeEndianness(Node* node, MachineType type, | 237 Node* BuildChangeEndianness(Node* node, MachineType type, |
251 wasm::LocalType wasmtype = wasm::kAstStmt); | 238 wasm::LocalType wasmtype = wasm::kAstStmt); |
252 | 239 |
253 Node* MaskShiftCount32(Node* node); | 240 Node* MaskShiftCount32(Node* node); |
254 Node* MaskShiftCount64(Node* node); | 241 Node* MaskShiftCount64(Node* node); |
255 | 242 |
256 Node* BuildCCall(MachineSignature* sig, Node** args); | 243 Node* BuildCCall(MachineSignature* sig, Node** args); |
257 Node* BuildWasmCall(wasm::FunctionSig* sig, Node** args, | 244 Node* BuildWasmCall(wasm::FunctionSig* sig, Node** args, |
258 wasm::WasmCodePosition position); | 245 wasm::WasmCodePosition position); |
259 | 246 |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
363 } | 350 } |
364 | 351 |
365 // Simd helper functions | 352 // Simd helper functions |
366 MachineOperatorBuilder* simd(); | 353 MachineOperatorBuilder* simd(); |
367 }; | 354 }; |
368 } // namespace compiler | 355 } // namespace compiler |
369 } // namespace internal | 356 } // namespace internal |
370 } // namespace v8 | 357 } // namespace v8 |
371 | 358 |
372 #endif // V8_COMPILER_WASM_COMPILER_H_ | 359 #endif // V8_COMPILER_WASM_COMPILER_H_ |
OLD | NEW |