mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 03:33:20 +01:00
ba32e6fa81
`DIDescriptor`'s subclasses allow construction from incompatible pointers, and `DIDescriptor` defines a series of `isa<>`-like functions (e.g., `isCompileUnit()` instead of `isa<MDCompileUnit>()`) that clients tend to use like this: if (DICompileUnit(N).isCompileUnit()) foo(DICompileUnit(N)); These construction patterns work together to make `DIDescriptor` behave differently from normal pointers. Instead, use built-in `isa<>`, `dyn_cast<>`, etc., and only build `DIDescriptor`s from pointers that are valid for their type. I've split this into a few commits for different parts of LLVM and clang (to decrease the patch size and increase the chance of review). Generally the changes I made were NFC, but in a few places I made things stricter if it made sense from the surrounded code. Eventually a follow-up commit will remove the API for the "old" way. llvm-svn: 234255 |
||
---|---|---|
.. | ||
bugpoint | ||
bugpoint-passes | ||
dsymutil | ||
gold | ||
llc | ||
lli | ||
llvm-ar | ||
llvm-as | ||
llvm-bcanalyzer | ||
llvm-c-test | ||
llvm-config | ||
llvm-cov | ||
llvm-cxxdump | ||
llvm-diff | ||
llvm-dis | ||
llvm-dwarfdump | ||
llvm-extract | ||
llvm-go | ||
llvm-jitlistener | ||
llvm-link | ||
llvm-lto | ||
llvm-mc | ||
llvm-mcmarkup | ||
llvm-nm | ||
llvm-objdump | ||
llvm-pdbdump | ||
llvm-profdata | ||
llvm-readobj | ||
llvm-rtdyld | ||
llvm-shlib | ||
llvm-size | ||
llvm-stress | ||
llvm-symbolizer | ||
lto | ||
macho-dump | ||
msbuild | ||
obj2yaml | ||
opt | ||
verify-uselistorder | ||
yaml2obj | ||
CMakeLists.txt | ||
LLVMBuild.txt | ||
Makefile |