summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge from branch to fix bug.svn-tags/RELEASE_22Tanya Lattner2008-02-121-46/+47
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/tags/RELEASE_22@46994 91177308-0d34-0410-b5e6-96231b3b80d8
* Tagging release 2.2.Tanya Lattner2008-02-120-0/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/tags/RELEASE_22@46987 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge release notes from mainline.Tanya Lattner2008-02-121-179/+249
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46986 91177308-0d34-0410-b5e6-96231b3b80d8
* release tag.Tanya Lattner2008-02-121-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46982 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2008-02-041-2/+0
| | | | | | | Don't dump the function! git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46699 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2008-02-043-9/+9
| | | | | | | | Provide correct DWARF register numbering for debug information emission on x86-32/Darwin. This should fix bunch of issues. git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46698 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2008-01-231-0/+3
| | | | | | | Trivial patch to fix two warnings git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46272 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2008-01-221-1/+1
| | | | | | | | | One too many )'s breaks 'make clean' with certain versions of make. This fixes PR1927 git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46248 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2008-01-211-1/+1
| | | | | | | | | | | | | Fix the failures in the PPC JIT by marking relocation entries for external symbols (e.g. 'fmod') as needing a stub. This regression was introduced by Evan's jit patch here: http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20071231/056749.html With this fixed, the two ExecutionEngine failures are passing on ppc, and the ppc jit works on freebench and olden. git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46225 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2008-01-211-8/+8
| | | | | | | | | | | Need to handle any 'nest' parameter before integer parameters, since otherwise it won't be passed in the right register. With this change trampolines work on x86-64 (thanks to Luke Guest for providing access to an x86-64 box). git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46215 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2008-01-211-3/+12
| | | | | | | Honour ByVal parameter attribute for name decoration. git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46214 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2008-01-211-1/+3
| | | | | | | | Make sure the caller doesn't use freed memory. Fixes PR1935. git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46213 91177308-0d34-0410-b5e6-96231b3b80d8
* UnXFAIL this test.Tanya Lattner2008-01-181-3/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46169 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2008-01-181-3/+2
| | | | | | | | | | | Revert the part of 45849 that treated weak globals as weak globals rather than commons. While not wrong, this change tickled a latent bug in Darwin's strip, so revert it for now as a workaround. git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46168 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2008-01-182-4/+4
| | | | | | | | | | Revert the part of 45848 that treated weak globals as weak globals rather than commons. While not wrong, this change tickled a latent bug in Darwin's strip, so revert it for now as a workaround. git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46167 91177308-0d34-0410-b5e6-96231b3b80d8
* Update for current year.Tanya Lattner2008-01-173-6/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46121 91177308-0d34-0410-b5e6-96231b3b80d8
* Set version to 2.2Tanya Lattner2008-01-172-1016/+3283
| | | | | | | Regenerated configure with autoconf 2.60. Do not use 2.61 until AutoGen.sh is updated! git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46118 91177308-0d34-0410-b5e6-96231b3b80d8
* Creating 2.2 release branchTanya Lattner2008-01-170-0/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46114 91177308-0d34-0410-b5e6-96231b3b80d8
* DAE bug fix. Don't lose parameter attributes on vararg arguments.Evan Cheng2008-01-171-5/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46113 91177308-0d34-0410-b5e6-96231b3b80d8
* Enable CBEDevang Patel2008-01-171-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46112 91177308-0d34-0410-b5e6-96231b3b80d8
* When a live virtual register is being clobbered by an implicit def, it is ↵Evan Cheng2008-01-172-2/+55
| | | | | | | | | | | | spilled and the spill is its kill. However, if the local allocator has determined the register has not been modified (possible when its value was reloaded), it would not issue a restore. In that case, mark the last use of the virtual register as kill. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46111 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix arg promotion to propagate the correct attrs on the calls toChris Lattner2008-01-172-14/+50
| | | | | | | | promoted functions. This is important for varargs calls in particular. Thanks to duncan for providing a great testcase. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46108 91177308-0d34-0410-b5e6-96231b3b80d8
* Replace std::vector<bool> with BitVector.Evan Cheng2008-01-171-4/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46104 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixes a nasty dag combiner bug that causes a bunch of tests to fail at -O0.Evan Cheng2008-01-162-6/+74
| | | | | | | | | | | | | | | | | | | | | It's not safe to use the two value CombineTo variant to combine away a dead load. e.g. v1, chain2 = load chain1, loc v2, chain3 = load chain2, loc v3 = add v2, c Now we replace use of v1 with undef, use of chain2 with chain1. ReplaceAllUsesWith() will iterate through uses of the first load and update operands: v1, chain2 = load chain1, loc v2, chain3 = load chain1, loc v3 = add v2, c Now the second load is the same as the first load, SelectionDAG cse will ensure the use of second load is replaced with the first load. v1, chain2 = load chain1, loc v3 = add v1, c Then v1 is replaced with undef and bad things happen. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46099 91177308-0d34-0410-b5e6-96231b3b80d8
* Trampoline support for x86-64. This looks likeDuncan Sands2008-01-162-7/+70
| | | | | | | | | | it should work, but I have no machine to test it on. Committed because it will at least cause no harm, and maybe someone can test it for me! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46098 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle attribute(used) global variables that are i8.Chris Lattner2008-01-161-14/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46090 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not mark EH tables no-dead-strip unless theDale Johannesen2008-01-163-13/+50
| | | | | | | | associated function is so marked. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46088 91177308-0d34-0410-b5e6-96231b3b80d8
* add testcase for regressionChris Lattner2008-01-161-0/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46073 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a ppc long double regression I introduced yesterday due to aChris Lattner2008-01-161-0/+1
| | | | | | | simplification. This fixes automotive-basicmath on PPC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46072 91177308-0d34-0410-b5e6-96231b3b80d8
* merge a few pieces of code that do the store/load to stack Chris Lattner2008-01-161-30/+12
| | | | | | | pattern to use EmitStackConvert now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46066 91177308-0d34-0410-b5e6-96231b3b80d8
* rename ExpandBIT_CONVERT to EmitStackConvert, generalizing Chris Lattner2008-01-161-15/+37
| | | | | | | it to allow it to emit different load and store kinds. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46065 91177308-0d34-0410-b5e6-96231b3b80d8
* simplify a bunch of code by using SelectionDAG::CreateStackTemporary Chris Lattner2008-01-161-28/+6
| | | | | | | instead of inlining its body. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46062 91177308-0d34-0410-b5e6-96231b3b80d8
* Change legalizeop of FP_ROUND and FP_EXTEND to not fall throughChris Lattner2008-01-161-32/+55
| | | | | | | | | | into the ANY_EXTEND/ZERO_EXTEND/SIGN_EXTEND code to simplify it. Unmerge the code for FP_ROUND and FP_EXTEND from each other to make each one simpler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46061 91177308-0d34-0410-b5e6-96231b3b80d8
* make sure to use a cpu that has sse.Chris Lattner2008-01-161-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46060 91177308-0d34-0410-b5e6-96231b3b80d8
* make it more clear that this predicate only applies to scalar FP types.Chris Lattner2008-01-162-10/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46058 91177308-0d34-0410-b5e6-96231b3b80d8
* introduce a isTypeInSSEReg predicate, which allows us to simplifyChris Lattner2008-01-162-21/+18
| | | | | | | some code. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46055 91177308-0d34-0410-b5e6-96231b3b80d8
* My previous commit had an incomplete message, it should have been:Chris Lattner2008-01-162-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | make the 'fp return in ST(0)' optimization smart enough to look through token factor nodes. THis allows us to compile testcases like CodeGen/X86/fp-stack-retcopy.ll into: _carg: subl $12, %esp call L_foo$stub fstpl (%esp) fldl (%esp) addl $12, %esp ret instead of: _carg: subl $28, %esp call L_foo$stub fstpl 16(%esp) movsd 16(%esp), %xmm0 movsd %xmm0, 8(%esp) fldl 8(%esp) addl $28, %esp ret Still not optimal, but much better and this is a trivial patch. Fixing the rest requires invasive surgery that is is not llvm 2.2 material. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46054 91177308-0d34-0410-b5e6-96231b3b80d8
* make the 'fp return in ST(0)' optimization smart enough to Chris Lattner2008-01-161-1/+1
| | | | | | | look through token factor git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46053 91177308-0d34-0410-b5e6-96231b3b80d8
* various whitespace cleanups, no functionality change.Chris Lattner2008-01-161-7/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46052 91177308-0d34-0410-b5e6-96231b3b80d8
* Factor the ReachesChainWithoutSideEffects out of dag combiner into Chris Lattner2008-01-163-28/+40
| | | | | | | | a public SDOperand::reachesChainWithoutSideEffects method. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46050 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not strip llvm.used values.Devang Patel2008-01-163-3/+43
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46045 91177308-0d34-0410-b5e6-96231b3b80d8
* Changed ImmutableMap::find to return an iterator instead of a pointerTed Kremenek2008-01-151-10/+11
| | | | | | | to the tree node. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46034 91177308-0d34-0410-b5e6-96231b3b80d8
* - Introduces versioning macro LLVM_LTO_VERSIONDevang Patel2008-01-152-18/+75
| | | | | | | | - Communicate symbol visibility - Communicate code generation model git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46033 91177308-0d34-0410-b5e6-96231b3b80d8
* Commit a piece that I missed before, patch by Alain FrischChris Lattner2008-01-151-13/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46032 91177308-0d34-0410-b5e6-96231b3b80d8
* Missed file from previous checkin.Dale Johannesen2008-01-151-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46030 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix and enable EH for x86-64 Darwin. AddsDale Johannesen2008-01-155-13/+33
| | | | | | | | | | | ShortenEHDataFor64Bits as a not-very-accurate abstraction to cover all the changes in DwarfWriter. Some cosmetic changes to Darwin assembly code for gcc testsuite compatibility. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46029 91177308-0d34-0410-b5e6-96231b3b80d8
* Move some calls to getVRegDef higher in the callgraph, so they don't get ↵Owen Anderson2008-01-152-13/+15
| | | | | | executed as frequently in performance sensitive code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46027 91177308-0d34-0410-b5e6-96231b3b80d8
* improve compatibility with mingw, patch by Alain FrischChris Lattner2008-01-152-1/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46026 91177308-0d34-0410-b5e6-96231b3b80d8
* add a test to ensure that argpromote of one argument doesn't Chris Lattner2008-01-151-0/+26
| | | | | | | break the byval attr on some other argument. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46025 91177308-0d34-0410-b5e6-96231b3b80d8
* Add description of 'llvm.trap' intrinsic. Also, minor fixes in formatting. Anton Korobeynikov2008-01-151-5/+39
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46024 91177308-0d34-0410-b5e6-96231b3b80d8