Unverified Commit 2ed051be authored by ah-condor's avatar ah-condor Committed by GitHub
Browse files

Fix to Support SYS Instructions with Register Rename (#162)



All instructions including SYS can possibly go through register rename.
A problem occurs when a SYS instr gets a renamed dest register. SYS
instrutions do not go in any execution pipe. In current code renamed
registers can only be made ready in an execution pipe. So SYS
instructions with dest register rename can never become ready. So any
subsequent instruction waiting on the destination register just hangs.
The solution I made was to give the ROB a scoreboard view and make the
dest register ready when the ROB does the flush upon retiring SYS
instructions. In an unrelated fix in the same block of code I also added
a line to set the expected_flush_ variable to true or else the flush
fails.

How was this tested:
make regress passed 72/72

---------

Co-authored-by: default avatarAnthony Hung <anthony.hung@CONDORMAC14.local>
parent 83effcd9
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment