summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/SparcV8
Commit message (Collapse)AuthorAgeFilesLines
...
* Wrap long linesMisha Brukman2005-05-181-5/+14
| | | | llvm-svn: 22125
* Convert tabs to spacesMisha Brukman2005-04-223-33/+45
| | | | llvm-svn: 21457
* Remove trailing whitespaceMisha Brukman2005-04-2113-83/+83
| | | | llvm-svn: 21425
* This mega patch converts us from using Function::a{iterator|begin|end} toChris Lattner2005-03-152-3/+3
| | | | | | | | using Function::arg_{iterator|begin|end}. Likewise Module::g* -> Module::global_*. This patch is contributed by Gabor Greif, thanks! llvm-svn: 20597
* Substantially improve the code generated by non-folded setcc instructions.Chris Lattner2005-01-011-33/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In particular, instead of compiling this: bool %test(int %A, int %B) { %C = setlt int %A, %B ret bool %C } to this: test: save %sp, -96, %sp subcc %i0, %i1, %g0 bl .LBBtest_1 ! nop ba .LBBtest_2 ! nop .LBBtest_1: ! or %g0, 1, %i0 ba .LBBtest_3 ! nop .LBBtest_2: ! or %g0, 0, %i0 ba .LBBtest_3 ! nop .LBBtest_3: ! restore %g0, %g0, %g0 retl nop We now compile it to this: test: save %sp, -96, %sp subcc %i0, %i1, %g0 or %g0, 1, %i0 bl .LBBtest_2 ! nop .LBBtest_1: ! or %g0, %g0, %i0 .LBBtest_2: ! restore %g0, %g0, %g0 retl nop llvm-svn: 19213
* Remove unused #includeChris Lattner2004-12-171-1/+1
| | | | llvm-svn: 19021
* The mystery of Olden/tsp solved, and more opportunities for speedup.Brian Gaeke2004-12-141-0/+6
| | | | llvm-svn: 18932
* Get rid of shifts by zero in most cases.Brian Gaeke2004-12-142-12/+6
| | | | llvm-svn: 18931
* Add some notesChris Lattner2004-12-131-1/+21
| | | | llvm-svn: 18911
* Add V8 SPEC status.Brian Gaeke2004-12-131-0/+10
| | | | llvm-svn: 18844
* Use the target triple to pick this target.Chris Lattner2004-12-121-0/+4
| | | | llvm-svn: 18830
* Complete the list of MultiSource failures.Brian Gaeke2004-12-121-5/+12
| | | | llvm-svn: 18826
* hbd should be working now.Brian Gaeke2004-12-121-1/+0
| | | | llvm-svn: 18824
* Finally enable the setcc-branch folding code.Brian Gaeke2004-12-121-17/+73
| | | | | | | Also, fix a bug where ubyte 255 would sometimes be output as -1. This was afflicting hbd. llvm-svn: 18823
* Add (currently disabled) code for canFoldSetCCBrian Gaeke2004-12-121-0/+10
| | | | llvm-svn: 18820
* Add stubs for setcc-branch folding support.Brian Gaeke2004-12-121-0/+11
| | | | llvm-svn: 18818
* Print llvm code one function at a time.Brian Gaeke2004-12-111-1/+1
| | | | llvm-svn: 18805
* JIT should print LLVM each function before selecting instructions for it.Brian Gaeke2004-12-111-0/+4
| | | | llvm-svn: 18803
* Bools are *also* not ints. Sigh. Furthermore, most of the TargetMachineBrian Gaeke2004-12-111-1/+6
| | | | | | | | | ctor parameters can be defaulted. Print the transformed llvm code input to the instruction selector when -print-machineinstrs is on, just like V9. llvm-svn: 18794
* Look for many more moves to fold (previously, we onlyBrian Gaeke2004-12-111-2/+24
| | | | | | | | | *or g0, x add g0, x recognized * as a move) or x, g0 add x, g0 or 0, x add 0, x or x, 0 add x, 0 llvm-svn: 18793
* Make GEPs not suck so much:Brian Gaeke2004-12-111-15/+67
| | | | | | | | | | | * Don't emit the Index * ElementSize multiply if Index is a constant. * Use a shift, not a multiply, if ElementSize is 1/2/4/8. * If ElementSize fits in the immediate field of SMUL, then put it there. Fix a bug where struct offsets might be truncated (ConstantSInt::get is now used instead of ConstantInt::get). llvm-svn: 18792
* Update lists of failing benchmarks, including info on whichBrian Gaeke2004-12-111-24/+21
| | | | | | ones are failing in cbe. llvm-svn: 18791
* Move -lowerselect later in the chain; some select instructions wereBrian Gaeke2004-12-101-6/+6
| | | | | | | slipping through into the instruction selector, which can't deal with them yet. llvm-svn: 18758
* Add the rest of the multiply instructions.Brian Gaeke2004-12-101-2/+8
| | | | llvm-svn: 18757
* Support binary operations with immediates for <= cInt.Brian Gaeke2004-12-101-4/+23
| | | | llvm-svn: 18756
* Update lists of failing benchmarks (except C++...something is theBrian Gaeke2004-12-101-2/+1
| | | | | | matter with my sparcv8 libstdc++.a) and to-do list. llvm-svn: 18755
* Adjust paths: Sparc/V8 --> SparcV8Brian Gaeke2004-12-102-3/+3
| | | | llvm-svn: 18737
* Make this file self-contained.Brian Gaeke2004-12-101-1/+62
| | | | llvm-svn: 18736
* Update list of failing MultiSource benchmarks. It works out to +5 -5, but IBrian Gaeke2004-12-101-7/+7
| | | | | | think some of these might be the CFE's fault; a rebuild should come soon. llvm-svn: 18735
* When FpMOVDs appeared in pairs, we were mistakenly skipping over the latter ofBrian Gaeke2004-12-101-1/+3
| | | | | | | | | each pair. I think this fixes that. One of these days, I swear I'm going to get the hang of C++ iterators. Really. llvm-svn: 18734
* We're continuing to make progress on MultiSource.Brian Gaeke2004-12-091-5/+17
| | | | llvm-svn: 18714
* Bytes and shorts are aligned differently from words.Brian Gaeke2004-12-091-1/+1
| | | | llvm-svn: 18713
* Fix asm-printing directives (how did we not see this before...apparently,Brian Gaeke2004-12-091-3/+3
| | | | | | everything was an int!) llvm-svn: 18712
* This code rotted - change it to call abort() until someone wantsBrian Gaeke2004-12-031-26/+2
| | | | | | to rewrite this to use relocations. llvm-svn: 18453
* Update list of failing benchmarks.Brian Gaeke2004-11-301-1/+1
| | | | llvm-svn: 18384
* If we're about to emit something like:Brian Gaeke2004-11-301-13/+25
| | | | | | | | | | %f0 = fmovs %f0 %f1 = fmovs %f1 then just delete the FpMOVD pseudo-instruction instead. Also, add statistics and debug printouts. llvm-svn: 18383
* Update list of failing benchmarks.Brian Gaeke2004-11-241-1/+0
| | | | llvm-svn: 18202
* Fix bug in emitGEPOperation with large struct-member offsets.Brian Gaeke2004-11-241-2/+12
| | | | llvm-svn: 18201
* Support shr long/ulong.Brian Gaeke2004-11-231-51/+117
| | | | llvm-svn: 18173
* Support printing ConstantAggregateZeros.Brian Gaeke2004-11-231-0/+5
| | | | llvm-svn: 18172
* Update failing SingleSource test-case list.Brian Gaeke2004-11-231-10/+5
| | | | llvm-svn: 18171
* pseudocode for 64-bit lshr.Brian Gaeke2004-11-231-1/+52
| | | | llvm-svn: 18154
* Add more known-failing tests.Brian Gaeke2004-11-231-0/+6
| | | | llvm-svn: 18149
* Add the rest of the logical instructions.Brian Gaeke2004-11-231-6/+24
| | | | llvm-svn: 18148
* Add stub method for long shift codegen.Brian Gaeke2004-11-221-0/+21
| | | | llvm-svn: 18100
* Update to-do list.Brian Gaeke2004-11-221-1/+0
| | | | llvm-svn: 18099
* Implement setcc on longs.Brian Gaeke2004-11-211-21/+36
| | | | llvm-svn: 18088
* Add all the rest of the ADD and SUB variants, some of which are important forBrian Gaeke2004-11-211-2/+13
| | | | | | 64-bit support. llvm-svn: 18087
* Support add, sub, mul, div, rem on longs/ulongs (latter 3 by emitting libcalls).Brian Gaeke2004-11-211-2/+65
| | | | | | Add a big comment containing my notes on how to do setcc for longs/ulongs. llvm-svn: 18086
* Update to-do list.Brian Gaeke2004-11-211-3/+2
| | | | llvm-svn: 18085
OpenPOWER on IntegriCloud