1; RUN: llc < %s -mtriple=x86_64-linux -mattr=+sse4.1 -asm-verbose=0 | FileCheck %s 2; RUN: llc < %s -mtriple=x86_64-win32 -mattr=+sse4.1 -asm-verbose=0 | FileCheck %s -check-prefix=WIN64 3 4define <4 x i32> @test1(<4 x i32> %A, <4 x i32> %B) nounwind { 5; CHECK-LABEL: test1: 6; CHECK-NEXT: pmulld 7 8; WIN64-LABEL: test1: 9; WIN64-NEXT: movdqa (%rcx), %xmm0 10; WIN64-NEXT: pmulld (%rdx), %xmm0 11 %C = mul <4 x i32> %A, %B 12 ret <4 x i32> %C 13} 14 15define <4 x i32> @test1a(<4 x i32> %A, <4 x i32> *%Bp) nounwind { 16; CHECK-LABEL: test1a: 17; CHECK-NEXT: pmulld 18 19; WIN64-LABEL: test1a: 20; WIN64-NEXT: movdqa (%rcx), %xmm0 21; WIN64-NEXT: pmulld (%rdx), %xmm0 22 23 %B = load <4 x i32>, <4 x i32>* %Bp 24 %C = mul <4 x i32> %A, %B 25 ret <4 x i32> %C 26} 27