| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Instead of aborting if not a case we can handle specially, break out and | Chris Lattner | 2005-10-21 | 2 | -55/+52 |
| | | | | | | | | | let the generic code handle it. This fixes CodeGen/Generic/2005-10-21-longlonggtu.ll on ppc. also, reindent this code llvm-svn: 23874 | ||||
| * | New testcase that crashes the ppc backend | Chris Lattner | 2005-10-21 | 1 | -0/+12 |
| | | | | | llvm-svn: 23871 | ||||
| * | Plugin new subtarget backend into the build. | Jim Laskey | 2005-10-21 | 7 | -80/+53 |
| | | | | | llvm-svn: 23870 | ||||
| * | New TableGen backends for subtarget information. Only command line stuff | Jim Laskey | 2005-10-21 | 2 | -0/+148 |
| | | | | | | | active now. Scheduling itinerary next. llvm-svn: 23869 | ||||
| * | silence a release mode warning | Chris Lattner | 2005-10-21 | 1 | -1/+1 |
| | | | | | llvm-svn: 23868 | ||||
| * | add missing prototype | Chris Lattner | 2005-10-21 | 1 | -0/+4 |
| | | | | | llvm-svn: 23867 | ||||
| * | Make the coallescer a bit smarter, allowing it to join more live ranges. | Chris Lattner | 2005-10-21 | 1 | -30/+85 |
| | | | | | | | | | | | | | For example, we can now join things like [0-30:0)[31-40:1)[52-59:2) with [40:60:0) if the 52-59 range is defined by a copy from the 40-60 range. The resultant range ends up being [0-30:0)[31-60:1). This fires a lot through-out the test suite (e.g. shrinking bc from 19492 -> 18509 machineinstrs) though most gains are smaller (e.g. about 50 copies eliminated from crafty). llvm-svn: 23866 | ||||
| * | Fix LiveInterval::getOverlapingRanges to take things in the right order | Chris Lattner | 2005-10-21 | 1 | -3/+3 |
| | | | | | | | | | | | (an unused method). Fix the merger so that it can merge ranges like this [10:12)[16:40) with [12:38) into [10:40) instead of bogus ranges. This sort of input will be possible for the merger coming shortly llvm-svn: 23865 | ||||
| * | Match rotate. This does actually match the rotates in an rc5 cipher, but I | Nate Begeman | 2005-10-21 | 1 | -0/+3 |
| | | | | | | | haven't seen it fire on our testsuite. llvm-svn: 23863 | ||||
| * | My previous patch was too conservative. Reject FP and void types, but do | Chris Lattner | 2005-10-21 | 1 | -1/+2 |
| | | | | | | | allow pointer types. llvm-svn: 23859 | ||||
| * | Don't generate operations that aren't yet supported | Nate Begeman | 2005-10-21 | 1 | -1/+4 |
| | | | | | llvm-svn: 23858 | ||||
| * | Kill some now-dead code. | Nate Begeman | 2005-10-21 | 1 | -159/+0 |
| | | | | | llvm-svn: 23857 | ||||
| * | Fix a typo in the dag combiner, so that this can work on i64 targets | Nate Begeman | 2005-10-21 | 1 | -3/+2 |
| | | | | | llvm-svn: 23856 | ||||
| * | byte zap not immediate goodness | Andrew Lenharth | 2005-10-21 | 1 | -12/+47 |
| | | | | | llvm-svn: 23855 | ||||
| * | Make tblgen emit: | Chris Lattner | 2005-10-21 | 2 | -11/+26 |
| | | | | | | | | tblgen: In ZAPNOTi: Cannot use 'IZAPX' in an input pattern! for a bad pattern, instead of an ugly assertion. llvm-svn: 23854 | ||||
| * | Invert the TargetLowering flag that controls divide by consant expansion. | Nate Begeman | 2005-10-21 | 6 | -76/+68 |
| | | | | | | | | | | | Add a new flag to TargetLowering indicating if the target has really cheap signed division by powers of two, make ppc use it. This will probably go away in the future. Implement some more ISD::SDIV folds in the dag combiner Remove now dead code in the x86 backend. llvm-svn: 23853 | ||||
| * | Inst cleanup. As a bonus, operands are in the correct order for cmovs. ↵ | Andrew Lenharth | 2005-10-20 | 2 | -47/+33 |
| | | | | | | | Expect new stuff to pass in the JIT tonight llvm-svn: 23852 | ||||
| * | Use a literal to define ineg instead of immzero | Chris Lattner | 2005-10-20 | 1 | -2/+1 |
| | | | | | llvm-svn: 23851 | ||||
| * | Fix a conditional so we don't access past the end of the range. Thanks to | Chris Lattner | 2005-10-20 | 1 | -6/+4 |
| | | | | | | | Andrew for bringing this to my attn. llvm-svn: 23850 | ||||
| * | added a few 1 operand form stuff. Seems to break regalloc on alpha. sigh | Andrew Lenharth | 2005-10-20 | 3 | -13/+33 |
| | | | | | llvm-svn: 23849 | ||||
| * | add cttz and ctpop | Andrew Lenharth | 2005-10-20 | 1 | -0/+2 |
| | | | | | llvm-svn: 23848 | ||||
| * | Fix a couple bugs in the const div stuff where we'd generate MULHS/MULHU | Nate Begeman | 2005-10-20 | 1 | -3/+4 |
| | | | | | | | | for types that aren't legal, and fail a divisor is less than zero comparison, which would cause us to drop a subtract. llvm-svn: 23846 | ||||
| * | don't use llabs with apparently VC++ doesn't have | Chris Lattner | 2005-10-20 | 1 | -1/+1 |
| | | | | | llvm-svn: 23845 | ||||
| * | Fix order of eval problem from when I refactored this into a function. | Chris Lattner | 2005-10-20 | 1 | -3/+2 |
| | | | | | llvm-svn: 23844 | ||||
| * | Sounds good, finish the intop conversion. | Andrew Lenharth | 2005-10-20 | 1 | -27/+20 |
| | | | | | llvm-svn: 23843 | ||||
| * | Add some more patterns for i64 on ppc | Nate Begeman | 2005-10-20 | 1 | -6/+12 |
| | | | | | llvm-svn: 23842 | ||||
| * | add a new method, play around with some code. | Chris Lattner | 2005-10-20 | 1 | -10/+56 |
| | | | | | | | | | Fix a *bug* in the extendIntervalEndTo method. In particular, if adding [2:10) to an interval containing [0:2),[10:30), we produced [0:10),[10,30). Which is not the most smart thing to do. Now produce [0:30). llvm-svn: 23841 | ||||
| * | add a new method | Chris Lattner | 2005-10-20 | 1 | -0/+5 |
| | | | | | llvm-svn: 23840 | ||||
| * | Refactor some code, pulling it out into a function. No functionality change. | Chris Lattner | 2005-10-20 | 1 | -15/+26 |
| | | | | | llvm-svn: 23839 | ||||
| * | Do NOT touch FP ops with LSR. This fixes a testcase Nate sent me from an | Chris Lattner | 2005-10-20 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | inner loop like this: LBB_RateConvertMono8AltiVec_2: ; no_exit lis r2, ha16(.CPI_RateConvertMono8AltiVec_0) lfs f3, lo16(.CPI_RateConvertMono8AltiVec_0)(r2) fmr f3, f3 fadd f0, f2, f0 fadd f3, f0, f3 fcmpu cr0, f3, f1 bge cr0, LBB_RateConvertMono8AltiVec_2 ; no_exit to an inner loop like this: LBB_RateConvertMono8AltiVec_1: ; no_exit fsub f2, f2, f1 fcmpu cr0, f2, f1 fmr f0, f2 bge cr0, LBB_RateConvertMono8AltiVec_1 ; no_exit Doh! good catch! llvm-svn: 23838 | ||||
| * | Add some pattern fragments to simplify the repetitive parts of the patterns | Chris Lattner | 2005-10-20 | 1 | -3/+22 |
| | | | | | | | | | for some common ops and use them for a few examples. Andrew, if you like this, feel free to convert the rest over, if you hate it, feel free to revert. llvm-svn: 23837 | ||||
| * | simplify this a bit by using immediates | Chris Lattner | 2005-10-20 | 1 | -24/+16 |
| | | | | | llvm-svn: 23836 | ||||
| * | Move the target constant divide optimization up into the dag combiner, so | Nate Begeman | 2005-10-20 | 4 | -314/+265 |
| | | | | | | | | that the nodes can be folded with other nodes, and we can not duplicate code in every backend. Alpha will probably want this too. llvm-svn: 23835 | ||||
| * | Enable targets to say that integer divide is expensive, which will trigger | Nate Begeman | 2005-10-20 | 1 | -0/+16 |
| | | | | | | | an upcoming optimization in the DAG Combiner. llvm-svn: 23834 | ||||
| * | forgot this one | Andrew Lenharth | 2005-10-20 | 1 | -0/+265 |
| | | | | | llvm-svn: 23833 | ||||
| * | ret 0; works, not much else | Andrew Lenharth | 2005-10-20 | 7 | -139/+226 |
| | | | | | | | | | still lots of uglyness. Maybe calls will come soon. Fixing the return value of things will be necessary to make alpha work. llvm-svn: 23832 | ||||
| * | This fixes PR638: | John Criswell | 2005-10-19 | 1 | -6/+6 |
| | | | | | | | Regression/CodeGen/Generic/2004-02-08-UnwindSupport.llx llvm-svn: 23831 | ||||
| * | Added InstrSchedClass to each of the PowerPC Instructions. | Jim Laskey | 2005-10-19 | 9 | -389/+427 |
| | | | | | | | | Note that when adding new instructions that you should refer to the table at the bottom of PPCSchedule.td. llvm-svn: 23830 | ||||
| * | Moved to Regression/Codegen/Generic. | John Criswell | 2005-10-19 | 1 | -13/+0 |
| | | | | | llvm-svn: 23829 | ||||
| * | This is a generic test for all code generators. It originally came from | John Criswell | 2005-10-19 | 1 | -0/+13 |
| | | | | | | | Regression/Codegen/X86. llvm-svn: 23826 | ||||
| * | Write patterns for the various shl and srl patterns that don't involve | Nate Begeman | 2005-10-19 | 3 | -50/+71 |
| | | | | | | | doing something clever. llvm-svn: 23824 | ||||
| * | Force i386 code generation for an i386 specific test. | John Criswell | 2005-10-19 | 1 | -1/+1 |
| | | | | | llvm-svn: 23821 | ||||
| * | Push processor descriptions to the top of target and add command line info. | Jim Laskey | 2005-10-19 | 7 | -23/+80 |
| | | | | | llvm-svn: 23820 | ||||
| * | add support for literal immediates in patterns to match, allowing us to | Chris Lattner | 2005-10-19 | 1 | -9/+21 |
| | | | | | | | | | | | write things like this: def : Pat<(add GPRC:$in, 12), (ADD12 GPRC:$in)>; Andrew: if this isn't enough or doesn't work for you, please lemme know. llvm-svn: 23819 | ||||
| * | now that tblgen is smarter, use integers directly. This should help Andrew too | Chris Lattner | 2005-10-19 | 1 | -4/+1 |
| | | | | | llvm-svn: 23818 | ||||
| * | Add basic support for integer constants in pattern results. | Chris Lattner | 2005-10-19 | 1 | -0/+14 |
| | | | | | llvm-svn: 23817 | ||||
| * | Fix some checking that was causing duraid to get a perplexing assertion | Chris Lattner | 2005-10-19 | 1 | -1/+1 |
| | | | | | | | instead of a happy error message llvm-svn: 23816 | ||||
| * | Add support for patterns that have physical registers in them. Testcase: | Chris Lattner | 2005-10-19 | 1 | -0/+12 |
| | | | | | | | | | | def : Pat<(trunc G8RC:$in), (OR8To4 G8RC:$in, X0)>; Even though this doesn't make any sense on PPC :) llvm-svn: 23815 | ||||
| * | Asserting here is to violent | Chris Lattner | 2005-10-19 | 1 | -1/+3 |
| | | | | | llvm-svn: 23814 | ||||
| * | teach ppc backend these are copies | Chris Lattner | 2005-10-19 | 1 | -1/+2 |
| | | | | | llvm-svn: 23813 | ||||

