Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Fix looking up MD names to not need a module. | Erick Tryzelaar | 2010-03-02 | 1 | -10/+12 | |
| | | | | llvm-svn: 97550 | |||||
* | Don't print "Modified" for passes which haven't modified anything. | Dan Gohman | 2010-03-01 | 1 | -6/+12 | |
| | | | | llvm-svn: 97446 | |||||
* | Add support for global variables in an address space for llvm-c and ocaml. | Erick Tryzelaar | 2010-02-28 | 1 | -0/+8 | |
| | | | | llvm-svn: 97377 | |||||
* | Add indirect br support to llvm-c and ocaml. | Erick Tryzelaar | 2010-02-28 | 1 | -0/+13 | |
| | | | | llvm-svn: 97376 | |||||
* | Add metadata functions to llvm-c and ocaml. | Erick Tryzelaar | 2010-02-28 | 1 | -0/+56 | |
| | | | | llvm-svn: 97375 | |||||
* | Add the new builder arthmetic instructions to llvm-c and ocaml. | Erick Tryzelaar | 2010-02-28 | 1 | -0/+81 | |
| | | | | llvm-svn: 97372 | |||||
* | Add the new union arthmetic instructions to llvm-c and ocaml. | Erick Tryzelaar | 2010-02-28 | 1 | -1/+3 | |
| | | | | llvm-svn: 97371 | |||||
* | Add generic binary op and cast builder functions. | Erick Tryzelaar | 2010-02-28 | 1 | -0/+13 | |
| | | | | llvm-svn: 97370 | |||||
* | Add type printing for Metadata pseudo. | Dale Johannesen | 2010-02-26 | 1 | -0/+1 | |
| | | | | llvm-svn: 97251 | |||||
* | Teach the constant folder about union types. | Dan Gohman | 2010-02-25 | 1 | -0/+34 | |
| | | | | llvm-svn: 97142 | |||||
* | Remove code which assumes it knows how vectors are stored in memory. | Dan Gohman | 2010-02-25 | 1 | -12/+2 | |
| | | | | llvm-svn: 97141 | |||||
* | Dump the presence of attached metadata even if we don't know what it is. This | Nick Lewycky | 2010-02-25 | 1 | -6/+10 | |
| | | | | | | | | format is not parsable, even if the module is legal. To get parsable output, dump the module instead of the function or smaller, since metadata kind are attached to the module (not the context). llvm-svn: 97124 | |||||
* | Canonicalize ConstantInts to the right operand of commutative | Dan Gohman | 2010-02-22 | 1 | -0/+4 | |
| | | | | | | | | | | operators. The test difference is just due to the multiplication operands being commuted (and thus requiring a more elaborate match). In optimized code, that expression would be folded. llvm-svn: 96816 | |||||
* | Use Instruction::isCommutative instead of duplicating it. | Dan Gohman | 2010-02-22 | 1 | -24/+1 | |
| | | | | llvm-svn: 96807 | |||||
* | replaceUsesOfWithOnConstant implementation for unions. | Talin | 2010-02-18 | 1 | -1/+46 | |
| | | | | llvm-svn: 96616 | |||||
* | Destroy MDNodes gracefully while deleting llvm context. | Devang Patel | 2010-02-18 | 2 | -1/+18 | |
| | | | | llvm-svn: 96609 | |||||
* | Function attributes have index ~0, not 0 | Kenneth Uildriks | 2010-02-16 | 1 | -2/+2 | |
| | | | | llvm-svn: 96370 | |||||
* | Introduce isOpaqueTy and use it rather than isa<OpaqueType>. Also, move some | Duncan Sands | 2010-02-16 | 5 | -10/+10 | |
| | | | | | | methods to try to have the type predicates be more logically positioned. llvm-svn: 96349 | |||||
* | There are two ways of checking for a given type, for example isa<PointerType>(T) | Duncan Sands | 2010-02-16 | 11 | -103/+103 | |
| | | | | | | | and T->isPointerTy(). Convert most instances of the first form to the second form. Requested by Chris. llvm-svn: 96344 | |||||
* | Teach the verifier to check the condition on a branch and ensure that it has | Nick Lewycky | 2010-02-15 | 1 | -0/+9 | |
| | | | | | | 'i1' type. llvm-svn: 96282 | |||||
* | Fix crash in VerifyType when checking Contexts. Because there may not be a | Nick Lewycky | 2010-02-15 | 1 | -8/+14 | |
| | | | | | | | Module (we were called with verifyFunction and an unowned Function) we can't rely on Mod->getContext(). llvm-svn: 96275 | |||||
* | Don't try to materialize a function that isn't materializable anyways. This | Nick Lewycky | 2010-02-15 | 1 | -3/+5 | |
| | | | | | | fixes a crash using FPM on a Function that isn't owned by a Module. llvm-svn: 96273 | |||||
* | A function with no Module owner isn't materializable. This fixes F->dump() for | Nick Lewycky | 2010-02-15 | 1 | -2/+2 | |
| | | | | | | functions not embedded within modules. llvm-svn: 96272 | |||||
* | Uniformize the names of type predicates: rather than having isFloatTy and | Duncan Sands | 2010-02-15 | 8 | -166/+168 | |
| | | | | | | isInteger, we now have isFloatTy and isIntegerTy. Requested by Chris! llvm-svn: 96223 | |||||
* | Make PassRegistrar thread-safe since it can be modified by code running in | Jeffrey Yasskin | 2010-02-13 | 1 | -0/+9 | |
| | | | | | | separate LLVMContexts. llvm-svn: 96051 | |||||
* | Add support for a union type in LLVM IR. Patch by Talin! | Chris Lattner | 2010-02-12 | 8 | -7/+258 | |
| | | | | llvm-svn: 96011 | |||||
* | Add a new function attribute, 'alignstack'. It will indicate (when the backends | Charles Davis | 2010-02-12 | 1 | -0/+5 | |
| | | | | | | | implement support for it) that the stack should be forcibly realigned in the prologue (and the process reversed in the epilogue). llvm-svn: 95945 | |||||
* | revert 95903. | Devang Patel | 2010-02-11 | 1 | -4/+1 | |
| | | | | llvm-svn: 95918 | |||||
* | Destroy MDNodes while destructing llvm context. | Devang Patel | 2010-02-11 | 1 | -1/+4 | |
| | | | | llvm-svn: 95903 | |||||
* | Fix some of the memcheck errors found in the JIT unittests. | Jeffrey Yasskin | 2010-02-11 | 2 | -26/+12 | |
| | | | | llvm-svn: 95856 | |||||
* | Minor whitespace cleanups. | Dan Gohman | 2010-02-10 | 1 | -3/+1 | |
| | | | | llvm-svn: 95801 | |||||
* | Add a hook to AssemblyAnnotationWriter to allow custom info comments | Dan Gohman | 2010-02-10 | 1 | -0/+5 | |
| | | | | | | to be printed, in place of the familiar "uses=" comments. llvm-svn: 95798 | |||||
* | Fix several comments which had previously been "the the" where a | Dan Gohman | 2010-02-10 | 1 | -1/+1 | |
| | | | | | | different word was intended. llvm-svn: 95795 | |||||
* | Fix "the the" and similar typos. | Dan Gohman | 2010-02-10 | 1 | -1/+1 | |
| | | | | llvm-svn: 95781 | |||||
* | Canonicalize sizeof and alignof on pointer types to a canonical | Dan Gohman | 2010-02-10 | 1 | -0/+19 | |
| | | | | | | pointer type. llvm-svn: 95769 | |||||
* | IntegerValType holds a uint32_t, so its constructor should take a uint32_t. ↵ | Kenneth Uildriks | 2010-02-10 | 1 | -1/+1 | |
| | | | | | | This allows it to be properly initialized with bit widths > 65535 llvm-svn: 95731 | |||||
* | Make the destructor for TypeMapBase protected. Spotted by Duncan Sands with | Nick Lewycky | 2010-02-07 | 1 | -2/+1 | |
| | | | | | | cppcheck! llvm-svn: 95527 | |||||
* | Reintroduce the InlineHint function attribute. | Jakob Stoklund Olesen | 2010-02-06 | 1 | -0/+2 | |
| | | | | | | | | | | | | This time it's for real! I am going to hook this up in the frontends as well. The inliner has some experimental heuristics for dealing with the inline hint. When given a -respect-inlinehint option, functions marked with the inline keyword are given a threshold just above the default for -O3. We need some experiments to determine if that is the right thing to do. llvm-svn: 95466 | |||||
* | Adding missing methods for creating Add, Mul, Neg and Sub with NUW. | Duncan Sands | 2010-02-02 | 2 | -2/+30 | |
| | | | | llvm-svn: 95086 | |||||
* | Factor out alignof expression folding into a separate function and | Dan Gohman | 2010-02-02 | 1 | -26/+69 | |
| | | | | | | generalize it to handle more cases. llvm-svn: 95045 | |||||
* | eliminate a bunch of pointless LLVMContext arguments. | Chris Lattner | 2010-02-01 | 3 | -202/+148 | |
| | | | | llvm-svn: 95001 | |||||
* | Fix typo "of" -> "or" and change the way a line was formatted to fit | Duncan Sands | 2010-02-01 | 1 | -2/+2 | |
| | | | | | | into 80 columns to match my artistic preferences. llvm-svn: 95000 | |||||
* | fix PR6195, a bug constant folding scalar -> vector compares. | Chris Lattner | 2010-02-01 | 1 | -3/+5 | |
| | | | | llvm-svn: 94997 | |||||
* | fix PR6197 - infinite recursion in ipsccp due to block addresses | Chris Lattner | 2010-02-01 | 1 | -19/+47 | |
| | | | | | | evaluateICmpRelation wasn't handling blockaddress. llvm-svn: 94993 | |||||
* | Generalize target-independent folding rules for sizeof to handle more | Dan Gohman | 2010-02-01 | 1 | -24/+169 | |
| | | | | | | | | | | | | | | | | | | | cases, and implement target-independent folding rules for alignof and offsetof. Also, reassociate reassociative operators when it leads to more folding. Generalize ScalarEvolution's isOffsetOf to recognize offsetof on arrays. Rename getAllocSizeExpr to getSizeOfExpr, and getFieldOffsetExpr to getOffsetOfExpr, for consistency with analagous ConstantExpr routines. Make the target-dependent folder promote GEP array indices to pointer-sized integers, to make implicit casting explicit and exposed to subsequent folding. And add a bunch of testcases for this new functionality, and a bunch of related existing functionality. llvm-svn: 94987 | |||||
* | Add a getNUWMul function. | Dan Gohman | 2010-02-01 | 1 | -0/+5 | |
| | | | | llvm-svn: 94982 | |||||
* | Add a generalized form of ConstantExpr::getOffsetOf which works for | Dan Gohman | 2010-02-01 | 1 | -4/+9 | |
| | | | | | | | array types as well as struct types, and which accepts arbitrary Constant indicies. llvm-svn: 94981 | |||||
* | Print a comment next to "materializable" global values, to distinguish | Dan Gohman | 2010-01-29 | 1 | -0/+9 | |
| | | | | | | them from values that are not actually defined in the module. llvm-svn: 94854 | |||||
* | Convert some users of ftostr to raw_ostream. | Benjamin Kramer | 2010-01-29 | 1 | -2/+4 | |
| | | | | llvm-svn: 94808 | |||||
* | Remove the folding rule | Dan Gohman | 2010-01-28 | 1 | -22/+0 | |
| | | | | | | | | | | | | | | | | | getelementptr (i8* inttoptr (i64 1 to i8*), i32 -1) to inttoptr (i64 0 to i8*) from the VMCore constant folder. It didn't handle sign-extension properly in the case where the source integer is smaller than a pointer size. And, it relied on an assumption about sizeof(i8). The Analysis constant folder still folds these kinds of things; it has access to TargetData, so it can do them right. Add a testcase which tests that the VMCore constant folder doesn't miscompile this, and that the Analysis folder does fold it. llvm-svn: 94750 |