Alfredo Velasco <Alfredo.Velasco <at> duke.edu> writes:
> Most of my question is answered here for getting the current/old data: 
> http://thread.gmane.org/gmane.comp.emulators.marss86/1266 
> But I'm still unsure how to get the data after the update. Is there a 
> signal that confirms the write went through to the DRAM in qemu? 

I dug some more and found another way to print data in DRAM. 

struct StoreBufferEntry has a function, write_to_ram(). 
write_to_ram() calls storemask_virt(). 
It seems like I could: 
-Check there's no pagefault for the virtual address passed to storemask_virt()
-Call loadvirt() within storemask_virt() to get the old data in DRAM
-Save the new data passed to storemask_virt()
-Use paddr calculated in storemask_virt() as the physical address
-If the CHECK_STORE logic fails, and store doesn't match, don't log
-If no problems, print out the address (paddr), old data and new data to file. 

Does anyone see any problems with this approach?


_______________________________________________
http://www.marss86.org
Marss86-Devel mailing list
[email protected]
https://www.cs.binghamton.edu/mailman/listinfo/marss86-devel

Reply via email to