[XRay] Add clang builtin for xray typed events.
authorKeith Wyss <wyssman@gmail.com>
Tue, 17 Apr 2018 21:32:43 +0000 (21:32 +0000)
committerKeith Wyss <wyssman@gmail.com>
Tue, 17 Apr 2018 21:32:43 +0000 (21:32 +0000)
commitf437e35671089ab3bdbf11b65a53fe22b9f24172
tree9f8b082482b37dfca41de5824b722545c5198fc3
parent3d86823f3d22296f2eb9883d1b84d3fa90c73054
[XRay] Add clang builtin for xray typed events.

Summary:
A clang builtin for xray typed events. Differs from
__xray_customevent(...) by the presence of a type tag that is vended by
compiler-rt in typical usage. This allows xray handlers to expand logged
events with their type description and plugins to process traced events
based on type.

This change depends on D45633 for the intrinsic definition.

Reviewers: dberris, pelikan, rnk, eizan

Subscribers: cfe-commits, llvm-commits

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

llvm-svn: 330220
15 files changed:
clang/include/clang/Basic/Builtins.def
clang/include/clang/Basic/LangOptions.def
clang/include/clang/Basic/XRayInstr.h
clang/include/clang/Driver/Options.td
clang/include/clang/Driver/XRayArgs.h
clang/include/clang/Frontend/CodeGenOptions.def
clang/lib/Basic/XRayInstr.cpp
clang/lib/CodeGen/CGBuiltin.cpp
clang/lib/CodeGen/CodeGenFunction.cpp
clang/lib/CodeGen/CodeGenFunction.h
clang/lib/Driver/XRayArgs.cpp
clang/lib/Frontend/CompilerInvocation.cpp
clang/test/CodeGen/xray-always-emit-typedevent.cpp [new file with mode: 0644]
clang/test/CodeGen/xray-instrumentation-bundles.cpp
clang/test/CodeGen/xray-typedevent.cpp [new file with mode: 0644]