Lines Matching full:kind
204 getExplicitSectionGlobal(const GlobalValue *GV, SectionKind Kind,
209 Kind = getELFKindForNamedSection(SectionName, Kind);
212 getELFSectionType(SectionName, Kind),
213 getELFSectionFlags(Kind), Kind);
218 static const char *getSectionPrefixForGlobal(SectionKind Kind) {
219 if (Kind.isText()) return ".text.";
220 if (Kind.isReadOnly()) return ".rodata.";
221 if (Kind.isBSS()) return ".bss.";
223 if (Kind.isThreadData()) return ".tdata.";
224 if (Kind.isThreadBSS()) return ".tbss.";
226 if (Kind.isDataNoRel()) return ".data.";
227 if (Kind.isDataRelLocal()) return ".data.rel.local.";
228 if (Kind.isDataRel()) return ".data.rel.";
229 if (Kind.isReadOnlyWithRelLocal()) return ".data.rel.ro.local.";
231 assert(Kind.isReadOnlyWithRel() && "Unknown section kind");
237 SelectSectionForGlobal(const GlobalValue *GV, SectionKind Kind,
242 if (Kind.isText())
250 !Kind.isCommon()) {
252 Prefix = getSectionPrefixForGlobal(Kind);
258 unsigned Flags = getELFSectionFlags(Kind);
265 getELFSectionType(Name.str(), Kind),
266 Flags, Kind, 0, Group);
269 if (Kind.isText()) return TextSection;
271 if (Kind.isMergeable1ByteCString() ||
272 Kind.isMergeable2ByteCString() ||
273 Kind.isMergeable4ByteCString()) {
282 if (Kind.isMergeable2ByteCString())
284 else if (Kind.isMergeable4ByteCString())
287 assert(Kind.isMergeable1ByteCString() && "unknown string width");
295 Kind);
298 if (Kind.isMergeableConst()) {
299 if (Kind.isMergeableConst4() && MergeableConst4Section)
301 if (Kind.isMergeableConst8() && MergeableConst8Section)
303 if (Kind.isMergeableConst16() && MergeableConst16Section)
308 if (Kind.isReadOnly()) return ReadOnlySection;
310 if (Kind.isThreadData()) return TLSDataSection;
311 if (Kind.isThreadBSS()) return TLSBSSSection;
316 if (Kind.isBSS() || Kind.isCommon()) return BSSSection;
318 if (Kind.isDataNoRel()) return DataSection;
319 if (Kind.isDataRelLocal()) return DataRelLocalSection;
320 if (Kind.isDataRel()) return DataRelSection;
321 if (Kind.isReadOnlyWithRelLocal()) return DataRelROLocalSection;
323 assert(Kind.isReadOnlyWithRel() && "Unknown section kind");
331 getSectionForConstant(SectionKind Kind) const {
332 if (Kind.isMergeableConst4() && MergeableConst4Section)
334 if (Kind.isMergeableConst8() && MergeableConst8Section)
336 if (Kind.isMergeableConst16() && MergeableConst16Section)
338 if (Kind.isReadOnly())
341 if (Kind.isReadOnlyWithRelLocal()) return DataRelROLocalSection;
342 assert(Kind.isReadOnlyWithRel() && "Unknown section kind");
485 getExplicitSectionGlobal(const GlobalValue *GV, SectionKind Kind,
503 getContext().getMachOSection(Segment, Section, TAA, StubSize, Kind);
524 SelectSectionForGlobal(const GlobalValue *GV, SectionKind Kind,
526 if (Kind.isText())
532 if (Kind.isReadOnly())
538 if (Kind.isMergeable1ByteCString() &&
545 if (Kind.isMergeable2ByteCString() && !GV->hasExternalLinkage() &&
549 if (Kind.isMergeableConst()) {
550 if (Kind.isMergeableConst4())
552 if (Kind.isMergeableConst8())
554 if (Kind.isMergeableConst16() && SixteenByteConstantSection)
560 if (Kind.isReadOnly())
565 if (Kind.isReadOnlyWithRel())
570 if (Kind.isBSSExtern())
575 if (Kind.isBSSLocal())
579 if (Kind.isThreadBSS()) return TLSBSSSection;
580 if (Kind.isThreadData()) return TLSDataSection;
587 TargetLoweringObjectFileMachO::getSectionForConstant(SectionKind Kind) const {
590 if (Kind.isDataRel() || Kind.isReadOnlyWithRel())
593 if (Kind.isMergeableConst4())
595 if (Kind.isMergeableConst8())
597 if (Kind.isMergeableConst16() && SixteenByteConstantSection)
721 getExplicitSectionGlobal(const GlobalValue *GV, SectionKind Kind,
724 unsigned Characteristics = getCOFFSectionFlags(Kind);
734 Kind,
738 static const char *getCOFFSectionPrefixForUniqueGlobal(SectionKind Kind) {
739 if (Kind.isText())
741 if (Kind.isBSS ())
743 if (Kind.isThreadLocal()) {
748 if (Kind.isWriteable())
755 SelectSectionForGlobal(const GlobalValue *GV, SectionKind Kind,
761 const char *Prefix = getCOFFSectionPrefixForUniqueGlobal(Kind);
765 unsigned Characteristics = getCOFFSectionFlags(Kind);
770 Kind, COFF::IMAGE_COMDAT_SELECT_ANY);
773 if (Kind.isText())
776 if (Kind.isThreadLocal())