Lines Matching refs:sections

170         IMAGE_SECTION_HEADER sections[1];
180 obj.coffHead.NumberOfSections = sizeof(obj.sections) / sizeof(IMAGE_SECTION_HEADER);
215 memcpy(&obj.sections[0].Name[0], secname.c_str(), secname.size());
216 obj.sections[0].Misc.VirtualSize = 0;
217 obj.sections[0].VirtualAddress = 0;
218 obj.sections[0].SizeOfRawData = (uint32_t)size_of_section; // sizeof the data on disk.
219 obj.sections[0].PointerToRawData =
221 obj.sections[0].PointerToLinenumbers = 0;
222 obj.sections[0].NumberOfRelocations = 0;
223 obj.sections[0].NumberOfLinenumbers = 0;
224 obj.sections[0].Characteristics = IMAGE_SCN_CNT_INITIALIZED_DATA | IMAGE_SCN_ALIGN_4BYTES | IMAGE_SCN_MEM_READ;
248 // write sections..
251 size_t padcount = obj.sections[0].PointerToRawData - p;
268 o.head.e_shentsize = sizeof(o.sections[0]);
269 o.head.e_shnum = sizeof(o.sections) / sizeof(o.sections[0]);
296 o.sections[2].sh_name = add_string(".symtab");
297 o.sections[2].sh_type = SHT_SYMTAB;
298 o.sections[2].sh_offset = offsetof(decltype(o), symbs); // sizeof(o) + size_of_section + stringtable_size;
299 o.sections[2].sh_addralign = 8;
300 o.sections[2].sh_size = sizeof(o.symbs);
301 o.sections[2].sh_entsize = sizeof(o.symbs[0]);
302 o.sections[2].sh_link = 1;
303 o.sections[2].sh_info = 1; // index of first non-local symbol.
310 o.sections[3].sh_name = add_string(sec);
311 o.sections[3].sh_type = SHT_PROGBITS;
312 o.sections[3].sh_flags = SHF_ALLOC | SHF_MERGE;
313 o.sections[3].sh_offset = sizeof(o);
314 o.sections[3].sh_addralign = 8;
315 o.sections[3].sh_size = static_cast<Elf32_Word>(size_of_section);
317 o.sections[1].sh_name = add_string(".strtab");
318 o.sections[1].sh_type = SHT_STRTAB;
319 o.sections[1].sh_offset = static_cast<Elf32_Off>(sizeof(o) + size_of_section);
320 o.sections[1].sh_addralign = 1;
321 o.sections[1].sh_size = static_cast<Elf32_Word>(dst - stringtable);
330 fwrite(stringtable, (size_t)o.sections[1].sh_size, 1, e);
668 Elf32_Shdr sections[4]{};
673 Elf64_Shdr sections[4]{};