freebsd-dev/stand/i386/cdboot/Makefile
Ed Maste 1596e9a43c 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
2019-08-15 17:32:39 +00:00

17 lines
190 B
Makefile

# $FreeBSD$
.include <bsd.init.mk>
PROG= cdboot
STRIP=
BINMODE=${NOBINMODE}
SRCS= ${PROG}.S
CFLAGS+=-I${BOOTSRC}/i386/common
ORG= 0x7c00
LDFLAGS+=${LDFLAGS_BIN}
.include <bsd.prog.mk>