Skip to content
  • Scott Michel's avatar
    - Remove Tilmann's custom truncate lowering: it completely hosed over · 8233527b
    Scott Michel authored
      DAGcombine's ability to find reasons to remove truncates when they were not
      needed. Consequently, the CellSPU backend would produce correct, but _really
      slow and horrible_, code.
    
      Replaced with instruction sequences that do the equivalent truncation in
      SPUInstrInfo.td.
    
    - Re-examine how unaligned loads and stores work. Generated unaligned
      load code has been tested on the CellSPU hardware; see the i32operations.c
      and i64operations.c in CodeGen/CellSPU/useful-harnesses.  (While they may be
      toy test code, it does prove that some real world code does compile
      correctly.)
    
    - Fix truncating stores in bug 3193 (note: unpack_df.ll will still make llc
      fault because i64 ult is not yet implemented.)
    
    - Added i64 eq and neq for setcc and select/setcc; started new instruction
      information file for them in SPU64InstrInfo.td. Additional i64 operations
      should be added to this file and not to SPUInstrInfo.td.
    
    llvm-svn: 61447
    8233527b
Loading