Compress-Deflate7

 view release on metacpan or  search on metacpan

7zip/Asm/x86/AesOpt.asm  view on Meta::CPAN

LOAD_OP macro op:req, offs:req
    op      xmm0, [r1 + r3 offs]
endm
  
LOAD_OP_W macro op:req, offs:req
    movdqa  xmm7, [r1 + r3 offs]
    OP_W    op, xmm7
endm


; ---------- AES-CBC Decode ----------

CBC_DEC_UPDATE macro reg, offs
    pxor    reg, xmm6
    movdqa  xmm6, [rD + offs]
    movdqa  [rD + offs], reg
endm

DECODE macro op:req
    op      aesdec, +16
  @@:
    op      aesdec, +0
    op      aesdec, -16

7zip/Asm/x86/AesOpt.asm  view on Meta::CPAN

    sub     x6, 32

    jmp     check2

  align 16
  nextBlocks2:
    mov     x3, x6
    OP_W    movdqa, [rD + i * 16]
    LOAD_OP_W  pxor, +32
    DECODE  LOAD_OP_W
    OP_W    CBC_DEC_UPDATE, i * 16
    add     rD, ways16
  check2:
    sub     rN, ways
    jnc     nextBlocks2

    add     rN, ways
    jmp     check

  nextBlock:
    mov     x3, x6

7zip/Asm/x86/AesOpt.asm  view on Meta::CPAN

    movdqa  xmm6, xmm1
    add     rD, 16
  check:
    sub     rN, 1
    jnc     nextBlock

    movdqa  [r1 - 32], xmm6
    MY_EPILOG


; ---------- AES-CBC Encode ----------

ENCODE macro op:req
    op      aesenc, -16
  @@:
    op      aesenc, +0
    op      aesenc, +16
    add     r3, 32
    jnz     @B
    op      aesenclast, +0
endm

7zip/CPP/7zip/Compress/BcjCoder.cpp  view on Meta::CPAN

// BcjCoder.cpp

#include "StdAfx.h"

#include "BcjCoder.h"

UInt32 CBCJ_x86_Encoder::SubFilter(Byte *data, UInt32 size)
{
  return (UInt32)::x86_Convert(data, size, _bufferPos, &_prevMask, 1);
}

UInt32 CBCJ_x86_Decoder::SubFilter(Byte *data, UInt32 size)
{
  return (UInt32)::x86_Convert(data, size, _bufferPos, &_prevMask, 0);
}

7zip/CPP/7zip/Compress/BcjRegister.cpp  view on Meta::CPAN

// BcjRegister.cpp

#include "StdAfx.h"

#include "../Common/RegisterCodec.h"

#include "BcjCoder.h"

static void *CreateCodec() { return (void *)(ICompressFilter *)(new CBCJ_x86_Decoder()); }
#ifndef EXTRACT_ONLY
static void *CreateCodecOut() { return (void *)(ICompressFilter *)(new CBCJ_x86_Encoder());  }
#else
#define CreateCodecOut 0
#endif

static CCodecInfo g_CodecInfo =
  { CreateCodec, CreateCodecOut, 0x03030103, L"BCJ", 1, true };

REGISTER_CODEC(BCJ)

7zip/CPP/7zip/Compress/BranchMisc.cpp  view on Meta::CPAN

// BranchMisc.cpp

#include "StdAfx.h"

#include "../../../C/Bra.h"

#include "BranchMisc.h"

UInt32 CBC_ARM_Encoder::SubFilter(Byte *data, UInt32 size)
  { return (UInt32)::ARM_Convert(data, size, _bufferPos, 1); }

UInt32 CBC_ARM_Decoder::SubFilter(Byte *data, UInt32 size)
  { return (UInt32)::ARM_Convert(data, size, _bufferPos, 0); }

UInt32 CBC_ARMT_Encoder::SubFilter(Byte *data, UInt32 size)
  { return (UInt32)::ARMT_Convert(data, size, _bufferPos, 1); }

UInt32 CBC_ARMT_Decoder::SubFilter(Byte *data, UInt32 size)
  { return (UInt32)::ARMT_Convert(data, size, _bufferPos, 0); }

UInt32 CBC_PPC_Encoder::SubFilter(Byte *data, UInt32 size)
  { return (UInt32)::PPC_Convert(data, size, _bufferPos, 1); }

UInt32 CBC_PPC_Decoder::SubFilter(Byte *data, UInt32 size)
  { return (UInt32)::PPC_Convert(data, size, _bufferPos, 0); }

UInt32 CBC_SPARC_Encoder::SubFilter(Byte *data, UInt32 size)
  { return (UInt32)::SPARC_Convert(data, size, _bufferPos, 1); }

UInt32 CBC_SPARC_Decoder::SubFilter(Byte *data, UInt32 size)
  { return (UInt32)::SPARC_Convert(data, size, _bufferPos, 0); }

UInt32 CBC_IA64_Encoder::SubFilter(Byte *data, UInt32 size)
  { return (UInt32)::IA64_Convert(data, size, _bufferPos, 1); }

UInt32 CBC_IA64_Decoder::SubFilter(Byte *data, UInt32 size)
  {  return (UInt32)::IA64_Convert(data, size, _bufferPos, 0); }

7zip/DOC/Methods.txt  view on Meta::CPAN


06.. - Crypto 
   00 - 
   01 - AES
      0x - AES-128
      4x - AES-192
      8x - AES-256
      Cx - AES

      x0 - ECB
      x1 - CBC
      x2 - CFB
      x3 - OFB

   07 - Reserved
   0F - Reserved

   F0 - Misc Ciphers (Real Ciphers without hashing algo)

   F1 - Misc Ciphers (Combine)
      01 - Zip



( run in 0.597 second using v1.01-cache-2.11-cpan-df04353d9ac )