diff options
Diffstat (limited to 'lzo/asm/i386/src/lzo1f_d.ash')
-rw-r--r-- | lzo/asm/i386/src/lzo1f_d.ash | 179 |
1 files changed, 0 insertions, 179 deletions
diff --git a/lzo/asm/i386/src/lzo1f_d.ash b/lzo/asm/i386/src/lzo1f_d.ash deleted file mode 100644 index 97a103c0..00000000 --- a/lzo/asm/i386/src/lzo1f_d.ash +++ /dev/null @@ -1,179 +0,0 @@ -/* lzo1f_d.ash -- assembler implementation of the LZO1F decompression algorithm - - This file is part of the LZO real-time data compression library. - - Copyright (C) 2011 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 2010 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 2009 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 2008 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 2007 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 2006 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 2005 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 2004 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 2003 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 2002 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 2001 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 2000 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 1999 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 1998 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 1997 Markus Franz Xaver Johannes Oberhumer - Copyright (C) 1996 Markus Franz Xaver Johannes Oberhumer - All Rights Reserved. - - The LZO library is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License as - published by the Free Software Foundation; either version 2 of - the License, or (at your option) any later version. - - The LZO library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with the LZO library; see the file COPYING. - If not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - Markus F.X.J. Oberhumer - <markus@oberhumer.com> - http://www.oberhumer.com/opensource/lzo/ - */ - - -/*********************************************************************** -// -************************************************************************/ - - ALIGN3 -.L0: - xorl %eax,%eax - movb (%esi),%al - incl %esi - cmpb $31,%al - ja .LM2 - - orb %al,%al - movl %eax,%ecx - jnz .L2 -1: - LODSB - orb %al,%al - jnz 2f - addl N_255,%ecx - jmp 1b -2: - lea 31(%eax,%ecx),%ecx -.L2: - TEST_OP((%edi,%ecx),%ebx) - TEST_IP((%esi,%ecx),%ebx) - movb %cl,%al - shrl $2,%ecx - rep - movsl - andb $3,%al - jz 1f - movl (%esi),%ebx - addl %eax,%esi - movl %ebx,(%edi) - addl %eax,%edi -1: - movb (%esi),%al - incl %esi -.LM1: - cmpb $31,%al - jbe .LM21 - -.LM2: - cmpb $223,%al - ja .LM3 - - movl %eax,%ecx - shrl $2,%eax - lea -1(%edi),%edx - andb $7,%al - shrl $5,%ecx - movl %eax,%ebx - - movb (%esi),%al - leal (%ebx,%eax,8),%eax - incl %esi -.LM5: - subl %eax,%edx - addl $2,%ecx - xchgl %edx,%esi - TEST_LOOKBEHIND(%esi) - TEST_OP((%edi,%ecx),%ebx) - cmpl $6,%ecx - jb 1f - cmpl $4,%eax - jb 1f - movb %cl,%al - shrl $2,%ecx - rep - movsl - andb $3,%al - movb %al,%cl -1: - rep - movsb - movl %edx,%esi -.LN1: - movb -2(%esi),%cl - andl $3,%ecx - jz .L0 - movl (%esi),%eax - addl %ecx,%esi - movl %eax,(%edi) - addl %ecx,%edi - xorl %eax,%eax - movb (%esi),%al - incl %esi - jmp .LM1 -.LM21: - TEST_OP(3(%edi),%edx) - shrl $2,%eax - leal -0x801(%edi),%edx - movl %eax,%ecx - movb (%esi),%al - incl %esi - leal (%ecx,%eax,8),%eax - subl %eax,%edx - TEST_LOOKBEHIND(%edx) - movl (%edx),%eax - movl %eax,(%edi) - addl $3,%edi - jmp .LN1 -1: - LODSB - orb %al,%al - jnz 2f - addl N_255,%ecx - jmp 1b -2: - lea 31(%eax,%ecx),%ecx - jmp .LM4 - - ALIGN3 -.LM3: - andb $31,%al - movl %eax,%ecx - jz 1b -.LM4: - movl %edi,%edx - movw (%esi),%ax - addl $2,%esi - shrl $2,%eax - jnz .LM5 - -.LEOF: -/**** xorl %eax,%eax eax=0 from above */ - - cmpl $1,%ecx /* ecx must be 1 */ - setnz %al - - -/* -vi:ts=4 -*/ - |