use PSHUFD for longlong-2 broadcast when dst != src to avoid a %copy

db4
Joe Groff 2009-09-28 12:04:08 -05:00
parent 7520da41cc
commit 01f526ff28
1 changed files with 5 additions and 2 deletions

View File

@ -596,8 +596,11 @@ M:: x86 %broadcast-vector ( dst src rep -- )
dst src MOVDDUP
] }
{ longlong-2-rep [
dst src longlong-2-rep %copy
dst dst PUNPCKLQDQ
dst src = [
dst dst PUNPCKLQDQ
] [
dst src { 0 1 0 1 } PSHUFD
] if
] }
{ int-4-rep [ dst src { 0 0 0 0 } PSHUFD ] }
{ short-8-rep [