Re: [PATCH 02/10] mips: Implement vec_perm_const.

2011-12-22 Thread Richard Henderson
On 12/22/2011 01:16 PM, Richard Sandiford wrote: >> That's just re-aligning the comment columns so that V16QI fits. > > OK, but there wasn't a V16QI comment that I could see. Heh. It was supposed to be on ... +/* Double-sized vector modes for vec_concat. */ +VECTOR_MODE (INT, QI, 16)

Re: [PATCH 02/10] mips: Implement vec_perm_const.

2011-12-22 Thread Richard Sandiford
Richard Henderson writes: > On 12/22/2011 11:33 AM, Richard Sandiford wrote: >> was it simply the mode punning from HI to V4HI that stops us from >> using the loongson_pinsr_N insns? E.g. something like: > > Mostly... > >> I realise this isn't exactly simpler in code terms, but it avoids the >> u

Re: [PATCH 02/10] mips: Implement vec_perm_const.

2011-12-22 Thread Richard Henderson
On 12/22/2011 11:33 AM, Richard Sandiford wrote: > was it simply the mode punning from HI to V4HI that stops us from > using the loongson_pinsr_N insns? E.g. something like: Mostly... > I realise this isn't exactly simpler in code terms, but it avoids the > unspec and avoids the dual mode on mat

Re: [PATCH 02/10] mips: Implement vec_perm_const.

2011-12-22 Thread Richard Sandiford
Looks good, but with this: Richard Henderson writes: > +(define_insn "*vec_setv4hi" > + [(set (match_operand:V4HI 0 "register_operand" "=f") > + (unspec:V4HI [(match_operand:V4HI 1 "register_operand" "f") > + (match_operand:SI 2 "register_operand" "f") > +

[PATCH 02/10] mips: Implement vec_perm_const.

2011-12-21 Thread Richard Henderson
--- gcc/config/mips/loongson.h |4 +- gcc/config/mips/loongson.md| 200 ++- gcc/config/mips/mips-modes.def | 12 ++- gcc/config/mips/mips-protos.h |1 + gcc/config/mips/mips-ps-3d.md | 225 +-- gcc/config/mip