От http://llvm.org/docs/CodingStandards.html#ci_rtti_exceptions
LLVM широко использует ручная форма RTTI, которые используют шаблоны, такие как isa < > , cast < > и dyn_cast < > . Эта форма RTTI opt-in и может быть добавлен в любой класс. Это также значительно больше эффективнее, чем dynamic_cast < > .
Как реализовано isa и другие?