Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 23 Dec 2011 19:55:04 +0200
From:      Kostik Belousov <kostikbel@gmail.com>
To:        Dimitry Andric <dim@freebsd.org>
Cc:        Garrett Cooper <yanegomi@gmail.com>, Alexander Best <arundel@freebsd.org>, freebsd-current@freebsd.org, Benjamin Kaduk <kaduk@mit.edu>
Subject:   Re: [patch] Cleaning up amd64 kernel optimization options
Message-ID:  <20111223175504.GK50300@deviant.kiev.zoral.com.ua>
In-Reply-To: <4EF4B46E.7000405@FreeBSD.org>
References:  <4EF34E52.2040905@FreeBSD.org> <20111223005932.GA65042@freebsd.org> <25FBBF23-CDFA-429E-966D-A90409D8F2BD@gmail.com> <201112230937.08971.jhb@freebsd.org> <20111223160032.GA18839@freebsd.org> <4EF4B46E.7000405@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--gvPIjeLKx76TMoZf
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Dec 23, 2011 at 06:03:42PM +0100, Dimitry Andric wrote:
> On 2011-12-23 17:00, Alexander Best wrote:
> ...
> >>>Back in the 7.x days, I ran into some code that wasn't easily to debug=
=20
> >>>because the compiler optimized things out with -O2 by inlining and
> >>otherwise shifting around code, so setting breakpoints in gdb became=20
> >>difficult. So from that point on I've gotten into the habit of doing -O
> >>explicitly in make.conf if DEBUG_FLAGS was specified. Just a thought..
> >>
> >>I still leave -O2 in, but what I do is this:
> >>
> >>   make DEBUG_FLAGS=3D"-g -fno-inline"
> >
> >would making -O2 -fno-inline the default flags introduce any major=20
> >slowdown?
>=20
> Not major, but a minor slowdown is quite possible, especially on arches
> like x86, where call overhead is relatively high, and code caches are
> relatively large.
>=20
> Anyway, I'd rather get the thread back to my original patch instead of
> messing around with the default flags for release, which have been -O2
> for a long time now.  If people want to override those for specific
> reasons, they can always set COPTFLAGS or DEBUG_FLAGS manually, like
> John shows.
>=20
> The only thing my patch makes sure of, is that amd64 does the same thing
> as all other arches, e.g.: compile with a low optimization settings for
> debug (-O, which is equivalent to -O1), compile with arch-specific high
> optimization settings for release (-O2 plus whatever is required for the
> arch, or lower if optimization breaks things).

Release is built with -g for long time, this is where the symbol files
in /boot/kernel comes from.

--gvPIjeLKx76TMoZf
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.18 (FreeBSD)

iEYEARECAAYFAk70wHcACgkQC3+MBN1Mb4inHwCglrnuSVkdnXuSrYzoK7LYwZu2
5oIAoIO8H7mDEKfftcvn6kLxziq3aeKC
=moJN
-----END PGP SIGNATURE-----

--gvPIjeLKx76TMoZf--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20111223175504.GK50300>