Align armv8.pl references to OPENSSL_armcap_P. This imports d741debb320bf54e8575d35603a44d4eb40fa1f9 from upstream. We've been managing the shared libraries already because our arm-xlate.pl automatically adds .hidden to .extern lines, but nice to reduce the diff. (This does result in some duplicate .hidden lines in the generated output, but we still want the arm-xlate.pl patch to automatically hide .globl.) Removing .comm lines does change the generated output, but having each asm file define its own copy of OPENSSL_armcap_P as a common symbol always seemed odd. I recall some weird issue where the armv4.pl files subtly rely on it for iOS's strange .indirect_symbol machinery. (Not actually because iOS wants a common symbol but because arm-xlate.pl repurposes .comm to trigger .indirect_symbol.) Fortunately, aarch64 is much better about PC-relative addressing, so it should be a no-op. The .comm lines have also previously caused weird issues (https://boringssl-review.googlesource.com/c/boringssl/+/32324), so it's generally nice to get rid of them. Update-Note: If aarch64 builds get some weird error about relocations, it's this CL's fault. Change-Id: I763ffa6cda750d99694ded8a5b68d7b27b09cfc9 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/44464 Reviewed-by: Adam Langley <agl@google.com> Commit-Queue: David Benjamin <davidben@google.com>
diff --git a/util/diff_asm.go b/util/diff_asm.go index 7b9b454..710a42c 100644 --- a/util/diff_asm.go +++ b/util/diff_asm.go
@@ -31,8 +31,19 @@ func mapName(path string) string { path = strings.Replace(path, filepath.FromSlash("/fipsmodule/"), string(filepath.Separator), 1) - switch filepath.ToSlash(path) { - case "crypto/cipher_extra/asm/aes128gcmsiv-x86_64.pl", "crypto/cipher_extra/asm/chacha20_poly1305_x86_64.pl", "crypto/rand/asm/rdrand-x86_64.pl": + pathSlash := filepath.ToSlash(path) + if strings.HasPrefix(pathSlash, "crypto/test/") { + return "" + } + switch pathSlash { + case "crypto/aes/asm/vpaes-armv7.pl", + "crypto/cipher_extra/asm/aes128gcmsiv-x86_64.pl", + "crypto/cipher_extra/asm/chacha20_poly1305_x86_64.pl", + "crypto/ec/asm/p256_beeu-x86_64-asm.pl", + "crypto/modes/asm/ghash-neon-armv8.pl", + "crypto/modes/asm/ghash-ssse3-x86.pl", + "crypto/modes/asm/ghash-ssse3-x86_64.pl", + "crypto/rand/asm/rdrand-x86_64.pl": return "" case "crypto/ec/asm/p256-x86_64-asm.pl": return filepath.FromSlash("crypto/ec/asm/ecp_nistz256-x86_64.pl")