Home | History | Annotate | Download | only in AMDGPU
      1 ; RUN: not llc -march=amdgcn < %s 2>&1 | FileCheck %s
      2 
      3 ; Make sure that AMDGPUPromoteAlloca doesn't crash if the called
      4 ; function is a constantexpr cast of a function.
      5 
      6 declare void @foo(float*) #0
      7 declare void @foo.varargs(...) #0
      8 
      9 ; CHECK: in function crash_call_constexpr_cast{{.*}}: unsupported call to function foo
     10 define void @crash_call_constexpr_cast() #0 {
     11   %alloca = alloca i32
     12   call void bitcast (void (float*)* @foo to void (i32*)*)(i32* %alloca) #0
     13   ret void
     14 }
     15 
     16 ; CHECK: in function crash_call_constexpr_cast{{.*}}: unsupported call to function foo.varargs
     17 define void @crash_call_constexpr_cast_varargs() #0 {
     18   %alloca = alloca i32
     19   call void bitcast (void (...)* @foo.varargs to void (i32*)*)(i32* %alloca) #0
     20   ret void
     21 }
     22 
     23 attributes #0 = { nounwind }
     24