This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH v2 03/15] RISC-V: Startup and Dynamic Loading Code
- From: Joseph Myers <joseph at codesourcery dot com>
- To: Palmer Dabbelt <palmer at dabbelt dot com>
- Cc: <libc-alpha at sourceware dot org>, Andrew Waterman <andrew at sifive dot com>, Darius Rad <darius at bluespec dot com>, <dj at redhat dot com>
- Date: Sat, 23 Dec 2017 12:52:10 +0000
- Subject: Re: [PATCH v2 03/15] RISC-V: Startup and Dynamic Loading Code
- Authentication-results: sourceware.org; auth=none
- References: <mhng-ee0a5401-fa9b-4300-ad5e-517adecb02a5@palmer-si-x1c4>
On Fri, 22 Dec 2017, Palmer Dabbelt wrote:
> On Wed, 20 Dec 2017 08:38:48 PST (-0800), joseph@codesourcery.com wrote:
> > On Tue, 19 Dec 2017, Palmer Dabbelt wrote:
> >
> > > +extern ElfW(Addr) la_riscv_gnu_pltenter (ElfW(Sym) *__sym, unsigned int
> > > __ndx,
> >
> > With reference to my previous comments, ElfW is an exception to the rule
> > of spaces before '(' in macro and function calls, because it locally
> > expands to a single identifier. So this code is correct not to have a
> > space there.
> >
> > > + extern ElfW(Addr) _GLOBAL_OFFSET_TABLE_
> > > __attribute__((visibility("hidden")));
>
> Ah, luckily I missed those when going through you last mail :)
I advise reading
<https://sourceware.org/glibc/wiki/Style_and_Conventions>, which discusses
exceptions such as ElfW and GLRO.
> I haven't tried it, so I assume it does not work. It looks like the static
> PIE section's header is broken on that site, I'm seeing
>
> == Static PIE ===
>
> in normal text. I assume it's supposed to look more like "=== Static PIE ==="
> to make the text large?
If you don't already have wiki write access you should create an account
and ask on libc-alpha for someone to add it to
<https://sourceware.org/glibc/wiki/EditorGroup>. Then you can fix typos
yourself, as well as adding RISC-V entries to wiki pages where
appropriate.
> Based on looking through the requirement list, there's enough things there in
> toolchain land that "should just work" that I'm sure something will end up
> being broken. I assume it's OK to just add the various RISC-V targets to the
> unsupported list for now?
Yes (once in glibc). RISC-V entries will also be needed on the list of
ABIs and dynamic linker names at
<https://sourceware.org/glibc/wiki/ABIList> - again, only once actually in
glibc.
Apart from those wiki pages mentioned just now, every release cycle,
during the one-month release freeze, architecture maintainers should add
test results to the per-release wiki page (see
<https://sourceware.org/glibc/wiki/Release/2.26> for the last release as
an example, <https://sourceware.org/glibc/wiki/Release/2.27> for the next
one, <https://sourceware.org/glibc/wiki/Release/X.Y> for the template
for future releases which RISC-V will need adding to once in glibc).
--
Joseph S. Myers
joseph@codesourcery.com