The new overloaded function is used when an attribute is added to a large number of slots of an AttributeSet (for example, to function parameters). This is much faster than calling AttributeSet::addAttribute once per slot, because AttributeSet::getImpl (which calls FoldingSet::FIndNodeOrInsertPos) is called only once per function instead of once per slot.
With this patch applied, clang compiles a file which used to take over 22 minutes in just 13 seconds.
Nitpicking, but we don't put \brief any more. Although you were just matching the style of th rest of the file, so probably fine to leave it here.