[LLVMbugs] [Bug 21050] New: [x86, avx] LLVM ERROR: Cannot select: 0x3741970: v2f64 = X86ISD::VBROADCAST 0x373f750

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Tue Sep 23 17:28:47 PDT 2014


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

            Bug ID: 21050
           Summary: [x86,avx] LLVM ERROR: Cannot select: 0x3741970: v2f64
                    = X86ISD::VBROADCAST 0x373f750
           Product: clang
           Version: trunk
          Hardware: PC
                OS: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: LLVM Codegen
          Assignee: unassignedclangbugs at nondot.org
          Reporter: ahatanak at gmail.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

Created attachment 13081
  --> http://llvm.org/bugs/attachment.cgi?id=13081&action=edit
test case

I'm seeing this error when I compile the attached test case:

$ llc -mcpu=core-avx2 ~/test1.ll -o -
    .section    __TEXT,__text,regular,pure_instructions
    .macosx_version_min 10, 10
LLVM ERROR: Cannot select: 0x3741970: v2f64 = X86ISD::VBROADCAST 0x373f750
[ORD=2] [ID=14]
  0x373f750: f64,ch = load 0x3710100, 0x373f120, 0x373f540<LD8[ConstantPool]>
[ORD=2] [ID=12]
    0x373f120: i64 = X86ISD::WrapperRIP 0x373ef10 [ID=10]
      0x373ef10: i64 = TargetConstantPool<double -1.000000e+00> 0 [ID=8]
    0x373f540: i64 = undef [ID=2]
In function: main


It looks like it's trying to match the pattern at X86InstrSSE.td:5294, but it
fails because the loadf64 node has multiple uses:

  def : Pat<(v2f64 (X86VBroadcast (loadf64 addr:$src))),

If comment out the call to @foo1, llc runs to completion.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20140924/b67ee63a/attachment.html>


More information about the llvm-bugs mailing list