From b6aa34eb721a209444df2c0694bb18f8f4a58e47 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sat, 29 Jan 2000 12:04:45 +0000 Subject: Update. * locale/loadlocale.c (_nl_load_locale): Optimize a bit. Pretty print. Add checks for _POSIX_MMAPPED_FILES where necessary. (_nl_unload_locale): If locale data was mmapped use munmap. 2000-01-29 Andreas Jaeger * sysdeps/unix/sysv/linux/i386/sys/io.h: Add missing ints, use _EXTERN_INLINE, compile inline assembler functions only with gcc. 2000-01-29 Ulrich Drepper * catgets/catgets.c (catopen): Handle NL_CAT_LOCALE correctly. * catgets/gencat.c (read_input_file): Remove messages correctly. * catgets/open_catalog.c (__open_catalog): Handle trailing colons and adjacent colons correctly. Correct loops to read territory and and codeset part. Patches by Geoff Clare (PR libc/1559). * rt/aio_misc.c (get_elem): Assign pointer to new row to correct pool entry. Patch by Jens Moeller (PR libc/1558). 2000-01-28 Jakub Jelinek * sysdeps/unix/sysv/linux/arm/Versions: Export the new *rlimit interface with symbol version GLIBC_2.2. * sysdeps/unix/sysv/linux/i386/Versions: Likewise. * sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise. * sysdeps/unix/sysv/linux/i386/getrlimit64.c: Likewise. * sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise. 2000-01-27 Scott Bambrough * sysdeps/unix/sysv/linux/arm/Makefile: Backout rlimit changes for resource directory. * sysdeps/unix/sysv/linux/arm/syscalls.list: Backout changes for versioning setrlimit and getrlimit. 2000-01-27 Andreas Jaeger * sysdeps/powerpc/fpu/libm-ulps: Renamed to ... * sysdeps/powerpc/fpu/libm-test-ulps: ...this. 2000-01-27 Ruediger Oertel * sysdeps/unix/sysv/linux/i386/sys/io.h: Change "::" to ": :" for g++. 2000-01-29 Ulrich Drepper --- sysdeps/unix/sysv/linux/i386/sys/io.h | 94 +++++++++++++++++++---------------- 1 file changed, 51 insertions(+), 43 deletions(-) (limited to 'sysdeps/unix/sysv/linux/i386/sys') diff --git a/sysdeps/unix/sysv/linux/i386/sys/io.h b/sysdeps/unix/sysv/linux/i386/sys/io.h index 8310525..27cd5ff 100644 --- a/sysdeps/unix/sysv/linux/i386/sys/io.h +++ b/sysdeps/unix/sysv/linux/i386/sys/io.h @@ -38,9 +38,15 @@ extern int ioperm (unsigned long int __from, unsigned long int __num, privileges. */ extern int iopl (int __level) __THROW; +#if defined __GNUC__ && __GNUC__ >= 2 -extern inline unsigned char -inb (unsigned short port) +# ifndef _EXTERN_INLINE +# define _EXTERN_INLINE extern __inline +# endif + + +_EXTERN_INLINE unsigned char +inb (unsigned short int port) { unsigned char _v; @@ -48,8 +54,8 @@ inb (unsigned short port) return _v; } -extern inline unsigned char -inb_p (unsigned short port) +_EXTERN_INLINE unsigned char +inb_p (unsigned short int port) { unsigned char _v; @@ -57,8 +63,8 @@ inb_p (unsigned short port) return _v; } -extern inline unsigned short -inw (unsigned short port) +_EXTERN_INLINE unsigned short int +inw (unsigned short int port) { unsigned short _v; @@ -66,17 +72,17 @@ inw (unsigned short port) return _v; } -extern inline unsigned short -inw_p (unsigned short port) +_EXTERN_INLINE unsigned short int +inw_p (unsigned short int port) { - unsigned short _v; + unsigned short int _v; __asm__ __volatile__ ("inw %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (port)); return _v; } -extern inline unsigned int -inl (unsigned short port) +_EXTERN_INLINE unsigned int +inl (unsigned short int port) { unsigned int _v; @@ -84,95 +90,97 @@ inl (unsigned short port) return _v; } -extern inline unsigned int -inl_p (unsigned short port) +_EXTERN_INLINE unsigned int +inl_p (unsigned short int port) { unsigned int _v; __asm__ __volatile__ ("inl %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (port)); return _v; } -extern inline void -outb (unsigned char value, unsigned short port) +_EXTERN_INLINE void +outb (unsigned char value, unsigned short int port) { - __asm__ __volatile__ ("outb %b0,%w1"::"a" (value), "Nd" (port)); + __asm__ __volatile__ ("outb %b0,%w1": :"a" (value), "Nd" (port)); } -extern inline void -outb_p (unsigned char value, unsigned short port) +_EXTERN_INLINE void +outb_p (unsigned char value, unsigned short int port) { - __asm__ __volatile__ ("outb %b0,%w1\noutb %%al,$0x80"::"a" (value), + __asm__ __volatile__ ("outb %b0,%w1\noutb %%al,$0x80": :"a" (value), "Nd" (port)); } -extern inline void -outw (unsigned short value, unsigned short port) +_EXTERN_INLINE void +outw (unsigned short value, unsigned short int port) { - __asm__ __volatile__ ("outw %w0,%w1"::"a" (value), "Nd" (port)); + __asm__ __volatile__ ("outw %w0,%w1": :"a" (value), "Nd" (port)); } -extern inline void -outw_p (unsigned short value, unsigned short port) +_EXTERN_INLINE void +outw_p (unsigned short int value, unsigned short int port) { - __asm__ __volatile__ ("outw %w0,%w1\noutb %%al,$0x80"::"a" (value), + __asm__ __volatile__ ("outw %w0,%w1\noutb %%al,$0x80": :"a" (value), "Nd" (port)); } -extern inline void -outl (unsigned int value, unsigned short port) +_EXTERN_INLINE void +outl (unsigned int value, unsigned short int port) { - __asm__ __volatile__ ("outl %0,%w1"::"a" (value), "Nd" (port)); + __asm__ __volatile__ ("outl %0,%w1": :"a" (value), "Nd" (port)); } -extern inline void -outl_p (unsigned int value, unsigned short port) +_EXTERN_INLINE void +outl_p (unsigned int value, unsigned short int port) { - __asm__ __volatile__ ("outl %0,%w1\noutb %%al,$0x80"::"a" (value), + __asm__ __volatile__ ("outl %0,%w1\noutb %%al,$0x80": :"a" (value), "Nd" (port)); } -extern inline void -insb (unsigned short port, void *addr, unsigned long count) +_EXTERN_INLINE void +insb (unsigned short int port, void *addr, unsigned long int count) { __asm__ __volatile__ ("cld ; rep ; insb":"=D" (addr), "=c" (count):"d" (port), "0" (addr), "1" (count)); } -extern inline void -insw (unsigned short port, void *addr, unsigned long count) +_EXTERN_INLINE void +insw (unsigned short int port, void *addr, unsigned long int count) { __asm__ __volatile__ ("cld ; rep ; insw":"=D" (addr), "=c" (count):"d" (port), "0" (addr), "1" (count)); } -extern inline void -insl (unsigned short port, void *addr, unsigned long count) +_EXTERN_INLINE void +insl (unsigned short int port, void *addr, unsigned long int count) { __asm__ __volatile__ ("cld ; rep ; insl":"=D" (addr), "=c" (count):"d" (port), "0" (addr), "1" (count)); } -extern inline void -outsb (unsigned short port, const void *addr, unsigned long count) +_EXTERN_INLINE void +outsb (unsigned short int port, const void *addr, unsigned long int count) { __asm__ __volatile__ ("cld ; rep ; outsb":"=S" (addr), "=c" (count):"d" (port), "0" (addr), "1" (count)); } -extern inline void -outsw (unsigned short port, const void *addr, unsigned long count) +_EXTERN_INLINE void +outsw (unsigned short int port, const void *addr, unsigned long int count) { __asm__ __volatile__ ("cld ; rep ; outsw":"=S" (addr), "=c" (count):"d" (port), "0" (addr), "1" (count)); } -extern inline void -outsl (unsigned short port, const void *addr, unsigned long count) +_EXTERN_INLINE void +outsl (unsigned short int port, const void *addr, unsigned long int count) { __asm__ __volatile__ ("cld ; rep ; outsl":"=S" (addr), "=c" (count):"d" (port), "0" (addr), "1" (count)); } +#endif /* GNU C */ + __END_DECLS #endif /* _SYS_IO_H */ -- cgit v1.1