Forward progress: crtbegin.c now compiles successfully!
authorScott Michel <scottm@aero.org>
Thu, 17 Jan 2008 20:38:41 +0000 (20:38 +0000)
committerScott Michel <scottm@aero.org>
Thu, 17 Jan 2008 20:38:41 +0000 (20:38 +0000)
commit58c5818c01e375a84dc601140470fa68638004cf
treef17a220d0e67dfb751e29f7c82d3b13ca25e10b6
parentddf89566a93081cb230bb9406a72ab2d3eada4a7
Forward progress: crtbegin.c now compiles successfully!

Fixed CellSPU's A-form (local store) address mode, so that all globals,
externals, constant pool and jump table symbols are now wrapped within
a SPUISD::AFormAddr pseudo-instruction. This now identifies all local
store memory addresses, although it requires a bit of legerdemain during
instruction selection to properly select loads to and stores from local
store, properly generating "LQA" instructions.

Also added mul_ops.ll test harness for exercising integer multiplication.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46142 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/CellSPU/SPUISelDAGToDAG.cpp
lib/Target/CellSPU/SPUISelLowering.cpp
lib/Target/CellSPU/SPUInstrInfo.td
lib/Target/CellSPU/SPUNodes.td
test/CodeGen/CellSPU/call_indirect.ll
test/CodeGen/CellSPU/mul_ops.ll [new file with mode: 0644]
test/CodeGen/CellSPU/struct_1.ll