rs6000.md (popcount<mode>2): Rewrite.
authorRoger Sayle <roger@eyesopen.com>
Tue, 6 Feb 2007 17:29:44 +0000 (17:29 +0000)
committerRoger Sayle <sayle@gcc.gnu.org>
Tue, 6 Feb 2007 17:29:44 +0000 (17:29 +0000)
commit565ef4bafb28d3b00ac62cc7b92f7a53f79df4b4
tree3b0a683627d420dedb289b8f502bb2e97bd39aa2
parent7e0c3f57e0bd40144eb662c221e284f3bbf1873c
rs6000.md (popcount<mode>2): Rewrite.

* config/rs6000/rs6000.md (popcount<mode>2): Rewrite.
(parity<mode>2): New define_expand using rs6000_emit_parity.
* config/rs6000/rs6000.c (rs6000_emit_popcount,
rs6000_emit_parity): New functions.
* config/rs6000/rs6000-protos.h (rs6000_emit_popcount,
rs6000_emit_parity): Prototype here.

* gcc.target/powerpc/popcount-1.c: New test case.
* gcc.target/powerpc/parity-1.c: Likewise.

From-SVN: r121653
gcc/ChangeLog
gcc/config/rs6000/rs6000-protos.h
gcc/config/rs6000/rs6000.c
gcc/config/rs6000/rs6000.md
gcc/testsuite/gcc.target/powerpc/parity-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/powerpc/popcount-1.c [new file with mode: 0644]