From 6261c1373168b265047db5704d9d0fd5f2e458f2 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 26 Apr 2023 13:57:08 -0700 Subject: update codebase to use `@memset` and `@memcpy` --- lib/std/segmented_list.zig | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) (limited to 'lib/std/segmented_list.zig') diff --git a/lib/std/segmented_list.zig b/lib/std/segmented_list.zig index 7c0a27b5b7..172fe4e7c3 100644 --- a/lib/std/segmented_list.zig +++ b/lib/std/segmented_list.zig @@ -230,7 +230,7 @@ pub fn SegmentedList(comptime T: type, comptime prealloc_item_count: usize) type allocator.free(new_dynamic_segments); } else { // Good thing we allocated that new memory slice. - mem.copy([*]T, new_dynamic_segments, self.dynamic_segments[0..new_cap_shelf_count]); + @memcpy(new_dynamic_segments, self.dynamic_segments[0..new_cap_shelf_count]); allocator.free(self.dynamic_segments); self.dynamic_segments = new_dynamic_segments; } @@ -248,24 +248,21 @@ pub fn SegmentedList(comptime T: type, comptime prealloc_item_count: usize) type var i = start; if (end <= prealloc_item_count) { - mem.copy(T, dest[i - start ..], self.prealloc_segment[i..end]); + const src = self.prealloc_segment[i..end]; + @memcpy(dest[i - start ..][0..src.len], src); return; } else if (i < prealloc_item_count) { - mem.copy(T, dest[i - start ..], self.prealloc_segment[i..]); + const src = self.prealloc_segment[i..]; + @memcpy(dest[i - start ..][0..src.len], src); i = prealloc_item_count; } while (i < end) { const shelf_index = shelfIndex(i); const copy_start = boxIndex(i, shelf_index); - const copy_end = std.math.min(shelfSize(shelf_index), copy_start + end - i); - - mem.copy( - T, - dest[i - start ..], - self.dynamic_segments[shelf_index][copy_start..copy_end], - ); - + const copy_end = @min(shelfSize(shelf_index), copy_start + end - i); + const src = self.dynamic_segments[shelf_index][copy_start..copy_end]; + @memcpy(dest[i - start ..][0..src.len], src); i += (copy_end - copy_start); } } @@ -498,11 +495,11 @@ fn testSegmentedList(comptime prealloc: usize) !void { control[@intCast(usize, i)] = i + 1; } - mem.set(i32, dest[0..], 0); + @memset(dest[0..], 0); list.writeToSlice(dest[0..], 0); try testing.expect(mem.eql(i32, control[0..], dest[0..])); - mem.set(i32, dest[0..], 0); + @memset(dest[0..], 0); list.writeToSlice(dest[50..], 50); try testing.expect(mem.eql(i32, control[50..], dest[50..])); } -- cgit v1.2.3