This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: RFA: MIPS paired single support
At Fri, 20 Aug 2004 08:44:30 +0000 (UTC), "Richard Sandiford" wrote:
> + (define_insn "mips_recip1_s"
> + [(set (match_operand:SF 0 "register_operand" "=f")
> + (unspec:SF [(match_operand:SF 1 "register_operand" "f")]
> + UNSPEC_RECIP1_S))]
> + "TARGET_MIPS3D"
> + "recip1.s\t%0,%1"
> + [(set_attr "type" "frsqrt")
> + (set_attr "mode" "SF")])
>
> Wouldn't the new frdiv be more appropriate than frsqrt?
well, the compiler won't choose these automatically anyway... but
since these are meant to be even less resource-intensive (cycles,
pipeline, etc.) than recip.FMT, one would think they might use yet
another different type addribute.
> + {"paired-single", MASK_PAIRED_SINGLE, \
> + N_("Use paired-single floating point instructions")}, \
> + {"ips3d", MASK_MIPS3D, \
> + N_("Use MIPS-3D instructions")}, \
>
> You check:
>
> + if (TARGET_MIPS3D && (target_flags_explicit & MASK_PAIRED_SINGLE)
> + && !TARGET_PAIRED_SINGLE_FLOAT)
> + error ("-mips3d requires -mpaired-single");
>
> but there's no way for paired single operations to be turned off.
probably should be a way. 8-)
chris