[4.7-specific fixups for the pr12081-1 patch ] --- gcc-4.7.3/gcc/config/rs6000/rs6000.c.~1~ 2013-05-25 10:45:12.453139261 +0200 +++ gcc-4.7.3/gcc/config/rs6000/rs6000.c 2013-05-25 10:56:27.762683870 +0200 @@ -26013,7 +26013,7 @@ rs6000_emit_swdiv_high_precision (rtx ds enum machine_mode mode = GET_MODE (dst); rtx x0, e0, e1, y1, u0, v0; enum insn_code code = optab_handler (smul_optab, mode); - gen_2arg_fn_t gen_mul = (gen_2arg_fn_t) GEN_FCN (code); + gen_2arg_fn_t gen_mul = (gen_2arg_fn_t) GEN_FCN3 (code); rtx one = rs6000_load_constant_and_splat (mode, dconst1); gcc_assert (code != CODE_FOR_nothing); --- gcc-4.7.3/gcc/config/s390/s390.c.~1~ 2012-10-01 09:51:20.000000000 +0200 +++ gcc-4.7.3/gcc/config/s390/s390.c 2013-05-25 10:57:21.432411932 +0200 @@ -9198,16 +9198,16 @@ s390_expand_builtin (tree exp, rtx targe switch (arity) { case 0: - pat = GEN_FCN (icode) (target); + pat = GEN_FCN1 (icode) (target); break; case 1: if (nonvoid) - pat = GEN_FCN (icode) (target, op[0]); + pat = GEN_FCN2 (icode) (target, op[0]); else - pat = GEN_FCN (icode) (op[0]); + pat = GEN_FCN1 (icode) (op[0]); break; case 2: - pat = GEN_FCN (icode) (target, op[0], op[1]); + pat = GEN_FCN3 (icode) (target, op[0], op[1]); break; default: gcc_unreachable ();