1 ; RUN: llc < %s -o - -mcpu=generic -march=x86-64 -mattr=+sse4.1 | FileCheck %s -check-prefix=SSE41 2 ; RUN: llc < %s -o - -mcpu=generic -march=x86-64 -mattr=+avx | FileCheck %s -check-prefix=AVX 3 4 define void @pextrb(i8* nocapture %dst, <16 x i8> %foo) { 5 ; AVX: vpextrb 6 ; SSE41: pextrb 7 ; AVX-NOT: movb 8 ; SSE41-NOT: movb 9 %vecext = extractelement <16 x i8> %foo, i32 15 10 store i8 %vecext, i8* %dst, align 1 11 ret void 12 } 13 14 define void @pextrw(i16* nocapture %dst, <8 x i16> %foo) { 15 ; AVX: vpextrw 16 ; SSE41: pextrw 17 ; AVX-NOT: movw 18 ; SSE41-NOT: movw 19 %vecext = extractelement <8 x i16> %foo, i32 15 20 store i16 %vecext, i16* %dst, align 1 21 ret void 22 } 23