aboutsummaryrefslogtreecommitdiffstats
path: root/lib/VMCore/Verifier.cpp
Commit message (Collapse)AuthorAgeFilesLines
* The Alpha (tm) intrinsics have never been used anywhereMisha Brukman2004-10-291-16/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17340 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure to check select instructions for generic instruction propertiesChris Lattner2004-09-291-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16597 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't use DominatorSet::dominates for intra-block instruction dom checks.Chris Lattner2004-09-291-1/+11
| | | | | | | | | This method is linear time in the size of the basic block, which is very bad for large basic blocks. On the Assembler/2004-09-29-VerifierIsReallySlow.llx testcase, the verifier changes from taking 50s to 0.23s with this patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16593 91177308-0d34-0410-b5e6-96231b3b80d8
* Changes For Bug 352Reid Spencer2004-09-011-1/+1
| | | | | | | | | Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
* Packed types, brought to you by Brad JonesBrian Gaeke2004-08-201-2/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15938 91177308-0d34-0410-b5e6-96231b3b80d8
* Updates to gc intrinsics, contributed by Tobias NurmirantaChris Lattner2004-07-221-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15096 91177308-0d34-0410-b5e6-96231b3b80d8
* bug 122:Reid Spencer2004-07-181-4/+1
| | | | | | | - Correct an assert to not have redundant isa<GlobalValue> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14934 91177308-0d34-0410-b5e6-96231b3b80d8
* - #include <iostream> since its not in Value.h any more.Reid Spencer2004-07-041-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14617 91177308-0d34-0410-b5e6-96231b3b80d8
* * Capitalize `Java'Misha Brukman2004-06-241-7/+7
| | | | | | | | * Sprinkle hypens liberally * Fix some grammar in comments git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14374 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor cleanupChris Lattner2004-06-171-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14199 91177308-0d34-0410-b5e6-96231b3b80d8
* isnan is deadChris Lattner2004-06-151-10/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14191 91177308-0d34-0410-b5e6-96231b3b80d8
* Make assertions more consistent with the rest of the intrinsicAlkis Evlogimenos2004-06-131-8/+12
| | | | | | | | function verification and make it a requirement that both arguments to llvm.isunordered are of the same type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14165 91177308-0d34-0410-b5e6-96231b3b80d8
* Add the isunordered intrinsic.Alkis Evlogimenos2004-06-121-1/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14159 91177308-0d34-0410-b5e6-96231b3b80d8
* I misled Alkis: LLVM should have isnan, not isunordered.Chris Lattner2004-06-111-1/+7
| | | | | | | | | isunordered(X, Y) === isnan(X) | isnan(Y) Remove isunordered, add isnan. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14132 91177308-0d34-0410-b5e6-96231b3b80d8
* Add the isunordered intrinsic.Alkis Evlogimenos2004-06-111-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14127 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR361.Chris Lattner2004-06-071-1/+2
| | | | | | | Dominance properties don't hold in unreachable code git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14053 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix GCC warningChris Lattner2004-06-051-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14045 91177308-0d34-0410-b5e6-96231b3b80d8
* Work around VS bugChris Lattner2004-06-051-3/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14036 91177308-0d34-0410-b5e6-96231b3b80d8
* * Verify function prototypes, not just functions with bodies.Chris Lattner2004-06-031-2/+12
| | | | | | | * Verify that functions do not take aggregates as arguments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13984 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix for bug 348.Reid Spencer2004-05-271-0/+1
| | | | | | | The SymbolTable changes caused this one too. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13859 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert to SymbolTable's new iteration interface. Remove tabs.Reid Spencer2004-05-251-14/+27
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13753 91177308-0d34-0410-b5e6-96231b3b80d8
* Recognize and verify the new GC intrinsics.Chris Lattner2004-05-231-6/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13687 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix for PR340: Verifier misses malformed switch instructionChris Lattner2004-05-211-0/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13618 91177308-0d34-0410-b5e6-96231b3b80d8
* Fold two assertions with backwards error messages into one with aBrian Gaeke2004-05-171-6/+3
| | | | | | | correct error message. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13590 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed inconsistent indentation.John Criswell2004-05-041-16/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13363 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure to check for a very bad class of errors: an instructionChris Lattner2004-04-161-0/+6
| | | | | | | | | that does not dominate all of its users, but is in the same basic block as its users. This class of error is what caused the mysterious CBE only failures last night. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12979 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove the return type check for llvm.readio. This check is done for allJohn Criswell2004-04-141-4/+3
| | | | | | | | functions and is not needed here. Simplify the pointer type check per Chris's suggestions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12945 91177308-0d34-0410-b5e6-96231b3b80d8
* Added code to verify that llvm.readio's pointer argument returns somethingJohn Criswell2004-04-141-3/+8
| | | | | | | that matches its return type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12944 91177308-0d34-0410-b5e6-96231b3b80d8
* Finish adding the llvm.readio and llvm.writeio intrinsics.John Criswell2004-04-141-0/+22
| | | | | | | Sorry these didn't get in yesterday. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12942 91177308-0d34-0410-b5e6-96231b3b80d8
* Reversed the order of the llvm.writeport() operands so that the valueJohn Criswell2004-04-091-2/+2
| | | | | | | is listed first and the address is listed second. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12795 91177308-0d34-0410-b5e6-96231b3b80d8
* Added the llvm.readport and llvm.writeport intrinsics.John Criswell2004-04-081-0/+20
| | | | | | | | | The Verifier ensures that their parameters are of integral types and have the correct sign, but it does not enforce any size restrictions because such restrictions are platform dependent. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12781 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the verifier API more complete and useful.Chris Lattner2004-04-021-20/+48
| | | | | | | Patch contributed by Reid Spencer git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12609 91177308-0d34-0410-b5e6-96231b3b80d8
* Add another checkChris Lattner2004-03-291-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12525 91177308-0d34-0410-b5e6-96231b3b80d8
* Catch some more cases of broken code. The loop extractor seems to be creatingChris Lattner2004-03-141-3/+8
| | | | | | | situations where there is a branch that goes to a block in another function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12379 91177308-0d34-0410-b5e6-96231b3b80d8
* verifyFunction has been broken for a long time now. Fix it.Chris Lattner2004-03-141-12/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12377 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename the intrinsic enum values for llvm.va_* from Intrinsic::va_* toChris Lattner2004-03-131-3/+3
| | | | | | | Intrinsic::va*. This avoid conflicting with macros in the stdlib.h file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12356 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for checking the select instructionChris Lattner2004-03-121-0/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12325 91177308-0d34-0410-b5e6-96231b3b80d8
* Doxygenify comments.Misha Brukman2004-03-021-22/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12071 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix Regression/Assembler/2004-02-27-SelfUseAssertError.llChris Lattner2004-02-271-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11913 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the verifier a little more explicit about this problem.Chris Lattner2004-02-241-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11811 91177308-0d34-0410-b5e6-96231b3b80d8
* Add llvm.memset/frameaddress/returnaddress intrinsics.Chris Lattner2004-02-141-7/+15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11431 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for the llvm.memmove intrinsicChris Lattner2004-02-121-0/+1
| | | | | | | Patch graciously contributed by Reid Spencer! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11355 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement the llvm.memcpy intrinsicChris Lattner2004-02-121-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11349 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix check. PHI nodes must be handled specially, of course.Chris Lattner2004-01-141-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10842 91177308-0d34-0410-b5e6-96231b3b80d8
* Tighten up verifier checks. The result of an invoke instruction onlyChris Lattner2004-01-141-2/+8
| | | | | | | | dominates the normal destination, not the exceptional dest (ie, the result of a call is undefined on an exception) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10841 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for new intrinsicChris Lattner2004-01-061-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10701 91177308-0d34-0410-b5e6-96231b3b80d8
* Add VMCore and code generator support for debugging intrinsics. By defaultChris Lattner2004-01-051-0/+5
| | | | | | | code generators completely ignore them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10691 91177308-0d34-0410-b5e6-96231b3b80d8
* Check return types of functionsChris Lattner2003-11-211-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10146 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix problem Reid was having with external globals and nonexternal linkageChris Lattner2003-11-211-3/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10133 91177308-0d34-0410-b5e6-96231b3b80d8
* Finegrainify namespacificationChris Lattner2003-11-211-10/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10131 91177308-0d34-0410-b5e6-96231b3b80d8