[llvm-commits] PATCH: Fix broken DAGCombiner which creates illegal vector shuffles

Heikki Kultala hkultala at cs.tut.fi
Wed Mar 7 23:40:31 PST 2012


In current llvm-trunk there is a bug:
If vector shuffles are not supported by the architecture but are marked 
to be expanded into extracts and builds, the dag legalization does this 
expand, but the dag combine which is done after the legalization 
converts these extracts and builds back to shuffles. This results an 
Cannot select error, compilelation fails.

This patch adds a check which prevents this illegal combining if the 
architecture does not support shuffles.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: fix_shuffle_expand_combine.patch
Type: text/x-patch
Size: 764 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20120308/f08753b9/attachment.bin>


More information about the llvm-commits mailing list