Date: Tue, 19 Jan 2010 17:35:28 +0100 From: Ed Schouten <ed@80386.nl> To: Scott Long <scottl@samsco.org> Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org Subject: Re: svn commit: r202628 - in head: . sys/amd64/amd64 sys/i386/i386 sys/i386/xen sys/sys Message-ID: <20100119163528.GV64905@hoeg.nl> In-Reply-To: <02BD244A-E287-46E0-B6A4-B6643CA7BA2E@samsco.org> References: <201001191531.o0JFVI6n029716@svn.freebsd.org> <9FF943CE-9FCB-48C8-A048-23F23620F4E5@samsco.org> <20100119155920.GU64905@hoeg.nl> <02BD244A-E287-46E0-B6A4-B6643CA7BA2E@samsco.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--OEHaWX2QSImgzVur Content-Type: multipart/mixed; boundary="iWGX19zdMYUyUiWh" Content-Disposition: inline --iWGX19zdMYUyUiWh Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable * Scott Long <scottl@samsco.org> wrote: > Which compilers? Is this a requirement for CLANG? Or is it just a > nice-to-have clean-up? Clang's support for the gnu89 inline semantics works sometimes, while there have been many regressions over time where fixes related to the ISO C99 inlining broke the GNU semantics. I agreed with other people back in June last year that we should just commit this after releasing 8.0, since our policy has always been to support an upgrade from one major to another, not skipping one in between. If there are such strong feelings about this, we could just commit the attached patch, which brings us the best of both worlds. It uses the C99 keywords when compilers are intelligent enough to do so, but falls back to GNU-style inlining in cases where it has to do this. --=20 Ed Schouten <ed@80386.nl> WWW: http://80386.nl/ --iWGX19zdMYUyUiWh Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="pmap.diff" Content-Transfer-Encoding: quoted-printable Index: sys/i386/i386/pmap.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- sys/i386/i386/pmap.c (revision 202629) +++ sys/i386/i386/pmap.c (working copy) @@ -162,7 +162,11 @@ #endif =20 #if !defined(DIAGNOSTIC) +#ifdef __GNUC_GNU_INLINE__ +#define PMAP_INLINE inline +#else #define PMAP_INLINE extern inline +#endif #else #define PMAP_INLINE #endif Index: sys/i386/xen/pmap.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- sys/i386/xen/pmap.c (revision 202629) +++ sys/i386/xen/pmap.c (working copy) @@ -173,7 +173,11 @@ #endif =20 #if !defined(PMAP_DIAGNOSTIC) +#ifdef __GNUC_GNU_INLINE__ +#define PMAP_INLINE inline +#else #define PMAP_INLINE extern inline +#endif #else #define PMAP_INLINE #endif Index: sys/amd64/amd64/pmap.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- sys/amd64/amd64/pmap.c (revision 202629) +++ sys/amd64/amd64/pmap.c (working copy) @@ -153,7 +153,11 @@ #endif =20 #if !defined(DIAGNOSTIC) +#ifdef __GNUC_GNU_INLINE__ +#define PMAP_INLINE inline +#else #define PMAP_INLINE extern inline +#endif #else #define PMAP_INLINE #endif --iWGX19zdMYUyUiWh-- --OEHaWX2QSImgzVur Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (FreeBSD) iEYEARECAAYFAktV31AACgkQ52SDGA2eCwVjJgCeIzBaF2qttF+X59RdalMz7iqY jw0AoIE1/YQ7efHHfb68B7hqLUJf5LSm =2uNG -----END PGP SIGNATURE----- --OEHaWX2QSImgzVur--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100119163528.GV64905>