diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b8446a6c749..78e00e9640e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2014-06-26 Bill Schmidt + + PR target/61542 + * config/rs6000/vsx.md (vsx_extract_v4sf): Fix bug with element + extraction other than index 3. + 2014-06-26 Teresa Johnson * c-family/c-common.h (get_dump_info): Declare. diff --git a/gcc/config/rs6000/vsx.md b/gcc/config/rs6000/vsx.md index 5083466c81c..6dde79988f8 100644 --- a/gcc/config/rs6000/vsx.md +++ b/gcc/config/rs6000/vsx.md @@ -1667,7 +1667,7 @@ { if (GET_CODE (op3) == SCRATCH) op3 = gen_reg_rtx (V4SFmode); - emit_insn (gen_vsx_xxsldwi_v4sf (op3, op1, op1, op2)); + emit_insn (gen_vsx_xxsldwi_v4sf (op3, op1, op1, GEN_INT (ele))); tmp = op3; } emit_insn (gen_vsx_xscvspdp_scalar2 (op0, tmp));