On 10/16/2013 12:52 AM, Anil Singhar wrote:> Hi HPA, > > Thanks for your reply. One confusion I have is: > > e.g. 'access' is not supported in aarch64, so should the declaration be: > > <!aarch64> int access(const char *, int); <-- This is how it is currently > indicating that only aarch64 doesn't support it. > > OR > > <?> int access(const char *, int); <-- if I do this instead, it will be > optional for every architecture, right..? >Yes, and that is the right way to do it if there is a generic, non-architecture specific fallback in terms of another system call. -hpa
OK, I will change all <!aarch64> to <?> then. How about lines declared like the following: <!alpha,aarch64,ia64,mips,mips64,sh,sparc,sparc64> int pipe(int *); Should they also be changed to <?> ? Thanks and Regards, Anil On 16 October 2013 13:32, H. Peter Anvin <hpa at zytor.com> wrote:> On 10/16/2013 12:52 AM, Anil Singhar wrote: > > Hi HPA, > > > > Thanks for your reply. One confusion I have is: > > > > e.g. 'access' is not supported in aarch64, so should the declaration be: > > > > <!aarch64> int access(const char *, int); <-- This is how it is > currently > > indicating that only aarch64 doesn't support it. > > > > OR > > > > <?> int access(const char *, int); <-- if I do this instead, it will be > > optional for every architecture, right..? > > > > Yes, and that is the right way to do it if there is a generic, > non-architecture specific fallback in terms of another system call. > > -hpa > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://www.zytor.com/pipermail/klibc/attachments/20131016/8d430ff9/attachment.html>
Also there are lines as follows: <ppc64> int stat::stat(const char *, struct stat *); Should they be changed likewise too..? I mean to <?> Thanks, Anil On 16 October 2013 13:40, Anil Singhar <anil.singhar at linaro.org> wrote:> OK, I will change all <!aarch64> to <?> then. How about lines declared > like the following: > > <!alpha,aarch64,ia64,mips,mips64,sh,sparc,sparc64> int pipe(int *); > > Should they also be changed to <?> ? > > Thanks and Regards, > Anil > > > > On 16 October 2013 13:32, H. Peter Anvin <hpa at zytor.com> wrote: > >> On 10/16/2013 12:52 AM, Anil Singhar wrote: >> > Hi HPA, >> > >> > Thanks for your reply. One confusion I have is: >> > >> > e.g. 'access' is not supported in aarch64, so should the declaration be: >> > >> > <!aarch64> int access(const char *, int); <-- This is how it is >> currently >> > indicating that only aarch64 doesn't support it. >> > >> > OR >> > >> > <?> int access(const char *, int); <-- if I do this instead, it will be >> > optional for every architecture, right..? >> > >> >> Yes, and that is the right way to do it if there is a generic, >> non-architecture specific fallback in terms of another system call. >> >> -hpa >> >> >> >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://www.zytor.com/pipermail/klibc/attachments/20131016/de80173e/attachment.html>
On 10/16/2013 01:10 AM, Anil Singhar wrote:> OK, I will change all <!aarch64> to <?> then. How about lines declared like > the following: > > <!alpha,aarch64,ia64,mips,mips64,sh,sparc,sparc64> int pipe(int *); > > Should they also be changed to <?> ? > > Thanks and Regards, > Anil >No. Those are an explicit list of architectures which have architecture-specific (usually assembly) versions of the pipe(2) system call -- typically because back in the Unix days someone thought it was clever to give pipe(2) a completely unique calling convention. Sorry to see arm64 join that braindamage club. -hpa