1044eb2f6SDimitry Andric //===--- AMDGPUMachineModuleInfo.cpp ----------------------------*- C++ -*-===// 2044eb2f6SDimitry Andric // 3e6d15924SDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4e6d15924SDimitry Andric // See https://llvm.org/LICENSE.txt for license information. 5e6d15924SDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6044eb2f6SDimitry Andric // 7044eb2f6SDimitry Andric //===----------------------------------------------------------------------===// 8044eb2f6SDimitry Andric // 9044eb2f6SDimitry Andric /// \file 10eb11fae6SDimitry Andric /// AMDGPU Machine Module Info. 11044eb2f6SDimitry Andric /// 12044eb2f6SDimitry Andric // 13044eb2f6SDimitry Andric //===----------------------------------------------------------------------===// 14044eb2f6SDimitry Andric 15044eb2f6SDimitry Andric #include "AMDGPUMachineModuleInfo.h" 16ac9a064cSDimitry Andric #include "llvm/IR/Module.h" 17145449b1SDimitry Andric #include "llvm/MC/MCSymbol.h" 18044eb2f6SDimitry Andric 19044eb2f6SDimitry Andric namespace llvm { 20044eb2f6SDimitry Andric AMDGPUMachineModuleInfo(const MachineModuleInfo & MMI)21044eb2f6SDimitry AndricAMDGPUMachineModuleInfo::AMDGPUMachineModuleInfo(const MachineModuleInfo &MMI) 22044eb2f6SDimitry Andric : MachineModuleInfoELF(MMI) { 23044eb2f6SDimitry Andric LLVMContext &CTX = MMI.getModule()->getContext(); 24044eb2f6SDimitry Andric AgentSSID = CTX.getOrInsertSyncScopeID("agent"); 25044eb2f6SDimitry Andric WorkgroupSSID = CTX.getOrInsertSyncScopeID("workgroup"); 26044eb2f6SDimitry Andric WavefrontSSID = CTX.getOrInsertSyncScopeID("wavefront"); 27e6d15924SDimitry Andric SystemOneAddressSpaceSSID = 28e6d15924SDimitry Andric CTX.getOrInsertSyncScopeID("one-as"); 29e6d15924SDimitry Andric AgentOneAddressSpaceSSID = 30e6d15924SDimitry Andric CTX.getOrInsertSyncScopeID("agent-one-as"); 31e6d15924SDimitry Andric WorkgroupOneAddressSpaceSSID = 32e6d15924SDimitry Andric CTX.getOrInsertSyncScopeID("workgroup-one-as"); 33e6d15924SDimitry Andric WavefrontOneAddressSpaceSSID = 34e6d15924SDimitry Andric CTX.getOrInsertSyncScopeID("wavefront-one-as"); 35e6d15924SDimitry Andric SingleThreadOneAddressSpaceSSID = 36e6d15924SDimitry Andric CTX.getOrInsertSyncScopeID("singlethread-one-as"); 37044eb2f6SDimitry Andric } 38044eb2f6SDimitry Andric 39044eb2f6SDimitry Andric } // end namespace llvm 40