; RUN: llvm-as < %s | llc -march=x86 -mtriple=i686-pc-linux-gnu | grep movs | count 1 @A = global [32 x i32] zeroinitializer @B = global [32 x i32] zeroinitializer declare void @llvm.memcpy.i32(i8*, i8*, i32, i32) define void @main() nounwind { ; dword copy call void @llvm.memcpy.i32(i8* bitcast ([32 x i32]* @A to i8*), i8* bitcast ([32 x i32]* @B to i8*), i32 128, i32 4 ) ; word copy call void @llvm.memcpy.i32( i8* bitcast ([32 x i32]* @A to i8*), i8* bitcast ([32 x i32]* @B to i8*), i32 128, i32 2 ) ; byte copy call void @llvm.memcpy.i32( i8* bitcast ([32 x i32]* @A to i8*), i8* bitcast ([32 x i32]* @B to i8*), i32 128, i32 1 ) ret void }