1*9880d681SAndroid Build Coastguard Worker; RUN: llc -mtriple=arm-eabi -mattr=+vfp2 %s -o /dev/null 2*9880d681SAndroid Build Coastguard Worker; RUN: llc -mtriple=arm-eabi -mattr=vfp2 %s -o - | FileCheck %s 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Workerdefine hidden i64 @__fixunsdfdi(double %x) nounwind readnone { 5*9880d681SAndroid Build Coastguard Workerentry: 6*9880d681SAndroid Build Coastguard Worker %x14 = bitcast double %x to i64 ; <i64> [#uses=1] 7*9880d681SAndroid Build Coastguard Worker br i1 true, label %bb3, label %bb10 8*9880d681SAndroid Build Coastguard Worker 9*9880d681SAndroid Build Coastguard Workerbb3: ; preds = %entry 10*9880d681SAndroid Build Coastguard Worker br i1 true, label %bb5, label %bb7 11*9880d681SAndroid Build Coastguard Worker 12*9880d681SAndroid Build Coastguard Workerbb5: ; preds = %bb3 13*9880d681SAndroid Build Coastguard Worker %u.in.mask = and i64 %x14, -4294967296 ; <i64> [#uses=1] 14*9880d681SAndroid Build Coastguard Worker %.ins = or i64 0, %u.in.mask ; <i64> [#uses=1] 15*9880d681SAndroid Build Coastguard Worker %0 = bitcast i64 %.ins to double ; <double> [#uses=1] 16*9880d681SAndroid Build Coastguard Worker %1 = fsub double %x, %0 ; <double> [#uses=1] 17*9880d681SAndroid Build Coastguard Worker %2 = fptosi double %1 to i32 ; <i32> [#uses=1] 18*9880d681SAndroid Build Coastguard Worker %3 = add i32 %2, 0 ; <i32> [#uses=1] 19*9880d681SAndroid Build Coastguard Worker %4 = zext i32 %3 to i64 ; <i64> [#uses=1] 20*9880d681SAndroid Build Coastguard Worker %5 = shl i64 %4, 32 ; <i64> [#uses=1] 21*9880d681SAndroid Build Coastguard Worker %6 = or i64 %5, 0 ; <i64> [#uses=1] 22*9880d681SAndroid Build Coastguard Worker ret i64 %6 23*9880d681SAndroid Build Coastguard Worker 24*9880d681SAndroid Build Coastguard Workerbb7: ; preds = %bb3 25*9880d681SAndroid Build Coastguard Worker ret i64 0 26*9880d681SAndroid Build Coastguard Worker 27*9880d681SAndroid Build Coastguard Workerbb10: ; preds = %entry 28*9880d681SAndroid Build Coastguard Worker ret i64 0 29*9880d681SAndroid Build Coastguard Worker} 30*9880d681SAndroid Build Coastguard Worker 31*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: vstr.64 32*9880d681SAndroid Build Coastguard Worker 33