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
14using namespace llvm;
15
16AMDGPUSIDevice::AMDGPUSIDevice(AMDGPUSubtarget *ST)
17  : AMDGPUEvergreenDevice(ST)
18{
19}
20AMDGPUSIDevice::~AMDGPUSIDevice()
21{
22}
23
24size_t
25AMDGPUSIDevice::getMaxLDSSize() const
26{
27  if (usesHardware(AMDGPUDeviceInfo::LocalMem)) {
28    return MAX_LDS_SIZE_900;
29  } else {
30    return 0;
31  }
32}
33
34uint32_t
35AMDGPUSIDevice::getGeneration() const
36{
37  return AMDGPUDeviceInfo::HD7XXX;
38}
39
40std::string
41AMDGPUSIDevice::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