Re: [patch][rfa] SID cpu tracing -- attempt #2
Dave Brolley <[email protected]>
| Newsgroups | gmane.comp.emulators.sid.devel,gmane.comp.tools.cgen.devel |
|---|---|
| Message-ID | <[email protected]> |
Approved by fche and committed. Dave Brolley wrote: > Hi, > > Reponding to Frank's concerns about my previous patch, here is an > implementation along the lines he suggested. The idea is that each > CGEN 'set' handler and each component which is the target of a store > operation is responsible to annotating the cpu trace with the actual > value stored, if desired. In order to accomplish this, two changes > were necessary. > > 1) The tracing code generated by CGEN is now generated before the code > for the semantic operation. That way any annotation appears after the > original cpu trace. > > 2) basic_cpu now has a "trace" pin for use by other components. Each > value driven on the pin will be echoed as a character into the cpu's > trace_stream. This way annotation by other components are merged > properly with the cpu trace whether it be to cout or to a file. > > I've attached sid-trace-cgen.patch.txt which shows the CGEN changes > and a partial diff of the resulting changes to xstormy16-sem.cxx. I've > also attached sid-trace.patch.txt which shows the changes to basic_cpu. > > Tested on an internal port which requirs this functionality. > > OK to commit? > > Dave