================ @@ -17,23 +17,25 @@ def CC_Sparc32 : CallingConv<[ // Custom assign SRet to [sp+64]. CCIfSRet<CCCustom<"CC_Sparc_Assign_SRet">>, + // f128 arguments are passed indirectly, using i32 pointers. + CCIfType<[f128], CCPassIndirect<i32>>, ---------------- s-barannikov wrote:
I suppose this will not work in soft-float mode. In this mode, f128 type is illegal and will be split into multiple legal (presumably i32) types, which means `CCIfType<[f128], ...>` will never match. Can you confirm that it indeed doesn't work and add a FIXME if so? Assuming this doesn't have to be fixed in this patch. https://github.com/llvm/llvm-project/pull/162226 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
