aboutsummaryrefslogtreecommitdiff
path: root/src/link/MachO/Atom.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/link/MachO/Atom.zig')
-rw-r--r--src/link/MachO/Atom.zig9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/link/MachO/Atom.zig b/src/link/MachO/Atom.zig
index 5da72886be..25cbe6ca64 100644
--- a/src/link/MachO/Atom.zig
+++ b/src/link/MachO/Atom.zig
@@ -383,6 +383,15 @@ pub fn free(self: *Atom, macho_file: *MachO) void {
self.* = .{};
}
+pub fn addReloc(self: *Atom, macho_file: *MachO, reloc: Relocation) !void {
+ const gpa = macho_file.base.comp.gpa;
+ const file = self.getFile(macho_file);
+ assert(file == .zig_object);
+ const rels = &file.zig_object.relocs.items[self.relocs.pos];
+ try rels.append(gpa, reloc);
+ self.relocs.len += 1;
+}
+
pub fn freeRelocs(self: *Atom, macho_file: *MachO) void {
self.getFile(macho_file).zig_object.freeAtomRelocs(self.*);
self.relocs.len = 0;