silvas added a comment. In http://reviews.llvm.org/D21823#479418, @davidxl wrote:
> I should have brought it up earlier, but I forgot. I think a better (and > simpler) proposal is to make -fprofile-generate and -fprofile-use turn on IR > based PGO. > > -fprofile-generate and -fprofile-use options were introduced by Diego (cc'ed) > recently for GCC option compatibility. At that time, IR based PGO was not yet > ready, so they were made aliases to FE instrumentation options > -fprofile-instr-generate and -fprofile-instr-use. Now I think it is time > to make it right. The documentation only says that these two options are > gcc compatible options to control profile generation and use, but does not > specify the underlying implementation. It is also likely that Google is the > only user of this option. If a user using this option really want FE > instrumentation, there is always -fprofile-instr-generate to use. It also > more likely that IR instrumentation is what user wants when using GCC > compatible options (as they behave more similarly). This SGTM. It may cause some user confusion since there is no obvious distinction between "profile generate" and "profile instr generate" from a user perspective. But we can avoid that with improved documentation. My main concern is that the existing documentation already says that -fprofile-generate behaves identically to -fprofile-instr-generate http://clang.llvm.org/docs/UsersManual.html#cmdoption-fprofile-generate However, I think it is reasonable to change this behavior (and of course the documentation), as users of this option are likely using it for compatibility with GCC and so they likely don't care about the specifics of clang FEPGO. We probably want to at least leave a small note in the documentation regarding this change of behavior. Repository: rL LLVM http://reviews.llvm.org/D21823 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits