summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Better handling of dead super registers in LiveVariables. We used to do this:Jakob Stoklund Olesen2010-03-052-22/+22
| | | | | | | | | | | | | | | | | | | | | CALL ... %RAX<imp-def> ... [not using %RAX] %EAX = ..., %RAX<imp-use, kill> RET %EAX<imp-use,kill> Now we do this: CALL ... %RAX<imp-def, dead> ... [not using %RAX] %EAX = ... RET %EAX<imp-use,kill> By not artificially keeping %RAX alive, we lower register pressure a bit. The correct number of instructions for 2008-08-05-SpillerBug.ll is obviously 55, anybody can see that. Sheesh. llvm-svn: 97838
* We don't really care about correct register liveness information after theJakob Stoklund Olesen2010-03-052-4/+59
| | | | | | post-ra scheduler has run. Disable the verifier checks that late in the game. llvm-svn: 97837
* Avoid creating bad PHI instructions when BR is being const-folded.Jakob Stoklund Olesen2010-03-052-0/+44
| | | | llvm-svn: 97836
* Switch from NDEBUG to _DEBUG, since our Windows build is funnyDouglas Gregor2010-03-052-6/+6
| | | | llvm-svn: 97835
* Only make __ptr64 and __w64 keywords when Microsoft extensions are enabled.Douglas Gregor2010-03-051-2/+2
| | | | llvm-svn: 97834
* A little hack to identify unwanted concurrency in CIndexDouglas Gregor2010-03-053-2/+49
| | | | llvm-svn: 97831
* Fix a case where LSR is sensitive to debug info.Dale Johannesen2010-03-051-0/+9
| | | | llvm-svn: 97830
* Safely turn memset_chk etc. to non-chk variant if the known object size is ↵Evan Cheng2010-03-052-13/+37
| | | | | | >= memset / memcpy / memmove size. llvm-svn: 97828
* Instcombine should turn llvm.objectsize of a alloca with static size to an ↵Evan Cheng2010-03-052-9/+42
| | | | | | integer. llvm-svn: 97827
* Emit warning on indirect goto that potentially violates Chris Lattner2010-03-052-3/+4
| | | | | | scope instead of error, PR6517 llvm-svn: 97826
* Fix typo.Evan Cheng2010-03-051-1/+1
| | | | llvm-svn: 97818
* address PR6502 by downgrading the scope checker's addressChris Lattner2010-03-052-3/+3
| | | | | | of label error to a warning controllable with a -W flag. llvm-svn: 97815
* fix bss section printing for cell, patch by Kalle Raiskila!Chris Lattner2010-03-052-0/+8
| | | | llvm-svn: 97814
* fix PR6512, a case where instcombine would incorrectly merge loadsChris Lattner2010-03-052-0/+42
| | | | | | from different addr spaces. llvm-svn: 97813
* Use clang::io::Emit8Kovarththanan Rajaratnam2010-03-051-3/+1
| | | | llvm-svn: 97810
* Make sure the raw_string_ostream gets flushed so we don't accidentally ↵Benjamin Kramer2010-03-051-3/+3
| | | | | | return an empty string. llvm-svn: 97809
* Reworking the stack layout that the MicroBlaze backend generates.Wesley Peck2010-03-056-61/+257
| | | | | | | | | | | The MicroBlaze backend was generating stack layouts that did not conform correctly to the ABI. This update generates stack layouts which are closer to what GCC does. Variable arguments support was added as well but the stack layout for varargs has not been finalized. llvm-svn: 97807
* Adding MBlaze to cmake target list.Wesley Peck2010-03-051-0/+1
| | | | llvm-svn: 97806
* Fix PR6503. This turned into a much more interesting and nasty bug. Various Chris Lattner2010-03-054-139/+122
| | | | | | | | | | | parts of the cmp|cmp and cmp&cmp folding logic wasn't prepared for vectors (unrelated to the bug but noticed while in the code) and the code was *definitely* not safe to use by the (cast icmp)|(cast icmp) handling logic that I added in r95855. Fix all this up by changing the various routines to more consistently use IRBuilder and not pass in the I which had the wrong type. llvm-svn: 97801
* make these less sensitive to temporary naming.Chris Lattner2010-03-053-15/+15
| | | | llvm-svn: 97799
* remove this testcase, it isn't clear what it was testing and it is subsumed ↵Chris Lattner2010-03-051-18/+0
| | | | | | by or.ll llvm-svn: 97798
* Fix an oops in x86 sibcall optimization. If the ByVal callee argument is ↵Evan Cheng2010-03-052-8/+35
| | | | | | itself passed as a pointer, then it's obviously not safe to do a tail call. llvm-svn: 97797
* If LD_LIBRARY_PATH is set in the system environment, use it.Duncan Sands2010-03-051-0/+1
| | | | llvm-svn: 97796
* simplify some functions and make them work with vectorChris Lattner2010-03-051-62/+25
| | | | | | compares, noticed by inspection. llvm-svn: 97795
* fix a nice subtle reassociate bug which would only occurChris Lattner2010-03-052-7/+34
| | | | | | | in a very specific use pattern embodied in the carefully reduced testcase. llvm-svn: 97794
* Move GetStringLength and helper from SimplifyLibCalls to ValueTracking.Eric Christopher2010-03-053-124/+133
| | | | | | No functionality change. llvm-svn: 97793
* Revert r97788 because it broke test/FrontendC/2010-02-16-DbgVarScope.c.Jeffrey Yasskin2010-03-053-26/+22
| | | | llvm-svn: 97792
* Fix PR6497, a bug where we'd fold a load into an addcChris Lattner2010-03-052-0/+27
| | | | | | | | | | | node which has a flag. That flag in turn was used by an already-selected adde which turned into an ADC32ri8 which used a selected load which was chained to the load we folded. This flag use caused us to form a cycle. Fix this by not ignoring chains in IsLegalToFold even in cases where the isel thinks it can. llvm-svn: 97791
* cleanupChris Lattner2010-03-051-6/+6
| | | | llvm-svn: 97790
* inline a small function with one call site.Chris Lattner2010-03-051-16/+4
| | | | llvm-svn: 97789
* Free MDNodes when the LLVMContext is destroyed. Leak found by Valgrind.Jeffrey Yasskin2010-03-053-22/+26
| | | | llvm-svn: 97788
* Make it not an error to specify -O* options several times.Mikhail Glushenkov2010-03-054-33/+78
| | | | | | As in 'llvmc -O2 -O2 test.c'. llvm-svn: 97787
* Use FindExecutable as a fall-back search method.Mikhail Glushenkov2010-03-051-2/+13
| | | | | | Allows us to find executables that are in the same directory. llvm-svn: 97786
* Remove reference to AnalysisContext in Environment. We already have ↵Zhongxing Xu2010-03-058-56/+34
| | | | | | | | LocationContext information in ExplodedNode. llvm-svn: 97785
* Rever 96389 and 96990. They are causing some miscompilation that I do not ↵Evan Cheng2010-03-053-66/+4
| | | | | | fully understand. llvm-svn: 97782
* Revert r97778 and r97779. They're somehow breaking llvm-gcc builds.Dan Gohman2010-03-051-17/+41
| | | | llvm-svn: 97781
* apparently if gold is around lto needs to be part of DIRS.Chris Lattner2010-03-051-2/+7
| | | | llvm-svn: 97780
* Fix these constants to be more portable.Dan Gohman2010-03-051-3/+3
| | | | llvm-svn: 97779
* Rewrite i64-to-f64 conversion using an algorithm which handlesDan Gohman2010-03-051-41/+17
| | | | | | | | | rounding correctly. This implementation is a generalization of the x86_64 code in compiler-rt. This fixes rdar://7683708. llvm-svn: 97778
* Remove header file dependencies in block patchFariborz Jahanian2010-03-051-8/+4
| | | | | | test case. llvm-svn: 97777
* Trivial comment change.Johnny Chen2010-03-051-1/+1
| | | | llvm-svn: 97776
* add support for a 1<<29 bit in the block flags field to mark blocks using ↵Blaine Garst2010-03-053-3/+128
| | | | | | alternate struct return ABI llvm-svn: 97775
* Add missing break for Intrinsic::objectsize case. It was falling through to ↵Evan Cheng2010-03-051-0/+1
| | | | | | the following Intrinsic::bswap code. I have no idea why it wasn't breaking stuff. llvm-svn: 97774
* Don't produce an alias for a destructor if the target is weak.Rafael Espindola2010-03-051-0/+16
| | | | | | This fixes bootstrap on ELF systems :-) llvm-svn: 97773
* disable libprofile on cygwin, patch by Aaron Gray.Chris Lattner2010-03-051-0/+4
| | | | llvm-svn: 97772
* Only build libedis if ENABLE_SHARED is specified, just like liblto.Chris Lattner2010-03-051-10/+11
| | | | | | Don't build any of the dynamic library stuff on cygwin/mingw. llvm-svn: 97771
* liblto and gold don't need to be built in serialChris Lattner2010-03-051-3/+3
| | | | llvm-svn: 97770
* add an assertion requested on llvmdev.Chris Lattner2010-03-051-0/+1
| | | | llvm-svn: 97769
* Revert r97766. It's deleting a tag.Bill Wendling2010-03-052-74/+13
| | | | llvm-svn: 97768
* When we invalidate a declaration, make it public, so that it doesn'tDouglas Gregor2010-03-052-1/+11
| | | | | | | trigger access control or one of the many assertions we have for valid access specifiers. llvm-svn: 97767
OpenPOWER on IntegriCloud