0b1e77734c
Comparing the object files produced by GNU as 2.17.50 and Clang IAS shows many immaterial changes in strtab etc., and one material change in .text: 1bac: 4c 8b 4f 18 mov 0x18(%rdi),%r9 1bb0: eb 0e jmp 1bc0 <Skein1024_block_loop> - 1bb2: 66 66 2e 0f 1f 84 00 data16 nopw %cs:0x0(%rax,%rax,1) - 1bb9: 00 00 00 00 - 1bbd: 0f 1f 00 nopl (%rax) + 1bb2: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) + 1bb9: 00 00 00 + 1bbc: 0f 1f 40 00 nopl 0x0(%rax) 0000000000001bc0 <Skein1024_block_loop>: Skein1024_block_loop(): 1bc0: 4c 8b 47 10 mov 0x10(%rdi),%r8 1bc4: 4c 03 85 c0 00 00 00 add 0xc0(%rbp),%r8 That is, GNU as and Clang's integrated assembler use different multi- byte NOPs for alignment (GNU as emits an 11 byte NOP + a 3 byte NOP, while Clang IAS emits a 10 byte NOP + a 4 byte NOP). Dependency cleanup hacks are not required, because we do not create .depend files from GNU as. Reviewed by: allanjude, arichardson, cem, tsoome Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D8434 |
||
---|---|---|
.. | ||
i386 | ||
Makefile | ||
Makefile.depend | ||
md4.copyright | ||
md4.h | ||
md4c.c | ||
md5.copyright | ||
md5.h | ||
md5c.c | ||
mddriver.c | ||
mdX.3 | ||
mdXhl.c | ||
ripemd.3 | ||
ripemd.h | ||
rmd160c.c | ||
rmd_locl.h | ||
rmdconst.h | ||
rmddriver.c | ||
sha0c.c | ||
sha1c.c | ||
sha256.3 | ||
sha512.3 | ||
sha_locl.h | ||
sha.3 | ||
sha.h | ||
shadriver.c | ||
skein.3 | ||
skeindriver.c |