Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 12 May 2002 08:45:29 -0700 (PDT)
From:      Bruce Evans <bde@FreeBSD.org>
To:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/boot/i386/boot2 Makefile
Message-ID:  <200205121545.g4CFjTT12885@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
bde         2002/05/12 08:45:28 PDT

  Modified files:
    sys/boot/i386/boot2  Makefile 
  Log:
  Saved 176 bytes by compiling with -fno-guess-branch-probability.  The
  default of -fguess-branch-probablility causes time optimizations (?)
  like rewriting `if (foo) x++;' as
  `if (!foo) goto forth; back: ; ...; forth: x++; goto back;".  This is
  pessimizes space especially well on i386's because one short branch
  gets converted to 2 long ones.
  
  Removed -fno-align-foo since it is implied by -Os.  Previous commit
  messages seem to have overstated the new alignment bugs in gcc.  The
  only case that affects boot2 is that -fno-align-functions (or
  equivalently -falign-functions=1) actually gives -falign-functions=2.
  This is caused by FUNCTION_BOUNDARY being 2 (bytes) instead of 1.
  The default case where the optimization level is 1 and no alignment
  options are given is more broken.  All alignments are minimal, modulo
  the bug in FUNCTION_BOUNDARY.  This is caused by toplev.c setting
  defaults too early.
  
  Some hacks in previous commits ar not needed now, but may as well be
  kept until gcc is fixed.  The previous on in the Makefile saved 96
  bytes of text due to the wrong FUNCTION_BOUNDARY and 32 bytes of data
  due to unrelated bloat in the alignment of large objects.  There aren't
  even any options to control alignment of data.
  
  Revision  Changes    Path
  1.26      +1 -1      src/sys/boot/i386/boot2/Makefile

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




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