Overall looks pretty good to me. Except some of the error messages are too detailed or refer to artifacts of the intermediate representation.
I think those diagnostics are meant to be consumed by people looking at the source language (C,C++, …). I don’t think we should refer to LLVM IR. + if (Message) + *Message << "found an outside user for: " << *UI; Similar, I don’t think we should refer to structural properties of the IR: + emitAnalysis(Report() << "loop does not have a single backedge"); Does not reflect a property of the source level language but rather of the implementation of the loop vectorizer (requirement of simplified loops). I think we need to find a broader wording that applies to the source language. Maybe something like “The control flow structure of the loop could not be understood by the vectorizer” or similar. Thank you > On Jun 10, 2014, at 3:13 PM, Tyler Nowicki <[email protected]> wrote: > > <vectorization_diagnostics-svn.patch> _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
