Lines Matching defs:GroupSec
1514 Error ELFBuilder<ELFT>::initGroupSection(GroupSection *GroupSec) {
1515 if (GroupSec->Align % sizeof(ELF::Elf32_Word) != 0)
1517 "invalid alignment " + Twine(GroupSec->Align) +
1518 " of group section '" + GroupSec->Name + "'");
1520 if (GroupSec->Link != SHN_UNDEF) {
1522 GroupSec->Link,
1523 "link field value '" + Twine(GroupSec->Link) + "' in section '" +
1524 GroupSec->Name + "' is invalid",
1525 "link field value '" + Twine(GroupSec->Link) + "' in section '" +
1526 GroupSec->Name + "' is not a symbol table");
1530 Expected<Symbol *> Sym = (*SymTab)->getSymbolByIndex(GroupSec->Info);
1533 "info field value '" + Twine(GroupSec->Info) +
1534 "' in section '" + GroupSec->Name +
1536 GroupSec->setSymTab(*SymTab);
1537 GroupSec->setSymbol(*Sym);
1539 if (GroupSec->Contents.size() % sizeof(ELF::Elf32_Word) ||
1540 GroupSec->Contents.empty())
1542 "the content of the section " + GroupSec->Name +
1545 reinterpret_cast<const ELF::Elf32_Word *>(GroupSec->Contents.data());
1547 Word + GroupSec->Contents.size() / sizeof(ELF::Elf32_Word);
1548 GroupSec->setFlagWord(endian::read32<ELFT::Endianness>(Word++));
1553 GroupSec->Name + "' is invalid");
1557 GroupSec->addMember(*Sec);
1911 } else if (auto GroupSec = dyn_cast<GroupSection>(&Sec)) {
1912 if (Error Err = initGroupSection(GroupSec))
2214 auto GroupSec = cast<GroupSection>(Sec.get());
2215 return !llvm::all_of(GroupSec->members(), ToRemove);