[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gcc
Subject:    Re: Calling convention for "Routines for floating point emulation"
From:       Yichao Yu <yyc1992 () gmail ! com>
Date:       2016-09-28 21:39:05
Message-ID: CAMvDr+RBWFfOvBcCkduyu5XD7-s8tax4ij-KQtCwB3MzUWyPvg () mail ! gmail ! com
[Download RAW message or body]

On Wed, Sep 28, 2016 at 5:23 PM, Yichao Yu <yyc1992@gmail.com> wrote:
> Hi,
>
> I'd like to ask what should be the calling convention/ABI for these
> routines on platforms with hardware floating point support (but
> somehow still want to generate a libcall for whatever reasons).
>
> In particular, it seems that on all the platforms with a
> arm*-*-gnueabihf triple I've checked (alarm armv7h, alarm armv6h,
> debian armhf, fedora armv7hl) the __powidf2 function (and possibly
> many others) are compiled with the AAPCS VFP calling convention, which
> is also how it is used by gcc. However, LLVM dev (CC'd) claims that
> these routines are meant to be always using soft floating point
> calling convention even on platforms using hard floating point ABI.
>
> A breif google search doesn't show document supporting either so what
> exactly should be used? Is it documented anywhere or what's the
> default rule to decide the calling conventions for these functions? In
> either case I think it's be nice if the document is a little more
> explicit about this.

And see https://llvm.org/bugs/show_bug.cgi?id=30543 for some context.

>
> Yichao Yu
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic