lebedev.ri resigned from this revision.
lebedev.ri added a comment.

I'm sorry, i should have noticed that earlier,  the handling of `"Frontend"` 
section
still looks way too intrusive to me, it breaks abstractions.

The only simple solution i see is to

1. Insert a timer for `PrettyStackTraceString CrashInfo("Per-file LLVM IR 
generation");` section
2. Don't stop `"Frontend"` timer within `HandleTranslationUnit` function
3. Naturally, change `"Frontend"` timer name to something else (`"Clang 
invocation"`?)

This is the trivial solution that wouldn't be intrusive, but would not get you 
the `"frontend timer"`
in the sense that it doesn't include the middle-end pipe, backend stuff, etc, 
only the

The alternative raises from the question - why does `CodeGen/CodeGenAction.cpp` 
do all that stuff?
I.e. maybe somehow chop that class into 2 or 3 smaller classes - actual ir 
codegen,
middle-end optimization pipeline + opt-remarks handling, etc.
I don't know if that is possible, or viable.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D63325/new/

https://reviews.llvm.org/D63325



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to