This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/50813] New: gcc.dg/torture/vshuf-{v4di,v8si}.c fail on AVX target


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50813

             Bug #: 50813
           Summary: gcc.dg/torture/vshuf-{v4di,v8si}.c fail on AVX target
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: ubizjak@gmail.com
                CC: jakub@gcc.gnu.org, rth@gcc.gnu.org
            Target: x86-avx


Recent failure on AVX targets [1].

These two testcases try to generate avx2_permv2ti insn, which is disabled on
non-AVX2 targets:

(define_insn "avx2_permv2ti"
  [(set (match_operand:V4DI 0 "register_operand" "=x")
    (unspec:V4DI
      [(match_operand:V4DI 1 "register_operand" "x")
       (match_operand:V4DI 2 "nonimmediate_operand" "xm")
       (match_operand:SI 3 "const_0_to_255_operand" "n")]
      UNSPEC_VPERMTI))]
  "TARGET_AVX2"
  "vperm2i128\t{%3, %2, %1, %0|%0, %1, %2, %3}"
  [(set_attr "type" "sselog")
   (set_attr "prefix" "vex")
   (set_attr "mode" "OI")])

The pattern is generated through ix86_vectorize_builtin_vec_perm_ok via:

Breakpoint 1, gen_avx2_permv2ti (operand0=0x7ffff15862e0, 
    operand1=0x7ffff15862a0, operand2=0x7ffff15862c0, operand3=0x7ffff1997670)
    at insn-emit.c:14480
14480    {
(gdb) bt
#0  gen_avx2_permv2ti (operand0=0x7ffff15862e0, operand1=0x7ffff15862a0, 
    operand2=0x7ffff15862c0, operand3=0x7ffff1997670) at insn-emit.c:14480
#1  0x0000000000adca70 in expand_vec_perm_even_odd_1 (d=0x7fffffffdda0, odd=0)
    at /home/uros/gcc-svn/trunk/gcc/config/i386/i386.c:36132
#2  0x0000000000adcdda in expand_vec_perm_even_odd (d=0x7fffffffdda0)
    at /home/uros/gcc-svn/trunk/gcc/config/i386/i386.c:36201
#3  0x0000000000add743 in ix86_expand_vec_perm_builtin_1 (d=0x7fffffffdda0)
    at /home/uros/gcc-svn/trunk/gcc/config/i386/i386.c:36456
#4  0x0000000000adecdc in ix86_vectorize_builtin_vec_perm_ok (
    vec_type=0x7ffff1ac65e8, mask=0x7ffff1b132a0)
    at /home/uros/gcc-svn/trunk/gcc/config/i386/i386.c:36776
#5  0x00000000007c89a3 in can_vec_perm_expr_p (type=0x7ffff1ac65e8, 
    sel=0x7ffff1b132a0) at /home/uros/gcc-svn/trunk/gcc/optabs.c:6717

[1] http://gcc.gnu.org/ml/gcc-testresults/2011-10/msg02319.html


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]