1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=x86-64 -mtriple=x86_64-apple-darwin -mcpu=skx --show-mc-encoding | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Workerdefine void @f256(<8 x float> %A, <8 x float> %AA, i8* %B, <4 x double> %C, <4 x double> %CC, i32 %D, <4 x i64> %E, <4 x i64> %EE) { 4*9880d681SAndroid Build Coastguard Worker; CHECK: vmovntps %ymm{{.*}} ## encoding: [0x62 5*9880d681SAndroid Build Coastguard Worker %cast = bitcast i8* %B to <8 x float>* 6*9880d681SAndroid Build Coastguard Worker %A2 = fadd <8 x float> %A, %AA 7*9880d681SAndroid Build Coastguard Worker store <8 x float> %A2, <8 x float>* %cast, align 64, !nontemporal !0 8*9880d681SAndroid Build Coastguard Worker; CHECK: vmovntdq %ymm{{.*}} ## encoding: [0x62 9*9880d681SAndroid Build Coastguard Worker %cast1 = bitcast i8* %B to <4 x i64>* 10*9880d681SAndroid Build Coastguard Worker %E2 = add <4 x i64> %E, %EE 11*9880d681SAndroid Build Coastguard Worker store <4 x i64> %E2, <4 x i64>* %cast1, align 64, !nontemporal !0 12*9880d681SAndroid Build Coastguard Worker; CHECK: vmovntpd %ymm{{.*}} ## encoding: [0x62 13*9880d681SAndroid Build Coastguard Worker %cast2 = bitcast i8* %B to <4 x double>* 14*9880d681SAndroid Build Coastguard Worker %C2 = fadd <4 x double> %C, %CC 15*9880d681SAndroid Build Coastguard Worker store <4 x double> %C2, <4 x double>* %cast2, align 64, !nontemporal !0 16*9880d681SAndroid Build Coastguard Worker ret void 17*9880d681SAndroid Build Coastguard Worker} 18*9880d681SAndroid Build Coastguard Worker 19*9880d681SAndroid Build Coastguard Workerdefine void @f128(<4 x float> %A, <4 x float> %AA, i8* %B, <2 x double> %C, <2 x double> %CC, i32 %D, <2 x i64> %E, <2 x i64> %EE) { 20*9880d681SAndroid Build Coastguard Worker; CHECK: vmovntps %xmm{{.*}} ## encoding: [0x62 21*9880d681SAndroid Build Coastguard Worker %cast = bitcast i8* %B to <4 x float>* 22*9880d681SAndroid Build Coastguard Worker %A2 = fadd <4 x float> %A, %AA 23*9880d681SAndroid Build Coastguard Worker store <4 x float> %A2, <4 x float>* %cast, align 64, !nontemporal !0 24*9880d681SAndroid Build Coastguard Worker; CHECK: vmovntdq %xmm{{.*}} ## encoding: [0x62 25*9880d681SAndroid Build Coastguard Worker %cast1 = bitcast i8* %B to <2 x i64>* 26*9880d681SAndroid Build Coastguard Worker %E2 = add <2 x i64> %E, %EE 27*9880d681SAndroid Build Coastguard Worker store <2 x i64> %E2, <2 x i64>* %cast1, align 64, !nontemporal !0 28*9880d681SAndroid Build Coastguard Worker; CHECK: vmovntpd %xmm{{.*}} ## encoding: [0x62 29*9880d681SAndroid Build Coastguard Worker %cast2 = bitcast i8* %B to <2 x double>* 30*9880d681SAndroid Build Coastguard Worker %C2 = fadd <2 x double> %C, %CC 31*9880d681SAndroid Build Coastguard Worker store <2 x double> %C2, <2 x double>* %cast2, align 64, !nontemporal !0 32*9880d681SAndroid Build Coastguard Worker ret void 33*9880d681SAndroid Build Coastguard Worker} 34*9880d681SAndroid Build Coastguard Worker!0 = !{i32 1} 35