aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/AMDGPU/AMDGPUMachineModuleInfo.cpp
diff options
context:
space:
mode:
authorKonstantin Zhuravlyov <kzhuravl_dev@outlook.com>2017-07-21 21:19:23 +0000
committerKonstantin Zhuravlyov <kzhuravl_dev@outlook.com>2017-07-21 21:19:23 +0000
commite9a5a77ee3e861ec2b1a5fefc55d86fbb1252fcb (patch)
treece79358dd96f9306a3e7d57b8b936d3793d7b651 /llvm/lib/Target/AMDGPU/AMDGPUMachineModuleInfo.cpp
parente0094ce22ec584ee32b61358307ecbfd8f92ec0a (diff)
downloadllvm-e9a5a77ee3e861ec2b1a5fefc55d86fbb1252fcb.zip
llvm-e9a5a77ee3e861ec2b1a5fefc55d86fbb1252fcb.tar.gz
llvm-e9a5a77ee3e861ec2b1a5fefc55d86fbb1252fcb.tar.bz2
AMDGPU: Implement memory model
llvm-svn: 308781
Diffstat (limited to 'llvm/lib/Target/AMDGPU/AMDGPUMachineModuleInfo.cpp')
-rw-r--r--llvm/lib/Target/AMDGPU/AMDGPUMachineModuleInfo.cpp29
1 files changed, 29 insertions, 0 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUMachineModuleInfo.cpp b/llvm/lib/Target/AMDGPU/AMDGPUMachineModuleInfo.cpp
new file mode 100644
index 0000000..3164140
--- /dev/null
+++ b/llvm/lib/Target/AMDGPU/AMDGPUMachineModuleInfo.cpp
@@ -0,0 +1,29 @@
+//===--- AMDGPUMachineModuleInfo.cpp ----------------------------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+/// \file
+/// \brief AMDGPU Machine Module Info.
+///
+//
+//===----------------------------------------------------------------------===//
+
+#include "AMDGPUMachineModuleInfo.h"
+#include "llvm/IR/Module.h"
+
+namespace llvm {
+
+AMDGPUMachineModuleInfo::AMDGPUMachineModuleInfo(const MachineModuleInfo &MMI)
+ : MachineModuleInfoELF(MMI) {
+ LLVMContext &CTX = MMI.getModule()->getContext();
+ AgentSSID = CTX.getOrInsertSyncScopeID("agent");
+ WorkgroupSSID = CTX.getOrInsertSyncScopeID("workgroup");
+ WavefrontSSID = CTX.getOrInsertSyncScopeID("wavefront");
+}
+
+} // end namespace llvm