summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/SparcV8
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix whitespace and wrap some long lines.Brian Gaeke2004-10-101-8/+30
| | | | | | | | Deal with allocating stack space for outgoing args and copying them into the correct stack slots (at least, we can copy <=32-bit int args). We now correctly generate ADJCALLSTACK* instructions. llvm-svn: 16881
* update according to tonight's infoBrian Gaeke2004-10-091-4/+5
| | | | llvm-svn: 16866
* Implement getModuleMatchQuality and getJITMatchQuality so that v8 will be theBrian Gaeke2004-10-092-0/+23
| | | | | | | default 32/BE target on sparc hosts, and ppc will continue to be the default on other hosts. llvm-svn: 16865
* I think this will handle double args.Brian Gaeke2004-09-301-2/+15
| | | | llvm-svn: 16618
* Mark the instructions that have delay slots with the hasDelaySlot flag.Brian Gaeke2004-09-301-9/+17
| | | | | | Add some comments. llvm-svn: 16611
* Use TargetMachine::hasDelaySlot() instead of our old switch statementBrian Gaeke2004-09-301-45/+6
| | | | | | to find instrs that have delay slots. llvm-svn: 16610
* Update list of shootout programs that should be working.Brian Gaeke2004-09-291-2/+2
| | | | llvm-svn: 16595
* Tell the target description that calls clobber registers O0...O5.Brian Gaeke2004-09-291-10/+9
| | | | llvm-svn: 16594
* FITOD is spelled "fitod", not "fitos". Ouch.Brian Gaeke2004-09-291-1/+1
| | | | llvm-svn: 16591
* Don't use .quad to output double constants. The assembler must have a bug orBrian Gaeke2004-09-291-1/+2
| | | | | | something, because the wrong bit patterns get output. llvm-svn: 16590
* Recognize FpMOVD as a move.Brian Gaeke2004-09-291-1/+1
| | | | llvm-svn: 16586
* add resultsBrian Gaeke2004-09-291-0/+7
| | | | llvm-svn: 16579
* Simplify copyConstantToRegister() for longs, using a pair of recursive calls.Brian Gaeke2004-09-291-62/+106
| | | | | | | | | | | | | | Copy constant-pool entries' addresses into registers before loading out of them, to avoid errors from the assembler. Handle loading call args past the 6th one off the stack. Add IMPLICIT_DEF pseudo-instrs for double and long arguments passed in register pairs. Use FpMOVD to copy doubles around instead of the horrible store-load thing we were doing before. Handle 'ret double' and 'ret long'. Fix a bug in handling 'and/or/xor long'. llvm-svn: 16577
* Fix bug recognizing moves: isMoveInstr should only treat ORs with %g0 asBrian Gaeke2004-09-291-1/+1
| | | | | | moves, not all ORs. llvm-svn: 16576
* Use FpMOVD pseudo-instruction to move doubles around.Brian Gaeke2004-09-291-0/+2
| | | | llvm-svn: 16575
* Add new FpMOVD pseudo-instruction, used to move doubles around.Brian Gaeke2004-09-291-0/+1
| | | | llvm-svn: 16574
* Fix double and long alignment.Brian Gaeke2004-09-291-1/+3
| | | | | | Call the FPMover pass after register allocation. llvm-svn: 16573
* Put quotes around argument to .section directive.Brian Gaeke2004-09-291-3/+3
| | | | llvm-svn: 16572
* Add createSparcV8FPMoverPass().Brian Gaeke2004-09-291-0/+1
| | | | llvm-svn: 16571
* Pass which converts FpMOVD (double move pseudoinstructions) to pairsBrian Gaeke2004-09-291-0/+91
| | | | | | of FMOVS instrs. llvm-svn: 16570
* SparcV8 int regs are not only 32-bits in width, but they are 32-bit aligned!Misha Brukman2004-09-271-1/+1
| | | | llvm-svn: 16526
* Fix the copy-pasto that Brian noticed: V8 int regs are 32-bits wide, not 64.Misha Brukman2004-09-261-1/+1
| | | | llvm-svn: 16518
* Use the V8/V9 shared register file descriptionMisha Brukman2004-09-221-77/+8
| | | | llvm-svn: 16485
* Combine the F2 and F3 instruction classes into one file for simplicityMisha Brukman2004-09-223-49/+40
| | | | llvm-svn: 16484
* Fix file header pathMisha Brukman2004-09-221-1/+1
| | | | llvm-svn: 16483
* Prettify formatting of the file, adjust paths to making V8 a subdir of SparcMisha Brukman2004-09-221-5/+20
| | | | llvm-svn: 16482
* V8 is now a subdirectory of Sparc; adjust paths accordinglyMisha Brukman2004-09-221-2/+2
| | | | llvm-svn: 16481
* Changes to make this work with Jason's patch. I checked this by hand, butChris Lattner2004-09-131-48/+50
| | | | | | | would appreciate if others would also look at this to make sure I didn't botch something obvious llvm-svn: 16312
* Renamed file to SparcV8ISelSimple.cppMisha Brukman2004-09-101-0/+0
| | | | llvm-svn: 16267
* This file does not need <iostream>, I think.Brian Gaeke2004-09-081-1/+0
| | | | llvm-svn: 16245
* Back to compiling land for v8Brian Gaeke2004-09-024-6/+6
| | | | llvm-svn: 16138
* Convert bytes to bits in alignmentChris Lattner2004-08-211-3/+3
| | | | llvm-svn: 15971
* V8 never used the instrselectorgeneratorChris Lattner2004-08-151-5/+1
| | | | llvm-svn: 15791
* Code insertion methods now return void instead of an int.Chris Lattner2004-08-152-19/+16
| | | | llvm-svn: 15780
* These methods no longer take a TargetRegisterClass* operand.Chris Lattner2004-08-152-16/+11
| | | | llvm-svn: 15774
* Update to no longer take MF as an argumentChris Lattner2004-08-142-4/+3
| | | | llvm-svn: 15748
* Remove ClassPrefix variable as it's no longer used.Misha Brukman2004-08-091-1/+0
| | | | llvm-svn: 15586
* The (future) SparcV8 JIT would do well to have a class prefix.Misha Brukman2004-08-091-0/+1
| | | | llvm-svn: 15583
* Update the To-Do list according to my notes + assertionsBrian Gaeke2004-08-061-5/+7
| | | | llvm-svn: 15535
* getValues is goneChris Lattner2004-08-041-7/+5
| | | | llvm-svn: 15494
* I'm pretty sure that ba is branch always, which is a barrier. Brg shouldChris Lattner2004-07-311-1/+3
| | | | | | check this :) llvm-svn: 15357
* I think that V8 should coallesce registers, don't you?Chris Lattner2004-07-252-0/+25
| | | | llvm-svn: 15192
* CPR fixesChris Lattner2004-07-182-6/+5
| | | | llvm-svn: 14960
* Add a class for pseudo-instructions. Use it.Brian Gaeke2004-07-161-8/+7
| | | | | | Add IMPLICIT_USE and IMPLICIT_DEF, a la X86. llvm-svn: 14884
* Add what will eventually be the TSFlags. Big switch(opcode) statements are bad.Brian Gaeke2004-07-161-0/+12
| | | | llvm-svn: 14883
* Add special handling for pseudo-instructions (print them as comments).Brian Gaeke2004-07-161-0/+18
| | | | llvm-svn: 14882
* Add to-do list.Brian Gaeke2004-07-161-0/+9
| | | | llvm-svn: 14881
* Do IMPLICIT_DEFs on incoming args' hard regs, to avoid confusing the regalloc.Brian Gaeke2004-07-161-10/+61
| | | | | | | | Support single-fp incoming args. Support single-fp outgoing args ('call' operands). Support double-fp return values. llvm-svn: 14880
* Delete the allocate*TargetMachine function, which is now dead .Chris Lattner2004-07-111-9/+1
| | | | | | The shared command line options are now in a header that makes sense. llvm-svn: 14756
* Make these format a bit nicerChris Lattner2004-07-111-1/+1
| | | | llvm-svn: 14747
OpenPOWER on IntegriCloud