1 //===-- AMDILSIDevice.cpp - Device Info for Southern Islands GPUs ---------===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //==-----------------------------------------------------------------------===// 9 #include "AMDILSIDevice.h" 10 #include "AMDILEvergreenDevice.h" 11 #include "AMDILNIDevice.h" 12 #include "AMDGPUSubtarget.h" 13 14 using namespace llvm; 15 16 AMDGPUSIDevice::AMDGPUSIDevice(AMDGPUSubtarget *ST) 17 : AMDGPUEvergreenDevice(ST) 18 { 19 } 20 AMDGPUSIDevice::~AMDGPUSIDevice() 21 { 22 } 23 24 size_t 25 AMDGPUSIDevice::getMaxLDSSize() const 26 { 27 if (usesHardware(AMDGPUDeviceInfo::LocalMem)) { 28 return MAX_LDS_SIZE_900; 29 } else { 30 return 0; 31 } 32 } 33 34 uint32_t 35 AMDGPUSIDevice::getGeneration() const 36 { 37 return AMDGPUDeviceInfo::HD7XXX; 38 } 39 40 std::string 41 AMDGPUSIDevice::getDataLayout() const 42 { 43 return std::string("e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16" 44 "-i32:32:32-i64:64:64-f32:32:32-f64:64:64-f80:32:32" 45 "-v16:16:16-v24:32:32-v32:32:32-v48:64:64-v64:64:64" 46 "-v96:128:128-v128:128:128-v192:256:256-v256:256:256" 47 "-v512:512:512-v1024:1024:1024-v2048:2048:2048" 48 "-n8:16:32:64"); 49 } 50