AMDGPUMachineFunction.cpp revision b21ab43cfc3fa0dacf5c95f04e58b6d804b59a16
1#include "AMDGPUMachineFunction.h" 2#include "AMDGPU.h" 3#include "llvm/IR/Attributes.h" 4#include "llvm/IR/Function.h" 5using namespace llvm; 6 7static const char *const ShaderTypeAttribute = "ShaderType"; 8 9AMDGPUMachineFunction::AMDGPUMachineFunction(const MachineFunction &MF) : 10 MachineFunctionInfo() { 11 ShaderType = ShaderType::COMPUTE; 12 LDSSize = 0; 13 AttributeSet Set = MF.getFunction()->getAttributes(); 14 Attribute A = Set.getAttribute(AttributeSet::FunctionIndex, 15 ShaderTypeAttribute); 16 17 if (A.isStringAttribute()) { 18 StringRef Str = A.getValueAsString(); 19 if (Str.getAsInteger(0, ShaderType)) 20 llvm_unreachable("Can't parse shader type!"); 21 } 22} 23