[llvm-bugs] [Bug 45974] New: [X86] getFauxShuffleMask generates nodes on the fly

via llvm-bugs llvm-bugs at lists.llvm.org
Mon May 18 05:57:39 PDT 2020


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

            Bug ID: 45974
           Summary: [X86] getFauxShuffleMask generates nodes on the fly
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Backend: X86
          Assignee: unassignedbugs at nondot.org
          Reporter: llvm-dev at redking.me.uk
                CC: craig.topper at gmail.com, llvm-bugs at lists.llvm.org,
                    llvm-dev at redking.me.uk, spatel+llvm at rotateright.com

getFauxShuffleMask creates DAG nodes on the fly to help shuffle combines by
trying to return shuffle sources with the same width as the result+mask.

This causes a lot of issues with combines relying on hasOneUse tests (e.g.
SimplifyDemandedBits, load combining etc.), so really we need the shuffle
combiner to be able to handle shuffles with irregular sources so that can
remove all the DAG.getNode() from getFauxShuffleMask.

This might mean that we can remove combineX86ShuffleChainWithExtract as well.

-- 
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/20200518/a6de0e82/attachment.html>


More information about the llvm-bugs mailing list