[llvm-bugs] [Bug 42380] New: early-cse is triggering lint "call argument type mismatched callee parameter type"

via llvm-bugs llvm-bugs at lists.llvm.org
Tue Jun 25 00:56:44 PDT 2019


            Bug ID: 42380
           Summary: early-cse is triggering lint "call argument type
                    mismatched callee parameter type"
           Product: new-bugs
           Version: 8.0
          Hardware: PC
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: new bugs
          Assignee: unassignedbugs at nondot.org
          Reporter: pnkfelix at pnkfx.org
                CC: htmldeveloper at gmail.com, llvm-bugs at lists.llvm.org

Created attachment 22136
  --> https://bugs.llvm.org/attachment.cgi?id=22136&action=edit
.ll input to feed to -early-cse -lint passes.

The following .ll file when fed into the early-cse optimization, will cause the
lint pass to signal an error, "call argument type mismatched callee parameter

.ll file is attached; it is also available here:

This is spawned off of Rust bug https://github.com/rust-lang/rust/issues/48310

I do not know enough about the guarantees of the early-cse optimization nor of
the lint system to say whether this is definitively a bug in early-cse, or if
it is a bug in the lint. (One of my fellow Rust developers said it looked like
a bug in the lint, but that was, I think, based on their analysis of the .ll
file prior to LLVM's optimization passes.)

Steps to Reproduce:

1. Download .ll file, named `narrowed-48310.ll`
2. Run `opt -early-cse -lint narrowed-48310.ll`


% ./build/x86_64-unknown-linux-gnu/llvm/bin/opt  -early-cse  -lint -o /dev/null
Undefined behavior: Call argument type mismatches callee parameter type
  invoke void bitcast (void (%Bar*)*
to void ({}*)*)({}* align 1 %9)
          to label %bb3 unwind label %cleanup

(Note that above lint does not trigger without early-cse, as illustrated by the
below variant of the above command.)

% ./build/x86_64-unknown-linux-gnu/llvm/bin/opt  -lint -o /dev/null

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/20190625/c54f7a95/attachment.html>

More information about the llvm-bugs mailing list