1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py 2 3; RUN: llc < %s -mtriple=x86_64-pc-linux | FileCheck %s --check-prefix=X64 4; RUN: llc < %s -mtriple=i386-pc-linux | FileCheck %s --check-prefix=X86 5 6%struct.s = type { [100 x i32] } 7 8define void @f(ptr nocapture %s) #0 { 9; X64-LABEL: f: 10; X64: # %bb.0: # %entry 11; X64-NEXT: xorps %xmm0, %xmm0 12; X64-NEXT: movups %xmm0, 48(%rdi) 13; X64-NEXT: movups %xmm0, 32(%rdi) 14; X64-NEXT: movups %xmm0, 16(%rdi) 15; X64-NEXT: movups %xmm0, (%rdi) 16; X64-NEXT: retq 17; 18; X86-LABEL: f: 19; X86: # %bb.0: # %entry 20; X86-NEXT: movl {{[0-9]+}}(%esp), %eax 21; X86-NEXT: xorps %xmm0, %xmm0 22; X86-NEXT: movups %xmm0, 48(%eax) 23; X86-NEXT: movups %xmm0, 32(%eax) 24; X86-NEXT: movups %xmm0, 16(%eax) 25; X86-NEXT: movups %xmm0, (%eax) 26; X86-NEXT: retl 27entry: 28 call void @llvm.memset.p0.i32(ptr noundef nonnull align 4 dereferenceable(64) %s, i8 0, i32 64, i1 false) 29 ret void 30} 31 32declare void @llvm.memset.p0.i32(ptr nocapture writeonly, i8, i32, i1 immarg) 33 34attributes #0 = { "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" } 35