This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: soft-fp functions support without using libgcc
- From: <Paul_Koning at Dell dot com>
- To: <ian dot bolton at arm dot com>
- Cc: <iant at google dot com>, <sheheryar dot zahoor dot qazi at gmail dot com>, <gcc at gcc dot gnu dot org>, <jasonwucj at gmail dot com>
- Date: Fri, 16 May 2014 16:34:01 +0000
- Subject: Re: soft-fp functions support without using libgcc
- Authentication-results: sourceware.org; auth=none
- References: <CANOiJWLsqPSyeCz3EkvYH4OWZrkC1KttqJ_jrQiwUMPFgh64XA at mail dot gmail dot com> <CAKOQZ8zOQg9dg_XauuVBYEtv_xHkN9icCX5X=F445y_G4Fu90g at mail dot gmail dot com> <000b01cf7123$79adefb0$6d09cf10$ at bolton@arm.com>
On May 16, 2014, at 12:25 PM, Ian Bolton <ian.bolton@arm.com> wrote:
>> On Fri, May 16, 2014 at 6:34 AM, Sheheryar Zahoor Qazi
>> <sheheryar.zahoor.qazi@gmail.com> wrote:
>>>
>>> I am trying to provide soft-fp support to a an 18-bit soft-core
>>> processor architecture at my university. But the problem is that
>>> libgcc has not been cross-compiled for my target architecture and
>> some
>>> functions are missing so i cannot build libgcc.I believe soft-fp is
>>> compiled in libgcc so i am usable to invoke soft-fp functions from
>>> libgcc.
>>> It is possible for me to provide soft-fp support without using
>> libgcc.
>>> How should i proceed in defining the functions? Any idea? And does
>> any
>>> archoitecture provide floating point support withoput using libgcc?
>>
>> I'm sorry, I don't understand the premise of your question. It is not
>> necessary to build libgcc before building libgcc. That would not make
>> sense. If you have a working compiler that is missing some functions
>> provided by libgcc, that should be sufficient to build libgcc.
>
> If you replace "cross-compiled" with "ported", I think it makes senses.
> Can one provide soft-fp support without porting libgcc for their
> architecture?
By definition, in soft-fp you have to implement the FP operations in software. That’s not quite the same as porting libgcc to the target architecture. It should translate to porting libgcc (the FP emulation part) to the floating point format being used.
In other words, if you want soft-fp for IEEE float, the job should be very simple because that has already been done. If you want soft-fp for CDC 6000 float, you have to do a full implementation of that.
paul