git: dc5259b56722 - stable/12 - stand: remove CLANG_NO_IAS from pxeldr
Dimitry Andric
dim at FreeBSD.org
Thu Sep 2 23:58:46 UTC 2021
The branch stable/12 has been updated by dim:
URL: https://cgit.FreeBSD.org/src/commit/?id=dc5259b56722031110395cc823b993751252d9a3
commit dc5259b56722031110395cc823b993751252d9a3
Author: Ed Maste <emaste at FreeBSD.org>
AuthorDate: 2019-08-15 17:59:22 +0000
Commit: Dimitry Andric <dim at FreeBSD.org>
CommitDate: 2021-09-02 23:30:05 +0000
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
(cherry picked from commit aa2dd958b489d590be9573f1bd05ec5b8a12f016)
---
stand/i386/pxeldr/Makefile | 3 ---
1 file changed, 3 deletions(-)
diff --git a/stand/i386/pxeldr/Makefile b/stand/i386/pxeldr/Makefile
index b0c9fbe0ee04..e1bcccc69112 100644
--- a/stand/i386/pxeldr/Makefile
+++ b/stand/i386/pxeldr/Makefile
@@ -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 dev-commits-src-all
mailing list