[cfe-dev] identifying return type for llvm.umul.with.overflow.i32
Pankaj Gode
godepankaj at yahoo.com
Tue Apr 9 05:24:09 PDT 2013
Hi All,
For a piece of code I get 'overflow' intrinsic generated by clang.
//C++ code
jap = new just_another[i];
//clang generated code.
%1 = call { i32, i1 } @llvm.umul.with.overflow.i32(i32 %0, i32 28), !dbg !46
The 'return type' for this intrinsic is '{i32, i1}'. Unfortunately, the architecture description does not allow me to have a 'such aggregate type' as 'return type' for a function.
For 'non-supported return types', we return them as 'indirect', which results in generating this as a function argument. Such cases are handled in <myarch>ABIInfo class, in overridden function 'classifyReturnType()'.
I am not sure about handling such 'return types' for intrinsic call. What should be the classification of such return type ?
Thanks & Regards,
Pankaj
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20130409/7a6a16dc/attachment.html>
More information about the cfe-dev
mailing list