From Gentoo Wiki
This article is a stub. Please help out by expanding it - how to get started.
MoarVM is the Rakudo compiler's virtual machine for the Raku Programming Language.
USE flags for dev-lang/moarvm A 6model-based VM for NQP and Raku
||Enable clang's Address Sanitizer functionality. Expect longer compile time.|
||Use clang compiler instead of GCC|
||Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces|
||Add extra documentation (API, Javadoc, etc). It is recommended to enable per package instead of globally|
||Enable optimization via CFLAGS|
||Build static versions of dynamic libraries as well|
||Enable clang's Undefined Behavior Sanitizer functionality. Expect longer compile time.|
Emerge the package base
emerge --ask dev-lang/moarvm
- MVM_JIT_DISABLE (bool) Disables the just-in-time compiler. JIT compilation is enabled by default.
- MVM_SPESH_DISABLE (bool) Disables the runtime bytecode optimizer. This optimization is enabled by default.
- MVM_SPESH_INLINE_DISABLE (bool) Disables inlining of call frames by the bytecode optimizer. This optimization is enabled by default.
- MVM_SPESH_OSR_DISABLE (bool) Disables the on-stack replacement of bytecode by the optimizer. This optimization is enabled by default.
- MVM_CROSS_THREAD_WRITE_LOG (bool) Produce warnings when a thread does a write to an object it didn't allocate and doesn't have a lock for.
- MVM_CROSS_THREAD_WRITE_LOG_INCLUDE_LOCKED (bool) Extend the above to include objects that are locked as well.
MoarVM is a dependency of Rakudo, the Raku compiler. As such it's not typically installed or removed on its own.
emerge --ask --depclean --verbose dev-lang/moarvm
- Rakudo — a compiler that implements the Raku programming language.
- NQP — a lightweight Raku-like environment for MoarVM, JVM, and other virtual machines.
- Perl — a general purpose interpreted programming language with a powerful regular expression engine.