Go to file
Stephen 75d90aff52 Make cleanup (#666)
* make cleanup

* Update .travis.yml
Update eflags_nosync.c
Update sigill2.c
Update ro_mem_test.c
Update ro_mem_test.c
Update nr_mem_test.c
Update mem_fuzz.c
Update mem_double_unmap.c
Update emu_stop_in_hook_overrun.c
Update eflags_nosync.c
remove unused
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update mem_64_c.c
Update mem_64_c.c
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update .travis.yml
try android ndk build
Update unicorn.py
Update unicorn.py
Update Makefile
Update unicorn.py
Update unicorn.py
remove an untrue comment

if a dll/so/dylib gets loaded at runtime is dependent on many different factors, primarily the LD/DYLD paths. Those do not always include the current working directory
Update Makefile
Update .appveyor.yml
Update .travis.yml
Update Makefile
Update .appveyor.yml
Fix bad sample

* Update Makefile

* Update Makefile

* Update install-cmocka-linux.sh

* remove verbose option from tar

* add upgrade to pacman for cmake

* pacman double update, needed to get new packages

* enable cmocka unit testing

* rejigger commands to fail on any step

should get fails in msys builds for cmocka

* fix quote

* make cmocka in cygwin only

* add msys cache
2016-11-19 17:17:48 +08:00
bindings Make cleanup (#666) 2016-11-19 17:17:48 +08:00
docs update docs/COMPILE-NIX.md 2016-10-01 00:01:32 +08:00
include add UC_VERSION_{MAJOR, MINOR, EXTRA} 2016-10-25 14:37:47 +08:00
qemu fix some compilation warnings regarding typcase of (CPUState *) 2016-10-26 17:05:26 +08:00
samples Make cleanup (#666) 2016-11-19 17:17:48 +08:00
tests Make cleanup (#666) 2016-11-19 17:17:48 +08:00
.appveyor.yml Make cleanup (#666) 2016-11-19 17:17:48 +08:00
.gitignore Unit testing in CI (#651) 2016-10-22 00:21:10 +08:00
.travis.yml Make cleanup (#666) 2016-11-19 17:17:48 +08:00
AUTHORS.TXT import 2015-08-21 15:04:50 +08:00
ChangeLog add ChangeLog 2015-10-15 23:54:39 +08:00
config.mk Fix document file extension 2016-08-08 17:33:49 +09:00
COPYING import 2015-08-21 15:04:50 +08:00
CREDITS.TXT update CREDITS.TXT 2016-10-22 00:24:59 +08:00
install-cmocka-linux.sh Make cleanup (#666) 2016-11-19 17:17:48 +08:00
list.c fix memory corruption in list_remove 2016-03-25 20:28:23 -07:00
make.sh Make cleanup (#666) 2016-11-19 17:17:48 +08:00
Makefile Make cleanup (#666) 2016-11-19 17:17:48 +08:00
pkgconfig.mk bump API version to 1.0 2016-02-11 08:05:15 +08:00
README.md add link to Perl binding 2016-09-22 08:46:25 +08:00
uc.c fix some Msys complains 2016-11-04 21:40:35 +08:00

Unicorn Engine

Join the chat at https://gitter.im/unicorn-engine/chat

Build Status Build status

Unicorn is a lightweight, multi-platform, multi-architecture CPU emulator framework based on QEMU.

Unicorn offers some unparalleled features:

  • Multi-architecture: ARM, ARM64 (ARMv8), M68K, MIPS, SPARC, and X86 (16, 32, 64-bit)
  • Clean/simple/lightweight/intuitive architecture-neutral API
  • Implemented in pure C language, with bindings for Perl, Rust, Ruby, Python, Java, MSVC, .NET, Go, Delphi/Free Pascal and Haskell.
  • Native support for Windows & *nix (with Mac OSX, Linux, *BSD & Solaris confirmed)
  • High performance via Just-In-Time compilation
  • Support for fine-grained instrumentation at various levels
  • Thread-safety by design
  • Distributed under free software license GPLv2

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

License

This project is released under the GPL license.

Compilation & Docs

See docs/COMPILE.md file for how to compile and install Unicorn.

More documentation is available in docs/README.md.

Contact

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

Contribute

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.

CREDITS.TXT records important contributors of our project.