mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 20:23:11 +01:00
e7084f2810
LLVM does not have valid assembly backends for atomicrmw on local memory. However, as this memory is thread local, we should be able to lower this to the relevant load/store. Differential Revision: https://reviews.llvm.org/D98650
23 lines
733 B
C++
23 lines
733 B
C++
//===-- NVPTXAtomicLower.h - Lower atomics of local memory ------*- C++ -*-===//
|
|
//
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
//
|
|
// Lower atomics of local memory to simple load/stores
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef LLVM_LIB_TARGET_NVPTX_NVPTXATOMICLOWER_H
|
|
#define LLVM_LIB_TARGET_NVPTX_NVPTXATOMICLOWER_H
|
|
|
|
namespace llvm {
|
|
class FunctionPass;
|
|
|
|
extern FunctionPass *createNVPTXAtomicLowerPass();
|
|
} // end namespace llvm
|
|
|
|
#endif
|