Changeset 439 for EcnlProtoTool/trunk/mruby-2.1.1/include/mrbconf.h
- Timestamp:
- Jul 9, 2020, 8:51:43 AM (4 years ago)
- Location:
- EcnlProtoTool/trunk/mruby-2.1.1
- Files:
-
- 1 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
EcnlProtoTool/trunk/mruby-2.1.1/include/mrbconf.h
r331 r439 29 29 //#define MRB_USE_FLOAT 30 30 31 /* add -DMRB_INT16 to use 16bit integer for mrb_int; conflict with MRB_INT64 */ 32 //#define MRB_INT16 33 34 /* add -DMRB_INT64 to use 64bit integer for mrb_int; conflict with MRB_INT16 */ 31 /* exclude floating point numbers */ 32 //#define MRB_WITHOUT_FLOAT 33 34 /* add -DMRB_METHOD_CACHE to use method cache to improve performance */ 35 //#define MRB_METHOD_CACHE 36 /* size of the method cache (need to be the power of 2) */ 37 //#define MRB_METHOD_CACHE_SIZE (1<<7) 38 39 /* add -DMRB_METHOD_T_STRUCT on machines that use higher bits of pointers */ 40 /* no MRB_METHOD_T_STRUCT requires highest 2 bits of function pointers to be zero */ 41 #ifndef MRB_METHOD_T_STRUCT 42 // can't use highest 2 bits of function pointers on 32bit Windows. 43 # if defined(_WIN32) && !defined(_WIN64) 44 # define MRB_METHOD_T_STRUCT 45 # endif 46 #endif 47 48 /* add -DMRB_INT32 to use 32bit integer for mrb_int; conflict with MRB_INT64; 49 Default for 32-bit CPU mode. */ 50 //#define MRB_INT32 51 52 /* add -DMRB_INT64 to use 64bit integer for mrb_int; conflict with MRB_INT32; 53 Default for 64-bit CPU mode. */ 35 54 //#define MRB_INT64 36 55 37 /* represent mrb_value in boxed double; conflict with MRB_USE_FLOAT */ 56 /* if no specific integer type is chosen */ 57 #if !defined(MRB_INT32) && !defined(MRB_INT64) 58 # if defined(MRB_64BIT) && !defined(MRB_NAN_BOXING) 59 /* Use 64bit integers on 64bit architecture (without MRB_NAN_BOXING) */ 60 # define MRB_INT64 61 # else 62 /* Otherwise use 32bit integers */ 63 # define MRB_INT32 64 # endif 65 #endif 66 67 /* define on big endian machines; used by MRB_NAN_BOXING, etc. */ 68 #ifndef MRB_ENDIAN_BIG 69 # if (defined(BYTE_ORDER) && defined(BIG_ENDIAN) && BYTE_ORDER == BIG_ENDIAN) || \ 70 (defined(__BYTE_ORDER__) && defined(__ORDER_BIG_ENDIAN__) && __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__) 71 # define MRB_ENDIAN_BIG 72 # endif 73 #endif 74 75 /* represent mrb_value in boxed double; conflict with MRB_USE_FLOAT and MRB_WITHOUT_FLOAT */ 38 76 //#define MRB_NAN_BOXING 39 40 /* define on big endian machines; used by MRB_NAN_BOXING */41 //#define MRB_ENDIAN_BIG42 77 43 78 /* represent mrb_value as a word (natural unit of data for the processor) */ … … 53 88 //#define MRB_HEAP_PAGE_SIZE 1024 54 89 55 /* use segmented list for IV table */ 56 //#define MRB_USE_IV_SEGLIST 57 58 /* initial size for IV khash; ignored when MRB_USE_IV_SEGLIST is set */ 59 //#define MRB_IVHASH_INIT_SIZE 8 60 61 /* if _etext and _edata available, mruby can reduce memory used by symbols */ 62 //#define MRB_USE_ETEXT_EDATA 63 64 /* do not use __init_array_start to determine readonly data section; 65 effective only when MRB_USE_ETEXT_EDATA is defined */ 66 //#define MRB_NO_INIT_ARRAY_START 90 /* if __ehdr_start is available, mruby can reduce memory used by symbols */ 91 //#define MRB_USE_LINK_TIME_RO_DATA_P 92 93 /* if MRB_USE_LINK_TIME_RO_DATA_P does not work, 94 you can try mrb_ro_data_p() that you have implemented yourself in any file; 95 prototype is `mrb_bool mrb_ro_data_p(const char *ptr)` */ 96 //#define MRB_USE_CUSTOM_RO_DATA_P 67 97 68 98 /* turn off generational GC by default */ … … 94 124 95 125 /* -DMRB_DISABLE_XXXX to drop following features */ 96 //#define MRB_DISABLE_STDIO 126 //#define MRB_DISABLE_STDIO /* use of stdio */ 97 127 98 128 /* -DMRB_ENABLE_XXXX to enable following features */ 99 //#define MRB_ENABLE_DEBUG_HOOK /* hooks for debugger */ 129 //#define MRB_ENABLE_DEBUG_HOOK /* hooks for debugger */ 130 //#define MRB_ENABLE_ALL_SYMBOLS /* Symbols.all_symbols */ 100 131 101 132 /* end of configuration */ … … 123 154 #endif 124 155 156 /* 157 ** mruby tuning profiles 158 **/ 159 160 /* A profile for micro controllers */ 161 #if defined(MRB_CONSTRAINED_BASELINE_PROFILE) 162 # ifndef KHASH_DEFAULT_SIZE 163 # define KHASH_DEFAULT_SIZE 16 164 # endif 165 166 # ifndef MRB_STR_BUF_MIN_SIZE 167 # define MRB_STR_BUF_MIN_SIZE 32 168 # endif 169 170 # ifndef MRB_HEAP_PAGE_SIZE 171 # define MRB_HEAP_PAGE_SIZE 256 172 # endif 173 174 /* A profile for default mruby */ 175 #elif defined(MRB_BASELINE_PROFILE) 176 177 /* A profile for desktop computers or workstations; rich memory! */ 178 #elif defined(MRB_MAIN_PROFILE) 179 # ifndef MRB_METHOD_CACHE 180 # define MRB_METHOD_CACHE 181 # endif 182 183 # ifndef MRB_METHOD_CACHE_SIZE 184 # define MRB_METHOD_CACHE_SIZE (1<<10) 185 # endif 186 187 # ifndef MRB_IV_SEGMENT_SIZE 188 # define MRB_IV_SEGMENT_SIZE 32 189 # endif 190 191 # ifndef MRB_HEAP_PAGE_SIZE 192 # define MRB_HEAP_PAGE_SIZE 4096 193 # endif 194 195 /* A profile for server; mruby vm is long life */ 196 #elif defined(MRB_HIGH_PROFILE) 197 # ifndef MRB_METHOD_CACHE 198 # define MRB_METHOD_CACHE 199 # endif 200 201 # ifndef MRB_METHOD_CACHE_SIZE 202 # define MRB_METHOD_CACHE_SIZE (1<<12) 203 # endif 204 205 # ifndef MRB_IV_SEGMENT_SIZE 206 # define MRB_IV_SEGMENT_SIZE 64 207 # endif 208 209 # ifndef MRB_HEAP_PAGE_SIZE 210 # define MRB_HEAP_PAGE_SIZE 4096 211 # endif 212 #endif 213 125 214 #endif /* MRUBYCONF_H */
Note:
See TracChangeset
for help on using the changeset viewer.