diff options
Diffstat (limited to 'lzo/asm/i386/src/lzo1c_d.ash')
-rw-r--r-- | lzo/asm/i386/src/lzo1c_d.ash | 187 |
1 files changed, 0 insertions, 187 deletions
diff --git a/lzo/asm/i386/src/lzo1c_d.ash b/lzo/asm/i386/src/lzo1c_d.ash deleted file mode 100644 index 56622ab5..00000000 --- a/lzo/asm/i386/src/lzo1c_d.ash +++ /dev/null @@ -1,187 +0,0 @@ -/* lzo1c_d.ash -- assembler implementation of the LZO1C 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 -.L1: - xorl %eax,%eax - movb (%esi),%al - incl %esi - cmpb $32,%al - jnb .LMATCH - - orb %al,%al - jz .L12 - movl %eax,%ecx -.LIT: - TEST_OP((%edi,%ecx),%ebx) - TEST_IP((%esi,%ecx),%ebx) - rep - movsb -.LM1: - movb (%esi),%al - incl %esi - - cmpb $32,%al - jb .LM2 -.LMATCH: - cmpb $64,%al - jb .LN3 - - movl %eax,%ecx - andb $31,%al - leal -1(%edi),%edx - shrl $5,%ecx - subl %eax,%edx - movb (%esi),%al - incl %esi - - shll $5,%eax - subl %eax,%edx - incl %ecx - xchgl %esi,%edx - TEST_LOOKBEHIND(%esi) - TEST_OP((%edi,%ecx),%ebx) - rep - movsb - movl %edx,%esi - jmp .L1 - - ALIGN3 -.L12: - LODSB - leal 32(%eax),%ecx - cmpb $248,%al - jb .LIT - - movl $280,%ecx - subb $248,%al - jz .L11 - xchgl %eax,%ecx - xorb %al,%al - shll %cl,%eax - xchgl %eax,%ecx -.L11: - TEST_OP((%edi,%ecx),%ebx) - TEST_IP((%esi,%ecx),%ebx) - rep - movsb - jmp .L1 - - ALIGN3 -.LM2: - leal -1(%edi),%edx - subl %eax,%edx - LODSB - shll $5,%eax - subl %eax,%edx - xchgl %esi,%edx - TEST_LOOKBEHIND(%esi) - TEST_OP(4(%edi),%ebx) - movsb - movsb - movsb - movl %edx,%esi - movsb - xorl %eax,%eax - jmp .LM1 -.LN3: - andb $31,%al - movl %eax,%ecx - jnz .LN6 - movb $31,%cl -.LN4: - LODSB - orb %al,%al - jnz .LN5 - addl N_255,%ecx - jmp .LN4 - - ALIGN3 -.LN5: - addl %eax,%ecx -.LN6: - movb (%esi),%al - incl %esi - - movl %eax,%ebx - andb $63,%al - movl %edi,%edx - subl %eax,%edx - - movb (%esi),%al - incl %esi - - shll $6,%eax - subl %eax,%edx - cmpl %edi,%edx - jz .LEOF - - xchgl %edx,%esi - leal 3(%ecx),%ecx - TEST_LOOKBEHIND(%esi) - TEST_OP((%edi,%ecx),%eax) - rep - movsb - - movl %edx,%esi - xorl %eax,%eax - shrl $6,%ebx - movl %ebx,%ecx - jnz .LIT - jmp .L1 - -.LEOF: -/**** xorl %eax,%eax eax=0 from above */ - - cmpl $1,%ecx /* ecx must be 1 */ - setnz %al - - -/* -vi:ts=4 -*/ - |