[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-07-20 Thread Erich Keane via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rC337552: Implement cpu_dispatch/cpu_specific Multiversioning (authored by erichkeane, committed by ). Repository: rC Clang https://reviews.llvm.org/D47474 Files: include/clang/AST/Decl.h

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-07-18 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman accepted this revision. aaron.ballman added a comment. This revision is now accepted and ready to land. Aside from an `assert` than can be removed, this LGTM on the attribute side of things. Comment at: lib/CodeGen/CodeGenModule.cpp:2446 + const auto *FD =

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-07-18 Thread Erich Keane via Phabricator via cfe-commits
erichkeane added inline comments. Comment at: include/clang/Basic/Attr.td:851 + let Spellings = [Clang<"cpu_specific">]; + let Args = [VariadicIdentifierArgument<"Cpus">]; + let Subjects = SubjectList<[Function]>; aaron.ballman wrote: > erichkeane wrote: > >

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-07-18 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman added inline comments. Comment at: include/clang/Basic/Attr.td:851 + let Spellings = [Clang<"cpu_specific">]; + let Args = [VariadicIdentifierArgument<"Cpus">]; + let Subjects = SubjectList<[Function]>; erichkeane wrote: > aaron.ballman wrote: >

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-07-18 Thread Erich Keane via Phabricator via cfe-commits
erichkeane added a comment. Comment at: include/clang/AST/Decl.h:2212-2213 + bool isCpuDispatchMultiVersion() const; + bool isCpuSpecificMultiVersion() const; + aaron.ballman wrote: > aaron.ballman wrote: > > Pedantic nit: CPU instead of Cpu? > Thoughts

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-07-18 Thread Erich Keane via Phabricator via cfe-commits
erichkeane updated this revision to Diff 156068. erichkeane marked 13 inline comments as done. erichkeane added a comment. All of @aaron.ballman s comments have been dealt with except for Cpus->CPUs in the Attr.td file for explained reasons. Still negotiable :) https://reviews.llvm.org/D47474

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-07-18 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman added inline comments. Comment at: include/clang/AST/Decl.h:2212-2213 + bool isCpuDispatchMultiVersion() const; + bool isCpuSpecificMultiVersion() const; + aaron.ballman wrote: > Pedantic nit: CPU instead of Cpu? Thoughts on

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-07-16 Thread Erich Keane via Phabricator via cfe-commits
erichkeane added a comment. Bump! Would love to have someone take a look! https://reviews.llvm.org/D47474 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-07-09 Thread Erich Keane via Phabricator via cfe-commits
erichkeane updated this revision to Diff 154610. erichkeane marked an inline comment as done. erichkeane added a comment. @lebedev.ri 's comments, plus a rebase. https://reviews.llvm.org/D47474 Files: include/clang/AST/Decl.h include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-07-09 Thread Erich Keane via Phabricator via cfe-commits
erichkeane marked 4 inline comments as done. erichkeane added a comment. In https://reviews.llvm.org/D47474#1154858, @lebedev.ri wrote: > Some drive-by nits. > General observation: this is kinda large. > I would //personally// split split off the codegen part into a second patch. Thanks for

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-07-06 Thread Roman Lebedev via Phabricator via cfe-commits
lebedev.ri added a comment. Some drive-by nits. General observation: this is kinda large. I would //personally// split split off the codegen part into a second patch. Comment at: include/clang/AST/Decl.h:2212-2213 + bool isCPUDispatchMultiVersion() const; + bool

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-07-06 Thread Erich Keane via Phabricator via cfe-commits
erichkeane added a comment. Bump! https://reviews.llvm.org/D47474 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-06-15 Thread Erich Keane via Phabricator via cfe-commits
erichkeane added a comment. Just a quick bump, I know most of you are still recovering from the Switzerland trip, but hopefully the others will have some time. https://reviews.llvm.org/D47474 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-05-31 Thread Erich Keane via Phabricator via cfe-commits
erichkeane updated this revision to Diff 149276. erichkeane added a comment. Shamelessly stealing @aaron.ballman s AttrDocs description of cpu_dispatch bodies. https://reviews.llvm.org/D47474 Files: include/clang/AST/Decl.h include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-05-31 Thread Erich Keane via Phabricator via cfe-commits
erichkeane added inline comments. Comment at: include/clang/Basic/Attr.td:851 + let Spellings = [GCC<"cpu_specific">]; + let Args = [VariadicIdentifierArgument<"Cpus">]; + let Subjects = SubjectList<[Function]>; aaron.ballman wrote: > erichkeane wrote: > >

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-05-31 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman added inline comments. Comment at: include/clang/Basic/Attr.td:851 + let Spellings = [GCC<"cpu_specific">]; + let Args = [VariadicIdentifierArgument<"Cpus">]; + let Subjects = SubjectList<[Function]>; erichkeane wrote: > aaron.ballman wrote: > >

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-05-30 Thread Erich Keane via Phabricator via cfe-commits
erichkeane added a comment. Responding to comments :) Comment at: include/clang/Basic/Attr.td:850 +def CpuSpecific : InheritableAttr { + let Spellings = [GCC<"cpu_specific">]; + let Args = [VariadicIdentifierArgument<"Cpus">]; aaron.ballman wrote: > Does GCC

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-05-30 Thread Erich Keane via Phabricator via cfe-commits
erichkeane updated this revision to Diff 149145. erichkeane marked 11 inline comments as done. erichkeane added a comment. Fix based on @craig.topper and @aaron.ballman s comments. https://reviews.llvm.org/D47474 Files: include/clang/AST/Decl.h include/clang/Basic/Attr.td

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-05-30 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman added inline comments. Comment at: include/clang/AST/Decl.h:2212-2213 + bool isCpuDispatchMultiVersion() const; + bool isCpuSpecificMultiVersion() const; + Pedantic nit: CPU instead of Cpu? Comment at:

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-05-29 Thread Craig Topper via Phabricator via cfe-commits
craig.topper added inline comments. Comment at: include/clang/Basic/X86Target.def:295 +CPU_SPECIFIC("pentium_iii", 'H', + (1ULL << FEATURE_CMOV | 1ULL << FEATURE_MMX | 1ULL << FEATURE_SSE)) +CPU_SPECIFIC("pentium_iii_no_xmm_regs", 'H', Could we just

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-05-29 Thread Erich Keane via Phabricator via cfe-commits
erichkeane updated this revision to Diff 148977. https://reviews.llvm.org/D47474 Files: include/clang/AST/Decl.h include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Basic/DiagnosticGroups.td include/clang/Basic/DiagnosticSemaKinds.td

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-05-29 Thread Erich Keane via Phabricator via cfe-commits
erichkeane marked 2 inline comments as done. erichkeane added a comment. Woops, looks like I lost those in the rebase. Thanks for catching them! Repository: rC Clang https://reviews.llvm.org/D47474 ___ cfe-commits mailing list

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-05-29 Thread Mandeep Singh Grang via Phabricator via cfe-commits
mgrang added inline comments. Comment at: lib/Sema/SemaDecl.cpp:9440 + // Sort order doesn't matter, it just needs to be consistent. + std::sort(NewParsed.Features.begin(), NewParsed.Features.end()); Please use llvm::sort instead of std::sort. See

[PATCH] D47474: Implement cpu_dispatch/cpu_specific Multiversioning

2018-05-29 Thread Erich Keane via Phabricator via cfe-commits
erichkeane created this revision. erichkeane added reviewers: mikerice, echristo, aaron.ballman, gbiv. Herald added a reviewer: george.burgess.iv. Herald added a subscriber: mgrang. As documented here: https://software.intel.com/en-us/node/682969 and https://software.intel.com/en-us/node/523346.