Skip to content

Keystone assembler framework: Core (Arm, Arm64, Hexagon, Mips, PowerPC, Sparc, SystemZ & X86) + bindings

License

GPL-2.0, Unknown licenses found

Licenses found

GPL-2.0
COPYING
Unknown
LICENSE-COM.TXT
Notifications You must be signed in to change notification settings

crabapples-h/keystone

This branch is 79 commits behind keystone-engine/keystone:master.

Folders and files

NameName
Last commit message
Last commit date
Dec 31, 2019
May 10, 2018
Dec 21, 2017
Mar 30, 2018
Dec 8, 2018
Nov 22, 2019
Oct 2, 2016
Aug 2, 2019
May 1, 2016
Jul 18, 2018
Nov 5, 2017
Apr 28, 2016
Sep 11, 2018
May 2, 2016
Apr 28, 2016
Sep 13, 2018
Jul 27, 2016
Apr 28, 2016
May 31, 2016
Jul 18, 2018
Jul 27, 2016
Apr 28, 2016
May 24, 2016
Jul 25, 2018
Jul 25, 2018
Jul 25, 2018
May 9, 2017
Mar 13, 2017
Mar 13, 2017
Jun 4, 2016

Repository files navigation

Keystone Engine

Build Status Build Status Build status

Keystone is a lightweight multi-platform, multi-architecture assembler framework. It offers some unparalleled features:

  • Multi-architecture, with support for Arm, Arm64 (AArch64/Armv8), Ethereum Virtual Machine, Hexagon, Mips, PowerPC, Sparc, SystemZ & X86 (include 16/32/64bit).
  • Clean/simple/lightweight/intuitive architecture-neutral API.
  • Implemented in C/C++ languages, with bindings for Java, Masm, C#, PowerShell, Perl, Python, NodeJS, Ruby, Go, Rust, Haskell, VB6 & OCaml available.
  • Native support for Windows & *nix (with Mac OSX, Linux, *BSD & Solaris confirmed).
  • Thread-safe by design.
  • Open source - with a dual license.

Keystone is based on LLVM, but it goes much further with a lot more to offer.

Further information is available at http://www.keystone-engine.org

License

Keystone is available under a dual license:

  • Version 2 of the GNU General Public License (GPLv2). (I.e. Without the "any later version" clause.). License information can be found in the COPYING file and the EXCEPTIONS-CLIENT file.

    This combination allows almost all of open source projects to use Keystone without conflicts.

  • For commercial usage in production environments, contact the authors of Keystone to buy a royalty-free license.

    See LICENSE-COM.TXT for more information.

Compilation & Docs

See COMPILE.md file for how to compile and install Keystone.

More documentation is available in docs/README.md.

Contact

Contact us via mailing list, email or twitter for any questions.

Contribute

Keystone is impossible without generous support from our sponsors. We cannot thank them enough!

CREDITS.TXT records other important contributors of our project.

If you want to contribute, please pick up something from our Github issues.

We also maintain a list of more challenged problems in a TODO list.

About

Keystone assembler framework: Core (Arm, Arm64, Hexagon, Mips, PowerPC, Sparc, SystemZ & X86) + bindings

Resources

License

GPL-2.0, Unknown licenses found

Licenses found

GPL-2.0
COPYING
Unknown
LICENSE-COM.TXT

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 96.0%
  • OCaml 1.0%
  • CMake 0.8%
  • Python 0.7%
  • C 0.7%
  • Java 0.3%
  • Other 0.5%