chore: remove const cast

This commit is contained in:
Rekai Nyangadzayi Musuka 2022-12-15 04:17:18 -04:00
parent 470c774836
commit 675084e77c
1 changed files with 4 additions and 4 deletions

View File

@ -11,8 +11,8 @@ pub const Emulator = struct {
writeFn: *const fn (*anyopaque, u32, u8) void, writeFn: *const fn (*anyopaque, u32, u8) void,
// FIXME: Expensive copy // FIXME: Expensive copy
registersFn: *const fn (*const anyopaque) [16]u32, registersFn: *const fn (*anyopaque) [16]u32,
cpsrFn: *const fn (*const anyopaque) u32, cpsrFn: *const fn (*anyopaque) u32,
pub fn init(ptr: anytype) Self { pub fn init(ptr: anytype) Self {
const Ptr = @TypeOf(ptr); const Ptr = @TypeOf(ptr);
@ -36,13 +36,13 @@ pub const Emulator = struct {
return @call(.{ .modifier = .always_inline }, ptr_info.Pointer.child.read, .{ self, addr, value }); return @call(.{ .modifier = .always_inline }, ptr_info.Pointer.child.read, .{ self, addr, value });
} }
pub fn registersImpl(pointer: *const anyopaque) [16]u32 { pub fn registersImpl(pointer: *anyopaque) [16]u32 {
const self = @ptrCast(Ptr, @alignCast(alignment, pointer)); const self = @ptrCast(Ptr, @alignCast(alignment, pointer));
return @call(.{ .modifier = .always_inline }, ptr_info.Pointer.child.registers, .{self}); return @call(.{ .modifier = .always_inline }, ptr_info.Pointer.child.registers, .{self});
} }
pub fn cpsrImpl(pointer: *const anyopaque) u32 { pub fn cpsrImpl(pointer: *anyopaque) u32 {
const self = @ptrCast(Ptr, @alignCast(alignment, pointer)); const self = @ptrCast(Ptr, @alignCast(alignment, pointer));
return @call(.{ .modifier = .always_inline }, ptr_info.Pointer.child.cpsr, .{self}); return @call(.{ .modifier = .always_inline }, ptr_info.Pointer.child.cpsr, .{self});