From 72e135d2b290d8bc5cd584b8acac828ae5e71eea Mon Sep 17 00:00:00 2001 From: Ciro Santilli Date: Mon, 20 Aug 2018 16:41:19 +0100 Subject: [PATCH] gem5 trace: explain A and D --- README.adoc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/README.adoc b/README.adoc index 494e90d..2ae1193 100644 --- a/README.adoc +++ b/README.adoc @@ -7259,7 +7259,11 @@ Breakdown: * `.1` as in `@start_kernel.1`: index of the microop * `stp`: instruction disassembly. Seems to use `.isa` files dispersed per arch, which is an in house format: http://gem5.org/ISA_description_system * `strxi_uop x29, [ureg0]`: microop disassembly. -* `MemWrite : D=0x0000000000000000 A=0xffffff8008913f90`: TODO. Further description of the microops. +* `MemWrite : D=0x0000000000000000 A=0xffffff8008913f90`: a memory write microop: +** `D` stands for data, and represents the value that was written to memory or to a register +** `A` stands for address, and represents the address to which the value was written. It only shows when data is being written to memory, but not to registers. + +The best way to verify all of this is to write some bare metal code: https://stackoverflow.com/questions/43682311/uart-communication-in-gem5-with-arm-bare-metal Trace the source lines just like <> with: