I think the cost would be something like:
Index: rs6000.c
===================================================================
--- rs6000.c (revision 127484)
+++ rs6000.c (working copy)
@@ -20292,10 +20292,15 @@
*total += COSTS_N_INSNS (2);
return false;
+ case CTZ:
case FFS:
*total = COSTS_N_INSNS (4);
return false;
+ case POPCOUNT:
+ *total = COSTS_N_INSNS (3);
+ return false;
+
case NOT:
if (outer_code == AND || outer_code == IOR || outer_code == XOR)
{
@@ -20305,6 +20310,7 @@
/* FALLTHRU */
case AND:
+ case CLZ:
case IOR:
case XOR:
case ZERO_EXTRACT: