XOP has the VPCMOV instruction that performs the common vector bit select operation OR( AND( SRC1, SRC3 ), AND( SRC2, ~SRC3 ) )
This patch adds tablegen pattern matching for this instruction.
Paths
| Differential D8841
[X86][XOP] Add support for the matching of the VPCMOV bit select instruction ClosedPublic Authored by RKSimon on Apr 6 2015, 8:06 AM.
Details Summary XOP has the VPCMOV instruction that performs the common vector bit select operation OR( AND( SRC1, SRC3 ), AND( SRC2, ~SRC3 ) ) This patch adds tablegen pattern matching for this instruction.
Diff Detail
Event TimelineRKSimon updated this object. Comment ActionsUpdated to include upgrade of intrinsics. Tested on bdver4 excavator hardware. spatel edited edge metadata. Comment ActionsLGTM - see comment about potentially reducing the test overhead.
This revision is now accepted and ready to land.Nov 2 2015, 11:53 AM
Closed by commit rL251975: [X86][XOP] Add support for the matching of the VPCMOV bit select instruction (authored by RKSimon). · Explain WhyNov 3 2015, 12:29 PM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 38357 lib/IR/AutoUpgrade.cpp
lib/Target/X86/X86InstrXOP.td
test/CodeGen/X86/xop-intrinsics-x86_64.ll
test/CodeGen/X86/xop-pcmov.ll
|
Does the 'avx2' run exercise a different path through the code? If not, the plain 'avx' run should be sufficient by itself?