diff --git a/libjpeg-turbo-CET.patch b/libjpeg-turbo-CET.patch index 1905fde..75e0cea 100644 --- a/libjpeg-turbo-CET.patch +++ b/libjpeg-turbo-CET.patch @@ -1,6 +1,6 @@ -From ec7dcec4d423b8af21ef32381de5a4c1f7a541ec Mon Sep 17 00:00:00 2001 +From db1afe88c361ceea22c6ac8abdb9b0ff41a39aa2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nikola=20Forr=C3=B3?= -Date: Thu, 3 Dec 2020 18:19:33 +0100 +Date: Mon, 15 Apr 2019 16:56:45 +0200 Subject: [PATCH] x86 SIMD: Add endbr32/endbr64 instructions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 @@ -92,7 +92,7 @@ index c46d684..7dc6e08 100644 +++ b/simd/i386/jccolext-avx2.asm @@ -42,6 +42,7 @@ GLOBAL_FUNCTION(jsimd_rgb_ycc_convert_avx2) - + EXTN(jsimd_rgb_ycc_convert_avx2): + _endbr32 push ebp @@ -104,7 +104,7 @@ index 6357a42..8048abb 100644 +++ b/simd/i386/jccolext-mmx.asm @@ -42,6 +42,7 @@ GLOBAL_FUNCTION(jsimd_rgb_ycc_convert_mmx) - + EXTN(jsimd_rgb_ycc_convert_mmx): + _endbr32 push ebp @@ -116,7 +116,7 @@ index c6c8085..5307ddc 100644 +++ b/simd/i386/jccolext-sse2.asm @@ -41,6 +41,7 @@ GLOBAL_FUNCTION(jsimd_rgb_ycc_convert_sse2) - + EXTN(jsimd_rgb_ycc_convert_sse2): + _endbr32 push ebp @@ -128,7 +128,7 @@ index 3fa7973..27a0e11 100644 +++ b/simd/i386/jcgryext-avx2.asm @@ -42,6 +42,7 @@ GLOBAL_FUNCTION(jsimd_rgb_gray_convert_avx2) - + EXTN(jsimd_rgb_gray_convert_avx2): + _endbr32 push ebp @@ -140,7 +140,7 @@ index 8af42e5..dda0e05 100644 +++ b/simd/i386/jcgryext-mmx.asm @@ -42,6 +42,7 @@ GLOBAL_FUNCTION(jsimd_rgb_gray_convert_mmx) - + EXTN(jsimd_rgb_gray_convert_mmx): + _endbr32 push ebp @@ -152,22 +152,22 @@ index c9d6ff1..f8835bb 100644 +++ b/simd/i386/jcgryext-sse2.asm @@ -41,6 +41,7 @@ GLOBAL_FUNCTION(jsimd_rgb_gray_convert_sse2) - + EXTN(jsimd_rgb_gray_convert_sse2): + _endbr32 push ebp mov eax, esp ; eax = original ebp sub esp, byte 4 diff --git a/simd/i386/jchuff-sse2.asm b/simd/i386/jchuff-sse2.asm -index 278cf5e..b16b974 100644 +index 76cc85f..0217480 100644 --- a/simd/i386/jchuff-sse2.asm +++ b/simd/i386/jchuff-sse2.asm -@@ -349,6 +349,7 @@ times 1 << 14 db 15 +@@ -350,6 +350,7 @@ times 1 << 14 db 15 GLOBAL_FUNCTION(jsimd_huff_encode_one_block_sse2) - + EXTN(jsimd_huff_encode_one_block_sse2): + _endbr32 - + %assign stack_offset 0 %define arg_state 4 + stack_offset diff --git a/simd/i386/jcphuff-sse2.asm b/simd/i386/jcphuff-sse2.asm @@ -176,7 +176,7 @@ index c26b48a..7fb01e5 100644 +++ b/simd/i386/jcphuff-sse2.asm @@ -281,6 +281,7 @@ GLOBAL_FUNCTION(jsimd_encode_mcu_AC_first_prepare_sse2) - + EXTN(jsimd_encode_mcu_AC_first_prepare_sse2): + _endbr32 push ebp @@ -184,7 +184,7 @@ index c26b48a..7fb01e5 100644 sub esp, byte 4 @@ -460,6 +461,7 @@ EXTN(jsimd_encode_mcu_AC_first_prepare_sse2): GLOBAL_FUNCTION(jsimd_encode_mcu_AC_refine_prepare_sse2) - + EXTN(jsimd_encode_mcu_AC_refine_prepare_sse2): + _endbr32 push ebp @@ -196,7 +196,7 @@ index 0a20802..46eba8c 100644 +++ b/simd/i386/jcsample-avx2.asm @@ -43,6 +43,7 @@ GLOBAL_FUNCTION(jsimd_h2v1_downsample_avx2) - + EXTN(jsimd_h2v1_downsample_avx2): + _endbr32 push ebp @@ -204,7 +204,7 @@ index 0a20802..46eba8c 100644 ; push ebx ; unused @@ -216,6 +217,7 @@ EXTN(jsimd_h2v1_downsample_avx2): GLOBAL_FUNCTION(jsimd_h2v2_downsample_avx2) - + EXTN(jsimd_h2v2_downsample_avx2): + _endbr32 push ebp @@ -216,7 +216,7 @@ index 2c223ee..b2b8ded 100644 +++ b/simd/i386/jcsample-mmx.asm @@ -42,6 +42,7 @@ GLOBAL_FUNCTION(jsimd_h2v1_downsample_mmx) - + EXTN(jsimd_h2v1_downsample_mmx): + _endbr32 push ebp @@ -224,7 +224,7 @@ index 2c223ee..b2b8ded 100644 ; push ebx ; unused @@ -185,6 +186,7 @@ EXTN(jsimd_h2v1_downsample_mmx): GLOBAL_FUNCTION(jsimd_h2v2_downsample_mmx) - + EXTN(jsimd_h2v2_downsample_mmx): + _endbr32 push ebp @@ -236,7 +236,7 @@ index 4fea60d..4c22b40 100644 +++ b/simd/i386/jcsample-sse2.asm @@ -42,6 +42,7 @@ GLOBAL_FUNCTION(jsimd_h2v1_downsample_sse2) - + EXTN(jsimd_h2v1_downsample_sse2): + _endbr32 push ebp @@ -244,7 +244,7 @@ index 4fea60d..4c22b40 100644 ; push ebx ; unused @@ -198,6 +199,7 @@ EXTN(jsimd_h2v1_downsample_sse2): GLOBAL_FUNCTION(jsimd_h2v2_downsample_sse2) - + EXTN(jsimd_h2v2_downsample_sse2): + _endbr32 push ebp @@ -256,7 +256,7 @@ index 015be04..b076765 100644 +++ b/simd/i386/jdcolext-avx2.asm @@ -43,6 +43,7 @@ GLOBAL_FUNCTION(jsimd_ycc_rgb_convert_avx2) - + EXTN(jsimd_ycc_rgb_convert_avx2): + _endbr32 push ebp @@ -268,7 +268,7 @@ index 5813cfc..150f5b6 100644 +++ b/simd/i386/jdcolext-mmx.asm @@ -42,6 +42,7 @@ GLOBAL_FUNCTION(jsimd_ycc_rgb_convert_mmx) - + EXTN(jsimd_ycc_rgb_convert_mmx): + _endbr32 push ebp @@ -280,7 +280,7 @@ index d5572b3..cd3ac70 100644 +++ b/simd/i386/jdcolext-sse2.asm @@ -42,6 +42,7 @@ GLOBAL_FUNCTION(jsimd_ycc_rgb_convert_sse2) - + EXTN(jsimd_ycc_rgb_convert_sse2): + _endbr32 push ebp @@ -292,7 +292,7 @@ index e35f728..0db0aa4 100644 +++ b/simd/i386/jdmrgext-avx2.asm @@ -43,6 +43,7 @@ GLOBAL_FUNCTION(jsimd_h2v1_merged_upsample_avx2) - + EXTN(jsimd_h2v1_merged_upsample_avx2): + _endbr32 push ebp @@ -300,7 +300,7 @@ index e35f728..0db0aa4 100644 sub esp, byte 4 @@ -523,6 +524,7 @@ EXTN(jsimd_h2v1_merged_upsample_avx2): GLOBAL_FUNCTION(jsimd_h2v2_merged_upsample_avx2) - + EXTN(jsimd_h2v2_merged_upsample_avx2): + _endbr32 push ebp @@ -312,7 +312,7 @@ index eb3e36b..6427a1a 100644 +++ b/simd/i386/jdmrgext-mmx.asm @@ -40,6 +40,7 @@ GLOBAL_FUNCTION(jsimd_h2v1_merged_upsample_mmx) - + EXTN(jsimd_h2v1_merged_upsample_mmx): + _endbr32 push ebp @@ -320,7 +320,7 @@ index eb3e36b..6427a1a 100644 sub esp, byte 4 @@ -408,6 +409,7 @@ EXTN(jsimd_h2v1_merged_upsample_mmx): GLOBAL_FUNCTION(jsimd_h2v2_merged_upsample_mmx) - + EXTN(jsimd_h2v2_merged_upsample_mmx): + _endbr32 push ebp @@ -332,7 +332,7 @@ index c113dc4..6897fa1 100644 +++ b/simd/i386/jdmrgext-sse2.asm @@ -42,6 +42,7 @@ GLOBAL_FUNCTION(jsimd_h2v1_merged_upsample_sse2) - + EXTN(jsimd_h2v1_merged_upsample_sse2): + _endbr32 push ebp @@ -340,7 +340,7 @@ index c113dc4..6897fa1 100644 sub esp, byte 4 @@ -465,6 +466,7 @@ EXTN(jsimd_h2v1_merged_upsample_sse2): GLOBAL_FUNCTION(jsimd_h2v2_merged_upsample_sse2) - + EXTN(jsimd_h2v2_merged_upsample_sse2): + _endbr32 push ebp @@ -352,7 +352,7 @@ index a800c35..7d52708 100644 +++ b/simd/i386/jdsample-avx2.asm @@ -60,6 +60,7 @@ PW_EIGHT times 16 dw 8 GLOBAL_FUNCTION(jsimd_h2v1_fancy_upsample_avx2) - + EXTN(jsimd_h2v1_fancy_upsample_avx2): + _endbr32 push ebp @@ -360,7 +360,7 @@ index a800c35..7d52708 100644 pushpic ebx @@ -227,6 +228,7 @@ EXTN(jsimd_h2v1_fancy_upsample_avx2): GLOBAL_FUNCTION(jsimd_h2v2_fancy_upsample_avx2) - + EXTN(jsimd_h2v2_fancy_upsample_avx2): + _endbr32 push ebp @@ -368,7 +368,7 @@ index a800c35..7d52708 100644 sub esp, byte 4 @@ -570,6 +572,7 @@ EXTN(jsimd_h2v2_fancy_upsample_avx2): GLOBAL_FUNCTION(jsimd_h2v1_upsample_avx2) - + EXTN(jsimd_h2v1_upsample_avx2): + _endbr32 push ebp @@ -376,7 +376,7 @@ index a800c35..7d52708 100644 ; push ebx ; unused @@ -669,6 +672,7 @@ EXTN(jsimd_h2v1_upsample_avx2): GLOBAL_FUNCTION(jsimd_h2v2_upsample_avx2) - + EXTN(jsimd_h2v2_upsample_avx2): + _endbr32 push ebp @@ -388,7 +388,7 @@ index 12c49f0..7f2ab40 100644 +++ b/simd/i386/jdsample-mmx.asm @@ -59,6 +59,7 @@ PW_EIGHT times 4 dw 8 GLOBAL_FUNCTION(jsimd_h2v1_fancy_upsample_mmx) - + EXTN(jsimd_h2v1_fancy_upsample_mmx): + _endbr32 push ebp @@ -396,7 +396,7 @@ index 12c49f0..7f2ab40 100644 pushpic ebx @@ -217,6 +218,7 @@ EXTN(jsimd_h2v1_fancy_upsample_mmx): GLOBAL_FUNCTION(jsimd_h2v2_fancy_upsample_mmx) - + EXTN(jsimd_h2v2_fancy_upsample_mmx): + _endbr32 push ebp @@ -404,7 +404,7 @@ index 12c49f0..7f2ab40 100644 sub esp, byte 4 @@ -541,6 +543,7 @@ EXTN(jsimd_h2v2_fancy_upsample_mmx): GLOBAL_FUNCTION(jsimd_h2v1_upsample_mmx) - + EXTN(jsimd_h2v1_upsample_mmx): + _endbr32 push ebp @@ -412,7 +412,7 @@ index 12c49f0..7f2ab40 100644 ; push ebx ; unused @@ -640,6 +643,7 @@ EXTN(jsimd_h2v1_upsample_mmx): GLOBAL_FUNCTION(jsimd_h2v2_upsample_mmx) - + EXTN(jsimd_h2v2_upsample_mmx): + _endbr32 push ebp @@ -424,7 +424,7 @@ index 4e28d2f..3311b25 100644 +++ b/simd/i386/jdsample-sse2.asm @@ -59,6 +59,7 @@ PW_EIGHT times 8 dw 8 GLOBAL_FUNCTION(jsimd_h2v1_fancy_upsample_sse2) - + EXTN(jsimd_h2v1_fancy_upsample_sse2): + _endbr32 push ebp @@ -432,7 +432,7 @@ index 4e28d2f..3311b25 100644 pushpic ebx @@ -216,6 +217,7 @@ EXTN(jsimd_h2v1_fancy_upsample_sse2): GLOBAL_FUNCTION(jsimd_h2v2_fancy_upsample_sse2) - + EXTN(jsimd_h2v2_fancy_upsample_sse2): + _endbr32 push ebp @@ -440,7 +440,7 @@ index 4e28d2f..3311b25 100644 sub esp, byte 4 @@ -538,6 +540,7 @@ EXTN(jsimd_h2v2_fancy_upsample_sse2): GLOBAL_FUNCTION(jsimd_h2v1_upsample_sse2) - + EXTN(jsimd_h2v1_upsample_sse2): + _endbr32 push ebp @@ -448,7 +448,7 @@ index 4e28d2f..3311b25 100644 ; push ebx ; unused @@ -635,6 +638,7 @@ EXTN(jsimd_h2v1_upsample_sse2): GLOBAL_FUNCTION(jsimd_h2v2_upsample_sse2) - + EXTN(jsimd_h2v2_upsample_sse2): + _endbr32 push ebp @@ -460,7 +460,7 @@ index 322ab16..109e36e 100644 +++ b/simd/i386/jfdctflt-3dn.asm @@ -56,6 +56,7 @@ PD_1_306 times 2 dd 1.306562964876376527856643 GLOBAL_FUNCTION(jsimd_fdct_float_3dnow) - + EXTN(jsimd_fdct_float_3dnow): + _endbr32 push ebp @@ -472,7 +472,7 @@ index 86952c6..b1e0576 100644 +++ b/simd/i386/jfdctflt-sse.asm @@ -67,6 +67,7 @@ PD_1_306 times 4 dd 1.306562964876376527856643 GLOBAL_FUNCTION(jsimd_fdct_float_sse) - + EXTN(jsimd_fdct_float_sse): + _endbr32 push ebp @@ -484,7 +484,7 @@ index 80645a5..be84fdb 100644 +++ b/simd/i386/jfdctfst-mmx.asm @@ -81,6 +81,7 @@ PW_F1306 times 4 dw F_1_306 << CONST_SHIFT GLOBAL_FUNCTION(jsimd_fdct_ifast_mmx) - + EXTN(jsimd_fdct_ifast_mmx): + _endbr32 push ebp @@ -496,7 +496,7 @@ index 446fa7a..945f9cf 100644 +++ b/simd/i386/jfdctfst-sse2.asm @@ -82,6 +82,7 @@ PW_F1306 times 8 dw F_1_306 << CONST_SHIFT GLOBAL_FUNCTION(jsimd_fdct_ifast_sse2) - + EXTN(jsimd_fdct_ifast_sse2): + _endbr32 push ebp @@ -508,7 +508,7 @@ index 23cf733..56acb63 100644 +++ b/simd/i386/jfdctint-avx2.asm @@ -260,6 +260,7 @@ PW_1_NEG1 times 8 dw 1 GLOBAL_FUNCTION(jsimd_fdct_islow_avx2) - + EXTN(jsimd_fdct_islow_avx2): + _endbr32 push ebp @@ -520,7 +520,7 @@ index 34a43b9..4d1e773 100644 +++ b/simd/i386/jfdctint-mmx.asm @@ -102,6 +102,7 @@ PW_DESCALE_P2X times 4 dw 1 << (PASS1_BITS - 1) GLOBAL_FUNCTION(jsimd_fdct_islow_mmx) - + EXTN(jsimd_fdct_islow_mmx): + _endbr32 push ebp @@ -532,7 +532,7 @@ index 6f8e18c..3954c8f 100644 +++ b/simd/i386/jfdctint-sse2.asm @@ -103,6 +103,7 @@ PW_DESCALE_P2X times 8 dw 1 << (PASS1_BITS - 1) GLOBAL_FUNCTION(jsimd_fdct_islow_sse2) - + EXTN(jsimd_fdct_islow_sse2): + _endbr32 push ebp @@ -544,7 +544,7 @@ index 8795191..eb49902 100644 +++ b/simd/i386/jidctflt-3dn.asm @@ -65,6 +65,7 @@ PB_CENTERJSAMP times 8 db CENTERJSAMPLE GLOBAL_FUNCTION(jsimd_idct_float_3dnow) - + EXTN(jsimd_idct_float_3dnow): + _endbr32 push ebp @@ -556,7 +556,7 @@ index b27ecfd..ffe54f8 100644 +++ b/simd/i386/jidctflt-sse.asm @@ -75,6 +75,7 @@ PB_CENTERJSAMP times 8 db CENTERJSAMPLE GLOBAL_FUNCTION(jsimd_idct_float_sse) - + EXTN(jsimd_idct_float_sse): + _endbr32 push ebp @@ -568,7 +568,7 @@ index c646eae..fd1fe35 100644 +++ b/simd/i386/jidctflt-sse2.asm @@ -75,6 +75,7 @@ PB_CENTERJSAMP times 16 db CENTERJSAMPLE GLOBAL_FUNCTION(jsimd_idct_float_sse2) - + EXTN(jsimd_idct_float_sse2): + _endbr32 push ebp @@ -580,7 +580,7 @@ index 24622d4..00940b8 100644 +++ b/simd/i386/jidctfst-mmx.asm @@ -96,6 +96,7 @@ PB_CENTERJSAMP times 8 db CENTERJSAMPLE GLOBAL_FUNCTION(jsimd_idct_ifast_mmx) - + EXTN(jsimd_idct_ifast_mmx): + _endbr32 push ebp @@ -592,7 +592,7 @@ index 19704ff..1f4af33 100644 +++ b/simd/i386/jidctfst-sse2.asm @@ -94,6 +94,7 @@ PB_CENTERJSAMP times 16 db CENTERJSAMPLE GLOBAL_FUNCTION(jsimd_idct_ifast_sse2) - + EXTN(jsimd_idct_ifast_sse2): + _endbr32 push ebp @@ -604,7 +604,7 @@ index 199c7df..2eb606a 100644 +++ b/simd/i386/jidctint-avx2.asm @@ -296,6 +296,7 @@ PW_1_NEG1 times 8 dw 1 GLOBAL_FUNCTION(jsimd_idct_islow_avx2) - + EXTN(jsimd_idct_islow_avx2): + _endbr32 push ebp @@ -616,7 +616,7 @@ index f15c8d3..2d91b7e 100644 +++ b/simd/i386/jidctint-mmx.asm @@ -109,6 +109,7 @@ PB_CENTERJSAMP times 8 db CENTERJSAMPLE GLOBAL_FUNCTION(jsimd_idct_islow_mmx) - + EXTN(jsimd_idct_islow_mmx): + _endbr32 push ebp @@ -628,7 +628,7 @@ index 43e3201..804be19 100644 +++ b/simd/i386/jidctint-sse2.asm @@ -107,6 +107,7 @@ PB_CENTERJSAMP times 16 db CENTERJSAMPLE GLOBAL_FUNCTION(jsimd_idct_islow_sse2) - + EXTN(jsimd_idct_islow_sse2): + _endbr32 push ebp @@ -640,7 +640,7 @@ index e2307e1..cb43106 100644 +++ b/simd/i386/jidctred-mmx.asm @@ -117,6 +117,7 @@ PB_CENTERJSAMP times 8 db CENTERJSAMPLE GLOBAL_FUNCTION(jsimd_idct_4x4_mmx) - + EXTN(jsimd_idct_4x4_mmx): + _endbr32 push ebp @@ -648,7 +648,7 @@ index e2307e1..cb43106 100644 sub esp, byte 4 @@ -504,6 +505,7 @@ EXTN(jsimd_idct_4x4_mmx): GLOBAL_FUNCTION(jsimd_idct_2x2_mmx) - + EXTN(jsimd_idct_2x2_mmx): + _endbr32 push ebp @@ -660,7 +660,7 @@ index 6e56494..2a61b9e 100644 +++ b/simd/i386/jidctred-sse2.asm @@ -115,6 +115,7 @@ PB_CENTERJSAMP times 16 db CENTERJSAMPLE GLOBAL_FUNCTION(jsimd_idct_4x4_sse2) - + EXTN(jsimd_idct_4x4_sse2): + _endbr32 push ebp @@ -668,7 +668,7 @@ index 6e56494..2a61b9e 100644 sub esp, byte 4 @@ -425,6 +426,7 @@ EXTN(jsimd_idct_4x4_sse2): GLOBAL_FUNCTION(jsimd_idct_2x2_sse2) - + EXTN(jsimd_idct_2x2_sse2): + _endbr32 push ebp @@ -680,7 +680,7 @@ index 5cb60ca..a0599eb 100644 +++ b/simd/i386/jquant-3dn.asm @@ -36,6 +36,7 @@ GLOBAL_FUNCTION(jsimd_convsamp_float_3dnow) - + EXTN(jsimd_convsamp_float_3dnow): + _endbr32 push ebp @@ -688,7 +688,7 @@ index 5cb60ca..a0599eb 100644 push ebx @@ -138,6 +139,7 @@ EXTN(jsimd_convsamp_float_3dnow): GLOBAL_FUNCTION(jsimd_quantize_float_3dnow) - + EXTN(jsimd_quantize_float_3dnow): + _endbr32 push ebp @@ -700,7 +700,7 @@ index 61305c6..080021b 100644 +++ b/simd/i386/jquant-mmx.asm @@ -36,6 +36,7 @@ GLOBAL_FUNCTION(jsimd_convsamp_mmx) - + EXTN(jsimd_convsamp_mmx): + _endbr32 push ebp @@ -708,7 +708,7 @@ index 61305c6..080021b 100644 push ebx @@ -145,6 +146,7 @@ EXTN(jsimd_convsamp_mmx): GLOBAL_FUNCTION(jsimd_quantize_mmx) - + EXTN(jsimd_quantize_mmx): + _endbr32 push ebp @@ -720,7 +720,7 @@ index 218adc9..cacd2a9 100644 +++ b/simd/i386/jquant-sse.asm @@ -36,6 +36,7 @@ GLOBAL_FUNCTION(jsimd_convsamp_float_sse) - + EXTN(jsimd_convsamp_float_sse): + _endbr32 push ebp @@ -728,7 +728,7 @@ index 218adc9..cacd2a9 100644 push ebx @@ -138,6 +139,7 @@ EXTN(jsimd_convsamp_float_sse): GLOBAL_FUNCTION(jsimd_quantize_float_sse) - + EXTN(jsimd_quantize_float_sse): + _endbr32 push ebp @@ -740,7 +740,7 @@ index a881ab5..6f4789c 100644 +++ b/simd/i386/jquantf-sse2.asm @@ -36,6 +36,7 @@ GLOBAL_FUNCTION(jsimd_convsamp_float_sse2) - + EXTN(jsimd_convsamp_float_sse2): + _endbr32 push ebp @@ -748,7 +748,7 @@ index a881ab5..6f4789c 100644 push ebx @@ -115,6 +116,7 @@ EXTN(jsimd_convsamp_float_sse2): GLOBAL_FUNCTION(jsimd_quantize_float_sse2) - + EXTN(jsimd_quantize_float_sse2): + _endbr32 push ebp @@ -760,7 +760,7 @@ index 5ed6bec..efcddd2 100644 +++ b/simd/i386/jquanti-avx2.asm @@ -37,6 +37,7 @@ GLOBAL_FUNCTION(jsimd_convsamp_avx2) - + EXTN(jsimd_convsamp_avx2): + _endbr32 push ebp @@ -768,7 +768,7 @@ index 5ed6bec..efcddd2 100644 push ebx @@ -130,6 +131,7 @@ EXTN(jsimd_convsamp_avx2): GLOBAL_FUNCTION(jsimd_quantize_avx2) - + EXTN(jsimd_quantize_avx2): + _endbr32 push ebp @@ -780,7 +780,7 @@ index 0a50940..98d39e0 100644 +++ b/simd/i386/jquanti-sse2.asm @@ -36,6 +36,7 @@ GLOBAL_FUNCTION(jsimd_convsamp_sse2) - + EXTN(jsimd_convsamp_sse2): + _endbr32 push ebp @@ -788,20 +788,20 @@ index 0a50940..98d39e0 100644 push ebx @@ -121,6 +122,7 @@ EXTN(jsimd_convsamp_sse2): GLOBAL_FUNCTION(jsimd_quantize_sse2) - + EXTN(jsimd_quantize_sse2): + _endbr32 push ebp mov ebp, esp ; push ebx ; unused diff --git a/simd/nasm/jsimdext.inc b/simd/nasm/jsimdext.inc -index e8d50b0..f140d4d 100644 +index bebcb20..4b0cd69 100644 --- a/simd/nasm/jsimdext.inc +++ b/simd/nasm/jsimdext.inc -@@ -512,6 +512,14 @@ const_base: - +@@ -513,6 +513,14 @@ const_base: + %endif - + +%imacro _endbr32 0 + dd 0xfb1e0ff3 +%endmacro @@ -814,437 +814,435 @@ index e8d50b0..f140d4d 100644 ; Defines picked up from the C headers ; diff --git a/simd/x86_64/jccolext-avx2.asm b/simd/x86_64/jccolext-avx2.asm -index ffb527d..5c01670 100644 +index dd7ea39..e6c8283 100644 --- a/simd/x86_64/jccolext-avx2.asm +++ b/simd/x86_64/jccolext-avx2.asm -@@ -40,6 +40,7 @@ +@@ -41,6 +41,7 @@ GLOBAL_FUNCTION(jsimd_rgb_ycc_convert_avx2) - + EXTN(jsimd_rgb_ycc_convert_avx2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + push r15 diff --git a/simd/x86_64/jccolext-sse2.asm b/simd/x86_64/jccolext-sse2.asm -index af70ed6..99c1889 100644 +index bc1e817..4bb1af6 100644 --- a/simd/x86_64/jccolext-sse2.asm +++ b/simd/x86_64/jccolext-sse2.asm -@@ -39,6 +39,7 @@ +@@ -40,6 +40,7 @@ GLOBAL_FUNCTION(jsimd_rgb_ycc_convert_sse2) - + EXTN(jsimd_rgb_ycc_convert_sse2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + push r15 diff --git a/simd/x86_64/jcgryext-avx2.asm b/simd/x86_64/jcgryext-avx2.asm -index ddcc2c0..a5b9619 100644 +index c8c8d12..12ecb7e 100644 --- a/simd/x86_64/jcgryext-avx2.asm +++ b/simd/x86_64/jcgryext-avx2.asm -@@ -40,6 +40,7 @@ +@@ -41,6 +41,7 @@ GLOBAL_FUNCTION(jsimd_rgb_gray_convert_avx2) - + EXTN(jsimd_rgb_gray_convert_avx2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + push r15 diff --git a/simd/x86_64/jcgryext-sse2.asm b/simd/x86_64/jcgryext-sse2.asm -index f1d399a..550fc2f 100644 +index 7e5a0f2..e3a2413 100644 --- a/simd/x86_64/jcgryext-sse2.asm +++ b/simd/x86_64/jcgryext-sse2.asm -@@ -39,6 +39,7 @@ +@@ -40,6 +40,7 @@ GLOBAL_FUNCTION(jsimd_rgb_gray_convert_sse2) - + EXTN(jsimd_rgb_gray_convert_sse2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + push r15 diff --git a/simd/x86_64/jchuff-sse2.asm b/simd/x86_64/jchuff-sse2.asm -index 9ea6df9..7e5ca30 100644 +index 0c2cdd6..44ea81d 100644 --- a/simd/x86_64/jchuff-sse2.asm +++ b/simd/x86_64/jchuff-sse2.asm -@@ -259,6 +259,7 @@ times 1 << 15 db 16 +@@ -261,6 +261,7 @@ times 1 << 15 db 16 GLOBAL_FUNCTION(jsimd_huff_encode_one_block_sse2) - + EXTN(jsimd_huff_encode_one_block_sse2): + _endbr64 - - %ifdef WIN64 - + push rbp + mov rbp, rsp + diff --git a/simd/x86_64/jcphuff-sse2.asm b/simd/x86_64/jcphuff-sse2.asm -index 01b5c02..4625c11 100644 +index 11db4b2..2157e97 100644 --- a/simd/x86_64/jcphuff-sse2.asm +++ b/simd/x86_64/jcphuff-sse2.asm -@@ -281,6 +281,7 @@ +@@ -282,6 +282,7 @@ GLOBAL_FUNCTION(jsimd_encode_mcu_AC_first_prepare_sse2) - + EXTN(jsimd_encode_mcu_AC_first_prepare_sse2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 -@@ -449,6 +450,7 @@ EXTN(jsimd_encode_mcu_AC_first_prepare_sse2): + mov rbp, rsp + and rsp, byte (-SIZEOF_XMMWORD) ; align to 128 bits +@@ -445,6 +446,7 @@ EXTN(jsimd_encode_mcu_AC_first_prepare_sse2): GLOBAL_FUNCTION(jsimd_encode_mcu_AC_refine_prepare_sse2) - + EXTN(jsimd_encode_mcu_AC_refine_prepare_sse2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + and rsp, byte (-SIZEOF_XMMWORD) ; align to 128 bits diff --git a/simd/x86_64/jcsample-avx2.asm b/simd/x86_64/jcsample-avx2.asm -index b32527a..28bf70a 100644 +index 589c52b..7d8d4e0 100644 --- a/simd/x86_64/jcsample-avx2.asm +++ b/simd/x86_64/jcsample-avx2.asm @@ -44,6 +44,7 @@ GLOBAL_FUNCTION(jsimd_h2v1_downsample_avx2) - + EXTN(jsimd_h2v1_downsample_avx2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp -@@ -206,6 +207,7 @@ EXTN(jsimd_h2v1_downsample_avx2): + collect_args 6 +@@ -205,6 +206,7 @@ EXTN(jsimd_h2v1_downsample_avx2): GLOBAL_FUNCTION(jsimd_h2v2_downsample_avx2) - + EXTN(jsimd_h2v2_downsample_avx2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp + collect_args 6 diff --git a/simd/x86_64/jcsample-sse2.asm b/simd/x86_64/jcsample-sse2.asm -index 2fcfe45..2093090 100644 +index 7a4f1bc..8932b94 100644 --- a/simd/x86_64/jcsample-sse2.asm +++ b/simd/x86_64/jcsample-sse2.asm @@ -43,6 +43,7 @@ GLOBAL_FUNCTION(jsimd_h2v1_downsample_sse2) - + EXTN(jsimd_h2v1_downsample_sse2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp -@@ -188,6 +189,7 @@ EXTN(jsimd_h2v1_downsample_sse2): + collect_args 6 +@@ -187,6 +188,7 @@ EXTN(jsimd_h2v1_downsample_sse2): GLOBAL_FUNCTION(jsimd_h2v2_downsample_sse2) - + EXTN(jsimd_h2v2_downsample_sse2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp + collect_args 6 diff --git a/simd/x86_64/jdcolext-avx2.asm b/simd/x86_64/jdcolext-avx2.asm -index 2370fda..406fc01 100644 +index 070436c..6c0a212 100644 --- a/simd/x86_64/jdcolext-avx2.asm +++ b/simd/x86_64/jdcolext-avx2.asm -@@ -41,6 +41,7 @@ +@@ -42,6 +42,7 @@ GLOBAL_FUNCTION(jsimd_ycc_rgb_convert_avx2) - + EXTN(jsimd_ycc_rgb_convert_avx2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + push r15 diff --git a/simd/x86_64/jdcolext-sse2.asm b/simd/x86_64/jdcolext-sse2.asm -index e07c8d7..84acb50 100644 +index bba3a30..28d05e4 100644 --- a/simd/x86_64/jdcolext-sse2.asm +++ b/simd/x86_64/jdcolext-sse2.asm -@@ -40,6 +40,7 @@ +@@ -41,6 +41,7 @@ GLOBAL_FUNCTION(jsimd_ycc_rgb_convert_sse2) - + EXTN(jsimd_ycc_rgb_convert_sse2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + push r15 diff --git a/simd/x86_64/jdmrgext-avx2.asm b/simd/x86_64/jdmrgext-avx2.asm -index 8b264b4..c42f395 100644 +index 1191645..f58384c 100644 --- a/simd/x86_64/jdmrgext-avx2.asm +++ b/simd/x86_64/jdmrgext-avx2.asm -@@ -41,6 +41,7 @@ +@@ -42,6 +42,7 @@ GLOBAL_FUNCTION(jsimd_h2v1_merged_upsample_avx2) - + EXTN(jsimd_h2v1_merged_upsample_avx2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 -@@ -505,6 +506,7 @@ EXTN(jsimd_h2v1_merged_upsample_avx2): + mov rbp, rsp + push r15 +@@ -506,6 +507,7 @@ EXTN(jsimd_h2v1_merged_upsample_avx2): GLOBAL_FUNCTION(jsimd_h2v2_merged_upsample_avx2) - + EXTN(jsimd_h2v2_merged_upsample_avx2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp + collect_args 4 diff --git a/simd/x86_64/jdmrgext-sse2.asm b/simd/x86_64/jdmrgext-sse2.asm -index eb3ab9d..8347620 100644 +index 8988dd0..8641aa3 100644 --- a/simd/x86_64/jdmrgext-sse2.asm +++ b/simd/x86_64/jdmrgext-sse2.asm -@@ -40,6 +40,7 @@ +@@ -41,6 +41,7 @@ GLOBAL_FUNCTION(jsimd_h2v1_merged_upsample_sse2) - + EXTN(jsimd_h2v1_merged_upsample_sse2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 -@@ -447,6 +448,7 @@ EXTN(jsimd_h2v1_merged_upsample_sse2): + mov rbp, rsp + push r15 +@@ -448,6 +449,7 @@ EXTN(jsimd_h2v1_merged_upsample_sse2): GLOBAL_FUNCTION(jsimd_h2v2_merged_upsample_sse2) - + EXTN(jsimd_h2v2_merged_upsample_sse2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp + collect_args 4 diff --git a/simd/x86_64/jdsample-avx2.asm b/simd/x86_64/jdsample-avx2.asm -index 1e4979f..b80d607 100644 +index c6ddbb5..c5594ed 100644 --- a/simd/x86_64/jdsample-avx2.asm +++ b/simd/x86_64/jdsample-avx2.asm -@@ -61,6 +61,7 @@ PW_EIGHT times 16 dw 8 +@@ -62,6 +62,7 @@ PW_EIGHT times 16 dw 8 GLOBAL_FUNCTION(jsimd_h2v1_fancy_upsample_avx2) - + EXTN(jsimd_h2v1_fancy_upsample_avx2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp + push_xmm 3 @@ -215,6 +216,7 @@ EXTN(jsimd_h2v1_fancy_upsample_avx2): GLOBAL_FUNCTION(jsimd_h2v2_fancy_upsample_avx2) - + EXTN(jsimd_h2v2_fancy_upsample_avx2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + push r15 @@ -524,6 +526,7 @@ EXTN(jsimd_h2v2_fancy_upsample_avx2): GLOBAL_FUNCTION(jsimd_h2v1_upsample_avx2) - + EXTN(jsimd_h2v1_upsample_avx2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp -@@ -613,6 +616,7 @@ EXTN(jsimd_h2v1_upsample_avx2): + collect_args 4 +@@ -612,6 +615,7 @@ EXTN(jsimd_h2v1_upsample_avx2): GLOBAL_FUNCTION(jsimd_h2v2_upsample_avx2) - + EXTN(jsimd_h2v2_upsample_avx2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp + collect_args 4 diff --git a/simd/x86_64/jdsample-sse2.asm b/simd/x86_64/jdsample-sse2.asm -index 38dbcee..6a1e012 100644 +index 24cd389..27bf771 100644 --- a/simd/x86_64/jdsample-sse2.asm +++ b/simd/x86_64/jdsample-sse2.asm -@@ -60,6 +60,7 @@ PW_EIGHT times 8 dw 8 +@@ -61,6 +61,7 @@ PW_EIGHT times 8 dw 8 GLOBAL_FUNCTION(jsimd_h2v1_fancy_upsample_sse2) - + EXTN(jsimd_h2v1_fancy_upsample_sse2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp + collect_args 4 @@ -202,6 +203,7 @@ EXTN(jsimd_h2v1_fancy_upsample_sse2): GLOBAL_FUNCTION(jsimd_h2v2_fancy_upsample_sse2) - + EXTN(jsimd_h2v2_fancy_upsample_sse2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + push r15 @@ -497,6 +499,7 @@ EXTN(jsimd_h2v2_fancy_upsample_sse2): GLOBAL_FUNCTION(jsimd_h2v1_upsample_sse2) - + EXTN(jsimd_h2v1_upsample_sse2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp -@@ -584,6 +587,7 @@ EXTN(jsimd_h2v1_upsample_sse2): + collect_args 4 +@@ -583,6 +586,7 @@ EXTN(jsimd_h2v1_upsample_sse2): GLOBAL_FUNCTION(jsimd_h2v2_upsample_sse2) - + EXTN(jsimd_h2v2_upsample_sse2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp + collect_args 4 diff --git a/simd/x86_64/jfdctflt-sse.asm b/simd/x86_64/jfdctflt-sse.asm -index ef27966..90d06eb 100644 +index 3595496..b5abeee 100644 --- a/simd/x86_64/jfdctflt-sse.asm +++ b/simd/x86_64/jfdctflt-sse.asm -@@ -65,6 +65,7 @@ PD_1_306 times 4 dd 1.306562964876376527856643 +@@ -66,6 +66,7 @@ PD_1_306 times 4 dd 1.306562964876376527856643 GLOBAL_FUNCTION(jsimd_fdct_float_sse) - + EXTN(jsimd_fdct_float_sse): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + push r15 diff --git a/simd/x86_64/jfdctfst-sse2.asm b/simd/x86_64/jfdctfst-sse2.asm -index 2e1bfe6..5a74aaf 100644 +index d33c58a..78af5e4 100644 --- a/simd/x86_64/jfdctfst-sse2.asm +++ b/simd/x86_64/jfdctfst-sse2.asm -@@ -80,6 +80,7 @@ PW_F1306 times 8 dw F_1_306 << CONST_SHIFT +@@ -81,6 +81,7 @@ PW_F1306 times 8 dw F_1_306 << CONST_SHIFT GLOBAL_FUNCTION(jsimd_fdct_ifast_sse2) - + EXTN(jsimd_fdct_ifast_sse2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + push r15 diff --git a/simd/x86_64/jfdctint-avx2.asm b/simd/x86_64/jfdctint-avx2.asm -index e56258b..2ac6d4f 100644 +index d0afe5e..b083fbb 100644 --- a/simd/x86_64/jfdctint-avx2.asm +++ b/simd/x86_64/jfdctint-avx2.asm @@ -260,6 +260,7 @@ PW_1_NEG1 times 8 dw 1 GLOBAL_FUNCTION(jsimd_fdct_islow_avx2) - + EXTN(jsimd_fdct_islow_avx2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp + collect_args 1 diff --git a/simd/x86_64/jfdctint-sse2.asm b/simd/x86_64/jfdctint-sse2.asm -index ec1f383..0950825 100644 +index 024ce90..88ea491 100644 --- a/simd/x86_64/jfdctint-sse2.asm +++ b/simd/x86_64/jfdctint-sse2.asm -@@ -101,6 +101,7 @@ PW_DESCALE_P2X times 8 dw 1 << (PASS1_BITS - 1) +@@ -102,6 +102,7 @@ PW_DESCALE_P2X times 8 dw 1 << (PASS1_BITS - 1) GLOBAL_FUNCTION(jsimd_fdct_islow_sse2) - + EXTN(jsimd_fdct_islow_sse2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + push r15 diff --git a/simd/x86_64/jidctflt-sse2.asm b/simd/x86_64/jidctflt-sse2.asm -index 60bf961..f04902a 100644 +index 952fbe3..8610710 100644 --- a/simd/x86_64/jidctflt-sse2.asm +++ b/simd/x86_64/jidctflt-sse2.asm @@ -76,6 +76,7 @@ PB_CENTERJSAMP times 16 db CENTERJSAMPLE GLOBAL_FUNCTION(jsimd_idct_float_sse2) - + EXTN(jsimd_idct_float_sse2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + push r15 diff --git a/simd/x86_64/jidctfst-sse2.asm b/simd/x86_64/jidctfst-sse2.asm -index cb97fdf..d004da9 100644 +index a3da8d8..351ee06 100644 --- a/simd/x86_64/jidctfst-sse2.asm +++ b/simd/x86_64/jidctfst-sse2.asm @@ -95,6 +95,7 @@ PB_CENTERJSAMP times 16 db CENTERJSAMPLE GLOBAL_FUNCTION(jsimd_idct_ifast_sse2) - + EXTN(jsimd_idct_ifast_sse2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + push r15 diff --git a/simd/x86_64/jidctint-avx2.asm b/simd/x86_64/jidctint-avx2.asm -index ca7e317..5c65fa7 100644 +index 528da01..00087c7 100644 --- a/simd/x86_64/jidctint-avx2.asm +++ b/simd/x86_64/jidctint-avx2.asm @@ -282,6 +282,7 @@ PW_1_NEG1 times 8 dw 1 GLOBAL_FUNCTION(jsimd_idct_islow_avx2) - + EXTN(jsimd_idct_islow_avx2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp mov rbp, rsp ; rbp = aligned rbp + push_xmm 4 diff --git a/simd/x86_64/jidctint-sse2.asm b/simd/x86_64/jidctint-sse2.asm -index 7aa869b..a428c9e 100644 +index 92f633e..9301e81 100644 --- a/simd/x86_64/jidctint-sse2.asm +++ b/simd/x86_64/jidctint-sse2.asm @@ -108,6 +108,7 @@ PB_CENTERJSAMP times 16 db CENTERJSAMPLE GLOBAL_FUNCTION(jsimd_idct_islow_sse2) - + EXTN(jsimd_idct_islow_sse2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 + mov rbp, rsp + push r15 diff --git a/simd/x86_64/jidctred-sse2.asm b/simd/x86_64/jidctred-sse2.asm -index 4ece9d8..5fac624 100644 +index 1ec500c..e74162d 100644 --- a/simd/x86_64/jidctred-sse2.asm +++ b/simd/x86_64/jidctred-sse2.asm @@ -116,6 +116,7 @@ PB_CENTERJSAMP times 16 db CENTERJSAMPLE GLOBAL_FUNCTION(jsimd_idct_4x4_sse2) - + EXTN(jsimd_idct_4x4_sse2): + _endbr64 push rbp - mov rax, rsp ; rax = original rbp - sub rsp, byte 4 -@@ -414,6 +415,7 @@ EXTN(jsimd_idct_4x4_sse2): + mov rbp, rsp + push r15 +@@ -413,6 +414,7 @@ EXTN(jsimd_idct_4x4_sse2): GLOBAL_FUNCTION(jsimd_idct_2x2_sse2) - + EXTN(jsimd_idct_2x2_sse2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp + collect_args 4 diff --git a/simd/x86_64/jquantf-sse2.asm b/simd/x86_64/jquantf-sse2.asm -index ab2e395..a260e32 100644 +index 232bbb2..2d65986 100644 --- a/simd/x86_64/jquantf-sse2.asm +++ b/simd/x86_64/jquantf-sse2.asm @@ -37,6 +37,7 @@ GLOBAL_FUNCTION(jsimd_convsamp_float_sse2) - + EXTN(jsimd_convsamp_float_sse2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp -@@ -110,6 +111,7 @@ EXTN(jsimd_convsamp_float_sse2): + collect_args 3 +@@ -109,6 +110,7 @@ EXTN(jsimd_convsamp_float_sse2): GLOBAL_FUNCTION(jsimd_quantize_float_sse2) - + EXTN(jsimd_quantize_float_sse2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp + collect_args 3 diff --git a/simd/x86_64/jquanti-avx2.asm b/simd/x86_64/jquanti-avx2.asm -index 70fe811..c48c73f 100644 +index 66104d7..a7ea496 100644 --- a/simd/x86_64/jquanti-avx2.asm +++ b/simd/x86_64/jquanti-avx2.asm @@ -38,6 +38,7 @@ GLOBAL_FUNCTION(jsimd_convsamp_avx2) - + EXTN(jsimd_convsamp_avx2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp -@@ -116,6 +117,7 @@ EXTN(jsimd_convsamp_avx2): + collect_args 3 +@@ -115,6 +116,7 @@ EXTN(jsimd_convsamp_avx2): GLOBAL_FUNCTION(jsimd_quantize_avx2) - + EXTN(jsimd_quantize_avx2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp + collect_args 3 diff --git a/simd/x86_64/jquanti-sse2.asm b/simd/x86_64/jquanti-sse2.asm -index 3ee4420..fb1b4ae 100644 +index 11e9f4c..24cb1cf 100644 --- a/simd/x86_64/jquanti-sse2.asm +++ b/simd/x86_64/jquanti-sse2.asm @@ -37,6 +37,7 @@ GLOBAL_FUNCTION(jsimd_convsamp_sse2) - + EXTN(jsimd_convsamp_sse2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp -@@ -116,6 +117,7 @@ EXTN(jsimd_convsamp_sse2): + collect_args 3 +@@ -115,6 +116,7 @@ EXTN(jsimd_convsamp_sse2): GLOBAL_FUNCTION(jsimd_quantize_sse2) - + EXTN(jsimd_quantize_sse2): + _endbr64 push rbp - mov rax, rsp mov rbp, rsp --- -2.31.1 - + collect_args 3 +-- diff --git a/libjpeg-turbo-cmake.patch b/libjpeg-turbo-cmake.patch index 5cc9a3e..ef4c14d 100644 --- a/libjpeg-turbo-cmake.patch +++ b/libjpeg-turbo-cmake.patch @@ -1,38 +1,13 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index cca2966..4875bf3 100644 +index adb0ca4..902c271 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -1434,8 +1434,6 @@ if(WITH_TURBOJPEG) - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) -- install(TARGETS tjbench -- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) - if(NOT CMAKE_VERSION VERSION_LESS "3.1" AND MSVC AND - CMAKE_C_LINKER_SUPPORTS_PDB) - install(FILES "$" -@@ -1446,15 +1444,6 @@ if(WITH_TURBOJPEG) - install(TARGETS turbojpeg-static EXPORT ${CMAKE_PROJECT_NAME}Targets - INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) -- if(NOT ENABLE_SHARED) -- if(MSVC_IDE OR XCODE) -- set(DIR "${CMAKE_CURRENT_BINARY_DIR}/\${CMAKE_INSTALL_CONFIG_NAME}") -- else() -- set(DIR ${CMAKE_CURRENT_BINARY_DIR}) -- endif() -- install(PROGRAMS ${DIR}/tjbench-static${EXE} -- DESTINATION ${CMAKE_INSTALL_BINDIR} RENAME tjbench${EXE}) -- endif() - endif() - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/turbojpeg.h - DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) -@@ -1481,18 +1470,6 @@ endif() - +@@ -1768,18 +1768,6 @@ endif() + install(TARGETS rdjpgcom wrjpgcom RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) - + -install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/README.ijg -- ${CMAKE_CURRENT_SOURCE_DIR}/README.md ${CMAKE_CURRENT_SOURCE_DIR}/example.txt +- ${CMAKE_CURRENT_SOURCE_DIR}/README.md ${CMAKE_CURRENT_SOURCE_DIR}/example.c - ${CMAKE_CURRENT_SOURCE_DIR}/tjexample.c - ${CMAKE_CURRENT_SOURCE_DIR}/libjpeg.txt - ${CMAKE_CURRENT_SOURCE_DIR}/structure.txt @@ -46,12 +21,13 @@ index cca2966..4875bf3 100644 if(UNIX OR MINGW) install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/cjpeg.1 ${CMAKE_CURRENT_SOURCE_DIR}/djpeg.1 ${CMAKE_CURRENT_SOURCE_DIR}/jpegtran.1 -@@ -1516,7 +1493,7 @@ install(EXPORT ${CMAKE_PROJECT_NAME}Targets - +@@ -1803,7 +1791,7 @@ install(EXPORT ${CMAKE_PROJECT_NAME}Targets + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/jconfig.h ${CMAKE_CURRENT_SOURCE_DIR}/jerror.h ${CMAKE_CURRENT_SOURCE_DIR}/jmorecfg.h - ${CMAKE_CURRENT_SOURCE_DIR}/jpeglib.h + ${CMAKE_CURRENT_SOURCE_DIR}/jpeglib.h ${CMAKE_CURRENT_SOURCE_DIR}/jpegint.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) - + include(cmakescripts/BuildPackages.cmake) +-- diff --git a/libjpeg-turbo.spec b/libjpeg-turbo.spec index 83e0198..0b92d7c 100644 --- a/libjpeg-turbo.spec +++ b/libjpeg-turbo.spec @@ -1,11 +1,11 @@ Name: libjpeg-turbo -Version: 2.1.4 -Release: 6%{?dist} +Version: 3.0.2 +Release: 1%{?dist} Summary: A MMX/SSE2/SIMD accelerated library for manipulating JPEG image files License: Zlib AND BSD-3-Clause AND MIT AND IJG -URL: http://sourceforge.net/projects/libjpeg-turbo +URL: https://github.com/%{name}/%{name} -Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz +Source0: %{url}/releases/download/%{version}/%{name}-%{version}.tar.gz Patch0: libjpeg-turbo-cmake.patch Patch1: libjpeg-turbo-CET.patch @@ -92,6 +92,9 @@ export LDFLAGS="$RPM_LD_FLAGS -Wl,-z,ibt -Wl,-z,shstk" %cmake_install find %{buildroot} -name "*.la" -delete +# Remove tjbench +rm -f %{buildroot}/%{_bindir}/tjbench + # Fix perms chmod -x README.md @@ -146,7 +149,7 @@ export LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{_libdir}/libjpeg.so.62* %files devel -%doc coderules.txt jconfig.txt libjpeg.txt structure.txt example.txt +%doc coderules.txt jconfig.txt libjpeg.txt structure.txt %{_includedir}/jconfig*.h %{_includedir}/jerror.h %{_includedir}/jmorecfg.h @@ -181,6 +184,9 @@ export LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{_libdir}/pkgconfig/libturbojpeg.pc %changelog +* Mon Feb 05 2024 Frantisek Zatloukal - 3.0.2-1 +- New upstream release 3.0.2 (Fixes RHBZ#2256228 and RHBZ#2166459 and RHBZ#2208448) + * Mon Jan 29 2024 Matej Mužila - 2.1.4-6 - migrated to SPDX license diff --git a/sources b/sources index 55ec2e1..2573f54 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libjpeg-turbo-2.1.4.tar.gz) = 511f065767c022da06b6c36299686fa44f83441646f7e33b766c6cfab03f91b0e6bfa456962184071dadaed4057ba9a29cba685383f3eb86a4370a1a53731a70 +SHA512 (libjpeg-turbo-3.0.2.tar.gz) = f5eadda0712feb810a8c3bb2621fda24a4c30574998ce30f423b3ffa25225c7a87cb14b696232bc0270485f422a2853a5c32eafb65bc5eeab1b41d8aeb32ad29