[LLVMbugs] [Bug 10489] New: [AVX] "cannot select" v8i32 = X86ISD::PALIGN error

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Tue Jul 26 02:04:09 PDT 2011


http://llvm.org/bugs/show_bug.cgi?id=10489

           Summary: [AVX] "cannot select" v8i32 = X86ISD::PALIGN error
           Product: new-bugs
           Version: trunk
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: matt at pharr.org
                CC: llvmbugs at cs.uiuc.edu


Created an attachment (id=6937)
 --> (http://llvm.org/bugs/attachment.cgi?id=6937)
test case

With top-of-tree, if you run:

% llc bug.ll -o /dev/null -mcpu=corei7-avx -mattr=+avx

The following error is generated:

LLVM ERROR: Cannot select: 0x7fd481043610: v8i32 = X86ISD::PALIGN
0x7fd481039110, 0x7fd481033210, 0x7fd481043510 [ID=83]
  0x7fd481039110: v8i32 = insert_subvector 0x7fd481039010, 0x7fd481043410,
0x7fd481033a10 [ID=82]
    0x7fd481039010: v8i32 = insert_subvector 0x7fd481033210, 0x7fd481039b10,
0x7fd481033610 [ID=81]
      0x7fd481033210: v8i32 = undef [ORD=5] [ID=4]
      0x7fd481039b10: v4i32 = X86ISD::PUNPCKLDQ 0x7fd481039910, 0x7fd481039a10
[ID=80]
        0x7fd481039910: v4i32 = X86ISD::PUNPCKLDQ 0x7fd481039210,
0x7fd481039410 [ID=77]
          0x7fd481039210: v4i32 = scalar_to_vector 0x7fd48103bc10 [ID=65]
            0x7fd48103bc10: i32 = add 0x7fd48103ff10, 0x7fd48103e510 [ID=57]
              0x7fd48103ff10: i32 = extract_vector_elt 0x7fd48103f410,
0x7fd481033d10 [ID=43]
                0x7fd48103f410: v4i32 = extract_subvector 0x7fd48103f310,
0x7fd481033610 [ID=30]
                  0x7fd48103f310: v8i32 = X86ISD::PALIGN 0x7fd48103ab10,
0x7fd481033210, 0x7fd48103f210 [ID=26]



                  0x7fd481033610: i32 = Constant<4> [ORD=4] [ID=3]
                0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
              0x7fd48103e510: i32 = extract_vector_elt 0x7fd481038b10,
0x7fd481033d10 [ID=35]
                0x7fd481038b10: v4i32 = extract_subvector 0x7fd48103ab10,
0x7fd481033610 [ID=28]
                  0x7fd48103ab10: v8i32 = bitcast 0x7fd48103aa10 [ID=25]

                  0x7fd481033610: i32 = Constant<4> [ORD=4] [ID=3]
                0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
          0x7fd481039410: v4i32 = scalar_to_vector 0x7fd48103cd10 [ID=73]
            0x7fd48103cd10: i32 = add 0x7fd48103fa10, 0x7fd48103e110 [ID=67]
              0x7fd48103fa10: i32 = extract_vector_elt 0x7fd48103f910,
0x7fd481033d10 [ID=59]
                0x7fd48103f910: v4i32 = vector_shuffle 0x7fd48103f410,
0x7fd48103dc10<2,u,u,u> [ID=45]
                  0x7fd48103f410: v4i32 = extract_subvector 0x7fd48103f310,
0x7fd481033610 [ID=30]


                  0x7fd48103dc10: v4i32 = undef [ID=12]
                0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
              0x7fd48103e110: i32 = extract_vector_elt 0x7fd48103e010,
0x7fd481033d10 [ID=51]
                0x7fd48103e010: v4i32 = vector_shuffle 0x7fd481038b10,
0x7fd48103dc10<2,u,u,u> [ID=37]
                  0x7fd481038b10: v4i32 = extract_subvector 0x7fd48103ab10,
0x7fd481033610 [ID=28]


                  0x7fd48103dc10: v4i32 = undef [ID=12]
                0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
        0x7fd481039a10: v4i32 = X86ISD::PUNPCKLDQ 0x7fd481039310,
0x7fd481039510 [ID=78]
          0x7fd481039310: v4i32 = scalar_to_vector 0x7fd48103c010 [ID=72]
            0x7fd48103c010: i32 = add 0x7fd48103fe10, 0x7fd48103e410 [ID=66]
              0x7fd48103fe10: i32 = extract_vector_elt 0x7fd48103fd10,
0x7fd481033d10 [ID=58]
                0x7fd48103fd10: v4i32 = vector_shuffle 0x7fd48103f410,
0x7fd48103dc10<1,u,u,u> [ID=44]
                  0x7fd48103f410: v4i32 = extract_subvector 0x7fd48103f310,
0x7fd481033610 [ID=30]


                  0x7fd48103dc10: v4i32 = undef [ID=12]
                0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
              0x7fd48103e410: i32 = extract_vector_elt 0x7fd48103e310,
0x7fd481033d10 [ID=50]
                0x7fd48103e310: v4i32 = vector_shuffle 0x7fd481038b10,
0x7fd48103dc10<1,u,u,u> [ID=36]
                  0x7fd481038b10: v4i32 = extract_subvector 0x7fd48103ab10,
0x7fd481033610 [ID=28]


                  0x7fd48103dc10: v4i32 = undef [ID=12]
                0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
          0x7fd481039510: v4i32 = scalar_to_vector 0x7fd48103d110 [ID=74]
            0x7fd48103d110: i32 = add 0x7fd48103f710, 0x7fd48103de10 [ID=68]
              0x7fd48103f710: i32 = extract_vector_elt 0x7fd48103f610,
0x7fd481033d10 [ID=60]
                0x7fd48103f610: v4i32 = vector_shuffle 0x7fd48103f410,
0x7fd48103dc10<3,u,u,u> [ID=46]
                  0x7fd48103f410: v4i32 = extract_subvector 0x7fd48103f310,
0x7fd481033610 [ID=30]


                  0x7fd48103dc10: v4i32 = undef [ID=12]
                0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
              0x7fd48103de10: i32 = extract_vector_elt 0x7fd48103dd10,
0x7fd481033d10 [ID=52]
                0x7fd48103dd10: v4i32 = vector_shuffle 0x7fd481038b10,
0x7fd48103dc10<3,u,u,u> [ID=38]
                  0x7fd481038b10: v4i32 = extract_subvector 0x7fd48103ab10,
0x7fd481033610 [ID=28]


                  0x7fd48103dc10: v4i32 = undef [ID=12]
                0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
      0x7fd481033610: i32 = Constant<4> [ORD=4] [ID=3]
    0x7fd481043410: v4i32 = X86ISD::PUNPCKLDQ 0x7fd481043210, 0x7fd481043310
[ID=79]
      0x7fd481043210: v4i32 = X86ISD::PUNPCKLDQ 0x7fd481039c10, 0x7fd481042d10
[ID=75]
        0x7fd481039c10: v4i32 = scalar_to_vector 0x7fd48103a610 [ID=61]
          0x7fd48103a610: i32 = add 0x7fd481040a10, 0x7fd48103f110 [ID=53]
            0x7fd481040a10: i32 = extract_vector_elt 0x7fd481040010,
0x7fd481033d10 [ID=39]
              0x7fd481040010: v4i32 = extract_subvector 0x7fd48103f310,
0x7fd481033a10 [ID=29]
                0x7fd48103f310: v8i32 = X86ISD::PALIGN 0x7fd48103ab10,
0x7fd481033210, 0x7fd48103f210 [ID=26]
                  0x7fd48103ab10: v8i32 = bitcast 0x7fd48103aa10 [ID=25]

                  0x7fd481033210: v8i32 = undef [ORD=5] [ID=4]
                  0x7fd48103f210: i8 = Constant<16> [ID=13]
                0x7fd481033a10: i32 = Constant<0> [ORD=4] [ID=2]
              0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
            0x7fd48103f110: i32 = extract_vector_elt 0x7fd48103e610,
0x7fd481033d10 [ID=31]
              0x7fd48103e610: v4i32 = extract_subvector 0x7fd48103ab10,
0x7fd481033a10 [ID=27]
                0x7fd48103ab10: v8i32 = bitcast 0x7fd48103aa10 [ID=25]
                  0x7fd48103aa10: v4i64 = and 0x7fd48103b510, 0x7fd481038910
[ID=24]


                0x7fd481033a10: i32 = Constant<0> [ORD=4] [ID=2]
              0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
        0x7fd481042d10: v4i32 = scalar_to_vector 0x7fd481035e10 [ID=70]
          0x7fd481035e10: i32 = add 0x7fd481040610, 0x7fd48103ed10 [ID=63]
            0x7fd481040610: i32 = extract_vector_elt 0x7fd481040510,
0x7fd481033d10 [ID=55]
              0x7fd481040510: v4i32 = vector_shuffle 0x7fd481040010,
0x7fd48103dc10<2,u,u,u> [ID=41]
                0x7fd481040010: v4i32 = extract_subvector 0x7fd48103f310,
0x7fd481033a10 [ID=29]
                  0x7fd48103f310: v8i32 = X86ISD::PALIGN 0x7fd48103ab10,
0x7fd481033210, 0x7fd48103f210 [ID=26]



                  0x7fd481033a10: i32 = Constant<0> [ORD=4] [ID=2]
                0x7fd48103dc10: v4i32 = undef [ID=12]
              0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
            0x7fd48103ed10: i32 = extract_vector_elt 0x7fd48103ec10,
0x7fd481033d10 [ID=48]
              0x7fd48103ec10: v4i32 = vector_shuffle 0x7fd48103e610,
0x7fd48103dc10<2,u,u,u> [ID=33]
                0x7fd48103e610: v4i32 = extract_subvector 0x7fd48103ab10,
0x7fd481033a10 [ID=27]
                  0x7fd48103ab10: v8i32 = bitcast 0x7fd48103aa10 [ID=25]

                  0x7fd481033a10: i32 = Constant<0> [ORD=4] [ID=2]
                0x7fd48103dc10: v4i32 = undef [ID=12]
              0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
      0x7fd481043310: v4i32 = X86ISD::PUNPCKLDQ 0x7fd481042c10, 0x7fd481042e10
[ID=76]
        0x7fd481042c10: v4i32 = scalar_to_vector 0x7fd48103a510 [ID=69]
          0x7fd48103a510: i32 = add 0x7fd481040910, 0x7fd48103f010 [ID=62]
            0x7fd481040910: i32 = extract_vector_elt 0x7fd481040810,
0x7fd481033d10 [ID=54]
              0x7fd481040810: v4i32 = vector_shuffle 0x7fd481040010,
0x7fd48103dc10<1,u,u,u> [ID=40]
                0x7fd481040010: v4i32 = extract_subvector 0x7fd48103f310,
0x7fd481033a10 [ID=29]
                  0x7fd48103f310: v8i32 = X86ISD::PALIGN 0x7fd48103ab10,
0x7fd481033210, 0x7fd48103f210 [ID=26]



                  0x7fd481033a10: i32 = Constant<0> [ORD=4] [ID=2]
                0x7fd48103dc10: v4i32 = undef [ID=12]
              0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
            0x7fd48103f010: i32 = extract_vector_elt 0x7fd48103ef10,
0x7fd481033d10 [ID=47]
              0x7fd48103ef10: v4i32 = vector_shuffle 0x7fd48103e610,
0x7fd48103dc10<1,u,u,u> [ID=32]
                0x7fd48103e610: v4i32 = extract_subvector 0x7fd48103ab10,
0x7fd481033a10 [ID=27]
                  0x7fd48103ab10: v8i32 = bitcast 0x7fd48103aa10 [ID=25]

                  0x7fd481033a10: i32 = Constant<0> [ORD=4] [ID=2]
                0x7fd48103dc10: v4i32 = undef [ID=12]
              0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
        0x7fd481042e10: v4i32 = scalar_to_vector 0x7fd48103b810 [ID=71]
          0x7fd48103b810: i32 = add 0x7fd481040310, 0x7fd48103e910 [ID=64]
            0x7fd481040310: i32 = extract_vector_elt 0x7fd481040210,
0x7fd481033d10 [ID=56]
              0x7fd481040210: v4i32 = vector_shuffle 0x7fd481040010,
0x7fd48103dc10<3,u,u,u> [ID=42]
                0x7fd481040010: v4i32 = extract_subvector 0x7fd48103f310,
0x7fd481033a10 [ID=29]
                  0x7fd48103f310: v8i32 = X86ISD::PALIGN 0x7fd48103ab10,
0x7fd481033210, 0x7fd48103f210 [ID=26]



                  0x7fd481033a10: i32 = Constant<0> [ORD=4] [ID=2]
                0x7fd48103dc10: v4i32 = undef [ID=12]
              0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
            0x7fd48103e910: i32 = extract_vector_elt 0x7fd48103e810,
0x7fd481033d10 [ID=49]
              0x7fd48103e810: v4i32 = vector_shuffle 0x7fd48103e610,
0x7fd48103dc10<3,u,u,u> [ID=34]
                0x7fd48103e610: v4i32 = extract_subvector 0x7fd48103ab10,
0x7fd481033a10 [ID=27]
                  0x7fd48103ab10: v8i32 = bitcast 0x7fd48103aa10 [ID=25]

                  0x7fd481033a10: i32 = Constant<0> [ORD=4] [ID=2]
                0x7fd48103dc10: v4i32 = undef [ID=12]
              0x7fd481033d10: i64 = Constant<0> [ORD=9] [ID=5]
    0x7fd481033a10: i32 = Constant<0> [ORD=4] [ID=2]
  0x7fd481033210: v8i32 = undef [ORD=5] [ID=4]
  0x7fd481043510: i8 = Constant<8> [ID=14]

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list