| | | | instrumentation points |
| | | | before main. |
+-------------------+-----------------+---------------+------------------------+
-| xray_naive_log | ``bool`` | ``true`` | Whether to install |
+| xray_naive_log | ``bool`` | ``false`` | Whether to install |
| | | | the naive log |
| | | | implementation. |
+-------------------+-----------------+---------------+------------------------+
- ``account``: Performs basic function call accounting statistics with various
options for sorting, and output formats (supports CSV, YAML, and
console-friendly TEXT).
-- ``convert``: Converts an XRay log file from one format to another. Currently
- only converts to YAML.
+- ``convert``: Converts an XRay log file from one format to another. We can
+ convert from binary XRay traces (both naive and FDR mode) to YAML,
+ `flame-graph <https://github.com/brendangregg/FlameGraph>`_ friendly text
+ formats, as well as `Chrome Trace Viewer (catapult)
+ <https://github.com/catapult-project/catapult>` formats.
- ``graph``: Generates a DOT graph of the function call relationships between
functions found in an XRay trace.
- ``stack``: Reconstructs function call stacks from a timeline of function
$ ./bin/llc input.ll
# We need to set the XRAY_OPTIONS to enable some features.
- $ XRAY_OPTIONS="patch_premain=true" ./bin/llc input.ll
+ $ XRAY_OPTIONS="patch_premain=true xray_naive_log=true" ./bin/llc input.ll
==69819==XRay: Log file in 'xray-log.llc.m35qPB'
At this point we now have an XRay trace we can start analysing.