rust/compiler/rustc_codegen_ssa
Tomasz Miąsko 5a09e12135 Initialize LLVM time trace profiler on each code generation thread
In https://reviews.llvm.org/D71059 LLVM 11, the time trace profiler was
extended to support multiple threads.

`timeTraceProfilerInitialize` creates a thread local profiler instance.
When a thread finishes `timeTraceProfilerFinishThread` moves a thread
local instance into a global collection of instances. Finally when all
codegen work is complete `timeTraceProfilerWrite` writes data from the
current thread local instance and the instances in global collection
of instances.

Previously, the profiler was intialized on a single thread only. Since
this thread performs no code generation on its own, the resulting
profile was empty.

Update LLVM codegen to initialize & finish time trace profiler on each
code generation thread.
2021-11-05 17:47:11 +01:00
..
src Initialize LLVM time trace profiler on each code generation thread 2021-11-05 17:47:11 +01:00
Cargo.toml Remove re-export. 2021-10-03 16:08:54 +02:00
README.md

Please read the rustc-dev-guide chapter on Backend Agnostic Codegen.