From 30dfe1fcb89295b3b362a9b5dd807bb4c81bb5bc Mon Sep 17 00:00:00 2001 From: James Rowe Date: Fri, 13 Dec 2019 18:08:07 -0700 Subject: [PATCH] Use the correct register length for index_array The index_array can't possible be 31 bits long as that would index out of bounds memory. According to 3dbrew, this should be 28 --- src/video_core/regs_pipeline.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/video_core/regs_pipeline.h b/src/video_core/regs_pipeline.h index aec936210..a693d7a05 100644 --- a/src/video_core/regs_pipeline.h +++ b/src/video_core/regs_pipeline.h @@ -138,7 +138,8 @@ struct PipelineRegs { }; union { - BitField<0, 31, u32> offset; // relative to base attribute address + BitField<0, 28, u32> offset; // relative to base attribute address + BitField<28, 3, u32> unused; BitField<31, 1, IndexFormat> format; }; } index_array;