File tree Expand file tree Collapse file tree 1 file changed +22
-7
lines changed
Expand file tree Collapse file tree 1 file changed +22
-7
lines changed Original file line number Diff line number Diff line change @@ -59,14 +59,29 @@ macro precompile_all_calls(ex::Expr)
5959 end
6060 end
6161 if have_inference_tracking
62- ex = quote
63- Core. Compiler. __set_measure_typeinf (true )
64- try
65- $ ex
66- finally
67- Core. Compiler. __set_measure_typeinf (false )
62+ ex = if isdefined (Core. Compiler. Timings, :clear_and_fetch_timings )
63+ # use new thread-safe timings API if it's available in this version of Julia
64+ quote
65+ Core. Compiler. __set_measure_typeinf (true )
66+ try
67+ $ ex
68+ finally
69+ Core. Compiler. __set_measure_typeinf (false )
70+ end
71+ $ SnoopPrecompile. precompile_roots (Core. Compiler. Timings. clear_and_fetch_timings ())
72+ end
73+ else
74+ quote
75+ Core. Compiler. Timings. reset_timings ()
76+ Core. Compiler. __set_measure_typeinf (true )
77+ try
78+ $ ex
79+ finally
80+ Core. Compiler. __set_measure_typeinf (false )
81+ Core. Compiler. Timings. close_current_timer ()
82+ end
83+ $ SnoopPrecompile. precompile_roots (Core. Compiler. Timings. _timings[1 ]. children)
6884 end
69- $ SnoopPrecompile. precompile_roots (Core. Compiler. Timings. clear_and_fetch_timings ())
7085 end
7186 end
7287 return esc (quote
You can’t perform that action at this time.
0 commit comments