fix compile fail on el8 aarch64
This commit is contained in:
parent
02866e970d
commit
c59938463c
32
chromium-84.0.4147.89-el8-arm-incompatible-ints.patch
Normal file
32
chromium-84.0.4147.89-el8-arm-incompatible-ints.patch
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
diff -up chromium-84.0.4147.89/third_party/libjpeg_turbo/simd/arm/common/jidctfst-neon.c.arm-incompatible-ints chromium-84.0.4147.89/third_party/libjpeg_turbo/simd/arm/common/jidctfst-neon.c
|
||||||
|
--- chromium-84.0.4147.89/third_party/libjpeg_turbo/simd/arm/common/jidctfst-neon.c.arm-incompatible-ints 2020-07-22 15:17:07.171430022 -0400
|
||||||
|
+++ chromium-84.0.4147.89/third_party/libjpeg_turbo/simd/arm/common/jidctfst-neon.c 2020-07-22 15:31:40.068296015 -0400
|
||||||
|
@@ -84,8 +84,8 @@ void jsimd_idct_ifast_neon(void *dct_tab
|
||||||
|
bitmap = vorrq_s16(bitmap, row6);
|
||||||
|
bitmap = vorrq_s16(bitmap, row7);
|
||||||
|
|
||||||
|
- int64_t left_ac_bitmap = vreinterpret_s64_s16(vget_low_s16(bitmap));
|
||||||
|
- int64_t right_ac_bitmap = vreinterpret_s64_s16(vget_high_s16(bitmap));
|
||||||
|
+ int64x1_t left_ac_bitmap = vreinterpret_s64_s16(vget_low_s16(bitmap));
|
||||||
|
+ int64x1_t right_ac_bitmap = vreinterpret_s64_s16(vget_high_s16(bitmap));
|
||||||
|
|
||||||
|
if (left_ac_bitmap == 0 && right_ac_bitmap == 0) {
|
||||||
|
/* All AC coefficients are zero. */
|
||||||
|
@@ -405,13 +405,13 @@ void jsimd_idct_ifast_neon(void *dct_tab
|
||||||
|
vqshrn_n_s16(col7, PASS1_BITS + 3));
|
||||||
|
/* Clamp to range [0-255]. */
|
||||||
|
uint8x16_t cols_01 = vreinterpretq_u8_s8(
|
||||||
|
- vaddq_s8(cols_01_s8, vdupq_n_u8(CENTERJSAMPLE)));
|
||||||
|
+ vaddq_s8(cols_01_s8, (int8x16_t)vdupq_n_u8(CENTERJSAMPLE)));
|
||||||
|
uint8x16_t cols_45 = vreinterpretq_u8_s8(
|
||||||
|
- vaddq_s8(cols_45_s8, vdupq_n_u8(CENTERJSAMPLE)));
|
||||||
|
+ vaddq_s8(cols_45_s8, (int8x16_t)vdupq_n_u8(CENTERJSAMPLE)));
|
||||||
|
uint8x16_t cols_23 = vreinterpretq_u8_s8(
|
||||||
|
- vaddq_s8(cols_23_s8, vdupq_n_u8(CENTERJSAMPLE)));
|
||||||
|
+ vaddq_s8(cols_23_s8, (int8x16_t)vdupq_n_u8(CENTERJSAMPLE)));
|
||||||
|
uint8x16_t cols_67 = vreinterpretq_u8_s8(
|
||||||
|
- vaddq_s8(cols_67_s8, vdupq_n_u8(CENTERJSAMPLE)));
|
||||||
|
+ vaddq_s8(cols_67_s8, (int8x16_t)vdupq_n_u8(CENTERJSAMPLE)));
|
||||||
|
|
||||||
|
/* Transpose block ready for store. */
|
||||||
|
uint32x4x2_t cols_0415 = vzipq_u32(vreinterpretq_u32_u8(cols_01),
|
@ -301,6 +301,10 @@ Patch104: chromium-84.0.4147.89-epel7-old-cups.patch
|
|||||||
Patch105: chromium-84.0.4147.89-el-constexpr.patch
|
Patch105: chromium-84.0.4147.89-el-constexpr.patch
|
||||||
# Still not wrong, but it seems like only EL needs it
|
# Still not wrong, but it seems like only EL needs it
|
||||||
Patch106: chromium-77-clang.patch
|
Patch106: chromium-77-clang.patch
|
||||||
|
# ARM failures on el8 related to int clashes
|
||||||
|
# error: incompatible types when initializing type 'int64_t' {aka 'long int'} using type 'int64x1_t'
|
||||||
|
# note: expected 'int8x16_t' but argument is of type 'uint8x16_t'
|
||||||
|
Patch107: chromium-84.0.4147.89-el8-arm-incompatible-ints.patch
|
||||||
|
|
||||||
# Enable VAAPI support on Linux
|
# Enable VAAPI support on Linux
|
||||||
# NOTE: This patch will never land upstream
|
# NOTE: This patch will never land upstream
|
||||||
@ -916,6 +920,10 @@ udev.
|
|||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
%if 0%{?rhel} == 8
|
||||||
|
%patch107 -p1 -b .el8-arm-incompatible-ints
|
||||||
|
%endif
|
||||||
|
|
||||||
# Feature specific patches
|
# Feature specific patches
|
||||||
%if %{use_vaapi}
|
%if %{use_vaapi}
|
||||||
%patch202 -p1 -b .vaapi
|
%patch202 -p1 -b .vaapi
|
||||||
|
Loading…
Reference in New Issue
Block a user