svn commit: r351092 - head/stand/i386/cdboot

Ed Maste emaste at FreeBSD.org
Thu Aug 15 17:32:39 UTC 2019


Author: emaste
Date: Thu Aug 15 17:32:39 2019
New Revision: 351092
URL: https://svnweb.freebsd.org/changeset/base/351092

Log:
  stand: remove CLANG_NO_IAS from cdboot
  
  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
  cdboot, so CLANG_NO_IAS was not previously removed for those.
  
  In the case of cdboot the difference is that IAS adds a size override
  prefix (67h) to many instructions to specify a 32-bit address, even
  though the two high bytes are zero.  This wastes three bytes per
  instance, but as cdboot is not size-constrained it doesn't matter.
  Padding is also different in one case; Clang used two one-byte nops
  while GNU as used a single two-byte xchg %eax, %eax.  In any case, there
  is no functional change.
  
  Sponsored by:   The FreeBSD Foundation

Modified:
  head/stand/i386/cdboot/Makefile

Modified: head/stand/i386/cdboot/Makefile
==============================================================================
--- head/stand/i386/cdboot/Makefile	Thu Aug 15 17:31:11 2019	(r351091)
+++ head/stand/i386/cdboot/Makefile	Thu Aug 15 17:32:39 2019	(r351092)
@@ -14,6 +14,3 @@ ORG=	0x7c00
 LDFLAGS+=${LDFLAGS_BIN}
 
 .include <bsd.prog.mk>
-
-# XXX: clang integrated-as doesn't grok .codeNN directives yet
-CFLAGS.cdboot.S=	${CLANG_NO_IAS}


More information about the svn-src-head mailing list