**************************************************************************** * README * * * * This file provides all the information regarding 4 new CLI commands that * * enable using Intel(R) Processor Trace Tool from LLDB's CLI. * **************************************************************************** ============ Introduction ============ A C++ based cli wrapper has been developed to use Intel(R) Processor Trace Tool through LLDB's command line. This also provides an idea to all developers on how to integrate the Tool into various IDEs providing LLDB as a debugger. ============ How to Build ============ The wrapper cli-wrapper-pt.cpp needs to be compiled and linked with the shared library of the Intel(R) Processor Trace Tool in order to be used through LLDB's CLI. The procedure to build shared library of the Intel(R) Processor Trace Tool is given in README_TOOL.txt file. ============ How to Use ============ All these commands are available via shared library (lldbIntelFeatures) obtained after building intel-features folder from top. Please refer to cli-wrapper.cpp and README files of "intel-features" folder for this purpose. ============ Description ============ 4 CLI commands have been designed keeping the LLDB's existing CLI command syntax in mind. 1) processor-trace start [-b ] [] Start Intel(R) Processor Trace on a specific thread or on the whole process Syntax: processor-trace start cmd-options Usage: processor-trace start [-b ] [] -b size of the trace buffer to store the trace data. If not specified then a default value (=4KB) will be taken thread index of the thread. If no threads are specified, currently selected thread is taken. Use the thread-index 'all' to start tracing the whole process 2) processor-trace stop [] Stop Intel(R) Processor Trace on a specific thread or on the whole process Syntax: processor-trace stop cmd-options Usage: processor-trace stop [] thread index of the thread. If no threads are specified, currently selected thread is taken. Use the thread-index 'all' to stop tracing the whole process 3) processor-trace show-trace-options [] Display all the information regarding Intel(R) Processor Trace for a specific thread or for the whole process. The information contains trace buffer size and configuration options of Intel(R) Processor Trace. Syntax: processor-trace show-trace-options cmd-options Usage: processor-trace show-trace-options [] thread index of the thread. If no threads are specified, currently selected thread is taken. Use the thread-index 'all' to display information for all threads of the process 4) processor-trace show-instr-log [-o ] [-c ] [] Display a log of assembly instructions executed for a specific thread or for the whole process. The length of the log to be displayed and the offset in the whole instruction log from where the log needs to be displayed can also be provided. The offset is counted from the end of this whole instruction log which means the last executed instruction is at offset 0 (zero). Syntax: processor-trace show-instr-log cmd-options Usage: processor-trace show-instr-log [-o ] [-c ] [] -c number of instructions to be displayed. If not specified then a default value (=10) will be taken -o offset in the whole instruction log from where the log will be displayed. If not specified then default value is calculated as offset = count -1 thread index of the thread. If no threads are specified, currently selected thread is taken. Use the thread-index 'all' to show instruction log for all the threads of the process