Lines Matching defs:idata
288 IdataContents idata;
866 // libraries that consist of object files, with section chunks for the .idata$*
869 // symbol, and one trailer object. In order for the .idata tables/lists to
870 // be formed correctly, the section chunks within each .idata$* section need
876 // Make sure all .idata$* section chunks are mapped as RDATA in order to
877 // be sorted into the same sections as our own synthesized .idata chunks.
878 fixPartialSectionChars(".idata", rdata);
881 // Sort all .idata$* chunks, grouping chunks from the same library,
885 if (!pSec->name.starts_with(".idata"))
911 // Add generated idata chunks, for imported symbols and DLLs, and a
912 // terminator in .idata$2.
915 idata.create(ctx);
917 // Add the .idata content in the right section groups, to allow
927 add(".idata$2", idata.dirs);
928 add(".idata$4", idata.lookups);
929 add(".idata$5", idata.addresses);
930 if (!idata.hints.empty())
931 add(".idata$6", idata.hints);
932 add(".idata$7", idata.dllNames);
933 if (!idata.auxIat.empty())
934 add(".idata$9", idata.auxIat);
935 if (!idata.auxIatCopy.empty())
936 add(".idata$a", idata.auxIatCopy);
947 if (PartialSection *importAddresses = findPartialSection(".idata$5", rdata)) {
962 if (PartialSection *auxIat = findPartialSection(".idata$9", rdata)) {
982 if (PartialSection *importDirs = findPartialSection(".idata$2", rdata)) {
989 if (PartialSection *importAddresses = findPartialSection(".idata$5", rdata)) {
1076 idataSec = createSection(".idata", data | r);
1111 if (!idata.empty())
1146 (pSec->name == ".idata$5" || pSec->name == ".idata$9"))
1249 // Create .idata section for the DLL-imported symbol table.
1275 idata.add(impSym);
2383 idata.auxIat.empty() ? nullptr
2384 : idata.auxIat.front());
2389 idata.auxIatCopy.empty() ? nullptr : idata.auxIatCopy.front());