(original) (raw)
On Thu, Mar 6, 2014 at 12:22 PM, Diego Novillo <dnovillo@google.com> wrote:
On Thu, Mar 6, 2014 at 2:44 PM, Tobias Grosser <tobias@grosser.es> wrote:as others already pointed out, I committed the first piece of such an infrastructure in LLVM commit 202474 and clang commit 202475\. This is
mostly the backend and printing infrastructure.�Thanks, Tobias. �I've browsed the two patches and I think they're going to be exactly what I need. IIUC, the patches add two new LLVM instructions remark and note. These are inserted in the IL by the passes and the compiler emits them as diagnostic if the right -W flag is enabled?One question I have from the Clang patch. If I compile with -Weverything, will this enable all warnings \*and\* remarks? In this context, I only want to enable all remarks. �In fact, I want to enable a family of remarks: the optimization remarks.There will be other modifiers to these remarks as well:
- Report \*missed\* optimizations, instead of the successful ones.
- Increase verbosity of the report. This would be done using note nodes, I expect. But we may want varying degrees of verbosity.
- Group families of optimizations. For example, i want to report on all loop-related optimizations.
- IIRC, GCC's -fopt-info will also allow you to collect the reports into a separate text file. Not sure how useful I find this feature myself.
Re. 4, to name a few that can be handy sometimes: 1) not contaminate stderr; 2) per TU report; 3) Per opt-group report etc. ��
Also in GCC's original design, per-pass report filtering was supported, but that was considered too developer oriented.
David
Thanks. Diego.
\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_
LLVM Developers mailing list
LLVMdev@cs.uiuc.edu � � � � http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev