Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | bswap implementation | Nate Begeman | 2006-01-14 | 2 | -0/+2 | |
| | | | | llvm-svn: 25312 | |||||
* | don't be a doofus - this fixes storing bools | Duraid Madina | 2006-01-13 | 1 | -2/+5 | |
| | | | | llvm-svn: 25274 | |||||
* | new nodes | Chris Lattner | 2006-01-13 | 2 | -0/+8 | |
| | | | | llvm-svn: 25271 | |||||
* | sabre's (correct) fix means these guys need to be flagged as well (else | Duraid Madina | 2006-01-12 | 1 | -2/+7 | |
| | | | | | | the scheduler will complain) llvm-svn: 25241 | |||||
* | Fix an itanium call lowering bug for duraid | Chris Lattner | 2006-01-12 | 1 | -6/+6 | |
| | | | | llvm-svn: 25235 | |||||
* | Missed a spot. | Nate Begeman | 2006-01-11 | 1 | -0/+2 | |
| | | | | llvm-svn: 25233 | |||||
* | Add bswap, rotl, and rotr nodes | Nate Begeman | 2006-01-11 | 1 | -0/+2 | |
| | | | | | | | | | Add dag combiner code to recognize rotl, rotr Add ppc code to match rotl Targets should add rotl/rotr patterns if they have them llvm-svn: 25222 | |||||
* | tblgen does this now | Chris Lattner | 2006-01-11 | 1 | -2/+0 | |
| | | | | llvm-svn: 25220 | |||||
* | cleanup GETFD | Duraid Madina | 2006-01-11 | 1 | -4/+3 | |
| | | | | llvm-svn: 25198 | |||||
* | this just might work | Duraid Madina | 2006-01-11 | 1 | -4/+4 | |
| | | | | llvm-svn: 25195 | |||||
* | add support for selecting bools | Duraid Madina | 2006-01-11 | 1 | -1/+5 | |
| | | | | | FIXME: this is commented out because it makes tblgen go a bit fruity llvm-svn: 25193 | |||||
* | silence a bogus warning | Chris Lattner | 2006-01-10 | 1 | -1/+1 | |
| | | | | llvm-svn: 25185 | |||||
* | heh, 'sif it'd be a legalizer bug. | Duraid Madina | 2006-01-10 | 1 | -1/+1 | |
| | | | | llvm-svn: 25172 | |||||
* | support functions that return bool (this "should" work but doesn't, | Duraid Madina | 2006-01-10 | 1 | -10/+10 | |
| | | | | | | *maybe* due to a legalizer bug.) llvm-svn: 25171 | |||||
* | silence a bogus gcc warning | Chris Lattner | 2006-01-06 | 1 | -1/+1 | |
| | | | | llvm-svn: 25129 | |||||
* | Had expand logic backward. | Jim Laskey | 2006-01-05 | 2 | -0/+4 | |
| | | | | llvm-svn: 25105 | |||||
* | Added initial support for DEBUG_LABEL allowing debug specific labels to be | Jim Laskey | 2006-01-05 | 2 | -2/+0 | |
| | | | | | | inserted in the code. llvm-svn: 25104 | |||||
* | nasty paste-o, calls passing more than 8 arguments along were having | Duraid Madina | 2005-12-27 | 1 | -2/+2 | |
| | | | | | | args >8 put into the wrong place llvm-svn: 25027 | |||||
* | Added field noResults to Instruction. | Evan Cheng | 2005-12-26 | 1 | -4/+4 | |
| | | | | | | | | | | | | Currently tblgen cannot tell which operands in the operand list are results so it assumes the first one is a result. This is bad. Ideally we would fix this by separating results from inputs, e.g. (res R32:$dst), (ops R32:$src1, R32:$src2). But that's a more distruptive change. Adding 'let noResults = 1' is the workaround to tell tblgen that the instruction does not produces a result. It works for now since tblgen does not support instructions which produce multiple results. llvm-svn: 25017 | |||||
* | unbreak calls, a few more tests should run. Tomorrow: bugpoint! | Duraid Madina | 2005-12-25 | 1 | -2/+1 | |
| | | | | llvm-svn: 25010 | |||||
* | we don't feed our call instructions extra operands | Duraid Madina | 2005-12-25 | 1 | -3/+3 | |
| | | | | llvm-svn: 25009 | |||||
* | remove dead code | Chris Lattner | 2005-12-22 | 1 | -7/+0 | |
| | | | | llvm-svn: 24965 | |||||
* | this is a hack, which may or may not hang around. In short: | Duraid Madina | 2005-12-22 | 3 | -27/+112 | |
| | | | | | | | | | | whimper out of doing things the Right Way, and hack up a generic 'BRCALL' instruction, that gets generated when calls are lowered. This gets selected by hand in the DAG isel, where it gets turned into real (i.e. in tablegen) br.call instructions. BUG: this dies on void calls, but seems to work otherwise? llvm-svn: 24952 | |||||
* | we can't do this directly in lowering, so we need this case | Duraid Madina | 2005-12-22 | 1 | -0/+8 | |
| | | | | llvm-svn: 24951 | |||||
* | oops, back this out | Duraid Madina | 2005-12-22 | 1 | -3/+2 | |
| | | | | llvm-svn: 24950 | |||||
* | we can't all have brains now, can we | Duraid Madina | 2005-12-22 | 1 | -0/+4 | |
| | | | | llvm-svn: 24948 | |||||
* | this should take care of calls to varadic functions, but it doesn.,t | Duraid Madina | 2005-12-22 | 1 | -7/+14 | |
| | | | | | | | BUG: calling printf(string, float) will load the float into the wrong register, completely forget about loading the string, etce llvm-svn: 24947 | |||||
* | we need to emit the getf.d instruction in lowering, so add it | Duraid Madina | 2005-12-22 | 1 | -2/+11 | |
| | | | | | | to IA64ISD llvm-svn: 24946 | |||||
* | I shoulda done this a *long* time ago (tm): implement calls properly, | Duraid Madina | 2005-12-22 | 1 | -17/+159 | |
| | | | | | | | | | | | | | | i.e. r1/r12/rp are saved/restored regardless of scheduling/luck TODO: calls to external symbols, indirect (function descriptor) calls, performance (we're being paranoid right now) BUG: the code for handling calls to vararg functions breaks if FP args are passed (this will make printf() go haywire so a bunch of tests will fail) BUG: this seems to trigger some legalize nastiness llvm-svn: 24942 | |||||
* | kill SelectCALL() in the DAG isel, we handle this in lowering now, like | Duraid Madina | 2005-12-22 | 1 | -189/+47 | |
| | | | | | | | SPARCv8. (we copy sparcv8's workaround for tablegen not being nice about ISD::CALL/TAILCALL) llvm-svn: 24941 | |||||
* | update tablegen files - nothing to see here | Duraid Madina | 2005-12-22 | 3 | -6/+18 | |
| | | | | llvm-svn: 24939 | |||||
* | Disengage DEBUG_LOC from non-PPC targets. | Jim Laskey | 2005-12-21 | 2 | -0/+2 | |
| | | | | llvm-svn: 24919 | |||||
* | Add some explicit type casts so that tblgen knows the type of the ↵ | Chris Lattner | 2005-12-05 | 1 | -6/+6 | |
| | | | | | | shiftamount, which is not necessarily the same as the type being shifted. llvm-svn: 24595 | |||||
* | IA64 doesn't support the LOCATION node, and for some reason the ISelPattern | Chris Lattner | 2005-12-01 | 1 | -0/+3 | |
| | | | | | | stuff isn't using ISelLowering.cpp llvm-svn: 24567 | |||||
* | Support multiple ValueTypes per RegisterClass, needed for upcoming vector | Nate Begeman | 2005-12-01 | 1 | -3/+3 | |
| | | | | | | work. This change has no effect on generated code. llvm-svn: 24563 | |||||
* | Pay attn to the node returned by SelectNodeTo | Chris Lattner | 2005-11-30 | 1 | -37/+28 | |
| | | | | llvm-svn: 24551 | |||||
* | No longer track value types for asm printer operands, and remove them as | Nate Begeman | 2005-11-30 | 1 | -16/+8 | |
| | | | | | | | an argument to every operand printing function. Requires some slight tweaks to x86, the only user. llvm-svn: 24541 | |||||
* | No targets support line number info yet. | Chris Lattner | 2005-11-29 | 1 | -0/+3 | |
| | | | | llvm-svn: 24513 | |||||
* | add support for dynamic_stackalloc to the dag isel (thanks andrew ;) | Duraid Madina | 2005-11-25 | 1 | -3/+31 | |
| | | | | | | next up: support argument passing in memory, not just registers llvm-svn: 24490 | |||||
* | add support for div/rem to the dag->dag isel. yay. | Duraid Madina | 2005-11-21 | 1 | -0/+180 | |
| | | | | llvm-svn: 24472 | |||||
* | Eliminate unneeded intermediate class. Move doFinalizeMethod to bottom of | Chris Lattner | 2005-11-21 | 1 | -99/+88 | |
| | | | | | | file. llvm-svn: 24470 | |||||
* | Start using shared asmprinter Constant Pool emitter, use shorter cpi names. | Chris Lattner | 2005-11-21 | 1 | -26/+5 | |
| | | | | llvm-svn: 24469 | |||||
* | Adjust to capitalized AsmPrinter method names | Chris Lattner | 2005-11-21 | 1 | -6/+6 | |
| | | | | llvm-svn: 24456 | |||||
* | Use PrivateGlobalPrefix for basic block labels | Chris Lattner | 2005-11-21 | 1 | -2/+4 | |
| | | | | llvm-svn: 24452 | |||||
* | Start using SwitchSection, allowing globals and functions to be emitted | Chris Lattner | 2005-11-21 | 1 | -39/+7 | |
| | | | | | | to specific sections. Delete some dead functions copied from the X86 backend. llvm-svn: 24449 | |||||
* | Rename SwitchSection -> switchSection to avoid conflicting with a future | Chris Lattner | 2005-11-21 | 1 | -6/+6 | |
| | | | | | | change. llvm-svn: 24443 | |||||
* | Start using PrivateGlobalPrefix correctly | Chris Lattner | 2005-11-21 | 1 | -3/+3 | |
| | | | | llvm-svn: 24442 | |||||
* | add FP select. next up - divide! | Duraid Madina | 2005-11-14 | 1 | -3/+5 | |
| | | | | llvm-svn: 24346 | |||||
* | Add a new option to indicate we want the code generator to emit code ↵ | Chris Lattner | 2005-11-08 | 2 | -2/+3 | |
| | | | | | | quickly,not spending tons of time microoptimizing it. This is useful for an -O0style of build. llvm-svn: 24233 | |||||
* | add support for storing and returning bools | Duraid Madina | 2005-11-07 | 1 | -5/+26 | |
| | | | | llvm-svn: 24228 |