ClangBuildAnalyzer icon indicating copy to clipboard operation
ClangBuildAnalyzer copied to clipboard

Clang build analysis tool using -ftime-trace

Results 16 ClangBuildAnalyzer issues
Sort by recently updated
recently updated
newest added

```sh > ~/Downloads/ClangBuildAnalyzer-mac --start clang_analyzer Build tracing started. Do some Clang builds with '-ftime-trace', then run 'ClangBuildAnalyzer --stop clang_analyzer ' to stop tracing and save session to a file. >...

I have a case where I have a bunch of templated classes that have potentially expensive operator() implementations. However, due to how we collapse names, we never collapse any operators...

Right now, you get an error when trying to use `--start` with a folder name that does not exist: ``` ❯ clangbuildanalyzer --start artifacts ERROR: failed to create session file...

ClangBuildAnalysis is a great tool and it has really helped me improve the build time of a large project I am working on. My project is so large that the...

I mistakenly passed my artefacts folder path to the "--analize" arg and ClangBuildAnalyzer crashed with std::bad_alloc from BufferedReader(FILE* f) when "fsize" was calculated as 9223372036854775807. I think it's better to...

I changed this to build with MinGW: ```diff diff --git a/CMakeLists.txt b/CMakeLists.txt index 71f708f..56223a3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -22,4 +22,4 @@ set(SRC ) add_executable(ClangBuildAnalyzer "${SRC}") target_compile_features(ClangBuildAnalyzer PRIVATE cxx_std_17)...

enhancement

This tool was very helpful in optimizing build times. However I would to be able to analyze the output a little more thoroughly. For example, how much time out of...

enhancement

These steps do take some time. Especially --finish one. It will be useful to see which file takes a lot of time, which file is getting parsed right now and...

enhancement

While looking at the [clang patch](https://reviews.llvm.org/rL357340) that added `-ftime-trace`, I noticed that it uses `std::chrono::steady_clock`. That is most certainly a wall clock, not a CPU clock. That means the numbers...

I guess it could come in handy to have a separate section "Expensive external headers" for headers not coming from the current source tree. To find out which headers could...

enhancement