Index: src/compiler/wasm-compiler.h |
diff --git a/src/compiler/wasm-compiler.h b/src/compiler/wasm-compiler.h |
index f52e559d52930dc089ef5217459b3236100fe9ae..39101e48cbe7002acfe90f17c4226285ca153079 100644 |
--- a/src/compiler/wasm-compiler.h |
+++ b/src/compiler/wasm-compiler.h |
@@ -162,8 +162,10 @@ class WasmGraphBuilder { |
Node* LoadGlobal(uint32_t index); |
Node* StoreGlobal(uint32_t index, Node* val); |
Node* LoadMem(wasm::LocalType type, MachineType memtype, Node* index, |
- uint32_t offset, wasm::WasmCodePosition position); |
- Node* StoreMem(MachineType type, Node* index, uint32_t offset, Node* val, |
+ uint32_t offset, uint32_t alignment, |
+ wasm::WasmCodePosition position); |
+ Node* StoreMem(MachineType type, Node* index, uint32_t offset, |
+ uint32_t alignment, Node* val, |
wasm::WasmCodePosition position); |
static void PrintDebugName(Node* node); |
@@ -214,6 +216,19 @@ class WasmGraphBuilder { |
void BoundsCheckMem(MachineType memtype, Node* index, uint32_t offset, |
wasm::WasmCodePosition position); |
+ MachineType GetTypeForUnalignedAccess(uint32_t alignment, |
+ bool signExtend = false); |
+ |
+ Node* GetUnalignedLoadOffsetNode(Node* baseOffset, int numberOfBytes, |
+ int stride, int current); |
+ |
+ Node* BuildUnalignedLoad(wasm::LocalType type, MachineType memtype, |
+ Node* index, uint32_t offset, uint32_t alignment); |
+ Node* GetUnalignedStoreOffsetNode(Node* baseOffset, int numberOfBytes, |
+ int stride, int current); |
+ Node* BuildUnalignedStore(MachineType memtype, Node* index, uint32_t offset, |
+ uint32_t alignment, Node* val); |
+ |
Node* MaskShiftCount32(Node* node); |
Node* MaskShiftCount64(Node* node); |