22 lines
658 B
LLVM
22 lines
658 B
LLVM
; RUN: llc < %s | FileCheck %s
|
|
|
|
target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
|
|
target triple = "thumbv6m---eabi"
|
|
|
|
; CHECK-LABEL: test_fn
|
|
; CHECK-NOT: uxtb
|
|
define dso_local zeroext i8 @test_fn(i32 %x, void (...)* nocapture %f) {
|
|
entry:
|
|
%tobool = icmp eq i32 %x, 0
|
|
br i1 %tobool, label %if.end, label %if.then
|
|
|
|
if.then: ; preds = %entry
|
|
%callee.knr.cast = bitcast void (...)* %f to void ()*
|
|
tail call void %callee.knr.cast() #1
|
|
br label %if.end
|
|
|
|
if.end: ; preds = %entry, %if.then
|
|
%z.0 = phi i8 [ 3, %if.then ], [ 0, %entry ]
|
|
ret i8 %z.0
|
|
}
|