[clang] [compiler-rt] [llvm] [SPARC] Properly handle CC for long double on sparc32 (PR #162226)

Sergei Barannikov via llvm-commits llvm-commits at lists.llvm.org
Sun Nov 9 00:08:52 PST 2025


s-barannikov wrote:

> > ```
> > declare fp128 @fmul(fp128 %a, fp128 %b)
> > 
> > define fp128 @square(fp128 %num) {
> >     %ret = call fp128 @fmul(fp128 %num, fp128 %num)
> >     ret fp128 %ret
> > }
> > ```
> 
> I think the main issue here is that the fp128s need to be passed around as if it's a sret struct but I dunno how to declare it in (Ret)CC_Sparc32...

You need to return false for it in `CanLowerReturn`.


https://github.com/llvm/llvm-project/pull/162226


More information about the llvm-commits mailing list