llvm.org GIT mirror llvm / a04fe83
Update the documentation of CellSPU, in case it gets removed in 3.1. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155797 91177308-0d34-0410-b5e6-96231b3b80d8 Kalle Raiskila 7 years ago
2 changed file(s) with 18 addition(s) and 0 deletion(s). Raw diff Collapse all Expand all
341341 E: ghost@cs.msu.su
342342 D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
343343
344 N: Kalle Raiskila
345 E: kalle.rasikila@nokia.com
346 D: Some bugfixes to CellSPU
347
344348 N: Xerxes Ranby
345349 E: xerxes@zafena.se
346350 D: Cmake dependency chain and various bug fixes
3636 ---------------------------------------------------------------------------
3737
3838 TODO:
39 * In commit r142152 vector legalization was set to element promotion per
40 default. This breaks half vectors (e.g. v2i32) badly as they get element
41 promoted to much slower types (v2i64).
42
43 * Many CellSPU specific codegen tests only grep & count the number of
44 instructions, not checking their place with FileCheck. There have also
45 been some commits that change the CellSPU checks, some of which might
46 have not been thoroughly scrutinized w.r.t. to the changes they cause in SPU
47 assembly. (especially since about the time of r142152)
48
49 * Some of the i64 math have huge tablegen rules, which sometime cause
50 tablegen to run out of memory. See e.g. bug 8850. i64 arithmetics
51 should probably be done with libraries.
52
3953 * Create a machine pass for performing dual-pipeline scheduling specifically
4054 for CellSPU, and insert branch prediction instructions as needed.
4155