1
1
mirror of https://github.com/rui314/mold.git synced 2024-09-21 18:08:01 +03:00

[Mach-O] wip

This commit is contained in:
Rui Ueyama 2021-10-23 21:10:24 +09:00
parent e66be5010f
commit 1a70f94dcd
3 changed files with 4 additions and 5 deletions

View File

@ -106,7 +106,7 @@ static void export_symbols(Context &ctx) {
syms.push_back(sym); syms.push_back(sym);
for (Symbol *sym : syms) for (Symbol *sym : syms)
ctx.stubs.add(ctx, *sym, ((DylibFile *)sym->file)->dylib_idx, 0); ctx.stubs.add(ctx, *sym, ((DylibFile *)sym->file)->dylib_idx);
} }
static i64 assign_offsets(Context &ctx) { static i64 assign_offsets(Context &ctx) {

View File

@ -387,7 +387,7 @@ class StubsSection : public Chunk {
public: public:
StubsSection(); StubsSection();
void add(Context &ctx, Symbol &sym, i64 dylib_idx, i64 flags); void add(Context &ctx, Symbol &sym, i64 dylib_idx);
void copy_buf(Context &ctx) override; void copy_buf(Context &ctx) override;
static constexpr i64 ENTRY_SIZE = 6; static constexpr i64 ENTRY_SIZE = 6;
@ -395,7 +395,6 @@ public:
struct Entry { struct Entry {
Symbol &sym; Symbol &sym;
i64 dylib_idx; i64 dylib_idx;
i64 flags;
}; };
std::vector<Entry> entries; std::vector<Entry> entries;

View File

@ -625,11 +625,11 @@ StubsSection::StubsSection() {
hdr.reserved2 = 6; hdr.reserved2 = 6;
} }
void StubsSection::add(Context &ctx, Symbol &sym, i64 dylib_idx, i64 flags) { void StubsSection::add(Context &ctx, Symbol &sym, i64 dylib_idx) {
assert(sym.stub_idx == -1); assert(sym.stub_idx == -1);
sym.stub_idx = entries.size(); sym.stub_idx = entries.size();
entries.push_back({sym, dylib_idx, flags}); entries.push_back({sym, dylib_idx});
i64 nsyms = entries.size(); i64 nsyms = entries.size();
ctx.stubs.hdr.size = nsyms * StubsSection::ENTRY_SIZE; ctx.stubs.hdr.size = nsyms * StubsSection::ENTRY_SIZE;