mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-04-21 03:20:40 +02:00
gallivm: print out time for jitting functions with GALLIVM_DEBUG=perf
Compilation to actual machine code can easily take as much time as the optimization passes on the IR if not more, so print this out too. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
This commit is contained in:
parent
6f2f0daeb4
commit
d1b4a3451e
1 changed files with 11 additions and 0 deletions
|
|
@ -659,13 +659,24 @@ gallivm_jit_function(struct gallivm_state *gallivm,
|
|||
{
|
||||
void *code;
|
||||
func_pointer jit_func;
|
||||
int64_t time_begin = 0;
|
||||
|
||||
assert(gallivm->compiled);
|
||||
assert(gallivm->engine);
|
||||
|
||||
if (gallivm_debug & GALLIVM_DEBUG_PERF)
|
||||
time_begin = os_time_get();
|
||||
|
||||
code = LLVMGetPointerToGlobal(gallivm->engine, func);
|
||||
assert(code);
|
||||
jit_func = pointer_to_func(code);
|
||||
|
||||
if (gallivm_debug & GALLIVM_DEBUG_PERF) {
|
||||
int64_t time_end = os_time_get();
|
||||
int time_msec = (int)(time_end - time_begin) / 1000;
|
||||
debug_printf(" jitting func %s took %d msec\n",
|
||||
LLVMGetValueName(func), time_msec);
|
||||
}
|
||||
|
||||
return jit_func;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue