1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=armv7-none-linux-gnueabi -mattr=+neon 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker; PR5024 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Worker%bar = type { %foo, %foo } 6*9880d681SAndroid Build Coastguard Worker%foo = type { <4 x float> } 7*9880d681SAndroid Build Coastguard Worker 8*9880d681SAndroid Build Coastguard Workerdeclare arm_aapcs_vfpcc float @aaa(%foo* nocapture) nounwind readonly 9*9880d681SAndroid Build Coastguard Worker 10*9880d681SAndroid Build Coastguard Workerdeclare arm_aapcs_vfpcc %bar* @bbb(%bar*, <4 x float>, <4 x float>) nounwind 11*9880d681SAndroid Build Coastguard Worker 12*9880d681SAndroid Build Coastguard Workerdefine arm_aapcs_vfpcc void @ccc(i8* nocapture %pBuffer, i32 %numItems) nounwind { 13*9880d681SAndroid Build Coastguard Workerentry: 14*9880d681SAndroid Build Coastguard Worker br i1 undef, label %return, label %bb.nph 15*9880d681SAndroid Build Coastguard Worker 16*9880d681SAndroid Build Coastguard Workerbb.nph: ; preds = %entry 17*9880d681SAndroid Build Coastguard Worker %0 = call arm_aapcs_vfpcc %bar* @bbb(%bar* undef, <4 x float> undef, <4 x float> undef) nounwind ; <%bar*> [#uses=0] 18*9880d681SAndroid Build Coastguard Worker %1 = call arm_aapcs_vfpcc float @aaa(%foo* undef) nounwind ; <float> [#uses=0] 19*9880d681SAndroid Build Coastguard Worker unreachable 20*9880d681SAndroid Build Coastguard Worker 21*9880d681SAndroid Build Coastguard Workerreturn: ; preds = %entry 22*9880d681SAndroid Build Coastguard Worker ret void 23*9880d681SAndroid Build Coastguard Worker} 24