2004-02-25 20:28:19 +01:00
|
|
|
|
2005-12-16 08:20:53 +01:00
|
|
|
Meta TODO list:
|
2005-12-17 07:54:41 +01:00
|
|
|
1. Convert asmprinter to use lib/CodeGen/AsmPrinter for global init printing
|
2005-12-16 08:20:53 +01:00
|
|
|
constant pool printing, etc.
|
2005-12-17 07:54:41 +01:00
|
|
|
2. Create a new DAG -> DAG instruction selector, by adding patterns to the
|
2005-12-16 08:20:53 +01:00
|
|
|
instructions.
|
2005-12-17 07:54:41 +01:00
|
|
|
3. profit!
|
2005-12-16 08:20:53 +01:00
|
|
|
|
|
|
|
|
2004-02-25 20:28:19 +01:00
|
|
|
SparcV8 backend skeleton
|
|
|
|
------------------------
|
|
|
|
|
2004-11-20 00:09:40 +01:00
|
|
|
This directory houses a 32-bit SPARC V8 backend employing an expander-based
|
2004-08-06 06:38:13 +02:00
|
|
|
instruction selector. It is not yet functionally complete. Watch
|
|
|
|
this space for more news coming soon!
|
2004-02-25 20:28:19 +01:00
|
|
|
|
2004-10-14 21:39:33 +02:00
|
|
|
Current expected test failures
|
|
|
|
------------------------------
|
2004-09-29 05:48:55 +02:00
|
|
|
|
2004-12-11 06:19:01 +01:00
|
|
|
Here are the currently-expected SingleSource failures for V8
|
|
|
|
(Some C++ programs are crashing in libstdc++ at the moment;
|
|
|
|
I'm not sure why.)
|
|
|
|
|
|
|
|
(llc) SingleSource/Regression/C++/EH/exception_spec_test
|
|
|
|
(llc) SingleSource/Regression/C++/EH/throw_rethrow_test
|
|
|
|
|
2004-12-12 09:22:11 +01:00
|
|
|
Here are the currently-expected MultiSource failures for V8:
|
2004-12-11 06:19:01 +01:00
|
|
|
|
|
|
|
(llc,cbe) MultiSource/Applications/d/make_dparser
|
|
|
|
(llc,cbe) MultiSource/Applications/hexxagon
|
|
|
|
(llc) MultiSource/Benchmarks/Fhourstones
|
|
|
|
(llc,cbe) MultiSource/Benchmarks/McCat/03-testtrie
|
|
|
|
(llc) MultiSource/Benchmarks/McCat/18-imp
|
|
|
|
(llc,cbe) MultiSource/Benchmarks/Prolangs-C/bison/mybison
|
|
|
|
(llc,cbe) MultiSource/Benchmarks/Prolangs-C/fixoutput
|
|
|
|
(llc,cbe) MultiSource/Benchmarks/Prolangs-C/gnugo
|
|
|
|
(llc,cbe) MultiSource/Benchmarks/Prolangs-C/plot2fig
|
|
|
|
(llc,cbe) MultiSource/Benchmarks/Ptrdist/anagram
|
2004-12-12 09:22:11 +01:00
|
|
|
(llc,cbe) MultiSource/Benchmarks/FreeBench/analyzer
|
|
|
|
* DANGER * analyzer will run the machine out of VM
|
|
|
|
(I don't know whether the following fail in cbe:)
|
|
|
|
(llc) MultiSource/Benchmarks/FreeBench/distray
|
|
|
|
(llc) MultiSource/Benchmarks/FreeBench/fourinarow
|
|
|
|
(llc) MultiSource/Benchmarks/FreeBench/pifft
|
|
|
|
(llc) MultiSource/Benchmarks/MallocBench/gs
|
|
|
|
(llc) MultiSource/Benchmarks/Prolangs-C++/deriv1
|
|
|
|
(llc) MultiSource/Benchmarks/Prolangs-C++/deriv2
|
2004-11-23 07:39:50 +01:00
|
|
|
|
2004-12-13 01:27:35 +01:00
|
|
|
Known SPEC failures for V8 (probably not an exhaustive list):
|
|
|
|
|
|
|
|
(llc) 134.perl
|
|
|
|
(llc) 177.mesa
|
|
|
|
(llc) 188.ammp -- FPMover bug?
|
|
|
|
(llc) 256.bzip2
|
|
|
|
(llc,cbe) 130.li
|
|
|
|
(native,llc,cbe) 126.gcc
|
|
|
|
(native,llc,cbe) 255.vortex
|
|
|
|
|
2004-07-16 12:31:36 +02:00
|
|
|
To-do
|
|
|
|
-----
|
|
|
|
|
2004-12-12 09:22:11 +01:00
|
|
|
* support shl on longs (fourinarow needs this)
|
|
|
|
* support casting 64-bit integers to FP types (fhourstones needs this)
|
2004-12-13 21:13:10 +01:00
|
|
|
* support FP rem (call fmod)
|
|
|
|
|
|
|
|
* Keep the address of the constant pool in a register instead of forming its
|
|
|
|
address all of the time.
|
|
|
|
|
|
|
|
* Change code like this:
|
|
|
|
or %o0, %lo(.CPI_main_0), %o0
|
|
|
|
ld [%o0+0], %o0
|
|
|
|
into:
|
|
|
|
ld [%o0+%lo(.CPI_main_0)], %o0
|
|
|
|
for constant pool access.
|
|
|
|
|
|
|
|
* We can fold small constant offsets into the %hi/%lo references to constant
|
|
|
|
pool addresses as well.
|
2004-07-16 12:31:36 +02:00
|
|
|
|
2004-12-14 10:10:10 +01:00
|
|
|
* Directly support select instructions, and fold setcc instructions into them
|
|
|
|
where possible. I think this is what afflicts the inner loop of Olden/tsp
|
|
|
|
(hot block = tsp():no_exit.1.i, overall GCC/LLC = 0.03).
|
|
|
|
|
|
|
|
* Generate fsqrtd for calls to sqrt() (~ 4% speedup on Olden/tsp).
|
|
|
|
|
2004-02-25 20:28:19 +01:00
|
|
|
$Date$
|
|
|
|
|