Difference between revisions of "LDC LLVM profiling instrumentation"

From D Wiki
Jump to: navigation, search
(Created page with "= LLVM profiling instrumentation = I am going to work on implementing LLVM profiling instrumentation in LDC. This page functions as a place to collect information and to docu...")
 
(LLVM profiling instrumentation)
Line 1: Line 1:
 
= LLVM profiling instrumentation =
 
= LLVM profiling instrumentation =
  
I am going to work on implementing LLVM profiling instrumentation in LDC. This page functions as a place to collect information and to document how the implementation is done.
+
This page functions as a place to collect information and to document how the implementation is done.
 +
 
 +
== LLVM InstrProf ==
 +
 
 +
[describe what and how LLVM supports profile instrumentation]
 +
 
 +
=== LLVM intrinsics ===
 +
 
 +
This was introduced with [http://reviews.llvm.org/rL223672 LLVM commit r223672]
 +
 
 +
LLVM features two intrinsics for instrumentation:
 +
* [http://llvm.org/docs/LangRef.html#llvm-instrprof-increment-intrinsic |llvm.instrprof_increment]
 +
* [http://llvm.org/docs/LangRef.html#llvm-instrprof-value-profile-intrinsic |llvm.instrprof_value_profile]
 +
 
 +
 
 +
 
 +
== Example of Clang's LLVM IR output ==
 +
[show minimal C code example and Clang's -emit-llvm output for it]

Revision as of 13:25, 21 November 2015

LLVM profiling instrumentation

This page functions as a place to collect information and to document how the implementation is done.

LLVM InstrProf

[describe what and how LLVM supports profile instrumentation]

LLVM intrinsics

This was introduced with LLVM commit r223672

LLVM features two intrinsics for instrumentation:


Example of Clang's LLVM IR output

[show minimal C code example and Clang's -emit-llvm output for it]