Home | History | Annotate | Download | only in InstCombine
      1 ; RUN: opt < %s -instcombine -S | FileCheck %s
      2 
      3 target datalayout = "e-p:32:32"
      4 target triple = "i686-pc-linux-gnu"
      5 
      6 declare void @takes_i32(i32)
      7 declare void @takes_i32_inalloca(i32* inalloca)
      8 
      9 define void @f() {
     10 ; CHECK-LABEL: define void @f()
     11   %args = alloca inalloca i32
     12   call void bitcast (void (i32)* @takes_i32 to void (i32*)*)(i32* inalloca %args)
     13 ; CHECK: call void bitcast
     14   ret void
     15 }
     16 
     17 define void @g() {
     18 ; CHECK-LABEL: define void @g()
     19   call void bitcast (void (i32*)* @takes_i32_inalloca to void (i32)*)(i32 0)
     20 ; CHECK: call void bitcast
     21   ret void
     22 }
     23