[PATCH v2 3/3] Add ffsl(), ffsll(), fls(), flsl(), flsll()

Sebastian Huber sebastian.huber@embedded-brains.de
Thu Jul 27 06:21:00 GMT 2017


On 27/07/17 07:47, Sebastian Huber wrote:

> On 27/07/17 03:40, Kito Cheng wrote:
>
>> I am testing with RISC-V with newlib/trunk and just hang on ffs,
>> after investigate, I saw gcc just generate a ffs call in ffs for riscv64
>> and I guess riscv64 is not the only target will hit this bug,
>> so maybe we can revert the part of this patch, at least for ffs.c?
>
> We should first investigate why GCC performs this optimization. The 
> file is compiled with -fno-builtin, so it some other optimization. 
> Maybe we need something like __attribute__ ((__optimize__ 
> ("-fno-tree-loop-distribute-patterns"))) as in string/local.h.
>

I tried to build a riscv32 GCC, but apparently there is no RISC-V 
support in upstream Newlib:

n file included from 
/home/EB/sebastian_h/archive/gcc-git/newlib/libc/include/sys/config.h:4:0,
                  from 
/home/EB/sebastian_h/archive/gcc-git/newlib/libc/include/_ansi.h:16,
                  from 
/home/EB/sebastian_h/archive/gcc-git/newlib/libc/include/sys/unistd.h:8,
                  from 
/home/EB/sebastian_h/archive/gcc-git/newlib/libc/include/unistd.h:4,
                  from 
/home/EB/sebastian_h/archive/gcc-git/newlib/libc/include/pthread.h:25,
                  from ./gthr-default.h:31,
                  from 
/home/EB/sebastian_h/archive/gcc-git/libgcc/gthr.h:148,
                  from 
/home/EB/sebastian_h/archive/gcc-git/libgcc/unwind-dw2.c:37:
/home/EB/sebastian_h/archive/gcc-git/newlib/libc/include/machine/ieeefp.h:428:2: 
error: #error Endianess not declared!!
  #error Endianess not declared!!
   ^~~~~

Do you have plans to add RISC-V support to upstream Newlib?

-- 
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : sebastian.huber@embedded-brains.de
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.



More information about the Newlib mailing list