Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1649371

Re: Unify the various copies of libgcc into lib

From Geert Uytterhoeven <geert@linux-m68k.org>
Newsgroups linux.kernel
Subject Re: Unify the various copies of libgcc into lib
Date 2017-05-24 11:30 +0200
Message-ID <tKAMa-tv-21@gated-at.bofh.it> (permalink)
References <tKqa6-18X-11@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Hi Palmer,

On Wed, May 24, 2017 at 12:05 AM, Palmer Dabbelt <palmer@dabbelt.com> wrote:
> I'm in the process of submitting the RISC-V Linux port, and someone noticed
> that we were adding copies of some libgcc emulation routines that were the same
> as some of the other ports.  This prompted me to go through and check all the
> ports for libgcc.h and to merge the versions that were functionally identical.
>
> The only difference in libgcc.h was that there was a #define for little vs big
> endian.  The differences in the emulation routines were all just whitespace.
>
> This patch set comes in two parts:
>
>  * Patch 1 adds new copies of all the C files copied from libgcc, as well as
>    moving libgcc.h to include/lib (that's a new folder, which probably means
>    it's the wrong place to put it, but I couldn't find anything better).  There
>    are Kconfig entries for each of these library functions so architectures can
>    select them one at a time.

I would call the Kconfig symbols GENERIC_* instead of LIB_*, for consistency
with other generic implementations.

>  * The rest of the patches convert each architecture over to the new system.

Thanks! For all but "[PATCH 4/7] mips: ...":

Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org>

> Unless I screwed something up, this patch set shouldn't actually change any
> functionality.  Unfortunately I don't actually have all these cross compilers
> setup so I can't actually test any of this, but I did convert the RISC-V port
> over to using this system and it appears to be OK there so at least this isn't
> completely broken.

https://www.kernel.org/pub/tools/crosstool/

BTW, blackfin, h8300, m68k, and parisc have their own implementations, too.
They look different, but I believe their functionality is identical.
They can be converted later, though.

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Unify the various copies of libgcc into lib Palmer Dabbelt <palmer@dabbelt.com> - 2017-05-24 00:10 +0200
  [PATCH 1/7] lib: Add shared copies of some GCC library routines Palmer Dabbelt <palmer@dabbelt.com> - 2017-05-24 00:10 +0200
    Re: [PATCH 1/7] lib: Add shared copies of some GCC library routines Matt Redfearn <matt.redfearn@imgtec.com> - 2017-05-24 11:00 +0200
  [PATCH 3/7] microblaze: Use libgcc files from lib/ Palmer Dabbelt <palmer@dabbelt.com> - 2017-05-24 00:10 +0200
    Re: [PATCH 3/7] microblaze: Use libgcc files from lib/ kbuild test robot <lkp@intel.com> - 2017-05-24 13:30 +0200
  [PATCH 2/7] m32r: Use lib/ucmpdi2.c Palmer Dabbelt <palmer@dabbelt.com> - 2017-05-24 00:10 +0200
  [PATCH 6/7] sh: Use lib/ashldi3,ashrdi3,lshrdi3}.c Palmer Dabbelt <palmer@dabbelt.com> - 2017-05-24 00:10 +0200
    Re: [PATCH 6/7] sh: Use lib/ashldi3,ashrdi3,lshrdi3}.c kbuild test robot <lkp@intel.com> - 2017-05-24 13:30 +0200
    Re: [PATCH 6/7] sh: Use lib/ashldi3,ashrdi3,lshrdi3}.c kbuild test robot <lkp@intel.com> - 2017-05-24 13:40 +0200
  [PATCH 7/7] sparc: Use lib/{cmpdi2,ucmpdi2}.c Palmer Dabbelt <palmer@dabbelt.com> - 2017-05-24 00:10 +0200
  [PATCH 5/7] score: Use lib/{ashldi3,ashrdi3,cmpdi2,lshrdi3,ucmpdi2}.c Palmer Dabbelt <palmer@dabbelt.com> - 2017-05-24 00:10 +0200
  [PATCH 4/7] mips: Use lib/{ashldi3,ashrdi3,cmpdi2,lshrdi3,ucmpdi2}.c Palmer Dabbelt <palmer@dabbelt.com> - 2017-05-24 00:10 +0200
    Re: [PATCH 4/7] mips: Use  lib/{ashldi3,ashrdi3,cmpdi2,lshrdi3,ucmpdi2}.c Matt Redfearn <matt.redfearn@imgtec.com> - 2017-05-24 11:10 +0200
    Re: [PATCH 4/7] mips: Use  lib/{ashldi3,ashrdi3,cmpdi2,lshrdi3,ucmpdi2}.c kbuild test robot <lkp@intel.com> - 2017-05-24 13:50 +0200
    Re: [PATCH 4/7] mips: Use  lib/{ashldi3,ashrdi3,cmpdi2,lshrdi3,ucmpdi2}.c kbuild test robot <lkp@intel.com> - 2017-05-24 14:00 +0200
  Re: Unify the various copies of libgcc into lib Geert Uytterhoeven <geert@linux-m68k.org> - 2017-05-24 11:30 +0200
  Re: Unify the various copies of libgcc into lib David Howells <dhowells@redhat.com> - 2017-05-24 15:50 +0200
    Re: Unify the various copies of libgcc into lib John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de> - 2017-05-24 16:10 +0200

csiph-web