Ruby  2.0.0p247(2013-06-27revision41674)
vm_opts.h
Go to the documentation of this file.
00001 /*-*-c-*-*/
00002 /**********************************************************************
00003 
00004   vm_opts.h - VM optimize option
00005 
00006   $Author: nagachika $
00007 
00008   Copyright (C) 2004-2007 Koichi Sasada
00009 
00010 **********************************************************************/
00011 
00012 
00013 #ifndef RUBY_VM_OPTS_H
00014 #define RUBY_VM_OPTS_H
00015 
00016 /* Compile options.
00017  * You can change these options at runtime by VM::CompileOption.
00018  * Following definitions are default values.
00019  */
00020 
00021 #define OPT_TRACE_INSTRUCTION        1
00022 #define OPT_TAILCALL_OPTIMIZATION    0
00023 #define OPT_PEEPHOLE_OPTIMIZATION    1
00024 #define OPT_SPECIALISED_INSTRUCTION  1
00025 #define OPT_INLINE_CONST_CACHE       1
00026 
00027 
00028 /* Build Options.
00029  * You can't change these options at runtime.
00030  */
00031 
00032 /* C compiler dependent */
00033 #define OPT_DIRECT_THREADED_CODE     1
00034 #define OPT_TOKEN_THREADED_CODE      0
00035 #define OPT_CALL_THREADED_CODE       0
00036 
00037 /* VM running option */
00038 #define OPT_CHECKED_RUN              1
00039 #define OPT_INLINE_METHOD_CACHE      1
00040 #define OPT_GLOBAL_METHOD_CACHE      1
00041 #define OPT_BLOCKINLINING            0
00042 
00043 /* architecture independent, affects generated code */
00044 #define OPT_OPERANDS_UNIFICATION     1
00045 #define OPT_INSTRUCTIONS_UNIFICATION 0
00046 #define OPT_UNIFY_ALL_COMBINATION    0
00047 #define OPT_STACK_CACHING            0
00048 
00049 /* misc */
00050 #define SUPPORT_JOKE                 0
00051 
00052 #ifndef VM_COLLECT_USAGE_DETAILS
00053 #define VM_COLLECT_USAGE_DETAILS     0
00054 #endif
00055 
00056 #endif /* RUBY_VM_OPTS_H */
00057