[PATCH] D51200: Introduce per-callsite inline intrinsics

2019-11-04 Thread John McCall via Phabricator via cfe-commits
rjmccall added inline comments. Comment at: include/clang/CodeGen/CGFunctionInfo.h:517 + unsigned InlineCall : 2; + xbolva00 wrote: > rjmccall wrote: > > Please don't propagate this information through the `CGFunctionInfo`. I > > really want this type to be

[PATCH] D51200: Introduce per-callsite inline intrinsics

2019-11-04 Thread Dávid Bolvanský via Phabricator via cfe-commits
xbolva00 added inline comments. Comment at: include/clang/CodeGen/CGFunctionInfo.h:517 + unsigned InlineCall : 2; + rjmccall wrote: > Please don't propagate this information through the `CGFunctionInfo`. I > really want this type to be *less* site-specific,

[PATCH] D51200: Introduce per-callsite inline intrinsics

2018-09-04 Thread Richard Smith - zygoloid via Phabricator via cfe-commits
rsmith added a comment. Please also teach constant expression evaluation (lib/AST/ExprConstant.cpp) to look through these builtins when evaluating. https://reviews.llvm.org/D51200 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists

[PATCH] D51200: Introduce per-callsite inline intrinsics

2018-09-04 Thread John McCall via Phabricator via cfe-commits
rjmccall added a comment. In https://reviews.llvm.org/D51200#1223768, @kuhar wrote: > In https://reviews.llvm.org/D51200#1223752, @rsmith wrote: > > > +rjmccall for CodeGen changes > > > @rsmith @rjmccall > I have one high-level question about the CodeGen part that I wasn't able to > figure ou

[PATCH] D51200: Introduce per-callsite inline intrinsics

2018-09-04 Thread Jakub Kuderski via Phabricator via cfe-commits
kuhar added a comment. Thank you for the comments, Richard! In https://reviews.llvm.org/D51200#1223745, @rsmith wrote: > Have you considered whether the builtin should apply to `new` expressions? > (There are potentially three different top-level calls implied by a `new` > expression -- an `op

[PATCH] D51200: Introduce per-callsite inline intrinsics

2018-09-04 Thread Jakub Kuderski via Phabricator via cfe-commits
kuhar added a comment. In https://reviews.llvm.org/D51200#1223752, @rsmith wrote: > +rjmccall for CodeGen changes @rsmith @rjmccall I have one high-level question about the CodeGen part that I wasn't able to figure out: is it possible to bail out of custom CodeGen in CGBuiltin and somehow sa

[PATCH] D51200: Introduce per-callsite inline intrinsics

2018-09-04 Thread Richard Smith - zygoloid via Phabricator via cfe-commits
rsmith added a comment. +rjmccall for CodeGen changes https://reviews.llvm.org/D51200 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D51200: Introduce per-callsite inline intrinsics

2018-09-04 Thread Richard Smith - zygoloid via Phabricator via cfe-commits
rsmith added a comment. > Support for constructor calls (`CXXTemporaryExpr`) should also be possible, > but is not the part of this patch. (You should handle the base class (`CXXConstructExpr`) that describes the semantics, rather than the derived class (`CXXTemporaryObjectExpr`) that describe

[PATCH] D51200: Introduce per-callsite inline intrinsics

2018-08-24 Thread Jakub Kuderski via Phabricator via cfe-commits
kuhar updated this revision to Diff 162520. https://reviews.llvm.org/D51200 Files: include/clang/Basic/Builtins.def include/clang/Basic/DiagnosticSemaKinds.td include/clang/CodeGen/CGFunctionInfo.h lib/CodeGen/CGBuiltin.cpp lib/CodeGen/CGCall.cpp lib/CodeGen/CGExpr.cpp lib/CodeGen/C

[PATCH] D51200: Introduce per-callsite inline intrinsics

2018-08-24 Thread Jakub Kuderski via Phabricator via cfe-commits
kuhar updated this revision to Diff 162519. kuhar added a comment. Rename missed CallInlineKind parameters to CIK https://reviews.llvm.org/D51200 Files: include/clang/Basic/Builtins.def include/clang/Basic/DiagnosticSemaKinds.td include/clang/CodeGen/CGFunctionInfo.h lib/CodeGen/CGBuilt

[PATCH] D51200: Introduce per-callsite inline intrinsics

2018-08-24 Thread Jakub Kuderski via Phabricator via cfe-commits
kuhar added inline comments. Comment at: include/clang/Basic/DiagnosticSemaKinds.td:8236 +def err_argument_to_inline_intrinsic_builtin_call : Error< + "argument to %0 must not be a builtin call">; +def err_argument_to_inline_intrinsic_pdotr_call : Error< Quuxplu

[PATCH] D51200: Introduce per-callsite inline intrinsics

2018-08-24 Thread Jakub Kuderski via Phabricator via cfe-commits
kuhar updated this revision to Diff 162495. kuhar marked an inline comment as done. kuhar added a comment. Fix naming and add more tests. Repository: rC Clang https://reviews.llvm.org/D51200 Files: include/clang/Basic/Builtins.def include/clang/Basic/DiagnosticSemaKinds.td include/clan

[PATCH] D51200: Introduce per-callsite inline intrinsics

2018-08-24 Thread Arthur O'Dwyer via Phabricator via cfe-commits
Quuxplusone added inline comments. Comment at: include/clang/Basic/DiagnosticSemaKinds.td:8236 +def err_argument_to_inline_intrinsic_builtin_call : Error< + "argument to %0 must not be a builtin call">; +def err_argument_to_inline_intrinsic_pdotr_call : Error< I

[PATCH] D51200: Introduce per-callsite inline intrinsics

2018-08-24 Thread Jakub Kuderski via Phabricator via cfe-commits
kuhar added a comment. One extra question: do you think this deserves a separate RFC? Repository: rC Clang https://reviews.llvm.org/D51200 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-

[PATCH] D51200: Introduce per-callsite inline intrinsics

2018-08-23 Thread Jakub Kuderski via Phabricator via cfe-commits
kuhar added a comment. Disclaimer: I'm a Clang newbie and I'm not sure if that's a good way to implement these intrinsics. I'm not sure about the following things: - The new enum CallInlineKind may not be in the right place - Not sure if adding the extra parameter to EmitSomething methods is the

[PATCH] D51200: Introduce per-callsite inline intrinsics

2018-08-23 Thread Jakub Kuderski via Phabricator via cfe-commits
kuhar created this revision. kuhar added reviewers: rsmith, pcc, Prazek, sanjoy. kuhar added a project: clang. Herald added a subscriber: eraman. Herald added a reviewer: grosser. Traditionally, to force some inlining decisions one has to annotate function declarations with `__attribute__((always