[LLVMdev] Enabling the vectorizer for -Os

David Tweed david.tweed at arm.com
Thu Jun 6 02:28:56 PDT 2013


| PS: As a side note, I would personally really like to revisit my proposal to write down what we mean for each optimization level as precisely as we can (acknowledging that this is not very precise; it will always be a judgement call). I think it would help

|these discussions stay on track.

 

I think that would be good; I had the points in the previous email discussion you initiated in mind in interpreting O2 vs O3. The one big thing that I think isn't borne in mind quite enough is that we need to not only have a fairly clear idea of what ought to be at each level, but when assigning things we need to run "tests" (even throwaway, informatl ones) to verify that actual real-world behaviour does match the intuition. For example, I don't think the "intent" of gcc's levels is actually that different from what you proposed; the issue is that the behaviour of the actual flags assigned don't result in behaviour that matches the intent. (I still never cease to be amazed when I write a simple "pseudo-benchmark" to generate some numbers to calibrate a performance issue, run them on an actual machine and the actual performance is reversed from what I'd expect.)

 

Cheers,

Dave
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130606/e7c14fd5/attachment.html>


More information about the llvm-dev mailing list