x86: Changes to decoder, corrects 9376
Review Request #1618 - Created Jan. 11, 2013 and submitted
| Information | |
|---|---|
| Nilay Vaish | |
| gem5 | |
| default | |
| Reviewers | |
| Default | |
Changeset 9463:4f23fe95cda9 --------------------------- x86: Changes to decoder, corrects 9376 The changes made by the changeset 9376 were not quite correct. The patch made changes to the code which resulted in decoder not getting initialized correctly when the state was restored from a checkpoint. This patch adds a startup function to each ISA object. For x86, this function sets the required state in the decoder. For other ISAs, the function is empty right now.
Issue Summary
1
1
0
0
| Description | From | Last Updated | Status |
|---|---|---|---|
| How do you feel about making a serialize() call for all the isas and just having x86 the only one ... | Ali Saidi | Jan. 11, 2013, 4:25 a.m. | Open |
Posted (Jan. 11, 2013, 4:25 a.m.)
-
src/cpu/simple_thread.cc (Diff revision 1) -
How do you feel about making a serialize() call for all the isas and just having x86 the only one that implements it?
Posted (Jan. 11, 2013, 4:35 a.m.)
I believe the HandyM5Reg value is already serialized as part of the misc reg file. I think you could solve the problem with fewer changes just by calling decoder->setM5Reg after unserializing the register file. I assume the reason Gabe didn't use an m5reg like you are doing here is because that's a big bit field, so you're paying the cost of extracting and inserting things into the bit field on every decode, instead of only paying that cost when the values change.
Review request changed
Updated (Jan. 11, 2013, 10:15 a.m.)
Summary: |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Description: |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
Diff: |
Revision 2 (+34 -33) |
Thanks, Nilay, this looks like a much cleaner solution. I agree that the commented-out BaseSimpeCPU::CacheOp code should be deleted, but it would be preferable to do that in a separate changeset. If you just defer that to a separate changeset, there's no need to repost for review IMO.
