fix: impl workaround for stage2 miscompilation

This commit is contained in:
Rekai Nyangadzayi Musuka 2022-08-26 19:23:50 -05:00
parent 57a6273025
commit 4339126bee
1 changed files with 2 additions and 1 deletions

View File

@ -683,7 +683,8 @@ const Pipline = struct {
pub fn step(self: *Self, cpu: *Arm7tdmi, comptime T: type) ?u32 { pub fn step(self: *Self, cpu: *Arm7tdmi, comptime T: type) ?u32 {
comptime std.debug.assert(T == u32 or T == u16); comptime std.debug.assert(T == u32 or T == u16);
const opcode = self.stage[0]; // FIXME: https://github.com/ziglang/zig/issues/12642
const opcode = self.stage[0..1][0];
self.stage[0] = self.stage[1]; self.stage[0] = self.stage[1];
self.stage[1] = cpu.bus.read(T, cpu.r[15]); self.stage[1] = cpu.bus.read(T, cpu.r[15]);