3a6c85abcb
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 boot2, so CLANG_NO_IAS was not previously removed for those. In the case of boot2 the difference is that IAS produces a larger encoding for one instruction (the testb at the beginning of read). GNU as produces: 2e f6 06 b0 08 80 while IAS includes an address size override prefix (67) and produces: 2e 67 f6 05 b3 08 00 00 80 This results in three fewer NOPs elsewhere in boot2 but no functional change, so switch to IAS for boot2. (We can separately pursue improved 16-bit IAS support with the LLVM developers.) Sponsored by: The FreeBSD Foundation