• Stars
    star
    117
  • Rank 301,828 (Top 6 %)
  • Language
    Ruby
  • License
    Other
  • Created about 15 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

LLVM bindings for Ruby

ruby-llvm has moved to ruby-llvm/ruby-llvm¶ ↑

This repository has been deprecated in favor of github.com/ruby-llvm/ruby-llvm.

LLVM¶ ↑

Author

Jeremy Voorhis

Contributors

Evan Phoenix, David Holroyd, Takanori Ishikawa, Ronaldo M. Ferraz, Mac Malone, Chris Wailes, Ary Borenszweig, Richard Musiol, Juan Wajnerman, Steven Farlie

Copyright

Copyright © 2010-2012 Jeremy Voorhis

License

BSD 3-clause (see LICENSE)

This package contains Ruby bindings to the LLVM api, enabling users to make use of LLVM’s optimization passes and JIT compilation for implementing compiled DSLs, callback functions, or fast Ruby method implementations.

ruby-llvm has been tested on OS X 10.7 using the following Ruby interpreters:

  • MRI 1.8.7-p174

  • MRI 1.9.2-p290

  • MRI 1.9.3-preview1

  • JRuby 1.4.0

If using MRI, ffi >= 1.0.7 is recommended (only ffi >= 1.0.0 is required).

Requirements¶ ↑

  • LLVM 3.0, including libLLVM-3.0 (compile LLVM with –enable-shared).

  • In order to ensure the usability of JIT features (i.e. create_jit_compiler), compile LLVM with –enable-jit as well.

Homebrew¶ ↑

LLVM can be installed with Homebrew by executing ‘brew install llvm –shared`

About version numbers¶ ↑

The first two digits of ruby-llvm’s version number refer to the required major and minor version of LLVM. The third digit refers to the ruby-llvm release itself. Because LLVM’s api changes often, this coupling between LLVM and ruby-llvm versions is useful.