| ... | @@ -602,6 +602,8 @@ inline fn negXi2(comptime T: type, a: T) T { | ... | @@ -602,6 +602,8 @@ inline fn negXi2(comptime T: type, a: T) T { |
| 602 | } | 602 | } |
| 603 | | 603 | |
| 604 | fn memsetSmallPowerOf2(d: [*]u8, b: u8, comptime size: usize) void { | 604 | fn memsetSmallPowerOf2(d: [*]u8, b: u8, comptime size: usize) void { |
| | 605 | @disableIntrinsics(); |
| | 606 | |
| 605 | if (size > @sizeOf(usize)) { | 607 | if (size > @sizeOf(usize)) { |
| 606 | d[0..size].* = @splat(b); | 608 | d[0..size].* = @splat(b); |
| 607 | } else { | 609 | } else { |
| ... | @@ -619,6 +621,8 @@ fn shortMemset( | ... | @@ -619,6 +621,8 @@ fn shortMemset( |
| 619 | b: u8, | 621 | b: u8, |
| 620 | len: usize, | 622 | len: usize, |
| 621 | ) void { | 623 | ) void { |
| | 624 | @disableIntrinsics(); |
| | 625 | |
| 622 | if (log_min + 1 != log_max) { | 626 | if (log_min + 1 != log_max) { |
| 623 | const mid = (log_min + log_max) / 2; | 627 | const mid = (log_min + log_max) / 2; |
| 624 | if (len > 1 << mid) { | 628 | if (len > 1 << mid) { |
| ... | @@ -635,6 +639,8 @@ fn shortMemset( | ... | @@ -635,6 +639,8 @@ fn shortMemset( |
| 635 | } | 639 | } |
| 636 | | 640 | |
| 637 | fn fastMemset(dest: ?[*]u8, c: c_int, len: usize) callconv(.c) ?[*]u8 { | 641 | fn fastMemset(dest: ?[*]u8, c: c_int, len: usize) callconv(.c) ?[*]u8 { |
| | 642 | @disableIntrinsics(); |
| | 643 | |
| 638 | const b: u8 = @truncate(@as(c_uint, @bitCast(c))); | 644 | const b: u8 = @truncate(@as(c_uint, @bitCast(c))); |
| 639 | const n = std.simd.suggestVectorLength(u8) orelse @sizeOf(usize); | 645 | const n = std.simd.suggestVectorLength(u8) orelse @sizeOf(usize); |
| 640 | | 646 | |
| ... | @@ -668,6 +674,8 @@ fn fastMemset(dest: ?[*]u8, c: c_int, len: usize) callconv(.c) ?[*]u8 { | ... | @@ -668,6 +674,8 @@ fn fastMemset(dest: ?[*]u8, c: c_int, len: usize) callconv(.c) ?[*]u8 { |
| 668 | } | 674 | } |
| 669 | | 675 | |
| 670 | fn smallMemset(dest: ?[*]u8, c: c_int, len: usize) callconv(.c) ?[*]u8 { | 676 | fn smallMemset(dest: ?[*]u8, c: c_int, len: usize) callconv(.c) ?[*]u8 { |
| | 677 | @disableIntrinsics(); |
| | 678 | |
| 671 | const b: u8 = @truncate(@as(c_uint, @bitCast(c))); | 679 | const b: u8 = @truncate(@as(c_uint, @bitCast(c))); |
| 672 | | 680 | |
| 673 | if (len != 0) { | 681 | if (len != 0) { |