diff options
| author | Douglas Gregor <dgregor@apple.com> | 2010-12-10 10:08:30 +0000 |
|---|---|---|
| committer | Douglas Gregor <dgregor@apple.com> | 2010-12-10 10:08:30 +0000 |
| commit | a7c04718805a1a0dc4bd95c2f1640d48ec463e7f (patch) | |
| tree | 134ddcd59d62ee8bd8bb0b2462068323dca37a4b | |
| parent | e737e261449c0d84c1d38c7cbff467a586d56247 (diff) | |
| download | bcm5719-llvm-a7c04718805a1a0dc4bd95c2f1640d48ec463e7f.tar.gz bcm5719-llvm-a7c04718805a1a0dc4bd95c2f1640d48ec463e7f.zip | |
Update ExtQuals comment to reflect the expansion of the fast qualifiers
llvm-svn: 121477
| -rw-r--r-- | clang/include/clang/AST/Type.h | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/clang/include/clang/AST/Type.h b/clang/include/clang/AST/Type.h index 65978bede87..ccc732f61e4 100644 --- a/clang/include/clang/AST/Type.h +++ b/clang/include/clang/AST/Type.h @@ -327,20 +327,16 @@ private: }; -/// ExtQuals - We can encode up to three bits in the low bits of a +/// ExtQuals - We can encode up to four bits in the low bits of a /// type pointer, but there are many more type qualifiers that we want /// to be able to apply to an arbitrary type. Therefore we have this /// struct, intended to be heap-allocated and used by QualType to /// store qualifiers. /// -/// The current design tags the 'const' and 'restrict' qualifiers in -/// two low bits on the QualType pointer; a third bit records whether -/// the pointer is an ExtQuals node. 'const' was chosen because it is -/// orders of magnitude more common than the other two qualifiers, in -/// both library and user code. It's relatively rare to see -/// 'restrict' in user code, but many standard C headers are saturated -/// with 'restrict' declarations, so that representing them efficiently -/// is a critical goal of this representation. +/// The current design tags the 'const', 'restrict', and 'volatile' qualifiers +/// in three low bits on the QualType pointer; a fourth bit records whether +/// the pointer is an ExtQuals node. The extended qualifiers (address spaces, +/// Objective-C GC attributes) are much more rare. class ExtQuals : public llvm::FoldingSetNode { // NOTE: changing the fast qualifiers should be straightforward as // long as you don't make 'const' non-fast. |

