Depends on D86670.
This adds the necessary logic that uses libipt (https://github.com/intel/libipt) to decode Intel PT traces.
The basic usage is as follows:
$ trace load /path/to/trace/settings/file.json
$ trace dump -i [-t TID]
$ pid: '2', tid: '22'
If no TID is specified, the currently selected thread ID of the current target is used.
Corresponding tests were added.
Note that this diff is just printing the instructions without any additional information, unlike the "disassemble" command. This will be done in a future diff.
Also, in a future diff I'll be analyzing each instruction and reconstructing the stack traces.