1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=arm64-apple-ios | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: _test: 4*9880d681SAndroid Build Coastguard Worker; CHECK: fmov.2d v0, #2.00000000 5*9880d681SAndroid Build Coastguard Worker; CHECK: str q0, [sp, #-16]! 6*9880d681SAndroid Build Coastguard Worker; CHECK: mov x8, sp 7*9880d681SAndroid Build Coastguard Worker; CHECK: ldr s0, [x8, w1, sxtw #2] 8*9880d681SAndroid Build Coastguard Worker; CHECK: str s0, [x0] 9*9880d681SAndroid Build Coastguard Worker 10*9880d681SAndroid Build Coastguard Workerdefine void @test(float * %p1, i32 %v1) { 11*9880d681SAndroid Build Coastguard Workerentry: 12*9880d681SAndroid Build Coastguard Worker %v2 = extractelement <3 x float> <float 0.000000e+00, float 2.000000e+00, float 0.000000e+00>, i32 %v1 13*9880d681SAndroid Build Coastguard Worker store float %v2, float* %p1, align 4 14*9880d681SAndroid Build Coastguard Worker ret void 15*9880d681SAndroid Build Coastguard Worker} 16*9880d681SAndroid Build Coastguard Worker 17*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: _test2 18*9880d681SAndroid Build Coastguard Worker; CHECK: movi.16b v0, #63 19*9880d681SAndroid Build Coastguard Worker; CHECK: str q0, [sp, #-16]! 20*9880d681SAndroid Build Coastguard Worker; CHECK: mov x8, sp 21*9880d681SAndroid Build Coastguard Worker; CHECK: ldr s0, [x8, w1, sxtw #2] 22*9880d681SAndroid Build Coastguard Worker; CHECK: str s0, [x0] 23*9880d681SAndroid Build Coastguard Worker 24*9880d681SAndroid Build Coastguard Workerdefine void @test2(float * %p1, i32 %v1) { 25*9880d681SAndroid Build Coastguard Workerentry: 26*9880d681SAndroid Build Coastguard Worker %v2 = extractelement <3 x float> <float 0.7470588088035583, float 0.7470588088035583, float 0.7470588088035583>, i32 %v1 27*9880d681SAndroid Build Coastguard Worker store float %v2, float* %p1, align 4 28*9880d681SAndroid Build Coastguard Worker ret void 29*9880d681SAndroid Build Coastguard Worker} 30