This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [MIPS] MADD issue
Richard Sandiford <richard@codesourcery.com> writes:
> I realise no-one else has spoken out in support of me, so perhaps
> I'm in a minority of one here. But it does seem to me that in the
> Tree-SSA world, it makes less sense to duplicate standard optabs
> in the backend purely for the reason of keeping DImode arithmetic
> around as DImode arithmetic for longer.
The main issue I know of is the RTL level loop optimizers (combine and
CSE can mostly work off of REG_EQUAL notes). If you define_expand
adddi3, they won't be able to handle loops using long long types.
Whether this matters in practice for real code, I don't know.
Certainly adddi3 and friends should not be straight define_insns, as
they used to be for MIPS. With the lower-subreg pass, they should be
either define_expand to individual insns or define_insn_and_split with
an unconditional split before reload.
Ian