Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/c/public/gem5/+/53364 )

Change subject: arch-arm: Fix a bug in SoftwareStep::advanceSS.
......................................................................

arch-arm: Fix a bug in SoftwareStep::advanceSS.

This method has various conditions it checks, and various ways that it
updates the local copy of the current PCState it retrieved from the
ThreadContext. Unfortunately it only actually wrote back the PCState
after some of those modifications, letting the others get discarded once
the function ends.

Change-Id: Ia553236f15eaaa066c7cd0ea76ae352282515762
---
M src/arch/arm/self_debug.cc
1 file changed, 17 insertions(+), 0 deletions(-)



diff --git a/src/arch/arm/self_debug.cc b/src/arch/arm/self_debug.cc
index 2029bdc..b7cfb81 100644
--- a/src/arch/arm/self_debug.cc
+++ b/src/arch/arm/self_debug.cc
@@ -681,12 +681,14 @@
     switch (stateSS) {
       case INACTIVE_STATE:
         pc.debugStep(false);
+        tc->pcState(pc);
         break;

       case ACTIVE_NOT_PENDING_STATE:
         pc.debugStep(false);
         if (cpsrD == 1 || !bSS) {
             stateSS = INACTIVE_STATE;
+            tc->pcState(pc);
         } else {
             pc.stepped(true);
             stateSS = ACTIVE_PENDING_STATE;

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/53364
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: Ia553236f15eaaa066c7cd0ea76ae352282515762
Gerrit-Change-Number: 53364
Gerrit-PatchSet: 1
Gerrit-Owner: Gabe Black <[email protected]>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to