llvm-6502/lib
Chandler Carruth e608d695de [PM] Make the verifier work independently of any pass manager.
This makes the 'verifyFunction' and 'verifyModule' functions totally
independent operations on the LLVM IR. It also cleans up their API a bit
by lifting the abort behavior into their clients and just using an
optional raw_ostream parameter to control printing.

The implementation of the verifier is now just an InstVisitor with no
multiple inheritance. It also is significantly more const-correct, and
hides the const violations internally. The two layers that force us to
break const correctness are building a DomTree and dispatching through
the InstVisitor.

A new VerifierPass is used to implement the legacy pass manager
interface in terms of the other pieces.

The error messages produced may be slightly different now, and we may
have slightly different short circuiting behavior with different usage
models of the verifier, but generally everything works equivalently and
this unblocks wiring the verifier up to the new pass manager.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199569 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-19 02:22:18 +00:00
..
Analysis [PM] Make the verifier work independently of any pass manager. 2014-01-19 02:22:18 +00:00
AsmParser Add an inalloca flag to allocas 2014-01-17 23:58:17 +00:00
Bitcode Make parseBitcodeFile return an ErrorOr<Module *>. 2014-01-15 01:08:23 +00:00
CodeGen Debug info (LTO): Move the creation of accessibility flags to 2014-01-18 02:12:00 +00:00
DebugInfo llvm-dwarfdump: type unit dwo support 2014-01-09 05:08:24 +00:00
ExecutionEngine Attempt to fix the MSVC build. 2014-01-16 05:09:32 +00:00
IR [PM] Make the verifier work independently of any pass manager. 2014-01-19 02:22:18 +00:00
IRReader Make parseBitcodeFile return an ErrorOr<Module *>. 2014-01-15 01:08:23 +00:00
Linker Reapply r194218 with fix: 2014-01-16 06:29:36 +00:00
LTO [LTO] Add a hook to map LLVM diagnostics into the clients of LTO. 2014-01-15 22:04:35 +00:00
MC Tweak the MCExternalSymbolizer to print references to C string literals 2014-01-16 18:43:56 +00:00
Object 80-column. 2014-01-17 22:11:27 +00:00
Option
Support raw_fd_ostream: Don't change STDERR to O_BINARY, or w*printf() (in assert()) would barf wide chars after llvm::errs(). 2014-01-12 16:14:24 +00:00
TableGen [TableGen] Correctly generate implicit anonymous prototype defs in multiclasses 2014-01-02 20:47:09 +00:00
Target ARM: Let the assembler reject v5 instructions in v4 mode. 2014-01-18 19:03:19 +00:00
Transforms Don't refuse to transform constexpr(call(arg, ...)) to call(constexpr(arg), ...)) just because the function has multiple return values even if their return types are the same. Patch by Eduard Burtescu! 2014-01-18 22:47:12 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile