[U-Boot] [PATCH] riscv: add Kconfig entries for the F and D ISA extensions support

Greentime Hu greentime at andestech.com
Tue May 28 07:54:06 UTC 2019


Hi Bin,
On Fri, May 24, 2019 at 05:40:08PM +0800, Bin Meng wrote:
> Hi Eric,
> 
> On Fri, May 24, 2019 at 4:04 PM Eric Lin <dslin1010 at gmail.com> wrote:
> >
> > Hi Bin
> >
> > Bin Meng <bmeng.cn at gmail.com> ??? 2019???5???22??? ?????? ??????5:25?????????
> > >
> > > Hi Eric,
> > >
> > > On Wed, May 22, 2019 at 4:23 PM <tesheng at andestech.com> wrote:
> > > >
> > > > Hi Bin,
> > > >
> > > > > -----Original Message-----
> > > > > From: Bin Meng [mailto:bmeng.cn at gmail.com]
> > > > > Sent: Tuesday, May 21, 2019 3:56 PM
> > > > > To: Eric Te-Sheng Lin(?????????)
> > > > > Cc: U-Boot Mailing List; Lukas Auer; Anup Patel; Rick Jian-Zhi Chen(?????????);
> > > > > Greentime Ying-Han Hu(?????????); dslin1010 at gmail.com
> > > > > Subject: Re: [PATCH] riscv: add Kconfig entries for the F and D ISA extensions
> > > > > support
> > > > >
> > > > > Hi Eric,
> > > > >
> > > > > On Tue, May 21, 2019 at 3:18 PM Eric Lin <tesheng at andestech.com> wrote:
> > > > > >
> > > > > > This patch add Kconfig entries for the F (Single-Precision)
> > > > >
> > > > > adds
> > > > >
> > > >
> > > > OK I'll correct it as adds
> > > >
> > > > > > and D (Double-Precision) floating point instruction-set extensions.
> > > > > >
> > > > >
> > > > > Could you please provide reason that why U-Boot has to be compiled using F/D
> > > > > extension?
> > > > >
> > > >
> > > > Cause on AE350 platform, we have two different kinds of toolchain v5d (support I/M/A/C/F/D ISA) and
> > > > v5 (support I/M/A/C ISA). If we use the v5d toolchain to build U-Boot it will build fail, so we would like to add F/D extension on U-Boot.
> > >
> > > I don't understand. What difference do these two toochains have? Isn't
> > > the v5d toolchain's default -march string be pre-configured to imafd?
> > > But even if the toolchain is pre-configured to generate fd
> > > instruction, I think it can be override by the compiler flags. Can you
> > > please share the details of the toolchain you used? I suspect you have
> > > to fix your toolchain, not U-Boot.
> > >
> >
> > It's seems the ABI issue. Because our toolchain don't support
> > multilib, the v5d toolchain libraries ABI is ilp64d.
> > If I use the v5d toolchain to build U-Boot with -mabi=lp64, it will
> > get link error as below:
> 
> Then please fix your compiler. Passing -mabi=lp64 to compiler is
> definitely correct.

 One of our customer ever used floating point in their project. They want
 to calculate something with floating point instructions in u-Boot before
 entering kernel.

 IMHO, we may consider this case for user to use -mabi=ilp64d.
 This CONFIG will be useful for them to compile their codes and linking together
 with u-Boot.

 Thanks :)


More information about the U-Boot mailing list