diff options
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp')
-rw-r--r-- | llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp index 68e4b9c..cb0cdf1 100644 --- a/llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp +++ b/llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp @@ -1182,6 +1182,8 @@ bool WebAssemblyFastISel::selectLoad(const Instruction *I) { const auto *Load = cast<LoadInst>(I); if (Load->isAtomic()) return false; + if (!WebAssembly::isDefaultAddressSpace(Load->getPointerAddressSpace())) + return false; if (!Subtarget->hasSIMD128() && Load->getType()->isVectorTy()) return false; @@ -1240,6 +1242,8 @@ bool WebAssemblyFastISel::selectStore(const Instruction *I) { const auto *Store = cast<StoreInst>(I); if (Store->isAtomic()) return false; + if (!WebAssembly::isDefaultAddressSpace(Store->getPointerAddressSpace())) + return false; if (!Subtarget->hasSIMD128() && Store->getValueOperand()->getType()->isVectorTy()) return false; |