]> granicus.if.org Git - llvm/commit
DAG: Allow creating extract_vector_elt post-legalize
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Thu, 7 Sep 2017 17:24:43 +0000 (17:24 +0000)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Thu, 7 Sep 2017 17:24:43 +0000 (17:24 +0000)
commite46354d6fadf2b44773bb5972ac07b9b482f48fc
tree70d21a95770302825942ee3b310fc85bfd691256
parent3964b8bfc866bb2c14ef0ab7ff49cc8d62157ee7
DAG: Allow creating extract_vector_elt post-legalize

Fixes some combine issues for AMDGPU where we weren't
getting the many extract_vector_elt combines expected
in a future patch.

This should really be checking isOperationLegalOrCustom on
the extract. That improves a number of x86 lit tests, but
a few get stuck in an infinite loop from one place
where a similar looking extract is created. I have a
different workaround in the backend for that which
keeps many of those improvements, but also adds a few
regressions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@312730 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/SelectionDAG/DAGCombiner.cpp