summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/IA64
Commit message (Collapse)AuthorAgeFilesLines
...
* bswap implementationNate Begeman2006-01-142-0/+2
| | | | llvm-svn: 25312
* don't be a doofus - this fixes storing boolsDuraid Madina2006-01-131-2/+5
| | | | llvm-svn: 25274
* new nodesChris Lattner2006-01-132-0/+8
| | | | llvm-svn: 25271
* sabre's (correct) fix means these guys need to be flagged as well (elseDuraid Madina2006-01-121-2/+7
| | | | | | the scheduler will complain) llvm-svn: 25241
* Fix an itanium call lowering bug for duraidChris Lattner2006-01-121-6/+6
| | | | llvm-svn: 25235
* Missed a spot.Nate Begeman2006-01-111-0/+2
| | | | llvm-svn: 25233
* Add bswap, rotl, and rotr nodesNate Begeman2006-01-111-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 nowChris Lattner2006-01-111-2/+0
| | | | llvm-svn: 25220
* cleanup GETFDDuraid Madina2006-01-111-4/+3
| | | | llvm-svn: 25198
* this just might workDuraid Madina2006-01-111-4/+4
| | | | llvm-svn: 25195
* add support for selecting boolsDuraid Madina2006-01-111-1/+5
| | | | | FIXME: this is commented out because it makes tblgen go a bit fruity llvm-svn: 25193
* silence a bogus warningChris Lattner2006-01-101-1/+1
| | | | llvm-svn: 25185
* heh, 'sif it'd be a legalizer bug.Duraid Madina2006-01-101-1/+1
| | | | llvm-svn: 25172
* support functions that return bool (this "should" work but doesn't,Duraid Madina2006-01-101-10/+10
| | | | | | *maybe* due to a legalizer bug.) llvm-svn: 25171
* silence a bogus gcc warningChris Lattner2006-01-061-1/+1
| | | | llvm-svn: 25129
* Had expand logic backward.Jim Laskey2006-01-052-0/+4
| | | | llvm-svn: 25105
* Added initial support for DEBUG_LABEL allowing debug specific labels to beJim Laskey2006-01-052-2/+0
| | | | | | inserted in the code. llvm-svn: 25104
* nasty paste-o, calls passing more than 8 arguments along were havingDuraid Madina2005-12-271-2/+2
| | | | | | args >8 put into the wrong place llvm-svn: 25027
* Added field noResults to Instruction.Evan Cheng2005-12-261-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 Madina2005-12-251-2/+1
| | | | llvm-svn: 25010
* we don't feed our call instructions extra operandsDuraid Madina2005-12-251-3/+3
| | | | llvm-svn: 25009
* remove dead codeChris Lattner2005-12-221-7/+0
| | | | llvm-svn: 24965
* this is a hack, which may or may not hang around. In short:Duraid Madina2005-12-223-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 caseDuraid Madina2005-12-221-0/+8
| | | | llvm-svn: 24951
* oops, back this outDuraid Madina2005-12-221-3/+2
| | | | llvm-svn: 24950
* we can't all have brains now, can weDuraid Madina2005-12-221-0/+4
| | | | llvm-svn: 24948
* this should take care of calls to varadic functions, but it doesn.,tDuraid Madina2005-12-221-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 itDuraid Madina2005-12-221-2/+11
| | | | | | to IA64ISD llvm-svn: 24946
* I shoulda done this a *long* time ago (tm): implement calls properly,Duraid Madina2005-12-221-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, likeDuraid Madina2005-12-221-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 hereDuraid Madina2005-12-223-6/+18
| | | | llvm-svn: 24939
* Disengage DEBUG_LOC from non-PPC targets.Jim Laskey2005-12-212-0/+2
| | | | llvm-svn: 24919
* Add some explicit type casts so that tblgen knows the type of the ↵Chris Lattner2005-12-051-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 ISelPatternChris Lattner2005-12-011-0/+3
| | | | | | stuff isn't using ISelLowering.cpp llvm-svn: 24567
* Support multiple ValueTypes per RegisterClass, needed for upcoming vectorNate Begeman2005-12-011-3/+3
| | | | | | work. This change has no effect on generated code. llvm-svn: 24563
* Pay attn to the node returned by SelectNodeToChris Lattner2005-11-301-37/+28
| | | | llvm-svn: 24551
* No longer track value types for asm printer operands, and remove them asNate Begeman2005-11-301-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 Lattner2005-11-291-0/+3
| | | | llvm-svn: 24513
* add support for dynamic_stackalloc to the dag isel (thanks andrew ;)Duraid Madina2005-11-251-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 Madina2005-11-211-0/+180
| | | | llvm-svn: 24472
* Eliminate unneeded intermediate class. Move doFinalizeMethod to bottom ofChris Lattner2005-11-211-99/+88
| | | | | | file. llvm-svn: 24470
* Start using shared asmprinter Constant Pool emitter, use shorter cpi names.Chris Lattner2005-11-211-26/+5
| | | | llvm-svn: 24469
* Adjust to capitalized AsmPrinter method namesChris Lattner2005-11-211-6/+6
| | | | llvm-svn: 24456
* Use PrivateGlobalPrefix for basic block labelsChris Lattner2005-11-211-2/+4
| | | | llvm-svn: 24452
* Start using SwitchSection, allowing globals and functions to be emittedChris Lattner2005-11-211-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 futureChris Lattner2005-11-211-6/+6
| | | | | | change. llvm-svn: 24443
* Start using PrivateGlobalPrefix correctlyChris Lattner2005-11-211-3/+3
| | | | llvm-svn: 24442
* add FP select. next up - divide!Duraid Madina2005-11-141-3/+5
| | | | llvm-svn: 24346
* Add a new option to indicate we want the code generator to emit code ↵Chris Lattner2005-11-082-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 boolsDuraid Madina2005-11-071-5/+26
| | | | llvm-svn: 24228
OpenPOWER on IntegriCloud