1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mcpu=ppc | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Workertarget datalayout = "E-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v128:128:128-n32" 4*9880d681SAndroid Build Coastguard Workertarget triple = "powerpc-unknown-linux-gnu" 5*9880d681SAndroid Build Coastguard Worker 6*9880d681SAndroid Build Coastguard Workerdefine ppc_fp128 @foo(ppc_fp128* nocapture %n, ppc_fp128 %d) nounwind readonly { 7*9880d681SAndroid Build Coastguard Workerentry: 8*9880d681SAndroid Build Coastguard Worker br label %for.body 9*9880d681SAndroid Build Coastguard Worker 10*9880d681SAndroid Build Coastguard Workerfor.body: ; preds = %for.body, %entry 11*9880d681SAndroid Build Coastguard Worker %i.06 = phi i32 [ 0, %entry ], [ %inc, %for.body ] 12*9880d681SAndroid Build Coastguard Worker %x.05 = phi ppc_fp128 [ %d, %entry ], [ %conv, %for.body ] 13*9880d681SAndroid Build Coastguard Worker %arrayidx = getelementptr inbounds ppc_fp128, ppc_fp128* %n, i32 %i.06 14*9880d681SAndroid Build Coastguard Worker %0 = load ppc_fp128, ppc_fp128* %arrayidx, align 8 15*9880d681SAndroid Build Coastguard Worker %conv = tail call ppc_fp128 @copysignl(ppc_fp128 %x.05, ppc_fp128 %d) nounwind readonly 16*9880d681SAndroid Build Coastguard Worker %inc = add nsw i32 %i.06, 1 17*9880d681SAndroid Build Coastguard Worker %exitcond = icmp eq i32 %inc, 2048 18*9880d681SAndroid Build Coastguard Worker br i1 %exitcond, label %for.end, label %for.body 19*9880d681SAndroid Build Coastguard Worker 20*9880d681SAndroid Build Coastguard Workerfor.end: ; preds = %for.body 21*9880d681SAndroid Build Coastguard Worker ret ppc_fp128 %conv 22*9880d681SAndroid Build Coastguard Worker} 23*9880d681SAndroid Build Coastguard Worker 24*9880d681SAndroid Build Coastguard Workerdeclare ppc_fp128 @copysignl(ppc_fp128, ppc_fp128) #0 25*9880d681SAndroid Build Coastguard Worker 26*9880d681SAndroid Build Coastguard Worker; CHECK: @foo 27*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: mtctr 28*9880d681SAndroid Build Coastguard Worker 29