Lines Matching defs:CP

116 // Take a CP and assign addresses and sizes to everything. Returns false if the
118 static bool layoutCOFF(COFFParser &CP) {
124 SectionTableStart = sizeof(COFF::header) + CP.Obj.Header.SizeOfOptionalHeader;
125 SectionTableSize = sizeof(COFF::section) * CP.Obj.Sections.size();
130 for (std::vector<COFFYAML::Section>::iterator i = CP.Obj.Sections.begin(),
131 e = CP.Obj.Sections.end();
154 for (std::vector<COFFYAML::Symbol>::iterator i = CP.Obj.Symbols.begin(),
155 e = CP.Obj.Symbols.end();
176 CP.Obj.Header.NumberOfSections = CP.Obj.Sections.size();
177 CP.Obj.Header.NumberOfSymbols = NumberOfSymbols;
178 CP.Obj.Header.PointerToSymbolTable = SymbolTableStart;
180 *reinterpret_cast<support::ulittle32_t *>(&CP.StringTable[0])
181 = CP.StringTable.size();
225 bool writeCOFF(COFFParser &CP, raw_ostream &OS) {
226 OS << binary_le(CP.Obj.Header.Machine)
227 << binary_le(CP.Obj.Header.NumberOfSections)
228 << binary_le(CP.Obj.Header.TimeDateStamp)
229 << binary_le(CP.Obj.Header.PointerToSymbolTable)
230 << binary_le(CP.Obj.Header.NumberOfSymbols)
231 << binary_le(CP.Obj.Header.SizeOfOptionalHeader)
232 << binary_le(CP.Obj.Header.Characteristics);
235 for (std::vector<COFFYAML::Section>::iterator i = CP.Obj.Sections.begin(),
236 e = CP.Obj.Sections.end();
252 for (std::vector<COFFYAML::Symbol>::iterator I = CP.Obj.Symbols.begin(),
253 E = CP.Obj.Symbols.end();
260 for (std::vector<COFFYAML::Section>::iterator i = CP.Obj.Sections.begin(),
261 e = CP.Obj.Sections.end();
275 for (std::vector<COFFYAML::Symbol>::const_iterator i = CP.Obj.Symbols.begin(),
276 e = CP.Obj.Symbols.end();
326 OS.write(&CP.StringTable[0], CP.StringTable.size());
338 COFFParser CP(Doc);
339 if (!CP.parse()) {
344 if (!layoutCOFF(CP)) {
348 if (!writeCOFF(CP, Out)) {