r179628 - in /trunk/gcc: ChangeLog config/sparc...
davem@gcc.gnu.org
davem@gcc.gnu.org
Thu Oct 6 19:15:00 GMT 2011
Author: davem
Date: Thu Oct 6 19:15:39 2011
New Revision: 179628
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=179628
Log:
Correct errors in sparc SImode popcount/clz patterns when 64-bit.
* config/sparc/sparc.md (popcount<mode>2, clz<mode>2): Split up into...
(popcountdi2, popcountsi2, clzdi2, clzsi2): Explicit expanders, in the
SI mode 64-bit code gen case explicitly zero-extend and truncate.
(*popcount<mode>_sp64): Split up into...
(*popcountdi_sp64, *popcountsi_64): Explicit instantiations, and in the
SImode case use truncate.
(*clzsi_sp64): Rewrite to use truncate, and let the expander emit the
subtract so the compiler can optimize it.
(SIDI): Remove unused mode iterator.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/sparc/sparc.md
More information about the Gcc-cvs
mailing list