diff options
author | Paulo Matos <pmatos@igalia.com> | 2022-09-27 09:08:43 +0200 |
---|---|---|
committer | Paulo Matos <pmatos@igalia.com> | 2022-09-27 09:16:30 +0200 |
commit | 1bd1a4407058c4a159eee6f6956f3bcabeb0d7f8 (patch) | |
tree | 862713c43e97dc98968a2fbecd7a81737aa1a4fe /llvm/lib/Transforms/Utils/LoopUnroll.cpp | |
parent | 4b1833d7d98e07e3b43d1265c86e9ed8d457e0f2 (diff) | |
download | llvm-1bd1a4407058c4a159eee6f6956f3bcabeb0d7f8.zip llvm-1bd1a4407058c4a159eee6f6956f3bcabeb0d7f8.tar.gz llvm-1bd1a4407058c4a159eee6f6956f3bcabeb0d7f8.tar.bz2 |
[WebAssembly] Use intrinsics for table.get/set instructions
Initial table.get/set implementation would match and lower combinations
of GEP+load/store to table.get/set instructions. However, this is error
prone due to potential combinations of GEP+load/store we don't implement,
and load/store optimizations. By changing the code to using intrinsics, we
avoid both issues and simplify the code.
New builtins implemented:
* @llvm.wasm.table.get.externref
* @llvm.wasm.table.get.funcref
* @llvm.wasm.table.set.externref
* @llvm.wasm.table.set.funcref
Reviewed By: asb, tlively
Differential Revision: https://reviews.llvm.org/D134436
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopUnroll.cpp')
0 files changed, 0 insertions, 0 deletions