Cell Toolchain – part I – act I – binutils

Today/This night I started ripping some clean patches out of the Cell toolchain-3.2 sources.
As I said in the previous rant, the whole toolchain is provided as a singular huge and messy tarball, no patches provided…

The first target is binutils since should be simpler. You may find in my devspace the first raw diff (about 1.2MB) against binutils-2.16.1 and the, 2hours of work, clean diff against binutils-2.17.

probably there is something else to retouch (I removed an ugly #undef TARGET_CPU #define TARGET_CPU “cellppu” and I hadn’t check yet the configure to see what is missing there)

but overall isn’t bad:

Before

bfd/Makefile.am | 9
bfd/archures.c | 5
bfd/bfd-in2.h | 20
bfd/coffcode.h | 7
bfd/config.bfd | 18
bfd/configure | 1
bfd/configure.in | 1
bfd/cpu-powerpc.c | 30
bfd/cpu-spu.c | 63
bfd/doc/bfd.info | 131
bfd/doc/bfd.info-1 | 5921 ++++++++++++——
bfd/doc/chew.c | 6
bfd/elf.c | 172
bfd/elf32-spu.c | 1015 +++
bfd/elf64-ppc.c | 5
bfd/elflink.c | 7
bfd/opncls.c | 15
bfd/reloc.c | 27
bfd/targets.c | 2
binutils/ar.c | 9
binutils/doc/objcopy.1 | 9
binutils/objcopy.c | 74
binutils/readelf.c | 7
config.sub | 23
gas/Makefile.am | 16
gas/as.c | 9
gas/config/obj-coff.c | 243
gas/config/tc-ppc.c | 33
gas/config/tc-spu.c | 1006 +++
gas/config/tc-spu.h | 107
gas/configure.tgt | 5
gas/doc/as.info-1 |11236 ++++++++++++++++++++++++++++++++—- gas/doc/c-hppa.texi | 45
gas/testsuite/gas/sh/sh64/err-dsp.s | 2
gprof/gprof.info | 2326 ——-
include/bfdlink.h | 6
include/dis-asm.h | 1
include/elf/common.h | 1
include/elf/spu.h | 87
include/libiberty.h | 3
include/opcode/ppc.h | 3
include/opcode/spu-insns.h | 412 +
include/opcode/spu.h | 128
ld/Makefile.am | 8
ld/configure.tgt | 7
ld/deffile.h | 6
ld/emulparams/elf32_spu.sh | 14
ld/emulparams/elf64_lv2.sh | 51
ld/emulparams/elf64ppc.sh | 6
ld/emultempl/elf32.em | 7
ld/ld.texinfo | 8
ld/ldgram.y | 5
ld/ldmain.c | 15
ld/lexsup.c | 15
ld/pe-dll.c | 83
ld/scripttempl/elf.sc | 1
ld/scripttempl/pe.sc | 18
ld/testsuite/ld-scripts/assert.s | 1
ld/testsuite/ld-scripts/data.s | 1
libiberty/argv.c | 148
libiberty/config.table | 1
opcodes/Makefile.am | 10
opcodes/configure | 1
opcodes/configure.in | 1
opcodes/disassemble.c | 6
opcodes/ppc-dis.c | 22
opcodes/ppc-opc.c | 40
opcodes/spu-dis.c | 258
opcodes/spu-opc.c | 47
69 files changed, 18130 insertions(+), 5896 deletions(-)

2 hours after

bfd/Makefile.am | 9
bfd/archures.c | 5
bfd/bfd-in2.h | 20
bfd/config.bfd | 18
bfd/configure.in | 1
bfd/cpu-powerpc.c | 30 +
bfd/cpu-spu.c | 63 ++
bfd/elf.c | 172 ++++++
bfd/elf32-spu.c | 1015 ++++++++++++++++++++++++++++++++++++ bfd/elf64-ppc.c | 5
bfd/opncls.c | 15
bfd/reloc.c | 27
bfd/targets.c | 2
binutils/doc/objcopy.1 | 9
binutils/objcopy.c | 74 ++
binutils/readelf.c | 7
gas/Makefile.am | 16
gas/config/tc-ppc.c | 23
gas/config/tc-spu.c | 1006 +++++++++++++++++++++++++++++++++++
gas/config/tc-spu.h | 107 +++
gas/configure.tgt | 5
gas/testsuite/gas/sh/sh64/err-dsp.s | 2
include/bfdlink.h | 6
include/dis-asm.h | 1
include/elf/common.h | 1
include/elf/spu.h | 87 +++
include/opcode/ppc.h | 3
include/opcode/spu-insns.h | 412 ++++++++++++++
include/opcode/spu.h | 128 ++++
ld/Makefile.am | 8
ld/configure.tgt | 8
ld/emulparams/elf32_spu.sh | 14
ld/emulparams/elf64_lv2.sh | 51 +
ld/emulparams/elf64ppc.sh | 6
ld/emultempl/elf32.em | 7
ld/ld.texinfo | 8
ld/ldgram.y | 5
ld/ldmain.c | 15
ld/lexsup.c | 15
ld/scripttempl/elf.sc | 1
ld/scripttempl/pe.sc | 18
opcodes/Makefile.am | 10
opcodes/configure | 1
opcodes/configure.in | 1
opcodes/disassemble.c | 6
opcodes/ppc-dis.c | 22
opcodes/ppc-opc.c | 40 +
opcodes/spu-dis.c | 258 +++++++++
opcodes/spu-opc.c | 47 +
49 files changed, 3782 insertions(+), 28 deletions(-)

One thought on “Cell Toolchain – part I – act I – binutils”

Leave a Reply

Your email address will not be published.