示例#1
0
void RuntimeDyldImpl::resolveRelocationList(const RelocationList &Relocs,
                                            uint64_t Value) {
  for (unsigned i = 0, e = Relocs.size(); i != e; ++i) {
    const RelocationEntry &RE = Relocs[i];
    // Ignore relocations for sections that were not loaded
    if (Sections[RE.SectionID].Address == 0)
      continue;
    resolveRelocation(RE, Value);
  }
}
/**
Function to get import size
@return import size
@internalComponent
@released
*/
PLUINT32 ElfImports::GetImportSize(){

	PLUINT32	aSize = 0;

	ImportMap::iterator aItr = iImports.begin();
	RelocationList aList;

	while(aItr != iImports.end()) {
		aList = ((*aItr).second);
		aSize += aList.size();
		aItr++;
	}
	return aSize;
}
示例#3
0
void RuntimeDyldImpl::resolveRelocationList(const RelocationList &Relocs,
                                            uint64_t Value) {
  for (unsigned i = 0, e = Relocs.size(); i != e; ++i) {
    resolveRelocationEntry(Relocs[i], Value);
  }
}