[llvm-bugs] [Bug 42405] New: [ARM] SCE optimization pass hoisting DIV operation outside of is-else BB as a speculative execution

via llvm-bugs llvm-bugs at lists.llvm.org
Wed Jun 26 03:44:55 PDT 2019


https://bugs.llvm.org/show_bug.cgi?id=42405

            Bug ID: 42405
           Summary: [ARM] SCE optimization pass hoisting DIV operation
                    outside of is-else BB as a speculative execution
           Product: tools
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: llc
          Assignee: unassignedbugs at nondot.org
          Reporter: ayman.musa at intel.com
                CC: llvm-bugs at lists.llvm.org

Created attachment 22144
  --> https://bugs.llvm.org/attachment.cgi?id=22144&action=edit
reproducer mir file

Attached is an MIR test (reproducer.mir) that shows a case where the original
sequence performs the DIV operation only if the divisor is not 0. But after
running MachineCSE pass we can see that the DIV was hoisted outside of the
if-else BBs, what would result in an integer division by zero.

The command line for running the pass is:
llc -mtriple=aarch64-none-linux-gnu -run-pass=machine-cse -asm-verbose=1
-verify-machineinstrs reproducer.mir -o after-pass

Most likely that this bug was introduced in: https://reviews.llvm.org/rL362901.
Owner of the change is already investigating the issue.

-- 
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/20190626/b82ff7dd/attachment.html>


More information about the llvm-bugs mailing list