From 7e363e14f7f348d8b10fa020e572867659f7e6c6 Mon Sep 17 00:00:00 2001 From: Gabe Black Date: Sat, 10 Mar 2007 19:29:31 -0500 Subject: [PATCH] Fix bounds check for the cwp --HG-- extra : convert_revision : 097e6b0c80d71417329b2a4cd118046aa5ed777a --- src/arch/sparc/miscregfile.cc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/arch/sparc/miscregfile.cc b/src/arch/sparc/miscregfile.cc index 20bc4ae5d..ac30afde9 100644 --- a/src/arch/sparc/miscregfile.cc +++ b/src/arch/sparc/miscregfile.cc @@ -654,7 +654,12 @@ void MiscRegFile::setReg(int miscReg, #endif return; case MISCREG_CWP: - new_val = val > NWindows ? NWindows - 1 : val; + new_val = val >= NWindows ? NWindows - 1 : val; + if (val >= NWindows) { + new_val = NWindows - 1; + warn("Attempted to set the CWP to %d with NWindows = %d\n", + val, NWindows); + } tc->changeRegFileContext(CONTEXT_CWP, new_val); break; case MISCREG_GL: -- 2.30.2