gecko-dev/media/libjpeg/assembly-tables.diff

71 строка
3.1 KiB
Diff

diff --git a/media/libjpeg/simd/i386/jchuff-sse2.asm b/media/libjpeg/simd/i386/jchuff-sse2.asm
index 6ea69f6..fea4de3 100644
--- a/media/libjpeg/simd/i386/jchuff-sse2.asm
+++ b/media/libjpeg/simd/i386/jchuff-sse2.asm
@@ -27,11 +27,10 @@
alignz 32
GLOBAL_DATA(jconst_huff_encode_one_block)
+ EXTERN EXTN(jpeg_nbits_table)
EXTN(jconst_huff_encode_one_block):
-%include "jpeg_nbits_table.inc"
-
alignz 32
; --------------------------------------------------------------------------
@@ -233,7 +232,7 @@ EXTN(jsimd_huff_encode_one_block_sse2):
; Find the number of bits needed for the magnitude of the coefficient
movpic ebp, POINTER [esp+gotptr] ; load GOT address (ebp)
- movzx edx, byte [GOTOFF(ebp, jpeg_nbits_table + ecx)] ; nbits = JPEG_NBITS(temp);
+ movzx edx, byte [GOTOFF(ebp, EXTN(jpeg_nbits_table) + ecx)] ; nbits = JPEG_NBITS(temp);
mov DWORD [esp+temp2], edx ; backup nbits in temp2
; Emit the Huffman-coded symbol for the number of bits
@@ -305,7 +304,7 @@ EXTN(jsimd_huff_encode_one_block_sse2):
.ERLOOP:
movsx eax, word [esi] ; temp = t1[k];
movpic edx, POINTER [esp+gotptr] ; load GOT address (edx)
- movzx eax, byte [GOTOFF(edx, jpeg_nbits_table + eax)] ; nbits = JPEG_NBITS(temp);
+ movzx eax, byte [GOTOFF(edx, EXTN(jpeg_nbits_table) + eax)] ; nbits = JPEG_NBITS(temp);
mov DWORD [esp+temp2], eax
; Emit Huffman symbol for run length / number of bits
shl ecx, 4 ; temp3 = (r << 4) + nbits;
diff --git a/media/libjpeg/simd/x86_64/jchuff-sse2.asm b/media/libjpeg/simd/x86_64/jchuff-sse2.asm
index 1b091ad..5ec8b1a 100644
--- a/media/libjpeg/simd/x86_64/jchuff-sse2.asm
+++ b/media/libjpeg/simd/x86_64/jchuff-sse2.asm
@@ -27,11 +27,10 @@
alignz 32
GLOBAL_DATA(jconst_huff_encode_one_block)
+ EXTERN EXTN(jpeg_nbits_table)
EXTN(jconst_huff_encode_one_block):
-%include "jpeg_nbits_table.inc"
-
alignz 32
; --------------------------------------------------------------------------
@@ -222,7 +221,7 @@ EXTN(jsimd_huff_encode_one_block_sse2):
add ebx, esi ; temp2 += temp3;
; Find the number of bits needed for the magnitude of the coefficient
- lea r11, [rel jpeg_nbits_table]
+ lea r11, [rel EXTN(jpeg_nbits_table)]
movzx rdi, byte [r11 + rdi] ; nbits = JPEG_NBITS(temp);
; Emit the Huffman-coded symbol for the number of bits
mov r11d, INT [r14 + rdi * 4] ; code = dctbl->ehufco[nbits];
@@ -289,7 +288,7 @@ EXTN(jsimd_huff_encode_one_block_sse2):
lea rsi, [rsi+r12*2] ; k += r;
shr r11, cl ; index >>= r;
movzx rdi, word [rsi] ; temp = t1[k];
- lea rbx, [rel jpeg_nbits_table]
+ lea rbx, [rel EXTN(jpeg_nbits_table)]
movzx rdi, byte [rbx + rdi] ; nbits = JPEG_NBITS(temp);
.BRLOOP:
cmp r12, 16 ; while (r > 15) {