{"push_id":3179729203,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"7f753722162fc90bd37f1680e09ffe1d9c9ddcb9","before":"40b2c31e67d0f3b324ddebfc024b85d1ac6a3825","commits":[{"sha":"7f753722162fc90bd37f1680e09ffe1d9c9ddcb9","author":{"name":"Sanjay Patel","email":"4a8dfeb3a1c6b90c15fd5a5a91e8e25ea46ffe0b@rotateright.com"},"message":"[DAGCombiner][x86] scalarize binop followed by extractelement\n\nAs noted in PR39973 and D55558:\nhttps://bugs.llvm.org/show_bug.cgi?id=39973\n...this is a partial implementation of a fold that we do as an IR canonicalization in instcombine:\n\n// extelt (binop X, Y), Index --> binop (extelt X, Index), (extelt Y, Index)\n\nWe want to have this in the DAG too because as we can see in some of the test diffs (reductions), \nthe pattern may not be visible in IR.\n\nGiven that this is already an IR canonicalization, any backend that would prefer a vector op over \na scalar op is expected to already have the reverse transform in DAG lowering (not sure if that's\na realistic expectation though). The transform is limited with a TLI hook because there's an\nexisting transform in CodeGenPrepare that tries to do the opposite transform.\n\nDifferential Revision: https://reviews.llvm.org/D55722\n\n\ngit-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@350354 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/llvm-mirror/llvm/commits/7f753722162fc90bd37f1680e09ffe1d9c9ddcb9"}]}
{"actor":{"display_login":"dtzWill"}}