• Show log

    Commit

  • Hash : e4ec23d7
    Author : Jonathan Wright
    Date : 2021-02-10T16:45:50

    Neon: Use byte-swap builtins instead of inline asm
    
    Define compiler-independent byte-swap macros and use them instead of
    executing 'rev' via inline assembly code with GCC-compatible compilers
    or a slow shift-store sequence with Visual C++.
    
    * This produces identical assembly code with:
    
      - 64-bit GCC 8.4.0 (Linux)
      - 64-bit GCC 9.3.0 (Linux)
      - 64-bit Clang 10.0.0 (Linux)
      - 64-bit Clang 10.0.0 (MinGW)
      - 64-bit Clang 12.0.0 (Xcode 12.2, macOS)
      - 64-bit Clang 12.0.0 (Xcode 12.2, iOS)
    
    * This produces different assembly code with:
    
      - 64-bit GCC 4.9.1 (Linux)
      - 32-bit GCC 4.8.2 (Linux)
      - 32-bit GCC 8.4.0 (Linux)
      - 32-bit GCC 9.3.0 (Linux)
        Since the intrinsics implementation of Huffman encoding is not used
        by default with these compilers, this is not a concern.
    
      - 32-bit Clang 10.0.0 (Linux)
        Verified performance neutrality
    
    Closes #507
    

  • Properties

  • Git HTTP https://git.kmx.io/kc3-lang/libjpeg-turbo.git
    Git SSH git@git.kmx.io:kc3-lang/libjpeg-turbo.git
    Public access ? public
    Description

    Fork of libjpeg with SIMD

    Users
    thodg_m kc3_lang_org thodg_w www_kmx_io thodg_l thodg
    Tags