Home | History | Annotate | Download | only in windows

Lines Matching full:mapping

33 // OMAP information is a lightweight description of a mapping between two
44 // the lengths associated with a mapping are implicit as the distance between
84 // mapping to an original address, and looking up a symbol), but the symbol
146 // Used for sorting and searching through a Mapping.
264 void FillInRemovedLengths(Mapping* mapping) {
265 assert(mapping != NULL);
285 for (size_t find = 0; find < mapping->size(); ++find) {
289 assert(mapping->at(find - 1).rva_original <=
290 mapping->at(find).rva_original);
294 if (rva_front < mapping->at(find).rva_original) {
297 DWORD removed = mapping->at(find).rva_original - rva_front;
299 if (mapping->at(fill).rva_original + mapping->at(fill).length !=
306 mapping->at(fill).removed = removed;
311 rva_front = mapping->at(find).rva_original + mapping->at(find).length;
315 // Builds a unified view of the mapping between the original and transformed
317 void BuildMapping(const OmapData& omap_data, Mapping* mapping) {
318 assert(mapping != NULL);
320 mapping->clear();
344 mapping->push_back(mr);
382 if (!mapping->empty()) {
383 MappedRange& prev_mr = mapping->back();
392 mapping->push_back(mr);
396 std::sort(mapping->begin(), mapping->end(), MappedRangeOriginalLess);
400 FillInRemovedLengths(mapping);
408 if (image_map->mapping.size() == 0)
411 const Mapping& mapping = image_map->mapping;
416 for (size_t i = 0; i < mapping.size(); ++i) {
417 endpoints.insert(mapping[i].rva_original);
418 endpoints.insert(mapping[i].rva_original +
419 mapping[i].length +
420 mapping[i].removed);
424 // mapping.
429 eim[i].index = mapping.size();
437 for (size_t i = 0; i < mapping.size(); ++i) {
438 EndpointIndex ei1 = { mapping[i].rva_original, 0 };
442 EndpointIndex ei2 = { mapping[i].rva_original + mapping[i].length +
443 mapping[i].removed, 0 };
577 BuildMapping(omap_data, &image_map->mapping);
586 const Mapping& map = image_map.mapping;
625 Mapping::const_iterator it2 = std::lower_bound(
631 Mapping temp_map;