gem5: trace use -ExecSymbol

This commit is contained in:
Ciro Santilli
2018-08-09 03:45:32 +01:00
parent 02e294c62c
commit b8abb15ca7
4 changed files with 4 additions and 5 deletions

View File

@@ -7196,7 +7196,7 @@ Breakdown:
* `25007500`: time count in some unit. Note how the microops execute at further timestamps.
* `system.cpu`: distinguishes between CPUs when there are more than one
* `T0`: thread number. TODO: link:https://superuser.com/questions/133082/hyper-threading-and-dual-core-whats-the-difference/995858#995858[hyperthread]? How to play with it?
* `@start_kernel`: we are in the `start_kernel` function. Awesome feature! Implemented with libelf https://sourceforge.net/projects/elftoolchain/ copy pasted in-tree `ext/libelf`. To get raw addresses, remove the `ExecSymbol`, which is enabled by `Exec`.
* `@start_kernel`: we are in the `start_kernel` function. Awesome feature! Implemented with libelf https://sourceforge.net/projects/elftoolchain/ copy pasted in-tree `ext/libelf`. To get raw addresses, remove the `ExecSymbol`, which is enabled by `Exec`. This can be done with `Exec,-ExecSymbol`.
* `.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.

View File

@@ -26,7 +26,7 @@
Mnemonic: `fast`.
|`-g` | |Enable gem5 build or force its rebuild.
|`-h` | |Show this help message.
|`-L` |`VARIANT` |Linux kernel build variant.
|`-L` |`VARIANT` |Linux kernel build variant.
|`-I` | |Enable initramfs for the current build.
|`-i` | |Enable initrd for the current build.
|`-K` |`KERNEL_CONFIG_FILE` |Use `KERNEL_CONFIG_FILE` as the exact Linux kernel

2
qemu

Submodule qemu updated: f750236039...c42634d8e3

View File

@@ -15,8 +15,7 @@ done
shift "$(($OPTIND - 1))"
set_common_vars "$arch" "$gem5"
if "$gem5"; then
# Exactly what Exec enabled, but without ExecSymbol and ExecMicro.
time ./run -a aarch64 -E 'm5 exit' -g -T 'ExecEnable,ExecTicks,ExecOpClass,ExecThread,ExecEffAddr,ExecResult,ExecMacro,ExecFaulting,ExecUser,ExecKernel' "$@"
time ./run -a "$arch" -E 'm5 exit' -g -T 'Exec,-ExecSymbol,-ExecMicro' "$@"
else
time ./run -a "$arch" -e 'init=/poweroff.out' -T exec_tb "$@"
time ./qemu-trace2txt -a "$arch"