mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-23 20:29:30 +00:00
Allow LLVM-style casting on `DIDescriptor` and its subclasses so they can behave more like raw pointers. I haven't bothered with tests since I have a follow-up commit coming shortly that uses them extensively in tree, and I'm hoping to kill `DIDescriptor` entirely before too long (so they won't have time to bitrot). Usage examples: DIDescriptor D = foo(); if (DICompileUnit CU = dyn_cast<MDCompileUnit>(D)) return bar(CU); else if (auto *SP = dyn_cast<MDSubprogram>(D)) return baz(SP); return other(D); git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@234250 91177308-0d34-0410-b5e6-96231b3b80d8