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

Derived Classes

include/llvm/IR/DebugInfoMetadata.h
 1593 class DISubprogram : public DILocalScope {
 1840 class DILexicalBlockBase : public DILocalScope {

Declarations

include/llvm/IR/Metadata.def
   97 HANDLE_SPECIALIZED_MDNODE_BRANCH(DILocalScope)

References

include/llvm/CodeGen/LexicalScopes.h
   46   LexicalScope(LexicalScope *P, const DILocalScope *D, const DILocation *I,
   63   const DILocalScope *getScopeNode() const { return Desc; }
  123   const DILocalScope *Desc;                    // Debug info descriptor.
  180   LexicalScope *findAbstractScope(const DILocalScope *N) {
  186   LexicalScope *findInlinedScope(const DILocalScope *N, const DILocation *IA) {
  192   LexicalScope *findLexicalScope(const DILocalScope *N) {
  201   LexicalScope *getOrCreateAbstractScope(const DILocalScope *Scope);
  206   LexicalScope *getOrCreateLexicalScope(const DILocalScope *Scope,
  214   LexicalScope *getOrCreateRegularScope(const DILocalScope *Scope);
  217   LexicalScope *getOrCreateInlinedScope(const DILocalScope *Scope,
  233   std::unordered_map<const DILocalScope *, LexicalScope> LexicalScopeMap;
  237   std::unordered_map<std::pair<const DILocalScope *, const DILocation *>,
  239                      pair_hash<const DILocalScope *, const DILocation *>>
  244   std::unordered_map<const DILocalScope *, LexicalScope> AbstractScopeMap;
include/llvm/IR/DebugInfoMetadata.h
 1343   DILocalScope *getNonLexicalBlockFileScope() const;
 1368                              unsigned Column, DILocalScope *Scope,
 1435   DILocalScope *getScope() const { return cast<DILocalScope>(getRawScope()); }
 1435   DILocalScope *getScope() const { return cast<DILocalScope>(getRawScope()); }
 1459   DILocalScope *getInlinedAtScope() const {
 1593 class DISubprogram : public DILocalScope {
 1840 class DILexicalBlockBase : public DILocalScope {
 1848   DILocalScope *getScope() const { return cast<DILocalScope>(getRawScope()); }
 1848   DILocalScope *getScope() const { return cast<DILocalScope>(getRawScope()); }
 1873   static DILexicalBlock *getImpl(LLVMContext &Context, DILocalScope *Scope,
 1921   static DILexicalBlockFile *getImpl(LLVMContext &Context, DILocalScope *Scope,
 2801   DILocalScope *getScope() const {
 2802     return cast<DILocalScope>(DIVariable::getScope());
 2876   DILocalScope *getScope() const {
 2877     return cast_or_null<DILocalScope>(getRawScope());
include/llvm/Support/Casting.h
   34   using SimpleType = From; // The real type this represents...
   37   static SimpleType &getSimplifiedValue(From &Val) { return Val; }
   41   using NonConstSimpleType = typename simplify_type<From>::SimpleType;
   47   static RetType getSimplifiedValue(const From& Val) {
   57   static inline bool doit(const From &Val) {
   58     return To::classof(&Val);
   66   static inline bool doit(const From &) { return true; }
   76   static inline bool doit(const From &Val) {
   77     return isa_impl<To, From>::doit(Val);
   77     return isa_impl<To, From>::doit(Val);
   92     return isa_impl<To, From>::doit(*Val);
  104   static inline bool doit(const From *Val) {
  106     return isa_impl<To, From>::doit(*Val);
  106     return isa_impl<To, From>::doit(*Val);
  122     return isa_impl_wrap<To, SimpleFrom,
  132     return isa_impl_cl<To,FromTy>::doit(Val);
  141 template <class X, class Y> LLVM_NODISCARD inline bool isa(const Y &Val) {
  142   return isa_impl_wrap<X, const Y,
  142   return isa_impl_wrap<X, const Y,
  143                        typename simplify_type<const Y>::SimpleType>::doit(Val);
  165   using ret_type = To &;       // Normal case, return Ty&
  168   using ret_type = const To &; // Normal case, return Ty&
  172   using ret_type = To *;       // Pointer arg case, return Ty*
  176   using ret_type = const To *; // Constant pointer arg case, return const Ty*
  198   using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
  204   using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
  210       To, From, typename simplify_type<From>::SimpleType>::ret_type;
  218   static typename cast_retty<To, From>::ret_type doit(From &Val) {
  219     return cast_convert_val<To, SimpleFrom,
  227   static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
  228     typename cast_retty<To, FromTy>::ret_type Res2
  248                                typename cast_retty<X, const Y>::ret_type>::type
  256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
  258   return cast_convert_val<X, Y,
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  265   return cast_convert_val<X, Y*,
  265   return cast_convert_val<X, Y*,
  266                           typename simplify_type<Y*>::SimpleType>::doit(Val);
  305 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
  309   return cast<X>(Val);
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  366 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
  368   return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
  368   return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
include/llvm/Support/type_traits.h
   55 struct add_const_past_pointer { using type = const T; };
lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
 3009       if (Scope && isa<DILocalScope>(Scope)) {
lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
  167     if (!isa<DILocalScope>(Scope))
  171     auto *LocalScope = cast<DILocalScope>(Scope)->getNonLexicalBlockFileScope();
  171     auto *LocalScope = cast<DILocalScope>(Scope)->getNonLexicalBlockFileScope();
lib/CodeGen/AsmPrinter/DwarfDebug.cpp
  893   if (isa<DILocalScope>(N->getScope()))
  984           return !isa<DILocalScope>(IE->getScope());
 1250                                        cast<DILocalScope>(ScopeNode)));
 1259           LScopes.findAbstractScope(cast_or_null<DILocalScope>(ScopeNode)))
 1597     const DILocalScope *LocalScope =
lib/CodeGen/LexicalScopes.cpp
  124   DILocalScope *Scope = DL->getScope();
  141 LexicalScope *LexicalScopes::getOrCreateLexicalScope(const DILocalScope *Scope,
  159 LexicalScopes::getOrCreateRegularScope(const DILocalScope *Scope) {
  187 LexicalScopes::getOrCreateInlinedScope(const DILocalScope *Scope,
  191   std::pair<const DILocalScope *, const DILocation *> P(Scope, InlinedAt);
  211 LexicalScopes::getOrCreateAbstractScope(const DILocalScope *Scope) {
lib/IR/DIBuilder.cpp
  682       DILocalVariable::get(VMContext, cast_or_null<DILocalScope>(Context), Name,
  720       DILabel::get(VMContext, cast_or_null<DILocalScope>(Context), Name,
lib/IR/DebugInfo.cpp
   44   if (auto *LocalScope = dyn_cast_or_null<DILocalScope>(Scope))
lib/IR/DebugInfoMetadata.cpp
  112   if (!S || !isa<DILocalScope>(S))
  586 DILocalScope *DILocalScope::getNonLexicalBlockFileScope() const {
lib/IR/Verifier.cpp
 2345     DILocalScope *Scope = DL->getInlinedAtScope();
lib/Linker/IRMover.cpp
 1158       if (isa<DILocalScope>(Scope))
lib/Transforms/Scalar/ADCE.cpp
  170   void collectLiveScopes(const DILocalScope &LS);
  419 void AggressiveDeadCodeElimination::collectLiveScopes(const DILocalScope &LS) {
  427   collectLiveScopes(cast<DILocalScope>(*LS.getScope()));
tools/clang/lib/CodeGen/Address.h
  108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/CodeGen/CGDebugInfo.cpp
 4144       cast<llvm::DILocalScope>(LexicalBlockStack.back()), VD->getName(), Unit,
 4326   auto *scope = cast<llvm::DILocalScope>(LexicalBlockStack.back());
 4326   auto *scope = cast<llvm::DILocalScope>(LexicalBlockStack.back());
unittests/IR/MetadataTest.cpp
 1165   DILocalScope *Scope = getSubprogram();
 1948   DILocalScope *Scope = getSubprogram();
 2001   DILocalScope *Scope = getSubprogram();
 2255   DILocalScope *Scope = getSubprogram();
usr/include/c++/7.4.0/type_traits
  381     : public __is_pointer_helper<typename remove_cv<_Tp>::type>::type
 1554     { typedef _Tp     type; };
 1558     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1983     { typedef _Up     type; };
utils/unittest/googletest/include/gtest/gtest-printers.h
  407                     T* p, ::std::ostream* os) {
  416     if (IsTrue(ImplicitlyConvertible<T*, const void*>::value)) {