mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-12 13:30:51 +00:00
[SymbolSize] Skip sorting by index, just assign by index.
No functional change intended. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@240961 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
4c6f0a7bc9
commit
59a20ece84
@ -31,10 +31,6 @@ static int compareAddress(const SymEntry *A, const SymEntry *B) {
|
|||||||
return A->Address - B->Address;
|
return A->Address - B->Address;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int compareNumber(const SymEntry *A, const SymEntry *B) {
|
|
||||||
return A->Number - B->Number;
|
|
||||||
}
|
|
||||||
|
|
||||||
static unsigned getSectionID(const ObjectFile &O, SectionRef Sec) {
|
static unsigned getSectionID(const ObjectFile &O, SectionRef Sec) {
|
||||||
if (auto *M = dyn_cast<MachOObjectFile>(&O))
|
if (auto *M = dyn_cast<MachOObjectFile>(&O))
|
||||||
return M->getSectionID(Sec);
|
return M->getSectionID(Sec);
|
||||||
@ -93,12 +89,12 @@ llvm::object::computeSymbolSizes(const ObjectFile &O) {
|
|||||||
P.Address = Size;
|
P.Address = Size;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Put back in the original order and copy the result
|
// Assign the sorted symbols in the original order.
|
||||||
array_pod_sort(Addresses.begin(), Addresses.end(), compareNumber);
|
Ret.resize(SymNum);
|
||||||
for (SymEntry &P : Addresses) {
|
for (SymEntry &P : Addresses) {
|
||||||
if (P.I == O.symbol_end())
|
if (P.I == O.symbol_end())
|
||||||
continue;
|
continue;
|
||||||
Ret.push_back({*P.I, P.Address});
|
Ret[P.Number] = {*P.I, P.Address};
|
||||||
}
|
}
|
||||||
return Ret;
|
return Ret;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user