Go to file
Taiju Yamada 1187583a97 Fixes for aarch64 mac
- It should be fine to enable pmull always on Apple Silicon
- macOS 12+ is required for PMULL instruction.
- Changed the conditional macro to __APPLE__
- Rewritten dispatcher using sysctlbyname
- Use __USER_LABEL_PREFIX__
- Use __TEXT,__const as readonly section
- use ASM_DEF_RODATA macro
- fix func decl

Change-Id: I800593f21085d8187b480c8bb3ab2bd70c4a6974
Signed-off-by: Taiju Yamada <tyamada@bi.a.u-tokyo.ac.jp>
2022-10-28 08:27:26 -07:00
.github/workflows Fix check signoff for github actions 2021-12-30 16:49:27 -07:00
crc Fixes for aarch64 mac 2022-10-28 08:27:26 -07:00
doc doc: Add function overview and usage page 2022-02-15 16:59:31 -07:00
erasure_code Fixes for aarch64 mac 2022-10-28 08:27:26 -07:00
examples/ec ex: Add makefile to build examples from installed lib 2021-06-03 17:53:20 -07:00
igzip Fixes for aarch64 mac 2022-10-28 08:27:26 -07:00
include Fixes for aarch64 mac 2022-10-28 08:27:26 -07:00
mem Fixes for aarch64 mac 2022-10-28 08:27:26 -07:00
programs build: Bump revision to 2.30 2020-11-06 18:08:16 -07:00
raid Fixes for aarch64 mac 2022-10-28 08:27:26 -07:00
tests/fuzz Fix s390 build 2022-01-04 11:06:17 -07:00
tools Use gindent on FreeBSD 2022-10-11 12:30:53 +02:00
.gitignore build: Add gitignore 2019-05-01 16:48:10 -07:00
.travis.yml build: Change travis osx to use std brew 2021-05-21 19:44:39 -07:00
autogen.sh Initial commit isa-l v2.14.1 2016-02-24 14:54:34 -07:00
configure.ac Properly add .note.gnu.property section to assembly codes 2022-01-20 12:23:30 -07:00
CONTRIBUTING.md doc: Update mailing list link 2019-10-16 17:13:54 -07:00
Doxyfile doc: Add security policy file 2022-07-18 19:53:53 -07:00
isa-l.def build: Fix missing ms function export 2021-06-07 18:30:08 -07:00
isa-l.rc build: Add ms rc file to put extra metatdata on dll 2021-09-02 18:27:51 -07:00
libisal.pc.in Initial commit isa-l v2.14.1 2016-02-24 14:54:34 -07:00
LICENSE build: Bump revision to 2.19 2017-06-26 04:47:40 -04:00
make.inc build: Change include shortcut D to not conflict with env 2021-09-14 19:18:31 -07:00
Makefile.am Properly add .note.gnu.property section to assembly codes 2022-01-20 12:23:30 -07:00
Makefile.nmake build: Remove ms link flag for msvcrt 2022-07-11 16:16:07 -07:00
Makefile.unx build: Add auto regenerate of nmake file 2020-03-10 14:00:05 -07:00
README.md doc: Add security policy file 2022-07-18 19:53:53 -07:00
Release_notes.txt Update release notes for v2.30 additions 2020-11-04 14:59:33 -07:00
SECURITY.md doc: Add security policy file 2022-07-18 19:53:53 -07:00

Intel(R) Intelligent Storage Acceleration Library

Build Status Package on conda-forge

ISA-L is a collection of optimized low-level functions targeting storage applications. ISA-L includes:

  • Erasure codes - Fast block Reed-Solomon type erasure codes for any encode/decode matrix in GF(2^8).
  • CRC - Fast implementations of cyclic redundancy check. Six different polynomials supported.
    • iscsi32, ieee32, t10dif, ecma64, iso64, jones64.
  • Raid - calculate and operate on XOR and P+Q parity found in common RAID implementations.
  • Compression - Fast deflate-compatible data compression.
  • De-compression - Fast inflate-compatible data compression.
  • igzip - A command line application like gzip, accelerated with ISA-L.

Also see:

Building ISA-L

Prerequisites

  • Make: GNU 'make' or 'nmake' (Windows).
  • Optional: Building with autotools requires autoconf/automake packages.
  • Optional: Manual generation requires help2man package.

x86_64:

  • Assembler: nasm. Version 2.15 or later suggested (other versions of nasm and yasm may build but with limited function support.
  • Compiler: gcc, clang, icc or VC compiler.

aarch64:

  • Assembler: gas v2.24 or later.
  • Compiler: gcc v4.7 or later.

other:

  • Compiler: Portable base functions are available that build with most C compilers.

Autotools

To build and install the library with autotools it is usually sufficient to run:

./autogen.sh
./configure
make
sudo make install

Makefile

To use a standard makefile run:

make -f Makefile.unx

Windows

On Windows use nmake to build dll and static lib:

nmake -f Makefile.nmake

or see details on setting up environment here.

Other make targets

Other targets include:

  • make check : create and run tests
  • make tests : create additional unit tests
  • make perfs : create included performance tests
  • make ex : build examples
  • make other : build other utilities such as compression file tests
  • make doc : build API manual