aboutsummaryrefslogtreecommitdiff
path: root/stand
diff options
context:
space:
mode:
authorEd Maste <emaste@FreeBSD.org>2019-08-15 17:32:39 +0000
committerEd Maste <emaste@FreeBSD.org>2019-08-15 17:32:39 +0000
commit1596e9a43cbfef904232a3321136e2ae480565f9 (patch)
treeaf19c3cdeb9748fb8b9436ffa42982c9edfb2ef5 /stand
parent0b894a06bd77c71588d9b2aa5dfaa625a5b87838 (diff)
downloadsrc-1596e9a43cbfef904232a3321136e2ae480565f9.tar.gz
src-1596e9a43cbfef904232a3321136e2ae480565f9.zip
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
Notes
Notes: svn path=/head/; revision=351092
Diffstat (limited to 'stand')
-rw-r--r--stand/i386/cdboot/Makefile3
1 files changed, 0 insertions, 3 deletions
diff --git a/stand/i386/cdboot/Makefile b/stand/i386/cdboot/Makefile
index 093ec49ec77a..0598d5d80dce 100644
--- a/stand/i386/cdboot/Makefile
+++ b/stand/i386/cdboot/Makefile
@@ -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}