Eduardo José Gómez Hernández has submitted this change. ( https://gem5-review.googlesource.com/c/public/gem5/+/52803 )

Change subject: arch-x86: Fix rcl implementation triggers "bits" assert
......................................................................

arch-x86: Fix rcl implementation triggers "bits" assert

With some values of rotations and datasizes, is it possible to call
"bits" with first being smaller than seccond. To prevent it, rcl,
similar to other rotations had an if to check if the value to rotate
is bigger than 1, however, rcl was checking for 'shiftAmt' instead
of 'realShiftAmt'.

This was not detected before because:
 1 - The assert triggered in "bits" is from a recent commit
 2 - The result is correct.

Change-Id: I669f4e064e12b035538e5dd0cc61eb4546603512
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/52803
Reviewed-by: Jason Lowe-Power <power...@gmail.com>
Reviewed-by: Gabe Black <gabe.bl...@gmail.com>
Maintainer: Jason Lowe-Power <power...@gmail.com>
Tested-by: kokoro <noreply+kok...@google.com>
---
M src/arch/x86/isa/microops/regop.isa
1 file changed, 25 insertions(+), 1 deletion(-)

Approvals:
Jason Lowe-Power: Looks good to me, but someone else must approve; Looks good to me, approved
  Gabe Black: Looks good to me, approved
  kokoro: Regressions pass




diff --git a/src/arch/x86/isa/microops/regop.isa b/src/arch/x86/isa/microops/regop.isa
index e5f9e3d..338ded9 100644
--- a/src/arch/x86/isa/microops/regop.isa
+++ b/src/arch/x86/isa/microops/regop.isa
@@ -990,7 +990,7 @@
                 CCFlagBits flags = cfofBits;
                 uint64_t top = PSrcReg1 << realShiftAmt;
                 uint64_t bottom = flags.cf << (realShiftAmt - 1);
-                if(shiftAmt > 1) {
+                if(realShiftAmt > 1) {
                     bottom |= bits(PSrcReg1, dataSize * 8 - 1,
                             dataSize * 8 - realShiftAmt + 1);
                 }

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/52803
To unsubscribe, or for help writing mail filters, visit https://gem5-review.googlesource.com/settings

Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I669f4e064e12b035538e5dd0cc61eb4546603512
Gerrit-Change-Number: 52803
Gerrit-PatchSet: 2
Gerrit-Owner: Eduardo José Gómez Hernández <eduardojose.go...@um.es>
Gerrit-Reviewer: Eduardo José Gómez Hernández <eduardojose.go...@um.es>
Gerrit-Reviewer: Gabe Black <gabe.bl...@gmail.com>
Gerrit-Reviewer: Jason Lowe-Power <power...@gmail.com>
Gerrit-Reviewer: kokoro <noreply+kok...@google.com>
Gerrit-MessageType: merged
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to