llvm-6502/unittests
Duncan P. N. Exon Smith 1545953510 IR: Stop using DIDescriptor::is*() and auto-casting
`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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@234255 91177308-0d34-0410-b5e6-96231b3b80d8
2015-04-06 23:18:49 +00:00
..
ADT Default to armv7 cpu for NaCl when march=arm 2015-03-26 21:58:46 +00:00
Analysis [PM] Remove the old 'PassManager.h' header file at the top level of 2015-02-13 10:01:29 +00:00
Bitcode
CodeGen
DebugInfo Purge unused includes throughout libSupport. 2015-03-23 18:07:13 +00:00
ExecutionEngine [MCJIT] Enable MCJIT regression tests on Darwin. 2015-03-31 20:48:52 +00:00
IR [lit] Fix running gtest type-parameterized tests on Windows 2015-04-06 21:49:55 +00:00
LineEditor
Linker Opaque Pointer Types: GEP API migrations to specify the gep type explicitly 2015-03-24 23:34:31 +00:00
MC
Option
ProfileData InstrProf: Don't combine expansion regions with code regions 2015-02-18 19:01:06 +00:00
Support [support] Add a macro wrapper for alignas and simplify some code. 2015-04-02 11:32:48 +00:00
Transforms IR: Stop using DIDescriptor::is*() and auto-casting 2015-04-06 23:18:49 +00:00
CMakeLists.txt InstrProf: Add some unit tests for CoverageMapping 2015-02-04 00:15:12 +00:00
Makefile InstrProf: Add some unit tests for CoverageMapping 2015-02-04 00:15:12 +00:00
Makefile.unittest