[XRay] Migrate FDR runtime to use refactored controller
authorDean Michael Berris <dberris@google.com>
Tue, 30 Oct 2018 04:35:48 +0000 (04:35 +0000)
committerDean Michael Berris <dberris@google.com>
Tue, 30 Oct 2018 04:35:48 +0000 (04:35 +0000)
commit01aeb3221da9cb3a069894693237a3a740c97932
tree8a35bc4f90cc3ff20a117102bb215a5bcfdd3cf7
parentb293322cee173b953845ce1a68975944a4df0a72
[XRay] Migrate FDR runtime to use refactored controller

Summary:
This change completes the refactoring of the FDR runtime to support the
following:

- Generational buffer management.

- Centralised and well-tested controller implementation.

In this change we've had to:

- Greatly simplify the code in xray_fdr_logging.cc to only implement the
  glue code for calling into the controller.

- Implement the custom and typed event logging functions in the
  FDRLogWriter.

- Imbue the `XRAY_NEVER_INSTRUMENT` attribute onto all functions in the
  controller implementation.

Reviewers: mboerger, eizan, jfb

Subscribers: jfb, llvm-commits

Differential Revision: https://reviews.llvm.org/D53858

llvm-svn: 345568
compiler-rt/lib/xray/xray_fdr_controller.h
compiler-rt/lib/xray/xray_fdr_log_writer.h
compiler-rt/lib/xray/xray_fdr_logging.cc