This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Use cmp_return_mode for fp libcall compare modes and set up the two mode new attributes for SPU


Hi,
  When http://gcc.gnu.org/ml/gcc-patches/2007-06/msg02034.html went in, it 
had missed that fp/dfp compares where done in a different function than 
prepare_cmp_insn so the word mode was still being used.  This patch fixes 
that problem up and makes the spu set up the two mode attributes to SImode 
(spu-elf's word mode is TImode but TImode is not very efficient on SPU).

OK? Bootstrapped and tested on powerpc64-linux-gnu with no regressions and 
built for spu-elf with no regressions and a couple of the ieee/fp-cmp* 
tests now pass.

Thanks,
Andrew Pinski

ChangeLog:

        * optabs.c (prepare_float_lib_cmp): Use
        libgcc_cmp_return_mode instead of word_mode.
        * config/dfp-bit.h: Likewise.
        * config/fp-bit.h: Likewise.
        * config/spu/spu.c (spu_libgcc_cmp_return_mode):
        New function.
        (spu_libgcc_shift_count_mode): New function.
        (TARGET_LIBGCC_CMP_RETURN_MODE): Define.
        (TARGET_LIBGCC_SHIFT_COUNT_MODE): Define.

Attachment: fixspufpcmp.diff.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]