Lines Matching defs:MLC

29     const MachO::macho_load_command &MLC = LC.MachOLoadCommand;
30 auto cmd = MLC.load_command_data.cmd;
68 void MachOLayoutBuilder::updateDySymTab(MachO::macho_load_command &MLC) {
69 assert(MLC.load_command_data.cmd == MachO::LC_DYSYMTAB);
102 MLC.dysymtab_command_data.ilocalsym = 0;
103 MLC.dysymtab_command_data.nlocalsym = NumLocalSymbols;
104 MLC.dysymtab_command_data.iextdefsym = NumLocalSymbols;
105 MLC.dysymtab_command_data.nextdefsym = NumExtDefSymbols;
106 MLC.dysymtab_command_data.iundefsym = NumLocalSymbols + NumExtDefSymbols;
107 MLC.dysymtab_command_data.nundefsym =
125 auto &MLC = LC.MachOLoadCommand;
129 switch (MLC.load_command_data.cmd) {
131 SegmentVmAddr = MLC.segment_command_data.vmaddr;
132 SegmentVmSize = MLC.segment_command_data.vmsize;
133 Segname = StringRef(MLC.segment_command_data.segname,
134 strnlen(MLC.segment_command_data.segname,
135 sizeof(MLC.segment_command_data.segname)));
138 SegmentVmAddr = MLC.segment_command_64_data.vmaddr;
139 SegmentVmSize = MLC.segment_command_64_data.vmsize;
140 Segname = StringRef(MLC.segment_command_64_data.segname,
141 strnlen(MLC.segment_command_64_data.segname,
142 sizeof(MLC.segment_command_64_data.segname)));
151 LinkEditLoadCommand = &MLC;
195 switch (MLC.load_command_data.cmd) {
197 MLC.segment_command_data.cmdsize =
200 MLC.segment_command_data.nsects = LC.Sections.size();
201 MLC.segment_command_data.fileoff = SegOffset;
202 MLC.segment_command_data.vmsize = VMSize;
203 MLC.segment_command_data.filesize = SegFileSize;
206 MLC.segment_command_64_data.cmdsize =
209 MLC.segment_command_64_data.nsects = LC.Sections.size();
210 MLC.segment_command_64_data.fileoff = SegOffset;
211 MLC.segment_command_64_data.vmsize = VMSize;
212 MLC.segment_command_64_data.filesize = SegFileSize;
325 MachO::macho_load_command *MLC = LinkEditLoadCommand;
328 MLC->segment_command_data.cmdsize = sizeof(MachO::segment_command);
329 MLC->segment_command_data.fileoff = StartOfLinkEdit;
330 MLC->segment_command_data.vmsize = alignTo(LinkEditSize, PageSize);
331 MLC->segment_command_data.filesize = LinkEditSize;
334 MLC->segment_command_64_data.cmdsize = sizeof(MachO::segment_command_64);
335 MLC->segment_command_64_data.fileoff = StartOfLinkEdit;
336 MLC->segment_command_64_data.vmsize = alignTo(LinkEditSize, PageSize);
337 MLC->segment_command_64_data.filesize = LinkEditSize;
343 auto &MLC = LC.MachOLoadCommand;
344 auto cmd = MLC.load_command_data.cmd;
347 MLC.linkedit_data_command_data.dataoff = StartOfCodeSignature;
348 MLC.linkedit_data_command_data.datasize = CodeSignatureSize;
351 MLC.linkedit_data_command_data.dataoff = StartOfDylibCodeSignDRs;
352 MLC.linkedit_data_command_data.datasize = O.DylibCodeSignDRs.Data.size();
355 MLC.symtab_command_data.symoff = StartOfSymbols;
356 MLC.symtab_command_data.nsyms = O.SymTable.Symbols.size();
357 MLC.symtab_command_data.stroff = StartOfSymbolStrings;
358 MLC.symtab_command_data.strsize = StrTableBuilder.getSize();
361 if (MLC.dysymtab_command_data.ntoc != 0 ||
362 MLC.dysymtab_command_data.nmodtab != 0 ||
363 MLC.dysymtab_command_data.nextrefsyms != 0 ||
364 MLC.dysymtab_command_data.nlocrel != 0 ||
365 MLC.dysymtab_command_data.nextrel != 0)
368 MLC.dysymtab_command_data.indirectsymoff =
370 MLC.dysymtab_command_data.nindirectsyms =
372 updateDySymTab(MLC);
376 MLC.linkedit_data_command_data.dataoff = StartOfDataInCode;
377 MLC.linkedit_data_command_data.datasize = O.DataInCode.Data.size();
380 MLC.linkedit_data_command_data.dataoff = StartOfLinkerOptimizationHint;
381 MLC.linkedit_data_command_data.datasize =
385 MLC.linkedit_data_command_data.dataoff = StartOfFunctionStarts;
386 MLC.linkedit_data_command_data.datasize = O.FunctionStarts.Data.size();
389 MLC.linkedit_data_command_data.dataoff = StartOfChainedFixups;
390 MLC.linkedit_data_command_data.datasize = O.ChainedFixups.Data.size();
393 MLC.linkedit_data_command_data.dataoff = StartOfDyldExportsTrie;
394 MLC.linkedit_data_command_data.datasize = DyldExportsTrieSize;
398 MLC.dyld_info_command_data.rebase_off =
400 MLC.dyld_info_command_data.rebase_size = O.Rebases.Opcodes.size();
401 MLC.dyld_info_command_data.bind_off =
403 MLC.dyld_info_command_data.bind_size = O.Binds.Opcodes.size();
404 MLC.dyld_info_command_data.weak_bind_off =
406 MLC.dyld_info_command_data.weak_bind_size = O.WeakBinds.Opcodes.size();
407 MLC.dyld_info_command_data.lazy_bind_off =
409 MLC.dyld_info_command_data.lazy_bind_size = O.LazyBinds.Opcodes.size();
410 MLC.dyld_info_command_data.export_off =
412 MLC.dyld_info_command_data.export_size = DyldInfoExportsTrieSize;