+2019-07-06 Richard Sandiford <richard.sandiford@arm.com>
+
+ * config/gcn/gcn-valu.md
+ (vcond<VEC_1REG_MODE:mode><VEC_1REG_ALT:mode>): Use
+ gen_vec_cmp<VEC_1REG_ALT:mode>di rather than (implicitly)
+ gen_vec_cmp<VEC_1REG_MODE:mode>di. Explicitly use
+ gen_vcond_mask_<VEC_1REG_MODE:mode>di.
+ (vcond<VEC_1REG_MODE:mode><VEC_1REG_ALT:mode>_exec): Likewise,
+ but using the _exec comparison patterns.
+ (vcondu<VEC_1REG_INT_MODE:mode><VEC_1REG_INT_ALT:mode>): Use
+ gen_vec_cmp<VEC_1REG_INT_ALT:mode>di rather than (implicitly)
+ gen_vec_cmp<VEC_1REG_INT_MODE:mode>di. Explicitly use
+ gen_vcond_mask_<VEC_1REG_INT_MODE:mode>di.
+ (vcondu<VEC_1REG_INT_MODE:mode><VEC_1REG_INT_ALT:mode>_exec): Likewise,
+ but using the _exec comparison patterns.
+
2019-07-06 Richard Sandiford <richard.sandiford@arm.com>
* config/arm/sync.md
""
{
rtx tmp = gen_reg_rtx (DImode);
- emit_insn (gen_vec_cmp<mode>di (tmp, operands[3], operands[4],
- operands[5]));
- emit_insn (gen_vcond_mask_<mode>di (operands[0], operands[1], operands[2],
- tmp));
+ emit_insn (gen_vec_cmp<VEC_1REG_ALT:mode>di
+ (tmp, operands[3], operands[4], operands[5]));
+ emit_insn (gen_vcond_mask_<VEC_1REG_MODE:mode>di
+ (operands[0], operands[1], operands[2], tmp));
DONE;
})
""
{
rtx tmp = gen_reg_rtx (DImode);
- emit_insn (gen_vec_cmp<mode>di_exec (tmp, operands[3], operands[4],
- operands[5], operands[6]));
- emit_insn (gen_vcond_mask_<mode>di (operands[0], operands[1], operands[2],
- tmp));
+ emit_insn (gen_vec_cmp<VEC_1REG_ALT:mode>di_exec
+ (tmp, operands[3], operands[4], operands[5], operands[6]));
+ emit_insn (gen_vcond_mask_<VEC_1REG_MODE:mode>di
+ (operands[0], operands[1], operands[2], tmp));
DONE;
})
""
{
rtx tmp = gen_reg_rtx (DImode);
- emit_insn (gen_vec_cmp<mode>di (tmp, operands[3], operands[4],
- operands[5]));
- emit_insn (gen_vcond_mask_<mode>di (operands[0], operands[1], operands[2],
- tmp));
+ emit_insn (gen_vec_cmp<VEC_1REG_INT_ALT:mode>di
+ (tmp, operands[3], operands[4], operands[5]));
+ emit_insn (gen_vcond_mask_<VEC_1REG_INT_MODE:mode>di
+ (operands[0], operands[1], operands[2], tmp));
DONE;
})
""
{
rtx tmp = gen_reg_rtx (DImode);
- emit_insn (gen_vec_cmp<mode>di_exec (tmp, operands[3], operands[4],
- operands[5], operands[6]));
- emit_insn (gen_vcond_mask_<mode>di (operands[0], operands[1], operands[2],
- tmp));
+ emit_insn (gen_vec_cmp<VEC_1REG_INT_ALT:mode>di_exec
+ (tmp, operands[3], operands[4], operands[5], operands[6]));
+ emit_insn (gen_vcond_mask_<VEC_1REG_INT_MODE:mode>di
+ (operands[0], operands[1], operands[2], tmp));
DONE;
})