diff options
author | Derek Schuff <dschuff@google.com> | 2017-10-05 21:18:42 +0000 |
---|---|---|
committer | Derek Schuff <dschuff@google.com> | 2017-10-05 21:18:42 +0000 |
commit | 885dc592973ceaef288958e838a9aa923646a3d1 (patch) | |
tree | f29eddde35422f3cd45a8dabbc6cd6105fd59b64 /llvm/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp | |
parent | 7ac2db6a489f3f8e588589a69164882df7973d34 (diff) | |
download | llvm-885dc592973ceaef288958e838a9aa923646a3d1.zip llvm-885dc592973ceaef288958e838a9aa923646a3d1.tar.gz llvm-885dc592973ceaef288958e838a9aa923646a3d1.tar.bz2 |
[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
llvm-svn: 315022
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp')
-rw-r--r-- | llvm/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp b/llvm/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp index a418f65..c4b9e91 100644 --- a/llvm/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp +++ b/llvm/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: |