summaryrefslogtreecommitdiff
path: root/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp
diff options
context:
space:
mode:
authorDerek Schuff <dschuff@google.com>2017-10-05 21:18:42 +0000
committerDerek Schuff <dschuff@google.com>2017-10-05 21:18:42 +0000
commit365cb32dfede399fb95996ba7acb684d1e10d738 (patch)
treeb0d6b36310eb3d1ed03a5be453ed09752229f58e /lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp
parentb1eb7bb6ec1a90b6b7f774098e309a93beda2bd4 (diff)
[WebAssembly] Add the rest of the atomic loads
Add extending loads and constant offset patterns A bit more refactoring of the tablegen to make the patterns fairly nice and uniform between the regular and atomic loads. Differential Revision: https://reviews.llvm.org/D38523 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@315022 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp')
-rw-r--r--lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp b/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp
index a418f65e0ee..c4b9e915b41 100644
--- a/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp
+++ b/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp
@@ -97,6 +97,12 @@ bool WebAssemblySetP2AlignOperands::runOnMachineFunction(MachineFunction &MF) {
case WebAssembly::LOAD32_S_I64:
case WebAssembly::LOAD32_U_I64:
case WebAssembly::ATOMIC_LOAD_I32:
+ case WebAssembly::ATOMIC_LOAD8_U_I32:
+ case WebAssembly::ATOMIC_LOAD16_U_I32:
+ case WebAssembly::ATOMIC_LOAD_I64:
+ case WebAssembly::ATOMIC_LOAD8_U_I64:
+ case WebAssembly::ATOMIC_LOAD16_U_I64:
+ case WebAssembly::ATOMIC_LOAD32_U_I64:
RewriteP2Align(MI, WebAssembly::LoadP2AlignOperandNo);
break;
case WebAssembly::STORE_I32: