aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Fixing unittests on 32-bit Darwin, using 0x...ULL instead of 0x...U .Reid Kleckner2009-07-231-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76904 91177308-0d34-0410-b5e6-96231b3b80d8
* Re-committing r76828 with the JIT memory manager changes now that the buildReid Kleckner2009-07-238-125/+661
| | | | | | | bots like the BumpPtrAllocator changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76902 91177308-0d34-0410-b5e6-96231b3b80d8
* "fix" PR4612, which is a crash on:Chris Lattner2009-07-231-1/+5
| | | | | | | | | | | | %0 = malloc [3758096384 x i32] The "malloc" instruction doesn't support 64-bits correctly (see PR715), and should be removed. Victor is actively working on fixing this, in the meantime just don't crash. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76899 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR4614: the Intel C compiler defines _GNUC__Duncan Sands2009-07-231-2/+2
| | | | | | | but does not provide __builtin_bswap32/64. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76896 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert r75581: it causes massive breakage in the AdaDuncan Sands2009-07-231-0/+23
| | | | | | | | | | | | | | | | | testsuite, due to exception handling not working correctly. Maybe because the libgcc unwinder is miscompiled - not sure, and I won't have time to look into it before leaving on holiday. Note that miscompilations of libgcc are not picked up by the nightly testers, because they dynamically link with libgcc, so pick up the system version rather than the version built as part of llvm-gcc. This is a nasty flaw in the nightly testers. (On the other hand the Ada testsuite links with the just built libgcc). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76895 91177308-0d34-0410-b5e6-96231b3b80d8
* Switch ValueSymbolTable to StringRef based API.Daniel Dunbar2009-07-234-33/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76894 91177308-0d34-0410-b5e6-96231b3b80d8
* Add llvm::Value::getNameRef, for help in API migration.Daniel Dunbar2009-07-232-2/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76893 91177308-0d34-0410-b5e6-96231b3b80d8
* Re-committing changes from r76825 to BumpPtrAllocator with a fix and tests forReid Kleckner2009-07-233-110/+320
| | | | | | | an off-by-one error. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76891 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix up ARM constant island pass for Thumb2.Evan Cheng2009-07-232-125/+151
| | | | | | | Also fixed up code to fully use the SoImm field for ADR on ARM mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76890 91177308-0d34-0410-b5e6-96231b3b80d8
* Since we have moved unified assembly, switch to ADR instruction instead of a ↵Evan Cheng2009-07-232-28/+8
| | | | | | | | | the difficult-to-read .set + add syntax to materialize pc-relative address. Turns out this also fixed a poor code selection on Thumb1. I have no idea why we were using a mov + add to do the same thing as ADR before. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76889 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert StringMap to using StringRef for its APIs.Daniel Dunbar2009-07-2312-128/+91
| | | | | | | | | | | | | - Yay for '-'s and simplifications! - I kept StringMap::GetOrCreateValue for compatibility purposes, this can eventually go away. Likewise the StringMapEntry Create functions still follow the old style. - NIFC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76888 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix frame index elimination to correctly handle thumb-2 addressing modes ↵David Goodwin2009-07-2310-18/+124
| | | | | | that don't allow negative offsets. During frame elimination convert *i12 opcode to a *i8 when necessary due to a negative offset. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76883 91177308-0d34-0410-b5e6-96231b3b80d8
* FileCheck'ize and expand LDA testcases.Andreas Bolka2009-07-2310-137/+292
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76880 91177308-0d34-0410-b5e6-96231b3b80d8
* emit simple node was using different labels for fields than the rest of the ↵Andrew Lenharth2009-07-231-1/+1
| | | | | | graph writter git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76879 91177308-0d34-0410-b5e6-96231b3b80d8
* Cache dependence computation using FoldingSet.Andreas Bolka2009-07-232-27/+105
| | | | | | | | | This introduces an LDA-internal DependencePair class. The intention is, that this is a place where dependence testers can store various results such as SCEVs describing conflicting iterations, breaking conditions, distance/direction vectors, etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76877 91177308-0d34-0410-b5e6-96231b3b80d8
* 80 col violation.Evan Cheng2009-07-231-2/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76872 91177308-0d34-0410-b5e6-96231b3b80d8
* enhance DepthFirstIterator to support more robust operations in the faceChris Lattner2009-07-231-23/+49
| | | | | | | | of code mutating the graph while it is being traversed. Patch by Olaf Krzikalla! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76869 91177308-0d34-0410-b5e6-96231b3b80d8
* testcase for PR4590Chris Lattner2009-07-231-0/+34
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76868 91177308-0d34-0410-b5e6-96231b3b80d8
* refactor a blob of code out to a new 'FoldOrOfFCmps' function andChris Lattner2009-07-231-67/+70
| | | | | | | simplify it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76866 91177308-0d34-0410-b5e6-96231b3b80d8
* For real this time: PHI Def & Kill tracking added to PHIElimination.Lang Hames2009-07-231-3/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76865 91177308-0d34-0410-b5e6-96231b3b80d8
* merge vector-casts-0.ll into vector-casts.llChris Lattner2009-07-232-55/+56
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76864 91177308-0d34-0410-b5e6-96231b3b80d8
* Make some existing optimizations that would only trigger on scalarsChris Lattner2009-07-232-4/+51
| | | | | | | | | | | | | | | | | | | | | | | also apply to vectors. This allows us to compile this: #include <emmintrin.h> __m128i a(__m128 a, __m128 b) { return a==a & b==b; } __m128i b(__m128 a, __m128 b) { return a!=a | b!=b; } to: _a: cmpordps %xmm1, %xmm0 ret _b: cmpunordps %xmm1, %xmm0 ret with clang instead of to a ton of horrible code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76863 91177308-0d34-0410-b5e6-96231b3b80d8
* convert a test to filecheck format. This fixes an endemic problemChris Lattner2009-07-231-5/+12
| | | | | | | | with negative tests: this test wasn't checking what it thought it was because it was grepping .bc, not .ll. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76861 91177308-0d34-0410-b5e6-96231b3b80d8
* rename testChris Lattner2009-07-231-0/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76860 91177308-0d34-0410-b5e6-96231b3b80d8
* refactor a bunch of code out into a helper function,Chris Lattner2009-07-231-63/+73
| | | | | | | | no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76859 91177308-0d34-0410-b5e6-96231b3b80d8
* remove a really old and dead headerChris Lattner2009-07-231-62/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76855 91177308-0d34-0410-b5e6-96231b3b80d8
* merge one more sse41 test into sse41.llChris Lattner2009-07-232-19/+44
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76853 91177308-0d34-0410-b5e6-96231b3b80d8
* merge another sse41 test into sse41.llChris Lattner2009-07-232-12/+23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76852 91177308-0d34-0410-b5e6-96231b3b80d8
* merge sse41-pmovx.ll into sse41.llChris Lattner2009-07-232-54/+69
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76850 91177308-0d34-0410-b5e6-96231b3b80d8
* Added PHI Def & Kill tracking to PHIElimination pass.Lang Hames2009-07-232-4/+56
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76849 91177308-0d34-0410-b5e6-96231b3b80d8
* change a test to run in filecheck style. Rename it to be a generalChris Lattner2009-07-232-12/+23
| | | | | | | | | | | dumping ground of various SSE4.1 tests, since filecheck can reasonably handle them all in one file. Generalize it to check x86-64 stuff as well since it has a different ABI (a convenient way to test both the reg and mem forms of these instructions). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76848 91177308-0d34-0410-b5e6-96231b3b80d8
* Support insertps via the intrinsic and add a couple of simpleEric Christopher2009-07-232-2/+27
| | | | | | | testcases to make sure it's being generated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76843 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not call getMangledName on Intrinsics.Sanjiv Gupta2009-07-231-4/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76842 91177308-0d34-0410-b5e6-96231b3b80d8
* MDStringDevang Patel2009-07-2310-28/+30
| | | | | | | | | - Rename member function size(). New name is length(). - Store string beginning and length. Earlier it used to store string end. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76841 91177308-0d34-0410-b5e6-96231b3b80d8
* Add test for pinsrd and pinsrb instructions.Eric Christopher2009-07-231-0/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76840 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor cosmetics: indentation, formatting, naming.Andreas Bolka2009-07-232-41/+41
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76839 91177308-0d34-0410-b5e6-96231b3b80d8
* Reverting r76825 and r76828, since they caused clang runtime errors and some ↵Reid Kleckner2009-07-2311-946/+234
| | | | | | build failure involving memset. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76838 91177308-0d34-0410-b5e6-96231b3b80d8
* add header for 'memset'.Zhongxing Xu2009-07-231-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76837 91177308-0d34-0410-b5e6-96231b3b80d8
* Silence "uninitialized use" warning.Devang Patel2009-07-231-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76836 91177308-0d34-0410-b5e6-96231b3b80d8
* Hide constructors.Devang Patel2009-07-231-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76835 91177308-0d34-0410-b5e6-96231b3b80d8
* Derive MDNode from MetadataBase instead of Constant. Emit MDNodes into ↵Devang Patel2009-07-2317-153/+108
| | | | | | METADATA_BLOCK in bitcode file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76834 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix error message for correct opcode.Eric Christopher2009-07-231-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76829 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the JIT code emitter properly retry and ask for more memory when it runsReid Kleckner2009-07-238-125/+661
| | | | | | | | | | | | | | out of memory, and also make the default memory manager allocate more memory when it runs out. Also, switch function stubs and global data over to using the BumpPtrAllocator. This makes it so the JIT no longer mmaps (or the equivalent on Windows) 16 MB of memory, and instead allocates in 512K slabs. I suspect this size could go lower, especially on embedded platforms, now that more slabs can be allocated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76828 91177308-0d34-0410-b5e6-96231b3b80d8
* Parameterize the BumpPtrAllocator over a slab allocator. It defaults to usingReid Kleckner2009-07-233-109/+284
| | | | | | | | | | | | malloc, so there should be no functional changes to other code. These changes are necessary since I have plans to use this allocator in the JIT memory manager, and it needs a special allocator. I also added some tests which helped me pinpoint some bugs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76825 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert r75663 (and r76805), as it is causing regressions on powerpc.Dan Gohman2009-07-231-20/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76823 91177308-0d34-0410-b5e6-96231b3b80d8
* remove SectionFlags::Small: it is only used on Xcore, and we'll findChris Lattner2009-07-226-30/+7
| | | | | | | a better solution for it in the future. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76818 91177308-0d34-0410-b5e6-96231b3b80d8
* x86 isel tweak: use lea (%reg,%reg) instead of lea (,%reg,2).Dan Gohman2009-07-222-10/+39
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76817 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new keywords to the vim syntax highlighting.Dan Gohman2009-07-221-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76812 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new optimization keywords to the polygen grammar.Dan Gohman2009-07-221-2/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76811 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename the new unsigned and signed keywords to nuw and nsw,Dan Gohman2009-07-229-100/+103
| | | | | | | which stand for no-unsigned-wrap and no-signed-wrap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76810 91177308-0d34-0410-b5e6-96231b3b80d8