svn commit: r351096 - head/stand/i386/pxeldr

Ed Maste emaste at FreeBSD.org
Thu Aug 15 17:59:22 UTC 2019


Author: emaste
Date: Thu Aug 15 17:59:22 2019
New Revision: 351096
URL: https://svnweb.freebsd.org/changeset/base/351096

Log:
  stand: remove CLANG_NO_IAS from pxeldr
  
  Many components under stand/ had CLANG_NO_IAS added when Clang's
  Integrated Assembler (IAS) did not handle .codeNN directives.  Clang
  gained support quite some time ago, and we can now build stand/ with
  IAS.  In most cases IAS- and GNU as-assembled boot components were
  identical, and CLANG_NO_IAS was already removed from other components.
  
  Clang IAS produces different output for some components, including
  pxeldr, so CLANG_NO_IAS was not previously removed for those.
  
  In the case of pxeldr the difference is that IAS adds a size override
  prefix (67h) to three instructions to specify a 32-bit address, even
  though the two high bytes are zero and the address fits in 16 bits.
  this wastes three bytes per instruction and causes some additional nop
  npadding to be required elsewhere in the object, but pxeboot is not
  size-constrained so it doesn't matter.
  
  Sponsored by:	The FreeBSD Foundation

Modified:
  head/stand/i386/pxeldr/Makefile

Modified: head/stand/i386/pxeldr/Makefile
==============================================================================
--- head/stand/i386/pxeldr/Makefile	Thu Aug 15 17:43:36 2019	(r351095)
+++ head/stand/i386/pxeldr/Makefile	Thu Aug 15 17:59:22 2019	(r351096)
@@ -43,6 +43,3 @@ ${LOADER}: ${LOADERBIN} ${BTXLDR} ${BTXKERN}
 	    -b ${BTXKERN} ${LOADERBIN}
 
 .include <bsd.prog.mk>
-
-# XXX: clang integrated-as doesn't grok .codeNN directives yet
-CFLAGS.pxeldr.S=	${CLANG_NO_IAS}


More information about the svn-src-head mailing list