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 to fix poor Altivec code gen in combine phase.


This patch, suggested and approved by Roger Sayle, addresses an inefficiency in altivec compare code gen on powerpc. This is because combine phase fails to combine several rtl insns for comparing, setting and generating jump_insn into a single jump_insn. Patch fixes this by simplifying setting of a CC register by removing the redundant compare with 0 on its rhs (old pattern does not recognize on powerpc). Patch has been bootstrapped and dejagnu tested on ppc- darwin and x86-darwin.

- Thanks, fariborz <fjahanian@apple.com>

ChangeLog:

2005-06-20  Roger Sayle  <roger@eyesopen.com>
2005-06-20  Fariborz Jahanian <fjahanian@apple.com>

        * combine.c (simplify_set): Simplify setting of CC register
        by removing redundant compare with 0 on RHS.


Attachment: fsf-patch-4149154.txt
Description: Text document

Attachment: altivec-nomfcr.c
Description: Binary data


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