1 ; RUN: llc -mtriple=i686-unknown-linux-gnu -o - %s | FileCheck %s 2 3 declare void @g_bool(i1 zeroext) 4 define void @f_bool(i1 zeroext %x) { 5 entry: 6 tail call void @g_bool(i1 zeroext %x) 7 ret void 8 9 ; Forwarding a bool in a tail call works. 10 ; CHECK-LABEL: f_bool: 11 ; CHECK-NOT: movz 12 ; CHECK: jmp g_bool 13 } 14 15 16 declare void @g_float(float) 17 define void @f_i32(i32 %x) { 18 entry: 19 %0 = bitcast i32 %x to float 20 tail call void @g_float(float %0) 21 ret void 22 23 ; Forwarding a bitcasted value works too. 24 ; CHECK-LABEL: f_i32 25 ; CHECK-NOT: mov 26 ; CHECK: jmp g_float 27 } 28