aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Guard the layout info object.Owen Anderson2009-06-231-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73928 91177308-0d34-0410-b5e6-96231b3b80d8
* Guard the plugin loader.Owen Anderson2009-06-231-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73925 91177308-0d34-0410-b5e6-96231b3b80d8
* Add guards around timer groups, which can be shared.Owen Anderson2009-06-222-10/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73923 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a bug in the trip-count computation with And/Or. If either of theDan Gohman2009-06-222-8/+154
| | | | | | | sides is CouldNotCompute, the resulting exact count must be CouldNotCompute. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73920 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for ARM's Advanced SIMD (NEON) instruction set.Bob Wilson2009-06-22102-125/+10300
| | | | | | | | This is still a work in progress but most of the NEON instruction set is supported. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73919 91177308-0d34-0410-b5e6-96231b3b80d8
* Guard the statistics table.Owen Anderson2009-06-221-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73916 91177308-0d34-0410-b5e6-96231b3b80d8
* Guard the global annotation tables.Owen Anderson2009-06-221-13/+25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73913 91177308-0d34-0410-b5e6-96231b3b80d8
* Add locking around the external function lookup table for the interpreter.Owen Anderson2009-06-221-1/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73912 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unneeded #include.Owen Anderson2009-06-221-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73911 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a few minor issues that were exposed by the removal of SCEVHandle.Dan Gohman2009-06-222-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73910 91177308-0d34-0410-b5e6-96231b3b80d8
* Add explicit types for shift count constants. This is in preparation forBob Wilson2009-06-222-45/+52
| | | | | | | | another change that makes the types ambiguous (at least as far as tablegen is concerned). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73909 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix llvm::ComputeNumSignBits to handle pointer typesDan Gohman2009-06-222-1/+225
| | | | | | | conservatively correctly, instead of aborting. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73908 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove the parent pointer from SCEV, since it did not end up being needed.Owen Anderson2009-06-223-74/+49
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73907 91177308-0d34-0410-b5e6-96231b3b80d8
* SCEVHandle is no more!Owen Anderson2009-06-2212-641/+568
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73906 91177308-0d34-0410-b5e6-96231b3b80d8
* Use thumb2 for ARM architectures V6T2 and later. Fix a bug in checkingBob Wilson2009-06-221-4/+8
| | | | | | | for "thumb" and add a check for V6T2. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73905 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix some typos that Duncan noticed.Dan Gohman2009-06-221-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73903 91177308-0d34-0410-b5e6-96231b3b80d8
* It's coalescer, not coaleser.Evan Cheng2009-06-221-0/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73902 91177308-0d34-0410-b5e6-96231b3b80d8
* For Darwin on ARMv6 and newer, make register r9 available for use as aBob Wilson2009-06-225-20/+91
| | | | | | | caller-saved register. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73901 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix memcpy expansion so it won't generate invalidDale Johannesen2009-06-221-6/+25
| | | | | | | | | types for the target (I think). This was breaking the PPC32 calling sequence. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73900 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix another register coalescer crash: forgot to check if the instruction ↵Evan Cheng2009-06-222-3/+50
| | | | | | being updated has already been coalesced. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73898 91177308-0d34-0410-b5e6-96231b3b80d8
* Use different functions to emit the string and symbol tables.Bruno Cardoso Lopes2009-06-222-7/+17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73895 91177308-0d34-0410-b5e6-96231b3b80d8
* Add more methods to gather target specific elf stuffBruno Cardoso Lopes2009-06-228-155/+418
| | | | | | | | | | Support for .text relocations, implementing TargetELFWriter overloaded methods for x86/x86_64. Use a map to track global values to their symbol table indexes Code cleanup and small fixes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73894 91177308-0d34-0410-b5e6-96231b3b80d8
* hasFP should return true if frame address is taken.Evan Cheng2009-06-222-1/+15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73893 91177308-0d34-0410-b5e6-96231b3b80d8
* Banish global state from ScalarEvolution! SCEV uniquing is now done by ↵Owen Anderson2009-06-223-89/+79
| | | | | | | | | | | | tables attached to the ScalarEvolution pass. This also throws out the SCEV reference counting scheme, as the the SCEVs now have a lifetime controlled by the ScalarEvolution pass. Note that SCEVHandle is now a no-op, and will be remove in a future commit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73892 91177308-0d34-0410-b5e6-96231b3b80d8
* Recognize and handle ARM v7 target triples for Darwin.Bob Wilson2009-06-221-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73889 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix llvm-gcc build for armv6t2 and later architectures. The hasV6T2OpsBob Wilson2009-06-221-9/+10
| | | | | | | | predicate does not check if Thumb mode is enabled, and when in ARM mode there are still some checks for constant-pool use that need to run. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73887 91177308-0d34-0410-b5e6-96231b3b80d8
* Make use of getUMinFromMismatchedTypes when computing backedge-takenDan Gohman2009-06-221-14/+14
| | | | | | | | | | | | | counts for loops with multiple exits, replacing more conservative code which only handled constants. This is derived from a patch by Nick Lewycky. This also fixes llc aborts in ClamAV and others, as getUMinFromMismatchedTypes takes care of balancing the types before working with them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73884 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a getUMinFromMismatchedTypes helper function.Dan Gohman2009-06-222-0/+22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73883 91177308-0d34-0410-b5e6-96231b3b80d8
* Include cstdio to get EOF, needed with gcc-4.4.Duncan Sands2009-06-221-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73879 91177308-0d34-0410-b5e6-96231b3b80d8
* process memory operands with a parenthesized expression for a displacement,Chris Lattner2009-06-221-2/+12
| | | | | | | | like "(4+5)(%eax)". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73878 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement full support for parsing primary expressions. We can now parseChris Lattner2009-06-225-5/+42
| | | | | | | | | | | | | all of health and voronoi (ignoring directives). We only get 409 lines into 176.gcc though because we don't have binary operators yet: Parsing 176.gcc.llc.s:409: unexpected token in operand list movsbl _arityvec+1(,%edi,8), %eax ^ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73877 91177308-0d34-0410-b5e6-96231b3b80d8
* implement parser support for '*' operands, as in "call *%eax".Chris Lattner2009-06-221-6/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73876 91177308-0d34-0410-b5e6-96231b3b80d8
* implement memory operand parsing.Chris Lattner2009-06-222-14/+132
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73875 91177308-0d34-0410-b5e6-96231b3b80d8
* Testcase for (llvm-gcc) 73873. Usually Dale Johannesen2009-06-221-0/+32
| | | | | | | | | | std::pair<double, float*> is 16 bytes on darwin-powerpc, but not always. See testcase for full weirdness. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73874 91177308-0d34-0410-b5e6-96231b3b80d8
* Factor out code for computing umin and smin for SCEV expressions intoDan Gohman2009-06-222-7/+16
| | | | | | | helper functions. Based on a patch by Nick Lewycky. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73869 91177308-0d34-0410-b5e6-96231b3b80d8
* start implementing some simple operand parsing.Chris Lattner2009-06-222-15/+121
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73867 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach ScalarEvolution how to analyze loops with multiple exitDan Gohman2009-06-223-27/+300
| | | | | | | | | | blocks, and also exit blocks with multiple conditions (combined with (bitwise) ands and ors). It's often infeasible to compute an exact trip count in such cases, but a useful upper bound can often be found. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73866 91177308-0d34-0410-b5e6-96231b3b80d8
* Delete an unused variable.Dan Gohman2009-06-221-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73865 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix this code to correctly handle loops with multiple exits. UntilDan Gohman2009-06-221-4/+4
| | | | | | | | | now, this hasn't mattered, because ScalarEvolution hasn't been able to compute trip counts for loops with multiple exits. But it will soon. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73864 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename a variable for consistency with the ExitBlock vs ExitingBlockDan Gohman2009-06-211-6/+6
| | | | | | | terminology that LoopInfo uses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73863 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix ScalarEvolution's backedge-taken count computations to check forDan Gohman2009-06-215-11/+51
| | | | | | | | | overflow when computing a integer division to round up. Thanks to Nick Lewycky for noticing this! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73862 91177308-0d34-0410-b5e6-96231b3b80d8
* rename SourceMgr::PrintError to PrintMessage.Chris Lattner2009-06-219-28/+32
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73861 91177308-0d34-0410-b5e6-96231b3b80d8
* set up the top-level parsing loop.Chris Lattner2009-06-213-0/+59
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73860 91177308-0d34-0410-b5e6-96231b3b80d8
* stub out parser for asm files. Change invariant on lexer to alwaysChris Lattner2009-06-215-14/+102
| | | | | | | | | print its error message when it returns an asmtok::Error token. Compute a proper error code for llvm-mc in 'lex' mode. Add new -as-lex option to enable lexing mode (vs parsing mode). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73859 91177308-0d34-0410-b5e6-96231b3b80d8
* add string literals.Chris Lattner2009-06-213-2/+35
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73858 91177308-0d34-0410-b5e6-96231b3b80d8
* hopefully fix the build on linux.Chris Lattner2009-06-211-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73857 91177308-0d34-0410-b5e6-96231b3b80d8
* simplify some error recovery stuff.Chris Lattner2009-06-211-5/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73856 91177308-0d34-0410-b5e6-96231b3b80d8
* implement enough of a lexer to get through Olden/health/Output/health.llc.sChris Lattner2009-06-213-10/+184
| | | | | | | | without errors. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73855 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR4185.Rafael Espindola2009-06-212-2/+17
| | | | | | | | Handle FpSET_ST0_80 being used when ST0 is still alive. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73850 91177308-0d34-0410-b5e6-96231b3b80d8
* oh yeah, cmake needs to be told explicitly about new files :)Chris Lattner2009-06-211-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73849 91177308-0d34-0410-b5e6-96231b3b80d8