This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH v3 01/13] nds32: Build Infastructure
On Thu, Jun 14, 2018 at 09:27:17PM +0800, Joseph Myers wrote:
> On Thu, 14 Jun 2018, Vincent Chen wrote:
>
> > diff --git a/sysdeps/unix/sysv/linux/nds32/Makefile b/sysdeps/unix/sysv/linux/nds32/Makefile
> > new file mode 100644
> > index 0000000..2709916
> > --- /dev/null
> > +++ b/sysdeps/unix/sysv/linux/nds32/Makefile
> > @@ -0,0 +1,17 @@
> > +ifeq ($(subdir),misc)
> > +sysdep_headers += sys/cachectl.h
> > +sysdep_routines += cacheflush prctl mremap
> > +endif
>
> Why do you need prctl and mremap here? I'd expect the generic builds of
> those functions from syscalls.list to work fine.
>
The generic version of these two functions cannot work for FPU supported ISA
However, this patchset does not support FPU ISA. I will remove it in the next
version patch.
( For nds32 FPU ISA, the calling convention for variable argument is different
to general case. For general case, caller through general purpose register to
pass argument. When caller finds the argument of callee function is
variable-length, caller places those variable arguments to stack instead of
general purpose registers. The difference causes variable-length functions can
not use internal_syscallX macro in sysdep.h to issue syscall. Therefore, these
generic builds of variable-length functions from syscalls.list cannot work )
> --
> Joseph S. Myers
> joseph@codesourcery.com