diff options
Diffstat (limited to 'llvm/test/CodeGen/ARM/CGP/arm-cgp-calls.ll')
-rw-r--r-- | llvm/test/CodeGen/ARM/CGP/arm-cgp-calls.ll | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/ARM/CGP/arm-cgp-calls.ll b/llvm/test/CodeGen/ARM/CGP/arm-cgp-calls.ll index c661940b4e2..ea8c3128dc0 100644 --- a/llvm/test/CodeGen/ARM/CGP/arm-cgp-calls.ll +++ b/llvm/test/CodeGen/ARM/CGP/arm-cgp-calls.ll @@ -177,6 +177,30 @@ entry: ret i1 %tobool } +; CHECK-LABEL: i1_zeroext_call +; CHECK: uxt +define i1 @i1_zeroext_call(i16* %ts, i32 %a, i16* %b, i8* %c) { +entry: + %0 = load i16, i16* %ts, align 2 + %conv.i860 = trunc i32 %a to i16 + store i16 %conv.i860, i16* %b, align 2 + %call.i848 = call zeroext i1 @i1_zeroext(i8* %c, i32 64, i16 zeroext %conv.i860) + br i1 %call.i848, label %if.then223, label %if.else227 + +if.then223: + %cmp235 = icmp eq i16 %0, %conv.i860 + br label %exit + +if.else227: + %cmp236 = icmp ult i16 %0, %conv.i860 + br label %exit + +exit: + %retval = phi i1 [ %cmp235, %if.then223 ], [ %cmp236, %if.else227 ] + ret i1 %retval +} + + declare i32 @assert(...) declare i8 @dummy_i8(i8) declare i8 @dummy2(i8*, i8, i8) @@ -191,3 +215,4 @@ declare fastcc signext i16 @safe_sub_func_int16_t_s_s(i16 signext %si2) declare dso_local fastcc i64 @safe_sub_func_int64_t_s_s(i64, i64) declare dso_local fastcc zeroext i8 @safe_lshift_func(i8 zeroext, i32) declare dso_local fastcc zeroext i8 @safe_mul_func_uint8_t_u_u(i8 returned zeroext) +declare i1 @i1_zeroext(i8*, i32, i16 zeroext) |