summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* run HandleMergeInputChains even if we only have one input chain.Chris Lattner2010-03-021-29/+3
| | | | llvm-svn: 97581
* When expanding an expression such as (A + B + C + D), sort the operandsDan Gohman2010-03-022-34/+124
| | | | | | | by loop depth and emit loop-invariant subexpressions outside of loops. This speeds up MultiSource/Applications/viterbi and others. llvm-svn: 97580
* Bump the default maximum template-instantiation depth to 500, as inDouglas Gregor2010-03-021-1/+1
| | | | | | GCC. Fixes PR6301. llvm-svn: 97579
* Swap parameters of isSafeToMove and isSafeToReMat for consistency.Evan Cheng2010-03-026-14/+14
| | | | llvm-svn: 97578
* Fix typo.Evan Cheng2010-03-021-1/+1
| | | | llvm-svn: 97577
* clean up some testcases.Chris Lattner2010-03-022-15/+1
| | | | llvm-svn: 97576
* Add test case from PR6064, which now worksDouglas Gregor2010-03-021-0/+13
| | | | llvm-svn: 97575
* the sorting predicate should work for comparing an elementChris Lattner2010-03-021-1/+1
| | | | | | to itself, even though this isn't wildly useful. llvm-svn: 97574
* Added 32-bit Thumb instructions: CPS, SDIV, UDIV, SXTB16, SXTAB16, UXTAB16, SEL,Johnny Chen2010-03-022-7/+164
| | | | | | | SMMULR, SMMLAR, SMMLSR, TBB, TBH, and 16-bit Thumb instruction CPS for disassembly only. llvm-svn: 97573
* Fix grammar.Devang Patel2010-03-021-1/+1
| | | | | | Thanks Duncan! llvm-svn: 97572
* AL is an optional mnemonic extension for always, except in IT instructions.Johnny Chen2010-03-024-1/+15
| | | | | | | Add printMandatoryPredicateOperand() PrintMethod for IT predicate printing. Ref: A8.3 Conditional execution llvm-svn: 97571
* Diagnose the declaration of enum templates. Also, be a bit moreDouglas Gregor2010-03-025-7/+24
| | | | | | careful about value-dependent enumerators. Fixes PR5786. llvm-svn: 97570
* Move Emit24 to clang::ioKovarththanan Rajaratnam2010-03-022-6/+8
| | | | llvm-svn: 97569
* Use CXXTemporaryObjectExpr for explicitly-constructed temporaries. WeDouglas Gregor2010-03-023-5/+39
| | | | | | | used to do this, but it got lost when we switched functional-style cast syntax over to using the new initialization code. Fixes PR6457. llvm-svn: 97568
* Change some asm shift opcode strings to lowercase.Johnny Chen2010-03-021-6/+6
| | | | llvm-svn: 97567
* Pass -m32 and -m64 to the static analyzer when using scan-build. Now we canCharles Davis2010-03-021-0/+2
| | | | | | | | use scan-build with Wine, for example. Ted, I hope this is OK. llvm-svn: 97566
* fix typo add missing (Xerxes Ranby2010-03-021-2/+2
| | | | llvm-svn: 97565
* Unbreak llvm-arm-linux buildbot and fix PR5309.Xerxes Ranby2010-03-021-2/+2
| | | | llvm-svn: 97564
* Rather than passing "false" for InsertBefore, AddressSpace for ThreadLocal,Duncan Sands2010-03-021-2/+2
| | | | | | | and nothing for AddressSpace, pass 0 for InsertBefore, "false" for ThreadLocal and AddressSpace for AddressSpace. Spotted by gcc-4.5. llvm-svn: 97563
* Register all parameters even if they didn't occur in the function body.Zhongxing Xu2010-03-022-0/+18
| | | | | | | We may query their liveness because they are added to store when passing argument values. llvm-svn: 97562
* Fix the xfail I added a couple of patches back. The issueChris Lattner2010-03-023-13/+46
| | | | | | | | | was that we weren't properly handling the case when interior nodes of a matched pattern become dead after updating chain and flag uses. Now we handle this explicitly in UpdateChainsAndFlags. llvm-svn: 97561
* Unify initializer-instantiation code for variable declarations andDouglas Gregor2010-03-021-85/+93
| | | | | | base/member initializers. llvm-svn: 97560
* I was confused about this, it turns out that MorphNodeToChris Lattner2010-03-021-3/+2
| | | | | | *does* delete ex-operands that become dead. llvm-svn: 97559
* factor node morphing out to its own helper method.Chris Lattner2010-03-022-54/+64
| | | | llvm-svn: 97558
* attributes are not part of types anymore, patch by James Woodyatt!Chris Lattner2010-03-021-12/+12
| | | | llvm-svn: 97557
* eliminate CodeGen/DAGISelHeader.h, it is empty now.Chris Lattner2010-03-022-30/+0
| | | | llvm-svn: 97556
* Sink InstructionSelect() out of each target into SDISel, and rename itChris Lattner2010-03-0217-430/+114
| | | | | | | | | | | | DoInstructionSelection. Inline "SelectRoot" into it from DAGISelHeader. Sink some other stuff out of DAGISelHeader into SDISel. Eliminate the various 'Indent' stuff from various targets, which dates to when isel was recursive. 17 files changed, 114 insertions(+), 430 deletions(-) llvm-svn: 97555
* Only save vector registers if we've defined for the vector registers.Eric Christopher2010-03-021-2/+2
| | | | | | Fixes PR5309. llvm-svn: 97554
* move some code out of DAGISelHeader up to SelectionDAGISel.h where itChris Lattner2010-03-021-0/+49
| | | | | | is shared by all targets. llvm-svn: 97553
* Simplify code.Anders Carlsson2010-03-021-8/+7
| | | | llvm-svn: 97551
* Fix looking up MD names to not need a module.Erick Tryzelaar2010-03-021-10/+12
| | | | llvm-svn: 97550
* Move the docsdir to /usr/share/doc/llvm to match other projects.Eric Christopher2010-03-022-5/+5
| | | | | | Fixes PR6267. llvm-svn: 97549
* Make sure we save CXXFLAGS before setting it as pedantic and regenerateEric Christopher2010-03-022-0/+4
| | | | | | | | | | configure. Fixes PR6388. Patch by Yann Droneaud! llvm-svn: 97548
* Inspired by seeing "MIPS" go by in the commits, I've gone ahead andJohn McCall2010-03-023-11/+35
| | | | | | | | | | | implemented a (codegen) target hook for __builtin_extend_pointer. I'm also making it return a uint64_t instead of an unsigned word; this comports with typical usage (i.e. the one use I know of). I don't know if any of the existing targets requires this hook to be set (other than x86 and x86_64, which I know do not). llvm-svn: 97547
* Rename BaseOffset to Offset and make it signed in preparation of more ↵Anders Carlsson2010-03-021-10/+11
| | | | | | construction vtable work. llvm-svn: 97546
* Add file to CMakeLists.txtEric Christopher2010-03-021-0/+1
| | | | llvm-svn: 97545
* Add in some more MIPS command line options.Eric Christopher2010-03-023-1/+101
| | | | | | Patch by Oleksandr Tymoshenko! llvm-svn: 97544
* Add skeleton of a machine level cse pass.Evan Cheng2010-03-022-0/+128
| | | | llvm-svn: 97543
* Add count() and lookup() to ScopedHashTable. It might be useful to get ↵Evan Cheng2010-03-021-0/+8
| | | | | | information out of the hash table. llvm-svn: 97542
* Use the right induction variable.Chris Lattner2010-03-021-2/+2
| | | | llvm-svn: 97541
* After much consultation aimed at figuring out what this builtin actuallyJohn McCall2010-03-022-1/+17
| | | | | | | does, document the results and then implement __builtin_extend_pointer for platforms where it's a no-op. llvm-svn: 97540
* Rewrite chain handling validation and input TokenFactor handlingChris Lattner2010-03-028-114/+160
| | | | | | | | | | | | | | | | | | | | | | | | | | | stuff now that we don't care about emulating the old broken behavior of the old isel. This eliminates the 'CheckChainCompatible' check (along with IsChainCompatible) which did an incorrect and inefficient scan *up* the chain nodes which happened as the pattern was being formed and does the validation at the end in HandleMergeInputChains when it forms a structural pattern. This scans "down" the graph, which means that it is quickly bounded by nodes already selected. This also handles token factors that get "trapped" in the dag. Removing the CheckChainCompatible nodes also shrinks the generated tables by about 6K for X86 (down to 83K). There are two pieces remaining before I can nuke PreprocessRMW: 1. I xfailed a test because we're now producing worse code in a case that has nothing to do with the change: it turns out that our use of MorphNodeTo will leave dead nodes in the graph which (depending on how the graph is walked) end up causing bogus uses of chains and blocking matches. This is really bad for other reasons, so I'll fix this in a follow-up patch. 2. CheckFoldableChainNode needs to be improved to handle the TF. llvm-svn: 97539
* Fix several places to handle vector operands properly.Dan Gohman2010-03-024-11/+19
| | | | | | Based on a patch by Micah Villmow for PR6438. llvm-svn: 97538
* Non-affine post-inc SCEV expansions have more code which must beDan Gohman2010-03-023-3/+51
| | | | | | | emitted after the increment. Make sure the insert position reflects this. This fixes PR6453. llvm-svn: 97537
* Remove dead parameter passing.Bill Wendling2010-03-0211-70/+59
| | | | llvm-svn: 97536
* Add test case from PR5812, which works now.Douglas Gregor2010-03-021-0/+12
| | | | llvm-svn: 97535
* Fix an amusing typo that completely the re-introduction of parametersDouglas Gregor2010-03-022-1/+16
| | | | | | | | | | | for the purposes of parsing default arguments. In effect, we would re-introduce the parameter with a default argument N times (where N is the number of parameters preceding the parameter with a default argument). This showed up when a defaulted parameter of a member function of a local class shadowed a parameter of the enclosing function. Fixes PR6383. llvm-svn: 97534
* Constructors and operators for anonymous aggregates does not names. Do not ↵Devang Patel2010-03-021-1/+3
| | | | | | force empty AT_name attribute in such cases. llvm-svn: 97533
* Cast a pointer to 'long long' to satisfy all compilation models.Fariborz Jahanian2010-03-021-1/+3
| | | | | | Satisfies radar 7703202. llvm-svn: 97532
* Floating-point add, sub, and mul are now spelled fadd, fsub, and fmul,Dan Gohman2010-03-0217-100/+100
| | | | | | respectively. llvm-svn: 97531
OpenPOWER on IntegriCloud