Skip to content
  • Alexis Hunt's avatar
    Generate Attr subclasses with TableGen. · dcfba7b3
    Alexis Hunt authored
    Now all classes derived from Attr are generated from TableGen.
    Additionally, Attr* is no longer its own linked list; SmallVectors or
    Attr* are used. The accompanying LLVM commit contains the updates to
    TableGen necessary for this.
    
    Some other notes about newly-generated attribute classes:
    
     - The constructor arguments are a SourceLocation and a Context&,
       followed by the attributes arguments in the order that they were
       defined in Attr.td
    
     - Every argument in Attr.td has an appropriate accessor named getFoo,
       and there are sometimes a few extra ones (such as to get the length
       of a variadic argument).
    
    Additionally, specific_attr_iterator has been introduced, which will
    iterate over an AttrVec, but only over attributes of a certain type. It
    can be accessed through either Decl::specific_attr_begin/end or
    the global functions of the same name.
    
    llvm-svn: 111455
    dcfba7b3
Loading