rust/compiler/rustc_llvm
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
..
llvm-wrapper Initialize LLVM time trace profiler on each code generation thread 2021-11-05 17:47:11 +01:00
src Repace use of static_nobundle with native_link_modifiers 2021-10-23 15:51:22 +02:00
build.rs Repace use of static_nobundle with native_link_modifiers 2021-10-23 15:51:22 +02:00
Cargo.toml Migrate to 2021 2021-09-20 22:21:42 -04:00