| ... | @@ -92,6 +92,7 @@ fn collectRoots(roots: *std.AutoHashMap(*Atom, void), macho_file: *MachO) !void | ... | @@ -92,6 +92,7 @@ fn collectRoots(roots: *std.AutoHashMap(*Atom, void), macho_file: *MachO) !void |
| 92 | const source_sect = object.getSourceSection(source_sym.n_sect - 1); | 92 | const source_sect = object.getSourceSection(source_sym.n_sect - 1); |
| 93 | const is_gc_root = blk: { | 93 | const is_gc_root = blk: { |
| 94 | if (source_sect.isDontDeadStrip()) break :blk true; | 94 | if (source_sect.isDontDeadStrip()) break :blk true; |
| | 95 | if (mem.eql(u8, "__StaticInit", source_sect.sectName())) break :blk true; |
| 95 | switch (source_sect.type_()) { | 96 | switch (source_sect.type_()) { |
| 96 | macho.S_MOD_INIT_FUNC_POINTERS, | 97 | macho.S_MOD_INIT_FUNC_POINTERS, |
| 97 | macho.S_MOD_TERM_FUNC_POINTERS, | 98 | macho.S_MOD_TERM_FUNC_POINTERS, |