emit_insn (gen_vec_widen_umult_even_v16qi (ve, operands[1], operands[2]));
emit_insn (gen_vec_widen_umult_odd_v16qi (vo, operands[1], operands[2]));
- emit_insn (gen_altivec_vmrghh (operands[0], ve, vo));
+ if (BYTES_BIG_ENDIAN)
+ emit_insn (gen_altivec_vmrghh (operands[0], ve, vo));
+ else
+ emit_insn (gen_altivec_vmrghh (operands[0], vo, ve));
DONE;
}")
emit_insn (gen_vec_widen_umult_even_v16qi (ve, operands[1], operands[2]));
emit_insn (gen_vec_widen_umult_odd_v16qi (vo, operands[1], operands[2]));
- emit_insn (gen_altivec_vmrglh (operands[0], ve, vo));
+ if (BYTES_BIG_ENDIAN)
+ emit_insn (gen_altivec_vmrglh (operands[0], ve, vo));
+ else
+ emit_insn (gen_altivec_vmrglh (operands[0], vo, ve));
DONE;
}")
emit_insn (gen_vec_widen_smult_even_v16qi (ve, operands[1], operands[2]));
emit_insn (gen_vec_widen_smult_odd_v16qi (vo, operands[1], operands[2]));
- emit_insn (gen_altivec_vmrghh (operands[0], ve, vo));
+ if (BYTES_BIG_ENDIAN)
+ emit_insn (gen_altivec_vmrghh (operands[0], ve, vo));
+ else
+ emit_insn (gen_altivec_vmrghh (operands[0], vo, ve));
DONE;
}")
emit_insn (gen_vec_widen_smult_even_v16qi (ve, operands[1], operands[2]));
emit_insn (gen_vec_widen_smult_odd_v16qi (vo, operands[1], operands[2]));
- emit_insn (gen_altivec_vmrglh (operands[0], ve, vo));
+ if (BYTES_BIG_ENDIAN)
+ emit_insn (gen_altivec_vmrglh (operands[0], ve, vo));
+ else
+ emit_insn (gen_altivec_vmrglh (operands[0], vo, ve));
DONE;
}")
emit_insn (gen_vec_widen_umult_even_v8hi (ve, operands[1], operands[2]));
emit_insn (gen_vec_widen_umult_odd_v8hi (vo, operands[1], operands[2]));
- emit_insn (gen_altivec_vmrghw (operands[0], ve, vo));
+ if (BYTES_BIG_ENDIAN)
+ emit_insn (gen_altivec_vmrghw (operands[0], ve, vo));
+ else
+ emit_insn (gen_altivec_vmrghw (operands[0], vo, ve));
DONE;
}")
emit_insn (gen_vec_widen_umult_even_v8hi (ve, operands[1], operands[2]));
emit_insn (gen_vec_widen_umult_odd_v8hi (vo, operands[1], operands[2]));
- emit_insn (gen_altivec_vmrglw (operands[0], ve, vo));
+ if (BYTES_BIG_ENDIAN)
+ emit_insn (gen_altivec_vmrglw (operands[0], ve, vo));
+ else
+ emit_insn (gen_altivec_vmrglw (operands[0], vo, ve));
DONE;
}")
emit_insn (gen_vec_widen_smult_even_v8hi (ve, operands[1], operands[2]));
emit_insn (gen_vec_widen_smult_odd_v8hi (vo, operands[1], operands[2]));
- emit_insn (gen_altivec_vmrghw (operands[0], ve, vo));
+ if (BYTES_BIG_ENDIAN)
+ emit_insn (gen_altivec_vmrghw (operands[0], ve, vo));
+ else
+ emit_insn (gen_altivec_vmrghw (operands[0], vo, ve));
DONE;
}")
emit_insn (gen_vec_widen_smult_even_v8hi (ve, operands[1], operands[2]));
emit_insn (gen_vec_widen_smult_odd_v8hi (vo, operands[1], operands[2]));
- emit_insn (gen_altivec_vmrglw (operands[0], ve, vo));
+ if (BYTES_BIG_ENDIAN)
+ emit_insn (gen_altivec_vmrglw (operands[0], ve, vo));
+ else
+ emit_insn (gen_altivec_vmrglw (operands[0], vo, ve));
DONE;
}")