[PATCH] D52267: [AST] Various optimizations + refactoring in DeclarationName(Table)
Bruno Ricci via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Sep 20 10:35:26 PDT 2018
riccibruno updated this revision to Diff 166324.
riccibruno marked 9 inline comments as done.
riccibruno added a comment.
Address rjmccall comments:
1. Renamed `CXXSpecialName` to `CXXSpecialNameExtra`
2. Introduced a constant `IdentifierInfoAlignment` for `alignas(IdentifierInfoAlignment)`
3. Updated some comments
4. Cleaned up the `static_assert` which checked the consistency of the numerical values of the enumerators.
Regarding using a `PointerIntPair` it would work if we pass a custom
`PointerLikeTypeTraits` to state that, yes, our `void *` are aligned to 8 bytes
instead of 4. However I am not sure this is a good idea since the `PointerIntPair`
do not really simplify the code. What we really want here is a pointer union but we
also need precise control over the low bits.
Repository:
rC Clang
https://reviews.llvm.org/D52267
Files:
include/clang/AST/DeclarationName.h
include/clang/Basic/IdentifierTable.h
lib/AST/DeclarationName.cpp
lib/Basic/IdentifierTable.cpp
lib/Sema/IdentifierResolver.cpp
lib/Serialization/ASTReader.cpp
lib/Serialization/ASTWriter.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D52267.166324.patch
Type: text/x-patch
Size: 65105 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20180920/a26da9d5/attachment-0001.bin>
More information about the cfe-commits
mailing list