Lines Matching defs:seg
381 for (OutputSegment *seg : segments) {
382 out.dylinkSec->memAlign = std::max(out.dylinkSec->memAlign, seg->alignment);
383 memoryPtr = alignTo(memoryPtr, 1ULL << seg->alignment);
384 seg->startVA = memoryPtr;
385 log(formatv("mem: {0,-15} offset={1,-8} size={2,-8} align={3}", seg->name,
386 memoryPtr, seg->size, seg->alignment));
388 if (!ctx.arg.relocatable && seg->isTLS()) {
391 setGlobalPtr(tlsSize, seg->size);
395 setGlobalPtr(tlsAlign, int64_t{1} << seg->alignment);
403 memoryPtr += seg->size;
524 static void addStartStopSymbols(const OutputSegment *seg) {
525 StringRef name = seg->name;
529 uint64_t start = seg->startVA;
530 uint64_t stop = start + seg->size;
999 static StringRef getOutputDataSegmentName(const InputChunk &seg) {
1002 if (seg.isTLS())
1005 return seg.name;
1006 if (seg.name.starts_with(".text."))
1008 if (seg.name.starts_with(".data."))
1010 if (seg.name.starts_with(".bss."))
1012 if (seg.name.starts_with(".rodata."))
1014 return seg.name;
1068 for (OutputSegment *seg : segments)
1069 seg->finalizeInputSegments();
1462 for (const OutputSegment *seg : segments)
1463 if (!ctx.arg.sharedMemory || !seg->isTLS())
1464 for (const InputChunk *inSeg : seg->inputSegments)
1492 for (const OutputSegment *seg : segments)
1493 if (seg->isTLS())
1494 for (const InputChunk *inSeg : seg->inputSegments)
1609 for (auto *seg : segments) {
1610 if (seg->name == ".tdata") {
1611 tlsSeg = seg;
1723 for (const OutputSegment *seg : segments) {
1724 addStartStopSymbols(seg);