1; RUN: llc < %s -march=arm64 -aarch64-neon-syntax=apple | FileCheck %s 2 3define zeroext i8 @f1(<16 x i8> %a) { 4; CHECK-LABEL: f1: 5; CHECK: mov.b w0, v0[3] 6; CHECK-NEXT: ret 7 %vecext = extractelement <16 x i8> %a, i32 3 8 ret i8 %vecext 9} 10 11define zeroext i16 @f2(<4 x i16> %a) { 12; CHECK-LABEL: f2: 13; CHECK: mov.h w0, v0[2] 14; CHECK-NEXT: ret 15 %vecext = extractelement <4 x i16> %a, i32 2 16 ret i16 %vecext 17} 18 19define i32 @f3(<2 x i32> %a) { 20; CHECK-LABEL: f3: 21; CHECK: mov.s w0, v0[1] 22; CHECK-NEXT: ret 23 %vecext = extractelement <2 x i32> %a, i32 1 24 ret i32 %vecext 25} 26 27define i64 @f4(<2 x i64> %a) { 28; CHECK-LABEL: f4: 29; CHECK: mov.d x0, v0[1] 30; CHECK-NEXT: ret 31 %vecext = extractelement <2 x i64> %a, i32 1 32 ret i64 %vecext 33} 34