VIRTUTECH CONFIDENTIAL Previous - Up - Next
base-trace-mem-hier
- Provided by
-
trace
- Class Hierarchy
-
conf-object → base-trace-mem-hier
- Interfaces Implemented
-
None
- Description
-
The base class for the trace mode. This module provides an easy way of generating traces from Simics. Actions traced are executed instructions, memory accesses and, occurred exceptions. Traces will by default be printed as text to the terminal but can also be directed to a file in which case a binary format is available as well. It is also possible to control what will be traced by setting a few of the provided attributes.
Attributes
- Attributes inherited from class conf-object
-
attributes, classname, component, iface, name, object_id, queue
- Attribute List
-
- consumer
- Session attribute; read/write access; type: Object or Nil.
Optional consumer object. Must implement trace_consume.
- data_intervals_p
- Session attribute; read/write access; type: [[ii]*].
List of physical address intervals for data tracing. If no intervals are specified, all addresses are traced.
- data_intervals_v
- Session attribute; read/write access; type: [[ii]*].
List of virtual address intervals for data tracing. If no intervals are specified, all addresses are traced.
- enabled
- Session attribute; read/write access; type: Integer.
1|0 Set to 1 to enable tracing, 0 to disable.
- file
- Session attribute; read/write access; type: s|n.
Name of output file that the trace is written to. If the name ends in .gz, the output will be gzipped.
- filter_duplicates
- Session attribute; read/write access; type: Integer.
1|0 Set to 1 to filter out duplicate trace entries. Useful to filter out multiple steps in looping or repeating instructions.
- print_access_type
- Session attribute; read/write access; type: Integer.
1|0 Set to 1 to enable printing of the memory access type, 0 to disable.
- print_data
- Session attribute; read/write access; type: Integer.
1|0 Set to 1 to enable printing of data and instruction op codes, 0 to disable.
- print_linear_address
- Session attribute; read/write access; type: Integer.
1|0 Set to 1 to enable printing of the linear address, 0 to disable.
- print_memory_type
- Session attribute; read/write access; type: Integer.
1|0 Set to 1 to enable printing of the linear address, 0 to disable.
- print_physical_address
- Session attribute; read/write access; type: Integer.
1|0 Set to 1 to enable printing of the physical address, 0 to disable.
- print_virtual_address
- Session attribute; read/write access; type: Integer.
1|0 Set to 1 to enable printing of the virtual address, 0 to disable.
- raw_mode
- Session attribute; read/write access; type: Integer.
1|0 Set to 1 for raw output format, and 0 for ascii. Raw output format is only supported when writing to a file.
- trace_data
- Session attribute; read/write access; type: Integer.
1|0 Set to 1 to enable tracing of data, 0 to disable.
- trace_exceptions
- Session attribute; read/write access; type: Integer.
1|0 Set to 1 to enable tracing of exceptions, 0 to disable.
- trace_instructions
- Session attribute; read/write access; type: Integer.
1|0 Set to 1 to enable instruction tracing, 0 to disable.
Command List
- Commands
-
start | control default tracer |
stop | stop default tracer |
Command Descriptions
-
<base-trace-mem-hier>.start
- Alias
-
<base-trace-mem-hier>.trace-start
- Synopsis
-
<base-trace-mem-hier>.start [file] [-raw] [-same]
<base-trace-mem-hier>.stop
- Description
-
An installed tracer is required for this commands to work. Use the
command new-tracer to get a default tracer.
The start command turns on the tracer. The tracer logs all executed
instructions, memory accesses and exceptions. The output is written to
file (appended) if given, otherwise to standard output. If the
-raw flag is used, each trace entry is written in binary form; i.e., a
struct trace_entry. This structure can be found in trace_api.h. Raw
format can only be written to file.
If the -same flag is used, you will get the same output file
and mode as the last time.
stop switches off the tracer and closes the file. Until you
have given the stop command, you can not be sure that the
entire trace has been written to the file.
- See Also
-
new-tracer
-
<base-trace-mem-hier>.stop
- Alias
-
<base-trace-mem-hier>.trace-stop
- Synopsis
-
<base-trace-mem-hier>.stop
<base-trace-mem-hier>.start [file] [-raw] [-same]
- Description
-
An installed tracer is required for this commands to work. Use the
command new-tracer to get a default tracer.
The start command turns on the tracer. The tracer logs all executed
instructions, memory accesses and exceptions. The output is written to
file (appended) if given, otherwise to standard output. If the
-raw flag is used, each trace entry is written in binary form; i.e., a
struct trace_entry. This structure can be found in trace_api.h. Raw
format can only be written to file.
If the -same flag is used, you will get the same output file
and mode as the last time.
stop switches off the tracer and closes the file. Until you
have given the stop command, you can not be sure that the
entire trace has been written to the file.
- See Also
-
new-tracer
VIRTUTECH CONFIDENTIAL Previous - Up - Next