------- Comment #7 from pinskia at gcc dot gnu dot org 2007-03-25 23:36 ------- Something like: (define_insn_and_split "altivec_dup<mode>" [(set (match_operand:V 0 "register_operand" "v") (vec_duplicate: (match_operand: 0 "r"))) (clobber (match_operand:V 3 "memory_operand" "=Z"))] "TARGET_ALTIVEC" "#" "&& reload_completed" ....
Which then will be generated from rs6000_expand_vector_init. I can write this if you want, it is just I cannot test this until Monday. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31334