/Users/buildslave/jenkins/sharedspace/clang-stage2-coverage-R@2/llvm/lib/Target/AMDGPU/AMDGPUTargetObjectFile.cpp
Line | Count | Source |
1 | | //===-- AMDGPUHSATargetObjectFile.cpp - AMDGPU Object Files ---------------===// |
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 | | |
10 | | #include "AMDGPUTargetObjectFile.h" |
11 | | #include "AMDGPU.h" |
12 | | #include "AMDGPUTargetMachine.h" |
13 | | #include "Utils/AMDGPUBaseInfo.h" |
14 | | #include "llvm/BinaryFormat/ELF.h" |
15 | | #include "llvm/MC/MCContext.h" |
16 | | #include "llvm/MC/MCSectionELF.h" |
17 | | |
18 | | using namespace llvm; |
19 | | |
20 | | //===----------------------------------------------------------------------===// |
21 | | // Generic Object File |
22 | | //===----------------------------------------------------------------------===// |
23 | | |
24 | | MCSection *AMDGPUTargetObjectFile::SelectSectionForGlobal( |
25 | 17.1k | const GlobalObject *GO, SectionKind Kind, const TargetMachine &TM) const { |
26 | 17.1k | auto AS = static_cast<const AMDGPUTargetMachine*>(&TM)->getAMDGPUAS(); |
27 | 17.1k | if (Kind.isReadOnly() && 17.1k AMDGPU::isReadOnlySegment(GO, AS)37 && |
28 | 37 | AMDGPU::shouldEmitConstantsToTextSection(TM.getTargetTriple())) |
29 | 33 | return TextSection; |
30 | 17.1k | |
31 | 17.1k | return TargetLoweringObjectFileELF::SelectSectionForGlobal(GO, Kind, TM); |
32 | 17.1k | } |