14 lines
1.0 KiB
Markdown
14 lines
1.0 KiB
Markdown
# orc
|
|
|
|
Orc is a library and set of tools for compiling and executing very simple programs that operate on arrays of data. The “language” is a generic assembly language that represents many of the features available in SIMD architectures, including saturated addition and subtraction, and many arithmetic operations.
|
|
|
|
Features:
|
|
|
|
* Users can create, compile, and run simple programs that use the vector extensions of the CPU, all directly from an application.
|
|
* Users can compile Orc programs to assembly source code to be compiled and used without linking against the Orc library.
|
|
* The generic assembly language can be extended by an application by adding new opcodes.
|
|
* An application can add rules for converting existing or new opcodes to binary code for a specific target.
|
|
* Current targets: SSE, MMX, ARM, Altivec. The NEON and TI c64x+ DSP targets are not open source and can be licensed separately from Entropy Wave.
|
|
* Programs can optionally be emulated, which is useful for testing, or if no rules are available to convert Orc opcodes to executable code.
|
|
|