[LLVMbugs] [Bug 18573] New: gather/maskload intrinsics are not handled by GVN and DSE (missing aliasing info?)

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Tue Jan 21 07:50:48 PST 2014


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

            Bug ID: 18573
           Summary: gather/maskload intrinsics are not handled by GVN and
                    DSE (missing aliasing info?)
           Product: tools
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: opt
          Assignee: unassignedbugs at nondot.org
          Reporter: ili.filippov at gmail.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

Created attachment 11916
  --> http://llvm.org/bugs/attachment.cgi?id=11916&action=edit
Reproducer

The problem is reproducible with LLVM trunk. (I'm using Linux).

Reproducer is attached.
To reproduce:
opt -O2 reproducer.ll > opt_rep.bc

The issue is that the following is not optimized:
1. Redundant gather call is not eliminated (I assume that GVN should handle
this).
2. Redundant store instruction between gathers is not eliminated (DSE should
handle this).

It seems that it happens because opt can't handle intrinsics' calls
effectively.
If we change "gather" instructions to normal loads OR change "maskload"
instruction to normal load then the transformations do happen.

-- 
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/20140121/fd01dffe/attachment.html>


More information about the llvm-bugs mailing list