add memrchr to strings.lastIndexOfChar on linux (#11671)

This commit is contained in:
Dylan Conway
2024-06-06 22:01:28 -07:00
committed by GitHub
parent 2cba070756
commit 5b09384f01
2 changed files with 9 additions and 0 deletions

View File

@@ -272,6 +272,14 @@ pub fn indexOfSigned(self: string, str: string) i32 {
}
pub inline fn lastIndexOfChar(self: []const u8, char: u8) ?usize {
if (comptime Environment.isLinux) {
if (@inComptime()) {
return lastIndexOfCharT(u8, self, char);
}
const start = bun.C.memrchr(self.ptr, char, self.len) orelse return null;
const i = @intFromPtr(start) - @intFromPtr(self.ptr);
return @intCast(i);
}
return lastIndexOfCharT(u8, self, char);
}