Ignore:
Timestamp:
Jul 9, 2020, 8:51:43 AM (4 years ago)
Author:
coas-nagasima
Message:

mrubyを2.1.1に更新

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  
    2929//#define MRB_USE_FLOAT
    3030
    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. */
    3554//#define MRB_INT64
    3655
    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 */
    3876//#define MRB_NAN_BOXING
    39 
    40 /* define on big endian machines; used by MRB_NAN_BOXING */
    41 //#define MRB_ENDIAN_BIG
    4277
    4378/* represent mrb_value as a word (natural unit of data for the processor) */
     
    5388//#define MRB_HEAP_PAGE_SIZE 1024
    5489
    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
    6797
    6898/* turn off generational GC by default */
     
    94124
    95125/* -DMRB_DISABLE_XXXX to drop following features */
    96 //#define MRB_DISABLE_STDIO     /* use of stdio */
     126//#define MRB_DISABLE_STDIO /* use of stdio */
    97127
    98128/* -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 */
    100131
    101132/* end of configuration */
     
    123154#endif
    124155
     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
    125214#endif  /* MRUBYCONF_H */
Note: See TracChangeset for help on using the changeset viewer.