diff options
author | Shilei Tian <i@tianshilei.me> | 2022-05-20 17:23:34 -0400 |
---|---|---|
committer | Shilei Tian <i@tianshilei.me> | 2022-05-20 17:23:53 -0400 |
commit | ff60a0a364b49f1b52883b032f719548685081bd (patch) | |
tree | a32ba081648e4ab8a65e6628fc39aa66619046e8 /llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp | |
parent | de066267254acb97424bea008195d47de689aca4 (diff) | |
download | llvm-ff60a0a364b49f1b52883b032f719548685081bd.zip llvm-ff60a0a364b49f1b52883b032f719548685081bd.tar.gz llvm-ff60a0a364b49f1b52883b032f719548685081bd.tar.bz2 |
[LLVM] Add a check if should cast atomic operations to integer type
Currently for atomic load, store, and rmw instructions, as long as the
operand is floating-point value, they are casted to integer. Nowadays many
targets can actually support part of atomic operations with floating-point
operands. For example, NVPTX supports atomic load and store of floating-point
values. This patch adds a series interface functions `shouldCastAtomicXXXInIR`,
and the default implementations are same as what we currently do. Later for
targets can have their specialization.
Reviewed By: jdoerfert
Differential Revision: https://reviews.llvm.org/D125652
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp')
0 files changed, 0 insertions, 0 deletions