Java Grinder takes Java byte-code from a class file and compiles it into an assembly code text file that can be assembled and run on microcontrollers and CPUs including MSP430, dsPIC, 6502 (Commodore 64), 68000, ARM, and MIPS. A Java API is provided for dealing with SPI, GPIO, Commodore 64 hardware, and more.
AntiJOP is an anti-malware solution that recodes assembly language to remove JOP attack gadgets. JOP attacks on x86 often hinge on the availability of 0xFF bytes in preexisting code, which can be co-opted to serve as register-indirect call instructions. AntiJOP removes instances of 0xFF bytes that may exist, for example, in immediate values, MOD/RM bytes, etc.
METAXPON ("Metachron" in Greek letters) is a small and fast audio DSP library for time-scale manipulation of 16-bit integer or 32-bit floating point stereo audio data streams. It employs a rigid phase-locked vocoder with dedicated transient detection and processing, and can work in real-time or non-real-time. Four editions are included - a portable edition and three x86 editions. The portable edition can be built with any ANSI C compiler and is OS- and architecture-independent. The three x86 editions are written in assembly using the FPU, 3DNow!, and SSE instruction sets, respectively, with automatic selection between them depending on the CPU capabilities. They can be compiled with MASM, JWASM, or NASM, producing libraries of object files in 8 formats.
Concurrency Kit provides a plethora of concurrency primitives and lock-less and lock-free data structures designed to aid in the design and implementation of high performance scalable concurrent systems. It was designed to minimize dependencies on operating system-specific interfaces, and most of the interface relies only on a strict subset of the standard library and more popular compiler extensions.
Charm++ is a portable adaptive runtime system for parallel applications. Application developers create an object-based decomposition of the problem of interest, and the runtime system manages issues of communication, mapping, load balancing, fault tolerance, and more. Sequential code implementing the methods of these parallel objects is written in C++. Calls to libraries in C++, C, and Fortran are common and straightforward. Charm++ is portable across individual workstations, clusters, accelerators (Cell SPEs and GPUs), and supercomputers such as those sold by IBM (Blue Gene, POWER) and Cray (XT3/4/5/6). Applications based on Charm++ are used on at least 5 of the 20 most powerful computers in the world.
The Tinyserial library is a space-saving alternative to the Arduino software distribution's libraries for reading and writing characters and strings to the USART0 serial port on the Atmel ATmega168 and ATmega328p MCUs found on Arduino Diecimilla and Duemilanove boards. While the Arduino software distribution's libraries provide interrupt-driven serial I/O with far more features and support more MCUs, the Tinyserial library provides only the most basic polling-based serial I/O. However, the Tinyserial library uses far less Flash and SRAM, thereby giving you room to implement larger and more complicated applications on your boards. The Tinyserial library respects the GNU libc ABI, so you can call into it from C and C++ programs.
The Objeck computer language is an object-oriented computing language with functional features that has ties with Java, C#, and Pascal. In this language, all data types are treated as objects. The language consists of a compiler and VM with an accompanying memory management and JIT compiler.
libjpeg-turbo is a high-speed version of libjpeg for x86 and x86-64 processors. It uses SIMD instructions (MMX, SSE, SSE2) to accelerate baseline JPEG compression and decompression. libjpeg-turbo is generally 2-4 times as fast as the unmodified version of libjpeg. It also includes a wrapper library for the TurboJPEG API used by VirtualGL and TurboVNC. It was originally based on libjpeg/SIMD but has improved support for Mac OS X, 64-bit platforms, 32-bit and big endian pixel formats (RGBA/BGRA/ABGR/ARGB), accelerated Huffman encoding/decoding, and various other fixes.