[llvm-commits] [llvm] r147765 - /llvm/trunk/lib/Target/X86/X86InstrSSE.td

Craig Topper craig.topper at gmail.com
Mon Jan 9 09:44:09 PST 2012


When patterns are collapsed the ordering of predicate checks is maintained.
Not sure whether that's a feature or not, but it is what's making AVX2
broadcast instructions for integer vectors preferred over the FP versions.
Maybe some other cases too.

On Mon, Jan 9, 2012 at 9:36 AM, Jakob Stoklund Olesen <stoklund at 2pi.dk>wrote:

>
> On Jan 8, 2012, at 9:07 PM, Craig Topper wrote:
>
> > Author: ctopper
> > Date: Sun Jan  8 23:07:01 2012
> > New Revision: 147765
> >
> > URL: http://llvm.org/viewvc/llvm-project?rev=147765&view=rev
> > Log:
> > Move SSE2 logical operations PAND/POR/PXOR/PANDN above SSE1 logical
> operations ANDPS/ORPS/XORPS/ANDNPS. This fixes a pattern ordering issue
> that meant that the SSE2 instructions could never be directly selected
> since the SSE1 patterns would always match first. This is largely moot with
> the ExeDepsFix pass, but I'm trying to audit for all such ordering issues.
>
> Ordering?
>
> The order of patterns in .td files is not significant, AFAIK.
>
> /jakob
>
>


-- 
~Craig
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20120109/4cd8173d/attachment.html>


More information about the llvm-commits mailing list