qtwebengine: fix amd64 assembly in embedded copy of BoringSSL.

Fixes the build on x-only amd64 (more fixes are needed for the
runtime).

"whatever it takes" rsadowski
This commit is contained in:
tb 2023-01-17 23:00:44 +00:00
parent af4ba663c7
commit ddb1d6a07c
9 changed files with 129 additions and 1 deletions

View File

@ -15,7 +15,7 @@ VERSION = ${QT5_WEBENGINE_VERSION}
DIST_VERSION = ${QT5_WEBENGINE_VERSION}
DISTNAME = ${QT5NAME:L}-everywhere-src-${DIST_VERSION}
PKGNAME ?= ${DISTNAME:C/-everywhere-src//:C/-${DIST_VERSION}/-${VERSION}/}
REVISION = 8
REVISION = 9
MASTER_SITES ?= https://download.qt.io/official_releases/qt/${QT5_WEBENGINE_VERSION:R}/${QT5_WEBENGINE_VERSION}/submodules/ \
https://mirrors.ocf.berkeley.edu/qt/official_releases/qt/${QT5_WEBENGINE_VERSION:R}/${QT5_WEBENGINE_VERSION}/submodules/

View File

@ -0,0 +1,19 @@
Index: src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/chacha/chacha-x86_64.S
--- src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/chacha/chacha-x86_64.S.orig
+++ src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/chacha/chacha-x86_64.S
@@ -16,6 +16,7 @@
.extern OPENSSL_ia32cap_P
.hidden OPENSSL_ia32cap_P
+.rodata
.align 64
.Lzero:
.long 0,0,0,0
@@ -45,6 +46,7 @@
.Lsixteen:
.long 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16
.byte 67,104,97,67,104,97,50,48,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
+.previous
.globl ChaCha20_ctr32
.hidden ChaCha20_ctr32
.type ChaCha20_ctr32,@function

View File

@ -0,0 +1,19 @@
Index: src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/aesni-gcm-x86_64.S
--- src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/aesni-gcm-x86_64.S.orig
+++ src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/aesni-gcm-x86_64.S
@@ -835,6 +835,7 @@ aesni_gcm_encrypt:
.byte 0xf3,0xc3
.cfi_endproc
.size aesni_gcm_encrypt,.-aesni_gcm_encrypt
+.rodata
.align 64
.Lbswap_mask:
.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
@@ -847,6 +848,7 @@ aesni_gcm_encrypt:
.Lone_lsb:
.byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
.byte 65,69,83,45,78,73,32,71,67,77,32,109,111,100,117,108,101,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
+.previous
.align 64
#endif
.section .note.GNU-stack,"",@progbits

View File

@ -0,0 +1,18 @@
Index: src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/aesni-x86_64.S
--- src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/aesni-x86_64.S.orig
+++ src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/aesni-x86_64.S
@@ -2480,6 +2480,7 @@ __aesni_set_encrypt_key:
.byte 0xf3,0xc3
.size aes_hw_set_encrypt_key,.-aes_hw_set_encrypt_key
.size __aesni_set_encrypt_key,.-__aesni_set_encrypt_key
+.rodata
.align 64
.Lbswap_mask:
.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
@@ -2502,5 +2503,6 @@ __aesni_set_encrypt_key:
.byte 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69,83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.align 64
+.previous
#endif
.section .note.GNU-stack,"",@progbits

View File

@ -0,0 +1,12 @@
Index: src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/ghash-ssse3-x86_64.S
--- src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/ghash-ssse3-x86_64.S.orig
+++ src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/ghash-ssse3-x86_64.S
@@ -417,7 +417,7 @@ gcm_ghash_ssse3:
.align 16
-
+.rodata
.Lreverse_bytes:
.byte 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0

View File

@ -0,0 +1,11 @@
Index: src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/ghash-x86_64.S
--- src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/ghash-x86_64.S.orig
+++ src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/ghash-x86_64.S
@@ -1112,6 +1112,7 @@ gcm_ghash_avx:
.byte 0xf3,0xc3
.cfi_endproc
.size gcm_ghash_avx,.-gcm_ghash_avx
+.rodata
.align 64
.Lbswap_mask:
.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0

View File

@ -0,0 +1,11 @@
Index: src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/sha1-x86_64.S
--- src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/sha1-x86_64.S.orig
+++ src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/sha1-x86_64.S
@@ -3582,6 +3582,7 @@ _avx_shortcut:
.byte 0xf3,0xc3
.cfi_endproc
.size sha1_block_data_order_avx,.-sha1_block_data_order_avx
+.rodata
.align 64
K_XX_XX:
.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999

View File

@ -0,0 +1,19 @@
Index: src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/sha256-x86_64.S
--- src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/sha256-x86_64.S.orig
+++ src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/sha256-x86_64.S
@@ -1738,6 +1738,7 @@ sha256_block_data_order:
.byte 0xf3,0xc3
.cfi_endproc
.size sha256_block_data_order,.-sha256_block_data_order
+.rodata
.align 64
.type K256,@object
K256:
@@ -1781,6 +1782,7 @@ K256:
.long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908
.long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908
.byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
+.previous
.type sha256_block_data_order_ssse3,@function
.align 64
sha256_block_data_order_ssse3:

View File

@ -0,0 +1,19 @@
Index: src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/sha512-x86_64.S
--- src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/sha512-x86_64.S.orig
+++ src/3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/sha512-x86_64.S
@@ -1736,6 +1736,7 @@ sha512_block_data_order:
.byte 0xf3,0xc3
.cfi_endproc
.size sha512_block_data_order,.-sha512_block_data_order
+.rodata
.align 64
.type K512,@object
K512:
@@ -1823,6 +1824,7 @@ K512:
.quad 0x0001020304050607,0x08090a0b0c0d0e0f
.quad 0x0001020304050607,0x08090a0b0c0d0e0f
.byte 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
+.previous
.type sha512_block_data_order_avx,@function
.align 64
sha512_block_data_order_avx: