[llvm-bugs] [Bug 34052] New: [NewGVN/PredicateInfo] Assertion `isa<X>(Val) && "cast<Ty>() argument of incompatible type!"' failed.

via llvm-bugs llvm-bugs at lists.llvm.org
Thu Aug 3 11:51:53 PDT 2017


            Bug ID: 34052
           Summary: [NewGVN/PredicateInfo] Assertion `isa<X>(Val) &&
                    "cast<Ty>() argument of incompatible type!"' failed.
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Scalar Optimizations
          Assignee: unassignedbugs at nondot.org
          Reporter: davide at freebsd.org
                CC: dberlin at dberlin.org, joerg at NetBSD.org,
                    llvm-bugs at lists.llvm.org

Joerg ran a full package run on NetBSD (with NewGVN) and that resulted in a
series of crashes. This one is the first, in the objective-c runtime.

I reduced it to the following:

$ ./opt -newgvn tinky.ll
opt: ../include/llvm/Support/Casting.h:255: typename llvm::cast_retty<X,
Y*>::ret_type llvm::cast(Y*) [with X = llvm::Function; Y = llvm::Constant;
typename llvm::cast_retty<X, Y*>::ret_type = llvm::Function*]: Assertion
`isa<X>(Val) && "cast<Ty>() argument of incompatible type!"' failed.

$ cat tinky.ll
%0 = type opaque
%2 = type opaque

define void @patatino() {
  %call10 = call %0* bitcast (i8* (i8*, ...)* @objc_msgSend to %0* (i8*)*)(i8*
  %cmp11 = icmp eq %0* %call10, null
  br i1 %cmp11, label %if.end14, label %if.end14.thread

  %tmp = bitcast %0* %call10 to i8*
  ret void

  ret void

declare i8* @objc_msgSend(i8*, ...)
declare %2* @llvm.ssa.copy.p0s_s(%2* returned)

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/20170803/069a4813/attachment-0001.html>

More information about the llvm-bugs mailing list