[llvm-bugs] [Bug 32136] New: Copy Elision code produces assertion failure for i1 parameters

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Mar 3 16:41:14 PST 2017


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

            Bug ID: 32136
           Summary: Copy Elision code produces assertion failure for i1
                    parameters
           Product: libraries
           Version: 4.0
          Hardware: PC
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Common Code Generator Code
          Assignee: unassignedbugs at nondot.org
          Reporter: matze at braunis.de
                CC: llvm-bugs at lists.llvm.org

Swift triggers an assert in the copy elision code now. We believe this to be
cause by i1 parameters. I was able to craft a small reproducer:

target triple = "x86_64-apple-macosx"

@g = common global i8* null, align 8

define void @foo(i32 %a0, i32 %a1, i32 %a2, i32 %a3, i32 %a4, i32 %a5, i1 %a6)
{
  %tmp = alloca i1, align 4
  store i1 %a6, i1* %tmp, align 4
  %ptr = bitcast i1* %tmp to i8*
  store i8* %ptr, i8** @g, align 8
  ret void
}

-- 
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/20170304/795ea968/attachment.html>


More information about the llvm-bugs mailing list