Add XRay flags to Clang. We implement two flags to control the XRay behaviour:
-fxray-instrument: enables XRay annotation of IR -fxray-instruction-threshold: configures the threshold for function size (looking at IR instructions), and allow LLVM to decide whether to add the nop sleds later on in the process. Also implements the related xray_always_instrument and xray_never_instrument function attributes. Patch by Dean Michael Berris. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@275330 91177308-0d34-0410-b5e6-96231b3b80d8
Showing
- include/clang/Basic/Attr.td 16 additions, 0 deletionsinclude/clang/Basic/Attr.td
- include/clang/Basic/AttrDocs.td 11 additions, 0 deletionsinclude/clang/Basic/AttrDocs.td
- include/clang/Driver/Options.td 15 additions, 0 deletionsinclude/clang/Driver/Options.td
- include/clang/Frontend/CodeGenOptions.def 8 additions, 0 deletionsinclude/clang/Frontend/CodeGenOptions.def
- lib/CodeGen/CodeGenFunction.cpp 20 additions, 0 deletionslib/CodeGen/CodeGenFunction.cpp
- lib/CodeGen/CodeGenFunction.h 4 additions, 0 deletionslib/CodeGen/CodeGenFunction.h
- lib/Driver/Tools.cpp 37 additions, 0 deletionslib/Driver/Tools.cpp
- lib/Frontend/CompilerInvocation.cpp 3 additions, 0 deletionslib/Frontend/CompilerInvocation.cpp
- lib/Sema/SemaDeclAttr.cpp 4 additions, 1 deletionlib/Sema/SemaDeclAttr.cpp
- test/CodeGen/xray-attributes-supported.cpp 13 additions, 0 deletionstest/CodeGen/xray-attributes-supported.cpp
- test/Sema/xray-always-instrument-attr.c 6 additions, 0 deletionstest/Sema/xray-always-instrument-attr.c
- test/Sema/xray-always-instrument-attr.cpp 10 additions, 0 deletionstest/Sema/xray-always-instrument-attr.cpp
Loading
Please register or sign in to comment