From: Tim Rowley Date: Mon, 28 Mar 2016 19:29:30 +0000 (-0500) Subject: gallium: enable intel jitevents profiling X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b65f7ec4507122d2a3f258b7ca7c6809de06f097;p=mesa.git gallium: enable intel jitevents profiling LLVM when configured with "intel jitevents" enabled can inform VTune about dynamic code, so individual shaders are attributed profiling data and the resulting assembly can be examined. Acked-by: Roland Scheidegger --- diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp index e47146a7af7..bb08892142a 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp +++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp @@ -81,6 +81,11 @@ #include #include +#include +#if LLVM_USE_INTEL_JITEVENTS +#include +#endif + // Workaround http://llvm.org/PR23628 #if HAVE_LLVM >= 0x0307 # pragma pop_macro("DEBUG") @@ -629,6 +634,10 @@ lp_build_create_jit_compiler_for_module(LLVMExecutionEngineRef *OutJIT, ExecutionEngine *JIT; JIT = builder.create(); +#if LLVM_USE_INTEL_JITEVENTS + JITEventListener *JEL = JITEventListener::createIntelJITEventListener(); + JIT->RegisterJITEventListener(JEL); +#endif if (JIT) { *OutJIT = wrap(JIT); return 0;