Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 21 Apr 1995 09:07:14 -0700
From:      Bruce Evans <bde>
To:        CVS-commiters, cvs-sys
Subject:   cvs commit: src/sys/i386/boot/biosboot boot.h
Message-ID:  <199504211607.JAA10264@freefall.cdrom.com>

next in thread | raw e-mail | index | archive | help
bde         95/04/21 09:07:14

  Modified:    sys/i386/boot/biosboot  boot.h
  Log:
  Never pass char or short args to functions.  This saves 64 bytes of
  recently introduced bloat in just 2 calls to biosread(), although
  very little in calls to putc() and serial_putc().  Gcc produces
  amazingly bad code for unnecessary conversions.  E.g., if it has
  `int x' in register %edx and wants to pass a char, then it could
  simply push %edx and access only one byte in the callee.  Instead,
  it sometimes unnecessarily spills %edx; it always sign extends
  %edx and pushes the result.
  
  Remove useless `extern' in function prototypes.
  
  Remove unused declaration of `end'.
  
  Declare pbzero() and pcpy() like the library bzero and bcopy().
  
  Declare printf() properly.



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