reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Declarations

include/llvm/ADT/APInt.h
   26 class FoldingSetNodeID;
include/llvm/ADT/FoldingSet.h
  102 class FoldingSetNodeID;
include/llvm/CodeGen/MachineConstantPool.h
   27 class FoldingSetNodeID;
include/llvm/CodeGen/MachineMemOperand.h
   27 class FoldingSetNodeID;
tools/clang/include/clang/AST/Stmt.h
   38 class FoldingSetNodeID;
tools/clang/include/clang/AST/TemplateBase.h
   36 class FoldingSetNodeID;

References

include/llvm/ADT/APFloat.h
  954   void Profile(FoldingSetNodeID &NID) const;
include/llvm/ADT/APInt.h
  352   void Profile(FoldingSetNodeID &id) const;
include/llvm/ADT/APSInt.h
  336   void Profile(FoldingSetNodeID& ID) const;
include/llvm/ADT/FoldingSet.h
  182   virtual void GetNodeProfile(Node *N, FoldingSetNodeID &ID) const = 0;
  186   virtual bool NodeEquals(Node *N, const FoldingSetNodeID &ID, unsigned IDHash,
  187                           FoldingSetNodeID &TempID) const=0;
  191   virtual unsigned ComputeNodeHash(Node *N, FoldingSetNodeID &TempID) const = 0;
  208   Node *FindNodeOrInsertPos(const FoldingSetNodeID &ID, void *&InsertPos);
  221   static void Profile(const T &X, FoldingSetNodeID &ID) {
  224   static void Profile(T &X, FoldingSetNodeID &ID) {
  232   static inline bool Equals(T &X, const FoldingSetNodeID &ID, unsigned IDHash,
  233                             FoldingSetNodeID &TempID);
  240   static inline unsigned ComputeHash(T &X, FoldingSetNodeID &TempID);
  256   static void Profile(T &X, FoldingSetNodeID &ID, Ctx Context) {
  260   static inline bool Equals(T &X, const FoldingSetNodeID &ID, unsigned IDHash,
  261                             FoldingSetNodeID &TempID, Ctx Context);
  262   static inline unsigned ComputeHash(T &X, FoldingSetNodeID &TempID,
  326   void AddNodeID(const FoldingSetNodeID &ID);
  340   bool operator==(const FoldingSetNodeID &RHS) const;
  343   bool operator!=(const FoldingSetNodeID &RHS) const { return !(*this == RHS); }
  348   bool operator<(const FoldingSetNodeID &RHS) const;
  366 DefaultFoldingSetTrait<T>::Equals(T &X, const FoldingSetNodeID &ID,
  368                                   FoldingSetNodeID &TempID) {
  374 DefaultFoldingSetTrait<T>::ComputeHash(T &X, FoldingSetNodeID &TempID) {
  381                                                  const FoldingSetNodeID &ID,
  383                                                  FoldingSetNodeID &TempID,
  391                                                       FoldingSetNodeID &TempID,
  444   T *FindNodeOrInsertPos(const FoldingSetNodeID &ID, void *&InsertPos) {
  479   void GetNodeProfile(Node *N, FoldingSetNodeID &ID) const override {
  486   bool NodeEquals(Node *N, const FoldingSetNodeID &ID, unsigned IDHash,
  487                   FoldingSetNodeID &TempID) const override {
  494   unsigned ComputeNodeHash(Node *N, FoldingSetNodeID &TempID) const override {
  528   void GetNodeProfile(Node *N, FoldingSetNodeID &ID) const override {
  533   bool NodeEquals(Node *N, const FoldingSetNodeID &ID, unsigned IDHash,
  534                   FoldingSetNodeID &TempID) const override {
  540   unsigned ComputeNodeHash(Node *N, FoldingSetNodeID &TempID) const override {
  581   T *FindNodeOrInsertPos(const FoldingSetNodeID &ID, void *&InsertPos) {
  717   void Profile(FoldingSetNodeID &ID) { FoldingSetTrait<T>::Profile(data, ID); }
  733   FoldingSetNodeID FastID;
  736   explicit FastFoldingSetNode(const FoldingSetNodeID &ID) : FastID(ID) {}
  739   void Profile(FoldingSetNodeID &ID) const { ID.AddNodeID(FastID); }
  746   static inline void Profile(T *X, FoldingSetNodeID &ID) {
  753                              FoldingSetNodeID &ID) {
include/llvm/ADT/ImmutableList.h
   44   static inline void Profile(FoldingSetNodeID& ID, const T& H,
   50   void Profile(FoldingSetNodeID& ID) {
  143   void Profile(FoldingSetNodeID& ID) const {
  178     FoldingSetNodeID ID;
include/llvm/ADT/ImmutableMap.h
   54   static inline void Profile(FoldingSetNodeID& ID, value_type_ref V) {
  245   static inline void Profile(FoldingSetNodeID& ID, const ImmutableMap& M) {
  249   inline void Profile(FoldingSetNodeID& ID) const {
  405   static inline void Profile(FoldingSetNodeID &ID, const ImmutableMapRef &M) {
  409   inline void Profile(FoldingSetNodeID &ID) const { return Profile(ID, *this); }
include/llvm/ADT/ImmutableSet.h
  304     FoldingSetNodeID ID;
  843   static void Profile(FoldingSetNodeID &ID, value_type_ref X) {
  854   static void Profile(FoldingSetNodeID &ID, value_type_ref X) {
  881   static void Profile(FoldingSetNodeID &ID, value_type_ref X) {
  893   static void Profile(FoldingSetNodeID &ID, value_type_ref X) {
 1095   static void Profile(FoldingSetNodeID &ID, const ImmutableSet &S) {
 1099   void Profile(FoldingSetNodeID &ID) const { return Profile(ID, *this); }
 1208   static void Profile(FoldingSetNodeID &ID, const ImmutableSetRef &S) {
 1212   void Profile(FoldingSetNodeID &ID) const { return Profile(ID, *this); }
include/llvm/Analysis/ScalarEvolution.h
  168   static void Profile(const SCEV &X, FoldingSetNodeID &ID) { ID = X.FastID; }
  170   static bool Equals(const SCEV &X, const FoldingSetNodeID &ID, unsigned IDHash,
  171                      FoldingSetNodeID &TempID) {
  175   static unsigned ComputeHash(const SCEV &X, FoldingSetNodeID &TempID) {
  248   static void Profile(const SCEVPredicate &X, FoldingSetNodeID &ID) {
  252   static bool Equals(const SCEVPredicate &X, const FoldingSetNodeID &ID,
  253                      unsigned IDHash, FoldingSetNodeID &TempID) {
  258                               FoldingSetNodeID &TempID) {
 1889   std::tuple<const SCEV *, FoldingSetNodeID, void *>
include/llvm/CodeGen/DIE.h
   73   void Profile(FoldingSetNodeID &ID) const;
  119   void Profile(FoldingSetNodeID &ID) const;
include/llvm/CodeGen/GlobalISel/CSEInfo.h
   37   void Profile(FoldingSetNodeID &ID);
   98   UniqueMachineInstr *getNodeIfExists(FoldingSetNodeID &ID,
  108   MachineInstr *getMachineInstrIfExists(FoldingSetNodeID &ID,
  168   FoldingSetNodeID &ID;
  172   GISelInstProfileBuilder(FoldingSetNodeID &ID, const MachineRegisterInfo &MRI)
include/llvm/CodeGen/GlobalISel/CSEMIRBuilder.h
   50   MachineInstrBuilder getDominatingInstrForID(FoldingSetNodeID &ID,
include/llvm/CodeGen/MachineConstantPool.h
   50   virtual void addSelectionDAGCSEId(FoldingSetNodeID &ID) = 0;
include/llvm/CodeGen/MachineMemOperand.h
  292   void Profile(FoldingSetNodeID &ID) const;
include/llvm/CodeGen/SelectionDAG.h
  114   static void Profile(const SDVTListNode &X, FoldingSetNodeID& ID) {
  118   static bool Equals(const SDVTListNode &X, const FoldingSetNodeID &ID,
  119                      unsigned IDHash, FoldingSetNodeID &TempID) {
  125   static unsigned ComputeHash(const SDVTListNode &X, FoldingSetNodeID &TempID) {
 1734   SDNode *FindNodeOrInsertPos(const FoldingSetNodeID &ID, void *&InsertPos);
 1739   SDNode *FindNodeOrInsertPos(const FoldingSetNodeID &ID, const SDLoc &DL,
 1774   FoldingSetNodeID ID;
include/llvm/CodeGen/SelectionDAGNodes.h
 1090   void Profile(FoldingSetNodeID &ID) const;
include/llvm/IR/Attributes.h
  183   void Profile(FoldingSetNodeID &ID) const {
include/llvm/IR/LegacyPassManagers.h
  258     void Profile(FoldingSetNodeID &ID) const {
  261     static void Profile(FoldingSetNodeID &ID, const AnalysisUsage &AU) {
include/llvm/Support/SMTAPI.h
   58   virtual void Profile(llvm::FoldingSetNodeID &ID) const = 0;
   61     llvm::FoldingSetNodeID ID1, ID2;
  106     llvm::FoldingSetNodeID ID1, ID2;
  112   virtual void Profile(llvm::FoldingSetNodeID &ID) const = 0;
include/llvm/TableGen/Record.h
  260   void Profile(FoldingSetNodeID &ID) const;
  533   void Profile(FoldingSetNodeID &ID) const;
  684   void Profile(FoldingSetNodeID &ID) const;
  772   void Profile(FoldingSetNodeID &ID) const;
  827   void Profile(FoldingSetNodeID &ID) const;
  882   void Profile(FoldingSetNodeID &ID) const;
  947   void Profile(FoldingSetNodeID &ID) const;
 1019   void Profile(FoldingSetNodeID &ID) const;
 1052   void Profile(FoldingSetNodeID &ID) const;
 1232   void Profile(FoldingSetNodeID &ID) const;
 1330   void Profile(FoldingSetNodeID &ID) const;
lib/Analysis/ScalarEvolution.cpp
  421   FoldingSetNodeID ID;
 1262   FoldingSetNodeID ID;
 1576     FoldingSetNodeID ID;
 1656   FoldingSetNodeID ID;
 1966   FoldingSetNodeID ID;
 2788   FoldingSetNodeID ID;
 2810   FoldingSetNodeID ID;
 2833   FoldingSetNodeID ID;
 3306   FoldingSetNodeID ID;
 3537 std::tuple<const SCEV *, FoldingSetNodeID, void *>
 3540   FoldingSetNodeID ID;
 3666   FoldingSetNodeID ID;
 3742   FoldingSetNodeID ID;
12066   FoldingSetNodeID ID;
12085   FoldingSetNodeID ID;
lib/CodeGen/AsmPrinter/DIE.cpp
   42 void DIEAbbrevData::Profile(FoldingSetNodeID &ID) const {
   57 void DIEAbbrev::Profile(FoldingSetNodeID &ID) const {
  148   FoldingSetNodeID ID;
lib/CodeGen/GlobalISel/CSEInfo.cpp
   25 void UniqueMachineInstr::Profile(FoldingSetNodeID &ID) {
  101 UniqueMachineInstr *GISelCSEInfo::getNodeIfExists(FoldingSetNodeID &ID,
  148 MachineInstr *GISelCSEInfo::getMachineInstrIfExists(FoldingSetNodeID &ID,
lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
   34 CSEMIRBuilder::getDominatingInstrForID(FoldingSetNodeID &ID,
  189   FoldingSetNodeID ID;
  215   FoldingSetNodeID ID;
  242   FoldingSetNodeID ID;
lib/CodeGen/MachineOperand.cpp
 1040 void MachineMemOperand::Profile(FoldingSetNodeID &ID) const {
lib/CodeGen/SelectionDAG/SelectionDAG.cpp
  436 static void AddNodeIDOpcode(FoldingSetNodeID &ID, unsigned OpC)  {
  442 static void AddNodeIDValueTypes(FoldingSetNodeID &ID, SDVTList VTList) {
  447 static void AddNodeIDOperands(FoldingSetNodeID &ID,
  456 static void AddNodeIDOperands(FoldingSetNodeID &ID,
  464 static void AddNodeIDNode(FoldingSetNodeID &ID, unsigned short OpC,
  472 static void AddNodeIDCustom(FoldingSetNodeID &ID, const SDNode *N) {
  640 static void AddNodeIDNode(FoldingSetNodeID &ID, const SDNode *N) {
  941   FoldingSetNodeID ID;
  961   FoldingSetNodeID ID;
  979   FoldingSetNodeID ID;
 1036 SDNode *SelectionDAG::FindNodeOrInsertPos(const FoldingSetNodeID &ID,
 1051 SDNode *SelectionDAG::FindNodeOrInsertPos(const FoldingSetNodeID &ID,
 1264   FoldingSetNodeID ID;
 1316   FoldingSetNodeID ID;
 1373   FoldingSetNodeID ID;
 1391   FoldingSetNodeID ID;
 1409   FoldingSetNodeID ID;
 1434   FoldingSetNodeID ID;
 1460   FoldingSetNodeID ID;
 1479   FoldingSetNodeID ID;
 1495   FoldingSetNodeID ID;
 1715   FoldingSetNodeID ID;
 1753   FoldingSetNodeID ID;
 1768   FoldingSetNodeID ID;
 1788   FoldingSetNodeID ID;
 1810   FoldingSetNodeID ID;
 1829   FoldingSetNodeID ID;
 1844   FoldingSetNodeID ID;
 1868   FoldingSetNodeID ID;
 4263   FoldingSetNodeID ID;
 4671     FoldingSetNodeID ID;
 5422     FoldingSetNodeID ID;
 5567     FoldingSetNodeID ID;
 6483   FoldingSetNodeID ID;
 6597     FoldingSetNodeID ID;
 6635   FoldingSetNodeID ID;
 6745   FoldingSetNodeID ID;
 6847   FoldingSetNodeID ID;
 6914   FoldingSetNodeID ID;
 6943   FoldingSetNodeID ID;
 6970   FoldingSetNodeID ID;
 7000   FoldingSetNodeID ID;
 7028   FoldingSetNodeID ID;
 7069   FoldingSetNodeID ID;
 7245     FoldingSetNodeID ID;
 7303     FoldingSetNodeID ID;
 7363   FoldingSetNodeID ID;
 7381   FoldingSetNodeID ID;
 7401   FoldingSetNodeID ID;
 7424   FoldingSetNodeID ID;
 7700     FoldingSetNodeID ID;
 7919     FoldingSetNodeID ID;
 7965     FoldingSetNodeID ID;
 8850 void SDNode::Profile(FoldingSetNodeID &ID) const {
lib/IR/AttributeImpl.h
   77   void Profile(FoldingSetNodeID &ID) const {
   88   static void Profile(FoldingSetNodeID &ID, Attribute::AttrKind Kind,
   94   static void Profile(FoldingSetNodeID &ID, StringRef Kind, StringRef Values) {
   99   static void Profile(FoldingSetNodeID &ID, Attribute::AttrKind Kind,
  224   void Profile(FoldingSetNodeID &ID) const {
  228   static void Profile(FoldingSetNodeID &ID, ArrayRef<Attribute> AttrList) {
  278   void Profile(FoldingSetNodeID &ID) const;
  279   static void Profile(FoldingSetNodeID &ID, ArrayRef<AttributeSet> Nodes);
lib/IR/Attributes.cpp
   83   FoldingSetNodeID ID;
  106   FoldingSetNodeID ID;
  127   FoldingSetNodeID ID;
  743   FoldingSetNodeID ID;
  925 void AttributeListImpl::Profile(FoldingSetNodeID &ID) const {
  929 void AttributeListImpl::Profile(FoldingSetNodeID &ID,
  950   FoldingSetNodeID ID;
lib/IR/LegacyPassManager.cpp
  682     FoldingSetNodeID ID;
lib/Support/APFloat.cpp
 4540 void APFloat::Profile(FoldingSetNodeID &NID) const {
lib/Support/APInt.cpp
  159 void APInt::Profile(FoldingSetNodeID& ID) const {
lib/Support/APSInt.cpp
   39 void APSInt::Profile(FoldingSetNodeID& ID) const {
lib/Support/FoldingSet.cpp
  139 void FoldingSetNodeID::AddNodeID(const FoldingSetNodeID &ID) {
  151 bool FoldingSetNodeID::operator==(const FoldingSetNodeID &RHS) const {
  163 bool FoldingSetNodeID::operator<(const FoldingSetNodeID &RHS) const {
  282   FoldingSetNodeID TempID;
  321 FoldingSetBase::FindNodeOrInsertPos(const FoldingSetNodeID &ID,
  329   FoldingSetNodeID TempID;
  351     FoldingSetNodeID TempID;
  417   FoldingSetNodeID ID;
lib/Support/ItaniumManglingCanonicalizer.cpp
   28   llvm::FoldingSetNodeID &ID;
   58 void profileCtor(llvm::FoldingSetNodeID &ID, Node::Kind K, T ...V) {
   70   FoldingSetNodeID &ID;
   77   FoldingSetNodeID &ID;
   87 void profileNode(llvm::FoldingSetNodeID &ID, const Node *N) {
   98     void Profile(llvm::FoldingSetNodeID &ID) { profileNode(ID, getNode()); }
  120     llvm::FoldingSetNodeID ID;
lib/TableGen/Record.cpp
  150 static void ProfileRecordRecTy(FoldingSetNodeID &ID,
  172   FoldingSetNodeID ID;
  198 void RecordRecTy::Profile(FoldingSetNodeID &ID) const {
  335 ProfileBitsInit(FoldingSetNodeID &ID, ArrayRef<Init *> Range) {
  345   FoldingSetNodeID ID;
  361 void BitsInit::Profile(FoldingSetNodeID &ID) const {
  560 static void ProfileListInit(FoldingSetNodeID &ID,
  573   FoldingSetNodeID ID;
  592 void ListInit::Profile(FoldingSetNodeID &ID) const {
  687 ProfileUnOpInit(FoldingSetNodeID &ID, unsigned Opcode, Init *Op, RecTy *Type) {
  696   FoldingSetNodeID ID;
  708 void UnOpInit::Profile(FoldingSetNodeID &ID) const {
  817 ProfileBinOpInit(FoldingSetNodeID &ID, unsigned Opcode, Init *LHS, Init *RHS,
  829   FoldingSetNodeID ID;
  841 void BinOpInit::Profile(FoldingSetNodeID &ID) const {
 1045 ProfileTernOpInit(FoldingSetNodeID &ID, unsigned Opcode, Init *LHS, Init *MHS,
 1058   FoldingSetNodeID ID;
 1070 void TernOpInit::Profile(FoldingSetNodeID &ID) const {
 1261 static void ProfileFoldOpInit(FoldingSetNodeID &ID, Init *A, Init *B,
 1276   FoldingSetNodeID ID;
 1288 void FoldOpInit::Profile(FoldingSetNodeID &ID) const {
 1332 static void ProfileIsAOpInit(FoldingSetNodeID &ID, RecTy *CheckType,
 1341   FoldingSetNodeID ID;
 1353 void IsAOpInit::Profile(FoldingSetNodeID &ID) const {
 1583 static void ProfileVarDefInit(FoldingSetNodeID &ID,
 1596   FoldingSetNodeID ID;
 1612 void VarDefInit::Profile(FoldingSetNodeID &ID) const {
 1746 static void ProfileCondOpInit(FoldingSetNodeID &ID,
 1762 void CondOpInit::Profile(FoldingSetNodeID &ID) const {
 1776   FoldingSetNodeID ID;
 1877 static void ProfileDagInit(FoldingSetNodeID &ID, Init *V, StringInit *VN,
 1898   FoldingSetNodeID ID;
 1929 void DagInit::Profile(FoldingSetNodeID &ID) const {
lib/Target/ARM/ARMConstantPoolValue.cpp
   81 ARMConstantPoolValue::addSelectionDAGCSEId(FoldingSetNodeID &ID) {
  209 void ARMConstantPoolConstant::addSelectionDAGCSEId(FoldingSetNodeID &ID) {
  249 void ARMConstantPoolSymbol::addSelectionDAGCSEId(FoldingSetNodeID &ID) {
  290 void ARMConstantPoolMBB::addSelectionDAGCSEId(FoldingSetNodeID &ID) {
lib/Target/ARM/ARMConstantPoolValue.h
  119   void addSelectionDAGCSEId(FoldingSetNodeID &ID) override;
  196   void addSelectionDAGCSEId(FoldingSetNodeID &ID) override;
  228   void addSelectionDAGCSEId(FoldingSetNodeID &ID) override;
  264   void addSelectionDAGCSEId(FoldingSetNodeID &ID) override;
lib/Target/Hexagon/HexagonCommonGEP.cpp
  492     FoldingSetNodeID ID;
lib/Target/SystemZ/SystemZConstantPoolValue.cpp
   44 void SystemZConstantPoolValue::addSelectionDAGCSEId(FoldingSetNodeID &ID) {
lib/Target/SystemZ/SystemZConstantPoolValue.h
   47   void addSelectionDAGCSEId(FoldingSetNodeID &ID) override;
tools/clang/include/clang/AST/ASTContext.h
  301     void Profile(llvm::FoldingSetNodeID &ID) { Profile(ID, Parm); }
  303     static void Profile(llvm::FoldingSetNodeID &ID,
tools/clang/include/clang/AST/CanonicalType.h
  196   void Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/include/clang/AST/DeclTemplate.h
  591   void Profile(llvm::FoldingSetNodeID &ID) {
  596   Profile(llvm::FoldingSetNodeID &ID, ArrayRef<TemplateArgument> TemplateArgs,
 1884   void Profile(llvm::FoldingSetNodeID &ID) const {
 1889   Profile(llvm::FoldingSetNodeID &ID, ArrayRef<TemplateArgument> TemplateArgs,
 2726   void Profile(llvm::FoldingSetNodeID &ID) const {
 2730   static void Profile(llvm::FoldingSetNodeID &ID,
tools/clang/include/clang/AST/DeclarationName.h
   69   void Profile(llvm::FoldingSetNodeID &ID) {
   94   void Profile(llvm::FoldingSetNodeID &ID) { ID.AddPointer(Template); }
  134   void Profile(llvm::FoldingSetNodeID &FSID) { FSID.AddPointer(ID); }
tools/clang/include/clang/AST/NestedNameSpecifier.h
  221   void Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/include/clang/AST/ODRHash.h
   49   llvm::FoldingSetNodeID ID;
tools/clang/include/clang/AST/Stmt.h
 1196   void Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Context,
 1206   void ProcessODRHash(llvm::FoldingSetNodeID &ID, ODRHash& Hash) const;
tools/clang/include/clang/AST/TemplateBase.h
  388   void Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Context) const;
tools/clang/include/clang/AST/TemplateName.h
  152   void Profile(llvm::FoldingSetNodeID &ID, ASTContext &Context);
  154   static void Profile(llvm::FoldingSetNodeID &ID,
  323   void Profile(llvm::FoldingSetNodeID &ID) {
  361   void Profile(llvm::FoldingSetNodeID &ID);
  363   static void Profile(llvm::FoldingSetNodeID &ID,
  422   void Profile(llvm::FoldingSetNodeID &ID) {
  426   static void Profile(llvm::FoldingSetNodeID &ID, NestedNameSpecifier *NNS,
  520   void Profile(llvm::FoldingSetNodeID &ID) {
  527   static void Profile(llvm::FoldingSetNodeID &ID, NestedNameSpecifier *NNS,
  534   static void Profile(llvm::FoldingSetNodeID &ID, NestedNameSpecifier *NNS,
tools/clang/include/clang/AST/Type.h
  560   void Profile(llvm::FoldingSetNodeID &ID) const {
 1045   void Profile(llvm::FoldingSetNodeID &ID) const {
 1371   void Profile(llvm::FoldingSetNodeID &ID) const {
 1375   static void Profile(llvm::FoldingSetNodeID &ID,
 2543   void Profile(llvm::FoldingSetNodeID &ID) {
 2547   static void Profile(llvm::FoldingSetNodeID &ID, QualType Element) {
 2573   void Profile(llvm::FoldingSetNodeID &ID) {
 2577   static void Profile(llvm::FoldingSetNodeID &ID, QualType Inner) {
 2619   void Profile(llvm::FoldingSetNodeID &ID) {
 2623   static void Profile(llvm::FoldingSetNodeID &ID, QualType Pointee) {
 2655   void Profile(llvm::FoldingSetNodeID &ID) {
 2659   static void Profile(llvm::FoldingSetNodeID &ID, QualType Orig, QualType New) {
 2707   void Profile(llvm::FoldingSetNodeID &ID) {
 2711   static void Profile(llvm::FoldingSetNodeID &ID, QualType Pointee) {
 2750   void Profile(llvm::FoldingSetNodeID &ID) {
 2754   static void Profile(llvm::FoldingSetNodeID &ID,
 2844   void Profile(llvm::FoldingSetNodeID &ID) {
 2848   static void Profile(llvm::FoldingSetNodeID &ID, QualType Pointee,
 2948   void Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Ctx) {
 2953   static void Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Ctx,
 2983   void Profile(llvm::FoldingSetNodeID &ID) {
 2988   static void Profile(llvm::FoldingSetNodeID &ID, QualType ET,
 3046   void Profile(llvm::FoldingSetNodeID &ID) {
 3103   void Profile(llvm::FoldingSetNodeID &ID) {
 3108   static void Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Context,
 3148   void Profile(llvm::FoldingSetNodeID &ID) {
 3152   static void Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Context,
 3192   void Profile(llvm::FoldingSetNodeID &ID) {
 3196   static void Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Context,
 3255   void Profile(llvm::FoldingSetNodeID &ID) {
 3260   static void Profile(llvm::FoldingSetNodeID &ID, QualType ElementType,
 3310   void Profile(llvm::FoldingSetNodeID &ID) {
 3314   static void Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Context,
 3613     void Profile(llvm::FoldingSetNodeID &ID) const {
 3703   void Profile(llvm::FoldingSetNodeID &ID) {
 3707   static void Profile(llvm::FoldingSetNodeID &ID, QualType ResultType,
 4148   void Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Ctx);
 4149   static void Profile(llvm::FoldingSetNodeID &ID, QualType Result,
 4180   void Profile(llvm::FoldingSetNodeID &ID) {
 4184   static void Profile(llvm::FoldingSetNodeID &ID,
 4284   void Profile(llvm::FoldingSetNodeID &ID) {
 4288   static void Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Context,
 4354   void Profile(llvm::FoldingSetNodeID &ID) {
 4358   static void Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Context,
 4410   void Profile(llvm::FoldingSetNodeID &ID) {
 4414   static void Profile(llvm::FoldingSetNodeID &ID, QualType BaseType,
 4580   void Profile(llvm::FoldingSetNodeID &ID) {
 4584   static void Profile(llvm::FoldingSetNodeID &ID, Kind attrKind,
 4652   void Profile(llvm::FoldingSetNodeID &ID) {
 4656   static void Profile(llvm::FoldingSetNodeID &ID, unsigned Depth,
 4705   void Profile(llvm::FoldingSetNodeID &ID) {
 4709   static void Profile(llvm::FoldingSetNodeID &ID,
 4764   void Profile(llvm::FoldingSetNodeID &ID);
 4765   static void Profile(llvm::FoldingSetNodeID &ID,
 4842   void Profile(llvm::FoldingSetNodeID &ID) {
 4847   static void Profile(llvm::FoldingSetNodeID &ID, QualType Deduced,
 4881   void Profile(llvm::FoldingSetNodeID &ID) {
 4885   static void Profile(llvm::FoldingSetNodeID &ID, TemplateName Template,
 5008   void Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Ctx) {
 5014   static void Profile(llvm::FoldingSetNodeID &ID, TemplateName T,
 5260   void Profile(llvm::FoldingSetNodeID &ID) {
 5264   static void Profile(llvm::FoldingSetNodeID &ID, ElaboratedTypeKeyword Keyword,
 5321   void Profile(llvm::FoldingSetNodeID &ID) {
 5325   static void Profile(llvm::FoldingSetNodeID &ID, ElaboratedTypeKeyword Keyword,
 5393   void Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Context) {
 5397   static void Profile(llvm::FoldingSetNodeID &ID,
 5465   void Profile(llvm::FoldingSetNodeID &ID) {
 5469   static void Profile(llvm::FoldingSetNodeID &ID, QualType Pattern,
 5578   void Profile(llvm::FoldingSetNodeID &ID);
 5579   static void Profile(llvm::FoldingSetNodeID &ID,
 5780   void Profile(llvm::FoldingSetNodeID &ID);
 5781   static void Profile(llvm::FoldingSetNodeID &ID,
 6031   void Profile(llvm::FoldingSetNodeID &ID) {
 6035   static void Profile(llvm::FoldingSetNodeID &ID, QualType T) {
 6064   void Profile(llvm::FoldingSetNodeID &ID) {
 6068   static void Profile(llvm::FoldingSetNodeID &ID, QualType T) {
 6098   void Profile(llvm::FoldingSetNodeID &ID) {
 6102   static void Profile(llvm::FoldingSetNodeID &ID, QualType T, bool isRead) {
tools/clang/include/clang/Analysis/AnalysisDeclContext.h
  273   virtual void Profile(llvm::FoldingSetNodeID &ID) = 0;
  289   static void ProfileCommon(llvm::FoldingSetNodeID &ID,
  331   void Profile(llvm::FoldingSetNodeID &ID) override;
  333   static void Profile(llvm::FoldingSetNodeID &ID, AnalysisDeclContext *ctx,
  359   void Profile(llvm::FoldingSetNodeID &ID) override;
  361   static void Profile(llvm::FoldingSetNodeID &ID, AnalysisDeclContext *ctx,
  392   void Profile(llvm::FoldingSetNodeID &ID) override;
  394   static void Profile(llvm::FoldingSetNodeID &ID, AnalysisDeclContext *ctx,
tools/clang/include/clang/Analysis/ConstructionContext.h
  164   void Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/include/clang/Analysis/PathDiagnostic.h
   65     PDFileEntry(llvm::FoldingSetNodeID &NodeID) : NodeID(NodeID) {}
   73     const llvm::FoldingSetNodeID NodeID;
   76     void Profile(llvm::FoldingSetNodeID &ID) { ID = NodeID; }
  330   void Profile(llvm::FoldingSetNodeID &ID) const;
  355   void Profile(llvm::FoldingSetNodeID &ID) const {
  441   virtual void Profile(llvm::FoldingSetNodeID &ID) const;
  488   void Profile(llvm::FoldingSetNodeID &ID) const override;
  589   void Profile(llvm::FoldingSetNodeID &ID) const override;
  663   void Profile(llvm::FoldingSetNodeID &ID) const override;
  686   void Profile(llvm::FoldingSetNodeID &ID) const override;
  702   void Profile(llvm::FoldingSetNodeID &ID) const override;
  718   void Profile(llvm::FoldingSetNodeID &ID) const override;
  856   void Profile(llvm::FoldingSetNodeID &ID) const;
  862   void FullProfile(llvm::FoldingSetNodeID &ID) const;
tools/clang/include/clang/Analysis/ProgramPoint.h
  189     llvm::FoldingSetNodeID ID;
  208   void Profile(llvm::FoldingSetNodeID& ID) const {
tools/clang/include/clang/Analysis/RetainSummaryManager.h
  235 static inline void Profile(const ArgEffect X, FoldingSetNodeID &ID) {
  241   static inline void Profile(const RetEffect &X, FoldingSetNodeID &ID) {
  368   void Profile(llvm::FoldingSetNodeID& ID) const {
tools/clang/include/clang/CodeGen/CGFunctionInfo.h
  660   void Profile(llvm::FoldingSetNodeID &ID) {
  680   static void Profile(llvm::FoldingSetNodeID &ID,
tools/clang/include/clang/Lex/MacroInfo.h
  519   void Profile(llvm::FoldingSetNodeID &ID) const {
  523   static void Profile(llvm::FoldingSetNodeID &ID, Module *OwningModule,
tools/clang/include/clang/Sema/Sema.h
 1140     SpecialMemberOverloadResultEntry(const llvm::FoldingSetNodeID &ID)
tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
  248   virtual void Profile(llvm::FoldingSetNodeID& hash) const = 0;
  286   void Profile(llvm::FoldingSetNodeID& hash) const override;
  485   void Profile(llvm::FoldingSetNodeID &hash) const override;
  551   void Profile(llvm::FoldingSetNodeID& ID) const {
tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
   80   virtual void Profile(llvm::FoldingSetNodeID &ID) const = 0;
  157   void Profile(llvm::FoldingSetNodeID &ID) const override;
  179   void Profile(llvm::FoldingSetNodeID &ID) const override;
  198   void Profile(llvm::FoldingSetNodeID &ID) const override {
  221   void Profile(llvm::FoldingSetNodeID &ID) const override {
  305   void Profile(llvm::FoldingSetNodeID &ID) const override {
  330   void Profile(llvm::FoldingSetNodeID &ID) const override {
  359   void Profile(llvm::FoldingSetNodeID &ID) const override;
  381   void Profile(llvm::FoldingSetNodeID &ID) const override;
  395   void Profile(llvm::FoldingSetNodeID &ID) const override;
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h
   55   static void Profile(llvm::FoldingSetNodeID& ID, QualType T,
   58   void Profile(llvm::FoldingSetNodeID& ID) { Profile(ID, T, L); }
   74   static void Profile(llvm::FoldingSetNodeID& ID,
   78   void Profile(llvm::FoldingSetNodeID& ID) { Profile(ID, store, region); }
   95   static void Profile(llvm::FoldingSetNodeID& ID, const DeclaratorDecl *D,
   98   void Profile(llvm::FoldingSetNodeID& ID) { Profile(ID, D, L); }
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicCastInfo.h
   41   void Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeInfo.h
   40   void Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h
   44   static void Profile(llvm::FoldingSetNodeID &ID,
   50   void Profile(llvm::FoldingSetNodeID &ID) const {
   80   static void Profile(llvm::FoldingSetNodeID& ID, const Environment* env) {
   86   void Profile(llvm::FoldingSetNodeID& ID) const {
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
  181   static void Profile(llvm::FoldingSetNodeID &ID,
  190   void Profile(llvm::FoldingSetNodeID& ID) const {
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
  113   virtual void Profile(llvm::FoldingSetNodeID& ID) const = 0;
  213   void Profile(llvm::FoldingSetNodeID &ID) const override;
  268   void Profile(llvm::FoldingSetNodeID &ID) const override;
  397   void Profile(llvm::FoldingSetNodeID &ID) const override;
  486   static void ProfileRegion(llvm::FoldingSetNodeID& ID, const Expr *Ex,
  496   void Profile(llvm::FoldingSetNodeID& ID) const override;
  591   static void ProfileRegion(llvm::FoldingSetNodeID& ID, const NamedDecl *FD,
  615   void Profile(llvm::FoldingSetNodeID& ID) const override;
  643   static void ProfileRegion(llvm::FoldingSetNodeID& ID, const BlockDecl *BD,
  660   void Profile(llvm::FoldingSetNodeID& ID) const override;
  693   static void ProfileRegion(llvm::FoldingSetNodeID&, const BlockCodeRegion *,
  747   void Profile(llvm::FoldingSetNodeID& ID) const override;
  787   void Profile(llvm::FoldingSetNodeID& ID) const override;
  789   static void ProfileRegion(llvm::FoldingSetNodeID& ID,
  811   static void ProfileRegion(llvm::FoldingSetNodeID &ID,
  824   void Profile(llvm::FoldingSetNodeID& ID) const override {
  847   static void ProfileRegion(llvm::FoldingSetNodeID &ID,
  858   void Profile(llvm::FoldingSetNodeID& ID) const override {
  885   static void ProfileRegion(llvm::FoldingSetNodeID& ID,
  894   void Profile(llvm::FoldingSetNodeID& ID) const override;
  915   static void ProfileRegion(llvm::FoldingSetNodeID& ID, const Decl *D,
  920   void Profile(llvm::FoldingSetNodeID& ID) const override;
  942   static void ProfileRegion(llvm::FoldingSetNodeID& ID, const VarDecl *VD,
  948   void Profile(llvm::FoldingSetNodeID& ID) const override;
  984   static void ProfileRegion(llvm::FoldingSetNodeID &ID,
  989   void Profile(llvm::FoldingSetNodeID &ID) const override;
 1011   static void ProfileRegion(llvm::FoldingSetNodeID& ID, const FieldDecl *FD,
 1043   static void ProfileRegion(llvm::FoldingSetNodeID& ID, const ObjCIvarDecl *ivd,
 1099   static void ProfileRegion(llvm::FoldingSetNodeID& ID, QualType elementType,
 1114   void Profile(llvm::FoldingSetNodeID& ID) const override;
 1134   static void ProfileRegion(llvm::FoldingSetNodeID &ID,
 1144   void Profile(llvm::FoldingSetNodeID &ID) const override;
 1164   static void ProfileRegion(llvm::FoldingSetNodeID &ID, const CXXRecordDecl *RD,
 1175   void Profile(llvm::FoldingSetNodeID &ID) const override;
 1206   static void ProfileRegion(llvm::FoldingSetNodeID &ID, const CXXRecordDecl *RD,
 1216   void Profile(llvm::FoldingSetNodeID &ID) const override;
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
  136   static void Profile(llvm::FoldingSetNodeID& ID, const ProgramState *V) {
  144   void Profile(llvm::FoldingSetNodeID& ID) const {
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/RangedConstraintManager.h
   42   void Profile(llvm::FoldingSetNodeID &ID) const {
   94   void Profile(llvm::FoldingSetNodeID &ID) const { ranges.Profile(ID); }
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
  331     llvm::FoldingSetNodeID ID;
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h
  123   void Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymExpr.h
   63   virtual void Profile(llvm::FoldingSetNodeID &profile) = 0;
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
   53   static void Profile(llvm::FoldingSetNodeID& profile, const TypedValueRegion* R) {
   58   void Profile(llvm::FoldingSetNodeID& profile) override {
  104   static void Profile(llvm::FoldingSetNodeID& profile, const Stmt *S,
  115   void Profile(llvm::FoldingSetNodeID& profile) override {
  147   static void Profile(llvm::FoldingSetNodeID& profile, SymbolRef parent,
  154   void Profile(llvm::FoldingSetNodeID& profile) override {
  182   static void Profile(llvm::FoldingSetNodeID& profile, const SubRegion *R) {
  187   void Profile(llvm::FoldingSetNodeID& profile) override {
  231   static void Profile(llvm::FoldingSetNodeID& profile, const MemRegion *R,
  243   void Profile(llvm::FoldingSetNodeID& profile) override {
  284   static void Profile(llvm::FoldingSetNodeID& ID,
  292   void Profile(llvm::FoldingSetNodeID& ID) override {
  354   static void Profile(llvm::FoldingSetNodeID& ID, const SymExpr *lhs,
  364   void Profile(llvm::FoldingSetNodeID& ID) override {
  397   static void Profile(llvm::FoldingSetNodeID& ID, const llvm::APSInt& lhs,
  407   void Profile(llvm::FoldingSetNodeID& ID) override {
  441   static void Profile(llvm::FoldingSetNodeID& ID, const SymExpr *lhs,
  450   void Profile(llvm::FoldingSetNodeID& ID) override {
tools/clang/lib/ARCMigrate/ObjCMT.cpp
 2067     llvm::FoldingSetNodeID ID;
tools/clang/lib/AST/ASTContext.cpp
  636 ASTContext::CanonicalTemplateTemplateParm::Profile(llvm::FoldingSetNodeID &ID,
  679   llvm::FoldingSetNodeID ID;
 2719   llvm::FoldingSetNodeID ID;
 2919   llvm::FoldingSetNodeID ID;
 2947   llvm::FoldingSetNodeID ID;
 2971   llvm::FoldingSetNodeID ID;
 3011   llvm::FoldingSetNodeID ID;
 3036   llvm::FoldingSetNodeID ID;
 3070   llvm::FoldingSetNodeID ID;
 3106   llvm::FoldingSetNodeID ID;
 3140   llvm::FoldingSetNodeID ID;
 3185   llvm::FoldingSetNodeID ID;
 3416   llvm::FoldingSetNodeID ID;
 3458   llvm::FoldingSetNodeID ID;
 3498   llvm::FoldingSetNodeID ID;
 3526   llvm::FoldingSetNodeID ID;
 3568   llvm::FoldingSetNodeID ID;
 3596   llvm::FoldingSetNodeID ID;
 3642   llvm::FoldingSetNodeID ID;
 3682   llvm::FoldingSetNodeID ID;
 3764   llvm::FoldingSetNodeID ID;
 3898   llvm::FoldingSetNodeID ID;
 4043   llvm::FoldingSetNodeID id;
 4067   llvm::FoldingSetNodeID ID;
 4094   llvm::FoldingSetNodeID ID;
 4123   llvm::FoldingSetNodeID ID;
 4255   llvm::FoldingSetNodeID ID;
 4284   llvm::FoldingSetNodeID ID;
 4311   llvm::FoldingSetNodeID ID;
 4356   llvm::FoldingSetNodeID ID;
 4393   llvm::FoldingSetNodeID ID;
 4480   llvm::FoldingSetNodeID ID;
 4573   llvm::FoldingSetNodeID ID;
 4719   llvm::FoldingSetNodeID ID;
 4815   llvm::FoldingSetNodeID ID;
 4874     llvm::FoldingSetNodeID ID;
 4924     llvm::FoldingSetNodeID ID;
 4955     llvm::FoldingSetNodeID ID;
 4993   llvm::FoldingSetNodeID ID;
 5013   llvm::FoldingSetNodeID ID;
 5033   llvm::FoldingSetNodeID ID;
 7747   llvm::FoldingSetNodeID ID;
 7770   llvm::FoldingSetNodeID ID;
 7806   llvm::FoldingSetNodeID ID;
 7838   llvm::FoldingSetNodeID ID;
 7857   llvm::FoldingSetNodeID ID;
tools/clang/lib/AST/ASTDiagnostic.cpp
 1434     llvm::FoldingSetNodeID FromID, ToID;
tools/clang/lib/AST/DeclTemplate.cpp
  241   llvm::FoldingSetNodeID ID;
tools/clang/lib/AST/DeclarationName.cpp
  285   llvm::FoldingSetNodeID ID;
  301   llvm::FoldingSetNodeID ID;
  317   llvm::FoldingSetNodeID ID;
  332   llvm::FoldingSetNodeID ID;
  362   llvm::FoldingSetNodeID ID;
tools/clang/lib/AST/NestedNameSpecifier.cpp
   42   llvm::FoldingSetNodeID ID;
tools/clang/lib/AST/ODRHash.cpp
  241   llvm::FoldingSetNodeID &ID;
  245   ODRDeclVisitor(llvm::FoldingSetNodeID &ID, ODRHash &Hash)
  654   llvm::FoldingSetNodeID &ID;
  658   ODRTypeVisitor(llvm::FoldingSetNodeID &ID, ODRHash &Hash)
tools/clang/lib/AST/StmtProfile.cpp
   29     llvm::FoldingSetNodeID &ID;
   33     StmtProfiler(llvm::FoldingSetNodeID &ID, bool Canonical)
   80     StmtProfilerWithPointers(llvm::FoldingSetNodeID &ID,
  167     StmtProfilerWithoutPointers(llvm::FoldingSetNodeID &ID, ODRHash &Hash)
 2071 void Stmt::Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Context,
 2077 void Stmt::ProcessODRHash(llvm::FoldingSetNodeID &ID,
tools/clang/lib/AST/TemplateBase.cpp
  285 void TemplateArgument::Profile(llvm::FoldingSetNodeID &ID,
tools/clang/lib/AST/TemplateName.cpp
   38 void SubstTemplateTemplateParmStorage::Profile(llvm::FoldingSetNodeID &ID) {
   42 void SubstTemplateTemplateParmStorage::Profile(llvm::FoldingSetNodeID &ID,
   49 void SubstTemplateTemplateParmPackStorage::Profile(llvm::FoldingSetNodeID &ID,
   54 void SubstTemplateTemplateParmPackStorage::Profile(llvm::FoldingSetNodeID &ID,
tools/clang/lib/AST/Type.cpp
  186 void ConstantArrayType::Profile(llvm::FoldingSetNodeID &ID,
  208 void DependentSizedArrayType::Profile(llvm::FoldingSetNodeID &ID,
  232 void DependentVectorType::Profile(llvm::FoldingSetNodeID &ID,
  256 DependentSizedExtVectorType::Profile(llvm::FoldingSetNodeID &ID,
  275 void DependentAddressSpaceType::Profile(llvm::FoldingSetNodeID &ID,
 2722 DependentTemplateSpecializationType::Profile(llvm::FoldingSetNodeID &ID,
 3132 void FunctionProtoType::Profile(llvm::FoldingSetNodeID &ID, QualType Result,
 3184 void FunctionProtoType::Profile(llvm::FoldingSetNodeID &ID,
 3226 void DependentTypeOfExprType::Profile(llvm::FoldingSetNodeID &ID,
 3253 void DependentDecltypeType::Profile(llvm::FoldingSetNodeID &ID,
 3400 void SubstTemplateTypeParmPackType::Profile(llvm::FoldingSetNodeID &ID) {
 3404 void SubstTemplateTypeParmPackType::Profile(llvm::FoldingSetNodeID &ID,
 3483 TemplateSpecializationType::Profile(llvm::FoldingSetNodeID &ID,
 3508 void ObjCObjectTypeImpl::Profile(llvm::FoldingSetNodeID &ID,
 3523 void ObjCObjectTypeImpl::Profile(llvm::FoldingSetNodeID &ID) {
 3529 void ObjCTypeParamType::Profile(llvm::FoldingSetNodeID &ID,
 3538 void ObjCTypeParamType::Profile(llvm::FoldingSetNodeID &ID) {
tools/clang/lib/Analysis/AnalysisDeclContext.cpp
  352 void LocationContext::ProfileCommon(llvm::FoldingSetNodeID &ID,
  363 void StackFrameContext::Profile(llvm::FoldingSetNodeID &ID) {
  368 void ScopeContext::Profile(llvm::FoldingSetNodeID &ID) {
  372 void BlockInvocationContext::Profile(llvm::FoldingSetNodeID &ID) {
  385   llvm::FoldingSetNodeID ID;
  401   llvm::FoldingSetNodeID ID;
  425   llvm::FoldingSetNodeID ID;
tools/clang/lib/Analysis/CloneDetection.cpp
  306   llvm::FoldingSetNodeID &FS;
  309   FoldingSetNodeIDWrapper(llvm::FoldingSetNodeID &FS) : FS(FS) {}
  340   llvm::FoldingSetNodeID DataLHS, DataRHS;
tools/clang/lib/Analysis/PathDiagnostic.cpp
  206   llvm::FoldingSetNodeID profile;
  428   llvm::FoldingSetNodeID NodeID;
  449   llvm::FoldingSetNodeID NodeID;
 1069 void PathDiagnosticLocation::Profile(llvm::FoldingSetNodeID &ID) const {
 1075 void PathDiagnosticPiece::Profile(llvm::FoldingSetNodeID &ID) const {
 1087 void PathDiagnosticCallPiece::Profile(llvm::FoldingSetNodeID &ID) const {
 1093 void PathDiagnosticSpotPiece::Profile(llvm::FoldingSetNodeID &ID) const {
 1098 void PathDiagnosticControlFlowPiece::Profile(llvm::FoldingSetNodeID &ID) const {
 1104 void PathDiagnosticMacroPiece::Profile(llvm::FoldingSetNodeID &ID) const {
 1110 void PathDiagnosticNotePiece::Profile(llvm::FoldingSetNodeID &ID) const {
 1114 void PathDiagnosticPopUpPiece::Profile(llvm::FoldingSetNodeID &ID) const {
 1118 void PathDiagnostic::Profile(llvm::FoldingSetNodeID &ID) const {
 1125 void PathDiagnostic::FullProfile(llvm::FoldingSetNodeID &ID) const {
tools/clang/lib/Analysis/RetainSummaryManager.cpp
  120     ::llvm::FoldingSetNodeID ID;
tools/clang/lib/Basic/IdentifierTable.cpp
  401   static void Profile(llvm::FoldingSetNodeID &ID, keyword_iterator ArgTys,
  408   void Profile(llvm::FoldingSetNodeID &ID) {
  658   llvm::FoldingSetNodeID ID;
tools/clang/lib/CodeGen/CGBlocks.cpp
 2295   void profileImpl(llvm::FoldingSetNodeID &id) const override {
 2314   void profileImpl(llvm::FoldingSetNodeID &id) const override {
 2350   void profileImpl(llvm::FoldingSetNodeID &id) const override {
 2377   void profileImpl(llvm::FoldingSetNodeID &id) const override {
 2407   void profileImpl(llvm::FoldingSetNodeID &id) const override {
 2437   void profileImpl(llvm::FoldingSetNodeID &id) const override {
 2587   llvm::FoldingSetNodeID id;
tools/clang/lib/CodeGen/CGCall.cpp
  747   llvm::FoldingSetNodeID ID;
tools/clang/lib/CodeGen/CodeGenModule.h
  262   void Profile(llvm::FoldingSetNodeID &id) const {
  266   virtual void profileImpl(llvm::FoldingSetNodeID &id) const = 0;
tools/clang/lib/Lex/PPMacroExpansion.cpp
  133   llvm::FoldingSetNodeID ID;
  172   llvm::FoldingSetNodeID ID;
tools/clang/lib/Sema/SemaChecking.cpp
 9605   llvm::FoldingSetNodeID SizeOfArgID;
 9639         llvm::FoldingSetNodeID DestID;
tools/clang/lib/Sema/SemaExceptionSpec.cpp
  564     llvm::FoldingSetNodeID OldFSN, NewFSN;
tools/clang/lib/Sema/SemaLookup.cpp
 3076   llvm::FoldingSetNodeID ID;
tools/clang/lib/Sema/SemaOpenMP.cpp
 2517     llvm::FoldingSetNodeID AEId, DAEId;
 2543     llvm::FoldingSetNodeID AEId, PAEId;
 8276         llvm::FoldingSetNodeID XId, LHSId, RHSId;
 8722             llvm::FoldingSetNodeID XId, PossibleXId;
 8752               llvm::FoldingSetNodeID XId, PossibleXId;
 8796                   llvm::FoldingSetNodeID X1Id, X2Id;
13610           llvm::FoldingSetNodeID RedId, ParentRedId;
tools/clang/lib/Sema/SemaOverload.cpp
 1233     llvm::FoldingSetNodeID NewID, OldID;
 9209   llvm::FoldingSetNodeID Cand1ID, Cand2ID;
tools/clang/lib/Sema/SemaTemplate.cpp
 7354       llvm::FoldingSetNodeID OldRCID, NewRCID;
tools/clang/lib/Sema/SemaTemplateDeduction.cpp
  289     llvm::FoldingSetNodeID ID1, ID2;
 2406       llvm::FoldingSetNodeID XID, YID;
tools/clang/lib/Serialization/ASTReader.cpp
 1053   llvm::FoldingSetNodeID ID;
tools/clang/lib/Serialization/ASTReaderDecl.cpp
  961       llvm::FoldingSetNodeID ID;
 2909   llvm::FoldingSetNodeID Cand1ID, Cand2ID;
tools/clang/lib/StaticAnalyzer/Checkers/DeleteWithNonVirtualDtorChecker.cpp
   44     void Profile(llvm::FoldingSetNodeID &ID) const override {
tools/clang/lib/StaticAnalyzer/Checkers/DynamicTypeChecker.cpp
   44     void Profile(llvm::FoldingSetNodeID &ID) const override {
tools/clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp
   80     void Profile(llvm::FoldingSetNodeID &ID) const override {
tools/clang/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp
   53     void Profile(llvm::FoldingSetNodeID &ID) const override {
tools/clang/lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
  129   void Profile(llvm::FoldingSetNodeID &ID) const {
  167   void Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
   55   void Profile(llvm::FoldingSetNodeID &ID) const { ID.AddInteger(K); }
  130   void Profile(llvm::FoldingSetNodeID &ID) const override {
tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.h
   86     void Profile(llvm::FoldingSetNodeID &ID) const override {
tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPITypes.h
   33   void Profile(llvm::FoldingSetNodeID &Id) const {
tools/clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp
   53     void Profile(llvm::FoldingSetNodeID &ID) const {
  139     void Profile(llvm::FoldingSetNodeID &ID) const override {
tools/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
  178   void Profile(llvm::FoldingSetNodeID &ID) const {
  254   void Profile(llvm::FoldingSetNodeID &ID) const {
  701   void Profile(llvm::FoldingSetNodeID &ID) const override {
tools/clang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp
   42   void Profile(llvm::FoldingSetNodeID &ID) const { ID.AddInteger(K); }
  162     void Profile(llvm::FoldingSetNodeID &ID) const override {
tools/clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
  134     void Profile(llvm::FoldingSetNodeID &ID) const override {
  206   void Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp
   76   void Profile(llvm::FoldingSetNodeID &ID) const override {
tools/clang/lib/StaticAnalyzer/Checkers/PointerArithChecker.cpp
   36   static inline void Profile(AllocKind X, FoldingSetNodeID &ID) {
tools/clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp
   63   void Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.h
  226   void Profile(llvm::FoldingSetNodeID& ID) const {
tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp
  322   void Profile(llvm::FoldingSetNodeID &ID) const override {
tools/clang/lib/StaticAnalyzer/Checkers/SimpleStreamChecker.cpp
   45   void Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
   52   void Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/lib/StaticAnalyzer/Checkers/Taint.h
   90   void Profile(llvm::FoldingSetNodeID &ID) const override { ID.Add(V); }
tools/clang/lib/StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp
   50   void Profile(llvm::FoldingSetNodeID &ID) const {
   67   void Profile(llvm::FoldingSetNodeID &ID) const override {
tools/clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObject.h
  104   void Profile(llvm::FoldingSetNodeID &ID) const { ID.AddPointer(this); }
tools/clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp
   75     void Profile(llvm::FoldingSetNodeID &ID) const override {
tools/clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
   34   static inline void Profile(ObjectState X, FoldingSetNodeID &ID) {
tools/clang/lib/StaticAnalyzer/Core/BasicValueFactory.cpp
   31 void CompoundValData::Profile(llvm::FoldingSetNodeID& ID, QualType T,
   37 void LazyCompoundValData::Profile(llvm::FoldingSetNodeID& ID,
   45     llvm::FoldingSetNodeID& ID, const DeclaratorDecl *D,
   57   static inline void Profile(const SValData& X, llvm::FoldingSetNodeID& ID) {
   64   static inline void Profile(const SValPair& X, llvm::FoldingSetNodeID& ID) {
   90   llvm::FoldingSetNodeID ID;
  127   llvm::FoldingSetNodeID ID;
  145   llvm::FoldingSetNodeID ID;
  163   llvm::FoldingSetNodeID ID;
  304   llvm::FoldingSetNodeID ID;
  329   llvm::FoldingSetNodeID ID;
tools/clang/lib/StaticAnalyzer/Core/BlockCounter.cpp
   39   void Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/lib/StaticAnalyzer/Core/BugReporter.cpp
 2025     std::set<llvm::FoldingSetNodeID> DeduplicationSet;
 2029       llvm::FoldingSetNodeID ID;
 2113   llvm::FoldingSetNodeID ID;
 2137 void BasicBugReport::Profile(llvm::FoldingSetNodeID& hash) const {
 2152 void PathSensitiveBugReport::Profile(llvm::FoldingSetNodeID &hash) const {
 2831   llvm::FoldingSetNodeID ID;
tools/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
  365   void Profile(llvm::FoldingSetNodeID &ID) const override {
  845   void Profile(llvm::FoldingSetNodeID &ID) const override {
  911   void Profile(llvm::FoldingSetNodeID &ID) const override {
 1205 void FindLastStoreBRVisitor::Profile(llvm::FoldingSetNodeID &ID) const {
 1527 void TrackConstraintBRVisitor::Profile(llvm::FoldingSetNodeID &ID) const {
 1615     llvm::FoldingSetNodeID &ID) const {
 1722   void Profile(llvm::FoldingSetNodeID &ID) const override {
 2875     llvm::FoldingSetNodeID &ID) const {
 2886 void TagVisitor::Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
  400   llvm::FoldingSetNodeID profile;
tools/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
  176   void Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/lib/StaticAnalyzer/Core/LoopUnrolling.cpp
   52   void Profile(llvm::FoldingSetNodeID &ID) const {
tools/clang/lib/StaticAnalyzer/Core/MemRegion.cpp
   68   llvm::FoldingSetNodeID ID;
   85   llvm::FoldingSetNodeID ID;
  104   llvm::FoldingSetNodeID ID;
  235 void MemSpaceRegion::Profile(llvm::FoldingSetNodeID &ID) const {
  239 void StackSpaceRegion::Profile(llvm::FoldingSetNodeID &ID) const {
  244 void StaticGlobalSpaceRegion::Profile(llvm::FoldingSetNodeID &ID) const {
  249 void StringRegion::ProfileRegion(llvm::FoldingSetNodeID &ID,
  257 void ObjCStringRegion::ProfileRegion(llvm::FoldingSetNodeID &ID,
  265 void AllocaRegion::ProfileRegion(llvm::FoldingSetNodeID& ID,
  274 void AllocaRegion::Profile(llvm::FoldingSetNodeID& ID) const {
  278 void CompoundLiteralRegion::Profile(llvm::FoldingSetNodeID& ID) const {
  282 void CompoundLiteralRegion::ProfileRegion(llvm::FoldingSetNodeID& ID,
  290 void CXXThisRegion::ProfileRegion(llvm::FoldingSetNodeID &ID,
  298 void CXXThisRegion::Profile(llvm::FoldingSetNodeID &ID) const {
  302 void ObjCIvarRegion::ProfileRegion(llvm::FoldingSetNodeID& ID,
  308 void DeclRegion::ProfileRegion(llvm::FoldingSetNodeID& ID, const Decl *D,
  315 void DeclRegion::Profile(llvm::FoldingSetNodeID& ID) const {
  319 void VarRegion::Profile(llvm::FoldingSetNodeID &ID) const {
  323 void SymbolicRegion::ProfileRegion(llvm::FoldingSetNodeID& ID, SymbolRef sym,
  330 void SymbolicRegion::Profile(llvm::FoldingSetNodeID& ID) const {
  334 void ElementRegion::ProfileRegion(llvm::FoldingSetNodeID& ID,
  343 void ElementRegion::Profile(llvm::FoldingSetNodeID& ID) const {
  347 void FunctionCodeRegion::ProfileRegion(llvm::FoldingSetNodeID& ID,
  354 void FunctionCodeRegion::Profile(llvm::FoldingSetNodeID& ID) const {
  358 void BlockCodeRegion::ProfileRegion(llvm::FoldingSetNodeID& ID,
  366 void BlockCodeRegion::Profile(llvm::FoldingSetNodeID& ID) const {
  370 void BlockDataRegion::ProfileRegion(llvm::FoldingSetNodeID& ID,
  382 void BlockDataRegion::Profile(llvm::FoldingSetNodeID& ID) const {
  386 void CXXTempObjectRegion::ProfileRegion(llvm::FoldingSetNodeID &ID,
  393 void CXXTempObjectRegion::Profile(llvm::FoldingSetNodeID &ID) const {
  397 void CXXBaseObjectRegion::ProfileRegion(llvm::FoldingSetNodeID &ID,
  406 void CXXBaseObjectRegion::Profile(llvm::FoldingSetNodeID &ID) const {
  410 void CXXDerivedObjectRegion::ProfileRegion(llvm::FoldingSetNodeID &ID,
  417 void CXXDerivedObjectRegion::Profile(llvm::FoldingSetNodeID &ID) const {
  994   llvm::FoldingSetNodeID ID;
tools/clang/lib/StaticAnalyzer/Core/ProgramState.cpp
  405   llvm::FoldingSetNodeID ID;
tools/clang/lib/StaticAnalyzer/Core/RegionStore.cpp
   91   void Profile(llvm::FoldingSetNodeID& ID) const {
tools/clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
  169   llvm::FoldingSetNodeID profile;
  188   llvm::FoldingSetNodeID profile;
  205   llvm::FoldingSetNodeID profile;
  221   llvm::FoldingSetNodeID profile;
  239   llvm::FoldingSetNodeID profile;
  256   llvm::FoldingSetNodeID ID;
  273   llvm::FoldingSetNodeID ID;
  291   llvm::FoldingSetNodeID ID;
  309   llvm::FoldingSetNodeID ID;
tools/clang/tools/extra/clang-tidy/bugprone/BranchCloneCheck.cpp
   22   llvm::FoldingSetNodeID DataLHS, DataRHS;
tools/clang/tools/extra/clang-tidy/misc/RedundantExpressionCheck.cpp
   52   llvm::FoldingSetNodeID LeftID, RightID;
tools/clang/tools/extra/clang-tidy/modernize/LoopConvertUtils.cpp
  191   llvm::FoldingSetNodeID FirstID, SecondID;
  236   llvm::FoldingSetNodeID ID;
  477   llvm::FoldingSetNodeID ID;
tools/clang/tools/extra/clang-tidy/modernize/LoopConvertUtils.h
  383   llvm::SmallVector<std::pair<const Expr *, llvm::FoldingSetNodeID>, 16>
tools/clang/tools/libclang/Indexing.cpp
  105       llvm::FoldingSetNodeID ID;
tools/dsymutil/DwarfLinker.cpp
  992   FoldingSetNodeID ID;
unittests/ADT/FoldingSet.cpp
   25   FoldingSetNodeID a, b;
   42     void Profile(FoldingSetNodeID &ID) const {
   63   void Profile(FoldingSetNodeID &ID) const {
   76   FoldingSetNodeID ID;
   91   FoldingSetNodeID ID;
  142   FoldingSetNodeID ID;
unittests/ADT/ImmutableListTest.cpp
   23   void Profile(FoldingSetNodeID &ID) const { ID.AddInteger(F); }
   95   void Profile(FoldingSetNodeID &ID) const { ID.AddPointer(this); }
usr/include/c++/7.4.0/bits/alloc_traits.h
  387       using allocator_type = allocator<_Tp>;
  389       using value_type = _Tp;
  392       using pointer = _Tp*;
  395       using const_pointer = const _Tp*;
  474 	construct(allocator_type& __a, _Up* __p, _Args&&... __args)
  474 	construct(allocator_type& __a, _Up* __p, _Args&&... __args)
  486 	destroy(allocator_type& __a, _Up* __p)
usr/include/c++/7.4.0/bits/move.h
   72     constexpr _Tp&&
   73     forward(typename std::remove_reference<_Tp>::type& __t) noexcept
   83     constexpr _Tp&&
   84     forward(typename std::remove_reference<_Tp>::type&& __t) noexcept
   98     move(_Tp&& __t) noexcept
usr/include/c++/7.4.0/bits/stl_function.h
  108       typedef _Arg 	argument_type;   
  111       typedef _Result 	result_type;  
  121       typedef _Arg1 	first_argument_type; 
  124       typedef _Arg2 	second_argument_type;
  381     struct less : public binary_function<_Tp, _Tp, bool>
  381     struct less : public binary_function<_Tp, _Tp, bool>
  385       operator()(const _Tp& __x, const _Tp& __y) const
  385       operator()(const _Tp& __x, const _Tp& __y) const
  870     : public unary_function<_Tp,_Tp>
  870     : public unary_function<_Tp,_Tp>
  872       _Tp&
  873       operator()(_Tp& __x) const
  876       const _Tp&
  877       operator()(const _Tp& __x) const
usr/include/c++/7.4.0/bits/stl_pair.h
  101 		      is_constructible<_T2, const _U2&>>::value;
  101 		      is_constructible<_T2, const _U2&>>::value;
  108 		      is_convertible<const _U2&, _T2>>::value;
  108 		      is_convertible<const _U2&, _T2>>::value;
  115 		      is_constructible<_T2, _U2&&>>::value;
  115 		      is_constructible<_T2, _U2&&>>::value;
  122 		      is_convertible<_U2&&, _T2>>::value;
  122 		      is_convertible<_U2&&, _T2>>::value;
  129 				  is_convertible<_U2&&, _T2>>;
  129 				  is_convertible<_U2&&, _T2>>;
  134 		      is_constructible<_T2, _U2&&>,
  134 		      is_constructible<_T2, _U2&&>,
  143 				  is_convertible<const _U2&, _T2>>;
  143 				  is_convertible<const _U2&, _T2>>;
  148 		      is_constructible<_T2, const _U2&&>,
  148 		      is_constructible<_T2, const _U2&&>,
  209     : private __pair_base<_T1, _T2>
  212       typedef _T2 second_type;   /// @c second_type is the second bound type
  215       _T2 second;                /// @c second is a copy of the second object
  252       using _PCCP = _PCC<true, _T1, _T2>;
  260       constexpr pair(const _T1& __a, const _T2& __b)
  269       explicit constexpr pair(const _T1& __a, const _T2& __b)
  283 			    _T1, _T2>;
  311        constexpr pair(_U1&& __x, const _T2& __y)
  318        explicit constexpr pair(_U1&& __x, const _T2& __y)
  325        constexpr pair(const _T1& __x, _U2&& __y)
  341 	constexpr pair(_U1&& __x, _U2&& __y)
  380 		       is_copy_assignable<_T2>>::value,
  391 		       is_move_assignable<_T2>>::value,
  403 				is_assignable<_T2&, const _U2&>>::value,
  403 				is_assignable<_T2&, const _U2&>>::value,
  405 	operator=(const pair<_U1, _U2>& __p)
  414 				is_assignable<_T2&, _U2&&>>::value,
  414 				is_assignable<_T2&, _U2&&>>::value,
  416 	operator=(pair<_U1, _U2>&& __p)
  524     make_pair(_T1&& __x, _T2&& __y)
usr/include/c++/7.4.0/bits/stl_set.h
  110       typedef _Key     key_type;
  111       typedef _Key     value_type;
  119 	rebind<_Key>::other _Key_alloc_type;
usr/include/c++/7.4.0/bits/stl_tree.h
  218       typedef _Rb_tree_node<_Val>* _Link_type;
  231       __gnu_cxx::__aligned_membuf<_Val> _M_storage;
  233       _Val*
  237       const _Val*
  258       typedef _Tp  value_type;
  259       typedef _Tp& reference;
  260       typedef _Tp* pointer;
  265       typedef _Rb_tree_iterator<_Tp>        _Self;
  267       typedef _Rb_tree_node<_Tp>*           _Link_type;
  328       typedef _Tp        value_type;
  329       typedef const _Tp& reference;
  330       typedef const _Tp* pointer;
  332       typedef _Rb_tree_iterator<_Tp> iterator;
  337       typedef _Rb_tree_const_iterator<_Tp>        _Self;
  339       typedef const _Rb_tree_node<_Tp>*           _Link_type;
  447         rebind<_Rb_tree_node<_Val> >::other _Node_allocator;
  454       typedef _Rb_tree_node<_Val>* 		_Link_type;
  455       typedef const _Rb_tree_node<_Val>*	_Const_Link_type;
  554 	  operator()(_Arg&& __arg) const
  563       typedef _Key 				key_type;
  564       typedef _Val 				value_type;
  621 	_M_construct_node(_Link_type __node, _Args&&... __args)
  625 	      ::new(__node) _Rb_tree_node<_Val>;
  640         _M_create_node(_Args&&... __args)
  758       static const _Key&
  782       static const _Key&
  834 	_M_insert_(_Base_ptr __x, _Base_ptr __y, _Arg&& __v, _NodeGen&);
  894 		     const _Key& __k);
  898 		     const _Key& __k) const;
  902 		     const _Key& __k);
  906 		     const _Key& __k) const;
 1011         _M_insert_unique(_Arg&& __x);
usr/include/c++/7.4.0/ext/aligned_buffer.h
   52       struct _Tp2 { _Tp _M_t; };
   54       alignas(__alignof__(_Tp2::_M_t)) unsigned char _M_storage[sizeof(_Tp)];
   69       _Tp*
   73       const _Tp*
usr/include/c++/7.4.0/ext/alloc_traits.h
  117       { typedef typename _Base_type::template rebind_alloc<_Tp> other; };
usr/include/c++/7.4.0/ext/new_allocator.h
  135 	construct(_Up* __p, _Args&&... __args)
  135 	construct(_Up* __p, _Args&&... __args)
  136 	{ ::new((void *)__p) _Up(std::forward<_Args>(__args)...); }
  140 	destroy(_Up* __p) { __p->~_Up(); }
usr/include/c++/7.4.0/initializer_list
   50       typedef _E 		value_type;
   51       typedef const _E& 	reference;
   52       typedef const _E& 	const_reference;
   54       typedef const _E* 	iterator;
   55       typedef const _E* 	const_iterator;
usr/include/c++/7.4.0/tuple
   56     struct __is_empty_non_tuple : is_empty<_Tp> { };
  125       constexpr _Head_base(const _Head& __h)
  132         constexpr _Head_base(_UHead&& __h)
  133 	: _M_head_impl(std::forward<_UHead>(__h)) { }
  159       static constexpr _Head&
  162       static constexpr const _Head&
  165       _Head _M_head_impl;
  186     : public _Tuple_impl<_Idx + 1, _Tail...>,
  187       private _Head_base<_Idx, _Head>
  191       typedef _Tuple_impl<_Idx + 1, _Tail...> _Inherited;
  192       typedef _Head_base<_Idx, _Head> _Base;
  194       static constexpr _Head&
  197       static constexpr const _Head&
  210       constexpr _Tuple_impl(const _Head& __head, const _Tail&... __tail)
  210       constexpr _Tuple_impl(const _Head& __head, const _Tail&... __tail)
  216         constexpr _Tuple_impl(_UHead&& __head, _UTail&&... __tail)
  216         constexpr _Tuple_impl(_UHead&& __head, _UTail&&... __tail)
  217 	: _Inherited(std::forward<_UTail>(__tail)...),
  218 	  _Base(std::forward<_UHead>(__head)) { }
  227 	_Base(std::forward<_Head>(_M_head(__in))) { }
  230         constexpr _Tuple_impl(const _Tuple_impl<_Idx, _UElements...>& __in)
  235         constexpr _Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&& __in)
  235         constexpr _Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&& __in)
  248 		    const _Head& __head, const _Tail&... __tail)
  248 		    const _Head& __head, const _Tail&... __tail)
  262         _Tuple_impl(allocator_arg_t __tag, const _Alloc& __a,
  268 	_Tuple_impl(allocator_arg_t __tag, const _Alloc& __a,
  322 	  _M_head(*this) = std::forward<_UHead>
  323 	    (_Tuple_impl<_Idx, _UHead, _UTails...>::_M_head(__in));
  323 	    (_Tuple_impl<_Idx, _UHead, _UTails...>::_M_head(__in));
  325 	    (_Tuple_impl<_Idx, _UHead, _UTails...>::_M_tail(__in));
  325 	    (_Tuple_impl<_Idx, _UHead, _UTails...>::_M_tail(__in));
  473       return __and_<is_constructible<_Elements, const _UElements&>...>::value;
  473       return __and_<is_constructible<_Elements, const _UElements&>...>::value;
  479       return __and_<is_convertible<const _UElements&, _Elements>...>::value;
  479       return __and_<is_convertible<const _UElements&, _Elements>...>::value;
  485       return __and_<is_constructible<_Elements, _UElements&&>...>::value;
  485       return __and_<is_constructible<_Elements, _UElements&&>...>::value;
  491       return __and_<is_convertible<_UElements&&, _Elements>...>::value;
  491       return __and_<is_convertible<_UElements&&, _Elements>...>::value;
  508       return  __not_<is_same<tuple<_Elements...>,
  556     class tuple : public _Tuple_impl<0, _Elements...>
  558       typedef _Tuple_impl<0, _Elements...> _Inherited;
  598             _Elements...>;
  608         constexpr tuple(const _Elements&... __elements)
  619       explicit constexpr tuple(const _Elements&... __elements)
  628                       _Elements...>;
  636                       _Elements...>;
  646         constexpr tuple(_UElements&&... __elements)
  647         : _Inherited(std::forward<_UElements>(__elements)...) { }
  668             _Elements...>;
  730 	      const _Elements&... __elements)
  741                        const _Elements&... __elements)
  767 	tuple(allocator_arg_t __tag, const _Alloc& __a, const tuple& __in)
  771 	tuple(allocator_arg_t __tag, const _Alloc& __a, tuple&& __in)
  853         operator=(const tuple<_UElements...>& __in)
  863         operator=(tuple<_UElements...>&& __in)
 1303     __get_helper(_Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
 1304     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
 1308     __get_helper(const _Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
 1313     constexpr __tuple_element_t<__i, tuple<_Elements...>>&
 1314     get(tuple<_Elements...>& __t) noexcept
 1319     constexpr const __tuple_element_t<__i, tuple<_Elements...>>&
 1320     get(const tuple<_Elements...>& __t) noexcept
 1325     constexpr __tuple_element_t<__i, tuple<_Elements...>>&&
 1326     get(tuple<_Elements...>&& __t) noexcept
 1328       typedef __tuple_element_t<__i, tuple<_Elements...>> __element_type;
 1588     constexpr tuple<_Elements&...>
 1589     tie(_Elements&... __args) noexcept
usr/include/c++/7.4.0/type_traits
  215     : public __is_void_helper<typename remove_cv<_Tp>::type>::type
  326     : public __is_integral_helper<typename remove_cv<_Tp>::type>::type
  354     : public __is_floating_point_helper<typename remove_cv<_Tp>::type>::type
  381     : public __is_pointer_helper<typename remove_cv<_Tp>::type>::type
  567     : public __is_null_pointer_helper<typename remove_cv<_Tp>::type>::type
  581     : public __or_<is_lvalue_reference<_Tp>,
  582                    is_rvalue_reference<_Tp>>::type
  588     : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
  588     : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  602                           is_void<_Tp>>>::type
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  612                    is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
  612                    is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
  631     : public __is_member_pointer_helper<typename remove_cv<_Tp>::type>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  798       typedef decltype(__test<_Tp>(0)) type;
  811                remove_all_extents<_Tp>::type>::type
  825     : public __is_destructible_safe<_Tp>::type
  984       typedef decltype(__test<_Tp, _Arg>(0)) type;
  989     : public __and_<is_destructible<_Tp>,
  990                     __is_direct_constructible_impl<_Tp, _Arg>>
 1072 			 __is_direct_constructible_ref_cast<_Tp, _Arg>,
 1073 			 __is_direct_constructible_new_safe<_Tp, _Arg>
 1079     : public __is_direct_constructible_new<_Tp, _Arg>::type
 1119     : public __is_direct_constructible<_Tp, _Arg>
 1130     : public __is_constructible_impl<_Tp, _Args...>::type
 1215     : public __and_<is_constructible<_Tp, _Args...>,
 1216 		    __is_nt_constructible_impl<_Tp, _Args...>>
 1246     : public is_nothrow_constructible<_Tp, _Tp&&>
 1246     : public is_nothrow_constructible<_Tp, _Tp&&>
 1252     : public __is_nothrow_move_constructible_impl<_Tp>
 1286     : public is_assignable<_Tp&, const _Tp&>
 1286     : public is_assignable<_Tp&, const _Tp&>
 1292     : public __is_copy_assignable_impl<_Tp>
 1304     : public is_assignable<_Tp&, _Tp&&>
 1304     : public is_assignable<_Tp&, _Tp&&>
 1310     : public __is_move_assignable_impl<_Tp>
 1526 	static void __test_aux(_To1);
 1538       typedef decltype(__test<_From, _To>(0)) type;
 1545     : public __is_convertible_helper<_From, _To>::type
 1554     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1629     { typedef _Tp   type; };
 1633     { typedef _Tp   type; };
 1659     { typedef _Tp&&   type; };
 1955     { typedef _Tp     type; };
 2104     { typedef typename remove_cv<_Up>::type __type; };
 2131       typedef _Tp __type;