Class: RubyVM
Defined Under Namespace
Classes: Env, InstructionSequence
Constant Summary collapse
- USAGE_ANALYSIS_INSN =
RubyVM::USAGE_ANALYSIS_*
:
- USAGE_ANALYSIS_REGS =
rb_hash_new()
- USAGE_ANALYSIS_INSN_BIGRAM =
rb_hash_new()
- OPTS =
RubyVM::OPTS, which shows vm build options
:
- INSTRUCTION_NAMES =
RubyVM::INSTRUCTION_NAMES
:
- DEFAULT_PARAMS =
RubyVM::DEFAULT_PARAMS This constant variable shows VM's default parameters. Note that changing these values does not affect VM exection. Specification is not stable and you should not depend on this value. Of course, this constant is MRI specific.
:
Class Method Summary collapse
-
.NSDR ⇒ Object
:nodoc:.
-
.SDR ⇒ Object
:nodoc:.
- .USAGE_ANALYSIS_INSN_STOP ⇒ Object
- .USAGE_ANALYSIS_OPERAND_STOP ⇒ Object
- .USAGE_ANALYSIS_REGISTER_STOP ⇒ Object
Class Method Details
.NSDR ⇒ Object
:nodoc:
2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 |
# File 'vm.c', line 2179
static VALUE
nsdr(void)
{
VALUE ary = rb_ary_new();
#if HAVE_BACKTRACE
#include <execinfo.h>
#define MAX_NATIVE_TRACE 1024
static void *trace[MAX_NATIVE_TRACE];
int n = backtrace(trace, MAX_NATIVE_TRACE);
char **syms = backtrace_symbols(trace, n);
int i;
if (syms == 0) {
rb_memerror();
}
for (i=0; i<n; i++) {
rb_ary_push(ary, rb_str_new2(syms[i]));
}
free(syms); /* OK */
#endif
return ary;
}
|
.SDR ⇒ Object
:nodoc:
2171 2172 2173 2174 2175 2176 |
# File 'vm.c', line 2171
static VALUE
sdr(void)
{
rb_vm_bugreport();
return Qnil;
}
|
.USAGE_ANALYSIS_INSN_STOP ⇒ Object
2204 |
# File 'vm.c', line 2204 static VALUE usage_analysis_insn_stop(VALUE self); |
.USAGE_ANALYSIS_OPERAND_STOP ⇒ Object
2205 |
# File 'vm.c', line 2205 static VALUE usage_analysis_operand_stop(VALUE self); |
.USAGE_ANALYSIS_REGISTER_STOP ⇒ Object
2206 |
# File 'vm.c', line 2206 static VALUE usage_analysis_register_stop(VALUE self); |