fork of keystone with vs2019 and vs2017 branchs https://github.com/keystone-engine/keystone
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
_xeroxz 095f1b17d0
init commit
3 years ago
.github/workflows init commit 3 years ago
bindings init commit 3 years ago
debian init commit 3 years ago
docs init commit 3 years ago
include/keystone init commit 3 years ago
kstool init commit 3 years ago
llvm init commit 3 years ago
msvc init commit 3 years ago
samples init commit 3 years ago
suite init commit 3 years ago
.NOTE init commit 3 years ago
.appveyor.yml init commit 3 years ago
.gitignore init commit 3 years ago
.travis.yml init commit 3 years ago
AUTHORS.TXT init commit 3 years ago
CMakeLists.txt init commit 3 years ago
CMakeUninstall.in init commit 3 years ago
COPYING init commit 3 years ago
CREDITS.TXT init commit 3 years ago
ChangeLog init commit 3 years ago
EXCEPTIONS-CLIENT init commit 3 years ago
LICENSE-COM.TXT init commit 3 years ago
README.md init commit 3 years ago
RELEASE_NOTES init commit 3 years ago
SPONSORS.TXT init commit 3 years ago
make-afl.sh init commit 3 years ago
make-common.sh init commit 3 years ago
make-lib.sh init commit 3 years ago
make-share.sh init commit 3 years ago
nmake-dll.bat init commit 3 years ago
nmake-lib.bat init commit 3 years ago
pkg-config.pc.cmake init commit 3 years ago

README.md

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.