mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-27 02:47:31 +09:00
libjpeg-turbo: update to 2.1.x rev 0734e34f6
This commit is contained in:
parent
667129e471
commit
19dc62b0a2
139 changed files with 989 additions and 962 deletions
|
|
@ -1,7 +1,7 @@
|
|||
;
|
||||
; jchuff-sse2.asm - Huffman entropy encoding (64-bit SSE2)
|
||||
;
|
||||
; Copyright (C) 2009-2011, 2014-2016, 2019, 2021, D. R. Commander.
|
||||
; Copyright (C) 2009-2011, 2014-2016, 2019, 2021, 2024, D. R. Commander.
|
||||
; Copyright (C) 2015, Matthieu Darbois.
|
||||
; Copyright (C) 2018, Matthias Räncker.
|
||||
;
|
||||
|
|
@ -9,11 +9,7 @@
|
|||
; Copyright (C) 1999-2006, MIYASAKA Masaru.
|
||||
; For conditions of distribution and use, see copyright notice in jsimdext.inc
|
||||
;
|
||||
; This file should be assembled with NASM (Netwide Assembler),
|
||||
; can *not* be assembled with Microsoft's MASM or any compatible
|
||||
; assembler (including Borland's Turbo Assembler).
|
||||
; NASM is available from http://nasm.sourceforge.net/ or
|
||||
; http://sourceforge.net/project/showfiles.php?group_id=6208
|
||||
; This file should be assembled with NASM (Netwide Assembler) or Yasm.
|
||||
;
|
||||
; This file contains an SSE2 implementation for Huffman coding of one block.
|
||||
; The following code is based on jchuff.c; see jchuff.c for more details.
|
||||
|
|
@ -66,7 +62,8 @@ times 1 << 2 db 3
|
|||
times 1 << 1 db 2
|
||||
times 1 << 0 db 1
|
||||
times 1 db 0
|
||||
jpeg_nbits_table:
|
||||
GLOBAL_DATA(jpeg_nbits_table)
|
||||
EXTN(jpeg_nbits_table):
|
||||
times 1 db 0
|
||||
times 1 << 0 db 1
|
||||
times 1 << 1 db 2
|
||||
|
|
@ -88,7 +85,7 @@ times 1 << 15 db 16
|
|||
alignz 32
|
||||
|
||||
%define NBITS(x) nbits_base + x
|
||||
%define MASK_BITS(x) NBITS((x) * 4) + (jpeg_mask_bits - jpeg_nbits_table)
|
||||
%define MASK_BITS(x) NBITS((x) * 4) + (jpeg_mask_bits - EXTN(jpeg_nbits_table))
|
||||
|
||||
; --------------------------------------------------------------------------
|
||||
SECTION SEG_TEXT
|
||||
|
|
@ -287,7 +284,7 @@ EXTN(jsimd_huff_encode_one_block_sse2):
|
|||
mov dctbl, POINTER [rsp+6*8+4*8]
|
||||
mov actbl, POINTER [rsp+6*8+5*8]
|
||||
punpckldq xmm0, xmm1 ;A: w0 = xx 01 08 09 02 03 10 11
|
||||
lea nbits_base, [rel jpeg_nbits_table]
|
||||
lea nbits_base, [rel EXTN(jpeg_nbits_table)]
|
||||
add rsp, -DCTSIZE2 * SIZEOF_WORD
|
||||
mov t, rsp
|
||||
|
||||
|
|
@ -310,7 +307,7 @@ EXTN(jsimd_huff_encode_one_block_sse2):
|
|||
mov buffer, rsi
|
||||
movups xmm1, XMMWORD [block + 8 * SIZEOF_WORD] ;B: w1 = 08 09 10 11 12 13 14 15
|
||||
movsx codeq, word [block] ;Z: code = block[0];
|
||||
lea nbits_base, [rel jpeg_nbits_table]
|
||||
lea nbits_base, [rel EXTN(jpeg_nbits_table)]
|
||||
pxor xmm4, xmm4 ;A: w4[i] = 0;
|
||||
sub codeq, rcx ;Z: code -= last_dc_val;
|
||||
punpckldq xmm0, xmm1 ;A: w0 = xx 01 08 09 02 03 10 11
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue