search for: r156703

Displaying 1 result from an estimated 1 matches for "r156703".

Did you mean: 156703
2012 Jul 17
2
[LLVMdev] [DragonEgg] Why Fortran's "call flush()" is converted to "call void bitcast (void (...)* @_gfortran_flush_i4 to void (i8*)*)(i8* null) nounwind" ?
...i8*)*)(i8* null) nounwind" ? Why it needs bitcast? I'm expecting something like "call void @_gfortran_flush_i4(i8* null)". Otherwise, we will need to teach our call parsers to digg into bitcasts, which is an undesired extra complexity. Below is a test case (dragonegg/llvm as of r156703): > cat flush.f90 program test call flush() end program test > kernelgen-dragonegg flush.f90 -o- | opt -O3 -S -o - ; ModuleID = '<stdin>' target datalayout = "e-p:64:64:64-S128-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f16:16:16-f32:32:32-f64:64:64-f128:128:128-v64:64...