mirror of
https://codeberg.org/ziglang/zig.git
synced 2025-12-06 13:54:21 +00:00
debug: expose module debug info deinitialization
Before this commit, you could use readElfDebugInfo independently with
one catch: the data is not freed since the deinitialization functions
for ModuleDebugInfo are private. This change makes them public so the
users of such function and similar can free the memory after the
debug symbols have been used.
This commit is contained in:
parent
516eb33442
commit
9c05810be6
1 changed files with 4 additions and 4 deletions
|
|
@ -1949,7 +1949,7 @@ pub const ModuleDebugInfo = switch (native_os) {
|
|||
addr_table: std.StringHashMap(u64),
|
||||
};
|
||||
|
||||
fn deinit(self: *@This(), allocator: mem.Allocator) void {
|
||||
pub fn deinit(self: *@This(), allocator: mem.Allocator) void {
|
||||
var it = self.ofiles.iterator();
|
||||
while (it.next()) |entry| {
|
||||
const ofile = entry.value_ptr;
|
||||
|
|
@ -2148,7 +2148,7 @@ pub const ModuleDebugInfo = switch (native_os) {
|
|||
/// Only used if debug_data is .pdb
|
||||
coff_section_headers: []coff.SectionHeader,
|
||||
|
||||
fn deinit(self: *@This(), allocator: mem.Allocator) void {
|
||||
pub fn deinit(self: *@This(), allocator: mem.Allocator) void {
|
||||
self.debug_data.deinit(allocator);
|
||||
if (self.debug_data == .pdb) {
|
||||
allocator.free(self.coff_section_headers);
|
||||
|
|
@ -2221,7 +2221,7 @@ pub const ModuleDebugInfo = switch (native_os) {
|
|||
mapped_memory: []align(mem.page_size) const u8,
|
||||
external_mapped_memory: ?[]align(mem.page_size) const u8,
|
||||
|
||||
fn deinit(self: *@This(), allocator: mem.Allocator) void {
|
||||
pub fn deinit(self: *@This(), allocator: mem.Allocator) void {
|
||||
self.dwarf.deinit(allocator);
|
||||
os.munmap(self.mapped_memory);
|
||||
if (self.external_mapped_memory) |m| os.munmap(m);
|
||||
|
|
@ -2240,7 +2240,7 @@ pub const ModuleDebugInfo = switch (native_os) {
|
|||
}
|
||||
},
|
||||
.wasi => struct {
|
||||
fn deinit(self: *@This(), allocator: mem.Allocator) void {
|
||||
pub fn deinit(self: *@This(), allocator: mem.Allocator) void {
|
||||
_ = self;
|
||||
_ = allocator;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue