aboutsummaryrefslogtreecommitdiff
path: root/src/libs/netbsd.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2025-08-26 23:09:31 -0700
committerAndrew Kelley <andrew@ziglang.org>2025-08-28 18:30:57 -0700
commit8f4cb4614fa7fe275dff360e9f281cb43b99261a (patch)
tree8f6544f9b41a723d720cbd541740f7511fd17910 /src/libs/netbsd.zig
parent5d7507214d5695842235cf0ad83849c5a2c97664 (diff)
downloadzig-8f4cb4614fa7fe275dff360e9f281cb43b99261a.tar.gz
zig-8f4cb4614fa7fe275dff360e9f281cb43b99261a.zip
compiler: update not to use GenericWriter
Diffstat (limited to 'src/libs/netbsd.zig')
-rw-r--r--src/libs/netbsd.zig45
1 files changed, 21 insertions, 24 deletions
diff --git a/src/libs/netbsd.zig b/src/libs/netbsd.zig
index 04aa4ccfeb..f758f6de7e 100644
--- a/src/libs/netbsd.zig
+++ b/src/libs/netbsd.zig
@@ -460,18 +460,15 @@ pub fn buildSharedObjects(comp: *Compilation, prog_node: std.Progress.Node) anye
for (libs, 0..) |lib, lib_i| {
stubs_asm.shrinkRetainingCapacity(0);
- const stubs_writer = stubs_asm.writer();
-
- try stubs_writer.writeAll(".text\n");
+ try stubs_asm.appendSlice(".text\n");
var sym_i: usize = 0;
- var sym_name_buf = std.array_list.Managed(u8).init(arena);
+ var sym_name_buf: std.Io.Writer.Allocating = .init(arena);
var opt_symbol_name: ?[]const u8 = null;
- var inc_fbs = std.io.fixedBufferStream(metadata.inclusions);
- var inc_reader = inc_fbs.reader();
+ var inc_reader: std.Io.Reader = .fixed(metadata.inclusions);
- const fn_inclusions_len = try inc_reader.readInt(u16, .little);
+ const fn_inclusions_len = try inc_reader.takeInt(u16, .little);
var chosen_ver_index: usize = 255;
var chosen_is_weak: bool = undefined;
@@ -479,17 +476,17 @@ pub fn buildSharedObjects(comp: *Compilation, prog_node: std.Progress.Node) anye
while (sym_i < fn_inclusions_len) : (sym_i += 1) {
const sym_name = opt_symbol_name orelse n: {
sym_name_buf.clearRetainingCapacity();
- try inc_reader.streamUntilDelimiter(sym_name_buf.writer(), 0, null);
+ _ = try inc_reader.streamDelimiter(&sym_name_buf.writer, 0);
- opt_symbol_name = sym_name_buf.items;
+ opt_symbol_name = sym_name_buf.written();
chosen_ver_index = 255;
- break :n sym_name_buf.items;
+ break :n sym_name_buf.written();
};
{
- const targets = try std.leb.readUleb128(u64, inc_reader);
- var lib_index = try inc_reader.readByte();
+ const targets = try inc_reader.takeLeb128(u64);
+ var lib_index = try inc_reader.takeByte();
const is_weak = (lib_index & (1 << 6)) != 0;
const is_terminal = (lib_index & (1 << 7)) != 0;
@@ -502,7 +499,7 @@ pub fn buildSharedObjects(comp: *Compilation, prog_node: std.Progress.Node) anye
((targets & (@as(u64, 1) << @as(u6, @intCast(target_targ_index)))) != 0);
while (true) {
- const byte = try inc_reader.readByte();
+ const byte = try inc_reader.takeByte();
const last = (byte & 0b1000_0000) != 0;
const ver_i = @as(u7, @truncate(byte));
if (ok_lib_and_target and ver_i <= target_ver_index and
@@ -525,7 +522,7 @@ pub fn buildSharedObjects(comp: *Compilation, prog_node: std.Progress.Node) anye
// .globl _Exit
// .type _Exit, %function
// _Exit: .long 0
- try stubs_writer.print(
+ try stubs_asm.print(
\\.balign {d}
\\.{s} {s}
\\.type {s}, %function
@@ -542,9 +539,9 @@ pub fn buildSharedObjects(comp: *Compilation, prog_node: std.Progress.Node) anye
}
}
- try stubs_writer.writeAll(".data\n");
+ try stubs_asm.appendSlice(".data\n");
- const obj_inclusions_len = try inc_reader.readInt(u16, .little);
+ const obj_inclusions_len = try inc_reader.takeInt(u16, .little);
sym_i = 0;
opt_symbol_name = null;
@@ -554,18 +551,18 @@ pub fn buildSharedObjects(comp: *Compilation, prog_node: std.Progress.Node) anye
while (sym_i < obj_inclusions_len) : (sym_i += 1) {
const sym_name = opt_symbol_name orelse n: {
sym_name_buf.clearRetainingCapacity();
- try inc_reader.streamUntilDelimiter(sym_name_buf.writer(), 0, null);
+ _ = try inc_reader.streamDelimiter(&sym_name_buf.writer, 0);
- opt_symbol_name = sym_name_buf.items;
+ opt_symbol_name = sym_name_buf.written();
chosen_ver_index = 255;
- break :n sym_name_buf.items;
+ break :n sym_name_buf.written();
};
{
- const targets = try std.leb.readUleb128(u64, inc_reader);
- const size = try std.leb.readUleb128(u16, inc_reader);
- var lib_index = try inc_reader.readByte();
+ const targets = try inc_reader.takeLeb128(u64);
+ const size = try inc_reader.takeLeb128(u16);
+ var lib_index = try inc_reader.takeByte();
const is_weak = (lib_index & (1 << 6)) != 0;
const is_terminal = (lib_index & (1 << 7)) != 0;
@@ -578,7 +575,7 @@ pub fn buildSharedObjects(comp: *Compilation, prog_node: std.Progress.Node) anye
((targets & (@as(u64, 1) << @as(u6, @intCast(target_targ_index)))) != 0);
while (true) {
- const byte = try inc_reader.readByte();
+ const byte = try inc_reader.takeByte();
const last = (byte & 0b1000_0000) != 0;
const ver_i = @as(u7, @truncate(byte));
if (ok_lib_and_target and ver_i <= target_ver_index and
@@ -603,7 +600,7 @@ pub fn buildSharedObjects(comp: *Compilation, prog_node: std.Progress.Node) anye
// .type malloc_conf, %object
// .size malloc_conf, 4
// malloc_conf: .fill 4, 1, 0
- try stubs_writer.print(
+ try stubs_asm.print(
\\.balign {d}
\\.{s} {s}
\\.type {s}, %object