| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Add placeholder code in the static analyzer for MemberExprs involving struct ↵ | Ted Kremenek | 2008-04-30 | 1 | -10/+45 |
| | | | | | | | temporaries. llvm-svn: 50502 | ||||
| * | Add workaround for __builtin_offsetof in the static analyzer. | Ted Kremenek | 2008-04-30 | 1 | -0/+6 |
| | | | | | llvm-svn: 50500 | ||||
| * | Provide SizeOfAlignTypeExpr workaround in the static analyzer for taking the ↵ | Ted Kremenek | 2008-04-30 | 1 | -0/+6 |
| | | | | | | | sizeof of a ObjCInterfaceType. llvm-svn: 50499 | ||||
| * | Support implicit casts from pointers to references. | Ted Kremenek | 2008-04-30 | 1 | -1/+7 |
| | | | | | llvm-svn: 50498 | ||||
| * | When creating LVals for array entries, canonicalize entries with a 0 index. | Ted Kremenek | 2008-04-30 | 1 | -1/+9 |
| | | | | | llvm-svn: 50497 | ||||
| * | Teach more of the static analyzer about ObjCQualifiedIdType. | Ted Kremenek | 2008-04-30 | 5 | -15/+23 |
| | | | | | llvm-svn: 50494 | ||||
| * | Teach the static analysis engine about ObjCQualifiedIdType. | Ted Kremenek | 2008-04-30 | 2 | -10/+13 |
| | | | | | llvm-svn: 50493 | ||||
| * | Add conjured symbols for decl initializations. | Ted Kremenek | 2008-04-30 | 1 | -3/+22 |
| | | | | | | | Add db_error as panic function. llvm-svn: 50489 | ||||
| * | Handle lval::ArrayOffset and lval::FieldOffset in EvalNE and EvalEQ. | Ted Kremenek | 2008-04-30 | 1 | -0/+10 |
| | | | | | llvm-svn: 50486 | ||||
| * | Verify the whole module after codegen to catch silly IR bugs. | Chris Lattner | 2008-04-30 | 1 | -0/+4 |
| | | | | | llvm-svn: 50485 | ||||
| * | fix 'var unused' warning. | Chris Lattner | 2008-04-30 | 1 | -2/+2 |
| | | | | | llvm-svn: 50484 | ||||
| * | fix a bug in my previous patch, a classic =/== bug. | Chris Lattner | 2008-04-30 | 1 | -1/+1 |
| | | | | | llvm-svn: 50483 | ||||
| * | Really commit the test checking the argument lowering behaviour on x86-64 :). | Arnold Schwaighofer | 2008-04-30 | 1 | -0/+21 |
| | | | | | llvm-svn: 50478 | ||||
| * | Tail call optimization improvements: | Arnold Schwaighofer | 2008-04-30 | 16 | -294/+985 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move platform independent code (lowering of possibly overwritten arguments, check for tail call optimization eligibility) from target X86ISelectionLowering.cpp to TargetLowering.h and SelectionDAGISel.cpp. Initial PowerPC tail call implementation: Support ppc32 implemented and tested (passes my tests and test-suite llvm-test). Support ppc64 implemented and half tested (passes my tests). On ppc tail call optimization is performed if caller and callee are fastcc call is a tail call (in tail call position, call followed by ret) no variable argument lists or byval arguments option -tailcallopt is enabled Supported: * non pic tail calls on linux/darwin * module-local tail calls on linux(PIC/GOT)/darwin(PIC) * inter-module tail calls on darwin(PIC) If constraints are not met a normal call will be emitted. A test checking the argument lowering behaviour on x86-64 was added. llvm-svn: 50477 | ||||
| * | set ignore property | Gabor Greif | 2008-04-30 | 0 | -0/+0 |
| | | | | | llvm-svn: 50476 | ||||
| * | fcntl.h is pretty standard on unix (without the sys/) | Gabor Greif | 2008-04-30 | 1 | -2/+1 |
| | | | | | llvm-svn: 50475 | ||||
| * | Move this test to LoopDeletion, where it now passes. | Owen Anderson | 2008-04-30 | 2 | -2/+4 |
| | | | | | llvm-svn: 50474 | ||||
| * | This condition got inverted accidentally. | Owen Anderson | 2008-04-30 | 1 | -1/+1 |
| | | | | | llvm-svn: 50473 | ||||
| * | move lowering of llvm.memset -> store from simplify libcalls | Chris Lattner | 2008-04-30 | 2 | -7/+64 |
| | | | | | | | to instcombine. llvm-svn: 50472 | ||||
| * | no reason for simplifylibcalls to simplify intrinsics, instcombine does | Chris Lattner | 2008-04-30 | 1 | -3/+1 |
| | | | | | | | a fine job. llvm-svn: 50470 | ||||
| * | remove redundant check. | Chris Lattner | 2008-04-30 | 1 | -3/+1 |
| | | | | | llvm-svn: 50469 | ||||
| * | add missing #include | Chris Lattner | 2008-04-30 | 1 | -0/+2 |
| | | | | | llvm-svn: 50468 | ||||
| * | Added test case for the static analyzer. | Ted Kremenek | 2008-04-30 | 1 | -0/+10 |
| | | | | | llvm-svn: 50467 | ||||
| * | Invalidate old subexpression bindings when binding UnknownVal. | Ted Kremenek | 2008-04-30 | 1 | -3/+7 |
| | | | | | llvm-svn: 50466 | ||||
| * | add a method for comparing to see if a value has a specified name. | Chris Lattner | 2008-04-30 | 2 | -0/+11 |
| | | | | | llvm-svn: 50465 | ||||
| * | use string length computation to generalize several xforms. | Chris Lattner | 2008-04-30 | 1 | -36/+39 |
| | | | | | llvm-svn: 50464 | ||||
| * | Add comments for previous patch as requested. | Dale Johannesen | 2008-04-30 | 1 | -0/+6 |
| | | | | | llvm-svn: 50463 | ||||
| * | Bug fixes and updates for CellSPU, syncing up with trunk. Most notable | Scott Michel | 2008-04-30 | 7 | -53/+133 |
| | | | | | | | | | fixes are target-specific lowering of frame indices, fix constants generated for the FSMBI instruction, and fixing SPUTargetLowering::computeMaskedBitsFor- TargetNode(). llvm-svn: 50462 | ||||
| * | Fix custom target lowering for zero/any/sign_extend: make sure that | Scott Michel | 2008-04-30 | 1 | -5/+3 |
| | | | | | | | | DAG.UpdateNodeOperands() is called before (not after) the call to TLI.LowerOperation(). llvm-svn: 50461 | ||||
| * | Simplify RemoveDeadBindings. | Ted Kremenek | 2008-04-29 | 1 | -17/+9 |
| | | | | | llvm-svn: 50458 | ||||
| * | Added test case to test null dereference checking with lval::ArrayOffset. | Ted Kremenek | 2008-04-29 | 1 | -0/+10 |
| | | | | | llvm-svn: 50454 | ||||
| * | Add lval::ArrayOffset, which represent the locations of entries in an array. | Ted Kremenek | 2008-04-29 | 6 | -67/+126 |
| | | | | | llvm-svn: 50453 | ||||
| * | Default visbility for instance variables is protected. | Fariborz Jahanian | 2008-04-29 | 1 | -1/+1 |
| | | | | | | | Patch by Emerson Murhpy-Hill. llvm-svn: 50452 | ||||
| * | Make eh_frame objects by 8-byte aligned on 64-bit | Dale Johannesen | 2008-04-29 | 1 | -2/+4 |
| | | | | | | | targets. llvm-svn: 50451 | ||||
| * | Added lval::FieldOffset, which represents symbolic lvalues for field offsets ↵ | Ted Kremenek | 2008-04-29 | 6 | -36/+91 |
| | | | | | | | | | from other Lvalues. This removes the failure in null-deref-ps.c (test suite). llvm-svn: 50449 | ||||
| * | Minor spelling and typo fixes. | John Criswell | 2008-04-29 | 1 | -4/+4 |
| | | | | | llvm-svn: 50448 | ||||
| * | Revert r50441. The original code was correct. Add some more comments so ↵ | Owen Anderson | 2008-04-29 | 1 | -3/+9 |
| | | | | | | | that I don't make the same mistake in the future. llvm-svn: 50446 | ||||
| * | Fix a bug in memcpyopt where the memcpy-memcpy transform was never being ↵ | Owen Anderson | 2008-04-29 | 2 | -4/+23 |
| | | | | | | | | | | applied because we were checking for it in the wrong order. This caused a miscompilation because the return slot optimization assumes that the call it is dealing with is NOT a memcpy. llvm-svn: 50444 | ||||
| * | Major rewrite/refactoring of static analysis engine. We now use | Ted Kremenek | 2008-04-29 | 7 | -670/+601 |
| | | | | | | | | | | | | | EvalStore/EvalLoad to handle all loads/stores from symbolic memory, allowing us to do checks for null dereferences, etc., at any arbitrary load/store (these were missed checks before). This also resulted in some major cleanups, some conceptual, and others just in the structure of the code. This temporarily introduces a regression in the test suite (null-deref-ps.c) before I add a new LVal type for structure fields. llvm-svn: 50443 | ||||
| * | We should be returning true here since we've changed the function. | Owen Anderson | 2008-04-29 | 1 | -1/+1 |
| | | | | | llvm-svn: 50442 | ||||
| * | A lot of cleanups and documentation improvements, as well as a few corner ↵ | Owen Anderson | 2008-04-29 | 1 | -59/+76 |
| | | | | | | | | | case fixes. Most of this was suggested by Chris. llvm-svn: 50441 | ||||
| * | Rename DeadLoopElimination to LoopDeletion, part 2. | Owen Anderson | 2008-04-29 | 3 | -17/+15 |
| | | | | | llvm-svn: 50437 | ||||
| * | Rename DeadLoopElimination to LoopDeletion, part one. | Owen Anderson | 2008-04-29 | 1 | -0/+0 |
| | | | | | llvm-svn: 50436 | ||||
| * | Don't do stupid things: doInitialization(Module&) is not applicable to ↵ | Anton Korobeynikov | 2008-04-29 | 1 | -17/+2 |
| | | | | | | | ModulePass :) llvm-svn: 50433 | ||||
| * | don't eliminate load from volatile value on paths where the load is dead. | Chris Lattner | 2008-04-29 | 2 | -0/+34 |
| | | | | | | | This fixes the second half of PR2262 llvm-svn: 50430 | ||||
| * | make this test reduced and *valid* | Chris Lattner | 2008-04-29 | 1 | -15/+6 |
| | | | | | llvm-svn: 50429 | ||||
| * | fix a subtle volatile handling bug. | Chris Lattner | 2008-04-29 | 2 | -7/+42 |
| | | | | | llvm-svn: 50428 | ||||
| * | Pass fobjc-gc-only and fobjc-gc options down to clang. | Ted Kremenek | 2008-04-29 | 1 | -1/+1 |
| | | | | | llvm-svn: 50426 | ||||
| * | Use std::set instead of std::priority_queue for the RegReductionPriorityQueue. | Roman Levenstein | 2008-04-29 | 2 | -45/+31 |
| | | | | | | | | | | | | | | | This removes the existing bottleneck related to the removal of elements from the middle of the queue. Also fixes a subtle bug in ScheduleDAGRRList::CapturePred: It was updating the state of the SUnit before removing it. As a result, the comparison operators were working incorrectly and this SUnit could not be removed from the queue properly. Reviewed by Evan and Dan. Approved by Dan. llvm-svn: 50412 | ||||
| * | Implement more aggressive support for analyzing string length. This | Chris Lattner | 2008-04-29 | 1 | -10/+136 |
| | | | | | | | | | | | generalizes the previous code to handle the case when the string is not an immediate to the strlen call (for example, crazy stuff like strlen(c ? "foo" : "bart"+1) -> 3). This implements gcc.c-torture/execute/builtins/strlen-2.c. I will generalize other cases in simplifylibcalls to use the same routine later. llvm-svn: 50408 | ||||

