Page MenuHomePhabricator

bricci (Bruno Ricci)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 3 2018, 3:59 AM (58 w, 5 d)

Recent Activity

Aug 7 2018

bricci added a comment to D48661: [Fixed Point Arithmetic] Fixed Point Constant.

Just to provide a bit of additional context:

Aug 7 2018, 8:35 AM · Restricted Project

Aug 6 2018

bricci added a comment to D48661: [Fixed Point Arithmetic] Fixed Point Constant.

Added some comments inline.
However I have not looked at the logic too closely and
have not looked at the tests at all.

Aug 6 2018, 2:51 PM · Restricted Project
bricci added a comment to D48661: [Fixed Point Arithmetic] Fixed Point Constant.

And using the name Sema is a bad idea IMHO since this has a totally different meaning in clang.

Aug 6 2018, 10:04 AM · Restricted Project
bricci added a comment to D48661: [Fixed Point Arithmetic] Fixed Point Constant.

Just a nit but could you please add new-lines to your commit messages.
Also the 3 bools in FixedPointSemantics are a little bit wasteful.
I don't know here if it matter but I have been spending the last weeks
cleaning up this kind of thing and this already cut the time of an fsyntax-only
by ~3.5%.

Aug 6 2018, 9:54 AM · Restricted Project

Aug 4 2018

bricci added a comment to D50261: [AST] Remove unnecessary indirections in DeclarationNameTable.

I did both a clean build and an incremental build with and without this patch and was not able to see any
meaningful difference in the build time. Suspiciously the build time *with* the patch in both cases is a little
less (~0.1% ) than without the patch but this is well within the noise. At least I was not able to observe
a significant increase in the build time.

Aug 4 2018, 3:50 AM · Restricted Project

Aug 3 2018

bricci updated the diff for D50261: [AST] Remove unnecessary indirections in DeclarationNameTable.

Added the deleted move ctors. (I think that they were already not declared because
of the user-provided copy ctor/assignment)

Aug 3 2018, 10:52 AM · Restricted Project
bricci added a comment to D50261: [AST] Remove unnecessary indirections in DeclarationNameTable.

Additionally I have taken a quick look at the headers which includes DeclarationName.h
and it seems that most of them already include Type.h (with the exception of DeclBase.h)

Aug 3 2018, 10:38 AM · Restricted Project
bricci added a comment to D50261: [AST] Remove unnecessary indirections in DeclarationNameTable.

It seems to me that the increased size of DeclarationNameTable is irrelevant since it is
only used as a member in ASTContext and never copied nor moved from. Also,
at least for C++ it seems to me that this structure is never "rarely used" since it is
used for every overloaded op/ctor/dtor (but I admit that I am not familiar with Sema)

Aug 3 2018, 10:29 AM · Restricted Project
bricci created D50261: [AST] Remove unnecessary indirections in DeclarationNameTable.
Aug 3 2018, 9:37 AM · Restricted Project

Aug 2 2018

bricci added a comment to D50163: [AST] Remove the static_assert check in ObjCMethodDecl::ObjCMethodDecl.

The static_assert itself cannot be in the bitfield since the whole point is to avoid including Basic/IdentifierTable.h just for this.

Aug 2 2018, 8:56 AM · Restricted Project

Aug 1 2018

bricci added a reviewer for D50163: [AST] Remove the static_assert check in ObjCMethodDecl::ObjCMethodDecl: erichkeane.
Aug 1 2018, 3:37 PM · Restricted Project
bricci created D50163: [AST] Remove the static_assert check in ObjCMethodDecl::ObjCMethodDecl.
Aug 1 2018, 3:24 PM · Restricted Project
bricci abandoned D49728: diff space.
Aug 1 2018, 2:16 PM
bricci added a comment to D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.

@erichkeane do you have any additional comments regarding this set of patches ?
I retested them on top of trunk and did not find any problem.

Aug 1 2018, 10:48 AM · Restricted Project
bricci updated the diff for D49732: [AST][2/4] Move the bit-fields from FunctionDecl and CXXConstructorDecl into DeclContext.

rebased after the great whitespace trimming

Aug 1 2018, 4:25 AM · Restricted Project
bricci updated the diff for D49733: [AST][3/4] Move the bit-fields from BlockDecl, LinkageSpecDecl and OMPDeclareReductionDecl into DeclContext.

rebased after the great whitespace trimming

Aug 1 2018, 4:24 AM · Restricted Project
bricci updated the diff for D49734: [AST][4/4] Move the bit-fields from ObjCMethodDecl and ObjCContainerDecl into DeclContext.

rebased after the great whitespace trimming

Aug 1 2018, 4:23 AM · Restricted Project
bricci updated the diff for D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.

rebased after the great whitespace trimming

Aug 1 2018, 4:21 AM · Restricted Project

Jul 26 2018

bricci updated the diff for D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.
  • Re-based: r337978 [ODRHash] Support hashing enums added an ODRHash to EnumDecl which conflicts with these changes. The corresponding flag HasODRHash has been put into EnumDeclBitfields.
  • The ugly IntegerType = (const Type *)nullptr; has been cleaned to IntegerType = nullptr; I guess the intent was to disambiguate between the two possible operator= but there is a special case for nullptr so this is not needed since const Type * is the first element of the pair.
  • Made hasNeedToReconcileExternalVisibleStorage, hasLazyLocalLexicalLookups and hasLazyExternalLexicalLookups private. This match what was originally the case with the private bit-fields. This also requires making ASTWriter a friend of DeclContext (as was the case before).
  • Fixed some comments in EnumDecl.
Jul 26 2018, 10:21 AM · Restricted Project
bricci updated the diff for D49790: [AST] Small doc update for DeclContext.

Re-added the "friend class ASTWriter" after making
hasNeedToReconcileExternalVisibleStorage, hasLazyLocalLexicalLookups
and hasLazyExternalLexicalLookups in DeclContext private.

Jul 26 2018, 9:42 AM · Restricted Project
bricci added a parent revision for D49790: [AST] Small doc update for DeclContext: D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.
Jul 26 2018, 9:41 AM · Restricted Project
bricci added a child revision for D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext: D49790: [AST] Small doc update for DeclContext.
Jul 26 2018, 9:41 AM · Restricted Project
bricci added a child revision for D49733: [AST][3/4] Move the bit-fields from BlockDecl, LinkageSpecDecl and OMPDeclareReductionDecl into DeclContext: D49734: [AST][4/4] Move the bit-fields from ObjCMethodDecl and ObjCContainerDecl into DeclContext.
Jul 26 2018, 9:40 AM · Restricted Project
bricci added a parent revision for D49734: [AST][4/4] Move the bit-fields from ObjCMethodDecl and ObjCContainerDecl into DeclContext: D49733: [AST][3/4] Move the bit-fields from BlockDecl, LinkageSpecDecl and OMPDeclareReductionDecl into DeclContext.
Jul 26 2018, 9:40 AM · Restricted Project
bricci added a parent revision for D49733: [AST][3/4] Move the bit-fields from BlockDecl, LinkageSpecDecl and OMPDeclareReductionDecl into DeclContext: D49732: [AST][2/4] Move the bit-fields from FunctionDecl and CXXConstructorDecl into DeclContext.
Jul 26 2018, 9:39 AM · Restricted Project
bricci added a child revision for D49732: [AST][2/4] Move the bit-fields from FunctionDecl and CXXConstructorDecl into DeclContext: D49733: [AST][3/4] Move the bit-fields from BlockDecl, LinkageSpecDecl and OMPDeclareReductionDecl into DeclContext.
Jul 26 2018, 9:39 AM · Restricted Project
bricci added a child revision for D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext: D49732: [AST][2/4] Move the bit-fields from FunctionDecl and CXXConstructorDecl into DeclContext.
Jul 26 2018, 9:38 AM · Restricted Project
bricci added a parent revision for D49732: [AST][2/4] Move the bit-fields from FunctionDecl and CXXConstructorDecl into DeclContext: D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.
Jul 26 2018, 9:38 AM · Restricted Project

Jul 25 2018

bricci updated the diff for D49734: [AST][4/4] Move the bit-fields from ObjCMethodDecl and ObjCContainerDecl into DeclContext.
  • clang-format on the changes
  • remove the unnecessary getFamilyImpl and setFamilyImpl
Jul 25 2018, 9:53 AM · Restricted Project
bricci updated the diff for D49733: [AST][3/4] Move the bit-fields from BlockDecl, LinkageSpecDecl and OMPDeclareReductionDecl into DeclContext.
  • clang-format on the changes
  • removed the unnecessary hasBracesImpl and setBracesImpl
Jul 25 2018, 9:53 AM · Restricted Project
bricci updated the diff for D49732: [AST][2/4] Move the bit-fields from FunctionDecl and CXXConstructorDecl into DeclContext.
  • ran clang-format on the changes
  • removed the unnecessary setPureImpl, isMultiVersionImpl and setMultiVersionImpl. However unfortunately I think that isDeletedImpl has to stay because ASTDeclWriter::VisitFunctionDecl need to access this bit but we do not want to make ASTDeclWriter a friend of FunctionDeclBitfields just for this. FWIW I have renamed it to isDeletedBit...
Jul 25 2018, 9:53 AM · Restricted Project
bricci updated the diff for D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.
  • clang-format on the changes in the .cpp files
Jul 25 2018, 9:52 AM · Restricted Project
bricci added a comment to D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.

It might be better to wait just after the upcoming release branch in any case
since even though it is all NFC this causes a bit of churn.

Jul 25 2018, 6:14 AM · Restricted Project
bricci updated the summary of D49790: [AST] Small doc update for DeclContext.
Jul 25 2018, 5:30 AM · Restricted Project
bricci updated the summary of D49790: [AST] Small doc update for DeclContext.
Jul 25 2018, 5:30 AM · Restricted Project
bricci updated the diff for D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.

address @erichkeane comments:

  • ran clang-format on changed parts
  • made the setters setNumPositiveBits, setNumPositiveBits, setScoped, setScopedUsingClassTag and setFixed in EnumDecl private.
  • made the setters setBeingDefined and setBeingDefined in TagDecl protected
  • moved the static_asserts to the anonymous union
  • factored out the doc update of DeclBase. This is now https://reviews.llvm.org/D49790
  • various typos
Jul 25 2018, 5:26 AM · Restricted Project
bricci created D49790: [AST] Small doc update for DeclContext.
Jul 25 2018, 5:25 AM · Restricted Project

Jul 24 2018

bricci updated the summary of D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.
Jul 24 2018, 11:30 AM · Restricted Project
bricci updated the summary of D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.
Jul 24 2018, 11:24 AM · Restricted Project
bricci updated the summary of D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.
Jul 24 2018, 10:33 AM · Restricted Project
bricci added reviewers for D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext: erichkeane, rsmith, rnk.
Jul 24 2018, 10:11 AM · Restricted Project
bricci added reviewers for D49732: [AST][2/4] Move the bit-fields from FunctionDecl and CXXConstructorDecl into DeclContext: erichkeane, rsmith, rnk.
Jul 24 2018, 10:11 AM · Restricted Project
bricci added reviewers for D49733: [AST][3/4] Move the bit-fields from BlockDecl, LinkageSpecDecl and OMPDeclareReductionDecl into DeclContext: erichkeane, rsmith, rnk.
Jul 24 2018, 10:10 AM · Restricted Project
bricci added reviewers for D49734: [AST][4/4] Move the bit-fields from ObjCMethodDecl and ObjCContainerDecl into DeclContext: erichkeane, rsmith, rnk.
Jul 24 2018, 10:10 AM · Restricted Project
bricci updated the diff for D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.
  • removed some unrelated change
  • add a comment about why uint64_t instead of unsigned
Jul 24 2018, 9:51 AM · Restricted Project
bricci added a comment to D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.

remove the inline comment about uint64_t.

Jul 24 2018, 9:43 AM · Restricted Project
bricci updated the diff for D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.

updated some some comments in DeclContext

Jul 24 2018, 8:52 AM · Restricted Project
bricci added a comment to D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.

added some inline comments

Jul 24 2018, 8:39 AM · Restricted Project
bricci updated the summary of D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.
Jul 24 2018, 8:03 AM · Restricted Project
bricci updated the summary of D49732: [AST][2/4] Move the bit-fields from FunctionDecl and CXXConstructorDecl into DeclContext.
Jul 24 2018, 8:03 AM · Restricted Project
bricci updated the summary of D49733: [AST][3/4] Move the bit-fields from BlockDecl, LinkageSpecDecl and OMPDeclareReductionDecl into DeclContext.
Jul 24 2018, 8:02 AM · Restricted Project
bricci created D49734: [AST][4/4] Move the bit-fields from ObjCMethodDecl and ObjCContainerDecl into DeclContext.
Jul 24 2018, 8:02 AM · Restricted Project
bricci updated the summary of D49732: [AST][2/4] Move the bit-fields from FunctionDecl and CXXConstructorDecl into DeclContext.
Jul 24 2018, 7:58 AM · Restricted Project
bricci created D49733: [AST][3/4] Move the bit-fields from BlockDecl, LinkageSpecDecl and OMPDeclareReductionDecl into DeclContext.
Jul 24 2018, 7:57 AM · Restricted Project
bricci created D49732: [AST][2/4] Move the bit-fields from FunctionDecl and CXXConstructorDecl into DeclContext.
Jul 24 2018, 7:53 AM · Restricted Project
bricci updated the summary of D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.
Jul 24 2018, 7:51 AM · Restricted Project
bricci created D49729: [AST][1/4] Move the bit-fields from TagDecl, EnumDecl and RecordDecl into DeclContext.
Jul 24 2018, 7:32 AM · Restricted Project
bricci created D49728: diff space.
Jul 24 2018, 7:07 AM

Jul 20 2018

bricci added a comment to D49302: [AST] Various micro-optimizations in CXXInheritance.

@bkramer Thanks for the review! Can you commit it for my since I can not do it myself?

Jul 20 2018, 12:49 PM · Restricted Project

Jul 14 2018

bricci updated the diff for D48873: [AST] Use llvm::TrailingObjects in CXXTryStmt.

wrong diff

Jul 14 2018, 12:06 PM · Restricted Project
bricci updated the diff for D48873: [AST] Use llvm::TrailingObjects in CXXTryStmt.
  1. Remove unnecessary use of getTrailingObjects and use getStmts instead.
  2. Move friend class ASTStmtReader; to the top with the other friend declaration.
  3. Reword message.
Jul 14 2018, 12:03 PM · Restricted Project

Jul 13 2018

bricci created D49302: [AST] Various micro-optimizations in CXXInheritance.
Jul 13 2018, 9:26 AM · Restricted Project

Jul 3 2018

bricci created D48873: [AST] Use llvm::TrailingObjects in CXXTryStmt.
Jul 3 2018, 4:38 AM · Restricted Project