Re: Help with define_insn

2011-02-03 Thread Ira Rosen
On 1 February 2011 16:23, Ulrich Weigand wrote: >> >> Are they actually broken  ? I'd be worried if that were the case. My >> understanding is that the >> existing ones are being used for the Neon intrinsics / builtins. > > Yes, they're broken, for the reason Ira originally points out: Right. Th

Re: Help with define_insn

2011-02-01 Thread Ulrich Weigand
Ramana Radhakrishnan wrote: > On 1 February 2011 14:01, Ulrich Weigand wrote: > > - You define new patterns neon_vzip_interleave etc. instead of using > >  the existing neon_vzip_internal etc., presumably because the > >  existing patterns are broken.  But because they are actually broken, > >  t

Re: Help with define_insn

2011-02-01 Thread Ramana Radhakrishnan
On 1 February 2011 14:01, Ulrich Weigand wrote: > Ira Rosen wrote: > >> After testing only with the vectorizer testsuite (which contains at >> least 30 tests for strided accesses), I'd appreciate comments on the >> patch before I start full testing (cross testing with qemu doesn't >> work so well

Re: Help with define_insn

2011-02-01 Thread Ulrich Weigand
Ira Rosen wrote: > After testing only with the vectorizer testsuite (which contains at > least 30 tests for strided accesses), I'd appreciate comments on the > patch before I start full testing (cross testing with qemu doesn't > work so well for NEON). I cannot really comment on the ARM semantic

Re: Help with define_insn

2011-02-01 Thread Ira Rosen
On 1 February 2011 11:47, Ira Rosen wrote: > Thanks a lot! It seems to work. It fixed the problem and I am now > testing the patch on the rest of the vectorizer testsuite. After testing only with the vectorizer testsuite (which contains at least 30 tests for strided accesses), I'd appreciate com

Re: Help with define_insn

2011-02-01 Thread Ira Rosen
On 31 January 2011 16:53, Ulrich Weigand wrote: > Ira Rosen wrote: > >> (define_insn "neon_vzip_internal" >>   [(set (match_operand:VDQW 0 "s_register_operand" "=w") >>        (unspec:VDQW [(match_operand:VDQW 1 "s_register_operand" "0")] >>                     UNSPEC_VZIP1)) >>    (set (match_op

Re: Help with define_insn

2011-01-31 Thread Ulrich Weigand
Ira Rosen wrote: > (define_insn "neon_vzip_internal" > [(set (match_operand:VDQW 0 "s_register_operand" "=w") >(unspec:VDQW [(match_operand:VDQW 1 "s_register_operand" "0")] > UNSPEC_VZIP1)) >(set (match_operand:VDQW 2 "s_register_operand" "=w") > (unspec

Re: Help with define_insn

2011-01-31 Thread Tejas Belagod
On Mon, 2011-01-31 at 16:02 +0200, Ira Rosen wrote: > Hi, > > I am trying to implement interleave_high/low and extract_even/odd > using vzip and vuzp instructions. I am attaching a patch that attempts > to do that. It uses already existing neon_vzip_internal. The > problem with it is that it does